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

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

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

關(guān)于同步復(fù)位與異步復(fù)位的仿真詳解

FPGA技術(shù)驛站 ? 來源:Lauren的FPGA ? 作者:Lauren的FPGA ? 2021-04-09 11:29 ? 次閱讀

FPGA設(shè)計中,我們遵循的原則之一是同步電路,即所有電路是在同一時鐘下同步地處理數(shù)據(jù)。這個概念可進一步展開,即不局限于同一時鐘,只要時鐘之間是同步關(guān)系(兩者之間有明確的相位延遲,例如同一個MMCM生成的時鐘),這是因為目前的芯片規(guī)模越來越大,設(shè)計越來越復(fù)雜,往往需要多個時鐘同時運算。

通常,我們說某個信號與指定時鐘同步,意味著這個信號是由該時鐘驅(qū)動的邏輯生成的,或者這個信號只有在時鐘有效沿(一般是上升沿有效)下才會被觸發(fā)。以復(fù)位信號為例,就有同步復(fù)位和異步復(fù)位之分。我們從HDL代碼角度看一下二者的區(qū)別。如下圖所示代碼,描述的是同步復(fù)位觸發(fā)器,左側(cè)為VHDL-2008版本的描述方式,右側(cè)為System Verilog版本的描述方式??梢钥吹矫舾凶兞苛斜恚ㄗ髠?cè)第15行,右側(cè)第8行)中只有時鐘clk,因此,進程中的狀態(tài)變化就依賴于時鐘的變化即時鐘有效沿。

853274ae-986d-11eb-8b86-12bb97331649.png

我們再看看異步復(fù)位是如何描述的,如下圖所示。左側(cè)是VHDL-2008版本,右側(cè)是System Verilog版本??梢钥吹剑藭r敏感變量列表中除了時鐘clk之外還有復(fù)位信號rst。在VHDL版本中,可以明確地看到復(fù)位信號位于if條件分支,而時鐘有效沿位于elsif分支,優(yōu)先級低于復(fù)位信號。因此,這里只要復(fù)位有效,無論時鐘沿是否有效都會觸發(fā)操作。

853cf26c-986d-11eb-8b86-12bb97331649.png

進一步,我們從仿真角度看看這兩者的區(qū)別。同步復(fù)位觸發(fā)器的仿真結(jié)果如下圖所示??梢钥吹綇?fù)位信號只有在時鐘有效沿下才起作用。圖中第二個復(fù)位脈沖并沒有被時鐘有效沿采到,故不會導(dǎo)致觸發(fā)器復(fù)位。

8554e4c6-986d-11eb-8b86-12bb97331649.png

異步復(fù)位觸發(fā)器仿真結(jié)果如下圖所示??梢钥吹降诙€復(fù)位脈沖盡管沒有在時鐘有效沿下,但仍促使觸發(fā)器復(fù)位。這正是異步的原理。

85698eda-986d-11eb-8b86-12bb97331649.png

對比兩個仿真結(jié)果,我們可以看到同步復(fù)位的一個明顯的好處就是利用了時鐘的過濾功能,去除了復(fù)位信號上的毛刺,而異步復(fù)位下,如果復(fù)位信號有毛刺就會導(dǎo)致觸發(fā)器誤操作,這在狀態(tài)機電路中尤為嚴重,很有可能導(dǎo)致狀態(tài)機進入無效狀態(tài)。
編輯:lyn

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

    關(guān)注

    50

    文章

    4083

    瀏覽量

    133613
  • 同步復(fù)位
    +關(guān)注

    關(guān)注

    0

    文章

    27

    瀏覽量

    10720
  • 異步復(fù)位
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    13315

原文標題:同步復(fù)位與異步復(fù)位

