999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的微體系結構驗證平臺

2013-01-01 00:00:00王宇劉宏偉
智能計算機與應用 2013年3期

摘 要: 構建了一種針對不同微體系結構的功能驗證硬件平臺,該平臺以FPGA芯片為核心;同時設計了與該平臺相適應的微體系結構性能分析軟件并介紹了該軟件的具體功能;研究了開源軟核處理器OpenRISC的微體系結構,將該軟核處理器移植到現有開發板上并在開發板上對其進行了評測,從而驗證了該微體系結構驗證平臺的基本功能。

關鍵詞: 微體系結構; 驗證平臺; FPGA

中圖分類號: TP39141 文獻標識碼: A 文章編號:2095-2163(2013)03-0044-04

The Microarchitecture Verification Platform based on FPGA

WANG Yu, LIU Hongwei

(School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)

Abstract: A function verification platform based on FPGA is constructed for different microarchitecture. Performance analysis software is designed for this platform. Function of the software is introduced. The microarchitecture of open source soft-core processor OpenRISC is researched, transplanted to the development board and tested to verify the basic function of this verification platform.

Key words: Microarchitecture; Verification Platform; FPGA

0 引 言

微處理器的研究是計算機科學與技術的核心研究內容之一,其更新換代更是計算機行業迅速發展的強勁動力。而微處理器的演變一方面依賴于生產工藝上的進步,另一方面則取決于其微體系結構上的設計。從科學計算、工業應用再到民用數碼產品,應用領域的拓寬和專用計算機發展的迫切需求正期待著新型體系結構的誕生。而一個新的微體系結構的出現是否符合其應用領域更高層次的需求則需要一個評價環境或平臺。在計算機微體系結構的研究領域,對于不同微體系結構的處理器的性能驗證,更多地是通過理論分析來進行和完成的,再通過對數學模型的建立和分析,得出最終結論。此外,軟件仿真也是常用的方法。這兩種方式在一定程度上雖然能夠對系統性能進行客觀、科學評價,但仍存在其局限性,例如,數學模型的分析效果與模型建立的精確程度密切相關;而軟件仿真則更是只能對微處理器的部分性能指標進行模擬,而不可能仿真實現所有環節。經過研究分析可知,一個通用的硬件驗證平臺則可以彌補模型仿真的不足,實現更為貼近實際的效果評價。這種平臺對微體系結構的研究和微處理器的開發都大有助益。具體來說,可以幫助研究開發者縮短設計周期,在第一時間快速驗證設計的正確性;同時,不同微體系結構的處理器也可以在這個平臺上進行性能的比較。

國外現有的驗證平臺可分為軟件模擬平臺和硬件驗證平臺。

其中,軟件模擬平臺是通過軟件模擬系統來對CPU設計進行正確性驗證。常見的軟件模擬工具有:Simics、Synopsys公司的VCS、Cadence公司的NC Verilog和Verilog XL、Mentor Graphics公司的ModelSim等[1]。前述工具中,Simics仿真平臺是一種商用仿真系統,在追求性能的同時,也保證了仿真的精度[2]。

另外,硬件驗證平臺則是對原型實物在電路板上進行實際驗證。

其中,BEE系統由美國Berkeley大學開發,是一種基于多FPGA的可重構硬件平臺,屬于較高端的仿真計算系統[3]。

RAPIDO項目由菲利普研究院主持,包含兩個部分:原型系統和PC機。原型系統為含有FPGA和ARM核的處理器以及存儲器的嵌入式系統,并通過PCI-to-PCI橋與PC機相連[4]。

如果一個待測試的系統已經形成了完整的機器,使用真實的應用來進行測試則是很好的方法[5],事實上,常常使用的是基準測試程序,例如SPEC CPU基準程序集。該程序集由整數程序和浮點程序組成,其性能評價的標準是程序的運行時間[6]。

國內的硬件驗證平臺主要分為兩大類。

