




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 SoC芯片驗(yàn)證芯片驗(yàn)證2目錄目錄 Why Verification Verification Alternatives3What is Design Verification?for (i = 0; i 3) p = p * 3; else q = q + r;always (posedge clk) begin if (rst=1b1) cnt = sv; else if (cnt=2b00) cnt = 2b01; else if (cnt=2b01) cnt = 2b10; else if (cnt=2b10) cnt = 2b11; else cnt = 1M Dollar NRE
2、 cost?8Bug Fixing Cost in Time Cost of fixing a bug/problem increases as design progresses. Need verification method at early design stageBehavioralDesignRTLDesignGate LevelDesignDeviceProductionCost ofFixinga Problem9Verification vs. TestingDesignSpecificationDesignCreationDesignImplementationHigh-
3、level specRTL designSynthesis/P&RChip ManufactureICsVerificationTesting Object design Methodologies Simulation Emulation Formal techniques Object chip Methodologies ATPG Fault Simulation Scan / BIST10Agenda Why Verification Verification Alternatives11Verification Alternatives Simulation FPGA Pro
4、totyping Formal Verification12Verification MethodologiesSimulationFormalVerificationPrototypingFaster speed, closer to final productFaster speed, closer to final productBigger coverageBigger coverageBasicBasicverificationverificationtooltool13Software Simulation Dynamic verification method Bugs are
5、found by running the design implementation. Thoroughness depends on the test vector used. Some parts are tested repeatedly while other parts are not even tested.a = 1;#20 b = 1;$display (“status is = %d”,c);.TestbenchTestbenchDUVDUVSome part of the design is tested repeatedly. Other parts are not ev
6、en tested.14Software Simulation Pros The design size is limited only by the computing resource. Simulation can be started as soon as the RTL description is finished. Set-up cost is minimal. Cons Slow (k cycles/sec) ; Speed gap between the speed of software simulation and real silicon widens. (Simula
7、tion speed = size of the circuit simulated / speed of the simulation engine) The designer does not exactly know how much percentage of the design have been tested.15RTL仿真仿真 所使用的工具:VCS or Modelsim 仿真步驟: 搭建RTL驗(yàn)證環(huán)境 編寫(xiě)RTL的testbench 編寫(xiě)ARM的測(cè)試代碼 把ARM測(cè)試代碼的二進(jìn)制文件加載到RTL驗(yàn)證環(huán)境中的RAM中 開(kāi)始運(yùn)行arm測(cè)試程序 觀察仿真波形,觀察調(diào)試信息16搭建搭
8、建RTL驗(yàn)證環(huán)境驗(yàn)證環(huán)境 以DMAC模塊的驗(yàn)證為例SOC芯片芯片DMACSRAM1 (CSA 16 *1)SRAM2 (CSB 8*1)SDRAM (CSE 16*1)SRAM (CSF 16*1)NAND (8*1)SSI模型模型17搭建搭建RTL驗(yàn)證環(huán)境(續(xù))驗(yàn)證環(huán)境(續(xù)) SoC芯片 ARM7TDMI AMBA DMAC模塊 SSI控制模塊 EMI INTC SoC芯片外接模型 SSI外設(shè)模型 SRAM模型 SDRAM模型 NAND模型18編寫(xiě)編寫(xiě)RTL testbench19編寫(xiě)編寫(xiě)RTL testbench 在初始化部分添加 系統(tǒng)復(fù)位信號(hào) 系統(tǒng)時(shí)鐘信號(hào)激勵(lì) 把SoC芯片的各個(gè)管腳連接
9、好 暫無(wú)用的輸入管腳置0或置1,暫無(wú)用的輸出管腳可懸空 和功能驗(yàn)證相關(guān)的管腳必須對(duì)應(yīng)連接好 每個(gè)片選上所接的存儲(chǔ)器須按存儲(chǔ)器的要求連接好各個(gè)信號(hào)線20編寫(xiě)編寫(xiě)arm測(cè)試代碼測(cè)試代碼 Arm初始化代碼 匯編文件中的復(fù)位異常處理 中斷處理 匯編文件中的IRQ異常處理 C文件中的中斷處理 C文件中的初始化代碼 在main.c文件中初始化PMC模塊,設(shè)置系統(tǒng)時(shí)鐘,打開(kāi)模塊的門(mén)控時(shí)鐘等。21編寫(xiě)編寫(xiě)arm測(cè)試代碼(續(xù))測(cè)試代碼(續(xù)) 在main.c文件中編寫(xiě)各個(gè)功能驗(yàn)證代碼 如驗(yàn)證存儲(chǔ)器到存儲(chǔ)器的數(shù)據(jù)傳輸 初始化DMA 設(shè)置存儲(chǔ)器源地址和存儲(chǔ)器目標(biāo)地址 設(shè)置傳輸?shù)臄?shù)據(jù)大小 開(kāi)始傳輸 中斷服務(wù)程序 讀取中
10、斷狀態(tài)寄存器,看傳輸是完成了還是發(fā)生錯(cuò)誤 如果是傳輸完成中斷,則讀出存儲(chǔ)器目標(biāo)地址的數(shù)據(jù),看是否正確。22把把ARM測(cè)試代碼的二進(jìn)制文件加載到測(cè)試代碼的二進(jìn)制文件加載到RTL驗(yàn)證環(huán)境中的驗(yàn)證環(huán)境中的RAM中中 Arm測(cè)試代碼在ADS或RVDS軟件開(kāi)發(fā)環(huán)境中編譯,生成axf文件 Axf需要轉(zhuǎn)換成文本文件asc,一行8位或16位,視CSA片選所接存儲(chǔ)器的寬度而定。 fromelf -vhx -8x1 “ssi.axf -o asc 把a(bǔ)sc加載到SoC的CSA片選所接的存儲(chǔ)器中 在RTL的testbench中編寫(xiě) $readmemh (asc,u_csa0.memory);23開(kāi)始編譯開(kāi)始編譯RT
11、L代碼并仿真代碼并仿真 vcs -f file_arm.f -l sim.log 其中file_arm.f文件中列出了所有的.v文件 Arm.v Amba.v Dmac.v Ssi.v Emi.v Intc.v Top.v Ssi_model.v Sdram.v Sram.v Nand.v Test.v24開(kāi)始運(yùn)行開(kāi)始運(yùn)行arm測(cè)試程序測(cè)試程序 在testbench中所加的復(fù)位和時(shí)鐘信號(hào)的激勵(lì)下 arm在復(fù)位后從0 x0地址取指令運(yùn)行 0 x0地址一般為片選CSA所接的存儲(chǔ)器25觀察仿真波形觀察仿真波形 普通、簡(jiǎn)單、基礎(chǔ)而又易被忽視的信號(hào)! CLK RESET_N 但是無(wú)論在仿真還是測(cè)試中都是
12、最重要的信號(hào)! CLKRESET_N26觀察仿真波形(續(xù))觀察仿真波形(續(xù)) 看arm是否正常取指令運(yùn)行 先取0 x0地址中的跳轉(zhuǎn)指令(e開(kāi)頭的指令),內(nèi)容是否正確可參考asc文件中的第一行。 下一個(gè)取的地址就不是0 x4,而是根據(jù)跳轉(zhuǎn)指令而跳轉(zhuǎn)到其它地址去取指令27觀察仿真波形(續(xù))觀察仿真波形(續(xù)) 觀察AMBA總線的信號(hào)是否正確 先看HTRANS信號(hào) 00:IDLE 01:BUSY 10:NONSEQ 11:SEQ28觀察仿真波形(續(xù))觀察仿真波形(續(xù))HBUSREQHGRANTx HSELx (Slave select signal)HLOCKHTRANS1:0 HBURST2:0HA
13、DDR31:0 HREADY (Slave response signal, transfer done.)HRESP1:0 HWDATA31:0 HRDATA31:0 HWRITE29觀察仿真波形(續(xù))觀察仿真波形(續(xù)) 看DMAC模塊的接口信號(hào)波形 如果是存儲(chǔ)器到外設(shè)的傳輸 看存儲(chǔ)器的接口信號(hào) 看相應(yīng)外設(shè)的接口信號(hào) SSI30觀察調(diào)試信息觀察調(diào)試信息 如何把C代碼中打印的調(diào)試信息打印到VCS仿真運(yùn)行的控制臺(tái)中? 在SoC芯片的頂層文件中例化Tube模塊,作為一個(gè)AHB slave設(shè)備,設(shè)占用的地址為0 x1100c000。 Tube模塊接收往0 x1100c000地址所寫(xiě)的字符并保存到lo
14、g文件中。 在arm測(cè)試代碼中的retarget.c文件實(shí)現(xiàn)print函數(shù),print函數(shù)把要打印的調(diào)試信息發(fā)送到0 x1100c000 地址 則arm代碼調(diào)用print函數(shù),即可把調(diào)試信息打印到VCS仿真運(yùn)行的控制臺(tái)中。31Verification Alternatives Simulation FPGA Prototyping Formal Verification32Prototyping Imitating the function of another system to achieve the same results as the imitated system. Usually
15、, the prototyping hardware comprises FPGAs. More than 10000 times faster than simulation.SimulationPrototyping33PrototypingProsHigher clock rate (up to 100M cycles/sec) due to specific design of prototyping board.Components as well as the wiring can be customized for the corresponding application.Ca
16、n be carried along. ConsNot flexible for design change (Every new prototype requires a new board architecture. / Even a small change requires a new PCB.)34A Prototyping Example35FPGA驗(yàn)證驗(yàn)證 FPGA選型 FPGA設(shè)計(jì)步驟 FPGA軟件開(kāi)發(fā)工具 FPGA電路板 結(jié)果觀察36FPGA選型選型 Altera于1983年創(chuàng)立 ,是可編程芯片邏輯解決方案倡導(dǎo)者 。目前,Altera的全球市場(chǎng)份額已排在第二位,僅次于Xili
17、nx Altera產(chǎn)品系列 Altera目前的FPGA產(chǎn)品有Stratix系列(IV)、Arria系列(II)、Cyclone 系列(III) STRATIX II 系列(90-nm) (EP2S90、EP2S130) STRATIXIII系列(EP3S150)(65-nm )37FPGA的設(shè)計(jì)步驟的設(shè)計(jì)步驟FPGAFPGA開(kāi)發(fā)流程和開(kāi)發(fā)流程和ICIC的開(kāi)發(fā)流程相似,主要分為以下幾個(gè)部分:的開(kāi)發(fā)流程相似,主要分為以下幾個(gè)部分: 1 1)設(shè)計(jì)輸入,利用)設(shè)計(jì)輸入,利用HDLHDL輸入工具、原理圖輸入工具或狀態(tài)機(jī)輸入輸入工具、原理圖輸入工具或狀態(tài)機(jī)輸入工具等把所要設(shè)計(jì)的電路描述出來(lái);工具等把所要設(shè)
18、計(jì)的電路描述出來(lái); 2 2)功能驗(yàn)證,也就是前仿真,利用)功能驗(yàn)證,也就是前仿真,利用ModelsimModelsim、VCSVCS等仿真工具對(duì)等仿真工具對(duì)設(shè)計(jì)進(jìn)行仿真,檢驗(yàn)設(shè)計(jì)的功能是否正確;設(shè)計(jì)進(jìn)行仿真,檢驗(yàn)設(shè)計(jì)的功能是否正確; 3 3)綜合,綜合優(yōu)化是把)綜合,綜合優(yōu)化是把HDLHDL語(yǔ)言翻譯成最基本的與或非門(mén)的連接語(yǔ)言翻譯成最基本的與或非門(mén)的連接關(guān)系(網(wǎng)表),并根據(jù)要求(約束條件)優(yōu)化所生成的門(mén)級(jí)邏輯關(guān)系(網(wǎng)表),并根據(jù)要求(約束條件)優(yōu)化所生成的門(mén)級(jí)邏輯連接,輸出連接,輸出vqm/edf/ednvqm/edf/edn等文件,導(dǎo)給等文件,導(dǎo)給CPLD/FPGACPLD/FPGA廠家的軟
19、件進(jìn)行廠家的軟件進(jìn)行實(shí)現(xiàn)和布局布線。常用的專(zhuān)業(yè)綜合優(yōu)化工具有實(shí)現(xiàn)和布局布線。常用的專(zhuān)業(yè)綜合優(yōu)化工具有SynplicitySynplicity公司的公司的Synplify/Synplify ProSynplify/Synplify Pro、AmplifyAmplify等綜合工具,等綜合工具,SynopsysSynopsys公司的公司的FPGA Compiler IIFPGA Compiler II綜合工具。綜合工具。38FPGA的設(shè)計(jì)步驟的設(shè)計(jì)步驟 4 4)布局布線,綜合的結(jié)果只是通用的門(mén)級(jí)網(wǎng)表,只是一些門(mén)與)布局布線,綜合的結(jié)果只是通用的門(mén)級(jí)網(wǎng)表,只是一些門(mén)與或非的邏輯關(guān)系,與芯片實(shí)際的配置情
20、況還有差距。此時(shí)應(yīng)該使或非的邏輯關(guān)系,與芯片實(shí)際的配置情況還有差距。此時(shí)應(yīng)該使用用FPGA/CPLDFPGA/CPLD廠商提供的實(shí)現(xiàn)與布局布線工具,根據(jù)所選芯片的廠商提供的實(shí)現(xiàn)與布局布線工具,根據(jù)所選芯片的型號(hào),進(jìn)行芯片內(nèi)部功能單元的實(shí)際連接與映射。這種實(shí)現(xiàn)與布型號(hào),進(jìn)行芯片內(nèi)部功能單元的實(shí)際連接與映射。這種實(shí)現(xiàn)與布局布線工具一般要選用所選器件的生產(chǎn)商開(kāi)發(fā)的工具,因?yàn)橹挥芯植季€工具一般要選用所選器件的生產(chǎn)商開(kāi)發(fā)的工具,因?yàn)橹挥猩a(chǎn)者最了解器件內(nèi)部的結(jié)構(gòu),如在生產(chǎn)者最了解器件內(nèi)部的結(jié)構(gòu),如在ISEISE的集成環(huán)境中完成實(shí)現(xiàn)的集成環(huán)境中完成實(shí)現(xiàn)與布局布線的工具是與布局布線的工具是Flow Engi
21、neFlow Engine。 5 5)時(shí)序驗(yàn)證,其目的是保證設(shè)計(jì)滿足時(shí)序要求,即)時(shí)序驗(yàn)證,其目的是保證設(shè)計(jì)滿足時(shí)序要求,即setup/hold setup/hold timetime符合要求,以便數(shù)據(jù)能被正確的采樣。時(shí)序驗(yàn)證的主要方法符合要求,以便數(shù)據(jù)能被正確的采樣。時(shí)序驗(yàn)證的主要方法包括包括STASTA(Static TimingAnalysisStatic TimingAnalysis)和后仿真。在后仿真中將布)和后仿真。在后仿真中將布局布線的時(shí)延反標(biāo)到設(shè)計(jì)中去,使仿真既包含門(mén)延時(shí),又包含線局布線的時(shí)延反標(biāo)到設(shè)計(jì)中去,使仿真既包含門(mén)延時(shí),又包含線延時(shí)信息。這種后仿真是最準(zhǔn)確的仿真,能較好
22、地反映芯片的實(shí)延時(shí)信息。這種后仿真是最準(zhǔn)確的仿真,能較好地反映芯片的實(shí)際工作情況。仿真工具與綜合前仿真工具相同。際工作情況。仿真工具與綜合前仿真工具相同。 6 6)生成并下載)生成并下載BITBIT或或PROMPROM文件文件(sof/pof/jic)(sof/pof/jic),進(jìn)行板級(jí)調(diào)試。,進(jìn)行板級(jí)調(diào)試。39FPGA的設(shè)計(jì)步驟的設(shè)計(jì)步驟 在以上幾個(gè)主要開(kāi)發(fā)步驟當(dāng)中,屬于驗(yàn)證的有功能仿真在以上幾個(gè)主要開(kāi)發(fā)步驟當(dāng)中,屬于驗(yàn)證的有功能仿真和時(shí)序驗(yàn)證兩個(gè)步驟,由于前仿真和后仿真涉及驗(yàn)證環(huán)和時(shí)序驗(yàn)證兩個(gè)步驟,由于前仿真和后仿真涉及驗(yàn)證環(huán)境的建立,需要耗費(fèi)大量的時(shí)間,而在境的建立,需要耗費(fèi)大量的時(shí)間,
23、而在STASTA中對(duì)時(shí)序報(bào)中對(duì)時(shí)序報(bào)告進(jìn)行分析也是一個(gè)非常復(fù)雜的事情,因此驗(yàn)證在整個(gè)告進(jìn)行分析也是一個(gè)非常復(fù)雜的事情,因此驗(yàn)證在整個(gè)設(shè)計(jì)流程中占用了大量的時(shí)間,在復(fù)雜的設(shè)計(jì)流程中占用了大量的時(shí)間,在復(fù)雜的FPGA/ICFPGA/IC設(shè)計(jì)設(shè)計(jì)中,驗(yàn)證所占的時(shí)間估計(jì)在中,驗(yàn)證所占的時(shí)間估計(jì)在60607070之間。之間。 相比較而言,相比較而言, FPGAFPGA設(shè)計(jì)流程的其他環(huán)節(jié)由于需要人為設(shè)計(jì)流程的其他環(huán)節(jié)由于需要人為干預(yù)的東西比較少,例如綜合、布局布線等流程,基本干預(yù)的東西比較少,例如綜合、布局布線等流程,基本所有的工作都由工具完成,設(shè)置好工具的參數(shù)之后,結(jié)所有的工作都由工具完成,設(shè)置好工具的
24、參數(shù)之后,結(jié)果很快就可以出來(lái),因此所花的時(shí)間精力要比驗(yàn)證少的果很快就可以出來(lái),因此所花的時(shí)間精力要比驗(yàn)證少的多。多。40FPGA軟件開(kāi)發(fā)工具軟件開(kāi)發(fā)工具 主要用到的軟件有兩個(gè):主要用到的軟件有兩個(gè):Synplify和和Quartus Snplify 用來(lái)做綜合用來(lái)做綜合 Quartus 用來(lái)做布局布線、時(shí)序驗(yàn)證、生成燒錄文用來(lái)做布局布線、時(shí)序驗(yàn)證、生成燒錄文件件41FPGA電路板電路板 電源 綜合考慮FPGA芯片所需的電源電壓、電路板上其他芯片所需的電源電壓 考慮是否需要電源轉(zhuǎn)換芯片 時(shí)鐘 外接晶振 外接電路 存儲(chǔ)器 SSI外設(shè),如觸摸屏的觸摸點(diǎn)電壓數(shù)據(jù)傳送 發(fā)光二極管 接口芯片以引出較多管腳來(lái)觀察信號(hào) 42FPGA結(jié)果觀察結(jié)果觀察 萬(wàn)用表測(cè)量電壓 看某個(gè)發(fā)光二極管的亮滅 用邏輯分析儀來(lái)觀察引出的管腳信號(hào)43Verification Alternatives Simulation FPGA Prototyping Formal Verification44Formal Verification Objective Check coincidence of circuit and m
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 觸電安全教育托班教案
- 合作社農(nóng)業(yè)生產(chǎn)合作運(yùn)營(yíng)協(xié)議
- 行政管理經(jīng)濟(jì)法重點(diǎn)體系試題及答案
- 2025年??谑协偵絽^(qū)九年級(jí)中考語(yǔ)文一模試卷附答案解析
- 目標(biāo)明確2025年中級(jí)經(jīng)濟(jì)師試題及答案
- 行政管理公共關(guān)系學(xué)職業(yè)發(fā)展試題及答案
- 項(xiàng)目經(jīng)理安全b證考試試題及答案
- 職高本科考試試題及答案
- 節(jié)約糧食主題班會(huì)教育
- 班級(jí)工作計(jì)劃整體資源
- 500KV變電站設(shè)備、接線特點(diǎn)及保護(hù)配置原則
- 第十章-老年人的臨終護(hù)理課件
- 結(jié)構(gòu)化學(xué)大綱
- 康復(fù)評(píng)定學(xué)第三章肌力
- 圖形創(chuàng)意(高職藝術(shù)設(shè)計(jì))PPT完整全套教學(xué)課件
- 2023年財(cái)會(huì)金融-注冊(cè)會(huì)計(jì)師-審計(jì)(官方)考試歷年真題甄選版帶答案
- 2023學(xué)年完整公開(kāi)課版粘壓阻力
- YY/T 0299-2022醫(yī)用超聲耦合劑
- MT 181-1988煤礦井下用塑料管安全性能檢驗(yàn)規(guī)范
- GB/T 193-2003普通螺紋直徑與螺距系列
- 因納特工商管理綜合實(shí)訓(xùn)軟件V4.00
評(píng)論
0/150
提交評(píng)論