《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 數(shù)字集成電路門控時(shí)鐘可靠性研究
數(shù)字集成電路門控時(shí)鐘可靠性研究
2017年電子技術(shù)應(yīng)用第1期
喻賢坤,姜 爽,王 磊,王 莉,彭 斌
中國航天科技集團(tuán)第九研究院第七七二研究所,北京100076
摘要: 在超大規(guī)模集成電路設(shè)計(jì)中,門控時(shí)鐘技術(shù)是最常采用的低功耗設(shè)計(jì)技術(shù)。然而,由于時(shí)鐘信號的特殊性和敏感性,門控時(shí)鐘設(shè)計(jì)極容易造成功能錯(cuò)誤、時(shí)序惡化和測試覆蓋率降低,針對這三方面的風(fēng)險(xiǎn),提出多種門控時(shí)鐘的優(yōu)化技術(shù),包括異步門控時(shí)鐘的檢查和排除、可測性設(shè)計(jì)中的門控時(shí)鐘優(yōu)化技術(shù)和門控時(shí)鐘設(shè)計(jì)中的時(shí)序優(yōu)化技術(shù),確保在數(shù)字集成電路設(shè)計(jì)過程中門控時(shí)鐘設(shè)計(jì)在降低功耗收益最大化的同時(shí),能夠規(guī)避設(shè)計(jì)風(fēng)險(xiǎn),提升電路可靠性。
中圖分類號: TN47
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.01.016
中文引用格式: 喻賢坤,姜爽,王磊,等. 數(shù)字集成電路門控時(shí)鐘可靠性研究[J].電子技術(shù)應(yīng)用,2017,43(1):60-63,67.
英文引用格式: Yu Xiankun,Jiang Shuang,Wang Lei,et al. Research on the reliability of clock-gating clock in digital integrated circuits[J].Application of Electronic Technique,2017,43(1):60-63,67.
Research on the reliability of clock-gating clock in digital integrated circuits
Yu Xiankun,Jiang Shuang,Wang Lei,Wang Li,Peng Bin
The772 Institute of the Ninth Research Institute,China Aerospace Science and Technology Group,Beijing 100076,China
Abstract: In the design of Very Large Integrated Circuits(VLSI), clock gating technology is the most commonly used low power design technology.However, due to the specificity and sensitivity of the clock signal, the clock gating design is very easy to cause functional errors, timing deterioration and the reducement of the test coverage. Aiming at these three risk of the clock gating, this paper presents many optimization techniques, including the check and elimination of the asynchronous clock, the clock gating optimization technology of the design for test, and the timing optimization technology in the clock gating design, which can ensure the maximization for reducing power of the digital integrated circuit design as a result of the clock gating, and avoid the risk of design and improve the reliability of the circuit at the same time.
Key words : low power design;clock gating;asynchronous timing;design for test;timing optimization

0 引言

    對于超大規(guī)模集成電路來說,功耗指標(biāo)是最重要的技術(shù)參數(shù)之一。為了降低功耗,研究出來許多行之有效的方法,包括靜態(tài)多電壓(MV-Design)、動態(tài)電壓頻率縮放(DVFS)[1]、門控電源(Power-Gating)、門控時(shí)鐘(Clock-Gating)等。其中門控時(shí)鐘技術(shù)是最早發(fā)展起來,并且是采用最多的低功耗設(shè)計(jì)技術(shù),甚至可以使得電路功耗降低一半以上,具有實(shí)現(xiàn)簡單、高效的特點(diǎn)。

    門控時(shí)鐘技術(shù),是通過在時(shí)鐘路徑上增加邏輯門對時(shí)鐘進(jìn)行控制(Gating),使得電路的部分邏輯在不需要工作時(shí)停止時(shí)鐘樹的翻轉(zhuǎn),而并不影響原本的邏輯狀態(tài)[2]

    如圖1所示,在插入門控時(shí)鐘前,前級寄存器輸出經(jīng)過組合邏輯產(chǎn)生控制信號EN,EN選擇后級寄存器組的輸入是DATA IN還是其自身的Q,即選擇更新還是保持?jǐn)?shù)據(jù),可以看出后級寄存器組即使保持?jǐn)?shù)據(jù),其CLK仍在不停地翻轉(zhuǎn)。插入門控時(shí)鐘后,首先后級寄存器組的輸入不再有其自身的Q,而只有DATA IN,其次增加了門控邏輯,EN連接到了門控邏輯,不再用于控制數(shù)據(jù)端,而是用來控制時(shí)鐘端。當(dāng)需要更新數(shù)據(jù)時(shí),門控打開,用門控后的時(shí)鐘ENCLK來采集新數(shù)據(jù);而當(dāng)不需要更新數(shù)據(jù)時(shí),門控關(guān)閉,后級寄存器組的時(shí)鐘是靜止的,并能保持原有數(shù)據(jù)。而當(dāng)一個(gè)芯片中有許多類似的邏輯,并且不是每周期都更新數(shù)據(jù)時(shí),門控時(shí)鐘結(jié)構(gòu)對于降低功耗的貢獻(xiàn)是非常大的。

