chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Verilog進行組合邏輯設計時有哪些注意事項

FPGA之家 ? 來源:博客園 ? 作者: IC_learner ? 2021-06-23 17:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、邏輯設計

(1)組合邏輯設計

下面是一些用Verilog進行組合邏輯設計時的一些注意事項:

①組合邏輯可以得到兩種常用的RTL 級描述方式。第一種是always 模塊的觸發(fā)事件為電平敏感信號列表;第二種就是用assign 關(guān)鍵字描述的數(shù)據(jù)流賦值語句。

②always 模塊的敏感表為電平敏感信號的電路可幾乎可以完成對所有組合邏輯電路的建模。always模塊的敏感列表為所有判斷條件信號和輸入信號,但一定要注意敏感列表的完整性(注意通配符*的使用)。

由于賦值語句有阻塞賦值和非阻塞賦值兩類,建議讀者使用阻塞賦值語句“=”,原因?qū)⒃凇白枞x值和非阻塞賦值”中(現(xiàn)在還沒有寫)進行說明。

always 模塊中的信號必須定義為reg 型,不過最終的實現(xiàn)結(jié)果中并沒有寄存器。這是由于在組合邏輯電路描述中,將信號定義為reg 型,只是為了滿足語法要求。

③assign 語句的描述,利用條件符“?”可以描述一些相對簡單的組合邏輯電路,左邊的賦值信號只能被定義為wire 型。當組合邏輯比較復雜時,需要很多條語句assign 語句或者多重嵌套“?”,使得代碼可讀性極差,因此此時推薦always組合邏輯建模方式。

④設計時要注意不要出現(xiàn)組合邏輯環(huán)路:

673c3c16-d407-11eb-9e57-12bb97331649.png

不要在組合邏輯中引入環(huán)路,在組合邏輯中引入環(huán)路會導致電路產(chǎn)生振蕩、毛刺以及沖突等問題,從而降低設計的穩(wěn)定性和可靠性,此外,環(huán)回邏輯的延時完全依靠組合邏輯門延遲和布線延遲。一旦這些傳播時延有所變化,則環(huán)路的整體邏輯將徹底失效。其次,環(huán)路的時序分析是個死循環(huán)過程。目前的EDA 開發(fā)工具為了計算環(huán)路的時序邏輯都會主動割斷時序路徑,引入許多不確定的因素。因此要徹底避免環(huán)路。

(2)時序邏輯設計

①時序電路的行為決定了其只能通過always 塊語句實現(xiàn),通過關(guān)鍵詞“posedge”和“negedge”來捕獲時鐘信號的上升沿和下降沿。在always 語句塊中可以使用任何可綜合的標志符。

②在描述時序電路的always 塊中的reg 型信號都會被綜合成寄存器,這是和組合邏輯電路所不同的。

③時序邏輯中推薦使用非阻塞賦值“《=”,原因?qū)⒑竺嬖敿氄f明。

④時序邏輯的敏感信號列表只需要加入所用的時鐘觸發(fā)沿即可,其余所有的輸入和條件判斷信號都不用加入,這是因為時序邏輯是通過時鐘信號的跳變沿來控制的。

二、鎖存器

