
【作者簡介】Dr. Roy 復睿微 IC后端工程師,南開大學與韓國首爾國立大學聯合培養博士生。博士期間發表高水平學術期刊論文多篇,其中一作一區封面文章2篇;授權發明專利5項。同時,在先進工藝大芯片的靜態時序分析、芯片設計流程提效優化、SPICE仿真等領域擁有豐富的工作經驗。
【摘要】汽車電動化、智能化、物聯化對汽車電子的安全性提出了更高的要求。為了避免不可靠數據的產生與傳播而造成芯片功能安全風險,設計者可以采用同步器處理跨時鐘域信號交互的問題。這需要設計者對亞穩態的產生與恢復、同步器的原理與表征方式有更加全面地認識。引言
在人工智能、5G、先進半導體等技術引領下,汽車電動化、智能化、物聯化發展已成必然趨勢。從需求端來看,隨著消費者對安全舒適、經濟穩定、娛樂交互等方面的需求提高,消費者對汽車產品智能化的需求顯著增加,驅動汽車不斷朝電動化、智能化和物聯化方向發展,汽車電子在汽車整車中的占比越來越高。然而,與消費電子相比,汽車電子關系到駕駛員和乘客的生命安全,同時也面臨更加嚴苛的使用條件。因此,人們對于車載芯片的產品質量要求更為嚴格。芯片作為汽車的核心控制部件之一,為了適配不同的應用場景,通常有許多并行運行的獨立功能或計算單元,而每個單元通常使用自己的局部時鐘。因此,對于大規模的芯片來說內部的時鐘域數量十分龐大。當不同時鐘域之間存在數據交互時,為了降低亞穩態的產生概率,保證可靠的數據傳輸,設計人員通常會采用插入同步器的方式進行時鐘數據的同步處理。這些同步器一般由多個級聯的主從觸發器構成;通過增加觸發器的級數可以大大提高芯片可靠性。但是,同步器會增加數據傳輸的延遲,因此需要在增加的延遲和同步器可靠性之間進行權衡。表征同步器電路以估計其可靠性對于幫助做出此權衡決策非常重要。亞穩態
什么是亞穩態?從字面上看,亞穩態是指一種“不太穩定”的狀態,輕微的擾動就會使系統失去狀態。在數字電路中除了邏輯“1”和“0”狀態以外,還有一個中間狀態--處于“1”和“0”之間未能被正確識別的狀態。該狀態是由于鎖存器的固有反饋設計,輸出可能會漂移一段時間。從設計的角度來看,亞穩態可能會產生以下后果:
1. 如果不穩定的數據被饋送到設計中的其他地方,可能會導致局部高電流,最壞的情況下甚至會燒毀芯片。
2. 不同的扇出錐可能會讀取不同的信號值,并可能導致設計進入未知的功能狀態,從而導致設計出現功能問題。
3. 目標輸出可能會穩定到新值,也可能會返回到舊值。但是,傳播延遲可能會很高,從而導致時序問題。以互耦反相器環為例簡單闡述一下亞穩態的產生與恢復過程。圖1(a)和(b)分別表示互耦反相器的原理圖和晶體管級互連示意圖,第一個反相器的輸入由第二個反相器的輸出驅動,反之亦然。當頂部反相器的輸出(N2)為“1”時,M4和M1導通。同樣,當輸出為 “0” 時,M3 和 M2 導通。如果輸出反相器的電壓保持在 VDD 或 GND 以外的任何值,則 M4 和 M1 會嘗試將輸出拉向 “1”,而另外兩個晶體管將其拉向 “0”。最終設定值(”0“ 或 “1”)取決于其初始值拉力的強弱。但是,如果 M4 和 M1 的初始拉力組合等于 M3 和 M1,則輸出不會移動。在維持平衡之前,輸出可能會保持在該水平一段時間。如圖1(c)所示的輸出曲線,如果系統受到擾動,強行改變了輸出值,即使是很小的值,它也會經過反饋調節,輸出會穩定在 “0” 或 “1”,具體取決于強制改變的方向。這種干擾可能是由于外部因素(例如外部強制電壓)或內部因素(例如串擾)造成的。所以,如果任由它自己脫離亞穩態,脫離亞穩態的時間是未知的。
圖1. 互耦反相器(a)原理圖,(b)晶體管互連圖,(c)輸出曲線數字電路中的所有寄存器都定義了信號時序要求,每個寄存器需要在其輸入端正確捕獲數據并產生輸出信號。為確??煽窟\行,寄存器輸入必須在時鐘邊沿之前穩定至少一段時間(寄存器建立時間,tSU),并在時鐘邊沿之后穩定最短時間(寄存器保持時間,tH)。如果數據信號轉換違反了寄存器的 tSU 或 tH 要求,則寄存器的輸出可能會進入亞穩態,如圖2所示。在亞穩態下,寄存器輸出在高電平狀態和低電平狀態之間的某個值上徘徊一段時間,這意味著輸出到定義的高電平或低電平狀態的轉換延遲會超過時鐘端到輸出端的延遲要求( tCO)。圖2. D觸發器的(a)輸入與(b)輸出,其中信號S2, S3,S4會產出亞穩態輸出[1]同步器與跨時鐘域路徑
在同步系統中,設計者可以通過合理的時序約束文件對芯片進行約束,輸入信號必須始終滿足寄存器時序要求,因此不會出現亞穩態,如圖3(a)所示。但是由于芯片覆蓋場景越來越多,芯片不可避免的會出現跨時鐘域路徑。當信號在不相關或異步時鐘域中的電路之間傳輸時,通常會出現亞穩態問題,如圖3(b)所示。在這種情況下,設計人員無法保證信號滿足 tSU 和 tH 要求,因為信號可以相對于目標時鐘隨時到達。但是,并非每個違反寄存器 tSU 或 tH 的信號轉換都會導致亞穩態輸出。寄存器進入亞穩態的可能性和返回穩定狀態所需的時間取決于用于制造設備的工藝技術和操作條件。在大多數情況下,寄存器將快速返回到穩定的定義狀態。
圖3. 同時鐘域路徑(a)與跨時鐘域路徑(b)電路示意圖
如圖 4所示,在時鐘邊沿對數據信號進行采樣的寄存器可以看作是一個球落在山上。山的兩側代表穩定狀態——在信號轉換后的舊數據值和新數據值——以及山頂代表亞穩態。如果球落在山頂,它可能會在那里無限期地保持平衡,但實際上它會稍微落到山頂的一側并滾下山坡。球離山頂越遠,它越快到達底部的穩定狀態。如果數據信號在時鐘邊沿和最小 tH 之后轉換,則類似于將球掉到山的“舊數據值”一側,并且輸出信號在該時鐘轉換期間保持原始值。當一個寄存器的數據輸入在時鐘邊沿和最小 tSU 之前轉換,并保持在最小 tH 之后,這類似于將球落在山的“新數據值”一側,輸出達到穩定的新狀態足夠快以滿足定義的 tCO 時間。但是,當寄存器的數據輸入違反 tSU 或 tH 時,就類似于將球扔到山上。如果球落在山頂附近,則球到達底部的時間太長,這會增加從時鐘轉換到超過定義的 tCO 的穩定輸出的延遲。
圖4. 小球落在山上類比時鐘與數據的信號相位關系[2]
為了保障芯片正常工作,設計者通常會采用插入一種被稱為同步器的特殊結構來避免亞穩態問題。常用的同步器結構都是多級同步寄存器,允許同步器有足夠的時間振蕩并穩定下來,確保在目標域中獲得穩定的輸出。如圖5展示了一個簡單跨時鐘域路徑,其中DFF2與DFF3組成了兩極同步寄存器用于同步信號B。這種結構在設計中主要用于單比特和多比特控制信號以及單比特數據信號。多位數據信號需要其他類型的同步方案,例如 MUX 再循環、握手和 FIFO。圖5(b)闡述了兩級同步器的同步過程,由于第二級寄存器DFF3的存在,在下一個clock2時鐘上升沿DFF3捕捉到信號B并識別為高電平,輸出信號Sync B,但是在下下個clock2時鐘上升沿時,信號B已從亞穩態電平恢復到穩態電平即正確的低電平,那么經過DFF3再次采樣會輸出和B完全同步的Sync B信號,也就是解決了亞穩態問題[3]。這種額外的同步觸發器提供的額外時間增加了亞穩態解決的可能性,并降低了設計失敗的可能性。與此同時,同步器的成本則是增加了設計延遲。圖5. 兩級同步器電路結構示意圖(a)及其時序圖(b)同步器電路的可靠性
同步器降低了亞穩態事件導致系統故障的可能性;同步器的級數越多,電路的可靠性越高。然而,在任何非純同步的系統中,永遠無法完全避免亞穩態問題,而且同步器的級數也不能無限制的增加。設計者通常使用平均故障間隔時間 (MTBF) 指標來量化由于亞穩態導致系統故障的可能性[4,5]。MTBF值越大,芯片的可靠性就越高。其中fd,fc分別表示數據時鐘域和接收時鐘域的頻率;t0表示寄存器的時間窗口即(tSU+tH);表示信號電平重新恢復位邏輯可識別狀態所需的特征時間常數,可以通過仿真得到。
而對于N級同步寄存器,其MTBF可表示為:

其中第一項即分母項可表示亞穩態的產生階段;第二項即分子項是關于同步器級數、時鐘周期等因子的一個指數函數,可表示亞穩態的恢復階段,表示第i級寄存器的時鐘端到輸出端之間的延遲,表示第i+1級寄存器的建立時間要求,表示金屬網絡上的延遲。MTBF與正相關,與其他有關因子負相關。考慮到最悲觀的場景,各級同步器之間的建立時間檢查剛好滿足預設的裕量要求,即setup slack=0。下表列出了特定場景下的MTBF值與同步器級數之間的關系,不難發現,同步寄存器的級數增加,能大大的提高芯片的可靠性。表1. MTBF與同步器級數對應關系示例

N級同步寄存器的MTBF公式可用于指導芯片設計:
1. 同步器類型的選取方面,需要綜合考慮同步器單元延遲及其時間窗口大??;
2. 同步器級數設計方面,需要根據芯片對MTBF可靠性要求進行預估;
3. 后端物理實現方面,需要預設時序裕量、時序檢查、同步器類型檢查、MTBF計算等操作。結語
芯片的可靠性是一個永恒的話題,亞穩態的產生雖然無法避免,但是設計者可以通過反饋機制、冗余設計等方式保證關鍵功能不出錯。本文介紹了亞穩態的產生過程,并列舉了一種最簡單的減小亞穩態影響的方法,即同步器鏈。除此以外的握手反饋機制、異步FIFO格雷碼等方式可能會消耗更多的資源,需要設計者對各種方式的優劣勢與芯片可靠性需求進行權衡決策。reference
1.? Seo,
Hwa-Jeong, and Ho-Won Kim. "Always Metastable State True Random Number
Generator."?Journal of information and communication convergence
engineering?10.3 (2012): 253-257.
2. Altera
Corporation, “Understanding Metastability in FPGAs-White Paper”:https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/wp/wp-01082-quartus-ii-metastability.pdf
3.???Cummings,
Clifford E. "Clock domain crossing (CDC) design & verification
techniques using SystemVerilog."?SNUG-2008, Boston?(2008).
4.??Golson, Steve. "Synchronization and
Metastability." SNUG Silicon Valley (2014).
5.???Reiher,
Justin James.?Synchronizer analysis and design tool: an application to
automatic differentiation. Diss. University of British Columbia, 2020.關于復睿微
復睿微電子植根于創新驅動的文化,通過技術創新改變人們的生活、工作、學習和娛樂方式。公司成立于2022年1月,目標成為世界領先的智能出行時代的大算力方案提供商,致力于為汽車電子、人工智能、通用計算等領域提供以高性能芯片為基礎的解決方案。目前主要從事汽車智能座艙、ADS/ADAS芯片研發,以領先的芯片設計能力和人工智能算法,通過底層技術賦能,推動汽車產業的創新發展,提升人們的出行體驗。復睿微電子擁有一支業內頂級,能夠全流程覆蓋芯片的研發設計、解決方案、市場銷售、服務支持等完整架構的車規級大算力芯片團隊。團隊集聚全球頂尖數字芯片人才,核心成員擁有在海內外領先的優秀企業的工作經驗。

