《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 多時(shí)鐘系統(tǒng)下跨時(shí)鐘域同步電路的設(shè)計(jì)
多時(shí)鐘系統(tǒng)下跨時(shí)鐘域同步電路的設(shè)計(jì)
2018年電子技術(shù)應(yīng)用第2期
趙 旸,梁步閣,楊德貴,趙黨軍
中南大學(xué) 航空航天學(xué)院,湖南 長(zhǎng)沙410083
摘要: 針對(duì)當(dāng)前SOC內(nèi)部時(shí)鐘越來越復(fù)雜、接口越來越多以及亞穩(wěn)態(tài)、漏信號(hào)等常見的各種問題,分析了以往的優(yōu)化方法的優(yōu)缺點(diǎn),然后從電路的角度出發(fā),提出了一種新的SOC跨時(shí)鐘域同步電路設(shè)計(jì)的方法。這種方法電路簡(jiǎn)單,可靠性高,通過仿真實(shí)驗(yàn)和實(shí)測(cè)實(shí)驗(yàn)驗(yàn)證,能夠在多時(shí)鐘系統(tǒng)中適應(yīng)最小輸入脈寬、不漏信號(hào)、避免誤觸發(fā)和多觸發(fā),且很好地解決了亞穩(wěn)態(tài)等問題。
中圖分類號(hào): TN911
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.172787
中文引用格式: 趙旸,梁步閣,楊德貴,等. 多時(shí)鐘系統(tǒng)下跨時(shí)鐘域同步電路的設(shè)計(jì)[J].電子技術(shù)應(yīng)用,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.

The design of synchronization circuit for crossing the clock domain in multi clock system
Zhao Yang,Liang Buge,Yang Degui,Zhao Dangjun
Department of Aeronautics and Astronautics,Central South University,Changsha 410083,China
Abstract: In view of the current problems more complex, more and more SOC internal clock interface and metastability, leakage and other common signal, we analyze the advantages and disadvantages of previous methods of optimization, then, starting from the circuit point of view,we put forward a kind of interface and clock domain signal method SOC new asynchronous. This method has simple circuit and high reliability. It can be adapted to minimum width of input pulse and verified by simulation and experiment. It can not leak signal, avoid false triggering and multiple triggers, and solve the problem of sub steady state.
Key words : multi clock system;crossing the clock domain;circuit of synchronization;signal

0 引言

    隨著時(shí)間的推移,集成電路行業(yè)發(fā)展至今,已有類似如Intel這樣先進(jìn)的foundry,提出邁入10 nm制程的規(guī)劃。高集成度的推行,也使芯片規(guī)模越來越大,功能越來越復(fù)雜,設(shè)計(jì)難度越來越高[1]。SOC的內(nèi)部時(shí)鐘的復(fù)雜化,導(dǎo)致跨時(shí)鐘域的接口越來越多。針對(duì)這些異步信號(hào)的處理,國(guó)外的先驅(qū)們提出了很多建設(shè)性意見。但一般用到器件較多,考慮到成本因素,小規(guī)模IC將無法承受,并且如果輸入脈沖高電平寬度低于最快時(shí)鐘周期的話,一般無法適用。因此要想很好地解決這個(gè)問題,要處理好4個(gè)方面工作:一是如何簡(jiǎn)化電路;二是如何適應(yīng)最小輸入脈寬的問題;三是解決好亞穩(wěn)態(tài)問題;四是要提高設(shè)計(jì)可靠性[2]。

1 處理跨時(shí)鐘域信號(hào)的常用方法

    實(shí)際使用時(shí),往往會(huì)出現(xiàn)信號(hào)在頻率不用的時(shí)鐘域傳遞的情況,對(duì)于這種情況,一般用兩種方法處理:結(jié)繩法、伴隨有效控制信號(hào)法。當(dāng)信號(hào)從一個(gè)時(shí)鐘域進(jìn)入另一個(gè)時(shí)鐘域的時(shí)候,往往出現(xiàn)亞穩(wěn)態(tài)問題[4]。亞穩(wěn)態(tài)是指觸發(fā)器無法在某個(gè)規(guī)定時(shí)間段內(nèi)達(dá)到一個(gè)可確認(rèn)的狀態(tài)。當(dāng)一個(gè)觸發(fā)器進(jìn)入亞穩(wěn)態(tài)時(shí),既無法預(yù)測(cè)該單元的輸出電平,也無法預(yù)測(cè)何時(shí)輸出才能穩(wěn)定在某個(gè)正確的電平上。信號(hào)同步的目的是防止上一級(jí)亞穩(wěn)態(tài)對(duì)下一級(jí)產(chǎn)生不良影響,采用信號(hào)同步的方法就要設(shè)計(jì)信號(hào)同步器。信號(hào)同步器主要有3種:電平同步器、邊沿檢測(cè)同步器、脈沖同步器[7-8]。但是這些常用方法本身存在缺點(diǎn)和不適應(yīng)性。在解決實(shí)際問題中,需要根據(jù)具體情況,來設(shè)計(jì)具體的方案。