鎖存器是個“奇葩”的器件,在FPGA邏輯設計中很避諱;在ASIC設計中,以前很喜歡(因為面積?。F(xiàn)在不是很喜歡了。在這里就記錄一下關(guān)于鎖存器的一些事項吧。

(1)鎖存器的概述

①最常見最基本的鎖存器是SR鎖存器,然后常見常用的鎖存器是D鎖存器。在數(shù)字電路里面,SR鎖存器是最簡單的時序單元,它由一對交叉耦合的或非門構(gòu)成。主要功能就是通過輸入的S、R端分別控制Q進行置位(set)和復位(reset)。

SR鎖存器可以具有鎖存數(shù)據(jù)的功能。雖然SR鎖存器可以鎖存數(shù)據(jù),電路結(jié)構(gòu)也簡單,但是有一個毛病就是S和R同時有效時,輸出錯誤,使用不夠方便;還有一個問題就是某個時候存某個數(shù)據(jù)分不開,相當于時間和內(nèi)容不夠清晰。

因此就有了D鎖存器,D鎖存的功能是在時鐘高/低電平的時候通過數(shù)據(jù),在時鐘低/高電平的時候鎖存數(shù)據(jù)。D鎖存器可以分為前級門電路(兩個與門和一個非門)和后級SR鎖存器組成。

②鎖存器是一種對脈沖電平敏感的存儲單元電路,可以在特定輸入脈沖電平作用下改變狀態(tài),其本身也是一類常用的邏輯單元,有著特定的需求。

③鎖存器在數(shù)據(jù)未鎖存時,輸出端的信號隨輸入信號變化,就像信號通過一個緩沖器一樣,一旦鎖存信號有效,則數(shù)據(jù)被鎖住,輸入信號不起作用。因此,鎖存器也被稱為透明鎖存器,指的是不鎖存時輸出對于輸入是透明的。

④鎖存器和寄存器都是數(shù)字電路的基本存儲單元,但鎖存器是電平觸發(fā)的存儲器,觸發(fā)器是邊沿觸發(fā)的存儲器。

本質(zhì)上,鎖存器和D 觸發(fā)器的邏輯功能是基本相同的,都可存儲數(shù)據(jù),且鎖存器所需的門邏輯更少,具備更高的集成度。

⑤鎖存器具備下列三個缺點:

·對毛刺敏感,不能異步復位,因此在上電后處于不確定的狀態(tài)。

·鎖存器會使靜態(tài)時序分析變得非常復雜,不具備可重用性。

·在FPGA/CPLD芯片中,基本的單元是由查找表和觸發(fā)器組成的,若生成鎖存器反而需要更多的資源。

(2)鎖存器的產(chǎn)生

①鎖存器產(chǎn)生于組合邏輯的設計中,在基于always的組合邏輯描述語句中,可能產(chǎn)生鎖存器的情況具體可分為兩種:其一是在if 語句中,另一種是在case 語句中。

②在always 塊中使用if 語句,但缺乏else 分支而造成鎖存器。

③在always 塊中使用case 語句,由于缺乏default 分支而造成鎖存器。

④如果用到if 語句,最好有else 分支;如果用到case 語句,最好有default 語句。即使需要鎖存器,也通過else 分支或default 分支來顯式說明。

(3)鎖存器的應用

①在總線應用上,鎖存器能提高驅(qū)動能力、隔離前后級。

②地址鎖存器、數(shù)據(jù)鎖存器、復位信號鎖存器;門控時鐘鐘的應用等等。

三、設計思維

這個設計思維本來屬于設計技巧里面的,放在這里說明,是為了告訴自己,在進行電路描述的時候, 是基于這些準則的,在設計時能夠根據(jù)這些基本準則進行優(yōu)化電路。下面是常見的設計思維,主要是基于FPGA的,關(guān)于ASIC其他設計技巧或者設計思維,我記錄在了“技巧”篇。

(1)速度面積互換準則

①速度與面積是設計時??紤]的的一個問題,因此在設計的時候要考慮怎么在這二者之間的權(quán)衡。當然,現(xiàn)在功耗也與速度、面積成為需要考慮的重大因素之一。

②面積和速度互換的具體操作很多,比如模塊復用、乒乓操作、串并轉(zhuǎn)換以及流水線操作等。在設計技巧策略和技巧那一章節(jié)中將會進行敘述。

③串并轉(zhuǎn)換乘法器:假設數(shù)據(jù)速率是乘法器模塊處理速度的3 倍,那么由于乘法器模塊的數(shù)據(jù)吞吐量滿足不了要求,在這種情況下,就利用面積換速度的思想,復制3 個乘法器模塊。首先將輸入數(shù)據(jù)進行串并轉(zhuǎn)換,然后利用這3 個模塊并行處理所分配到的數(shù)據(jù),最后將處理結(jié)果并串轉(zhuǎn)換,達到數(shù)據(jù)速率的要求。

