模組

Verilog

基本語法

型態

全域變數

基本元件

多樣的寫法

指定

assign

always

initial

運算式

分枝

迴圈

模組

函數

Task

陣列

輸出入

觀察

真值表

測試程式

訊息顯示

注意事項

模擬程序

硬體工程

程式範例

Xor

Xor3

全加器

加法器

加減器

快速加法器

乘法器

ALU

閂鎖器

脈衝偵測

計數器

多工器

暫存器群

記憶體

延遲問題

浮點數

狀態機

程式計數器

CPU0-Mini

CPU0

pipeline

工具

QuartusII

Icarus

Veritek

訊息

相關網站

參考文獻

最新修改

簡體版

English

模組的語法

module <module name> (<port list>);
<declares>
<module items>
endmodule

其中的 <module items> 可能是以下的語句:
1. initial
2. always
3. assign
4. module 的實例

模組的範例:

module A(out1, out2, in1, in2);
    output out1;
    output [3:0] out2;
    input in1;
    input [2:0] in2;
endmodule

更簡單的語法:

module A(output out1, output [3:0] out2, input in1, input [2:0] in2);
endmodule

模組實例化

A x(x1, y1, a1, b1); // 按照位置一對一連接

A (x1, y1, a1, b1); // 省略名稱

A y(.out1(x1), .out2(y1), .in1(a1), .in2(b1)); // 按照名稱進行連接

SystemVerilog 中的 module

  1. http://www.asic-world.com/systemverilog/hierarchy3.html

In Verilog 2001 and 1995, module declaration inside another module is not allowed, only modules can be instanciated. But in SystemVerilog, module declaration can be nested.

Facebook

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License