一類是專門面向特定款微處理器的,例如,國防科大的多核流體系結構原型驗證平臺,該平臺基于多FPGA實現,設計了片間流優化機制,可支持多核流體系結構的互聯映射[7]。又如,中國科學院計算技術研究所開發的針對高性能處理器龍芯2F的硬件驗證平臺,既能驗證其邏輯功能,又能測試其性能指標[8]。

而另一類平臺則以面向基礎教學為主。例如,清華科教儀器廠出品的TEC-XP與TEC-CA,這兩種系統有自己的指令系統和監控程序,能夠與PC機相連,可進行聯機操作和執行比較完整的程序,用戶可自行設計帶有流水及Cache的處理器,而該系統可對其跟蹤運行[9]。另有一種FD-MCES計算機體系結構實驗儀,采用FPGA為主芯片,配有實驗控制電路、鍵盤、打印機、開關、LED等,可完成RISC計算機系統結構相關實驗[10]。還有一部分教學實驗平臺只能對確定的處理器進行驗證,指令系統不可修改[11]。

本文設計了一種基于FPGA的微體系結構驗證平臺,該平臺由FPGA硬件驗證板和上位機軟件分析系統組成。其實現的功能為:可以將設計完成的微處理器下載到FPGA芯片當中,由硬件驗證板構成該微處理器能夠正常工作的最小系統,同時,板上擁有可簡單顯示處理器性能指標的光電資源;硬件驗證板也可以和上位機進行通信,將該處理器工作時的性能參數傳輸給上位機,由運行在上位機的軟件系統進行分析,從而,為微體系結構的分析研究提供依據。由于條件所限,該平臺的硬件部分沒有實際制作,本文通過使用現有的開發板,搭建了一個原型系統,驗證了該平臺的功能。

1 硬件驗證板的設計

1.1 硬件平臺的基本功能第3期 王宇,等:基于FPGA的微體系結構驗證平臺 智能計算機與應用 第3卷

硬件驗證板是整個系統的基礎,為微處理器的工作提供了底層平臺,其邏輯框圖如圖1所示。該硬件平臺具有的功能主要有:下載調試、基本輸入/輸出、串行通信、功能擴展。

圖1 硬件平臺的邏輯框圖

Fig.1 Logical block diagram of the hardware platform

1.2 硬件平臺的結構

硬件驗證平臺的設計以FPGA為核心,外圍電路有:電源模塊、JTAG下載調試模塊、顯示輸出模塊、基本輸入模塊、串行通信模塊以及功能擴展接口。其平面結構如圖2所示。

在整個硬件平臺系統中,串行通信模塊、輸入模塊中的去抖動單元、顯示輸出模塊中的程序運行周期數統計單元等是在FPGA芯片上實現的,而其他部分則要通過分立元件在電路板上實現。

1.3 硬件平臺的工作流程

當微處理器下載到FPGA芯片中,輸入輸出模塊為其基本功能的驗證提供了切實有效的保障,可以運行一段代碼以測試處理器對IO的讀寫控制。輸入模塊中提供的微動開關可以取代時鐘電路而為CPU的運行提供手動脈沖時鐘信號,以實現指令的單拍運行;同時,顯示輸出模塊的數碼管會實時顯示處理器內部各相關流水段寄存器的最新狀態,還可以統計一段代碼運行的周期數,以比較不同體系結構對于程序執行效率的影響。串行通信模塊則采集了與系統性能指標相關的更多參數,并實時傳送給系統計算機,供軟件系統使用。功能擴展模塊則為進一步的應用預留了發展空間,預留的接口可以安排SD卡讀寫接口、以太網接口、VGA視頻接口等等,以利于對加載了操作系統后更為復雜的系統性能進行全面測試。

圖2 硬件平臺的平面結構圖

Fig.2 Planar structure diagram of the hardware platform

2 軟件評測系統的設計

2.1 軟件系統的基本功能

軟件系統的功能是通過JTAG接口進行FPGA下載,并讀取由串行接口發送的性能指標相關數據,而且還要對其進行分析。本系統對待測處理器跟蹤監測的功能除了在硬件平臺上進行呈現之外,還可通過PC機軟件界面顯示更多的信息。在這一過程中,PC機和硬件平臺通過串行接口進行實時通信,硬件平臺將微處理器的各種狀態參數隨時發送給PC機,而在軟件界面上,這些信息則將以文字和圖形化的方式加以清晰顯示。圖3為軟件平臺的邏輯結構。

