色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

如果在FPGA設計中不允許latch中現,又如何避免呢?

FPGA設計論壇 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2022-11-08 15:07 ? 次閱讀

在進行FPGA設計的過程中,經常會在編譯程序時發現有一些warning提示生成了一些latch,而且一般FPGA的設計規則也不建議有latch生成。那么,latch究竟是什么東西呢?如果在FPGA設計中不允許latch中現,又如何避免呢?

1 鎖存器、觸發器和寄存器的比較

(1)鎖存器

鎖存器(latch)是電平觸發的存儲單元,數據存儲的動作(狀態轉換)取決于輸入時鐘(或者使能)信號的電平值,僅當鎖存器處于使能狀態時,輸出才會隨著數據輸入發生變化。

分為普通鎖存器和門控鎖存器。普通鎖存器無控制信號,輸出狀態始終直接由輸入決定。在實際的數字系統中,為了協調各部分的工作,往往需要有一個特定的控制信號去控制鎖存器狀態轉換的時間,在控制信號無效時,輸出保持不變,不隨輸入變換;當控制信號有效時,輸出由輸入決定,跟隨輸入變化。

①正是因為門控鎖存器在控制信號有效的期間內,都可以接收輸入信號,所以,激勵信號的任何變化,都將直接引起鎖存器輸出狀態的改變。這時輸入信號若發生多次變化,輸出狀態也可能發生多次變化,這一現象稱為鎖存器的空翻。

②其次,當門控鎖存器的控制信號有效時,鎖存器就變成了一個組合電路,時序邏輯電路的模型就等效為兩個各組合電路互為反饋的反饋系統,因此,系統有可能會因為瞬態特性不穩定而產生振蕩現象。

(2) 觸發器(flip-flop)

觸發器(flip-flop)是邊沿敏感的存儲單元,數據存儲的動作(狀態轉換)由某一信號的上升或者下降沿進行同步的(限制存儲單元狀態轉換在一個很短的時間內)。(鐘控D觸發器其實就是 D 鎖存器,邊沿 D 觸發器才是真正的 D 觸發器)

觸發器分為兩種,一種是主從觸發器和邊沿觸發器。主從觸發器在時鐘有效期內(主觸發器)接收數據,在時鐘邊沿輸出狀態轉換。邊沿觸發器在時鐘邊沿期間, 觸發器才接收數據并使輸出狀態轉換。目前,主從觸發器基本上已經很少見了,實際使用的大都是邊沿觸發器。

(3)寄存器(register)

寄存器(register)用來暫時存放參與運算的數據和運算結果。在實際的數字系統中,通常把能夠用來存儲一組二進制代碼的同步時序邏輯電路稱為寄存器。

區別與聯系:由于觸發器內有記憶功能,因此利用觸發器可以方便地構成寄存器。由于一個觸發器能夠存儲一位二進制碼,所以把 n 個觸發器的時鐘端口連接起來就能構成一個存儲 n 位二進制碼的寄存器。

從寄存數據的角度來講,寄存器和鎖存器的功能是相同的;它們的區別在于寄存器是同步時鐘控制,而鎖存器是電位信號控制。一般的設計規則是:在絕大多數設計中避免產生鎖存器。它會讓您設計的時序完蛋,并且它的隱蔽性很強,非老手不能查出。

2 鎖存器具備的特點

(1)對毛刺敏感(使能信號有效時,輸出狀態可能隨輸入多次變化,產生空翻,對下一級電路很危險),不能異步復位,因此在上電后處于不確定的 狀態。

(2)鎖存器會使靜態時序分析變得非常復雜,不具備可重用性。(首先, 鎖存器沒有時鐘參與信號傳遞,無法做 STA;其次,綜合工具會將 latch 優化掉,造成前后仿真結果不一致)

(3)在FPGA中基本的單元是由查找表和觸發器組成的,若生成鎖存器反而需要更多的資源。根據鎖存器的特點可以看出,在電路設計中,要對鎖存器特別謹慎,如果設計經過綜合后產生出和設計意圖不一致的鎖存器,則將導致設計錯誤,包括仿真和綜合。因此,在設計中需要避免產生意想不到的鎖存器。如果組合邏輯的語句完全不使用 always 語句塊,就可以保證綜合器不會綜合出鎖存器。

(4)但如果鎖存器和觸發器兩者都由與非門搭建的話,鎖存器耗用的邏輯資源要比D觸發器少(D觸發器需要12個MOS管,鎖存器只需6個MOS管),鎖存器的集成度更高。

所以在的ASIC設計中會用到鎖存器。但鎖存器對毛刺敏感,無異步復位端,不能讓芯片在上電時 處在確定的狀態;另外,鎖存器會使靜態時序分析變得很復雜,不利于設計的可重用,所以,在ASIC設計中,除了CPU這高速電路,或者RAM這種對面積很敏感的電路,一般不提倡用鎖存器。