如下圖所示:

67490414-d407-11eb-9e57-12bb97331649.png

(2)FPGA中的設計思維

①信號反相的處理策略

在處理反相信號時,設計時應盡可能地遵從分散反相原則。即應使用多個反相器分別反相,每個反相器驅(qū)動一個負載,這個原則無論對時鐘信號還是對其它信號都是適用的。

因為在FPGA設計中,反相是被吸收到CLB或IOB中的,使用多個反相器并不占用更多的資源,而使用一個反相器將信號反相后驅(qū)動多個負載卻往往會多占資源,而且延遲也增加了。

②首先,如果輸入信號需要反相,則應盡可能地調(diào)用輸入帶反相功能的符號,而不是用分離的反相器對輸入信號進行反相。

因為在使用自帶反相功能的器件中,由于函數(shù)發(fā)生器用查表方式實現(xiàn)邏輯,反相操作是不占資源的,也沒有額外延遲;而分開使用不同邏輯使用反相操作實現(xiàn),從而消耗額外的資源,增加額外的延遲。

③其次,如果一個信號反相后驅(qū)動了多個負載,則應將反相功能分散到各個負載中實現(xiàn),而不能采用傳統(tǒng)TTL電路設計,采用集中反相驅(qū)動多個負載來減少所用的器件的數(shù)量。

因為在FPGA設計中,集中反相驅(qū)動多個負載往往會多占一個邏輯塊或半個邏輯塊,而且延遲也增加了。分散信號的反相往往可以與其它邏輯在同一單元內(nèi)完成而不消耗額外的邏輯資源。

本文轉(zhuǎn)自博客園:

https://www.cnblogs.com/IClearner

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1663

    文章

    22491

    瀏覽量

    638890
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5617

    瀏覽量

    130378
  • Verilog
    +關(guān)注

    關(guān)注

    30

    文章

    1374

    瀏覽量

    114704
  • 鎖存器
    +關(guān)注

    關(guān)注

    8

    文章

    957

    瀏覽量

    45451

