文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2017.01.008
中文引用格式: 賴曉敏,,泮朋軍,,羅喚霖,等. 基于FPGA的TMR電路跨時(shí)鐘域同步技術(shù)[J].電子技術(shù)應(yīng)用,,2017,,43(1):32-34,38.
英文引用格式: Lai Xiaomin,,Pan Pengjun,,Luo Huanlin,et al. Synchronization technology for TMR circuits across clock domains based on FPGA[J].Application of Electronic Technique,,2017,,43(1):32-34,38.
0 引言
基于SRAM型的現(xiàn)場(chǎng)可編程門陣列(FPGA)目前在衛(wèi)星電子系統(tǒng)中被大量應(yīng)用,。但由于SRAM型FPGA工藝特點(diǎn),,其功能的實(shí)現(xiàn)都是受內(nèi)部靜態(tài)RAM單元控制的,因此容易受到空間單粒子翻轉(zhuǎn)效應(yīng)(SEU)的影響,。三模冗余(TMR)技術(shù)能有效降低FPGA電路的單粒子翻轉(zhuǎn)效應(yīng),。
如果對(duì)三重傳輸信號(hào)經(jīng)過(guò)異步時(shí)鐘邊界之后的采樣信號(hào)不作處理,則還有可能產(chǎn)生問(wèn)題,。本文針對(duì)在應(yīng)用電路出現(xiàn)以下現(xiàn)象:亞穩(wěn)態(tài),、異步采樣不確定性和SEU,進(jìn)行了量化和分析,,同時(shí)對(duì)三重時(shí)鐘域異步采樣的不確定性的影響進(jìn)行建模,,最后對(duì)同步器進(jìn)行了優(yōu)化設(shè)計(jì)。
1 信號(hào)復(fù)制和采樣的不確定性
在TMR電路中,,除表決電路外,,每個(gè)模塊和信號(hào)都是三重復(fù)制,這有可能會(huì)帶來(lái)異步采樣不確定的問(wèn)題,。3個(gè)相同的信號(hào)在異步采樣模式下,,可能會(huì)在接收時(shí)鐘域上不同的時(shí)鐘周期到達(dá)。圖1為三重信號(hào)經(jīng)過(guò)不同時(shí)鐘域的傳輸,。在理想的情況下,,接收到的信號(hào)Sigrcv_A、Sigrcv_B和Sigrcv_C在接收端時(shí)鐘域?qū)⑹且恢碌?。然而,,在非理想的情況下,假設(shè)信號(hào)在時(shí)鐘上升沿采樣,,如圖2所示,,由于存在布線延遲差異,采樣后的信號(hào)可能無(wú)法保持一致[1],。
為了估算三重信號(hào)傳輸?shù)目煽啃?,本文將圖1簡(jiǎn)化為圖3所示的電路,。
源信號(hào)Sig_s經(jīng)三重復(fù)制,從Clks時(shí)鐘域被傳送到時(shí)鐘域Clkr,,在傳輸網(wǎng)絡(luò)中的延遲時(shí)間分別為TdelayA,、TdelayB、TdelayC(假設(shè)觸發(fā)器的建立和保持時(shí)間為0 ns),。圖4為采樣不確定時(shí)的時(shí)序波形,。
由于三組信號(hào)Sig_A、Sig_B,、Sig_C的傳輸延時(shí)不一致,,因此到達(dá)時(shí)間也不一致。Sig_A,、Sig_B在Clkr時(shí)鐘上升沿前到達(dá),,而Sig_C由于延遲較大,落后于Clkr時(shí)鐘上升沿,,因此在這個(gè)Clkr時(shí)鐘周期內(nèi)無(wú)法被采樣,,由此產(chǎn)生了采樣的不確定性風(fēng)險(xiǎn)。
若Clkr時(shí)鐘上升沿落在最大延遲和最小延遲的窗口(即判決窗口Tskew=TdelayC-TdelayA)之外,,那么采樣不確定性將不會(huì)發(fā)生,。若接收端的時(shí)鐘比發(fā)送端的時(shí)鐘要慢,Clkr上升沿落在Clks周期外的概率是:p1=Fr/Fs,;反之,,Clkr上升沿落在Clks周期內(nèi)的概率為在判決窗口Tskew除以發(fā)送端的時(shí)鐘周期p2=Tskew/Ts。因此,,未經(jīng)同步的三組脈沖信號(hào)發(fā)送到接收端的概率為兩組概率的乘積:P1=p1×p2=(Fr/Fs)×(Tskew/Ts)=Fr×Tskew,。由于在Clks周期內(nèi)輸入信號(hào)變化的概率可表示為Fd/Fs。因此,,3個(gè)觸發(fā)器的輸出不在同一時(shí)鐘周期內(nèi)的概率可表示為:P=P1×(Fd/Fs)=Tskew×(Fr×Fd/Fs),。
因此,,降低概率P便降低了TMR判決出錯(cuò)的概率,。可以看出,,減小判決窗口Tskew,、降低發(fā)送端信號(hào)變化與時(shí)鐘頻率比值Fd/Fs以及降低接收端時(shí)鐘頻率Fr均可以達(dá)到類似效果。
2 采樣不確定性及信號(hào)偏差的效應(yīng)
采樣電路中接收的三重信號(hào)脈沖寬度足夠長(zhǎng)時(shí),,時(shí)序圖如圖5所示,。
雖然因互連延遲,3個(gè)相同的信號(hào)在接收端的時(shí)鐘域里并不完全一樣,。如Sig_A和Sig_B在第一個(gè)時(shí)鐘周期里被采樣成‘1’,,Sig_C被采樣成‘0’,。由于信號(hào)寬度足夠長(zhǎng),在后兩個(gè)時(shí)鐘周期內(nèi)三組信號(hào)可以被正確的采樣,,不影響后續(xù)處理,。因此,如果源信號(hào)具有足夠長(zhǎng)的脈沖寬度,,且判決器被正確放置在源信號(hào)的有效周期內(nèi),,源信號(hào)的分組偏差不會(huì)導(dǎo)致后端信號(hào)的處理錯(cuò)誤。
信號(hào)脈沖寬度不滿足要求時(shí),,信號(hào)偏差將影響采樣結(jié)果,。三組源信號(hào)的脈沖寬度是與接收端的時(shí)鐘寬度Trcv一致,在沒(méi)有信號(hào)偏差的情況不會(huì)產(chǎn)生錯(cuò)誤,,如圖6所示,。
一旦某一組信號(hào)存在偏差,在接收端的采樣將會(huì)出現(xiàn)偏差,,如圖7所示,,而這種偏差具有一定的脆弱性,用判決器進(jìn)行糾正時(shí)有可能出現(xiàn)誤判,。如圖8所示,,其上半部分為有信號(hào)偏差但沒(méi)有SEU的情況,盡管情形2和情形3會(huì)導(dǎo)致接收端接收的信號(hào)不一致,,但判決器可以矯正這種偏差,;在下半部分圖中,Sig_A受到SEU的影響變?yōu)殚L(zhǎng)‘0’,,在情形1和情形3中沒(méi)有發(fā)生錯(cuò)誤,,因?yàn)镾ig_B、Sig_C 沒(méi)有采樣不一致的情況發(fā)生,,而情形2由于SEU和Sig_B,、Sig_C存在偏差,兩種因素同時(shí)作用,,從而導(dǎo)致判決錯(cuò)誤,。
為了解決圖8中情形2的問(wèn)題,源信號(hào)脈沖寬度須滿足Tpw≥Tskew+Trcv,,如圖9所示,。這種情況下,即使3個(gè)發(fā)送信號(hào)之間存在延遲,,均可以在中間一個(gè)時(shí)鐘周期被正確地采樣,,保證判決器不會(huì)發(fā)生錯(cuò)誤。
3 解決方案
為了解決圖8中情形2中出現(xiàn)的錯(cuò)誤,,通用的解決思路如下:首先盡量減小3組源信號(hào)的不同步輸出延時(shí),,使Tskew盡量小,,可通過(guò)FPGA的布線約束進(jìn)行自動(dòng)布線或手動(dòng)布線來(lái)達(dá)到理想效果;其次,,在接收端的時(shí)鐘域中,,對(duì)3組源信號(hào)進(jìn)行同步處理,保證發(fā)送信號(hào)在接收端時(shí)鐘Clkr的一個(gè)時(shí)鐘周期內(nèi)被同時(shí)采樣,;而后通過(guò)判決器,,在出現(xiàn)SEU時(shí)對(duì)同步器輸出信號(hào)進(jìn)行表決,如圖10所示,。
3.1 長(zhǎng)脈寬的源信號(hào)
由圖8可以看出,,當(dāng)源信號(hào)脈沖寬度Tpw≥Tskew+Trcv時(shí),即使發(fā)生信號(hào)偏差也可以被接收端正確采樣,。在此情況下,,同步器可以采用最經(jīng)典的兩級(jí)觸發(fā)電路。整個(gè)系統(tǒng)的設(shè)計(jì)圖如圖11所示,。其中判決器的輸出信號(hào)寬度可能是一個(gè)時(shí)鐘周期,,也可能維持多個(gè)時(shí)鐘周期。
3.2 短脈寬的源信號(hào)
當(dāng)源信號(hào)脈沖寬度Tpw<Tskew+Trcv時(shí),,須對(duì)源信號(hào)脈沖寬度進(jìn)行擴(kuò)展,,以便判決器能正確采樣。因此,,同步器電路須進(jìn)行適應(yīng)性修改,,示例電路如圖12所示,其時(shí)序波形如圖13所示,。
4 結(jié)束語(yǔ)
本文討論了TMR電路在多時(shí)鐘域系統(tǒng)可能受到的影響(亞穩(wěn)態(tài),、異步采樣錯(cuò)誤和單粒子翻轉(zhuǎn)),對(duì)這3種影響的綜合效應(yīng)進(jìn)行了量化分析,。通過(guò)降低復(fù)制輸入信號(hào)的不同步延時(shí),,以及降低接收端時(shí)鐘頻率,可以有效減小判決出錯(cuò)的概率,。針對(duì)存在SEU及信號(hào)偏差的系統(tǒng),,對(duì)于不同脈沖長(zhǎng)度的源信號(hào),提出了兩種同步器設(shè)計(jì)方案,,較好地解決三模冗余情況下跨時(shí)鐘域信號(hào)的問(wèn)題,。此設(shè)計(jì)在航天,、航空數(shù)據(jù)處理系統(tǒng)以及重要的數(shù)字冗余處理系統(tǒng)中具有較為廣泛的應(yīng)用背景與現(xiàn)實(shí)意義,,可用于數(shù)據(jù)處理器、編碼器等數(shù)字基帶單元的FPGA芯片應(yīng)用中,。
參考文獻(xiàn)
[1] KAPSCHITZ T,,NEWTON I R.Verifying synchronization in multi-clock domain SoC[Z].HDL,Inc.2004.
作者信息:
賴曉敏,,泮朋軍,羅喚霖,,孫 聰,,朱新忠
(上海航天電子技術(shù)研究所,上海201109)