3 鎖存器的出現以及解決辦法

在基于always的組合邏輯描述語句中容易綜合出鎖存器的地方:

在FPGA程序設計過程中,出現latch絕大多數情況是因為if和case語句的不完全描述,導致程序在綜合過程中出現了latch的功能行為。舉個簡單的例子,寫個譯碼器,輸入為a,輸出為b,其中a為2位輸入,b為8位輸出,若如下所寫:

always@( * )

case(a)

2‘b00: b = 8’d1;

2‘b01: b = 8’d5;

2‘b10: b = 8’d8;

2‘b11: b = 8’d17;

endcase

但是若將a的位數改為3,如下所寫:

always@( * )

case(a)

3‘b000: b = 8’d1;

3‘b001: b = 8’d5;

3‘b010: b = 8’d8;

3‘b011: b = 8’d17;

Endcase

可以看到,第二張綜合圖里面出現了latch。然而,兩段程序的不同僅僅是a的位數從2變到了3,這究竟是為什么?

其實這就是因為case的不完全描述所致。在第一段程序中,輸入a可能的四種取值都窮舉到了,所以是完全描述的。而第二段程序中,a變為了3位數,而取值只有3’b000、3’b001、3’b010、3’b011四個,而3’b100到3’b111之間的數據并沒有列舉出,雖然在實際執行過程中輸入并不會出現未列舉出的數值,但是系統在編譯時并不知情,所以它會在3’b100到3’b111之間的值出現時將b的輸出鎖存,也就是出現了latch的功能行為

。 之所以在硬件設計中避免latch的出現,主要原因是latch會產生毛刺(glitch),這種毛刺對下一級電路是很危險的。并且其隱蔽性很強,不易查出。因此,在設計中,應盡量避免latch的使用。

從其產生原因可以看出,為了防止出現latch,對于if語句和case語句一定要做到完全描述,最常用的方法就是總是加上else和default。

總結:

鎖存器產生的根本原因:當組合邏輯需要保持時,就會綜合出鎖存器。

鎖存器的危害:

(1)latch會產生毛刺(glitch),這種毛刺對下一級電路是很危險的;

(2)不能異步復位,因此在上電后處于不確定的 狀態;

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

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121080
  • 觸發器
    +關注

    關注

    14

    文章

    2003

    瀏覽量

    61316
  • Latch
    +關注

    關注

    1

    文章

    48

    瀏覽量

    16232

