Verilog學習小白筆記(八)

2021-08-28 21:57:35 字數 1182 閱讀 6564

書目:verilog數字設計與綜合第二版 夏宇聞

十四章一、邏輯綜合

1、邏輯綜合是在標準單元庫和特定的設計約束的基礎上,把設計的

高層次描述轉化為優化的門級網表的過程

二、verilog hdl綜合

1、目前都是在暫存器傳輸級層次使用硬體描述語言編寫設計,再進行綜合

2、可進行邏輯綜合的結構:埠,引數,模組定義,訊號和變數,呼叫

函式和任務,過程(不支援initial),過程塊,資料流(不考慮延遲)

迴圈(while和forever)必須包含@(posedge clock)或@(negedge clock)

3、幾乎所有的操作符都可以綜合,除!==、===這種與x或z相關的綜合中無意義

4、賦值語句為邏輯表示式轉化為門級電路實現

5、算術運算使用全加器來實現

6、?操作符則會產生多路選擇器

7、if_else、case 語句被轉換成多路選擇器

8、for迴圈可以用來產生級聯的鏈式組合邏輯

9、always語句生成時序和組合邏輯

10、函式語句被綜合成具有乙個輸出變數的組合模組

三、邏輯綜合流程

1、rtl描述、翻譯為未經優化的中間表示、邏輯優化、工藝對映和優化、優化的門級表示

四、邏輯綜合建模技巧

1、verilog編碼風格

使用有意義的變數和訊號名稱

避免混合使用上公升和下降沿觸發的觸發器

2、使用基本構造模組和使用連續賦值語句的對比:

前者對稱可高效優化,不簡潔,降低**器效能,

後者描述簡潔但最後邏輯及結構不一定對稱

3、呼叫多路選擇器與if和case語句的對比

如果需要結構化實現最好使用前者,後者可能產生恆不可預期的隨機邏輯

多路選擇器更容易你控制,綜合速度快,但依賴工藝,**較長

4、使用圓括弧將邏輯組合起來,便於控制最終結構,增強可讀性

5、使用算術操作符*,/,%與使用現有構造模組對比

前者對邏輯和面積的代價很大,但不依賴工藝且簡明,自定義浪費時間且依賴工藝

6、注意多條賦值語句對同乙個賦值語句賦值的情況

可能生成意料之外的電路,前面的賦值可能被忽略,最後一次起作用

7,顯式地定義if和case語句:必須說明各種條件,否則可能產生電平敏感的鎖存器

8、設計劃分:水平劃分、垂直劃分、並行化設計結構(使用並行操作)

Verilog 學習小白筆記(三)

書目 verilog hdl數字設計與綜合第二版 夏宇聞 第六章二 延遲 1 普通賦值延遲 取延遲時間足夠前運算元最新值計算 assign 10 out in1 in2 2 隱式賦值延遲 wire 10 out in1 in2 3 線網宣告延遲 任何時候該線網賦值都會延遲 wire 10 out 三...

js小白筆記

通過 jquery,您可以使用 hide 和 show 方法來隱藏和顯示 html 元素 通過 jquery,您可以使用 toggle 方法來切換 hide 和 show 方法。顯示被隱藏的元素,並隱藏已顯示的元素 通過 jquery,您可以實現元素的淡入淡出效果。jquery 擁有下面四種 fad...

Java小白筆記

1.常量,一般字母大寫,不能再賦值,final修飾符 final int value 10 2.與,短路與,或,短路或 短路主要乙個條件成立不必執行第二個,效率更高 3.三元運算子 k i 0?i i 如果i大於等於0,把i賦值給k,否則把負i賦值給k 4.final變數經常和static關鍵字一起...