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

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

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

為什么需要復(fù)位電路?

jf_78858299 ? 來源:IC解惑君 ? 作者:木飛 ? 2023-05-25 15:37 ? 次閱讀

前言:

最近看到群里面有些萌新在進行討論 數(shù)字電路中的復(fù)位邏輯 ,所以專門寫一篇討論復(fù)位的文章,希望能幫助大家理解 復(fù)位 。

引言: [為什么需要 復(fù)位電路 ]

IC設(shè)計中,把復(fù)位和時鐘電路稱為最重要的兩個電路一點也不為過。前者復(fù)位電路IC設(shè)計的電路 引導(dǎo)到一個已知的狀態(tài) ,后者時鐘電路給IC設(shè)計的 電路提供澎湃的心跳動力 。同時,這兩者主要作用于 電路中的時序元件 。對于 時序元件 ,不可避免地會有一些信號時間上額外的要求。

正文:

復(fù)位電路的作用

(1)在仿真時:使仿真的電路進入規(guī)定的 初始化狀態(tài)或者其他預(yù)知的狀態(tài) ,基于此狀態(tài)下,電路進行狀態(tài)變換。如果 仿真中時序元件沒有復(fù)位電路 ,從波形圖****上只能看到時序單元周圍邏輯都是X標紅的狀態(tài)。

(2)在IC設(shè)計中:復(fù)位信號可以讓設(shè)計的硬件電路進入一個 穩(wěn)定且狀態(tài)確定的狀態(tài) ,避免因為上電后電路進入到隨機的狀態(tài)而硬件死機。如果示波器捕捉內(nèi)部時序單元的信號狀態(tài),信號為 高低電平之一 ,只是高低電平的信號可能不符合設(shè)計的預(yù)期。

PS:對于仿真時候的信號未知X狀態(tài)IC設(shè)計中的高低電平 。可以得出結(jié)論:在Verilog語法中,用仿真****X狀態(tài)表示**物理時序單元****電路當前狀態(tài)未知,**信號可能為高或低電平。

PS:由上,是否電路中所有的單元都需要復(fù)位信號?

答:不是,首先組合邏輯電路是不需要復(fù)位信號的。其次不需要立刻進入明確狀態(tài)的電路:數(shù)據(jù)流水線寄存器、數(shù)據(jù)移位寄存器等也不需要復(fù)位信號。

復(fù)位電路的分類

對于電路中的時序元件,把復(fù)位信號受到時鐘的控制復(fù)位信號不受時鐘的控制兩種電路分別稱為同步復(fù)位電路異步復(fù)位電路 。如下圖:

圖片

同步復(fù)位

在同步復(fù)位的電路中,只有當時鐘到來時才會把復(fù)位或者數(shù)據(jù)信息傳輸?shù)郊拇嫫鲀?nèi)部,影響寄存器內(nèi)部的狀態(tài)變換。如上圖所示,在同步復(fù)位電路中,復(fù)位信號本質(zhì)上其實就是一組 數(shù)據(jù)信號 。復(fù)位和數(shù)據(jù)信號都需要在時鐘的驅(qū)動下進行傳輸。所以此處的同步復(fù)位電路默認就有了 優(yōu)先級(時鐘>復(fù)位>數(shù)據(jù))

同步復(fù)位的****優(yōu)點

(1)在同步復(fù)位電路下,復(fù)位和數(shù)據(jù)信號都受到時鐘信號的控制,所以同步復(fù)位一般可以確保電路是一個同步電路 。

(2)在ASIC設(shè)計中,同步電路一般可以綜合為更小的同步觸發(fā)器(因為觸發(fā)器沒有包含復(fù)位邏輯),但是在FPGA設(shè)計中并不如此,一般FPGA的時序元件為 帶異步復(fù)位的觸發(fā)器(也有同步觸發(fā)器,視廠家而定) 。如果在FPGA設(shè)計中使用同步復(fù)位,其消耗的資源相對較多。

(3)由于觸發(fā)器的跳轉(zhuǎn)只在 時鐘的邊沿 ,所以觸發(fā)器可以在 一定程度上過濾電路毛刺 。進而如果復(fù)位由電路內(nèi)部的邏輯控制 ,在這種情況下可以在設(shè)計中使用同步復(fù)位:通過可以在一定程度上過濾電路毛刺的特性, 過濾掉內(nèi)部電路邏輯產(chǎn)生的毛刺,使設(shè)計更魯棒 。

同步復(fù)位的****缺點