圖3 軟件平臺邏輯結構圖

Fig.3 Logical structure of the software platform2.2 軟件系統實現的CPU性能評價

除基本功能外,軟件平臺還將對性能參數進行處理,以得到量化的處理器基本性能指標,如計算每一條指令的平均時鐘周期數CPI:

CPI=CPU時鐘周期數/IC

(1)

其中,IC為指令的條數。

計算CPI所需的參數將由FPGA傳送給CPU。

同時,還可計算MIPS(每秒百萬條指令數):

MIPS=時鐘頻率CPI×106

(2)

一定程度上,MIPS可反映系統的性能。

另外,軟件平臺還將統計得到Cache命中率與Cache容量的關系、與塊大小的關系、與組數的關系,并以圖形的方式加以繪制和實現。

該軟件還可實現對流水線的跟蹤分析。隨著系統的單步運行,軟件界面上將動態、同步顯示流水線的時空圖,而且還將計算出流水線的實際吞吐率,計算公式為:

其中,n為任務數,k為流水的段數,Δt為時鐘周期。

此外,還可以計算流水線的加速比、流水線的效率等性能參數。

3 OpenRISC處理器的功能驗證

為了對系統自身功能進行驗證,還需要一款能充分利用本系統功能的微處理器。本文采用32位的開源軟核處理器OpenRISC,對該處理器的指令系統、尋址方式、數據表示、寄存器結構以及5級流水線結構、具有Cache的存儲系統在開發驗證平臺上進行跟蹤測試。

OpenRISC是開放源代碼的精簡指令集計算機處理器,采用Verilog HDL實現了寄存器傳輸級描述。其性能介于ARM7和ARM9之間[12]。在對該處理器微體系結構的驗證過程中,需要深入研究OpenRISC的結構、流水線及相關性設計方法,也要進一步研究Cache結構和設計方法。

3.1 OpenRISC處理器在FPGA開發板上的移植

本課題對OpenRISC開源軟核處理器的源碼基于現有FPGA開發平臺進行了移植。該開發板采用Altera公司的型號為EP4CE17C8N的FPGA,外設配備了數碼管、微動開關、LED發光二極管、RS232接口,JTAG接口等,可以基本滿足移植測試需要。移植的具體工作包括:構建了適合OpenRISC開源軟核處理器指令運行的RAM模塊,構建了系統時鐘及系統復位模塊,使用Verilog硬件描述語言編寫頂層模塊,將CPU、總線、GPIO、串行通信接口等主要功能模塊進行了組合并且針對現有的FPGA開發平臺進行了配置與改造,如圖4所示。

OpenRISC開源軟核處理器的移植結果可以通過一個簡單的C語言程序實例在OpenRISC處理器上運行來驗證。該C語言程序的實現功能為,控制開發板上的LED,與上位機進行串行通信,同時發送一組數據。經驗證,該示例程序可有效控制開發板上的資源并正確實現了與系統計算機之間的串行接口的通信,從而證實了OpenRISC在本開發板上的成功移植。

圖4 FPGA片上系統結構圖

Fig.4 Structure of Soc based on FPGA

3.2 基于Ubuntu系統的OpenRISC匯編指令程序的交叉編譯環境的搭建與應用

作為一種嵌入式處理器,在開源軟核處理器OpenRISC上運行的程序需要在PC機環境下進行交叉編譯。該部分工作主要是在Ubuntu系統下進行了交叉編譯環境的搭建,同時,編寫Makefile設定編譯、連接、轉換等流程,最后,還要將編譯得到的機器碼轉換成可以在OpenRISC的RAM中運行的mif文件。同時,對開源軟核處理器OpenRISC的指令集進行了研究,編寫了可以在開發板上運行的OR1200匯編語言指令程序,實現了OpenRISC處理器通過GPIO對開發板上資源的讀寫控制操作,為下一步處理器的性能評測奠定了良好基礎。

