assign
module
endmodule
阻塞賦值 =
在begin end 語句塊中順序執行
<= 則是並行執行
fork
語句塊1
語句塊2
join
多用於**
語句塊之間並行執行
begin end 包圍起來的是乙個語句塊
單獨的語句也是乙個語句塊
敏感訊號列表
always@(敏感訊號列表)
電平觸發 用 = 阻塞賦值
邊沿觸發 用<= 非阻塞賦值
always 賦值左邊必須為 reg
if
else 與c語言一致
case(******) 效率高,可以達到很高頻率時鐘
電平觸發 寫了 if 不寫 else 會綜合出鎖存器 因為電平觸發,會有毛刺。
迴圈語句
for() 與c語言一致
repeat 多用於**
函式 function 可綜合
function《返回值位寬或型別》 《函式名》
輸入埠與型別說明
處理語句 (必須可綜合)
endfunction
task 不可綜合 通常用於**
無返回值
上述是系統的任務,不可綜合。
需要明確設計電路 組合/數字
明確設計邏輯
Verilog基本語法
首先必須知道該訊號的最大值 計算該訊號的位寬 wire用於結構化器件之間物理連線的建模 在verilog中,wire永遠是wire,就是相當於一條連線,用來連線電路,不能儲存資料,無驅動能力,是組合邏輯 並且只能在assign左側賦值,不能在always 中賦值。reg可以綜合成register,l...
Verilog基本語法和vivado
veriloghdl 是一種用於數字邏輯電路設計的硬體描述語言 使用veriloghdl可以像設計軟體一樣設計硬體系統。hdl hardware description language 硬體描述語言 常量 變數 變數 運算子 八種 表示式基本結構 verilog模組的基本結構 module 模組名...
Verilog基本語法 原語篇(Gate門)
verilog中已有一些建立好的邏輯門和開關的模型。在所涉及的模組中,可通過例項引用這些門與開關模型,從而對模組進行結構化的描述。and output,input,nand output,input,or output,input,nor output,input,xor output,input,...