(1)同步復(fù)位需要 較長的保持復(fù)位狀態(tài)時間(最小也要大于時鐘周期) ,保證同步復(fù)位信號可以到達每一個寄存器并且要在有效時鐘沿之前到達(在真正設(shè)計使用的時候還需要考慮 時鐘偏斜組合邏輯延時、復(fù)位延時等,即: 同步復(fù)位信號時長> 時鐘周期 + 時鐘偏斜 + 組合邏輯延時 )。

(2)在低功耗設(shè)計中,同步復(fù)位一般 不能用于門控時鐘控制的電路 。因為同步復(fù)位電路中,主要 靠時鐘驅(qū)動復(fù)位和數(shù)據(jù) 。當復(fù)位發(fā)出時,有可能 時序電路此時并沒有時鐘驅(qū)動,那么此時的復(fù)位就不能完成 。

圖片

異步復(fù)位:

擁有異步復(fù)位的寄存器在設(shè)計的時候就已經(jīng)多了一個復(fù)位引腳。通過觸發(fā)該引腳的狀態(tài)可以在 任何時候進行異步復(fù)位電路中寄存器 。此時異步復(fù)位電路的默認優(yōu)先級為:( 復(fù)位> 時鐘> 數(shù)據(jù) )(如 上上圖 )。

異步復(fù)位的優(yōu)點:

(1)異步復(fù)位的復(fù)位邏輯和數(shù)據(jù) 邏輯沒有任何關(guān)系 ,所以相比同步復(fù)位,能夠使數(shù)據(jù)路徑更好地收斂。(上上圖對比)

(2)不用在時鐘的控制下進行復(fù)位,所以對于剛才所提到的低功耗設(shè)計中,可以達到無時鐘復(fù)位的效果[注意:寄存器復(fù)位后的正常狀態(tài)恢復(fù)需要時鐘參與]。

異步復(fù)位的缺點

(1)因為 異步復(fù)位****不受時鐘的控制 ,所以當電路復(fù)位引腳有毛刺的時候,會引起 電路的異常復(fù)位 。

(2)在異步復(fù)位的時候,如果 釋放復(fù)位信號在時鐘有效邊沿周圍 。那么 可能會引起時序單元的輸出出現(xiàn)亞穩(wěn)態(tài),導(dǎo)致電路亞穩(wěn)態(tài)傳播 。如下圖:

圖片

如圖所示:

復(fù)位信號在時鐘有效沿之Recovery Time時間內(nèi)釋放可能會 引起觸發(fā)器輸出亞穩(wěn)態(tài) 。

復(fù)位信號在時鐘有效沿之Removal ****Time時間內(nèi)釋放也可能會 引起觸發(fā)器輸出亞穩(wěn)態(tài) 。

對比set up time & hold time和此處的Recovery time & ** Removal time ,可以發(fā)現(xiàn)對于觸發(fā)器來說, 輸入信號 (Data 和 RST_n)都需要 對于時鐘信號沿保持穩(wěn)定的一個時間窗口 ,否則 觸發(fā)器可能會導(dǎo)致亞穩(wěn)態(tài)的輸出 。為了避免觸發(fā)器的亞穩(wěn)態(tài),就需要保證不要在觸發(fā)器**的這 幾個時間窗內(nèi)信號有變化 。

結(jié)合同步復(fù)位和異步復(fù)位的優(yōu)點可以得到:

異步復(fù)位同步釋放電路 :如下圖

圖片

RST_n信號 同時復(fù)位這兩個觸發(fā)器 ,這一對觸發(fā)器的輸出信號****傳輸并驅(qū)動電路中的其他時序元件完成復(fù)位,最后使整個相連接的設(shè)計進行復(fù)位。

很明顯可以看出這兩個觸發(fā)器就是所謂的 同步器邏輯。 在進行數(shù)據(jù)跨時鐘處理的時候可以通過該同步器邏輯將一個時鐘域的信號傳輸?shù)搅硪粋€時鐘域。

如上圖所示:

當復(fù)位信號被撤銷時:RST_n [**0->1 ] ,此時數(shù)據(jù)VCC將在時鐘的控制下進入 主觸發(fā)器 。如果此時復(fù)位信號被撤銷時候恰好碰到時鐘的有效沿引起主觸發(fā)器** 的亞穩(wěn)態(tài) 。但是此時從觸發(fā)器在時鐘控制下,輸入的是**主觸發(fā)器輸出的復(fù)位穩(wěn)定值**。