原文標題:VerilogHDL 可綜合設計的注意事項

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    使用熱電偶進行溫度測量時的注意事項

    為估算半導體器件的結(jié)溫,會對封裝表面溫度進行測量,但如果測量操作有誤,可能無法得到準確結(jié)果。本應用筆記將說明溫度測量過程中的注意事項。此外,本應用筆記的內(nèi)容不依賴于半導體器件的種類,具有普遍適用性。
    的頭像 發(fā)表于 02-05 14:40 ?571次閱讀

    請問CW32F030的硬件注意事項有哪些?

    CW32F030的硬件注意事項有哪些
    發(fā)表于 12-25 08:20

    請問IAP功能升級流程中有哪些注意事項

    IAP 功能升級流程中有哪些注意事項?
    發(fā)表于 12-23 07:55

    更換備用電池時有哪些注意事項?

    更換電能質(zhì)量在線監(jiān)測裝置備用電池時,需嚴格遵循 安全操作規(guī)范、電池匹配原則、接線標準 ,核心是避免短路、過壓、電池不兼容等風險,同時確保裝置恢復后能正常工作,具體注意事項如下: 一、更換前的準備工作
    的頭像 發(fā)表于 12-10 11:14 ?1489次閱讀
    更換備用電池<b class='flag-5'>時有</b>哪些<b class='flag-5'>注意事項</b>?

    迅為RK3588開發(fā)板Android系統(tǒng)燒寫及注意事項

    迅為RK3588開發(fā)板Android系統(tǒng)燒寫及注意事項
    的頭像 發(fā)表于 12-03 15:17 ?7346次閱讀
    迅為RK3588開發(fā)板Android系統(tǒng)燒寫及<b class='flag-5'>注意事項</b>

    驅(qū)動板PCB布線的注意事項

    PCB Layout 注意事項 1)布局注意事項: ●● 整體布局遵循功率回路與小信號控制回路分開布局原則,功率部分和控制部分的 GND 分開回流到輸入 GND。 ●● 芯片的放置方向優(yōu)先考慮驅(qū)動
    發(fā)表于 12-02 07:40

    芯源的MCU使用電池過程中有哪些注意事項

    目前大多數(shù)MCU都是用電池進行供電,芯源的MCU使用電池過程中有哪些注意事項?應該如何設計電池供電呢?
    發(fā)表于 11-20 07:24

    CW32F030在使用中的注意事項有哪些?

    CW32F030在使用中的注意事項有哪些?
    發(fā)表于 11-18 06:20

    L083最低功耗是多少,應該如何進行低功耗設計?有哪些注意事項

    L083最低功耗是多少,應該如何進行低功耗設計?有哪些注意事項?
    發(fā)表于 11-12 07:29

    電能質(zhì)量在線監(jiān)測裝置數(shù)據(jù)存儲在裝置內(nèi)置存儲和外接存儲設備時有哪些注意事項?

    景的具體注意事項: 一、裝置內(nèi)置存儲(SD 卡 / SSD/eMMC)注意事項 內(nèi)置存儲是數(shù)據(jù)的 “第一道本地防線”,需優(yōu)先解決 “惡劣環(huán)境適配” 和 “壽命損耗” 問題,確?;A存儲穩(wěn)定: 1. 存儲介質(zhì)必須選 “工業(yè)級”,拒絕消費級 核心原因 :監(jiān)測
    的頭像 發(fā)表于 10-30 10:04 ?368次閱讀

    emWin AppWizard 開發(fā)注意事項有哪些?

    emWin AppWizard 開發(fā)注意事項
    發(fā)表于 09-04 06:18

    美國Odyssey奧德賽電池充電注意事項全解析

    Odyssey奧德賽電池充電注意事項全解析 奧德賽電池作為高性能的深循環(huán)鉛酸電池,廣泛應用于汽車啟動、摩托車、船舶以及備用電源系統(tǒng)中。正確的充電方法不僅能夠延長電池壽命,還能保障其性能穩(wěn)定發(fā)揮
    的頭像 發(fā)表于 05-19 16:31 ?1260次閱讀
    美國Odyssey奧德賽電池充電<b class='flag-5'>注意事項</b>全解析

    IGBT器件的防靜電注意事項

    IGBT作為功率半導體器件,對靜電極為敏感。我將從其靜電敏感性原理入手,詳細闡述使用過程中防靜電的具體注意事項與防護措施,確保其安全穩(wěn)定運行。
    的頭像 發(fā)表于 05-15 14:55 ?2114次閱讀

    設置射頻網(wǎng)絡分析儀的測試條件有哪些注意事項

    幅度/相位精度)。 優(yōu)化建議: 記錄驗證數(shù)據(jù),并與歷史數(shù)據(jù)對比(如幅度誤差應≤±0.05dB)。 3. 數(shù)據(jù)處理 注意事項: 測試數(shù)據(jù)需進行平滑處理(如移動平均)以降低隨機噪聲(如16次平均降低
    發(fā)表于 05-06 16:02

    錐齒輪減速機的使用安裝和維護維修注意事項

    錐齒輪減速機的使用、安裝和維護維修注意事項涵蓋了多個方面,以下是對這些注意事項的詳細歸納: 一、使用注意事項 1. 確認規(guī)格與設計相符:在使用減速機前,請先行確認購買的規(guī)格與設計規(guī)格是否相符。 2.
    的頭像 發(fā)表于 04-21 18:13 ?1449次閱讀
    錐齒輪減速機的使用安裝和維護維修<b class='flag-5'>注意事項</b>