原文標題:FPGA設計中如何才能不出現Latch鎖存器

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如果在ldc1000evm上只更換電容,我并聯了一個0.1微法的電容,在GUI上如何設置參數?

    求大神幫忙,如果在ldc1000evm上只更換電容,我并聯了一個0.1微法的電容,在GUI上如何設置參數?
    發表于 12-26 06:12

    為什么不允許帶負荷解列發電機

    為什么不能通過先解列發電機的方式停機如果主汽門關閉了,而發電機沒有解列,會造成發電機逆的,這么思考的確也是有一定道理的,那么在現實為什么不允許這么做
    的頭像 發表于 12-17 10:58 ?231次閱讀

    電力系統不允許發生諧振的原因

    電力系統諧振是指在電力系統,由于某些特定條件的滿足,導致系統內部的電感和電容元件相互配合,形成一種振蕩現象。諧振現象在電力系統不允許發生的,因為它會帶來一系列嚴重的問題和危害。以下是對電力系統
    的頭像 發表于 08-22 14:21 ?944次閱讀

    直線導軌的維護保養

    不允許用錘直接敲擊導軌,不允許通過滾動體傳遞壓力。 ? 三、導軌使用合適、準確的安裝工具盡量使用專用工具,極力避免使用布類和短纖維之類的東西。 ? 四、防止導軌的銹蝕,直接用手拿取上銀導軌時,要充分洗去手上的汗液,并涂以優質
    的頭像 發表于 08-15 10:34 ?227次閱讀

    ESP8266是否不允許將pwm API與at命令固件一起使用?

    :esp_iot_sdk_v1.5.1/examples/at) 編譯和下載還可以,但它似乎沒有像我預期的那樣工作。 調用pwm_init()后,AT命令I/O太遲鈍,PWM信號波形也不穩定。 是否不允許將 pwm API 與 at 命令固件一起使用? 您能給我展示有關此的工作示例或文檔嗎?
    發表于 07-22 06:05

    什么情況下變壓器不允許調壓

    定情況下,變壓器是不允許調壓的。 一、變壓器調壓的原理 變壓器調壓的原理主要基于電磁感應原理。當原邊繞組通過交流電時,會在鐵芯中產生交變磁通,這個交變磁通會感應到副邊繞組,從而產生副邊電壓。通過改變原邊和副邊繞組
    的頭像 發表于 07-19 10:35 ?882次閱讀

    SDMMC無法在Modustoolbox (MTB) 編譯怎么解決?

    我目前正在使用 XMC4700 Relax Kit 和 Modustoolbox。 我想啟用 SDMMC 外圍設備。 但遺憾的是,MTB 不允許我編譯設備配置器生成的代碼。 錯誤信息是 ERROR
    發表于 07-03 07:52

    使用USBUART組件與主機PC通信,如果在串行端口打開的情況下終止固件,主機端為什么會報錯?

    我正在使用 USBUART 組件與主機 PC 通信,我一直在尋找某種機制來關閉 MCU 端的串行端口,或者至少通知主機我將關閉端口。 我遇到過這樣一個問題:如果在串行端口打開的情況下終止固件(如重置
    發表于 06-03 08:41

    SSWLBIST觸發ESR0脈沖的原因?

    在 TC377 電路板上,如果在 UCB 啟用了 LBIST,則 ESR0 在釋放 4.4ms 后會有一個 579us 脈沖。 如果在 UCB 禁用 LBIST,ESR0 將直接釋
    發表于 06-03 08:04

    為什么二極管可以限制信號幅度

    二極管是一種半導體器件,其主要特性是單向導電性,即只允許電流從陽極流向陰極,而不允許從陰極流向陽極。
    的頭像 發表于 05-29 16:36 ?785次閱讀

    如何將S7-1500 CPU重置為出廠設置

    如果在項目環境開始重置為出廠設置,必須具有到相關 CPU 的在線連接。
    的頭像 發表于 05-21 11:15 ?4476次閱讀
    如何將S7-1500 CPU重置為出廠設置<b class='flag-5'>呢</b>?

    電力電容器為什么不允許短時間內過電壓運行

    在電力系統,電容器是一種重要的電氣設備,常用于提高功率因數、改善電網穩定性等方面。然而,電容器作為一種電壓敏感的元件,對于電壓波動非常敏感,特別是在短時間內的過電壓情況下,可能引發嚴重的問題。為什么電力電容器不允許短時間內過電壓運行?
    的頭像 發表于 02-26 14:30 ?1113次閱讀

    FPGA競爭與冒險的前世今生

    競爭冒險:在組合電路,當邏輯門有兩個互補輸入信號同時向相反狀態變化時,輸出端可能產生過渡干擾脈沖的現象,稱為競爭冒險。那么 FPGA 產生競爭冒險的原因是什么? 信號在 FPGA
    發表于 02-21 16:26

    時序電路為什么在FPGA上綜合成了latch

    有朋友提問,下面的代碼為什么在DC里可以綜合成DFF,而在FPGA上卻綜合成了latch
    的頭像 發表于 02-20 16:12 ?902次閱讀
    時序電路為什么在<b class='flag-5'>FPGA</b>上綜合成了<b class='flag-5'>latch</b>?

    CMOS閂鎖測試的電流脈沖如何加上的?

    閂鎖測試中進行電流注入測試時,管腳電壓還不允許超多1.52倍最大電壓,這個如何做到?注入的電流需要是在工作電流+100mA。
    發表于 02-04 07:29
    主站蜘蛛池模板: 久久精品无码成人国产毛 | 日本吃孕妇奶水免费观看 | 国产h视频在线观看网站免费 | 欧美日韩久久久精品A片 | 青青青青久久久久国产的 | 精品一产品大全 | 久久久久伊人 | 国产精品久久久久久熟妇吹潮软件 | seyeye高清视频在线 | 午夜福利理论片高清在线 | 超碰免费视频caopoom9 | 双性精跪趴灌满h室友4p | 国产嫩草影院精品免费网址 | 国产成人亚洲综合无 | 禁室培欲在线视频免费观看 | 老湿司午夜爽爽影院榴莲视频 | 户外露出野战hd | 色欲AV无码乱码精品国产 | 亚洲精品久久久久69影院 | 菠萝蜜国际一区麻豆 | 永久午夜福利视频一区在线观看 | 国产国拍亚洲精品av麻豆 | se01国产短视频在线观看 | 女侠含泪巨臀迎合79 | 日本免费xxx | 国产欧美一区二区三区免费 | 李丽莎与土豪50分钟在线观看 | 欧美丰满白嫩bbxx | 北条麻妃夫の友人196 | 久久精品视频免费 | 伊人久久大香线蕉综合色啪 | 亚洲AV电影天堂男人的天堂 | 日韩欧无码一区二区三区免费不卡 | 雪恋电影完整版免费观看 | 亚洲免费无码中文在线亚洲在 | 亚洲国产成人精品无码区APP | 国产1769一七六九视频在线 | 性欧美FREE少妇XXX | 欧美性猛交AAA片免费观看 | 吃胸亲吻吃奶摸下面免费视频 | 真实处破女全过程完免费观看 |