91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

FPGA設(shè)計(jì)案例之VerilogHDL可綜合設(shè)計(jì)

454398 ? 來源:博客園 ? 作者:IC_learner ? 2020-11-23 13:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、邏輯設(shè)計(jì)

(1)組合邏輯設(shè)計(jì)

下面是一些用Verilog進(jìn)行組合邏輯設(shè)計(jì)時(shí)的一些注意事項(xiàng):

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

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

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

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

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

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


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

(2)時(shí)序邏輯設(shè)計(jì)

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

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

③時(shí)序邏輯中推薦使用非阻塞賦值“

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

二、鎖存器

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

(1)鎖存器的概述

①鎖存器的詳細(xì)CMOS電路結(jié)果在前面電路基礎(chǔ)章節(jié)中已經(jīng)有描述,這里不詳細(xì)描述它的結(jié)構(gòu),詳情請(qǐng)挫這個(gè)鏈接:http://www.cnblogs.com/IClearner/p/6443539.html。

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

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

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

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

⑤鎖存器具備下列三個(gè)缺點(diǎn):

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

? 鎖存器會(huì)使靜態(tài)時(shí)序分析變得非常復(fù)雜,不具備可重用性。

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

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

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

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

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

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

(3)鎖存器的應(yīng)用

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

②地址鎖存器、數(shù)據(jù)鎖存器、復(fù)位信號(hào)鎖存器;門控時(shí)鐘鐘的應(yīng)用等等。

三、設(shè)計(jì)思維

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

(1)速度面積互換準(zhǔn)則

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

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

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

如下圖所示:


(2)FPGA中的設(shè)計(jì)思維

①信號(hào)反相的處理策略

在處理反相信號(hào)時(shí),設(shè)計(jì)時(shí)應(yīng)盡可能地遵從分散反相原則。即應(yīng)使用多個(gè)反相器分別反相,每個(gè)反相器驅(qū)動(dòng)一個(gè)負(fù)載,這個(gè)原則無論對(duì)時(shí)鐘信號(hào)還是對(duì)其它信號(hào)都是適用的。

因?yàn)樵贔PGA設(shè)計(jì)中,反相是被吸收到CLB或IOB中的,使用多個(gè)反相器并不占用更多的資源,而使用一個(gè)反相器將信號(hào)反相后驅(qū)動(dòng)多個(gè)負(fù)載卻往往會(huì)多占資源,而且延遲也增加了。

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

因?yàn)樵谑褂米詭Х聪喙δ艿钠骷?,由于函?shù)發(fā)生器用查表方式實(shí)現(xiàn)邏輯,反相操作是不占資源的,也沒有額外延遲;而分開使用不同邏輯使用反相操作實(shí)現(xiàn),從而消耗額外的資源,增加額外的延遲。

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