wdz2-t1.gif

1 門控時(shí)鐘設(shè)計(jì)的風(fēng)險(xiǎn)和影響

    時(shí)鐘是集成電路內(nèi)部最重要的邏輯組成部分,是數(shù)字集成電路的命脈。門控時(shí)鐘是對時(shí)鐘路徑的修改、控制,因此在門控時(shí)鐘設(shè)計(jì)時(shí),必須充分考慮門控時(shí)鐘帶來的風(fēng)險(xiǎn)和影響。

1.1 門控時(shí)鐘帶來功能錯(cuò)誤的風(fēng)險(xiǎn)

    門控時(shí)鐘控制的對象是寄存器、存儲器等時(shí)序邏輯的時(shí)鐘,一旦控制不得當(dāng),會造成時(shí)鐘出現(xiàn)高低電平寬度不足(corruption),甚至出現(xiàn)毛刺(glitching),帶來時(shí)序問題甚至功能錯(cuò)誤。

    如圖2所示,一種典型的門控時(shí)鐘結(jié)構(gòu)的基本組成部分包括:門控信號EN、被門控時(shí)鐘CLK,二者經(jīng)過鎖存器latch和與門and的邏輯,形成了門控后時(shí)鐘ENCLK。在這個(gè)典型結(jié)構(gòu)中,latch在LG(CLK)為低電平時(shí)導(dǎo)通,在LG(CLK)為高電平時(shí)關(guān)閉。在CLK為低電平期間,and與門輸出結(jié)果一直為0;在CLK為高電平期間,and與門打開,但是此時(shí)latch已經(jīng)鎖定,EN信號上即使有意外翻轉(zhuǎn)或者毛刺也不會通過latch傳遞給ENL而造成ENCLK的污染。

wdz2-t2.gif

    從時(shí)序角度來講,發(fā)生風(fēng)險(xiǎn)的地方在CLK電平轉(zhuǎn)換的時(shí)刻附近,此時(shí)如果EN發(fā)生變化,latch從低變高的過程會把EN鎖存在latch中,并產(chǎn)生有效的ENL;由于CLK變高,就把ENL發(fā)生的變化傳遞給ENCLK,ENCLK上將會出現(xiàn)本不應(yīng)出現(xiàn)的毛刺,導(dǎo)致功能錯(cuò)誤。不滿足時(shí)序情況下的門控時(shí)鐘時(shí)序圖如圖3所示。

wdz2-t3.gif

    如果產(chǎn)生EN的時(shí)鐘與ENCLK后級邏輯的時(shí)鐘是同一個(gè)時(shí)鐘,或是同一時(shí)鐘域的時(shí)鐘,圖3中描述的情況是不會發(fā)生的,因?yàn)樵跐M足時(shí)序約束的情況下,同步電路不允許存在這種違反建立保持時(shí)間的路徑,如圖4所示。反之,如果EN信號來自于異步時(shí)鐘域或端口,則這種情況是一定存在的。

wdz2-t4.gif

1.2 門控時(shí)鐘對測試覆蓋率的影響

    在當(dāng)前超大規(guī)模數(shù)字集成電路設(shè)計(jì)中,可測性設(shè)計(jì)是必備的設(shè)計(jì)流程之一。可測性設(shè)計(jì)的原理就是通過特意設(shè)計(jì)的邏輯,使得電路的內(nèi)部節(jié)點(diǎn)從輸入端口可控制,并且通過特意設(shè)計(jì)的測試向量來激活內(nèi)部潛在故障,然后通過輸出端口可觀測,從而大幅度提高電路的測試覆蓋率。

    而門控時(shí)鐘天然對可測性設(shè)計(jì)不友好,因?yàn)樵跍y試狀態(tài)下,增加了門控邏輯的寄存器的時(shí)鐘往往是不可控的。門控時(shí)鐘導(dǎo)致被門控邏輯時(shí)鐘不可控的示意圖如圖5所示。

