File: sb_io_od.v

package info (click to toggle)
fpga-icestorm 0~20250207git7fbf8c0%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 7,440 kB
  • sloc: python: 28,401; cpp: 4,970; sh: 2,594; ansic: 1,206; makefile: 697; xml: 16
file content (62 lines) | stat: -rw-r--r-- 1,341 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
//`define CONN_INTERNAL_BITS

`define PINTYPE 6'b010001
// `define IOSTANDARD "SB_LVCMOS"
`define IOSTANDARD "SB_LVCMOS"

// The following IO standards are just aliases for SB_LVCMOS
// `define IOSTANDARD "SB_LVCMOS25_16"
// `define IOSTANDARD "SB_LVCMOS25_12"
// `define IOSTANDARD "SB_LVCMOS25_8"
// `define IOSTANDARD "SB_LVCMOS25_4"
// `define IOSTANDARD "SB_LVCMOS18_10"
// `define IOSTANDARD "SB_LVCMOS18_8"
// `define IOSTANDARD "SB_LVCMOS18_4"
// `define IOSTANDARD "SB_LVCMOS18_2"
// `define IOSTANDARD "SB_LVCMOS15_4"
// `define IOSTANDARD "SB_LVCMOS15_2"
// `define IOSTANDARD "SB_MDDR10"
// `define IOSTANDARD "SB_MDDR8"
// `define IOSTANDARD "SB_MDDR4"
// `define IOSTANDARD "SB_MDDR2"

`ifdef CONN_INTERNAL_BITS
module top (
	inout pin,
	input latch_in,
	input clk_in,
	input clk_out,
	input oen,
	input dout_0,
	input dout_1,
	output din_0,
	output din_1
);
`else
module top(pin);
	inout pin;
	wire latch_in = 0;
	wire clk_in = 0;
	wire clk_out = 0;
	wire oen = 0;
	wire dout_0 = 0;
	wire dout_1 = 0;
	wire din_0;
	wire din_1;
`endif
	SB_IO_OD #(
		.PIN_TYPE(`PINTYPE),
		.NEG_TRIGGER(1'b0)
	) IO_PIN_I (
		.PACKAGEPIN(pin),
		.LATCHINPUTVALUE(latch_in),
		.CLOCKENABLE(clk_en),
		.INPUTCLK(clk_in),
		.OUTPUTCLK(clk_out),
		.OUTPUTENABLE(oen),
		.DOUT0(dout_0),
		.DOUT1(dout_1),
		.DIN0(din_0),
		.DIN1(din_1)
	);
endmodule