如下圖:雖然主觸發(fā)器在T2時刻違背了復(fù)位時間窗口,輸出了Q1亞穩(wěn)態(tài)的搖擺電平 。但是從觸發(fā)器此時的數(shù)據(jù)輸入接收的還是 主觸發(fā)器輸出的Q1穩(wěn)態(tài)的復(fù)位狀態(tài)0 。所以從觸發(fā)器Q2的輸出是 穩(wěn)定的復(fù)位狀態(tài)0 。在T3時刻****主觸發(fā)器已經(jīng) 從亞穩(wěn)態(tài)狀態(tài)恢復(fù) ,輸出的是穩(wěn)定的工作狀態(tài)電平了( Q1=1 )。T3****時刻從觸發(fā)器采樣的是穩(wěn)定的工作狀態(tài)電平,輸出也是穩(wěn)定的工作狀態(tài)電平,復(fù)位完成。

圖片

PS:有同學(xué)可能會問,RST_n既然對主觸發(fā)器****違反 復(fù)位時間窗口 ,對從觸發(fā)器來說,也一樣違反了時間窗口。那從觸發(fā)器為什么就沒有進入亞穩(wěn)態(tài)呢?

:對于從觸發(fā)器來說,RST_n跳變在其復(fù)位時鐘窗口內(nèi),所以違反了 從觸發(fā)器的復(fù)位時間窗口 ,但是從上圖可以觀察到, 從觸發(fā)器在T2時刻時鐘沿的輸入為Q1=0 ,在T1時刻時鐘沿的輸出為Q2=0,對于從觸發(fā)器來說,復(fù)位前的狀態(tài)和復(fù)位后的狀態(tài)是一樣的。寄存器內(nèi)部的鎖存器不需要跳變來更新自己的狀態(tài)。所以也就不會因為內(nèi)部鎖存器的電平跳變從而導(dǎo)致亞穩(wěn)態(tài)的發(fā)生。

一般來說, 完整的一顆SOC芯片內(nèi)部不止有一個時鐘 ,一般會有 多個時鐘 。所以此時 對每一個時鐘域下的Reset_n信號都有一套異步復(fù)位同步釋放邏輯 。來保證在自己的時鐘域下,復(fù)位釋放時鐘具有同步的關(guān)系,來驅(qū)動該時鐘域下相關(guān)的邏輯狀態(tài)的變換等操作。如下圖:

圖片

結(jié)論:

為了避免在復(fù)位釋放的時候引起電路亞穩(wěn)態(tài),通常采用 異步復(fù)位同步釋放的電路有效的復(fù)位信號可以 快速復(fù)位相關(guān)聯(lián)的邏輯且不用等待時鐘的驅(qū)動 。同時復(fù)位信號經(jīng)過異步復(fù)位同步釋放的電路之后,復(fù)位信號受到時鐘信號的控制(復(fù)位信號釋放不會在時鐘沿的任意點),有效避免了因異步復(fù)位信號的移除而引起的電路亞穩(wěn)態(tài)情況的出現(xiàn)。

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

    關(guān)注

    37

    文章

    1290

    瀏覽量

    103695
  • 元件
    +關(guān)注

    關(guān)注

    4

    文章

    872

    瀏覽量

    36628
  • 復(fù)位電路
    +關(guān)注

    關(guān)注

    13

    文章

    320

    瀏覽量

    44503
  • 時鐘電路
    +關(guān)注

    關(guān)注

    10

    文章

    236

    瀏覽量

    50675