wdz2-t5.gif

    在測試狀態(tài)下,由于產(chǎn)生EN邏輯的前級寄存器無論是否被串入掃描鏈,寄存器中的值都是由原始輸入值和串行掃描數(shù)據(jù)決定,無法受端口直接控制,因此門控時(shí)鐘的打開和關(guān)閉無法受端口直接控制,進(jìn)而導(dǎo)致門控時(shí)鐘的后級寄存器因?yàn)椴环峡蓽y性設(shè)計(jì)規(guī)則而無法串入掃描鏈,降低測試覆蓋率。

    因此在門控時(shí)鐘設(shè)計(jì)中必須采取相應(yīng)的措施,最大程度地消除門控對于可測性設(shè)計(jì)的不良影響。

1.3 門控時(shí)鐘對時(shí)序的影響

    由于門控邏輯在時(shí)鐘路徑上額外增加了邏輯,也就額外增加了延時(shí),會對時(shí)鐘樹本身造成影響;同時(shí),門控邏輯通常包含latch、or、and等邏輯結(jié)構(gòu),這些邏輯結(jié)構(gòu)本身也有時(shí)序檢查要求。門控時(shí)鐘對時(shí)序的影響,相應(yīng)地分為3個(gè)方面:

    (1)由于門控時(shí)鐘的加入,導(dǎo)致設(shè)計(jì)最終無法時(shí)序收斂;

    (2)門控時(shí)鐘本身邏輯,最終無法時(shí)序收斂;

    (3)由于約束不嚴(yán),導(dǎo)致盡管時(shí)序收斂,但實(shí)際上仍然存在風(fēng)險(xiǎn)。

2 門控時(shí)鐘優(yōu)化技術(shù)

    針對前文提出的門控時(shí)鐘對電路功能、可測性和時(shí)序3方面的風(fēng)險(xiǎn)和影響,下文將逐一提出可實(shí)現(xiàn)的解決方案,通過腳本語言、設(shè)計(jì)約束、設(shè)計(jì)優(yōu)化等多種手段,規(guī)避門控時(shí)鐘帶來的風(fēng)險(xiǎn),最大程度降低門控時(shí)鐘對于可測性和時(shí)序的影響,并最終實(shí)現(xiàn)功耗最優(yōu)化。

2.1 異步門控時(shí)鐘和端口門控時(shí)鐘的優(yōu)化技術(shù)

    從圖3中可以看出,當(dāng)門控信號和被門控時(shí)鐘存在不確定的相位關(guān)系時(shí),就可能出現(xiàn)問題,這類門控信號有兩個(gè)可能來源:異步時(shí)鐘域和端口。為了避免此種現(xiàn)象的發(fā)生,有兩個(gè)方法:

    (1)采用LEDA、CDC等工具進(jìn)行跨時(shí)鐘域信號檢查,確認(rèn)不存在異步時(shí)鐘域間的數(shù)據(jù)交互;如果必須采用異步時(shí)序,則在異步界面上增加兩級同步寄存器,消除亞穩(wěn)態(tài);

    (2)在邏輯綜合或時(shí)序分析工具中,利用腳本語言(例如Tcl)將設(shè)計(jì)中所有產(chǎn)生門控信號的前級邏輯的時(shí)鐘、被門控時(shí)鐘抓取出來。具體操作:采用all_fanin -to [get_pins -hierarchical -filter "full_name =~ */clk_gate*_reg*/EN"] -flat -startpoints_only抓取所有門控信號EN的前級寄存器的時(shí)鐘,采用get_pins -of [get_cell $latch_name/main_gate] -filter "full_name =~ */B"抓取被門控時(shí)鐘[3]

    如果產(chǎn)生門控信號的時(shí)鐘、被門控的時(shí)鐘不是同一個(gè)時(shí)鐘,或同一個(gè)時(shí)鐘的不同沿,或產(chǎn)生門控信號的是端口輸入,則為異步或端口門控時(shí)鐘。如果存在圖6中的情況,則立即可以發(fā)現(xiàn)。

