# Brief Introduction of design modeling ###### tags: `Digital IC Design` [回到主頁面](https://hackmd.io/@derek8955/BkK2Nb5Jo/https%3A%2F%2Fhackmd.io%2FdpcBlBL8TlShpQ-wSi9Quw) > 在 [08-Three Types of Design Modeling](https://hackmd.io/2jaC5Z7jS7OXjopgBycDgg) 有更詳細的介紹 ```verilog= // verilog 的架構 module 模組名稱( 輸出入埠名稱 ); // 01 輸出入埠 敘述(這個 module 所擁有的 input/output port ) // 02 資料型態 敘述(變數的定義) // 03 內部電路 敘述 endmodule ``` 03 內部電路 由很多區塊組成,每個區塊能用以下三總方式來撰寫 : <font color="green">1. Gate level Modeling ( Structural Modeling ) </font> <font color="green">2. Dataflow Modeling </font> <font color="green">3. Behavioral Modeling ( Procedural Blocks ) </font> | Gate level | Dataflow | Behavioral | | -------------------- | ---------------- | ---------------- | | 利用底層 lib 中的 gate 拼湊而成 | 利用 assign 語法 | 利用 always 語法 | > :key: Behavioral Modeling還有其他語法,在這先不做介紹。 > :exclamation: 每個區塊都是同步執行,沒有先後順序之分 ```verilog= // Gate level Modeling module example( a, b ); input a; output b; not U1 (b,a); endmodule ---------------------------------------------------------------------------------- // Dataflow Modeling module example( c, a, b ); input a,b; output c; assign c = a * b; endmodule ---------------------------------------------------------------------------------- // Behavioral Modeling( Procedural Blocks ) module example( c, a, b ); input a,b; output reg c; // assume a = 1, b = 2 always@( * ) begin c = a; c = b; end endmodule ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up