1 |
2 |
eexuke |
//--------------------------------------------------------------------------------------------------
|
2 |
|
|
// Design : nova
|
3 |
|
|
// Author(s) : Ke Xu
|
4 |
|
|
// Email : eexuke@yahoo.com
|
5 |
|
|
// File : reconstruction.v
|
6 |
|
|
// Generated : Jan 3,2006
|
7 |
|
|
// Copyright (C) 2008 Ke Xu
|
8 |
|
|
//-------------------------------------------------------------------------------------------------
|
9 |
|
|
// Description
|
10 |
|
|
// reconstruction top module,including:
|
11 |
|
|
// rec_gclk_gen
|
12 |
|
|
// hybrid_pipeline_ctrl
|
13 |
|
|
// IQIT
|
14 |
|
|
// Intra_pred_top
|
15 |
|
|
// sum
|
16 |
|
|
// DF_top
|
17 |
|
|
// rec_DF_RAM_ctrl
|
18 |
|
|
// rec_DF_RAM0
|
19 |
|
|
// rec_DF_RAM1
|
20 |
|
|
// ext_RAM_ctrl
|
21 |
|
|
//-------------------------------------------------------------------------------------------------
|
22 |
|
|
|
23 |
|
|
// synopsys translate_off
|
24 |
|
|
`include "timescale.v"
|
25 |
|
|
// synopsys translate_on
|
26 |
|
|
`include "nova_defines.v"
|
27 |
|
|
|
28 |
|
|
module reconstruction (clk,reset_n,mb_type_general,mb_num_h,mb_num_v,NextMB_IsSkip,LowerMB_IsSkip,
|
29 |
|
|
slice_data_state,residual_state,cavlc_decoder_state,
|
30 |
|
|
end_of_one_residual_block,end_of_NonZeroCoeff_CAVLC,end_of_one_frame,
|
31 |
|
|
Intra16x16_predmode,Intra4x4_predmode_CurrMb,Intra_chroma_predmode,
|
32 |
|
|
QPy,QPc,i4x4_CbCr,slice_alpha_c0_offset_div2,slice_beta_offset_div2,
|
33 |
|
|
CodedBlockPatternLuma,CodedBlockPatternChroma,TotalCoeff,Is_skip_run_entry,
|
34 |
|
|
skip_mv_calc,disable_DF,
|
35 |
|
|
|
36 |
|
|
coeffLevel_0,coeffLevel_1,coeffLevel_2, coeffLevel_3, coeffLevel_4, coeffLevel_5, coeffLevel_6, coeffLevel_7,
|
37 |
|
|
coeffLevel_8,coeffLevel_9,coeffLevel_10,coeffLevel_11,coeffLevel_12,coeffLevel_13,coeffLevel_14,coeffLevel_15,
|
38 |
|
|
mv_is16x16,mv_below8x8,
|
39 |
|
|
mvx_CurrMb0,mvx_CurrMb1,mvx_CurrMb2,mvx_CurrMb3,mvy_CurrMb0,mvy_CurrMb1,mvy_CurrMb2,mvy_CurrMb3,
|
40 |
|
|
end_of_BS_DEC,bs_V0,bs_V1,bs_V2,bs_V3,bs_H0,bs_H1,bs_H2,bs_H3,
|
41 |
|
|
|
42 |
|
|
trigger_CAVLC,blk4x4_rec_counter,end_of_DCBlk_IQIT,end_of_one_blk4x4_sum,
|
43 |
|
|
end_of_MB_DEC,gclk_end_of_MB_DEC,curr_DC_IsZero,
|
44 |
|
|
ext_frame_RAM0_cs_n,ext_frame_RAM0_wr,ext_frame_RAM0_addr,ext_frame_RAM0_data,
|
45 |
|
|
ext_frame_RAM1_cs_n,ext_frame_RAM1_wr,ext_frame_RAM1_addr,ext_frame_RAM1_data,
|
46 |
|
|
dis_frame_RAM_din
|
47 |
|
|
);
|
48 |
|
|
input clk;
|
49 |
|
|
input reset_n;
|
50 |
|
|
input [3:0] mb_type_general;
|
51 |
|
|
input [3:0] mb_num_h;
|
52 |
|
|
input [3:0] mb_num_v;
|
53 |
|
|
input NextMB_IsSkip;
|
54 |
|
|
input LowerMB_IsSkip;
|
55 |
|
|
input [3:0] slice_data_state;
|
56 |
|
|
input [3:0] residual_state;
|
57 |
|
|
input [3:0] cavlc_decoder_state;
|
58 |
|
|
input end_of_one_residual_block;
|
59 |
|
|
input end_of_NonZeroCoeff_CAVLC;
|
60 |
|
|
input end_of_one_frame;
|
61 |
|
|
input [1:0] Intra16x16_predmode;
|
62 |
|
|
input [63:0] Intra4x4_predmode_CurrMb;
|
63 |
|
|
input [1:0] Intra_chroma_predmode;
|
64 |
|
|
input [5:0] QPy;
|
65 |
|
|
input [5:0] QPc;
|
66 |
|
|
input [1:0] i4x4_CbCr;
|
67 |
|
|
input [3:0] slice_alpha_c0_offset_div2;
|
68 |
|
|
input [3:0] slice_beta_offset_div2;
|
69 |
|
|
input [3:0] CodedBlockPatternLuma;
|
70 |
|
|
input [1:0] CodedBlockPatternChroma;
|
71 |
|
|
input [4:0] TotalCoeff;
|
72 |
|
|
input Is_skip_run_entry;
|
73 |
|
|
input skip_mv_calc;
|
74 |
|
|
input disable_DF;
|
75 |
|
|
input [8:0] coeffLevel_0, coeffLevel_1, coeffLevel_2,coeffLevel_3, coeffLevel_4, coeffLevel_5;
|
76 |
|
|
input [8:0] coeffLevel_6, coeffLevel_7, coeffLevel_8, coeffLevel_9,coeffLevel_10,coeffLevel_11;
|
77 |
|
|
input [8:0] coeffLevel_12,coeffLevel_13,coeffLevel_14,coeffLevel_15;
|
78 |
|
|
input mv_is16x16;
|
79 |
|
|
input [3:0] mv_below8x8;
|
80 |
|
|
input [31:0] mvx_CurrMb0,mvx_CurrMb1,mvx_CurrMb2,mvx_CurrMb3;
|
81 |
|
|
input [31:0] mvy_CurrMb0,mvy_CurrMb1,mvy_CurrMb2,mvy_CurrMb3;
|
82 |
|
|
input end_of_BS_DEC;
|
83 |
|
|
input [11:0] bs_V0,bs_V1,bs_V2,bs_V3;
|
84 |
|
|
input [11:0] bs_H0,bs_H1,bs_H2,bs_H3;
|
85 |
|
|
input [31:0] ext_frame_RAM0_data;
|
86 |
|
|
input [31:0] ext_frame_RAM1_data;
|
87 |
|
|
|
88 |
|
|
output trigger_CAVLC;
|
89 |
|
|
output [4:0] blk4x4_rec_counter;
|
90 |
|
|
output end_of_DCBlk_IQIT;
|
91 |
|
|
output end_of_one_blk4x4_sum;
|
92 |
|
|
output end_of_MB_DEC;
|
93 |
|
|
output gclk_end_of_MB_DEC;
|
94 |
|
|
output curr_DC_IsZero;
|
95 |
|
|
|
96 |
|
|
output ext_frame_RAM0_cs_n;
|
97 |
|
|
output ext_frame_RAM0_wr;
|
98 |
|
|
output [13:0] ext_frame_RAM0_addr;
|
99 |
|
|
|
100 |
|
|
output ext_frame_RAM1_cs_n;
|
101 |
|
|
output ext_frame_RAM1_wr;
|
102 |
|
|
output [13:0] ext_frame_RAM1_addr;
|
103 |
|
|
|
104 |
|
|
output [31:0] dis_frame_RAM_din;
|
105 |
|
|
|
106 |
|
|
wire gclk_endof1resblk;
|
107 |
|
|
wire gclk_1D;
|
108 |
|
|
wire gclk_2D;
|
109 |
|
|
wire gclk_rescale;
|
110 |
|
|
wire gclk_rounding;
|
111 |
|
|
wire gclk_intra_mbAddrA_luma;
|
112 |
|
|
wire gclk_intra_mbAddrA_Cb;
|
113 |
|
|
wire gclk_intra_mbAddrA_Cr;
|
114 |
|
|
wire gclk_intra_mbAddrB;
|
115 |
|
|
wire gclk_intra_mbAddrC_luma;
|
116 |
|
|
wire gclk_intra_mbAddrD;
|
117 |
|
|
wire gclk_seed;
|
118 |
|
|
wire gclk_Inter_ref_rf;
|
119 |
|
|
wire gclk_pred_output;
|
120 |
|
|
wire gclk_blk4x4_sum;
|
121 |
|
|
wire gclk_DF;
|
122 |
|
|
wire gclk_end_of_MB_DEC;
|
123 |
|
|
|
124 |
|
|
wire curr_CBPLuma_IsZero;
|
125 |
|
|
wire curr_DC_IsZero;
|
126 |
|
|
wire end_of_ACBlk4x4_IQIT;
|
127 |
|
|
wire end_of_one_blk4x4_intra;
|
128 |
|
|
wire end_of_one_blk4x4_inter;
|
129 |
|
|
wire end_of_one_blk4x4_sum;
|
130 |
|
|
wire end_of_MB_DF;
|
131 |
|
|
wire end_of_MB_DEC;
|
132 |
|
|
wire trigger_blk4x4_intra_pred;
|
133 |
|
|
wire trigger_blk4x4_inter_pred;
|
134 |
|
|
wire trigger_blk4x4_rec_sum;
|
135 |
|
|
wire [15:0] res_luma_DConly;
|
136 |
|
|
wire res_chroma_DConly;
|
137 |
|
|
wire res_AC;
|
138 |
|
|
wire res_DC;
|
139 |
|
|
wire res_luma;
|
140 |
|
|
wire [2:0] OneD_counter;
|
141 |
|
|
wire [2:0] TwoD_counter;
|
142 |
|
|
wire [2:0] rescale_counter;
|
143 |
|
|
wire [2:0] rounding_counter;
|
144 |
|
|
wire [2:0] blk4x4_intra_preload_counter;
|
145 |
|
|
wire [3:0] blk4x4_intra_precompute_counter;
|
146 |
|
|
wire [2:0] blk4x4_intra_calculate_counter;
|
147 |
|
|
wire [5:0] blk4x4_inter_preload_counter;
|
148 |
|
|
wire [3:0] blk4x4_inter_calculate_counter;
|
149 |
|
|
wire [1:0] Inter_chroma2x2_counter;
|
150 |
|
|
wire [4:0] blk4x4_rec_counter;
|
151 |
|
|
wire [2:0] blk4x4_sum_counter;
|
152 |
|
|
wire [4:0] blk4x4_rec_counter_2_raster_order;
|
153 |
|
|
wire [5:0] DF_edge_counter_MR;
|
154 |
|
|
wire [1:0] one_edge_counter_MR;
|
155 |
|
|
wire [1:0] Inter_blk4x4_pred_output_valid;
|
156 |
|
|
wire mv_below8x8_curr;
|
157 |
|
|
wire [3:0] pos_FracL;
|
158 |
|
|
|
159 |
|
|
wire [3:0] Intra4x4_predmode;
|
160 |
|
|
wire [8:0] IQIT_output_0, IQIT_output_1, IQIT_output_2, IQIT_output_3;
|
161 |
|
|
wire [8:0] IQIT_output_4, IQIT_output_5, IQIT_output_6, IQIT_output_7;
|
162 |
|
|
wire [8:0] IQIT_output_8, IQIT_output_9, IQIT_output_10,IQIT_output_11;
|
163 |
|
|
wire [8:0] IQIT_output_12,IQIT_output_13,IQIT_output_14,IQIT_output_15;
|
164 |
|
|
wire [7:0] Intra_pred_PE0_out,Intra_pred_PE1_out,Intra_pred_PE2_out,Intra_pred_PE3_out;
|
165 |
|
|
wire [7:0] Inter_pred_out0,Inter_pred_out1,Inter_pred_out2,Inter_pred_out3;
|
166 |
|
|
wire [7:0] blk4x4_sum_PE0_out,blk4x4_sum_PE1_out,blk4x4_sum_PE2_out,blk4x4_sum_PE3_out;
|
167 |
|
|
wire [7:0] blk4x4_pred_output0, blk4x4_pred_output1, blk4x4_pred_output2;
|
168 |
|
|
wire [7:0] blk4x4_pred_output4, blk4x4_pred_output5, blk4x4_pred_output6;
|
169 |
|
|
wire [7:0] blk4x4_pred_output8, blk4x4_pred_output9, blk4x4_pred_output10;
|
170 |
|
|
wire [7:0] blk4x4_pred_output12,blk4x4_pred_output13,blk4x4_pred_output14;
|
171 |
|
|
wire [8:0] curr_DC_scaled;
|
172 |
|
|
wire [23:0] sum_right_column_reg;
|
173 |
|
|
|
174 |
|
|
wire DF_duration;
|
175 |
|
|
wire gclk_Intra_mbAddrB_RAM;
|
176 |
|
|
wire Intra_mbAddrB_RAM_rd;
|
177 |
|
|
wire Intra_mbAddrB_RAM_wr;
|
178 |
|
|
wire [6:0] Intra_mbAddrB_RAM_rd_addr,Intra_mbAddrB_RAM_wr_addr;
|
179 |
|
|
wire [31:0] Intra_mbAddrB_RAM_din;
|
180 |
|
|
wire [31:0] Intra_mbAddrB_RAM_dout;
|
181 |
|
|
wire gclk_DF_mbAddrA_RF;
|
182 |
|
|
wire DF_mbAddrA_RF_rd;
|
183 |
|
|
wire DF_mbAddrA_RF_wr;
|
184 |
|
|
wire [4:0] DF_mbAddrA_RF_rd_addr;
|
185 |
|
|
wire [4:0] DF_mbAddrA_RF_wr_addr;
|
186 |
|
|
wire [31:0] DF_mbAddrA_RF_din;
|
187 |
|
|
wire [31:0] DF_mbAddrA_RF_dout;
|
188 |
|
|
wire gclk_DF_mbAddrB_RAM;
|
189 |
|
|
wire DF_mbAddrB_RAM_rd,DF_mbAddrB_RAM_wr;
|
190 |
|
|
wire [8:0] DF_mbAddrB_RAM_addr;
|
191 |
|
|
wire [31:0] DF_mbAddrB_RAM_din;
|
192 |
|
|
wire [31:0] DF_mbAddrB_RAM_dout;
|
193 |
|
|
wire gclk_rec_DF_RAM0,gclk_rec_DF_RAM1;
|
194 |
|
|
wire [31:0] rec_DF_RAM_dout;
|
195 |
|
|
wire rec_DF_RAM0_wr,rec_DF_RAM1_wr;
|
196 |
|
|
wire rec_DF_RAM0_rd,rec_DF_RAM1_rd;
|
197 |
|
|
wire [6:0] rec_DF_RAM0_addr,rec_DF_RAM1_addr;
|
198 |
|
|
wire [31:0] rec_DF_RAM0_din,rec_DF_RAM1_din;
|
199 |
|
|
wire [31:0] rec_DF_RAM0_dout,rec_DF_RAM1_dout;
|
200 |
|
|
wire dis_frame_RAM_wr;
|
201 |
|
|
wire [13:0] dis_frame_RAM_wr_addr;
|
202 |
|
|
wire [31:0] dis_frame_RAM_din;
|
203 |
|
|
wire ref_frame_RAM_rd;
|
204 |
|
|
wire [13:0] ref_frame_RAM_rd_addr;
|
205 |
|
|
wire [31:0] ref_frame_RAM_dout;
|
206 |
|
|
|
207 |
|
|
|
208 |
|
|
rec_gclk_gen rec_gclk_gen (
|
209 |
|
|
.clk(clk),
|
210 |
|
|
.end_of_NonZeroCoeff_CAVLC(end_of_NonZeroCoeff_CAVLC),
|
211 |
|
|
.OneD_counter(OneD_counter),
|
212 |
|
|
.TwoD_counter(TwoD_counter),
|
213 |
|
|
.rescale_counter(rescale_counter),
|
214 |
|
|
.rounding_counter(rounding_counter),
|
215 |
|
|
.residual_state(residual_state),
|
216 |
|
|
.cavlc_decoder_state(cavlc_decoder_state),
|
217 |
|
|
.gclk_1D(gclk_1D),
|
218 |
|
|
.gclk_2D(gclk_2D),
|
219 |
|
|
.gclk_rescale(gclk_rescale),
|
220 |
|
|
.gclk_rounding(gclk_rounding),
|
221 |
|
|
.mb_num_h(mb_num_h),
|
222 |
|
|
.mb_num_v(mb_num_v),
|
223 |
|
|
.NextMB_IsSkip(NextMB_IsSkip),
|
224 |
|
|
.mb_type_general(mb_type_general),
|
225 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
226 |
|
|
.blk4x4_sum_counter(blk4x4_sum_counter),
|
227 |
|
|
.blk4x4_intra_preload_counter(blk4x4_intra_preload_counter),
|
228 |
|
|
.blk4x4_intra_precompute_counter(blk4x4_intra_precompute_counter),
|
229 |
|
|
.blk4x4_intra_calculate_counter(blk4x4_intra_calculate_counter),
|
230 |
|
|
.Intra4x4_predmode(Intra4x4_predmode),
|
231 |
|
|
.Intra16x16_predmode(Intra16x16_predmode),
|
232 |
|
|
.Intra_chroma_predmode(Intra_chroma_predmode),
|
233 |
|
|
.gclk_intra_mbAddrA_luma(gclk_intra_mbAddrA_luma),
|
234 |
|
|
.gclk_intra_mbAddrA_Cb(gclk_intra_mbAddrA_Cb),
|
235 |
|
|
.gclk_intra_mbAddrA_Cr(gclk_intra_mbAddrA_Cr),
|
236 |
|
|
.gclk_intra_mbAddrB(gclk_intra_mbAddrB),
|
237 |
|
|
.gclk_intra_mbAddrC_luma(gclk_intra_mbAddrC_luma),
|
238 |
|
|
.gclk_intra_mbAddrD(gclk_intra_mbAddrD),
|
239 |
|
|
.gclk_seed(gclk_seed),
|
240 |
|
|
.blk4x4_inter_preload_counter(blk4x4_inter_preload_counter),
|
241 |
|
|
.gclk_Inter_ref_rf(gclk_Inter_ref_rf),
|
242 |
|
|
.Inter_blk4x4_pred_output_valid(Inter_blk4x4_pred_output_valid),
|
243 |
|
|
.gclk_pred_output(gclk_pred_output),
|
244 |
|
|
.gclk_blk4x4_sum(gclk_blk4x4_sum),
|
245 |
|
|
.end_of_MB_DEC(end_of_MB_DEC),
|
246 |
|
|
.end_of_BS_DEC(end_of_BS_DEC),
|
247 |
|
|
.DF_duration(DF_duration),
|
248 |
|
|
.gclk_end_of_MB_DEC(gclk_end_of_MB_DEC),
|
249 |
|
|
.gclk_DF(gclk_DF),
|
250 |
|
|
.Intra_mbAddrB_RAM_rd(Intra_mbAddrB_RAM_rd),
|
251 |
|
|
.Intra_mbAddrB_RAM_wr(Intra_mbAddrB_RAM_wr),
|
252 |
|
|
.gclk_Intra_mbAddrB_RAM(gclk_Intra_mbAddrB_RAM),
|
253 |
|
|
.rec_DF_RAM0_cs_n(rec_DF_RAM0_cs_n),
|
254 |
|
|
.gclk_rec_DF_RAM0(gclk_rec_DF_RAM0),
|
255 |
|
|
.rec_DF_RAM1_cs_n(rec_DF_RAM1_cs_n),
|
256 |
|
|
.gclk_rec_DF_RAM1(gclk_rec_DF_RAM1),
|
257 |
|
|
.DF_mbAddrA_RF_rd(DF_mbAddrA_RF_rd),
|
258 |
|
|
.DF_mbAddrA_RF_wr(DF_mbAddrA_RF_wr),
|
259 |
|
|
.gclk_DF_mbAddrA_RF(gclk_DF_mbAddrA_RF),
|
260 |
|
|
.DF_mbAddrB_RAM_rd(DF_mbAddrB_RAM_rd),
|
261 |
|
|
.DF_mbAddrB_RAM_wr(DF_mbAddrB_RAM_wr),
|
262 |
|
|
.gclk_DF_mbAddrB_RAM(gclk_DF_mbAddrB_RAM)
|
263 |
|
|
);
|
264 |
|
|
hybrid_pipeline_ctrl hybrid_pipeline_ctrl (
|
265 |
|
|
.clk(clk),
|
266 |
|
|
.reset_n(reset_n),
|
267 |
|
|
.mb_num_h(mb_num_h),
|
268 |
|
|
.mb_num_v(mb_num_v),
|
269 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
270 |
|
|
.CodedBlockPatternLuma(CodedBlockPatternLuma),
|
271 |
|
|
.CodedBlockPatternChroma(CodedBlockPatternChroma),
|
272 |
|
|
.mb_type_general(mb_type_general),
|
273 |
|
|
.slice_data_state(slice_data_state),
|
274 |
|
|
.residual_state(residual_state),
|
275 |
|
|
.TotalCoeff(TotalCoeff),
|
276 |
|
|
.Is_skip_run_entry(Is_skip_run_entry),
|
277 |
|
|
.skip_mv_calc(skip_mv_calc),
|
278 |
|
|
.end_of_one_residual_block(end_of_one_residual_block),
|
279 |
|
|
.end_of_DCBlk_IQIT(end_of_DCBlk_IQIT),
|
280 |
|
|
.end_of_ACBlk4x4_IQIT(end_of_ACBlk4x4_IQIT),
|
281 |
|
|
.end_of_one_blk4x4_intra(end_of_one_blk4x4_intra),
|
282 |
|
|
.end_of_one_blk4x4_inter(end_of_one_blk4x4_inter),
|
283 |
|
|
.end_of_one_blk4x4_sum(end_of_one_blk4x4_sum),
|
284 |
|
|
.end_of_MB_DF(end_of_MB_DF),
|
285 |
|
|
.disable_DF(disable_DF),
|
286 |
|
|
|
287 |
|
|
.curr_CBPLuma_IsZero(curr_CBPLuma_IsZero),
|
288 |
|
|
.end_of_MB_DEC(end_of_MB_DEC),
|
289 |
|
|
.trigger_CAVLC(trigger_CAVLC),
|
290 |
|
|
.trigger_blk4x4_intra_pred(trigger_blk4x4_intra_pred),
|
291 |
|
|
.trigger_blk4x4_inter_pred(trigger_blk4x4_inter_pred),
|
292 |
|
|
.trigger_blk4x4_rec_sum(trigger_blk4x4_rec_sum)
|
293 |
|
|
);
|
294 |
|
|
IQIT IQIT (
|
295 |
|
|
.clk(clk),
|
296 |
|
|
.reset_n(reset_n),
|
297 |
|
|
.TotalCoeff(TotalCoeff),
|
298 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
299 |
|
|
.gclk_1D(gclk_1D),
|
300 |
|
|
.gclk_2D(gclk_2D),
|
301 |
|
|
.gclk_rescale(gclk_rescale),
|
302 |
|
|
.gclk_rounding(gclk_rounding),
|
303 |
|
|
.residual_state(residual_state),
|
304 |
|
|
.cavlc_decoder_state(cavlc_decoder_state),
|
305 |
|
|
.end_of_one_residual_block(end_of_one_residual_block),
|
306 |
|
|
.end_of_NonZeroCoeff_CAVLC(end_of_NonZeroCoeff_CAVLC),
|
307 |
|
|
.QPy(QPy),
|
308 |
|
|
.QPc(QPc),
|
309 |
|
|
.i4x4_CbCr(i4x4_CbCr),
|
310 |
|
|
.coeffLevel_ext_0({{7{coeffLevel_0[8]}},coeffLevel_0}),
|
311 |
|
|
.coeffLevel_ext_1({{7{coeffLevel_1[8]}},coeffLevel_1}),
|
312 |
|
|
.coeffLevel_ext_2({{7{coeffLevel_2[8]}},coeffLevel_2}),
|
313 |
|
|
.coeffLevel_ext_3({{7{coeffLevel_3[8]}},coeffLevel_3}),
|
314 |
|
|
.coeffLevel_ext_4({{7{coeffLevel_4[8]}},coeffLevel_4}),
|
315 |
|
|
.coeffLevel_ext_5({{7{coeffLevel_5[8]}},coeffLevel_5}),
|
316 |
|
|
.coeffLevel_ext_6({{7{coeffLevel_6[8]}},coeffLevel_6}),
|
317 |
|
|
.coeffLevel_ext_7({{7{coeffLevel_7[8]}},coeffLevel_7}),
|
318 |
|
|
.coeffLevel_ext_8({{7{coeffLevel_8[8]}},coeffLevel_8}),
|
319 |
|
|
.coeffLevel_ext_9({{7{coeffLevel_9[8]}},coeffLevel_9}),
|
320 |
|
|
.coeffLevel_ext_10({{7{coeffLevel_10[8]}},coeffLevel_10}),
|
321 |
|
|
.coeffLevel_ext_11({{7{coeffLevel_11[8]}},coeffLevel_11}),
|
322 |
|
|
.coeffLevel_ext_12({{7{coeffLevel_12[8]}},coeffLevel_12}),
|
323 |
|
|
.coeffLevel_ext_13({{7{coeffLevel_13[8]}},coeffLevel_13}),
|
324 |
|
|
.coeffLevel_ext_14({{7{coeffLevel_14[8]}},coeffLevel_14}),
|
325 |
|
|
.coeffLevel_ext_15({{7{coeffLevel_15[8]}},coeffLevel_15}),
|
326 |
|
|
|
327 |
|
|
.OneD_counter(OneD_counter),
|
328 |
|
|
.TwoD_counter(TwoD_counter),
|
329 |
|
|
.rescale_counter(rescale_counter),
|
330 |
|
|
.rounding_counter(rounding_counter),
|
331 |
|
|
.curr_DC_IsZero(curr_DC_IsZero),
|
332 |
|
|
.curr_DC_scaled(curr_DC_scaled),
|
333 |
|
|
.rounding_output_0(IQIT_output_0),
|
334 |
|
|
.rounding_output_1(IQIT_output_1),
|
335 |
|
|
.rounding_output_2(IQIT_output_2),
|
336 |
|
|
.rounding_output_3(IQIT_output_3),
|
337 |
|
|
.rounding_output_4(IQIT_output_4),
|
338 |
|
|
.rounding_output_5(IQIT_output_5),
|
339 |
|
|
.rounding_output_6(IQIT_output_6),
|
340 |
|
|
.rounding_output_7(IQIT_output_7),
|
341 |
|
|
.rounding_output_8(IQIT_output_8),
|
342 |
|
|
.rounding_output_9(IQIT_output_9),
|
343 |
|
|
.rounding_output_10(IQIT_output_10),
|
344 |
|
|
.rounding_output_11(IQIT_output_11),
|
345 |
|
|
.rounding_output_12(IQIT_output_12),
|
346 |
|
|
.rounding_output_13(IQIT_output_13),
|
347 |
|
|
.rounding_output_14(IQIT_output_14),
|
348 |
|
|
.rounding_output_15(IQIT_output_15),
|
349 |
|
|
.end_of_ACBlk4x4_IQIT(end_of_ACBlk4x4_IQIT),
|
350 |
|
|
.end_of_DCBlk_IQIT(end_of_DCBlk_IQIT)
|
351 |
|
|
);
|
352 |
|
|
Intra_pred_top Intra_pred_top (
|
353 |
|
|
.clk(clk),
|
354 |
|
|
.reset_n(reset_n),
|
355 |
|
|
.gclk_intra_mbAddrA_luma(gclk_intra_mbAddrA_luma),
|
356 |
|
|
.gclk_intra_mbAddrA_Cb(gclk_intra_mbAddrA_Cb),
|
357 |
|
|
.gclk_intra_mbAddrA_Cr(gclk_intra_mbAddrA_Cr),
|
358 |
|
|
.gclk_intra_mbAddrB(gclk_intra_mbAddrB),
|
359 |
|
|
.gclk_intra_mbAddrC_luma(gclk_intra_mbAddrC_luma),
|
360 |
|
|
.gclk_intra_mbAddrD(gclk_intra_mbAddrD),
|
361 |
|
|
.gclk_seed(gclk_seed),
|
362 |
|
|
.gclk_Intra_mbAddrB_RAM(gclk_Intra_mbAddrB_RAM),
|
363 |
|
|
.mb_num_h(mb_num_h),
|
364 |
|
|
.mb_num_v(mb_num_v),
|
365 |
|
|
.mb_type_general(mb_type_general),
|
366 |
|
|
.NextMB_IsSkip(NextMB_IsSkip),
|
367 |
|
|
.Intra16x16_predmode(Intra16x16_predmode),
|
368 |
|
|
.Intra4x4_predmode_CurrMb(Intra4x4_predmode_CurrMb),
|
369 |
|
|
.Intra_chroma_predmode(Intra_chroma_predmode),
|
370 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
371 |
|
|
.trigger_blk4x4_intra_pred(trigger_blk4x4_intra_pred),
|
372 |
|
|
.blk4x4_sum_counter(blk4x4_sum_counter),
|
373 |
|
|
.sum_right_column_reg(sum_right_column_reg),
|
374 |
|
|
.blk4x4_sum_PE0_out(blk4x4_sum_PE0_out),
|
375 |
|
|
.blk4x4_sum_PE1_out(blk4x4_sum_PE1_out),
|
376 |
|
|
.blk4x4_sum_PE2_out(blk4x4_sum_PE2_out),
|
377 |
|
|
.blk4x4_sum_PE3_out(blk4x4_sum_PE3_out),
|
378 |
|
|
.blk4x4_pred_output0(blk4x4_pred_output0),
|
379 |
|
|
.blk4x4_pred_output1(blk4x4_pred_output1),
|
380 |
|
|
.blk4x4_pred_output2(blk4x4_pred_output2),
|
381 |
|
|
.blk4x4_pred_output4(blk4x4_pred_output4),
|
382 |
|
|
.blk4x4_pred_output5(blk4x4_pred_output5),
|
383 |
|
|
.blk4x4_pred_output6(blk4x4_pred_output6),
|
384 |
|
|
.blk4x4_pred_output8(blk4x4_pred_output8),
|
385 |
|
|
.blk4x4_pred_output9(blk4x4_pred_output9),
|
386 |
|
|
.blk4x4_pred_output10(blk4x4_pred_output10),
|
387 |
|
|
.blk4x4_pred_output12(blk4x4_pred_output12),
|
388 |
|
|
.blk4x4_pred_output13(blk4x4_pred_output13),
|
389 |
|
|
.blk4x4_pred_output14(blk4x4_pred_output14),
|
390 |
|
|
.Intra_mbAddrB_RAM_wr(Intra_mbAddrB_RAM_wr),
|
391 |
|
|
.Intra_mbAddrB_RAM_wr_addr(Intra_mbAddrB_RAM_wr_addr),
|
392 |
|
|
.Intra_mbAddrB_RAM_din(Intra_mbAddrB_RAM_din),
|
393 |
|
|
|
394 |
|
|
.PE0_out(Intra_pred_PE0_out),
|
395 |
|
|
.PE1_out(Intra_pred_PE1_out),
|
396 |
|
|
.PE2_out(Intra_pred_PE2_out),
|
397 |
|
|
.PE3_out(Intra_pred_PE3_out),
|
398 |
|
|
.Intra4x4_predmode(Intra4x4_predmode),
|
399 |
|
|
.blk4x4_intra_preload_counter(blk4x4_intra_preload_counter),
|
400 |
|
|
.blk4x4_intra_precompute_counter(blk4x4_intra_precompute_counter),
|
401 |
|
|
.blk4x4_intra_calculate_counter(blk4x4_intra_calculate_counter),
|
402 |
|
|
.end_of_one_blk4x4_intra(end_of_one_blk4x4_intra),
|
403 |
|
|
.Intra_mbAddrB_RAM_rd(Intra_mbAddrB_RAM_rd)
|
404 |
|
|
);
|
405 |
|
|
Inter_pred_top Inter_pred_top (
|
406 |
|
|
.clk(clk),
|
407 |
|
|
.gclk_Inter_ref_rf(gclk_Inter_ref_rf),
|
408 |
|
|
.reset_n(reset_n),
|
409 |
|
|
.mb_num_h(mb_num_h),
|
410 |
|
|
.mb_num_v(mb_num_v),
|
411 |
|
|
.trigger_blk4x4_inter_pred(trigger_blk4x4_inter_pred),
|
412 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
413 |
|
|
.mb_type_general_bit3(mb_type_general[3]),
|
414 |
|
|
.mv_is16x16(mv_is16x16),
|
415 |
|
|
.mv_below8x8(mv_below8x8),
|
416 |
|
|
.mvx_CurrMb0(mvx_CurrMb0),
|
417 |
|
|
.mvx_CurrMb1(mvx_CurrMb1),
|
418 |
|
|
.mvx_CurrMb2(mvx_CurrMb2),
|
419 |
|
|
.mvx_CurrMb3(mvx_CurrMb3),
|
420 |
|
|
.mvy_CurrMb0(mvy_CurrMb0),
|
421 |
|
|
.mvy_CurrMb1(mvy_CurrMb1),
|
422 |
|
|
.mvy_CurrMb2(mvy_CurrMb2),
|
423 |
|
|
.mvy_CurrMb3(mvy_CurrMb3),
|
424 |
|
|
.ref_frame_RAM_dout(ref_frame_RAM_dout),
|
425 |
|
|
|
426 |
|
|
.Inter_pred_out0(Inter_pred_out0),
|
427 |
|
|
.Inter_pred_out1(Inter_pred_out1),
|
428 |
|
|
.Inter_pred_out2(Inter_pred_out2),
|
429 |
|
|
.Inter_pred_out3(Inter_pred_out3),
|
430 |
|
|
.blk4x4_inter_preload_counter(blk4x4_inter_preload_counter),
|
431 |
|
|
.blk4x4_inter_calculate_counter(blk4x4_inter_calculate_counter),
|
432 |
|
|
.Inter_chroma2x2_counter(Inter_chroma2x2_counter),
|
433 |
|
|
.mv_below8x8_curr(mv_below8x8_curr),
|
434 |
|
|
.pos_FracL(pos_FracL),
|
435 |
|
|
.end_of_one_blk4x4_inter(end_of_one_blk4x4_inter),
|
436 |
|
|
.Inter_blk4x4_pred_output_valid(Inter_blk4x4_pred_output_valid),
|
437 |
|
|
.ref_frame_RAM_rd(ref_frame_RAM_rd),
|
438 |
|
|
.ref_frame_RAM_rd_addr(ref_frame_RAM_rd_addr)
|
439 |
|
|
);
|
440 |
|
|
sum sum (
|
441 |
|
|
.clk(clk),
|
442 |
|
|
.reset_n(reset_n),
|
443 |
|
|
.slice_data_state(slice_data_state),
|
444 |
|
|
.residual_state(residual_state),
|
445 |
|
|
.TotalCoeff(TotalCoeff),
|
446 |
|
|
.curr_CBPLuma_IsZero(curr_CBPLuma_IsZero),
|
447 |
|
|
.CodedBlockPatternChroma(CodedBlockPatternChroma),
|
448 |
|
|
.curr_DC_IsZero(curr_DC_IsZero),
|
449 |
|
|
.curr_DC_scaled(curr_DC_scaled),
|
450 |
|
|
.gclk_pred_output(gclk_pred_output),
|
451 |
|
|
.gclk_blk4x4_sum(gclk_blk4x4_sum),
|
452 |
|
|
.trigger_blk4x4_rec_sum(trigger_blk4x4_rec_sum),
|
453 |
|
|
.IQIT_output_0(IQIT_output_0),
|
454 |
|
|
.IQIT_output_1(IQIT_output_1),
|
455 |
|
|
.IQIT_output_2(IQIT_output_2),
|
456 |
|
|
.IQIT_output_3(IQIT_output_3),
|
457 |
|
|
.IQIT_output_4(IQIT_output_4),
|
458 |
|
|
.IQIT_output_5(IQIT_output_5),
|
459 |
|
|
.IQIT_output_6(IQIT_output_6),
|
460 |
|
|
.IQIT_output_7(IQIT_output_7),
|
461 |
|
|
.IQIT_output_8(IQIT_output_8),
|
462 |
|
|
.IQIT_output_9(IQIT_output_9),
|
463 |
|
|
.IQIT_output_10(IQIT_output_10),
|
464 |
|
|
.IQIT_output_11(IQIT_output_11),
|
465 |
|
|
.IQIT_output_12(IQIT_output_12),
|
466 |
|
|
.IQIT_output_13(IQIT_output_13),
|
467 |
|
|
.IQIT_output_14(IQIT_output_14),
|
468 |
|
|
.IQIT_output_15(IQIT_output_15),
|
469 |
|
|
.mb_type_general(mb_type_general),
|
470 |
|
|
.Intra4x4_predmode(Intra4x4_predmode),
|
471 |
|
|
.Intra16x16_predmode(Intra16x16_predmode),
|
472 |
|
|
.Intra_chroma_predmode(Intra_chroma_predmode),
|
473 |
|
|
.Intra_pred_PE0_out(Intra_pred_PE0_out),
|
474 |
|
|
.Intra_pred_PE1_out(Intra_pred_PE1_out),
|
475 |
|
|
.Intra_pred_PE2_out(Intra_pred_PE2_out),
|
476 |
|
|
.Intra_pred_PE3_out(Intra_pred_PE3_out),
|
477 |
|
|
.blk4x4_intra_calculate_counter(blk4x4_intra_calculate_counter),
|
478 |
|
|
.Inter_pred_out0(Inter_pred_out0),
|
479 |
|
|
.Inter_pred_out1(Inter_pred_out1),
|
480 |
|
|
.Inter_pred_out2(Inter_pred_out2),
|
481 |
|
|
.Inter_pred_out3(Inter_pred_out3),
|
482 |
|
|
.blk4x4_inter_calculate_counter(blk4x4_inter_calculate_counter),
|
483 |
|
|
.Inter_chroma2x2_counter(Inter_chroma2x2_counter),
|
484 |
|
|
.Inter_blk4x4_pred_output_valid(Inter_blk4x4_pred_output_valid),
|
485 |
|
|
.mv_below8x8_curr(mv_below8x8_curr),
|
486 |
|
|
.pos_FracL(pos_FracL),
|
487 |
|
|
.mb_num_h(mb_num_h),
|
488 |
|
|
.mb_num_v(mb_num_v),
|
489 |
|
|
.LowerMB_IsSkip(LowerMB_IsSkip),
|
490 |
|
|
|
491 |
|
|
.end_of_one_blk4x4_sum(end_of_one_blk4x4_sum),
|
492 |
|
|
.blk4x4_sum_counter(blk4x4_sum_counter),
|
493 |
|
|
.blk4x4_rec_counter(blk4x4_rec_counter),
|
494 |
|
|
.blk4x4_sum_PE0_out(blk4x4_sum_PE0_out),
|
495 |
|
|
.blk4x4_sum_PE1_out(blk4x4_sum_PE1_out),
|
496 |
|
|
.blk4x4_sum_PE2_out(blk4x4_sum_PE2_out),
|
497 |
|
|
.blk4x4_sum_PE3_out(blk4x4_sum_PE3_out),
|
498 |
|
|
.blk4x4_rec_counter_2_raster_order(blk4x4_rec_counter_2_raster_order),
|
499 |
|
|
.sum_right_column_reg(sum_right_column_reg),
|
500 |
|
|
.blk4x4_pred_output0(blk4x4_pred_output0),
|
501 |
|
|
.blk4x4_pred_output1(blk4x4_pred_output1),
|
502 |
|
|
.blk4x4_pred_output2(blk4x4_pred_output2),
|
503 |
|
|
.blk4x4_pred_output4(blk4x4_pred_output4),
|
504 |
|
|
.blk4x4_pred_output5(blk4x4_pred_output5),
|
505 |
|
|
.blk4x4_pred_output6(blk4x4_pred_output6),
|
506 |
|
|
.blk4x4_pred_output8(blk4x4_pred_output8),
|
507 |
|
|
.blk4x4_pred_output9(blk4x4_pred_output9),
|
508 |
|
|
.blk4x4_pred_output10(blk4x4_pred_output10),
|
509 |
|
|
.blk4x4_pred_output12(blk4x4_pred_output12),
|
510 |
|
|
.blk4x4_pred_output13(blk4x4_pred_output13),
|
511 |
|
|
.blk4x4_pred_output14(blk4x4_pred_output14),
|
512 |
|
|
.Intra_mbAddrB_RAM_wr(Intra_mbAddrB_RAM_wr),
|
513 |
|
|
.Intra_mbAddrB_RAM_wr_addr(Intra_mbAddrB_RAM_wr_addr),
|
514 |
|
|
.Intra_mbAddrB_RAM_din(Intra_mbAddrB_RAM_din)
|
515 |
|
|
);
|
516 |
|
|
DF_top DF_top (
|
517 |
|
|
.clk(clk),
|
518 |
|
|
.reset_n(reset_n),
|
519 |
|
|
.gclk_DF(gclk_DF),
|
520 |
|
|
.gclk_end_of_MB_DEC(gclk_end_of_MB_DEC),
|
521 |
|
|
.gclk_DF_mbAddrA_RF(gclk_DF_mbAddrA_RF),
|
522 |
|
|
.gclk_DF_mbAddrB_RAM(gclk_DF_mbAddrB_RAM),
|
523 |
|
|
.end_of_BS_DEC(end_of_BS_DEC),
|
524 |
|
|
.disable_DF(disable_DF),
|
525 |
|
|
.mb_num_h(mb_num_h),
|
526 |
|
|
.mb_num_v(mb_num_v),
|
527 |
|
|
.bs_V0(bs_V0),
|
528 |
|
|
.bs_V1(bs_V1),
|
529 |
|
|
.bs_V2(bs_V2),
|
530 |
|
|
.bs_V3(bs_V3),
|
531 |
|
|
.bs_H0(bs_H0),
|
532 |
|
|
.bs_H1(bs_H1),
|
533 |
|
|
.bs_H2(bs_H2),
|
534 |
|
|
.bs_H3(bs_H3),
|
535 |
|
|
.QPy(QPy),
|
536 |
|
|
.QPc(QPc),
|
537 |
|
|
.slice_alpha_c0_offset_div2(slice_alpha_c0_offset_div2),
|
538 |
|
|
.slice_beta_offset_div2(slice_beta_offset_div2),
|
539 |
|
|
.blk4x4_sum_counter(blk4x4_sum_counter),
|
540 |
|
|
.blk4x4_rec_counter_2_raster_order(blk4x4_rec_counter_2_raster_order),
|
541 |
|
|
.rec_DF_RAM_dout(rec_DF_RAM_dout),
|
542 |
|
|
.blk4x4_sum_PE0_out(blk4x4_sum_PE0_out),
|
543 |
|
|
.blk4x4_sum_PE1_out(blk4x4_sum_PE1_out),
|
544 |
|
|
.blk4x4_sum_PE2_out(blk4x4_sum_PE2_out),
|
545 |
|
|
.blk4x4_sum_PE3_out(blk4x4_sum_PE3_out),
|
546 |
|
|
|
547 |
|
|
.DF_duration(DF_duration),
|
548 |
|
|
.end_of_MB_DF(end_of_MB_DF),
|
549 |
|
|
.DF_edge_counter_MR(DF_edge_counter_MR),
|
550 |
|
|
.one_edge_counter_MR(one_edge_counter_MR),
|
551 |
|
|
.DF_mbAddrA_RF_rd(DF_mbAddrA_RF_rd),
|
552 |
|
|
.DF_mbAddrA_RF_wr(DF_mbAddrA_RF_wr),
|
553 |
|
|
.DF_mbAddrB_RAM_rd(DF_mbAddrB_RAM_rd),
|
554 |
|
|
.DF_mbAddrB_RAM_wr(DF_mbAddrB_RAM_wr),
|
555 |
|
|
.dis_frame_RAM_wr(dis_frame_RAM_wr),
|
556 |
|
|
.dis_frame_RAM_wr_addr(dis_frame_RAM_wr_addr),
|
557 |
|
|
.dis_frame_RAM_din(dis_frame_RAM_din)
|
558 |
|
|
);
|
559 |
|
|
rec_DF_RAM_ctrl rec_DF_RAM_ctrl (
|
560 |
|
|
.clk(clk),
|
561 |
|
|
.reset_n(reset_n),
|
562 |
|
|
.disable_DF(disable_DF),
|
563 |
|
|
.end_of_MB_DEC(end_of_MB_DEC),
|
564 |
|
|
.DF_edge_counter_MR(DF_edge_counter_MR),
|
565 |
|
|
.one_edge_counter_MR(one_edge_counter_MR),
|
566 |
|
|
.blk4x4_sum_PE0_out(blk4x4_sum_PE0_out),
|
567 |
|
|
.blk4x4_sum_PE1_out(blk4x4_sum_PE1_out),
|
568 |
|
|
.blk4x4_sum_PE2_out(blk4x4_sum_PE2_out),
|
569 |
|
|
.blk4x4_sum_PE3_out(blk4x4_sum_PE3_out),
|
570 |
|
|
.blk4x4_sum_counter(blk4x4_sum_counter),
|
571 |
|
|
.blk4x4_rec_counter_2_raster_order(blk4x4_rec_counter_2_raster_order),
|
572 |
|
|
.rec_DF_RAM0_dout(rec_DF_RAM0_dout),
|
573 |
|
|
.rec_DF_RAM1_dout(rec_DF_RAM1_dout),
|
574 |
|
|
|
575 |
|
|
.rec_DF_RAM_dout(rec_DF_RAM_dout),
|
576 |
|
|
.rec_DF_RAM0_wr(rec_DF_RAM0_wr),
|
577 |
|
|
.rec_DF_RAM0_rd(rec_DF_RAM0_rd),
|
578 |
|
|
.rec_DF_RAM0_addr(rec_DF_RAM0_addr),
|
579 |
|
|
.rec_DF_RAM0_din(rec_DF_RAM0_din),
|
580 |
|
|
.rec_DF_RAM1_wr(rec_DF_RAM1_wr),
|
581 |
|
|
.rec_DF_RAM1_rd(rec_DF_RAM1_rd),
|
582 |
|
|
.rec_DF_RAM1_addr(rec_DF_RAM1_addr),
|
583 |
|
|
.rec_DF_RAM1_din(rec_DF_RAM1_din)
|
584 |
|
|
);
|
585 |
|
|
ram_sync_1r_sync_1w #(`rec_DF_RAM0_data_width,`rec_DF_RAM0_data_depth)
|
586 |
|
|
rec_DF_RAM0 (
|
587 |
|
|
.clk(gclk_rec_DF_RAM0),
|
588 |
|
|
.rst_n(reset_n),
|
589 |
|
|
.wr_n(~rec_DF_RAM0_wr),
|
590 |
|
|
.rd_n(~rec_DF_RAM0_rd),
|
591 |
|
|
.wr_addr(rec_DF_RAM0_addr),
|
592 |
|
|
.rd_addr(rec_DF_RAM0_addr),
|
593 |
|
|
.data_in(rec_DF_RAM0_din),
|
594 |
|
|
.data_out(rec_DF_RAM0_dout)
|
595 |
|
|
);
|
596 |
|
|
ram_sync_1r_sync_1w #(`rec_DF_RAM1_data_width,`rec_DF_RAM1_data_depth)
|
597 |
|
|
rec_DF_RAM1 (
|
598 |
|
|
.clk(gclk_rec_DF_RAM1),
|
599 |
|
|
.rst_n(reset_n),
|
600 |
|
|
.wr_n(~rec_DF_RAM1_wr),
|
601 |
|
|
.rd_n(~rec_DF_RAM1_rd),
|
602 |
|
|
.wr_addr(rec_DF_RAM1_addr),
|
603 |
|
|
.rd_addr(rec_DF_RAM1_addr),
|
604 |
|
|
.data_in(rec_DF_RAM1_din),
|
605 |
|
|
.data_out(rec_DF_RAM1_dout)
|
606 |
|
|
);
|
607 |
|
|
ext_RAM_ctrl ext_RAM_ctrl(
|
608 |
|
|
.clk(clk),
|
609 |
|
|
.reset_n(reset_n),
|
610 |
|
|
.end_of_one_frame(end_of_one_frame),
|
611 |
|
|
.ref_frame_RAM_rd(ref_frame_RAM_rd),
|
612 |
|
|
.ref_frame_RAM_rd_addr(ref_frame_RAM_rd_addr),
|
613 |
|
|
.dis_frame_RAM_wr(dis_frame_RAM_wr),
|
614 |
|
|
.dis_frame_RAM_wr_addr(dis_frame_RAM_wr_addr),
|
615 |
|
|
//.dis_frame_RAM_din(dis_frame_RAM_din),
|
616 |
|
|
.ref_frame_RAM_dout(ref_frame_RAM_dout),
|
617 |
|
|
.ext_frame_RAM0_cs_n(ext_frame_RAM0_cs_n),
|
618 |
|
|
.ext_frame_RAM0_wr(ext_frame_RAM0_wr),
|
619 |
|
|
.ext_frame_RAM0_addr(ext_frame_RAM0_addr),
|
620 |
|
|
.ext_frame_RAM0_data(ext_frame_RAM0_data),
|
621 |
|
|
.ext_frame_RAM1_cs_n(ext_frame_RAM1_cs_n),
|
622 |
|
|
.ext_frame_RAM1_wr(ext_frame_RAM1_wr),
|
623 |
|
|
.ext_frame_RAM1_addr(ext_frame_RAM1_addr),
|
624 |
|
|
.ext_frame_RAM1_data(ext_frame_RAM1_data)
|
625 |
|
|
);
|
626 |
|
|
endmodule
|