wdz2-t6.gif

    在第一次綜合結(jié)束后,通過命令確認(rèn)上述3種極有可能造成邏輯錯(cuò)誤的門控時(shí)鐘情況后,采用綜合工具的命令(set_clock_gating_registers -exclude_instances),將上述門控邏輯屏蔽掉,重新進(jìn)行綜合。經(jīng)過上述流程,可以保證所有門控邏輯:門控信號和被門控時(shí)鐘永遠(yuǎn)保持穩(wěn)定的、合法的時(shí)序關(guān)系,門控時(shí)鐘后級邏輯可以穩(wěn)定正常地工作,不會因?yàn)楸婚T控時(shí)鐘上的毛刺而產(chǎn)生功能錯(cuò)誤,極大地提高了設(shè)計(jì)的可靠性。

2.2 門控時(shí)鐘可測性設(shè)計(jì)的優(yōu)化技術(shù)

    門控時(shí)鐘可測性設(shè)計(jì)的優(yōu)化技術(shù)包含兩方面:

    (1)在沒有加入可控制邏輯的情況下,門控時(shí)鐘驅(qū)動的后級寄存器的時(shí)鐘在測試狀態(tài)下不可控。針對此問題,在門控時(shí)鐘插入過程中,增加門控時(shí)鐘旁路結(jié)構(gòu),使得門控時(shí)鐘在測試狀態(tài)下保持常通,如圖7所示。

wdz2-t7.gif

    在門控邏輯上增加了一個(gè)輸入管腳TE和一個(gè)旁路的或門,TE通常連接頂層的測試模式信號test_mode。在測試狀態(tài)下,test_mode為固定高電平,因此latch的輸入LD為固定高電平,ENL為固定高電平,CLK直接傳遞給ENCLK。因此在測試模式下,ENCLK與CLK保持一致,門控邏輯被旁路掉了,時(shí)鐘從外部輸入端口可控,不會對可測性造成影響。

    (2)選擇最優(yōu)化的門控時(shí)鐘可控制邏輯,實(shí)現(xiàn)可測性的最優(yōu)化。提高門控時(shí)鐘可測性的方法,也可以在latch的LQ端進(jìn)行旁路,并且采用頂層的scan_enable進(jìn)行控制,如圖8所示。

wdz2-t8.gif

    對比圖7和圖8可以看出,or邏輯在latch之前還是之后,對于旁路時(shí)鐘的作用沒有區(qū)別,但是考慮到or邏輯在latch之前可以多一次同步,因此一般把or邏輯放在latch之前,通過命令set_clock_gating_style-control_point before實(shí)現(xiàn);在控制信號方面,test_mode在測試狀態(tài)中都是固定的,而scan_enable信號在shift和capture下會出現(xiàn)翻轉(zhuǎn),對于激活故障是有利的,能夠有效地提高測試覆蓋率,因此選擇scan_enable作為控制信號,通過命令set_clock_gating_style -control_signal scan_enable實(shí)現(xiàn)。

    通過上述門控時(shí)鐘可測性設(shè)計(jì)的優(yōu)化技術(shù),可以明顯提高具有門控時(shí)鐘邏輯的電路的測試覆蓋率,具有現(xiàn)實(shí)的工程意義。

2.3 門控時(shí)鐘時(shí)序的優(yōu)化技術(shù)

    針對前文提出的門控時(shí)鐘對于時(shí)序影響的3個(gè)方面,本論文提出了一套針對整個(gè)設(shè)計(jì)流程的不同階段的優(yōu)化方法:

    (1)代碼設(shè)計(jì)階段

    在代碼設(shè)計(jì)階段,盡量避免多級門控時(shí)鐘。因?yàn)槎嗉夐T控時(shí)鐘會逐級增加時(shí)鐘樹延時(shí),相比于其它沒有門控邏輯的時(shí)鐘節(jié)點(diǎn)出現(xiàn)差異,可能會導(dǎo)致在綜合階段出現(xiàn)時(shí)序優(yōu)化問題。建議采用合并多級門控邏輯的設(shè)計(jì)方法,如圖9所示。

