亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SoC FPGA的MIPS處理器驗證平臺設(shè)計

        2017-03-15 17:11:20張偉梁蓓
        電子技術(shù)與軟件工程 2017年2期
        關(guān)鍵詞:驗證

        張偉+梁蓓

        摘 要 隨著集成電路制程工藝的迅猛發(fā)展,數(shù)字集成電路復(fù)雜度越來越高,這對集成電路的驗證帶來了嚴(yán)峻挑戰(zhàn)。相比軟件仿真,數(shù)字芯片采用FPGA進(jìn)行邏輯驗證,可以大大提高驗證的速度。近年來,SoCFPGA的出現(xiàn)對于驗證平臺的設(shè)計提供了一種新的啟發(fā)。本文提出一種基于SoCFPGA的MIPS處理器驗證平臺的設(shè)計。采用ZYNQ芯片中的ARM主處理器實時控制監(jiān)測MIPS從處理器的運(yùn)行狀態(tài),來達(dá)到驗證MIPS處理器的目的。同時ARM主處理器運(yùn)行Linux操作系統(tǒng),在不需要斷電重新配置的情況下,通過執(zhí)行不同的C程序?qū)崿F(xiàn)不同功能的驗證,大大提高了MIPS處理器的驗證效率。

        【關(guān)鍵詞】驗證 SoCFPGA MIPS ARM

        1 引言

        隨著集成電路制程工藝水平的不斷提高,在現(xiàn)代集成電路設(shè)計中,ASIC芯片的復(fù)雜程度與集成規(guī)模與日俱增,這為ASIC芯片的驗證過程帶來了嚴(yán)峻的挑戰(zhàn)。芯片驗證的目的是為了保證電路的邏輯功能與性能滿足設(shè)計要求,其貫穿了整個芯片的設(shè)計過程。保證一次性流片成功,是芯片驗證的最高目標(biāo),如果流片失敗,不但會造成昂貴的流片費用損失,還會造成產(chǎn)品的推遲上市。整個芯片設(shè)計周期中,芯片驗證已經(jīng)占70%以上。這些因素都證明了芯片驗證的極其重要性,實現(xiàn)高效且低成本的驗證顯得尤為重要。目前大多數(shù)模塊的邏輯仿真主要采用加入工藝庫的軟件仿真,而系統(tǒng)級的芯片邏輯驗證由于電路規(guī)模較大,軟件仿真的速度與覆蓋率已經(jīng)不能滿足設(shè)計周期要求。FPGA(Field-Programmable Gate Array),在ASIC芯片邏輯驗證過程中是一種很有效的補(bǔ)充。由于FPGA的可重配置性,降低了流片失敗可能帶來的損失,加快了驗證速度。

        近年來,Xilinx推出了新一代嵌入ARM硬核的SoC FPGA—ZYNQ系列,相比傳統(tǒng)FPGA中使用軟核通用處理器性能提高很多,且不占用FPGA有限的邏輯資源和布局布線資源。本文利用ZYNQ芯片中嵌入ARM硬核的優(yōu)勢,提出了一種基于SoC FPGA的驗證平臺,通過使用ARM處理器做為主處理器,MIPS處理器作為從處理器,從而來對MIPS處理器設(shè)計過程進(jìn)行驗證。

        2 ZYNQ簡介

        ZYNQ-7000是Xilinx推出的新一代全可編程片上系統(tǒng)(All Programmable SoC),其中我們采用的ZC706開發(fā)套件的ZYNQ芯片包含一顆可配置的雙核ARM Cortex A9處理器(Processing System,PS部分),和基于28nm工藝的Xilinx FPGA(Programmable Logic,PL部分),我們將其稱為SoC FPGA。其中PS部分可以用于通用型流水線計算,由于其已經(jīng)集成在芯片上,不需要占用FPGA的邏輯資源和布局布線資源,而且性能很高。PL部分可以用于實現(xiàn)某些特殊算法的硬件加速與硬件擴(kuò)展,PL部分可以實現(xiàn)并行計算,能夠比通用處理器快6-8個數(shù)量級以上,而且PL部分的可重構(gòu)性,能夠靈活實現(xiàn)各種特殊算法的硬件加速。PS部分與PL部分通過芯片內(nèi)AMBA總線實現(xiàn)連接,帶寬很高,滿足了某些苛刻環(huán)境下的帶寬要求。

        3 MIPS處理器驗證平臺設(shè)計

        本文提出一種基于SoC FPGA(Xilinx ZYNQ)的MIPS處理器驗證平臺的設(shè)計。將PS部分的ARM處理器作為主處理器,MIPS處理器在PL部分實現(xiàn),其中ARM處理器上移植Linux操作系統(tǒng),配置交叉編譯環(huán)境,在運(yùn)行過程中ARM處理器實時監(jiān)控MIPS處理器的工作狀態(tài),以此達(dá)到驗證MIPS處理器功能的目的。

        3.1 基于SoC FPGA的原型系統(tǒng)驗證架構(gòu)

        基于SoC FPGA的原型系統(tǒng)驗證架構(gòu)如圖1,整體架構(gòu)的設(shè)計思想如下:

        (1)首先上電后MIPS處理器處于復(fù)位狀態(tài)。ARM主處理器通過AXI-Lite接口,將MIPS處理器運(yùn)行過程中所需要的指令和初始化數(shù)據(jù),從系統(tǒng)內(nèi)存寫入到Distributed RAM中。

        (2)寫入完成后,ARM主處理器通過AXI-Lite接口,寫入MIPS處理器啟動命令,結(jié)束MIPS 處理器的復(fù)位狀態(tài)。MIPS處理器開始從Distributed RAM中讀取指令和數(shù)據(jù)。

        (3)MIPS處理器執(zhí)行指令過程中,ARM主處理器將輪詢MIPS處理器的結(jié)束標(biāo)志。MIPS處理器完成所有指令執(zhí)行后,將設(shè)置結(jié)束標(biāo)志(Distributed RAM的固定地址)。

        (4)ARM處理器將計算結(jié)果從Distributed RAM中讀回到系統(tǒng)內(nèi)存,并打印到串口終端,從而能夠在屏幕上實時監(jiān)測MIPS處理器運(yùn)行狀態(tài)。

        3.2 AXI-Lite總線接口模塊設(shè)計

        ARM主處理器發(fā)出的指令能夠在AXI-Lite Slave接口完成譯碼,根據(jù)ARM發(fā)出的讀寫請求對Distributed RAM進(jìn)行操作。要求其能夠支持以下地址空間的尋址:AXI-Lite接口可尋址的范圍為0x00000000 – 0x00003FFF (16KB),其中包括8KB Distributed RAM空間,地址范圍為:0x00000000 – 0x00001FFF,并且在AXI-Lite接口模塊中加入一個1-bit寄存器,來實現(xiàn)啟動MIPS處理器的功能,地址為0x00002000。該寄存器將作為AXI-Lite接口的輸出信號,在正常復(fù)位后,該寄存器置為1。當(dāng)AXI-Lite接口收到對這個寄存器的寫命令時,就將寫入值(32-bit)的第0位取反后寫到這個1-bit寄存器中,來實現(xiàn)對MIPS處理器的復(fù)位操作。

        AXI-Lite Slave接口可尋址范圍為16KB,所以其地址寬度為14位,與ARM通過AXI總線連接,與Distributed RAM通過5個通道連接,分別是Address、Write_data、Read_data、MemWrite、MemRead。另外一位寄存器mips_reset輸出口與MIPS處理器的復(fù)位端相連。Distributed RAM空間大小為8KB,即2^13Byte,單個寄存器為32位(4Byte),需要2^11個寄存器,所以Distributed RAM地址為11位。Distributed RAM采用同步寫入異步讀取。

        為了對AXI-Lite Slave模塊與Distributed RAM模塊進(jìn)行仿真驗證,需要設(shè)計一個AXI-Lite Master模塊模擬ARM處理器對其進(jìn)行收發(fā)數(shù)據(jù),以對其邏輯功能進(jìn)行驗證,對這兩個模塊進(jìn)行仿真的結(jié)構(gòu)如圖2所示。

        AXI-Lite Master模塊代替ARM處理器進(jìn)行收發(fā)數(shù)據(jù),加入時鐘復(fù)位激勵,得到如圖3的仿真結(jié)果。

        3.3 MIPS處理器頂層設(shè)計

        mips_cpu_top需要將MIPS處理器模塊、AXI-Lite Slave模塊、Distributed RAM模塊包含進(jìn)來,另外需要添加一段組合邏輯,實現(xiàn)當(dāng)MIPS處理器對Distributed RAM進(jìn)行讀寫操作時,如果此時ARM通過AXI-Lite Slave模塊對Distributed RAM有讀請求,將數(shù)據(jù)32hFFFF_FFFF返回到ARM讀取的數(shù)據(jù),表示ARM讀取的數(shù)據(jù)錯誤。只有當(dāng)MIPS處理器停止對Distributed RAM進(jìn)行讀寫操作時,ARM處理器才能讀取到正確的數(shù)據(jù)。如圖4是對頂層的仿真結(jié)果。

        根據(jù)仿真波形可以看到,當(dāng)MIPS處理器對Distributed RAM進(jìn)行寫操作時,同時ARM主處理器對Distributed RAM進(jìn)行讀操作,讀到的數(shù)據(jù)為32hFFFF_FFFF。當(dāng)MIPS處理器進(jìn)行讀操作時,ARM主處理器同樣讀到錯誤的數(shù)據(jù)。只有當(dāng)MIPS主處理器對Distributed RAM沒有任何操作時,ARM主處理器才會讀取到正確的數(shù)據(jù)。頂層邏輯功能得到驗證。

        4 基于SoC FPGA的MIPS處理器驗證平臺實現(xiàn)

        4.1 比特流文件的生成

        驗證平臺具體的Block Design如圖5,MIPS處理器頂層包含了AXI接口模塊,Distributed RAM模塊以及MIPS處理器,對外只預(yù)留AXI總線結(jié)構(gòu),系統(tǒng)會自動為工程加入AXI Interconnect模塊與Processer System Reset模塊,經(jīng)過DRC檢查,添加時鐘約束,Vivado軟件生成可以配置SoC FPGA的比特流文件。

        4.2 ARM硬核上運(yùn)行Linux操作系統(tǒng)

        在ARM硬核上運(yùn)行Linux操作系統(tǒng)需要用到以下幾個文件:

        (1)BOOT.bin是引導(dǎo)程序,其組成包含3個文件:fsbl.elf、system.bit、u-boot.elf。主要用于初始化PL(FPGA部分)和PS(ARM部分)及引導(dǎo)內(nèi)核。fsbl.elf需要在SDK軟件中生成,system.bit為Vivado工程的比特流文件,u-boot.elf需要在Linux系統(tǒng)下編譯生成。使用SDK軟件可以將這3個文件生成BOOT.bin。

        (2)uImage是Linux內(nèi)核文件,需要在Linux操作系統(tǒng)下安裝交叉編譯環(huán)境后,編譯生成。

        (3)devicetree.dtb是設(shè)備樹文件,包含硬件配置信息的數(shù)據(jù)結(jié)構(gòu),包括CPU、內(nèi)存、總線及相關(guān)外設(shè),內(nèi)核啟動時,可以解析這些信息,以此來配置內(nèi)核及加載相關(guān)驅(qū)動。

        (4)Linaro文件系統(tǒng)。需要在Linux系統(tǒng)下解壓到SD卡的ext3分區(qū)。ramdisk文件系統(tǒng),需要存放于SD卡的fat32分區(qū)。

        有了以上文件后,我們就可以在ARM硬核上移植Linux操作系統(tǒng)。

        4.3 編譯運(yùn)行C程序

        將比特流文件燒寫到SoC FPGA中,啟動操作系統(tǒng),C程序在Linux操作系統(tǒng)下編譯并且執(zhí)行,ARM執(zhí)行該C程序的主要功能是將MIPS處理器所需的指令和數(shù)據(jù)寫入Distributed RAM中,并啟動MIPS處理器,MIPS處理器將從Distributed RAM中讀取指令及數(shù)據(jù),其執(zhí)行后的結(jié)果存放于Distributed RAM中,將由ARM在Distributed RAM中讀回到系統(tǒng)內(nèi)存中,并在串口調(diào)試工具界面中打印輸出。

        由圖6打印輸出的結(jié)果可以判斷,在SoC FPGA上實現(xiàn)了多周期MIPS處理器的驗證,ARM處理器將MIPS處理器執(zhí)行冒泡排序結(jié)果打印。后期可以編寫不同的C程序,讓MIPS處理器執(zhí)行其他更加復(fù)雜的功能,對MIPS處理器進(jìn)行更充分的驗證。

        5 結(jié)語

        本文提出了一種基于SoC FPGA的MIPS處理器驗證平臺的設(shè)計,對MIPS處理器的驗證提供了硬件仿真,提高了仿真速度。同時采用ARM主處理器實時控制監(jiān)測MIPS從處理器的方式,可以更加直觀的監(jiān)測MIPS處理器的運(yùn)行狀態(tài),并且ARM主處理器運(yùn)行Linux操作系統(tǒng),能夠在不斷電的前提下,通過執(zhí)行不同的程序,來對MIPS處理器進(jìn)行驗證,同時在驗證過程中采用C程序,極大的提高了驗證效率。

        參考文獻(xiàn)

        [1]Qinsheng M,Yang C,Jun Y,et al. Random testing for system-level functional verification of system-on-chip[J].系統(tǒng)工程與電子技術(shù)(英文版),2009,20(06):1378-1383.

        [2]Murphy P,F(xiàn)rantz J P,Welsh E,et al.VALID:Custom ASIC Verification and FPGA Education Platform[C]// International Conference on Microelectronics Systems Education. IEEE Computer Society,2003:64-65.

        [3]Devins R J.Processor-independent system-on-chip verification for embedded processor systems[J].South BurlingtonvtUssouthBurlingtonvtUsessexJunctionvt Us,2003.

        [4]Hutton M,Yuan R,Schleicher J,et al.A Methodology for FPGA to Structured-ASIC Synthesis and Verification[C]// Design,Automation and Test in Europe.IEEE,2006:64-69.

        [5]Crockett L H.The Zynqbook:embedded processing with the ARM Cortex-A9 on the Xilinx Zynq-7000 all programmable SoC[M].Strathclyde Academic Media,2014.

        [6]Wu Y,Song J,Ren K,et al.Research on LogGP Based Parallel Computing Model for CPU/GPU Cluster[J].2017.

        作者簡介

        張偉(1991-),男,在讀研究生,主要研究方向為繼承電路設(shè)計。

        梁蓓(1963-),女,貴州大學(xué)教授,碩士生導(dǎo)師,主要研究方向為集成電路設(shè)計。

        作者單位

        貴州大學(xué)大數(shù)據(jù)與信息工程學(xué)院 貴州省貴陽市 550025

        猜你喜歡
        驗證
        合理猜想,有效驗證
        晶閘管關(guān)斷特性的驗證解析
        小題也可大做
        彈藥保障需求分析實驗?zāi)P洼敵鰯?shù)據(jù)的驗證研究
        價值工程(2016年30期)2016-11-24 14:19:29
        汽車外后視鏡抖動問題模型的試驗驗證
        汽車科技(2016年5期)2016-11-14 08:08:15
        HPGe γ譜儀無源效率刻度軟件驗證
        科技視界(2016年18期)2016-11-03 20:31:07
        亚洲成av人片天堂网| 少妇被粗大的猛烈进出免费视频| 日韩精品一区二区三区在线观看的 | 日本成年少妇人妻中文字幕| 亚洲第一网站免费视频| 日韩人妻中文无码一区二区| 国产精品久久熟女吞精| 亚洲a级片在线观看| 日本高清www无色夜在线视频| 无码人妻一区二区三区免费看| 日本少妇又色又紧又爽又刺激 | 丝袜美腿丝袜美腿丝袜美腿丝袜| 久久久久久国产福利网站| 欧美性群另类交| 一本一本久久aa综合精品| 亚洲一区二区三区乱码在线中国| 女同中文字幕在线观看| 国产精品98视频全部国产| 日本不卡视频一区二区| 国产成人亚洲综合无码DVD| 国产女人高潮叫床视频| 女人av天堂国产在线| 亚洲香蕉av一区二区蜜桃| 亚欧AV无码乱码在线观看性色| 天堂网www资源在线| 校园春色日韩高清一区二区| 天啦噜国产精品亚洲精品| 曰本极品少妇videossexhd| 日韩精品极品视频在线观看免费 | 中文字幕精品久久天堂一区| 无套内谢的新婚少妇国语播放| 大屁股人妻女教师撅着屁股| 一区二区三区美女免费视频| 91精品国产自拍视频| 人妻精品人妻一区二区三区四五| 成人亚洲欧美久久久久| 亚洲人成网站77777在线观看 | 国产午夜视频在线观看| 欧美亚洲色综久久精品国产| 亚洲av永久无码精品一福利| 亚洲国产一区二区三区精品|