王 渙
(中國(guó)電子科技集團(tuán)公司第四十七研究所,沈陽 110032)
上個(gè)世紀(jì)90年代初,由于集成電路制造技術(shù)和EDA 工具的快速發(fā)展,芯片設(shè)計(jì)規(guī)模和設(shè)計(jì)復(fù)雜度急劇提高,出現(xiàn)了一批像ARM 這樣的專門為第三方公司提供可復(fù)用的集成電路模塊的IP 供應(yīng)商。IP 供應(yīng)商的出現(xiàn)和SoC 設(shè)計(jì)方法學(xué)的普及,極大地促進(jìn)了集成電路設(shè)計(jì)業(yè)的發(fā)展,伴隨著IP的推廣和使用,也出現(xiàn)了一系列急需解決的問題。IP 供應(yīng)商需要提供怎樣的文件;IP 使用者如何才能快速對(duì)其進(jìn)行修改以適應(yīng)設(shè)計(jì)者的需要;如何解決IP的接口標(biāo)準(zhǔn)問題;如何建立一個(gè)相對(duì)客觀的IP 評(píng)價(jià)體系,實(shí)現(xiàn)對(duì)IP 質(zhì)量的評(píng)估;如何進(jìn)行IP 驗(yàn)證;如何有效地建立起IP的保護(hù)體系。這一系列問題的出現(xiàn),最終導(dǎo)致了IP 核標(biāo)準(zhǔn)的產(chǎn)生[1]。圖1為集成電路IP核標(biāo)準(zhǔn)體系。
IP 核的開發(fā)流程,大致分為以下幾個(gè)步驟:①IP 核開發(fā)指南的編寫;②IP 核的設(shè)計(jì);③IP 核的驗(yàn)證。
開發(fā)指南一般包括以下幾個(gè)部分:①目錄結(jié)構(gòu)管理規(guī)范;②可交付項(xiàng)規(guī)范;③文檔結(jié)構(gòu)規(guī)范指南;④文檔書寫標(biāo)準(zhǔn);⑤驗(yàn)證平臺(tái)開發(fā)指南;⑥Verilog HDL 編碼指南。
圖1 集成電路IP 核標(biāo)準(zhǔn)體系
在IP 核的開發(fā)過程中,都要遵循IP 核的各項(xiàng)開發(fā)文檔進(jìn)行,IP 核開發(fā)文檔流程如圖2 所示。
首先,要確定IP 核的規(guī)格。IP 核的規(guī)格至少包括以下內(nèi)容:概述、功能需求、性能需求、物理需求、詳細(xì)的結(jié)構(gòu)模塊框圖、對(duì)外系統(tǒng)接口的詳細(xì)定義、可配置功能詳細(xì)描述、需要支持的制造測(cè)試方法、需要支持的驗(yàn)證策略等。確定規(guī)格的過程一般又包括行為建模進(jìn)行功能論證,可行性分析就性能和成本進(jìn)行折中等活動(dòng)。
圖2 IP 核開發(fā)文檔流程
其次,進(jìn)行模塊劃分。劃分模塊是指規(guī)劃工程師在給出IP 結(jié)構(gòu)模塊框圖的同時(shí),對(duì)于每個(gè)子模塊給出一個(gè)詳細(xì)的功能描述,同時(shí)必須明確子模塊之間接口的時(shí)序要求。只有規(guī)劃好,才能夠設(shè)計(jì)好。確定規(guī)劃和劃分模塊是IP 開發(fā)是否成功最為關(guān)鍵的一步。
然后進(jìn)行子模塊定義和設(shè)計(jì)。設(shè)計(jì)者對(duì)所有子模塊的規(guī)格進(jìn)行討論和審查,重點(diǎn)檢查時(shí)序接口和功能接口的一致性,隨后整理出子模塊的詳細(xì)設(shè)計(jì)方案。接下來設(shè)計(jì)者按照實(shí)現(xiàn)方案開始編寫RTL代碼、編寫時(shí)間約束文件、綜合批處理文件、子模塊驗(yàn)證用測(cè)試平臺(tái)(testbench)和測(cè)試套件(test suite)等。當(dāng)這些工作完成并通過代碼規(guī)范性檢查、測(cè)試覆蓋率檢查、功能覆蓋率檢查等驗(yàn)收以后,這個(gè)子模塊就可用來與其他模塊一起集成了。
接著,進(jìn)行頂層模塊設(shè)計(jì)。頂層模塊設(shè)計(jì)就是把子模塊集成起來,產(chǎn)生頂層模塊,并對(duì)它做綜合處理和功能驗(yàn)證。綜合過程包括編寫綜合的批處理文件,在不同的參考庫上綜合,針對(duì)在制造上的可測(cè)性插入掃描鏈、ATPG,并進(jìn)行最終的性能分析和功耗分析等[2]。
最后是IP 核的產(chǎn)品化過程。包括以下幾個(gè)部分:提供IP 設(shè)計(jì)和驗(yàn)證用testbench,用商用轉(zhuǎn)換器進(jìn)行打包提交,但轉(zhuǎn)換后需要重新驗(yàn)證,比如做回歸測(cè)試以確保轉(zhuǎn)換有效,并強(qiáng)調(diào)在幾個(gè)主流仿真器上做仿真,在幾種主要工藝庫上做綜合,做門級(jí)仿真,做形式驗(yàn)證以保證網(wǎng)表和RTL 級(jí)的一致性,產(chǎn)生或更新用戶文檔等。
對(duì)于IP 核的驗(yàn)證,主要是建立參照模型和測(cè)試平臺(tái),然后進(jìn)行回歸測(cè)試和形式驗(yàn)證。
這里的參照模型主要用于對(duì)系統(tǒng)功能進(jìn)行驗(yàn)證以及和RTL 模型的對(duì)照驗(yàn)證,該模型主要用SystemC/SpecmanE/Vera/Verilog/VHDL 等語言來構(gòu)造。
測(cè)試平臺(tái)的建立與子模塊設(shè)計(jì)并行,由驗(yàn)證組的一些成員開始搭建驗(yàn)證環(huán)境和開發(fā)測(cè)試用例,并針對(duì)IP 核的行為級(jí)模型對(duì)測(cè)試環(huán)境和測(cè)試用例進(jìn)行調(diào)試,從而同步準(zhǔn)備好用來仿真測(cè)試RTL 級(jí)IP核的驗(yàn)證環(huán)境和測(cè)試用例。
回歸測(cè)試解決的問題是設(shè)計(jì)在修改一個(gè)錯(cuò)誤的同時(shí),卻引入了另外一個(gè)錯(cuò)誤?;貧w測(cè)試保證在修改一個(gè)錯(cuò)誤或加入一個(gè)新功能時(shí),已經(jīng)驗(yàn)證過的基本功能仍然正確。驗(yàn)證工程師應(yīng)該注意在驗(yàn)證過程中找到一個(gè)錯(cuò)誤,或加入一個(gè)新功能時(shí),要把它們對(duì)應(yīng)的測(cè)試用例及時(shí)加入到回歸測(cè)試集中。
形式驗(yàn)證是一種系統(tǒng)級(jí)的驗(yàn)證手段,不需要測(cè)試向量,而是根據(jù)“靜態(tài)”地通過判斷兩個(gè)設(shè)計(jì)是否等價(jià)來確認(rèn)它們的功能是否一致,因此,形式驗(yàn)證必須事先有一個(gè)參照設(shè)計(jì)。在IP 核驗(yàn)證過程中,前面建立的參照模型就是我們的參照設(shè)計(jì)。形式驗(yàn)證常用來判斷一個(gè)設(shè)計(jì)更改后和更改前實(shí)現(xiàn)的功能是否一致。同時(shí),形式驗(yàn)證也被用來確認(rèn)綜合后、插入掃描鏈后、版圖提取后網(wǎng)表實(shí)現(xiàn)的功能前后是否一致。
在IP 核開發(fā)過程中,同樣面臨著許多關(guān)鍵技術(shù),比如,IP的規(guī)格定義、基于接口的設(shè)計(jì)、IP 核測(cè)試存取結(jié)構(gòu)標(biāo)準(zhǔn)、IP 核的驗(yàn)證及打包等。隨著IP 核標(biāo)準(zhǔn)的完善,用戶將會(huì)更加方便快捷的選擇自己所需的IP 核產(chǎn)品。
[1]葉以正,肖立伊,謝學(xué)軍.國(guó)內(nèi)外IP 核標(biāo)準(zhǔn)發(fā)展?fàn)顩r[J].中國(guó)集成電路,2005(7):25-27.
[2]王寶友.VSIA 及其IP 核標(biāo)準(zhǔn)簡(jiǎn)介[J].信息技術(shù)與標(biāo)準(zhǔn)化,2004(10):42-44.