2 跨時(shí)鐘域同步電路接口方法組成及工作原理

    整個(gè)電路包括兩個(gè)時(shí)鐘域以及一個(gè)復(fù)位電路。時(shí)鐘域1包含一個(gè)帶有異步復(fù)位端的同步觸發(fā)器。此觸發(fā)器帶有異步復(fù)位端R和同步時(shí)鐘端CK,低電平產(chǎn)生復(fù)位,時(shí)鐘上升沿開始鎖存數(shù)據(jù)輸入端D的狀態(tài)。輸出端有正相Q、反相/Q兩種數(shù)據(jù)輸出。時(shí)鐘域2由兩個(gè)同樣的觸發(fā)器組成,跟前面的一樣由異步復(fù)位端R和同步時(shí)鐘端CK,數(shù)據(jù)輸入端D組成。輸出端為正相Q、反相/Q兩種,復(fù)位電路由一個(gè)與門組成,接收DFF3的反向/Q輸出的數(shù)據(jù),電路連接關(guān)系如圖1所示。

wdz2-t1.gif

3 跨時(shí)鐘域同步電路的工作特征

    在設(shè)計(jì)方案中,最大限度地保障了不漏信號(hào)。同時(shí),時(shí)鐘域1的輸入脈沖信號(hào)寬度(高電平寬度)可以低于時(shí)鐘域1的時(shí)鐘單周期寬,電路正常工作,并且設(shè)計(jì)中脈沖寬度不再受限于時(shí)鐘域1的時(shí)鐘頻率。第三,數(shù)據(jù)鎖存器的數(shù)據(jù)輸出端Q輸出的脈沖信號(hào)寬度為時(shí)鐘域2的時(shí)鐘單周期寬,從而避免了誤觸發(fā)和多觸發(fā)。

    這種方法適用于輸入信號(hào)類型為脈沖或電平,最終得到的結(jié)果為脈沖。如圖2所示。

wdz2-t2.gif

    如圖3所示,當(dāng)clock1快于clock2時(shí),圖中Data_in1表示第一個(gè)輸入脈沖,此脈沖由Data_in輸入,脈沖寬度小于clock1的四分之一,同時(shí),脈沖寬度小于系統(tǒng)最快時(shí)鐘(clock1最快)的四分之一。Data_in1的上升沿到來的瞬間,Q1輸出高電平“1”;Data_in1的上升沿之后,第一個(gè)clock2的上升沿到來瞬間,Q2輸出高電平“1”;第二個(gè)clock2的上升沿到來瞬間,Data_out輸出高電平“1”,與此同時(shí),nRST生成復(fù)位信號(hào),復(fù)位DFF1、DFF2,使Q1、Q2輸出低;第三個(gè)clock2的上升沿到來瞬間,由于Q1、Q2早已變成低電平“0”,此時(shí),“0”傳遞到Data_out,形成了一個(gè)clock2的周期寬度的脈沖Data_out1。

wdz2-t3.gif

    如圖4所示,若clock2快于clock1時(shí),圖中Data_in1表示第一個(gè)輸入脈沖,此脈沖由Data_in輸入,脈沖寬度小于clock1的四分之一,同時(shí),脈沖寬度小于系統(tǒng)最快時(shí)鐘(clock2最快)的四分之一。 

wdz2-t4.gif

    如圖5所示,當(dāng)clock2等于clock1時(shí),圖中Data_in1表示第一個(gè)輸入脈沖,此脈沖由Data_in輸入,脈沖寬度小于clock1的四分之一,同時(shí),脈沖寬度小于系統(tǒng)最快時(shí)鐘(clock2等于clock1)的四分之一。 

wdz2-t5.gif

4 仿真實(shí)驗(yàn)分析

    根據(jù)以上分析,通過Modelsim仿真分析得出以下時(shí)域圖像可以驗(yàn)證上述特征,如圖6~圖8所示,快時(shí)鐘為10 Hz,慢時(shí)鐘為3.3 Hz,當(dāng)時(shí)鐘相等時(shí)為5 Hz。從仿真圖像來看,亞穩(wěn)態(tài)問題以及信號(hào)寬度受限于時(shí)鐘寬度問題可以良好的解決。

wdz2-t6.gif

wdz2-t7.gif

wdz2-t8.gif

