·亞穩(wěn)態(tài)問(wèn)題是數(shù)字電路中很重要的問(wèn)題,因?yàn)楝F(xiàn)實(shí)世界是一個(gè)異步的世界,所以亞穩(wěn)態(tài)是無(wú)法避免的,并且亞穩(wěn)態(tài)應(yīng)該也是面試??嫉目键c(diǎn)。
·時(shí)序電路將觸發(fā)器和鎖存器當(dāng)作存儲(chǔ)元件,但是這兩種器件都受制于一個(gè)稱為亞穩(wěn)定性的狀態(tài)。
亞穩(wěn)態(tài)的原因:
如果鎖存器的一個(gè)輸入脈沖太窄,或兩個(gè)輸入同時(shí)有效,或兩個(gè)輸入間隔過(guò)小,那么鎖存器可能進(jìn)入亞穩(wěn)態(tài)。
而如果數(shù)據(jù)在使能輸入沿的周圍不穩(wěn)定,DFF也會(huì)進(jìn)入亞穩(wěn)態(tài)。(這個(gè)不穩(wěn)定就是在Tsu和Th內(nèi)信號(hào)不穩(wěn)定,或者是復(fù)位)
何時(shí)會(huì)發(fā)生亞穩(wěn)態(tài):
因?yàn)榇鎯?chǔ)器件很容易進(jìn)入亞穩(wěn)態(tài),所以設(shè)計(jì)時(shí)應(yīng)該考慮使由于亞穩(wěn)態(tài)導(dǎo)致的系統(tǒng)混亂的信號(hào)影響最小。
許多想要以同步方式執(zhí)行的物理系統(tǒng)都具有異步輸入信號(hào),而異步信號(hào)時(shí)間不可控,所以極易出現(xiàn)亞穩(wěn)態(tài)的情況。
·那么何為異步信號(hào)?
·異步信號(hào)就是不能由時(shí)鐘控制,或者如果它是由不同域中的時(shí)鐘同步的。
亞穩(wěn)態(tài)危害:
因?yàn)閬喎€(wěn)態(tài)時(shí)不確定是0還是1,所以信號(hào)會(huì)在0,1之間震蕩,就會(huì)邏輯混亂。而在復(fù)位電路中產(chǎn)生亞穩(wěn)態(tài)會(huì)使復(fù)位失敗。
一般同步信號(hào)下不會(huì)出現(xiàn)亞穩(wěn)態(tài),亞穩(wěn)態(tài)一般出現(xiàn)在異步信號(hào)和跨時(shí)鐘域的情況下。
1) 在跨時(shí)鐘域的情況下,由于兩端的時(shí)鐘相移未知,所以在源寄存器發(fā)出的信號(hào)可能在任何情況下到目標(biāo)寄存器,無(wú)法確定滿足Tsu和Th的要求。
2) 異步信號(hào)的輸入也是同理,不確定信號(hào)在什么時(shí)候到達(dá)。
異步復(fù)位的亞穩(wěn)態(tài)
恢復(fù)時(shí)間(T recovery):
指的的異步信號(hào)發(fā)生時(shí)離下一個(gè)clk之間的最短時(shí)間,如果異步信號(hào)的有效沿在恢復(fù)時(shí)間內(nèi)就沒(méi)有留給寄存器足夠的時(shí)間去恢復(fù)正常,就會(huì)出現(xiàn)亞穩(wěn)態(tài)。
去除時(shí)間(T removal):
指的是當(dāng)前clk過(guò)去變無(wú)效的時(shí)間,如果異步信號(hào)發(fā)生在去除時(shí)間內(nèi),就會(huì)無(wú)法屏蔽這個(gè)clk,可能這個(gè)時(shí)鐘仍會(huì)起作用,沒(méi)有達(dá)到復(fù)位的效果,這也是亞穩(wěn)態(tài)。
·這些情況都指的是異步信號(hào)能夠直接改變寄存器的情況。
同步復(fù)位的亞穩(wěn)態(tài)
大部分資料表明同步復(fù)位電路不會(huì)發(fā)生亞穩(wěn)態(tài),其實(shí)同步電路也會(huì)發(fā)生,只是幾率小于異步電路。
例如這個(gè)電路,din為1時(shí),如果rst無(wú)效沿在Tsu和Th內(nèi),依舊會(huì)產(chǎn)生亞穩(wěn)態(tài)的情況。
所以說(shuō)有異步信號(hào)的電路都有亞穩(wěn)態(tài)發(fā)生的機(jī)率。
亞穩(wěn)態(tài)發(fā)生概率
·亞穩(wěn)態(tài)發(fā)生情況都是同步信號(hào)不滿足set-time,hold-time或者異步信號(hào)不滿足恢復(fù)和移除時(shí)間。
·概率=(set-time + hold-time)/周期
可以看出隨著頻率變高,亞穩(wěn)態(tài)的概率會(huì)隨之變大。
所以可以通過(guò)減小頻率,或者使用更好工藝的FPGA來(lái)減小Ts和Th。
因?yàn)閷?shí)驗(yàn)表明帶異步輸入的電路故障修復(fù)的平均時(shí)間與退出亞穩(wěn)態(tài)條件所用的時(shí)間成指數(shù)關(guān)系,所以依靠同步裝置創(chuàng)建一個(gè)用于從亞穩(wěn)態(tài)條件恢復(fù)到正常的緩沖器,可以大大減少電路故障可能性。
一直看到資料說(shuō)一級(jí)寄存器產(chǎn)生亞穩(wěn)態(tài)后,兩級(jí)就90%沒(méi)有亞穩(wěn)態(tài),三級(jí)就99%沒(méi)有,一直沒(méi)搞懂為什么,現(xiàn)在仔細(xì)梳理一下。
因?yàn)榈谝患?jí)產(chǎn)生亞穩(wěn)態(tài)后,通過(guò)Tmet(決斷時(shí)間)后會(huì)穩(wěn)定成一個(gè)值,但是也有可能Tmet過(guò)長(zhǎng),產(chǎn)生第二級(jí)的亞穩(wěn)態(tài)。
亞穩(wěn)態(tài)振蕩時(shí)間Tmet
亞穩(wěn)態(tài)震蕩時(shí)間Tmet關(guān)系到后級(jí)寄存器的采集穩(wěn)定問(wèn)題,Tmet影響因素包括:器件的生產(chǎn)工藝、溫度、環(huán)境以及寄存器采集到亞穩(wěn)態(tài)離穩(wěn)定態(tài)的時(shí)刻等。甚至某些特定條件,如干擾、輻射等都會(huì)造成Tmet增長(zhǎng)。
常用的消除亞穩(wěn)態(tài)的三種辦法
1) 對(duì)異步信號(hào)進(jìn)行同步處理
2) 采用FIFO對(duì)跨時(shí)鐘域數(shù)據(jù)通信進(jìn)行緩沖處理
3) 對(duì)復(fù)位電路采用異步復(fù)位,同步釋放處理
編輯:黃飛
?
評(píng)論