1 |
32 |
redbear |
// (C) 2001-2017 Intel Corporation. All rights reserved.
|
2 |
|
|
// Your use of Intel Corporation's design tools, logic functions and other
|
3 |
|
|
// software and tools, and its AMPP partner logic functions, and any output
|
4 |
40 |
redbear |
// files from any of the foregoing (including device programming or simulation
|
5 |
32 |
redbear |
// files), and any associated documentation or information are expressly subject
|
6 |
|
|
// to the terms and conditions of the Intel Program License Subscription
|
7 |
40 |
redbear |
// Agreement, Intel FPGA IP License Agreement, or other applicable
|
8 |
32 |
redbear |
// license agreement, including, without limitation, that your use is for the
|
9 |
|
|
// sole purpose of programming logic devices manufactured by Intel and sold by
|
10 |
|
|
// Intel or its authorized distributors. Please refer to the applicable
|
11 |
|
|
// agreement for further details.
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
`timescale 1 ps / 1 ps
|
16 |
|
|
|
17 |
|
|
module hps_sdram_p0_altdqdqs (
|
18 |
|
|
core_clock_in,
|
19 |
|
|
reset_n_core_clock_in,
|
20 |
|
|
fr_clock_in,
|
21 |
|
|
hr_clock_in,
|
22 |
|
|
write_strobe_clock_in,
|
23 |
|
|
write_strobe,
|
24 |
|
|
strobe_ena_hr_clock_in,
|
25 |
|
|
capture_strobe_tracking,
|
26 |
|
|
read_write_data_io,
|
27 |
|
|
write_oe_in,
|
28 |
|
|
strobe_io,
|
29 |
|
|
output_strobe_ena,
|
30 |
|
|
strobe_n_io,
|
31 |
|
|
oct_ena_in,
|
32 |
|
|
read_data_out,
|
33 |
|
|
capture_strobe_out,
|
34 |
|
|
write_data_in,
|
35 |
|
|
extra_write_data_in,
|
36 |
|
|
extra_write_data_out,
|
37 |
|
|
parallelterminationcontrol_in,
|
38 |
|
|
seriesterminationcontrol_in,
|
39 |
|
|
config_data_in,
|
40 |
|
|
config_update,
|
41 |
|
|
config_dqs_ena,
|
42 |
|
|
config_io_ena,
|
43 |
|
|
config_extra_io_ena,
|
44 |
|
|
config_dqs_io_ena,
|
45 |
|
|
config_clock_in,
|
46 |
|
|
lfifo_rdata_en,
|
47 |
|
|
lfifo_rdata_en_full,
|
48 |
|
|
lfifo_rd_latency,
|
49 |
|
|
lfifo_reset_n,
|
50 |
|
|
lfifo_rdata_valid,
|
51 |
|
|
vfifo_qvld,
|
52 |
|
|
vfifo_inc_wr_ptr,
|
53 |
|
|
vfifo_reset_n,
|
54 |
|
|
rfifo_reset_n,
|
55 |
|
|
dll_delayctrl_in
|
56 |
|
|
);
|
57 |
|
|
|
58 |
|
|
|
59 |
|
|
input [7-1:0] dll_delayctrl_in;
|
60 |
|
|
|
61 |
|
|
input core_clock_in;
|
62 |
|
|
input reset_n_core_clock_in;
|
63 |
|
|
input fr_clock_in;
|
64 |
|
|
input hr_clock_in;
|
65 |
|
|
|
66 |
|
|
input write_strobe_clock_in;
|
67 |
|
|
input [3:0] write_strobe;
|
68 |
|
|
input strobe_ena_hr_clock_in;
|
69 |
|
|
output capture_strobe_tracking;
|
70 |
|
|
inout [8-1:0] read_write_data_io;
|
71 |
|
|
input [2*8-1:0] write_oe_in;
|
72 |
|
|
inout strobe_io;
|
73 |
|
|
input [2-1:0] output_strobe_ena;
|
74 |
|
|
inout strobe_n_io;
|
75 |
|
|
input [2-1:0] oct_ena_in;
|
76 |
|
|
output [2 * 2 * 8-1:0] read_data_out;
|
77 |
|
|
output capture_strobe_out;
|
78 |
|
|
input [2 * 2 * 8-1:0] write_data_in;
|
79 |
|
|
input [2 * 2 * 1-1:0] extra_write_data_in;
|
80 |
|
|
output [1-1:0] extra_write_data_out;
|
81 |
|
|
input [16-1:0] parallelterminationcontrol_in;
|
82 |
|
|
input [16-1:0] seriesterminationcontrol_in;
|
83 |
|
|
input config_data_in;
|
84 |
|
|
input config_update;
|
85 |
|
|
input config_dqs_ena;
|
86 |
|
|
input [8-1:0] config_io_ena;
|
87 |
|
|
input [1-1:0] config_extra_io_ena;
|
88 |
|
|
input config_dqs_io_ena;
|
89 |
|
|
input config_clock_in;
|
90 |
|
|
|
91 |
|
|
input [2-1:0] lfifo_rdata_en;
|
92 |
|
|
input [2-1:0] lfifo_rdata_en_full;
|
93 |
|
|
input [4:0] lfifo_rd_latency;
|
94 |
|
|
input lfifo_reset_n;
|
95 |
|
|
output lfifo_rdata_valid;
|
96 |
|
|
input [2-1:0] vfifo_qvld;
|
97 |
|
|
input [2-1:0] vfifo_inc_wr_ptr;
|
98 |
|
|
input vfifo_reset_n;
|
99 |
|
|
input rfifo_reset_n;
|
100 |
|
|
|
101 |
|
|
parameter ALTERA_ALTDQ_DQS2_FAST_SIM_MODEL = "";
|
102 |
|
|
|
103 |
|
|
|
104 |
|
|
|
105 |
|
|
|
106 |
|
|
altdq_dqs2_acv_connect_to_hard_phy_cyclonev altdq_dqs2_inst (
|
107 |
|
|
.core_clock_in( core_clock_in),
|
108 |
|
|
.reset_n_core_clock_in (reset_n_core_clock_in),
|
109 |
|
|
.fr_clock_in( fr_clock_in),
|
110 |
|
|
.hr_clock_in( hr_clock_in),
|
111 |
|
|
.write_strobe_clock_in (write_strobe_clock_in),
|
112 |
|
|
.write_strobe(write_strobe),
|
113 |
|
|
.strobe_ena_hr_clock_in( strobe_ena_hr_clock_in),
|
114 |
|
|
.capture_strobe_tracking (capture_strobe_tracking),
|
115 |
|
|
.read_write_data_io( read_write_data_io),
|
116 |
|
|
.write_oe_in( write_oe_in),
|
117 |
|
|
.strobe_io( strobe_io),
|
118 |
|
|
.output_strobe_ena( output_strobe_ena),
|
119 |
|
|
.strobe_n_io( strobe_n_io),
|
120 |
|
|
.oct_ena_in( oct_ena_in),
|
121 |
|
|
.read_data_out( read_data_out),
|
122 |
|
|
.capture_strobe_out( capture_strobe_out),
|
123 |
|
|
.write_data_in( write_data_in),
|
124 |
|
|
.extra_write_data_in( extra_write_data_in),
|
125 |
|
|
.extra_write_data_out( extra_write_data_out),
|
126 |
|
|
.parallelterminationcontrol_in( parallelterminationcontrol_in),
|
127 |
|
|
.seriesterminationcontrol_in( seriesterminationcontrol_in),
|
128 |
|
|
.config_data_in( config_data_in),
|
129 |
|
|
.config_update( config_update),
|
130 |
|
|
.config_dqs_ena( config_dqs_ena),
|
131 |
|
|
.config_io_ena( config_io_ena),
|
132 |
|
|
.config_extra_io_ena( config_extra_io_ena),
|
133 |
|
|
.config_dqs_io_ena( config_dqs_io_ena),
|
134 |
|
|
.config_clock_in( config_clock_in),
|
135 |
|
|
.lfifo_rdata_en(lfifo_rdata_en),
|
136 |
|
|
.lfifo_rdata_en_full(lfifo_rdata_en_full),
|
137 |
|
|
.lfifo_rd_latency(lfifo_rd_latency),
|
138 |
|
|
.lfifo_reset_n(lfifo_reset_n),
|
139 |
|
|
.lfifo_rdata_valid(lfifo_rdata_valid),
|
140 |
|
|
.vfifo_qvld(vfifo_qvld),
|
141 |
|
|
.vfifo_inc_wr_ptr(vfifo_inc_wr_ptr),
|
142 |
|
|
.vfifo_reset_n(vfifo_reset_n),
|
143 |
|
|
.rfifo_reset_n(rfifo_reset_n),
|
144 |
|
|
.dll_delayctrl_in(dll_delayctrl_in)
|
145 |
|
|
|
146 |
|
|
);
|
147 |
|
|
defparam altdq_dqs2_inst.PIN_WIDTH = 8;
|
148 |
|
|
defparam altdq_dqs2_inst.PIN_TYPE = "bidir";
|
149 |
|
|
defparam altdq_dqs2_inst.USE_INPUT_PHASE_ALIGNMENT = "false";
|
150 |
|
|
defparam altdq_dqs2_inst.USE_OUTPUT_PHASE_ALIGNMENT = "false";
|
151 |
|
|
defparam altdq_dqs2_inst.USE_LDC_AS_LOW_SKEW_CLOCK = "false";
|
152 |
|
|
defparam altdq_dqs2_inst.USE_HALF_RATE_INPUT = "false";
|
153 |
|
|
defparam altdq_dqs2_inst.USE_HALF_RATE_OUTPUT = "true";
|
154 |
|
|
defparam altdq_dqs2_inst.DIFFERENTIAL_CAPTURE_STROBE = "true";
|
155 |
|
|
defparam altdq_dqs2_inst.SEPARATE_CAPTURE_STROBE = "false";
|
156 |
|
|
defparam altdq_dqs2_inst.INPUT_FREQ = 300.0;
|
157 |
|
|
defparam altdq_dqs2_inst.INPUT_FREQ_PS = "3333 ps";
|
158 |
|
|
defparam altdq_dqs2_inst.DELAY_CHAIN_BUFFER_MODE = "high";
|
159 |
|
|
defparam altdq_dqs2_inst.DQS_PHASE_SETTING = 0;
|
160 |
|
|
defparam altdq_dqs2_inst.DQS_PHASE_SHIFT = 0;
|
161 |
|
|
defparam altdq_dqs2_inst.DQS_ENABLE_PHASE_SETTING = 3;
|
162 |
|
|
defparam altdq_dqs2_inst.USE_DYNAMIC_CONFIG = "true";
|
163 |
|
|
defparam altdq_dqs2_inst.INVERT_CAPTURE_STROBE = "true";
|
164 |
|
|
defparam altdq_dqs2_inst.SWAP_CAPTURE_STROBE_POLARITY = "false";
|
165 |
|
|
defparam altdq_dqs2_inst.USE_TERMINATION_CONTROL = "true";
|
166 |
|
|
defparam altdq_dqs2_inst.USE_DQS_ENABLE = "true";
|
167 |
|
|
defparam altdq_dqs2_inst.USE_OUTPUT_STROBE = "true";
|
168 |
|
|
defparam altdq_dqs2_inst.USE_OUTPUT_STROBE_RESET = "false";
|
169 |
|
|
defparam altdq_dqs2_inst.DIFFERENTIAL_OUTPUT_STROBE = "true";
|
170 |
|
|
defparam altdq_dqs2_inst.USE_BIDIR_STROBE = "true";
|
171 |
|
|
defparam altdq_dqs2_inst.REVERSE_READ_WORDS = "false";
|
172 |
|
|
defparam altdq_dqs2_inst.EXTRA_OUTPUT_WIDTH = 1;
|
173 |
|
|
defparam altdq_dqs2_inst.DYNAMIC_MODE = "dynamic";
|
174 |
|
|
defparam altdq_dqs2_inst.OCT_SERIES_TERM_CONTROL_WIDTH = 16;
|
175 |
|
|
defparam altdq_dqs2_inst.OCT_PARALLEL_TERM_CONTROL_WIDTH = 16;
|
176 |
|
|
defparam altdq_dqs2_inst.DLL_WIDTH = 7;
|
177 |
|
|
defparam altdq_dqs2_inst.USE_DATA_OE_FOR_OCT = "false";
|
178 |
|
|
defparam altdq_dqs2_inst.DQS_ENABLE_WIDTH = 1;
|
179 |
|
|
defparam altdq_dqs2_inst.USE_OCT_ENA_IN_FOR_OCT = "true";
|
180 |
|
|
defparam altdq_dqs2_inst.PREAMBLE_TYPE = "high";
|
181 |
|
|
defparam altdq_dqs2_inst.EMIF_UNALIGNED_PREAMBLE_SUPPORT = "false";
|
182 |
|
|
defparam altdq_dqs2_inst.EMIF_BYPASS_OCT_DDIO = "false";
|
183 |
|
|
defparam altdq_dqs2_inst.USE_OFFSET_CTRL = "false";
|
184 |
|
|
defparam altdq_dqs2_inst.HR_DDIO_OUT_HAS_THREE_REGS = "false";
|
185 |
|
|
defparam altdq_dqs2_inst.DQS_ENABLE_PHASECTRL = "true";
|
186 |
|
|
defparam altdq_dqs2_inst.USE_2X_FF = "false";
|
187 |
|
|
defparam altdq_dqs2_inst.DLL_USE_2X_CLK = "false";
|
188 |
|
|
defparam altdq_dqs2_inst.USE_DQS_TRACKING = "true";
|
189 |
|
|
defparam altdq_dqs2_inst.USE_HARD_FIFOS = "true";
|
190 |
|
|
defparam altdq_dqs2_inst.USE_DQSIN_FOR_VFIFO_READ = "false";
|
191 |
|
|
defparam altdq_dqs2_inst.CALIBRATION_SUPPORT = "false";
|
192 |
|
|
defparam altdq_dqs2_inst.NATURAL_ALIGNMENT = "true";
|
193 |
|
|
defparam altdq_dqs2_inst.SEPERATE_LDC_FOR_WRITE_STROBE = "false";
|
194 |
|
|
defparam altdq_dqs2_inst.HHP_HPS = "true";
|
195 |
|
|
|
196 |
|
|
|
197 |
|
|
|
198 |
|
|
endmodule
|