版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
精品文檔-下載后可編輯基于VHDL語言的IP核驗(yàn)證設(shè)計(jì)-設(shè)計(jì)應(yīng)用引言
代碼純化.指在代碼設(shè)計(jì)中及完成后進(jìn)行自定義的、IEEE標(biāo)準(zhǔn)的、設(shè)計(jì)重用的、可綜合性和可測試性等方面的規(guī)則檢查;
代碼覆蓋率分析.研究仿真中的測試矢量是否足夠;
設(shè)計(jì)性能和面積分析.在設(shè)計(jì)邏輯綜合過程中分析所設(shè)計(jì)的RTL所能達(dá)到的性能和面積要求;
可測性分析:IP核設(shè)計(jì)重用中的關(guān)鍵技術(shù)。如何保證IP核的高測試覆蓋率,如何保證IP核在集成到SoC中后的可測試性.是該階段分析的主要目標(biāo)。所以在IP核實(shí)現(xiàn)之前.要檢查IP核設(shè)計(jì)中是否違反了可測性設(shè)計(jì)規(guī)則;
低功耗分析:SoC的重要衡量指標(biāo)。我們在IP核設(shè)計(jì)階段就需要將TP核功耗參數(shù)進(jìn)行估計(jì)并進(jìn)行相應(yīng)的功耗優(yōu)化設(shè)計(jì);
基于此.本文重點(diǎn)討論在IC設(shè)計(jì)過程中IP核的驗(yàn)證測試問題并以互聯(lián)網(wǎng)上可的原始IP核資源為例.在與8位RISC架構(gòu)指令兼容的微處理器成功。
1IP核與RISC體系
1.1IP核
IP核是具有知識產(chǎn)權(quán)的集成電路芯核的簡稱其作用是把一組擁有知識產(chǎn)權(quán)的、在數(shù)字電路中常用但又比較復(fù)雜的電路設(shè)計(jì)功能塊(如FIR濾波器SDRAM控制器、PCI接口等)設(shè)計(jì)成可修改參數(shù)的集成模塊構(gòu)成芯片的基本單位,以供設(shè)計(jì)時直接調(diào)用從而大大避免重復(fù)勞動。
1.2RISC處理器
RISC(reducedinstructionsetcomputer.精簡指令系統(tǒng)計(jì)算機(jī))是IBM公司提出來的、在CISC(complerinstructionsetcomputer復(fù)雜指令系統(tǒng)計(jì)算機(jī))的基礎(chǔ),上繼承和發(fā)展起來的一種新型系統(tǒng)結(jié)構(gòu)技術(shù)。具有結(jié)構(gòu)簡單指令合理成本低廉快捷高效等特點(diǎn)。應(yīng)用前景被普遍看好。國際IT領(lǐng)域的大公司如IBM、DEC、Intel、ARM、Motorola、Apple、HP等先后將其力量轉(zhuǎn)向RISC.并已經(jīng)開發(fā)出各種基于RISC的芯片或IP核。
SoC是進(jìn)行IA(IntelArchitecture.智能家電)產(chǎn)品開發(fā)的主要方法.而基于RISC體系的EP(embeddedprocessor,嵌入式處理器)則是SoC芯片的??梢哉f,RISC是當(dāng)前計(jì)算機(jī)發(fā)展不可逆轉(zhuǎn)的趨勢。
1.3VHDI語言
VHDL(VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage.集成電路硬件描述語言)與VerilogHDL程序都很適合用來設(shè)計(jì)架構(gòu)RCMPreconfigurablemICroprocessor,可重新規(guī)劃的微處理器)。為此.我們利用VHDL設(shè)計(jì)一種嵌入式RISC8微處理器及應(yīng)用芯片.設(shè)計(jì)后的IP核到FPGA(FieldProgrammableGateArray.現(xiàn)場可編程門陣列)芯片上做驗(yàn)證,并在開發(fā)板構(gòu)建視頻接口模塊等以利于調(diào)試和應(yīng)用。
2IP核的仿真與測試
2.1SoC的測試策略
SoC芯片的測試比傳統(tǒng)的ASIC測試要復(fù)雜得多.全面的功能測試通常是不現(xiàn)實(shí)的目前常采用的策略是分別測試所有的電路功能模塊在SoC芯片中存在各種不同類型的電路模塊,每個模塊所要求的測試方式也不相同。SoC芯片中的模塊基本可以分為三類:CPU/DSP、存儲器模塊、其他功能電路模塊。CPU/DSP的測試與傳統(tǒng)的CPU/DSP測試類似.通常采用邊界掃描方式結(jié)合矢量測試方式。存儲器的測試一般采用BIST測試,比較快捷而容易控制。其他的電路模塊按設(shè)計(jì)難易程度或應(yīng)用方便性,采用邊界掃描或BIST。
2.2IP核的測試方案
IP核的研究平臺有很多種.但一般硬件仿真調(diào)試器費(fèi)用昂貴(幾千到數(shù)萬元),對于普通用戶來說難于承受。為此,本文利用的IP核進(jìn)行改寫,利用XilinxISE開發(fā)軟件和匯編語言翻譯過來的機(jī)器碼作為測試激勵,完成了RISC結(jié)構(gòu)的XilinxSpartan2系列的FPGA芯片CPU指令的驗(yàn)證和測試方案.具體方案如下:
(1)以VHDL/Verilog語言改寫或新寫8bitpipelinedRISC結(jié)構(gòu)之處理器模塊、內(nèi)存控制器模塊以及視頻控制接口模塊.然后通過XilinxISE4.1/5.2、ModelSim完成行為級仿真、綜合以及布局布線等。
(2)以某個應(yīng)用為例將C語言或匯編語言編寫的測試算法程序存儲在SRAM中.實(shí)現(xiàn)嵌入式處理器及視頻控制接口并到FPGA.從而生成一塊可編程的控制器芯片構(gòu)成一個簡化SoC應(yīng)用。
(3)如果SoC應(yīng)用成功.則可通過cell-BaseDesignFlow將其轉(zhuǎn)成ASIC版圖.實(shí)現(xiàn)流片。
2.3IP核的驗(yàn)證方法
在芯片的設(shè)計(jì)流程中設(shè)計(jì)的驗(yàn)證是一個重要而又費(fèi)時的環(huán)節(jié)。在進(jìn)行Top_Down設(shè)計(jì)時.從行為級設(shè)計(jì)開始到RTT級設(shè)計(jì)再到門級設(shè)計(jì)相應(yīng)地利用EDA工具進(jìn)行各個級別的仿真.行為仿真和RTL級仿真屬于功能仿真其作用是驗(yàn)證設(shè)計(jì)模塊的邏輯功能門級仿真是時序仿真用于驗(yàn)證設(shè)計(jì)模塊的時序關(guān)系無論是功能仿真或是時序仿真仿真方法有兩種.即交互式仿真方法和測試平臺法
(1)交互式仿真方法。該方法主要是利用EDA工具提供的仿真器進(jìn)行模塊的仿真它允許在仿真期間對輸入信號賦值,指定仿真執(zhí)行時間,觀察輸出波形。當(dāng)系統(tǒng)的邏輯功能、時序關(guān)系達(dá)到設(shè)計(jì)要求后,仿真結(jié)束。缺點(diǎn)是輸入輸出不便于記錄歸檔尤其是輸入量比較復(fù)雜時,輸出不便于觀察和比較
(2)程序仿真測試法。就是為設(shè)計(jì)模塊專門設(shè)計(jì)的仿真程序(也稱為測試程序),以實(shí)現(xiàn)對被測模塊自動輸入測試矢量,并通過波形輸出文件記錄輸出,便于將仿真結(jié)果記錄歸檔和比較。利用測試程序可以對一個設(shè)計(jì)模塊進(jìn)行功能仿真和時序仿真。
2.4IP核的測試仿真
綜上所述,下面給出RISC8測試仿真實(shí)例。該測試仿真大致可分為5個步驟
(1)給Wave(波形)窗口添加信號。首先添加的是RISC8的整體Structure(結(jié)構(gòu))信號。
(2)行為級仿真初步測試。在初步測試中.“portb”信號的輸出如果是“FX”,則說明系統(tǒng)必然存在問題;如果是“OX”則說明系統(tǒng)沒有發(fā)現(xiàn)問題要進(jìn)行進(jìn)一步的測試。
(3)行為級仿真進(jìn)一步測試。在進(jìn)一步測試中,要注意的信號是romaddr、romdata以及各種指令控制信號。
(4)源程序修改,再仿真。在上一步中定位到出錯的地方,然后回到源程序中找到所有出錯信號出現(xiàn)的地方,仔細(xì)分析,并結(jié)合波形圖進(jìn)行修改,然后重復(fù)上述步驟進(jìn)行再仿真。
(5)布圖布線后的仿真(后仿真)。事實(shí)上在行為級仿真與后仿真之間還有3個仿真過程,但一般來說只要能通過后仿真則其他的仿真也就沒有問題。
在后仿真過程中,看一下“portb”的輸出是否與行為級仿真一致,若一致則測試通過。如果不一致則必須返回原程序和行為級仿真,對時序進(jìn)行仔細(xì)分析(因?yàn)檫@種情況大都是因?yàn)榧尤胙舆t后原來的時序發(fā)生改變)。
3IP核在RISC架構(gòu)中的實(shí)例
3.1RISC處理器的選擇與指令的測試
我們選用MICrochip公司生產(chǎn)的PICl6c5x-XilinxSpartan2系列中的Xc2s150微處理器.因?yàn)槠銯PGA芯片架構(gòu)指令與8位RISC兼容.能夠很容易實(shí)現(xiàn)RISC架構(gòu)之指令集。
RISC的測試激勵文件是由匯編語言測試程序翻譯而得到的.例如test3程序測試循環(huán)移位.test5測試邏輯操作指令、test8測試端口等。
testl程序是測試incf和的decf指令的.行為級初步測試中,“portb”輸出為“01”,如3.3中所述,這并不能說明沒有問題接著做行為級進(jìn)一步測試
3.2測試激勵程序的加載步驟與驗(yàn)證
選擇“Project”萊單中的“NewsSource”選項(xiàng),在彈出的“New”對話框左側(cè)選擇文件類型為“TestBenchWaveform”,填入文件名,單擊下一步,在彈出的“select”對話框中選擇關(guān)聯(lián)的源為“anss_risc8_top”,單擊下一步.然后單擊“Finish”后會啟動HDLBencher.在這個軟件環(huán)境中可以輸入激勵信號將由匯編測試程序翻譯過來的機(jī)器碼信息作為激勵信號輸入保存.輸入測試時間后退出HDLBenche。
在進(jìn)一步測試中也沒有問題,然后,我們可將測試程序進(jìn)行如下改變.
incfx,f:X=FE
incfx,f;X=FF
incfx,f:X=00
incfx,f;X=01
decfx,f:X=00
decfx,f:X=FF
decfx,f:X=FE
將程序中的一個incf改為的decf.這樣制造了一個錯誤.重新進(jìn)行仿真,發(fā)現(xiàn)"portb"的輸出仍然為"01"而不是預(yù)想的"F1"。由此可見程序中存在問題。仔細(xì)分析后發(fā)現(xiàn)問題出現(xiàn)在“btfss”變?yōu)?時.此時alu_z為1而實(shí)際上它應(yīng)該是0。由于alu_z出現(xiàn)在算術(shù)邏輯運(yùn)算模塊ALU的一個子模塊alu_dp中,因此對alu_dp進(jìn)行分析,在wave窗口中加入alu_dp模塊的信號,同時在ISE4.1i中打開alu_dp的源文件進(jìn)行分析.經(jīng)分析發(fā)現(xiàn)alu_z變?yōu)?是由于源程序中對alu_z的處理不完備.少考慮了一種情況。根據(jù)這種情況對源程序alu_dp.vhd進(jìn)行修改如下:
a.signalbittest,temp:std_logIC_vector(7downto0);
--addsignaltemp
b.u_zero:process(bittest,op,longq)
begin
if(bittest=ZEROBYTE)andn
bsp;(op=ALU_OP_BITTESTCLR)
thenzero='1';
elsif(bittest/=ZEROBYTE)and(op=ALU_OP_BITTESTSET)
thenzero='1';
elsiflongq(7downto0)=ZEROBYTEand(op/=ALUOP_BITTESTSET)
thenzero='1';--newadd
elsiftemp="zerobyte"andop="ALUOP"_BITTESTSET
thenzero='1';--newadd
else
zero='0';
endif;
endprocess;
c.bittest=bitdecoderanda;
temp=bitdecoderora;--newadd
修改存儲源程序后再次仿真的結(jié)果是正確的(即portb輸出為“F1”)。將測試程序恢復(fù),仿真結(jié)果也是正確的。再進(jìn)行后仿真也正確.至此.test1程序測試完畢。
4結(jié)束語
集成電路發(fā)展到超大規(guī)模階段后,芯片中凝聚的知識已經(jīng)高度濃縮。專有知識產(chǎn)權(quán)的IP核設(shè)計(jì)及其再利用是保證SoC開發(fā)效率和質(zhì)的重要手段。隨著CPLD/FPGA的規(guī)模越來越大,設(shè)計(jì)越來越復(fù)雜,IP核是必然的發(fā)展趨勢。歡迎轉(zhuǎn)載,信息維庫電子市
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北省邯鄲市肥鄉(xiāng)區(qū)固中學(xué)、北高鎮(zhèn)中心校聯(lián)考2026屆九年級上學(xué)期10月期中考試數(shù)學(xué)試卷(含答案)
- 廣東省廣州市荔灣區(qū)2025-2026學(xué)年第一學(xué)期四年級數(shù)學(xué)期末試卷(無答案)
- 五年級數(shù)學(xué)上冊期中測試卷及答案
- 解讀教育部《中小學(xué)生健康體檢管理辦法(2021年版)》全文解讀
- 22春北京語言大學(xué)《漢語寫作》在線作業(yè)一答案參考8
- 七年級下語文課堂作業(yè)本答案第一單元
- 新部編人教版一年級數(shù)學(xué)上冊期末知識點(diǎn)及答案(三套)
- 電氣工程造價管理技術(shù)方法
- 深圳職工考試題庫及答案
- 人文地理常識試題及答案
- 2026年年長租公寓市場分析
- 生態(tài)環(huán)境監(jiān)測數(shù)據(jù)分析報告
- 2025年下半年四川成都溫江興蓉西城市運(yùn)營集團(tuán)有限公司第二次招聘人力資源部副部長等崗位5人考試參考試題及答案解析
- 煤炭裝卸施工方案(3篇)
- 八年級歷史上冊小論文觀點(diǎn)及范文
- 重慶康德卷2025-2026學(xué)年高一數(shù)學(xué)第一學(xué)期期末達(dá)標(biāo)檢測試題含解析
- 浙江省杭州市蕭山區(qū)2024-2025學(xué)年六年級上學(xué)期語文期末試卷(含答案)
- 設(shè)備隱患排查培訓(xùn)
- 2025至2030磷酸二氫鈉行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 國家事業(yè)單位招聘2025中國農(nóng)業(yè)科學(xué)院植物保護(hù)研究所招聘12人筆試歷年參考題庫附帶答案詳解
- 裝載機(jī)安全培訓(xùn)課件
評論
0/150
提交評論