文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    FPGA復(fù)位的8種技巧

    其它輸入引腳類似,對 FPGA 來說往往是異步的。設(shè)計人員可以使用這個信號在 FPGA 內(nèi)部對自己的設(shè)計進行異步或者同步復(fù)位。 不過在一些提示和技巧的幫助下,設(shè)計人員可以找到更加合適的
    的頭像 發(fā)表于 11-16 10:18 ?327次閱讀
    FPGA<b class='flag-5'>復(fù)位</b>的8種技巧

    復(fù)位電路的設(shè)計問題

    前言 最近看advanced fpga 以及fpga設(shè)計實戰(zhàn)演練中有講到復(fù)位電路的設(shè)計,才知道復(fù)位電路有這么多的門道,而不是簡單的外界信號輸入系統(tǒng)復(fù)位。 流程: 1.同步
    的頭像 發(fā)表于 11-15 11:13 ?166次閱讀
    <b class='flag-5'>復(fù)位</b>電路的設(shè)計問題

    復(fù)位電路介紹 復(fù)位電路的原理及作用

    復(fù)位電路(Reset Circuit)是現(xiàn)代電子設(shè)備中常見的一種關(guān)鍵電路,它用于確保在正確的時間和條件下將系統(tǒng)恢復(fù)到初始狀態(tài)。復(fù)位電路的設(shè)計和應(yīng)用對于保障電子系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。 一、復(fù)位
    的頭像 發(fā)表于 10-18 16:44 ?1879次閱讀

    STM32復(fù)位電路用復(fù)位芯片和阻容復(fù)位電路區(qū)別

    STM32是一款廣泛使用的微控制器,其復(fù)位電路設(shè)計對于系統(tǒng)的穩(wěn)定性和可靠性至關(guān)重要。本文將詳細介紹STM32復(fù)位電路中使用復(fù)位芯片和阻容復(fù)位電路的區(qū)別,以及各自的優(yōu)缺點和應(yīng)用場景。 引
    的頭像 發(fā)表于 08-06 10:26 ?1497次閱讀

    FPGA同步復(fù)位異步復(fù)位

    FPGA(Field-Programmable Gate Array,現(xiàn)場可編程門陣列)中的復(fù)位操作是設(shè)計過程中不可或缺的一環(huán),它負責(zé)將電路恢復(fù)到初始狀態(tài),以確保系統(tǒng)的正確啟動和穩(wěn)定運行。在FPGA設(shè)計中,復(fù)位方式主要分為同步
    的頭像 發(fā)表于 07-17 11:12 ?1574次閱讀

    MCU復(fù)位RAM會保持嗎,如何實現(xiàn)復(fù)位時變量數(shù)據(jù)保持

    在使用MCU時,通常大家默認MCU復(fù)位時RAM會被復(fù)位清零,那實際MCU復(fù)位時RAM是什么狀態(tài)?如何讓mcu復(fù)位時RAM保持不變呢?
    的頭像 發(fā)表于 03-01 09:32 ?2505次閱讀
    MCU<b class='flag-5'>復(fù)位</b>RAM會保持嗎,如何實現(xiàn)<b class='flag-5'>復(fù)位</b>時變量數(shù)據(jù)保持

    ABB變頻器怎么復(fù)位 | 復(fù)位時可能會出現(xiàn)哪些問題?

    ABB變頻器是一種應(yīng)用廣泛的工業(yè)自動化設(shè)備,廣泛應(yīng)用于電機控制、電力傳輸、風(fēng)機控制和制造等領(lǐng)域。然而,在使用ABB變頻器的過程中,有時候我們可能需要對設(shè)備進行復(fù)位,以達到重新設(shè)置和調(diào)整的目的。那么
    的頭像 發(fā)表于 02-21 10:50 ?7914次閱讀
    ABB變頻器怎么<b class='flag-5'>復(fù)位</b> | <b class='flag-5'>復(fù)位</b>時可能會出現(xiàn)哪些問題?

    什么是復(fù)位同步電路 reset synchronizer?

    復(fù)位同步電路 reset synchronizer 其實只在復(fù)位信號 release 的時候派上用場。復(fù)位結(jié)束后,這個電路其實就沒用了。 但這個電路的時鐘還在 switch,這個電路還
    的頭像 發(fā)表于 02-19 09:21 ?1437次閱讀
    什么是<b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b>電路 reset synchronizer?

    如何排查GD32 MCU復(fù)位是由哪個復(fù)位源導(dǎo)致的?

    上期為大家講解了GD32 MCU復(fù)位包括電源復(fù)位和系統(tǒng)復(fù)位,其中系統(tǒng)復(fù)位還包括獨立看門狗復(fù)位、內(nèi)核軟復(fù)位
    的頭像 發(fā)表于 02-03 09:46 ?1742次閱讀
    如何排查GD32 MCU<b class='flag-5'>復(fù)位</b>是由哪個<b class='flag-5'>復(fù)位</b>源導(dǎo)致的?

    GD32 MCU電源復(fù)位和系統(tǒng)復(fù)位有什么區(qū)別

    GD32 MCU的復(fù)位分為電源復(fù)位和系統(tǒng)復(fù)位,電源復(fù)位又稱為冷復(fù)位,相較于系統(tǒng)復(fù)位,上電
    的頭像 發(fā)表于 02-02 09:37 ?1510次閱讀
    GD32 MCU電源<b class='flag-5'>復(fù)位</b>和系統(tǒng)<b class='flag-5'>復(fù)位</b>有什么區(qū)別

    異步復(fù)位異步釋放會有什么問題?FPGA異步復(fù)位為什么要同步釋放呢?

    一般來說,復(fù)位信號有效后會保持比較長一段時間,確保 register 被復(fù)位完成。但是復(fù)位信號釋放時,因為其和時鐘是異步的關(guān)系,我們不知道它會在什么時刻被釋放。
    的頭像 發(fā)表于 01-24 09:32 ?1737次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>異步</b>釋放會有什么問題?FPGA<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>為什么要<b class='flag-5'>同步</b>釋放呢?

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣呢?

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣呢? 同步復(fù)位異步
    的頭像 發(fā)表于 01-16 16:25 ?1768次閱讀

    復(fù)位電路的復(fù)位條件和復(fù)位過程

    電源監(jiān)測芯片復(fù)位電路:這是最常見的復(fù)位電路類型,使用專用的電源監(jiān)測芯片來監(jiān)測電源電壓,并在電壓低于或高于預(yù)設(shè)閾值時觸發(fā)復(fù)位信號。
    的頭像 發(fā)表于 01-16 16:04 ?1253次閱讀

    stm32復(fù)位電容容值

    STM32是意法半導(dǎo)體(STMicroelectronics)推出的一系列32位微控制器,具有低功耗、高性能和豐富的外設(shè)功能。在STM32微控制器中,復(fù)位電容是電路中的一個重要組成部分,用于保持系
    的頭像 發(fā)表于 01-05 17:39 ?1807次閱讀

    ht7044a復(fù)位原理

    HT7044A 是一種復(fù)位電路芯片,常用于電子設(shè)備中實現(xiàn)對系統(tǒng)的復(fù)位功能。復(fù)位是一項重要的功能,用于將整個系統(tǒng)恢復(fù)到初始狀態(tài),以確保系統(tǒng)在啟動和運行時的可靠性和穩(wěn)定性。在本文中,我們將詳細介紹
    的頭像 發(fā)表于 01-04 11:24 ?1643次閱讀