-
Notifications
You must be signed in to change notification settings - Fork 1
/
toslink.ucf
117 lines (105 loc) · 5.34 KB
/
toslink.ucf
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
CONFIG VCCAUX = "3.3";
### 50MHz board clock
NET "sys_clk50M" LOC = "H17" | IOSTANDARD = LVTTL;
NET "sys_clk50M" TNM_NET = "sys_clk50M" ;
TIMESPEC "TS_sys_clk50M" = PERIOD "sys_clk50M" 20000 ps INPUT_JITTER 200 ps;
# Use the switch for reset
NET "sys_reset" LOC="N14" | IOSTANDARD = LVTTL | PULLDOWN;
# TOSLink input on Wing A pin 13
NET "tos_in" LOC="H18" | IOSTANDARD = LVTTL | PULLUP;
# FTDI FT2232-chB used as USB Asynchronous FIFO
NET "usb_data<0>" LOC = "A11" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<1>" LOC = "A10" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<2>" LOC = "C10" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<3>" LOC = "A9" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<4>" LOC = "B9" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<5>" LOC = "A8" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<6>" LOC = "B8" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_data<7>" LOC = "A7" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_rxf" LOC = "C7" | IOSTANDARD = LVTTL;
NET "usb_txe" LOC = "A6" | IOSTANDARD = LVTTL;
NET "usb_rd" LOC = "B6" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_wr" LOC = "A5" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
NET "usb_siwua" LOC = "C5" | IOSTANDARD = LVTTL | SLEW = FAST | DRIVE = 8;
# LEDs
NET "done_led" LOC = "V16" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
NET "sync_led" LOC = "U16" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8;
# Debug
NET "debug[15]" LOC = "L12" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[14]" LOC = "K12" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[13]" LOC = "K13" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[12]" LOC = "K14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[11]" LOC = "H12" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[10]" LOC = "G13" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[9]" LOC = "J13" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[8]" LOC = "H13" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[7]" LOC = "H14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[6]" LOC = "F14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[5]" LOC = "G14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[4]" LOC = "F15" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[3]" LOC = "G16" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[2]" LOC = "E16" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[1]" LOC = "F16" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
NET "debug[0]" LOC = "F17" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW = FAST;
### LPDDR DRAM Interface
NET "mcb3_dram_dq[*]" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_a[*]" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_ba[*]" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_dqs" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_udqs" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_ck" IOSTANDARD = DIFF_MOBILE_DDR;
NET "mcb3_dram_ck_n" IOSTANDARD = DIFF_MOBILE_DDR;
NET "mcb3_dram_cke" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_ras_n" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_cas_n" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_we_n" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_dm" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_udm" IOSTANDARD = MOBILE_DDR;
NET "mcb3_rzq" IOSTANDARD = MOBILE_DDR;
NET "mcb3_dram_a[0]" LOC = "J7";
NET "mcb3_dram_a[10]" LOC = "F4";
NET "mcb3_dram_a[11]" LOC = "D3";
NET "mcb3_dram_a[12]" LOC = "G6";
NET "mcb3_dram_a[1]" LOC = "J6";
NET "mcb3_dram_a[2]" LOC = "H5";
NET "mcb3_dram_a[3]" LOC = "L7";
NET "mcb3_dram_a[4]" LOC = "F3";
NET "mcb3_dram_a[5]" LOC = "H4";
NET "mcb3_dram_a[6]" LOC = "H3";
NET "mcb3_dram_a[7]" LOC = "H6";
NET "mcb3_dram_a[8]" LOC = "D2";
NET "mcb3_dram_a[9]" LOC = "D1";
NET "mcb3_dram_ba[0]" LOC = "F2";
NET "mcb3_dram_ba[1]" LOC = "F1";
NET "mcb3_dram_cas_n" LOC = "K5";
NET "mcb3_dram_ck" LOC = "G3";
NET "mcb3_dram_ck_n" LOC = "G1";
NET "mcb3_dram_cke" LOC = "H7";
NET "mcb3_dram_dm" LOC = "K3";
NET "mcb3_dram_dq[0]" LOC = "L2";
NET "mcb3_dram_dq[10]" LOC = "N2";
NET "mcb3_dram_dq[11]" LOC = "N1";
NET "mcb3_dram_dq[12]" LOC = "T2";
NET "mcb3_dram_dq[13]" LOC = "T1";
NET "mcb3_dram_dq[14]" LOC = "U2";
NET "mcb3_dram_dq[15]" LOC = "U1";
NET "mcb3_dram_dq[1]" LOC = "L1";
NET "mcb3_dram_dq[2]" LOC = "K2";
NET "mcb3_dram_dq[3]" LOC = "K1";
NET "mcb3_dram_dq[4]" LOC = "H2";
NET "mcb3_dram_dq[5]" LOC = "H1";
NET "mcb3_dram_dq[6]" LOC = "J3";
NET "mcb3_dram_dq[7]" LOC = "J1";
NET "mcb3_dram_dq[8]" LOC = "M3";
NET "mcb3_dram_dq[9]" LOC = "M1";
NET "mcb3_dram_dqs" LOC = "L4";
NET "mcb3_dram_ras_n" LOC = "L5";
NET "mcb3_dram_udm" LOC = "K4";
NET "mcb3_dram_udqs" LOC = "P2";
NET "mcb3_dram_we_n" LOC = "E3";
NET "mcb3_rzq" LOC = "N4";
# These are required for MCB to avoid timing problems
CONFIG MCB_PERFORMANCE = STANDARD;
NET "memory/memc3_wrapper_inst/mcb_ui_top_inst/mcb_raw_wrapper_inst/selfrefresh_mcb_mode" TIG;
NET "memory/c3_pll_lock" TIG;
#INST "memory/memc3_wrapper_inst/mcb_ui_top_inst/mcb_raw_wrapper_inst/gen_term_calib.mcb_soft_calibration_top_inst/mcb_soft_calibration_inst/DONE_SOFTANDHARD_CAL*" TIG;