Chip123 科技應用創新平台

標題: modelsim模擬時沒有問題,quartus編譯時被列為error! [打印本頁]

作者: difgor0426    時間: 2008-3-7 10:58 AM
標題: modelsim模擬時沒有問題,quartus編譯時被列為error!
// Read Memory
) Y" z1 c$ [6 y; X0 n6 Y    task read_mem;
% R  y; ^8 i) z- S! Y        input [full_mem_bits - 1 : 0] addr;' K# g0 m7 l# U! k+ Z5 k
        output      [DQ_BITS - 1 : 0] data;; p2 b! h1 u4 U; p& w
        reg       [part_mem_bits : 0] i;
; a! ^! ~+ V) w+ g: L) s3 R        begin
( U2 G3 A6 f7 I`ifdef FULL_MEM6 O7 \: N1 t0 n3 ?$ q0 @3 b
            data = mem_array[addr];+ o. k3 W0 y! A# m1 A7 U
`else" D1 A- v2 u4 w. y, Q
            begin : loop$ K* M  V& r9 o+ Z2 m8 J
                for (i = 0; i < mem_used; i = i + 1) begin% n2 `' B% ~7 M1 R9 R0 h& o1 @
                    if (addr_array === addr) begin  X% n1 c; s, H$ Q9 n
                        disable loop;* Z! q; A# v5 ~1 a6 v
                    end3 X9 B( t0 g( Z2 U7 M+ i
                end
0 @- P% _' N8 B' k, ^( p! B            end
0 d) P! q: Q. u$ I; R; t            if (i <= mem_used) begin
& O. _" T# \# i- V                data = mem_array;
/ G9 z' U& N6 P) @& g% k            end0 M; ~( J3 d) V) }& _
`endif
+ a0 x/ M. y! r        end
. K8 C2 k7 P* A# o* E    endtask& Q" b" q1 g% ]- u) i& X' K6 Y% Q
& O& s% O- y  ]' {; `
===========================================================================3 Q% s9 v  ^' A4 Q! R  c
上面這一段紅色在modelsim模擬時沒有問題!1 s9 J  x: O6 }5 d3 T) r
但是在quartus編譯時被列為error!) _  K2 z0 `9 n% B9 x
想請問一下差別在哪裡!

作者: ikki    時間: 2008-3-7 11:43 AM
看看quartus 列出的error message吧,
) [8 O3 H$ ?' T: O: G就差在可不可合成.
作者: michael6172    時間: 2008-3-7 01:23 PM
Quartus 是FPGA\CPLD合成軟體,如果跑timing simulation 就必須合成,那verilog語法就只能寫能合成的語法,所以你要看看ifdef  和 task是否可合成,如果不可合成就要改寫法
作者: jeryuan    時間: 2008-10-6 10:47 AM
Just syntax for timing synthesis in QII




歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/) Powered by Discuz! X3.2