|
// Read Memory
: ]' [ [* W, I- b9 w task read_mem;$ I/ \' c3 t: }' u4 j8 X/ n
input [full_mem_bits - 1 : 0] addr;
" I) D! o) \/ J8 e+ F8 X3 |8 g output [DQ_BITS - 1 : 0] data;. p/ } W9 F8 w+ n6 y
reg [part_mem_bits : 0] i;
8 b. R$ j+ U' s3 w9 n u begin! H0 S, N8 }/ k* c
`ifdef FULL_MEM
1 W# ~ k) j( V8 W6 `7 c7 r data = mem_array[addr];
6 N% K* B6 ?' F6 o) L`else
( Y) n; C3 m& B& M: [8 a! c0 q" w" r begin : loop7 B4 r7 o' I! Y8 A o) m+ a$ z
for (i = 0; i < mem_used; i = i + 1) begin
+ b( X/ }1 Q+ z" y if (addr_array === addr) begin' U" b5 |. Q6 e9 O
disable loop;1 I/ x5 Z) u6 k, O2 J
end
% O9 v" q3 \" `8 ] end
, q9 x& _1 L6 R' O+ t% z/ D. } end% l7 T8 o3 z( I1 t
if (i <= mem_used) begin
# a# x* w3 w' ^' M data = mem_array;6 w. Q) E1 `% w+ ^" Z5 {# d4 j
end0 ?$ T1 K C; U8 L
`endif
% h" I5 p2 y2 H9 A end/ _4 v! x) D1 H/ Q! X' b9 T" T
endtask
$ N+ a5 m/ Q& _, J% Y1 |# M$ |; b3 ^3 f
===========================================================================# ~) ?& B+ M4 `2 ^) K' J& w1 W/ P
上面這一段紅色在modelsim模擬時沒有問題!
: H' @/ v8 @7 ?2 E9 k+ J0 N但是在quartus編譯時被列為error!: a2 }4 o9 Q/ Y/ W B: x
想請問一下差別在哪裡! |
|