5 應(yīng)用與實(shí)測(cè)

    下方是基于和艦科技180 nm Pflash生產(chǎn)工藝設(shè)計(jì)實(shí)例。方案基于Faraday 0.18 ?滋m GII Library Standard Cell,圖中灰色部分為模擬IP。下圖中SAR_ADC的輸出接口中,有一個(gè)脈沖信號(hào)的寬度等于系統(tǒng)時(shí)鐘周期的一半。采用一般的手段,無法捕獲這個(gè)脈沖,采用上文所述的電路則便高效地解決了這個(gè)問題。具體實(shí)現(xiàn)運(yùn)行代碼如下:

assign ADC_fine_rst = ADC_fine_sys || rst ;

    %生成復(fù)位信號(hào)ADC_fine_rst,高有效,為使ADC_fine_sys和rst高電平產(chǎn)生復(fù)位,所以采用“邏輯或”運(yùn)算。

    always @(posedge drdy_dig or posedge ADC_fine_rst )

    if (ADC_fine_rst)

     ADC_fine <= 1'b0;

    else

     ADC_fine <= 1'b1;

    %對(duì)應(yīng)圖1中的DFF1,drdy_dig為原始窄脈沖信號(hào),若直接用系統(tǒng)時(shí)鐘clk_system采樣,將無法鎖存。因此,此處drdy_dig接ADC_fine_reg的clk端。drdy_dig為ADC的IP電路輸出信號(hào),同步邏輯輸出,有效壓制毛刺,避免誤觸發(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

    %對(duì)應(yīng)圖1中的DFF2,此處rst的同步復(fù)位邏輯沒有決定性意義,可以去除。

always @(posedge clk_system or posedge rst )

    if (rst)

      ADC_fine_sys <= 1'b0;

    else

      ADC_fine_sys <= ADC_fine_ff;

    %對(duì)應(yīng)圖1中的DFF3,由原始drdy_dig信號(hào),生成了ADC_fine_sys信號(hào),從而實(shí)現(xiàn)跨時(shí)鐘對(duì)接。

    最后生成如圖9所示的GDSII視圖。按照生成GDSII視圖制作如圖10所示測(cè)試電路板。

wdz2-t9.gif

wdz2-t10.gif

    經(jīng)過MPW shuttle以及full MASK,采用天水華天的SOP20封裝工藝,并設(shè)計(jì)板級(jí)測(cè)試系統(tǒng),專項(xiàng)測(cè)試SAR_ADC結(jié)果如表1所示。ADC性能符合spec,排除測(cè)試環(huán)境的影響,信號(hào)捕獲成功率等于100%,接口電路方案成功。

wdz2-b1.gif

6 結(jié)論 

    從整體來看,該方法結(jié)構(gòu)簡(jiǎn)單。其輸入脈沖信號(hào)寬度可以低于本身的時(shí)鐘單周期寬,使得設(shè)計(jì)中脈沖寬度不再受限于時(shí)鐘頻率;同時(shí),時(shí)鐘域1中輸入脈沖信號(hào)寬度可以低于系統(tǒng)最快時(shí)鐘單周期寬,進(jìn)一步提高了采集的穩(wěn)定性和適應(yīng)性。時(shí)鐘域2輸出脈沖信號(hào)寬度為時(shí)鐘域2的時(shí)鐘單周期寬,從而避免了誤觸發(fā),電路經(jīng)過兩級(jí)同步,這樣很好地解決了亞穩(wěn)態(tài)問題??偟膩碇v提高了采集的穩(wěn)定性和適應(yīng)性。

    但是,這種處理方法對(duì)輸入信號(hào)也有要求:輸入毛刺寬度應(yīng)小于DFF1(如圖3)的最小時(shí)鐘辨識(shí)度,否則將產(chǎn)生誤觸發(fā)。因此,這種方法的輸入信號(hào)一般是SOC同步電路的輸出信號(hào),如輸入為片外信號(hào),一般要增加前置數(shù)字濾波電路。

參考文獻(xiàn)

[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] 蒲石.異步多時(shí)鐘域系統(tǒng)的同步設(shè)計(jì)研究[D].西安:西安電子科技大學(xué),2007.

[5] 邵翠萍,史森茂,吳龍勝.SoC中跨時(shí)鐘域的信號(hào)同步設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012(8):157-159.

[6] 曹軍.安全SOC芯片中eMMC主接口的設(shè)計(jì)與實(shí)現(xiàn)[D].沈陽:遼寧大學(xué),2014.

[7] 羅莉,何鴻君,徐煒遐,等.面向SOC芯片的跨時(shí)鐘域設(shè)計(jì)和驗(yàn)證[J].計(jì)算機(jī)科學(xué),2011(38):279-281.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。