隨著集成電路制造工藝水平的提高,半導(dǎo)體芯片上可以集成更多的功能,為了讓產(chǎn)品有別于競爭對手的產(chǎn)品特性,在ASIC上集成存儲器可以降低成本和功耗、改善性能、增加系統(tǒng)級芯片的可靠性。隨著對嵌入式存儲器需求的持續(xù)增長,其復(fù)雜性、密度和速度也日益增加,從而需要提出一種專用存儲器設(shè)計方法。
存儲器的外包設(shè)計
存儲器模塊都具有相對獨(dú)立的特性,在一個時鐘系統(tǒng)中它通常占用一個管道,從成本和人力資源兩方面考慮,許多芯片開發(fā)商都將存儲器模塊外包設(shè)計,因?yàn)?,與其它半導(dǎo)體芯片相比,在系統(tǒng)中定義和分離存儲器模塊要容易得多。此外,諸多因素促進(jìn)了存儲器編輯器及定制存儲器設(shè)計公司的發(fā)展,例如:存儲器模塊的標(biāo)準(zhǔn)模塊特性、對嵌入式存儲器的巨大市場需求以及存儲器核心采用的是系統(tǒng)設(shè)計人員不熟悉的新技術(shù),為了滿足緊迫的系統(tǒng)設(shè)計進(jìn)度要求,存儲器設(shè)計公司通過板上存儲器設(shè)計及時地為系統(tǒng)設(shè)計公司服務(wù)。
當(dāng)許多公司外包嵌入式存儲器設(shè)計時,也有許多公司遲遲遲疑不決。在外包設(shè)計過程中,要讓系統(tǒng)設(shè)計人員盡可能早地獲得引腳的位置、存儲芯片面積以及存儲器HDL模型,這樣,就能夠及時和高效地推出系統(tǒng)級芯片,同時不必?fù)?dān)心系統(tǒng)芯片的面積、性能和品質(zhì)問題。
獲取嵌入式存儲器設(shè)計的另一種方法是利用存儲器編譯器,它能夠快捷和廉價地設(shè)計存儲器物理模塊。盡管該方法很有效并且完全適合標(biāo)準(zhǔn)存儲器結(jié)構(gòu),但它存在若干缺陷。通常,編譯后的存儲器設(shè)計導(dǎo)出大量存儲器模塊,并造成系統(tǒng)的整體性能下降,另外,當(dāng)系統(tǒng)設(shè)計需要添加新的功能時,該設(shè)計方法靈活性較差。
與此相反,向存儲器定制設(shè)計公司定制嵌入式存儲器設(shè)計則大有裨益。定制存儲器可滿足系統(tǒng)對存儲器的突發(fā)需求,例如修改邏輯電路以便和存儲器核實(shí)現(xiàn)邏輯兼容。定制存儲器不是簡單地在芯片上嵌入標(biāo)準(zhǔn)存儲器模塊,然后圍繞存儲器的其它邏輯電路來綜合實(shí)現(xiàn)預(yù)想的功能。實(shí)際上,設(shè)計人員將邏輯電路直接植入存儲器模塊,從而使物理版圖與存儲器的存儲單元緊密結(jié)合,這就能減小芯片的總面積,從而實(shí)現(xiàn)較高的存儲密度,并提高芯片的性能,達(dá)到高速、緊湊、低耗電和布線簡潔的設(shè)計要求。
現(xiàn)有存儲器設(shè)計的復(fù)雜性需要完整的設(shè)計流程。本文介紹的設(shè)計方法包括設(shè)計概念、網(wǎng)表的建立、設(shè)計、布線以及存儲器模塊的驗(yàn)證,該方法可確保存儲器模塊在嵌入SoC時能有效地工作。
RISC中的存儲器設(shè)計
在500MHz、64位RISC微處理器的嵌入式存儲器設(shè)計中,片上存儲器速度要足夠快速,結(jié)構(gòu)要足夠復(fù)雜,否則無法與高速而復(fù)雜的微處理器相匹配。定制存儲器占據(jù)200mm2 處理器1/3以上的面積,包括:一級和二級高速緩存、將虛擬頁地址轉(zhuǎn)化為物理地址的兩級轉(zhuǎn)換后備緩存(TLB)、用于定點(diǎn)和浮點(diǎn)內(nèi)核的多端口寄存器文件以及查尋表(LUT)和通用存儲器(GP)等。高速緩存包含實(shí)現(xiàn)數(shù)據(jù)存儲、標(biāo)識及LRU功能的獨(dú)立存儲器。除了多端口存儲陣列之外,寄存器文件還包含用于地址翻譯和命名邏輯單元的ROM和CAM(見圖1)。
總之,要設(shè)計20個獨(dú)特的存儲器。
存儲器的復(fù)雜性和獨(dú)特性表明,采用存儲器編譯器并不完全可行,每種嵌入式存儲器都需要采用新的電路技術(shù)來設(shè)計,以便滿足微處理器的高性能、高密度、低功耗和極低噪聲的要求。
這樣的高速微處理器必須采用最先進(jìn)的0.18μm、6層銅線雙鑲嵌金屬CMOS工藝制作,其極小的特征尺寸和高性能的晶體管使存儲器設(shè)計面臨嚴(yán)峻的考驗(yàn),因?yàn)檎饘賹?dǎo)線(線高大于水平間距)尤其容易受到串?dāng)_及電子遷移效應(yīng)的影響,而晶體管的低閾值將導(dǎo)致抗噪聲性能降低。
嵌入式存儲器設(shè)計方法 要制定出每個設(shè)計人員都必須遵循的設(shè)計指南,首先要開發(fā)出一套設(shè)計標(biāo)準(zhǔn),該標(biāo)準(zhǔn)包括最優(yōu)門比率、扇出數(shù)目、最大晶體管寬度以及預(yù)布線阻抗和電容的經(jīng)驗(yàn)法則。在高密度、高速存儲器的設(shè)計過程中,要采用先進(jìn)的電路技術(shù)、抗串?dāng)_技術(shù)及噪聲容限設(shè)計標(biāo)準(zhǔn)。串?dāng)_標(biāo)準(zhǔn)規(guī)定了鄰近信號的布線規(guī)則,其它噪聲容限標(biāo)準(zhǔn)則規(guī)定靜態(tài)噪聲容限和鎖存電路的可寫性規(guī)則。
芯片的多種宏設(shè)計要求與電路標(biāo)準(zhǔn)保持一致。時鐘發(fā)生器和寄存器的標(biāo)準(zhǔn)尤為重要,它們是整個CPU輸入設(shè)置和保持時間維持一致的前提。為了使時鐘偏差最小,設(shè)計人員需要密切控制占空比和扇出數(shù)目以及所有時鐘發(fā)生器的上升和下降時間。
另外,我們采用可測性設(shè)計(DFT)方法,如掃描和全頻內(nèi)建自檢(BIST)方法來設(shè)計每個存儲器。毫無無疑,BIST技術(shù)比采用測試儀器測試要復(fù)雜得多,后者要將嵌入式存儲器的I/O信號復(fù)用到測試總線上,并通過布線連接到芯片的I/O端口以便測試儀器進(jìn)行測試。但是,BIST方法的優(yōu)點(diǎn)在于與測試儀器無關(guān),并可全頻測試存儲器。利用BIST復(fù)雜的測試功能,可以用標(biāo)記將故障與特定的例程或一個實(shí)際的I/O或一個存儲單元隔離。該特性可實(shí)現(xiàn)冗余處理和詳細(xì)的故障分析。BIST還具備測試存儲器功能和確定宏或存儲器最大工作頻率的能力,但通常無法計算宏的存取時間。
DFT方法雖然增加不到2%的開銷,但對存儲器的驗(yàn)證來說,其作用非常重要。采用這些技術(shù)及定制嵌入式ATE(自動測試設(shè)備)電路,我們已經(jīng)制作了一些測試芯片來驗(yàn)證存儲器設(shè)計過程中采用的復(fù)雜設(shè)計技術(shù)(圖2)。
現(xiàn)在,要驅(qū)動500MHz的外部I/O引腳很不實(shí)際,我們設(shè)計了專用嵌入式ATE電路來俘獲并評估嵌入式宏的實(shí)際存取時間。通過建立片上測試器,可確保采用低成本的數(shù)字測試器來驅(qū)動及評測芯片。
時序和功能驗(yàn)證 對高性能半導(dǎo)體芯片,精確的時序模型至關(guān)重要。為了提取嵌入式存儲器中關(guān)鍵路徑的特征并進(jìn)行仿真,要采用了Avant!公司的Hspice軟件。從仿真運(yùn)行時間來看,仿真整個宏的LPE網(wǎng)表是不切實(shí)際的,為此要采用集總和加載技術(shù)(見圖3)。
集總和加載方法是通用技術(shù),面臨分布式載荷造成的模型不精確的問題,并受到由阻容(RC)網(wǎng)絡(luò)引起的傳輸線效應(yīng)的影響。RC網(wǎng)絡(luò)不僅包含阻容元件,還包含要對柵極、源極和漏極電容精確建模的晶體管。為了獲得精確時序,要建立驗(yàn)證關(guān)鍵路徑中所有元件與實(shí)際宏的LPE網(wǎng)表之間匹配程度的工具。對我們感興趣的節(jié)點(diǎn),要比較關(guān)鍵路徑和LPE網(wǎng)表之間的引線、柵極、源極、漏極、耦合電容和電阻。當(dāng)這些參數(shù)不匹配時,就必須修正負(fù)載模型。
Hspice可以仿真溫度、P-T-V曲線并對每個角作出測量說明和繪圖分析,從而便于查找不正確的電路行為,例如分析信號偏移率變差的程度、由串?dāng)_引起的信號尖峰、不期望的脈沖重疊程度、傳輸延遲變壞的程度、時鐘電路的建立和保持時間變壞的程度等。
我們通常利用Verilog或VHDL模型來仿真整個SoC并對其建模。為了確保精確度,每個嵌入式存儲器都有一個與之對應(yīng)的Verilog模型,這樣才能確保電路的功能與HDL模型匹配。對每個存儲器,要建立全面的測試平臺來測試所有的地址組合、控制和測試模式(即掃描和BIST),然后,我們將測試矢量及其相關(guān)的預(yù)測數(shù)據(jù)應(yīng)用到每個宏的所有LPE網(wǎng)表。
如上所述,可以證明用Hspice仿真大型網(wǎng)表和大型測試向量集(通常有數(shù)千個向量)是不切實(shí)際的。為了彌合Hspice和Verilog之間的差距,要采用Synopsys公司的Timemill測試工具, 該工具可將邏輯等價性測試和電路的電性能驗(yàn)證結(jié)合起來,它可將向量驅(qū)動的全部存儲器的LPE網(wǎng)表作為輸入置于Verilog環(huán)境中進(jìn)行仿真,其優(yōu)點(diǎn)在于能檢測電路網(wǎng)表和Verilog模型之間功能上的差異,并具有良好時序精度,從而發(fā)現(xiàn)時序缺陷。Timemill測試工具不是故障仿真器,但是測試向量能夠涵蓋99%以上的待測節(jié)點(diǎn)。我們在與Hspice仿真相同的P-T-V曲線下運(yùn)行了Timemill測試。此外,還檢測了未驅(qū)動的節(jié)點(diǎn)、最低和最高工作頻率及P-T-V曲線的極端情形。
物理驗(yàn)證 我們還采用Mentor Graphics公司的Calibre工具來驗(yàn)證物理設(shè)計,并用完整的LVS和DRC規(guī)則基準(zhǔn)來檢驗(yàn)電路連接的正確性、所有的間距和寬度等,用附加的質(zhì)量保證規(guī)則基準(zhǔn)來檢驗(yàn)浮動層、阻抗連接和不期望出現(xiàn)的幾何結(jié)構(gòu)。
對于版圖的寄生參數(shù)抽取,要采用Mentor公司的xCalibre工具,它可生成用于Hspice關(guān)鍵路徑分析和Timemill仿真的LPE網(wǎng)表。為了達(dá)到精確抽取,版圖的層次必須與電路圖的層次匹配,此外,所有的饋通(feedthrough)必須嵌入頁元(leaf cell)中,這樣其寄生效應(yīng)才會在子電路的LPE網(wǎng)表中得到仿真。
LPE網(wǎng)表只能對關(guān)鍵路徑仿真進(jìn)行事后說明,但為了防止LPE預(yù)仿真和LPE后仿真的結(jié)果之間出現(xiàn)大的差異,這樣做有必要。假如我們要達(dá)到高性能的仿真結(jié)果,關(guān)注實(shí)際版圖的質(zhì)量對電路設(shè)計技術(shù)也至關(guān)重要,例如合并或共用信號源極或漏極、屏蔽時鐘信號線和解碼信號線組、以及使用多個觸點(diǎn)把電阻降到最小(在驅(qū)動大負(fù)載時,這點(diǎn)特別重要)。
質(zhì)量保證 除了上述步驟和檢驗(yàn)以外,在每個宏輸出到系統(tǒng)設(shè)計工程師之前,要對其進(jìn)行強(qiáng)化質(zhì)量保證分析。目前,EDA質(zhì)量保證工具正在形成之中,我們已經(jīng)開發(fā)了很多專用檢驗(yàn)工具。一級QA檢驗(yàn)工具專用于較小面積的存儲器開發(fā),用該工具能確保Hspice關(guān)鍵路徑網(wǎng)表加載與全版圖LPE網(wǎng)表準(zhǔn)確匹配。該工具還能分析整個LPE網(wǎng)表里的每個節(jié)點(diǎn),并檢驗(yàn)額外的驅(qū)動輸出和偏移率,它檢測到節(jié)點(diǎn)上的多個驅(qū)動器并找到易受電荷共享(特別是動態(tài)節(jié)點(diǎn))和串?dāng)_影響的節(jié)點(diǎn),然后要考慮耦合電容、驅(qū)動強(qiáng)度、接收器的噪聲容限以及相鄰節(jié)點(diǎn)的數(shù)量。檢驗(yàn)之后,設(shè)計工程師必須糾正或者調(diào)整上述檢驗(yàn)中有問題的節(jié)點(diǎn)。
我們采用一套特殊的DRC規(guī)則集對版圖進(jìn)行QA檢驗(yàn),該工藝找到具有阻性的連接點(diǎn)并檢查電源格的完整性以及超寬晶體管。典型的DRC規(guī)則無法檢查的阻性連接點(diǎn)或軟連接不會導(dǎo)致芯片的功能故障,但容易產(chǎn)生與頻率相關(guān)的問題或穩(wěn)定性故障。
為了滿足時序要求,設(shè)計工程師有時必須在噪聲容限和速度之間作出折衷。即便如此,所有電路都必須通過最小噪聲容限規(guī)則,否則當(dāng)把存儲器嵌入到整個CPU后,就存在故障隱患。存儲器、比例邏輯(偽NMOS邏輯)和動態(tài)邏輯門等電路都要經(jīng)過靜態(tài)和動態(tài)噪聲容限分析。對于那些在同一裸片上參數(shù)不匹配的器件(如差分傳感放大器),要通過蒙特卡洛Hspice分析,最后,存儲器單元和鎖存器要在所有P-V-T曲線上進(jìn)行可寫性測試。
功率分配和電源格的完整性對宏的性能有顯著影響。電壓IR降到Vdd,Vss上的電位抖動對噪聲容限、時序甚至電路的功能有重要影響,隨著電源電壓的降低和深亞微米特征尺寸Vts的減小,這個問題甚至?xí)夯?。?.18微米工藝中,窄線距必然電流密度高,從而增加了出現(xiàn)電子遷移故障的可能性。因?yàn)殡娏骱徒苟鸁釙斐苫ミB線特性的逐步退化,通常在幾個月或幾年后就可能發(fā)生電子遷移故障,如果故障出現(xiàn)得太早,那么就有可能造成災(zāi)難性的損失。
采用Synopsys公司的Powermill(Timemill的姊妹工具)仿真整個宏的電源,能按照放置的位置詳細(xì)描繪各子電路電源的電流圖,該電流圖和宏版圖的RC網(wǎng)表一起,輸入到分析電源總線IR壓降和電子遷移的工具中,該工具將指出任何有故障的線段或觸點(diǎn)/通孔,并允許設(shè)計工程師改進(jìn)總線,同時,輸出的版圖錯誤標(biāo)識圖、輪廓圖、3D電流和電壓分布圖有助于進(jìn)一步分析。
事實(shí)上,不僅限于最高速和最小加工工藝,即使0.35微米以上的工藝和 100MHz以下的速度,也可以采用上述QA流程對噪聲容限、串?dāng)_、IR壓降或電子遷移相關(guān)的故障進(jìn)行檢測和分析。
本文總結(jié) 在外包嵌入式存儲器設(shè)計的時候,一般都有明確的交付日期。在設(shè)計初期,存儲器設(shè)計工程師必須向系統(tǒng)設(shè)計工程師提供底層規(guī)劃圖、關(guān)于重要邊界和引腳位置的布局和布線約束條件。用戶還希望用精確的HDL模型來消除系統(tǒng)中出現(xiàn)的小錯誤。然后,存儲器設(shè)計工程師必須提交一個配備延遲和競爭查尋表或方程的時序庫,從而方便客戶對整個芯片邏輯和時序進(jìn)行仿真。當(dāng)前的拓?fù)鋱D有助于系統(tǒng)設(shè)計工程師對整個芯片的電源、IR壓降和電子遷移進(jìn)行分析。設(shè)計工具必須具備一個用于存儲器模塊測試的配備測試向量的測試基準(zhǔn)以及足夠的文檔。最終設(shè)計結(jié)果是完整的版圖數(shù)據(jù)庫,可以作為存儲器模塊直接放置到系統(tǒng)芯片上,同時還要提供包括仿真、時序、驗(yàn)證結(jié)果、設(shè)計細(xì)節(jié)、網(wǎng)表和電路圖在內(nèi)的完整設(shè)計文件。
嵌入式存儲器在半導(dǎo)體芯片中的作用非常重要,它向整個芯片提供的可互用特性決定了整個芯片的效率、速度和性能。只有設(shè)計方法可靠,才能設(shè)計出優(yōu)良的存儲器。
嵌入式存儲器易受外部噪聲的影響,因而要求比傳統(tǒng)的片外存儲器更嚴(yán)格。存儲器的設(shè)計通常要與整個芯片并行開始,所以工程師必須學(xué)會預(yù)測和實(shí)現(xiàn)精確的灰盒存儲器模型。
要保證嵌入式存儲器的質(zhì)量,必須建立嚴(yán)格的設(shè)計標(biāo)準(zhǔn),設(shè)計工程師在設(shè)計過程中,不僅要善于創(chuàng)新,還要堅持采用嚴(yán)格的設(shè)計方法和質(zhì)量保證工具,只有這樣才能取得設(shè)計的成功。