因?yàn)樵贔PGA設(shè)計(jì)中,集中反相驅(qū)動(dòng)多個(gè)負(fù)載往往會(huì)多占一個(gè)邏輯塊或半個(gè)邏輯塊,而且延遲也增加了。分散信號(hào)的反相往往可以與其它邏輯在同一單元內(nèi)完成而不消耗額外的邏輯資源。

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

    關(guān)注

    1660

    文章

    22415

    瀏覽量

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

    關(guān)注

    8

    文章

    956

    瀏覽量

    45011
  • VerilogHDL
    +關(guān)注

    關(guān)注

    2

    文章

    39

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【「龍芯之光 自主可控處理器設(shè)計(jì)解析」閱讀體驗(yàn)】--LoongArch邏輯綜合、芯片設(shè)計(jì)

    本篇講述學(xué)習(xí)LoongArch邏輯綜合測(cè)試性設(shè)計(jì)、物理設(shè)計(jì)章節(jié)內(nèi)容。 一.邏輯綜合 邏輯綜合(logic synthesis)是將電路的行為級(jí)描述,特別是寄存器傳輸級(jí)(Regist
    發(fā)表于 01-18 14:15

    Amphenol FCI Basics更換電池連接器:小設(shè)備的可靠

    Amphenol FCI Basics更換電池連接器:小設(shè)備的可靠選 作為電子工程師,我們?cè)谠O(shè)計(jì)各類小設(shè)備時(shí),電池連接器的選擇至關(guān)重要。它不僅影響著設(shè)備的性能和可靠性,還與環(huán)保和可持續(xù)發(fā)展理念
    的頭像 發(fā)表于 12-10 10:05 ?436次閱讀

    智能光伏時(shí)代:"四"技術(shù)如何提升電站綜合價(jià)值

    ,“可觀、測(cè)、可控、可調(diào)”的“四”技術(shù),西格電力光伏四裝置咨詢:1.3.7-5.0.0.4-6.2.0.0,憑借對(duì)電站全生命周期的智能化賦能,成為提升
    的頭像 發(fā)表于 11-28 16:35 ?2037次閱讀
    智能光伏時(shí)代:&quot;四<b class='flag-5'>可</b>&quot;技術(shù)如何提升電站<b class='flag-5'>綜合</b>價(jià)值

    AMD利用重構(gòu)FPGA設(shè)備Moku實(shí)現(xiàn)自定義激光探測(cè)解決方案

    摘要本文介紹了AdvancedMicroDevices,AMD公司如何基于重構(gòu)FPGA設(shè)備自定義激光探測(cè)解決方案,替代傳統(tǒng)的儀器配置,通過靈活且定制的FPGA設(shè)備Moku提供更高效
    的頭像 發(fā)表于 11-20 17:28 ?1711次閱讀
    AMD利用<b class='flag-5'>可</b>重構(gòu)<b class='flag-5'>FPGA</b>設(shè)備Moku實(shí)現(xiàn)自定義激光探測(cè)解決方案

    MarketsandMarkets FPGA行業(yè)報(bào)告,2026~2030 FPGA市場(chǎng)洞察

    ,F(xiàn)ield-Programmable Gate Array)是一種高度靈活、重構(gòu)的集成電路。與傳統(tǒng) ASIC 不同,FPGA 制造完成后仍可以在終端重新編程,在 高性能并行計(jì)算、實(shí)時(shí)信號(hào)處理、通信加速 等領(lǐng)域具有獨(dú)特優(yōu)勢(shì)。 ? 根據(jù) Mark
    的頭像 發(fā)表于 11-20 13:20 ?498次閱讀
    MarketsandMarkets <b class='flag-5'>FPGA</b>行業(yè)報(bào)告,2026~2030 <b class='flag-5'>FPGA</b>市場(chǎng)洞察

    嵌入式與FPGA的區(qū)別

    應(yīng)用。 FPGA的開發(fā)是邏輯實(shí)現(xiàn)+約束+綜合+仿真,嵌入式的開發(fā)是編碼+編譯+調(diào)試,如果是對(duì)數(shù)字電路設(shè)計(jì)感興趣,可以考慮FPGA。 ?在了解下就業(yè)機(jī)會(huì)哪個(gè)多? ?1、嵌入式的就業(yè)機(jī)會(huì)很多,優(yōu)點(diǎn)就是就業(yè)容易,因?yàn)?/div>
    發(fā)表于 11-20 07:12

    開源RISC-V處理器(蜂鳥E203)學(xué)習(xí)(二)修改FPGA綜合環(huán)境(移植到自己的Xilinx FPGA板卡)

    移植到自己的板卡上。 2.運(yùn)行原FPGA工程 進(jìn)入到FPGA目錄下; gvim打開“README.md”文件,下面就是FPGA綜合的命令。 這里以最后一個(gè):artydevkit
    發(fā)表于 10-31 08:46

    FPGA開發(fā)板vivado綜合、下載程序問題匯總

    在做vivado綜合時(shí)和FPGA下載程序時(shí),我們碰到以下問題,并找出了對(duì)應(yīng)的解決方案。 1.could not open include file”e203_defines.v”問題 在做
    發(fā)表于 10-24 07:12

    如何利用Verilog HDL在FPGA上實(shí)現(xiàn)SRAM的讀寫測(cè)試

    、建立讀寫操作、配置地址計(jì)數(shù)器、模擬數(shù)據(jù)流、綜合與仿真以及下載到FPGA進(jìn)行硬件測(cè)試。通過實(shí)踐,掌握SRAM在FPGA中的使用和基本讀寫方法,加深對(duì)FPGA工作原理的理解。
    的頭像 發(fā)表于 10-22 17:21 ?4352次閱讀
    如何利用Verilog HDL在<b class='flag-5'>FPGA</b>上實(shí)現(xiàn)SRAM的讀寫測(cè)試

    基于FPGA實(shí)現(xiàn)FOC算法PWM模塊設(shè)計(jì)

    哈嘍,大家好,從今天開始正式帶領(lǐng)大家從零到一,在FPGA平臺(tái)上實(shí)現(xiàn)FOC算法,整個(gè)算法的框架如下圖所示,如果大家對(duì)算法的原理不是特別清楚的話,可以先去百度上學(xué)習(xí)一下,本教程著重介紹實(shí)現(xiàn)過程,弱化原理的介紹。那么本文將從PWM模塊開始進(jìn)入FOC算法中去。
    的頭像 發(fā)表于 07-17 15:21 ?3503次閱讀
    基于<b class='flag-5'>FPGA</b>實(shí)現(xiàn)FOC算法<b class='flag-5'>之</b>PWM模塊設(shè)計(jì)

    電纜隧道綜合監(jiān)測(cè)的技術(shù)應(yīng)用分析

    的適配性。電纜隧道綜合監(jiān)測(cè)系統(tǒng),是一款實(shí)現(xiàn)電纜隧道在線監(jiān)測(cè)的軟硬件結(jié)合的解決方案,從電纜隧道實(shí)際情況出發(fā),選配適用的監(jiān)測(cè)內(nèi)容,保證監(jiān)測(cè)內(nèi)容覆蓋全面,才能有效實(shí)現(xiàn)電纜隧道監(jiān)測(cè)。 電纜隧道綜合監(jiān)測(cè)核心監(jiān)測(cè)技術(shù)
    的頭像 發(fā)表于 06-10 10:53 ?673次閱讀
    電纜隧道<b class='flag-5'>綜合</b>監(jiān)測(cè)的技術(shù)應(yīng)用分析

    FPGA調(diào)試方式VIO/ILA的使用

    在Vivado中,VIO(Virtual Input/Output)是一種用于調(diào)試和測(cè)試FPGA設(shè)計(jì)的IP核,它允許設(shè)計(jì)者通過JTAG接口實(shí)時(shí)讀取和寫入FPGA內(nèi)部的寄存器,從而檢查設(shè)計(jì)的運(yùn)行狀態(tài)并修改其行為。VIO IP核提供了一個(gè)簡(jiǎn)單易用的接口,使得用戶可以輕松地與
    的頭像 發(fā)表于 06-09 09:32 ?4005次閱讀
    <b class='flag-5'>FPGA</b>調(diào)試方式<b class='flag-5'>之</b>VIO/ILA的使用

    從發(fā)明到 AI 加速:慶祝 FPGA 創(chuàng)新 40 周年

    今年是首款商用現(xiàn)場(chǎng)可編程門陣列( FPGA )誕生 40 周年,其帶來了重編程硬件的概念。通過打造“與軟件一樣靈活的硬件”,FPGA 重編程邏輯改變了半導(dǎo)體設(shè)計(jì)的面貌。這是開發(fā)人員
    發(fā)表于 06-05 17:32 ?1338次閱讀
    從發(fā)明到 AI 加速:慶祝 <b class='flag-5'>FPGA</b> 創(chuàng)新 40 周年

    FPGA芯片的概念和結(jié)構(gòu)

    FPGA(Field Programmable Gate Array,現(xiàn)場(chǎng)可編程門陣列),是一種可在出廠后由用戶根據(jù)實(shí)際需求進(jìn)行編程配置的集成電路。與專用集成電路(如ASIC)不同,FPGA在硬件層面具備高度的重構(gòu)性,能夠靈活
    的頭像 發(fā)表于 05-12 09:30 ?2922次閱讀

    鄭州麗健獲贈(zèng)首顆重復(fù)使用返回式技術(shù)試驗(yàn)衛(wèi)星搭載證書

    ?日前,記者從鄭州麗健體育用品有限公司獲悉,鄭州麗健獲贈(zèng)首顆重復(fù)使用返回式技術(shù)試驗(yàn)衛(wèi)星搭載證書,搭載證書內(nèi)容顯示:實(shí)踐十九號(hào)衛(wèi)星是由中國航天科技集團(tuán)有限公司第五研究院抓總研制的首顆
    的頭像 發(fā)表于 04-14 16:28 ?740次閱讀
    鄭州麗<b class='flag-5'>之</b>健獲贈(zèng)首顆<b class='flag-5'>可</b>重復(fù)使用返回式技術(shù)試驗(yàn)衛(wèi)星搭載證書