文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.172787
中文引用格式: 趙旸,,梁步閣,,楊德貴,等. 多時鐘系統(tǒng)下跨時鐘域同步電路的設計[J].電子技術應用,,2018,,44(2):6-9.
英文引用格式: Zhao Yang,Liang Buge,,Yang Degui,,et al. The design of synchronization circuit for crossing the clock domain in multi clock system[J]. Application of Electronic Technique,2018,,44(2):6-9.
0 引言
隨著時間的推移,,集成電路行業(yè)發(fā)展至今,已有類似如Intel這樣先進的foundry,,提出邁入10 nm制程的規(guī)劃,。高集成度的推行,也使芯片規(guī)模越來越大,,功能越來越復雜,,設計難度越來越高[1]。SOC的內部時鐘的復雜化,,導致跨時鐘域的接口越來越多,。針對這些異步信號的處理,國外的先驅們提出了很多建設性意見,。但一般用到器件較多,,考慮到成本因素,小規(guī)模IC將無法承受,,并且如果輸入脈沖高電平寬度低于最快時鐘周期的話,,一般無法適用,。因此要想很好地解決這個問題,要處理好4個方面工作:一是如何簡化電路,;二是如何適應最小輸入脈寬的問題,;三是解決好亞穩(wěn)態(tài)問題;四是要提高設計可靠性[2],。
1 處理跨時鐘域信號的常用方法
實際使用時,,往往會出現(xiàn)信號在頻率不用的時鐘域傳遞的情況,對于這種情況,,一般用兩種方法處理:結繩法,、伴隨有效控制信號法。當信號從一個時鐘域進入另一個時鐘域的時候,,往往出現(xiàn)亞穩(wěn)態(tài)問題[4],。亞穩(wěn)態(tài)是指觸發(fā)器無法在某個規(guī)定時間段內達到一個可確認的狀態(tài)。當一個觸發(fā)器進入亞穩(wěn)態(tài)時,,既無法預測該單元的輸出電平,,也無法預測何時輸出才能穩(wěn)定在某個正確的電平上。信號同步的目的是防止上一級亞穩(wěn)態(tài)對下一級產(chǎn)生不良影響,,采用信號同步的方法就要設計信號同步器,。信號同步器主要有3種:電平同步器、邊沿檢測同步器,、脈沖同步器[7-8],。但是這些常用方法本身存在缺點和不適應性。在解決實際問題中,,需要根據(jù)具體情況,,來設計具體的方案。
2 跨時鐘域同步電路接口方法組成及工作原理
整個電路包括兩個時鐘域以及一個復位電路,。時鐘域1包含一個帶有異步復位端的同步觸發(fā)器,。此觸發(fā)器帶有異步復位端R和同步時鐘端CK,低電平產(chǎn)生復位,,時鐘上升沿開始鎖存數(shù)據(jù)輸入端D的狀態(tài),。輸出端有正相Q、反相/Q兩種數(shù)據(jù)輸出,。時鐘域2由兩個同樣的觸發(fā)器組成,,跟前面的一樣由異步復位端R和同步時鐘端CK,數(shù)據(jù)輸入端D組成,。輸出端為正相Q,、反相/Q兩種,復位電路由一個與門組成,,接收DFF3的反向/Q輸出的數(shù)據(jù),,電路連接關系如圖1所示,。
3 跨時鐘域同步電路的工作特征
在設計方案中,最大限度地保障了不漏信號,。同時,,時鐘域1的輸入脈沖信號寬度(高電平寬度)可以低于時鐘域1的時鐘單周期寬,電路正常工作,,并且設計中脈沖寬度不再受限于時鐘域1的時鐘頻率。第三,,數(shù)據(jù)鎖存器的數(shù)據(jù)輸出端Q輸出的脈沖信號寬度為時鐘域2的時鐘單周期寬,,從而避免了誤觸發(fā)和多觸發(fā)。
這種方法適用于輸入信號類型為脈沖或電平,,最終得到的結果為脈沖,。如圖2所示。
如圖3所示,當clock1快于clock2時,,圖中Data_in1表示第一個輸入脈沖,,此脈沖由Data_in輸入,脈沖寬度小于clock1的四分之一,,同時,,脈沖寬度小于系統(tǒng)最快時鐘(clock1最快)的四分之一。Data_in1的上升沿到來的瞬間,,Q1輸出高電平“1”,;Data_in1的上升沿之后,第一個clock2的上升沿到來瞬間,,Q2輸出高電平“1”,;第二個clock2的上升沿到來瞬間,Data_out輸出高電平“1”,,與此同時,,nRST生成復位信號,復位DFF1,、DFF2,,使Q1、Q2輸出低,;第三個clock2的上升沿到來瞬間,,由于Q1、Q2早已變成低電平“0”,,此時,,“0”傳遞到Data_out,形成了一個clock2的周期寬度的脈沖Data_out1,。
如圖4所示,,若clock2快于clock1時,,圖中Data_in1表示第一個輸入脈沖,此脈沖由Data_in輸入,,脈沖寬度小于clock1的四分之一,,同時,脈沖寬度小于系統(tǒng)最快時鐘(clock2最快)的四分之一,。
如圖5所示,當clock2等于clock1時,,圖中Data_in1表示第一個輸入脈沖,此脈沖由Data_in輸入,,脈沖寬度小于clock1的四分之一,,同時,脈沖寬度小于系統(tǒng)最快時鐘(clock2等于clock1)的四分之一,。
4 仿真實驗分析
根據(jù)以上分析,,通過Modelsim仿真分析得出以下時域圖像可以驗證上述特征,如圖6~圖8所示,快時鐘為10 Hz,,慢時鐘為3.3 Hz,,當時鐘相等時為5 Hz。從仿真圖像來看,,亞穩(wěn)態(tài)問題以及信號寬度受限于時鐘寬度問題可以良好的解決,。
5 應用與實測
下方是基于和艦科技180 nm Pflash生產(chǎn)工藝設計實例。方案基于Faraday 0.18 ?滋m GII Library Standard Cell,,圖中灰色部分為模擬IP,。下圖中SAR_ADC的輸出接口中,有一個脈沖信號的寬度等于系統(tǒng)時鐘周期的一半,。采用一般的手段,,無法捕獲這個脈沖,采用上文所述的電路則便高效地解決了這個問題,。具體實現(xiàn)運行代碼如下:
assign ADC_fine_rst = ADC_fine_sys || rst ;
%生成復位信號ADC_fine_rst,,高有效,為使ADC_fine_sys和rst高電平產(chǎn)生復位,,所以采用“邏輯或”運算,。
always @(posedge drdy_dig or posedge ADC_fine_rst )
if (ADC_fine_rst)
ADC_fine <= 1'b0;
else
ADC_fine <= 1'b1;
%對應圖1中的DFF1,drdy_dig為原始窄脈沖信號,,若直接用系統(tǒng)時鐘clk_system采樣,,將無法鎖存。因此,,此處drdy_dig接ADC_fine_reg的clk端,。drdy_dig為ADC的IP電路輸出信號,同步邏輯輸出,,有效壓制毛刺,,避免誤觸發(fā),。
always @(posedge clk_system or posedge ADC_fine_sys )
if (ADC_fine_sys)
ADC_fine_ff <= 1'b0;
else
begin
if (rst)
ADC_fine_ff <= 1'b0;
else
ADC_fine_ff <= ADC_fine;
end
%對應圖1中的DFF2,此處rst的同步復位邏輯沒有決定性意義,,可以去除,。
always @(posedge clk_system or posedge rst )
if (rst)
ADC_fine_sys <= 1'b0;
else
ADC_fine_sys <= ADC_fine_ff;
%對應圖1中的DFF3,由原始drdy_dig信號,,生成了ADC_fine_sys信號,,從而實現(xiàn)跨時鐘對接。
最后生成如圖9所示的GDSII視圖,。按照生成GDSII視圖制作如圖10所示測試電路板,。
經(jīng)過MPW shuttle以及full MASK,采用天水華天的SOP20封裝工藝,,并設計板級測試系統(tǒng),,專項測試SAR_ADC結果如表1所示,。ADC性能符合spec,,排除測試環(huán)境的影響,信號捕獲成功率等于100%,,接口電路方案成功,。
6 結論
從整體來看,該方法結構簡單,。其輸入脈沖信號寬度可以低于本身的時鐘單周期寬,,使得設計中脈沖寬度不再受限于時鐘頻率;同時,,時鐘域1中輸入脈沖信號寬度可以低于系統(tǒng)最快時鐘單周期寬,,進一步提高了采集的穩(wěn)定性和適應性。時鐘域2輸出脈沖信號寬度為時鐘域2的時鐘單周期寬,,從而避免了誤觸發(fā),,電路經(jīng)過兩級同步,這樣很好地解決了亞穩(wěn)態(tài)問題,??偟膩碇v提高了采集的穩(wěn)定性和適應性。
但是,,這種處理方法對輸入信號也有要求:輸入毛刺寬度應小于DFF1(如圖3)的最小時鐘辨識度,,否則將產(chǎn)生誤觸發(fā)。因此,,這種方法的輸入信號一般是SOC同步電路的輸出信號,,如輸入為片外信號,一般要增加前置數(shù)字濾波電路,。
參考文獻
[1] LING L,,JIANG J.Exploit dynamic voltage and frequency scaling for SoC test scheduling under thermal constraints[C]//Proc of the 23rd Asian Test Symp.Piscataway,,NJ:IEEE,2014:182-185.
[2] Ketul Sutaria,,Jyothi Velamala,,Yu Cao.Multi-level reliability simulation for IC design[C].China xian,IEEE Beijing Section,,2012,,12.
[3] MILLICAN S K,SALUJA K K.Fornulating optimal test scheduling problem with dynamic voltage and frequency scaling[C]//Proc of the 22th Asian Test Symp,,Piscataway,,NJ:IEEE,2013:165-170.
[4] 蒲石.異步多時鐘域系統(tǒng)的同步設計研究[D].西安:西安電子科技大學,,2007.
[5] 邵翠萍,,史森茂,吳龍勝.SoC中跨時鐘域的信號同步設計[J].現(xiàn)代電子技術,,2012(8):157-159.
[6] 曹軍.安全SOC芯片中eMMC主接口的設計與實現(xiàn)[D].沈陽:遼寧大學,,2014.
[7] 羅莉,何鴻君,,徐煒遐,,等.面向SOC芯片的跨時鐘域設計和驗證[J].計算機科學,2011(38):279-281.