「verilog case寫法」的推薦目錄:
- 關於verilog case寫法 在 コバにゃんチャンネル Youtube 的精選貼文
- 關於verilog case寫法 在 大象中醫 Youtube 的最佳貼文
- 關於verilog case寫法 在 大象中醫 Youtube 的最佳貼文
- 關於verilog case寫法 在 [問題] Verilog寫不寫else差異- 看板Electronics - 批踢踢實業坊 的評價
- 關於verilog case寫法 在 Verilog (4) – 算術邏輯單元ALU 的設計(作者:陳鍾誠) 的評價
- 關於verilog case寫法 在 Re: [問題] verilog中if else和case合成後的差別- 看板Electronics 的評價
- 關於verilog case寫法 在 Re: [問題] verilog中if else和case合成後的差別 - PTT Web 的評價
- 關於verilog case寫法 在 Writing a Verilog Testbench - YouTube 的評價
verilog case寫法 在 大象中醫 Youtube 的最佳貼文
verilog case寫法 在 大象中醫 Youtube 的最佳貼文
verilog case寫法 在 Verilog (4) – 算術邏輯單元ALU 的設計(作者:陳鍾誠) 的推薦與評價
採用CASE 語法設計ALU. 其實、在Verilog 當中,我們並不需要自行設計加法器,因為Verilog 提供了高階的「+, -, *, /」等基本運算,可以讓我們直接使用,更方便的是, ... ... <看更多>
verilog case寫法 在 Re: [問題] verilog中if else和case合成後的差別- 看板Electronics 的推薦與評價
那這樣的話兩種寫法差在哪?寫code的方便性嗎?(如果要寫case就要寫一大堆) complier 愈來愈強時,寫簡單的case 跟if-else 並不會差太多個人覺得後面這種條件的寫法會 ... ... <看更多>
verilog case寫法 在 [問題] Verilog寫不寫else差異- 看板Electronics - 批踢踢實業坊 的推薦與評價
想請教一下有涉獵Verilog的朋友們,用always block來描述
Sequential circuit時,若只想在某種情形下存入新的input值並且輸出
你們會用哪一種寫法?
原則上寫法1,不加else:
always@(posedge clk)
case(out_sel)
4'd1:if(V==4'd2)begin det0<=din; end
4'd2:if(V==4'd3)begin det0<=din; end
4'd3:if(V==4'd4)begin det0<=din; end
4'd4:if(V==4'd5)begin det0<=din; end
4'd5:if(V==4'd6)begin det0<=din; end
4'd6:if(V==4'd7)begin det0<=din; end
4'd7:if(V==4'd8)begin det0<=din; end
endcase
寫法2,加了else,但為了保留記憶,將output拉回指向自己:
always@(posedge clk)
case(out_sel)
4'd1:if(V==4'd2)begin det0<=din; end else det0<=det0;
4'd2:if(V==4'd3)begin det0<=din; end else det0<=det0;
4'd3:if(V==4'd4)begin det0<=din; end else det0<=det0;
4'd4:if(V==4'd5)begin det0<=din; end else det0<=det0;
4'd5:if(V==4'd6)begin det0<=din; end else det0<=det0;
4'd6:if(V==4'd7)begin det0<=din; end else det0<=det0;
4'd7:if(V==4'd8)begin det0<=din; end else det0<=det0;
endcase
合成結果:
用design compiler合出來的D-FF不太一樣,
寫法1是合出帶有CK,E,Q,QN的另一種DFF,比較不像是平常呼叫D-FF module
的那種標準元件
寫法2是合出帶有CK,D,Q及一個多工器的標準記憶D-FF
奇怪的是寫法2,也就是有加else的電路gate count卻比沒加的多了一些,
我知道有些人說不管怎樣都一定要寫,比較保險,也比較嚴謹,但是這樣gate count
就增加了,划得來嗎? 模擬起來結果也都是一樣的
但奇怪的是,平常寫單獨寫D-FF module時,為了能夠有記憶的特性
也不會在enable後面再加else阿?
而一般推崇也都是這樣的寫法:
module dff8(Q, D, enable, reset, clk); //8bit D-filp-flop
output [7:0] Q;
input [7:0] D;
input clk, reset,enable;
reg [7:0] Q;
always @(posedge clk or negedge reset)
begin
if (reset==0) Q<=0;
else if (enable)Q<=D;
end
endmodule
...讓我有點搞糊塗了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.101.8.201
※ 編輯: asd1436 來自: 120.101.8.201 (12/13 22:11)
... <看更多>