收藏 人收藏

    評論

    相關(guān)推薦

    復(fù)位電路的基礎(chǔ)知識

    復(fù)位信號在數(shù)字電路里面的重要性僅次于時鐘信號。 對電路復(fù)位往往是指對觸發(fā)器的復(fù)位,也就是說電路
    發(fā)表于 04-21 09:16 ?705次閱讀
    <b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>的基礎(chǔ)知識

    為什么需要復(fù)位樹?復(fù)位信號用什么電路產(chǎn)生?

    復(fù)位信號在數(shù)字電路里面的重要性僅次于時鐘信號。對一個芯片來說,復(fù)位的主要目的是使芯片電路進入一個已知的,確定的狀態(tài)。
    的頭像 發(fā)表于 08-27 10:18 ?2085次閱讀
    為什么<b class='flag-5'>需要</b><b class='flag-5'>復(fù)位</b>樹?<b class='flag-5'>復(fù)位</b>信號用什么<b class='flag-5'>電路</b>產(chǎn)生?

    復(fù)位電路基礎(chǔ)知識:同步復(fù)位電路和異步復(fù)位電路

    復(fù)位信號在數(shù)字電路里面的重要性僅次于時鐘信號。對電路復(fù)位往往是指對觸發(fā)器的復(fù)位,也就是說電路
    發(fā)表于 09-13 16:26 ?1444次閱讀
    <b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>基礎(chǔ)知識:同步<b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>和異步<b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>

    為什么需要復(fù)位電路?漫談復(fù)位reset

    在IC設(shè)計中,把復(fù)位和時鐘電路稱為最重要的兩個電路一點也不為過。前者復(fù)位電路把IC設(shè)計的電路引導(dǎo)
    的頭像 發(fā)表于 01-19 16:41 ?2066次閱讀
    為什么<b class='flag-5'>需要</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>?漫談<b class='flag-5'>復(fù)位</b>reset

    什么是單片機的上電復(fù)位

    過程要幾個微秒或幾個毫秒,爬坡時單片機不能正常工作,需要復(fù)位電路延時到電壓穩(wěn)定后才開始正常執(zhí)行程序,這就叫上電復(fù)位。單片機系統(tǒng)單片機高電平復(fù)位
    發(fā)表于 11-10 06:41

    RC復(fù)位電路復(fù)位時間的計算

    。因此在搭建 RC 電路的時候需要計算 RC 電路中的電阻和電容的取值。此復(fù)位電路是針對低電平有效復(fù)位
    發(fā)表于 11-28 11:35 ?8.3w次閱讀
    RC<b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b><b class='flag-5'>復(fù)位</b>時間的計算

    深度了解復(fù)位電路設(shè)計

    為什么需要復(fù)位電路數(shù)字電路只有0和1兩種狀態(tài),在電路剛上電或電路工作不穩(wěn)定時,數(shù)字電路的輸出是不
    的頭像 發(fā)表于 12-19 13:00 ?1.1w次閱讀
    深度了解<b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>設(shè)計

    簡述復(fù)位電路概述以及方式和目的

    一、復(fù)位電路概述 復(fù)位信號在數(shù)字電路里面的重要性僅次于時鐘信號。對電路復(fù)位往往是指對觸發(fā)器的
    的頭像 發(fā)表于 06-28 09:49 ?6669次閱讀

    復(fù)位電路的作用是什么

    。 單片機復(fù)位電路的類型有、微分型復(fù)位電路、積分型復(fù)位電路、比較器型
    的頭像 發(fā)表于 08-07 10:53 ?2.9w次閱讀

    單片機基礎(chǔ)入門:什么是上電復(fù)位復(fù)位電路怎么設(shè)計

    過程要幾個微秒或幾個毫秒,爬坡時單片機不能正常工作,需要復(fù)位電路延時到電壓穩(wěn)定后才開始正常執(zhí)行程序,這就叫上電復(fù)位。單片機系統(tǒng)單片機高電平復(fù)位
    發(fā)表于 11-05 13:06 ?13次下載
    單片機基礎(chǔ)入門:什么是上電<b class='flag-5'>復(fù)位</b>,<b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>怎么設(shè)計

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

    的是,復(fù)位電路啟動的手段有所不同。一是在給電路通電時馬上進行復(fù)位操作;二是在必要時可以由手動操作;三是根據(jù)程序或者電路運行的
    發(fā)表于 11-06 20:21 ?30次下載
    <b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>的設(shè)計

    復(fù)位電路

    單片機復(fù)位電路系統(tǒng)開始運行和重新啟動都是依靠復(fù)位電路實現(xiàn)的。以MCS-51為例,復(fù)位需要在RS
    發(fā)表于 01-17 12:34 ?23次下載
    <b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>

    復(fù)位電路如何回到初始化的狀態(tài)

    單片機最小系統(tǒng)中復(fù)位電路屬于必不可少的部分。數(shù)字電路中只有高低電平兩個狀態(tài),電路剛上電或者電路不能正常工作時,
    的頭像 發(fā)表于 06-22 09:02 ?1221次閱讀
    <b class='flag-5'>復(fù)位</b><b class='flag-5'>電路</b>如何回到初始化的狀態(tài)

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

    系統(tǒng)中,復(fù)位電路是保證系統(tǒng)正常工作的重要部分。當系統(tǒng)出現(xiàn)異?;?b class='flag-5'>需要重新啟動時,復(fù)位電路能夠迅速將系統(tǒng)恢復(fù)到初始狀態(tài)。STM32微控制器的
    的頭像 發(fā)表于 08-06 10:26 ?965次閱讀

    復(fù)位電路的電容多大的 復(fù)位電路設(shè)計類型有哪幾種

    復(fù)位電路是電子系統(tǒng)中的一個關(guān)鍵部分,它確保系統(tǒng)在啟動或發(fā)生故障時能夠正確地初始化。復(fù)位電路的設(shè)計取決于多種因素,包括系統(tǒng)的復(fù)雜性、所需的復(fù)位
    的頭像 發(fā)表于 10-21 10:24 ?143次閱讀