wdz2-t9.gif

    (2)邏輯綜合階段

    在邏輯綜合階段,由于尚未形成時(shí)鐘樹,時(shí)鐘網(wǎng)絡(luò)是0延時(shí)的理想網(wǎng)絡(luò)。為了預(yù)估門控邏輯在后續(xù)設(shè)計(jì)階段可能帶來的時(shí)序影響,需要提前留出裕量,可以通過set_clock_gate_latency來實(shí)現(xiàn)。

    此外,一般工藝庫中,組合邏輯默認(rèn)的建立保持時(shí)間都是0,對于門控邏輯中的and與門來說,意味著在門控信號和被門控的時(shí)鐘沿同時(shí)翻轉(zhuǎn)的情況下,工具也不會報(bào)出時(shí)序違例。針對此種情況,通過邏輯綜合的set_clock_gating_style和時(shí)序分析的set_clock_gating_check命令來加嚴(yán)約束[4]

    (3)布局布線階段

    在布局布線階段,對于時(shí)序非常緊張的門控單元,需要將這些單元緊密排列,在布局布線工具中應(yīng)當(dāng)設(shè)置布局限制約束,例如ICC中的placement bound等命令[5];此外,如果意外地將門控時(shí)鐘的層次打平,需要防止布局布線工具把門控的latch當(dāng)作時(shí)鐘樹的終點(diǎn)來調(diào)整skew,從而造成扇出的被門控邏輯的時(shí)鐘樹超長。

3 結(jié)語

    通過本文提出的對于門控時(shí)鐘功能穩(wěn)定性、可測性、時(shí)序3方面的優(yōu)化技術(shù),可以實(shí)現(xiàn)進(jìn)行門控時(shí)鐘設(shè)計(jì)時(shí)不會產(chǎn)生毛刺、芯片故障覆蓋率最大化、以及時(shí)序最優(yōu)3方面的目標(biāo),為超大規(guī)模數(shù)字集成電路的功耗優(yōu)化設(shè)計(jì)提供了完整的解決方案和優(yōu)化手段,并已經(jīng)在數(shù)字專用集成電路的設(shè)計(jì)過程中進(jìn)行了充分的工程化應(yīng)用,取得了良好的效果。

參考文獻(xiàn)

[1] CHOI K,SOMA R,PEDRAM M.Dynamic voltage and frequency scaling based on workload decomposition[M].ACM International Symposium on Low Power Electronics and Design.2004.

[2] 卜愛國,余翩翩,吳建兵,等.基于自適應(yīng)門控時(shí)鐘的CPU功耗優(yōu)化和VLSI設(shè)計(jì).東南大學(xué)學(xué)報(bào)(自然科學(xué)版).2015,45(2):219-223.

[3] Power Compiler User Guide.Synopsys.2014.

[4] PrimeTime User Guide.Synopsys,2014.

[5] IC Compiler Implementation User Guide.Synopsys.2014.



作者信息:

喻賢坤,姜  爽,王  磊,王  莉,彭  斌

(中國航天科技集團(tuán)第九研究院第七七二研究所,北京100076)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 午夜精品久久久久久影视riav | 亚洲国产精品日韩在线观看 | 一个人看的视频www在线看 | 九九99靖品 | 青青青国产依人在线视频97 | 欧美一级看片免费观看视频在线 | 精品一区二区三区在线观看 | 一级黄色录像免费看 | 国产区在线免费观看 | 成人亚洲欧美日韩在线观看 | 欧美亚洲中日韩中文字幕在线 | 国产精品一区高清在线观看 | 天堂中文资源在线8 | 国产成人18黄网站免费 | 国产在线综合一区二区三区 | 国产一级片播放 | 日日操网 | 国外成人在线视频网站 | 成人a毛片一级 | 在线看片日韩 | 欧美xxxx性疯狂bbbb | 亚洲午夜久久久久久尤物 | 好男人社区神马www在线观看 | 91精品国产免费网站 | 久久久久国产一级毛片高清板 | 一级黄色录像大片 | 国产一卡2卡3卡四卡精品网站 | 两性色午夜视频免费网 | 国产日韩欧美成人 | 国产一区二区精品在线观看 | 91精品欧美激情在线播放 | 久久影院秋霞理论 | 日韩国产欧美一区二区三区 | 日韩亚洲一区二区三区 | 男女一级毛片免费播放 | 日本黄在线| zzji国产精品视频 | 高清一区二区亚洲欧美日韩 | 在线成年视频免费观看 | 免费乱人伦 | 青青草国产精品视频 |