3.3 在FPGA開發板平臺上對開源軟核處理器OpenRISC的匯編指令實現跟蹤

使用Verilog硬件描述語言對匯編指令單步跟蹤模塊進行了設計,實現了通過微動開關控制OpenRISC匯編指令的單步運行。同時,通過對指令計數模塊的編寫,可以實現對程序運行周期數的統計,從而為驗證微處理的指令流水的執行效率提供了基礎準備。目前,對匯編語言指令運行周期數的統計是通過數碼管模塊實現并顯示的。在進一步的工作中,這一顯示也可通過串口通信傳送到系統計算機,最終在系統計算機界面上顯示出該數據。此處運行的是用于單步跟蹤的匯編程序,其具體功能是將一個數據通過開發板上的LED進行輸出顯現。

3.4 編寫串行通信程序,實現OpenRISC與系統計算機的通信

本串行接口通信程序的基本功能是實現了待測試微處理器與上位機之間的通信。借助這一通道,硬件平臺上待測試微處理器內部各寄存器中每一時刻所存儲的內容都可以實時地傳送至上位機,便于上位機對這些數據實行進一步的分析。同時,傳送的數據也可以是存儲器內某一存儲單元或某一存儲區域的數據;也還可以傳送Cache中存儲的數據等

主站蜘蛛池模板: 青青青国产视频| 国产精品免费久久久久影院无码| 国产青榴视频在线观看网站| 欧洲一区二区三区无码| 无码人中文字幕| 色综合国产| 欧美三级自拍| 91久久偷偷做嫩草影院| 国产福利小视频高清在线观看| 亚洲欧美激情另类| 欧美日韩成人在线观看| 日本人真淫视频一区二区三区| 久久综合激情网| 国产中文一区a级毛片视频| 免费aa毛片| 尤物视频一区| 91久久夜色精品国产网站| 美女内射视频WWW网站午夜| 国产精品成人观看视频国产 | 成人一区专区在线观看| 人妻一区二区三区无码精品一区| 国产香蕉在线视频| 好吊妞欧美视频免费| 91亚洲精品国产自在现线| 成人综合在线观看| 久久综合色88| 亚洲欧洲日韩国产综合在线二区| 欧美激情二区三区| 69av免费视频| 91成人在线观看| AV片亚洲国产男人的天堂| 97久久超碰极品视觉盛宴| 国产精品永久免费嫩草研究院| 久久综合一个色综合网| 日韩国产亚洲一区二区在线观看| a级毛片免费网站| 中文字幕久久波多野结衣| 久久综合婷婷| 国产超薄肉色丝袜网站| 国产高清无码麻豆精品| 国产一区二区影院| 国产丝袜第一页| 一级毛片在线播放免费观看| 2021无码专区人妻系列日韩| 日韩 欧美 小说 综合网 另类| 无码中文AⅤ在线观看| 91毛片网| 亚洲成人手机在线| 亚洲第一视频网| 午夜福利无码一区二区| 波多野结衣一二三| 欧美日本在线| 久久一本精品久久久ー99| 亚洲高清中文字幕| 成年人久久黄色网站| 国产视频入口| 天堂成人在线| 中文字幕av一区二区三区欲色| 国产精品尤物铁牛tv | 男女精品视频| 蜜芽国产尤物av尤物在线看| 熟妇人妻无乱码中文字幕真矢织江| 婷婷六月在线| 国产对白刺激真实精品91| 亚洲91精品视频| 久久国产黑丝袜视频| 亚洲区第一页| 日韩毛片在线播放| 麻豆国产原创视频在线播放| 无码精品国产dvd在线观看9久| 欧美日韩一区二区在线播放| 亚洲国产日韩欧美在线| 午夜a视频| 狠狠ⅴ日韩v欧美v天堂| 国产一区二区影院| 99在线视频网站| 99视频在线观看免费| 国产自在线播放| 久久夜色精品国产嚕嚕亚洲av| 色综合天天娱乐综合网| 亚洲二区视频| 天天色天天综合|