李哲源
摘 要:數(shù)字集成電路比較容易處理復(fù)雜龐大的邏輯,在ASIC中扮演著極其重要的角色。本文首先對數(shù)字電路設(shè)計(jì)做了簡單的介紹,然后結(jié)合項(xiàng)目,對前端設(shè)計(jì)和后端設(shè)計(jì)進(jìn)行了較為詳細(xì)地闡述,并在各個(gè)環(huán)節(jié)逐步仿真驗(yàn)證,在最終成果的檢驗(yàn)中,設(shè)計(jì)滿足要求。
關(guān)鍵詞:集成電路;驗(yàn)證;設(shè)計(jì)
前言:隨著數(shù)字集成電路設(shè)計(jì)變得越來越復(fù)雜,門級電路描述不易于管理和理解的缺點(diǎn)顯得越來越突出,這使得用更抽象的方法表達(dá)電路設(shè)計(jì)成為必要,從20世紀(jì)90年代以來,硬件描述語言(HDL)正逐漸取代門級原理圖。本文首先對數(shù)字電路設(shè)計(jì)做了簡單的介紹,然后結(jié)合項(xiàng)目,設(shè)計(jì)滿足要求。
1.同步數(shù)字系統(tǒng)的設(shè)計(jì)
1.1同步系統(tǒng)
同步”是相對于“異步”而言的,之所以稱之為“同步”,是因?yàn)橥较到y(tǒng)中存儲(chǔ)單元(觸發(fā)器)的狀態(tài)是由統(tǒng)一的時(shí)鐘觸發(fā)改變的,各個(gè)存儲(chǔ)狀態(tài)的改變均嚴(yán)格在時(shí)鐘的控制下完成。同步電路的良好特性,使同步設(shè)計(jì)方法備受設(shè)計(jì)人員的青睞。同步系統(tǒng)中的基本存儲(chǔ)單元是觸發(fā)器,一般來說,會(huì)避免使用其他的存儲(chǔ)器件,比如鎖存器之類,這主要是“同步”的需求。因?yàn)榇鎯?chǔ)單元存儲(chǔ)狀態(tài)的改變,是在時(shí)鐘沿的控制下完成的,所以同步電路有很多優(yōu)越性:同步電路比較容易使用觸發(fā)器的異步清零/置位端口,保證了各個(gè)存儲(chǔ)單元有相同的初始態(tài);其次,同步電路中各個(gè)存儲(chǔ)單元的狀態(tài)只在時(shí)鐘沿到來時(shí)發(fā)生改變,然后會(huì)保持穩(wěn)定,這在很大程度上避免了工藝、溫度等對電路的影響,并能夠消除毛刺,使設(shè)計(jì)穩(wěn)定可靠。同步電路具有種種優(yōu)點(diǎn),因此,現(xiàn)在商業(yè)化的芯片,大都采用同步設(shè)計(jì)方案。
1.2觸發(fā)器
同步電路中的基本存儲(chǔ)單元是觸發(fā)器(flip_flop),這里特指 D 觸發(fā)器。相比于其它的存儲(chǔ)器件,觸發(fā)器最主要的特點(diǎn)是:時(shí)鐘觸發(fā)是觸發(fā)器存儲(chǔ) D 端數(shù)據(jù)的唯一條件,僅僅在時(shí)鐘沿到來的那一刻觸發(fā)器才將數(shù)據(jù)端相應(yīng)的數(shù)據(jù)儲(chǔ)存起來,在時(shí)鐘沿未到來時(shí),觸發(fā)器所存儲(chǔ)的值不會(huì)發(fā)生變化。正因?yàn)橛|發(fā)器的這一特性,同步電路才具備了毛刺不敏感的特點(diǎn),以及較高的穩(wěn)定性。 觸發(fā)器對電平不敏感,對時(shí)鐘的邊沿敏感。在一次狀態(tài)改變后,會(huì)一直維持穩(wěn)定,直到下一個(gè)時(shí)鐘沿到來的瞬間,其存儲(chǔ)狀態(tài)才發(fā)生改變。另外,一般來說,觸發(fā)器還有一個(gè)異步清零/置位端口,通常用來定義觸發(fā)器的初始狀態(tài)。觸發(fā)器是一個(gè)雙穩(wěn)態(tài)的存儲(chǔ)器件。是同步電路必不可少的存儲(chǔ)單元。
1.3版圖設(shè)計(jì)
在 Virtuoso 下,直接 File-Import-Stream,導(dǎo)入布局布線后生成的 GDS 文件,即可得到相應(yīng)數(shù)字電路的版圖,比較簡便。 對于數(shù)字電路版圖的設(shè)計(jì),主要的工作是:對于一個(gè)數(shù)?;旌系南到y(tǒng),完成數(shù)字版圖和模擬版圖的組裝;雖然在布局布線階段進(jìn)行過相應(yīng)的檢查,但在版圖層面,相應(yīng)的 DRC、LVS仍是必要的;輸出 GDSII 文件,若設(shè)計(jì)人員認(rèn)為設(shè)計(jì)無誤,對相應(yīng)的版圖也感到滿意,就可以生成 GDSII 文件,認(rèn)為可以準(zhǔn)備將數(shù)據(jù)送至代工廠進(jìn)行加工了。對于一款商業(yè)化的 ASIC 設(shè)計(jì),版圖并不是最終環(huán)節(jié)。在相應(yīng)的版圖完成后,可以交由工藝廠商加工生產(chǎn),芯片回來后,需要對其測試,以驗(yàn)證芯片功能、性能是否滿足要求,并進(jìn)行 Debug,調(diào)試完成之后再進(jìn)行量產(chǎn)。
2.仿真驗(yàn)證
2.1功能驗(yàn)證
時(shí)序仿真,也稱作后仿,是使用布局布線后器件給出的單元和連線的延時(shí)信息,對電路做一個(gè)切實(shí)的評估。后仿的目的是盡可能地消除或者減少理論仿真和實(shí)際運(yùn)行之間的差異。前端仿真所采用的器件模型,是晶圓廠商提供的參數(shù)模型,包含了基準(zhǔn)單元的各種寄生參數(shù),因此前仿有著足夠的可靠性。但是,版圖生成之后,由于版圖中器件單元的布局以及走線的距離,可能會(huì)有較大的寄生電阻、寄生電容,或者寄生電感(后仿一般只有電阻和電容,不包括寄生電感),這些都是在前仿中所體現(xiàn)不出的。而在前仿的網(wǎng)表中,一般認(rèn)為器件間連線的電阻電容。均為零,這有可能導(dǎo)致前仿的結(jié)果并不可靠,寄生參數(shù)足以使制成后的系統(tǒng)偏離設(shè)計(jì)初衷,使生產(chǎn)的東西并不是所設(shè)計(jì)的東西。
2.2FPGA驗(yàn)證
FPGA 為 Field Programmable Gate Array,相比BASIC(Application Specific Integrated Circuit),作為可編程邏輯器件,F(xiàn)PGA 可以重復(fù)擦寫程序,通常用它來對現(xiàn)有的設(shè)計(jì)進(jìn)行仿真驗(yàn)證。在數(shù)字 ASIC 的設(shè)計(jì)中,由于測試向量的不完備,設(shè)計(jì)中很有可能存在相應(yīng)的Bug。因?yàn)槊看?ASIC 的投片會(huì)花費(fèi)較大代價(jià),為規(guī)避風(fēng)險(xiǎn),通常會(huì)對設(shè)計(jì)進(jìn)行 FPGA驗(yàn)證,F(xiàn)PGA 驗(yàn)證無誤后才進(jìn)行投片、量產(chǎn)。Altera 公司提供的軟件QuartusII 主要是為 FPGA 服務(wù)的,從仿真驗(yàn)證,到綜合,一直到最后載入 FPGA,QuartusII 提供了較為完整的方案。對于 FPGA 型號的選取,主要是參照速度、面積、價(jià)格等因素,同時(shí)很多廠商都提供 FPGA 開發(fā)板,這使得 FPGA 驗(yàn)證這一環(huán)節(jié)很容易實(shí)現(xiàn)。
2.3形式驗(yàn)證
形式驗(yàn)證是通過形式證明的方法對一個(gè)設(shè)計(jì)進(jìn)行驗(yàn)證,它是從數(shù)學(xué)上對電路的功能進(jìn)行一個(gè)較為全面的驗(yàn)證。形式驗(yàn)證分為三大類:等效性驗(yàn)證、模型驗(yàn)證和理論證明。通常在數(shù)字 IC 設(shè)計(jì)過程中所說的形式驗(yàn)證,往往指的是等效性驗(yàn)證,比較常用的工具有 Formality。形式驗(yàn)證為驗(yàn)證設(shè)計(jì)之間的等價(jià)性提供了極大的便利:形式驗(yàn)證不需要考慮測試向量;這是一個(gè)覆蓋率100%的驗(yàn)證。形式驗(yàn)證工具來保證修改前后的一致性,是非常高效的一種做法。
結(jié)束語:
本文從當(dāng)前數(shù)字集成電路的發(fā)展現(xiàn)狀出發(fā),闡述了引領(lǐng)當(dāng)前數(shù)字集成電路快速向前發(fā)展的前沿技術(shù):PLD技術(shù)、SoC技術(shù)和IP復(fù)用技術(shù),簡述了此三項(xiàng)技術(shù)之間的關(guān)系。從EDA技術(shù)的發(fā)展過程出發(fā),分析了EDA技術(shù)的內(nèi)涵、發(fā)展規(guī)律及其所面臨的挑戰(zhàn)和機(jī)遇,并深入剖析了EDA技術(shù)與當(dāng)前數(shù)字集成電路設(shè)計(jì)的相互關(guān)系和結(jié)合方法。數(shù)字集成電路科技在未來會(huì)越來越成為我們生活中必不可少的角色。
參考文獻(xiàn):
[1]于洋.數(shù)字集成電路[J].城市科技研究,2014,26(12):23-26.
[2]苗杰.關(guān)于數(shù)字集成電路應(yīng)用的討論[J].中國現(xiàn)代科技發(fā)展,2013,08(34);62-63.