Re: [問題] Verilog中 always語法的問題
sensitivity list 沒寫全
always@(f or s4 or s3 or s5)
= 右邊的變數都要列上去
因為上次那種寫法很笨
建議直接用 verilog 2001 語法
always@*
或是
always@(*)
直接用 assign 也行
不過下面的寫法有四個加法,合出來的電路可能會比較大,移動一下 mux
調整一下 data path 加法就可以減少
assign t1 = (f[25])? s3 : s4;
assign t2 = (f[25])? a5 : s3;
assign output = f + t1 + t2;
這樣只要二個加法器
※ 引述《jalamorm (加拉摩)》之銘言:
: 我不知道問題在哪,
: 但是為了防止有 latch 產生,
: 建議把 if-else statement 改成完整的寫法。
: always @(f)
: begin
: if (f[25] == 1'b0)
: output = f + s4 + s3;
: else
: output = f + s3 + s5;
: end
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.3.118
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):