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

一種開源軟核OR1200的系統(tǒng)級描述方法研究※

2015-08-14 08:03:24吳瓊飛張志強(qiáng)朱勇
關(guān)鍵詞:指令信號方法

吳瓊飛,張志強(qiáng),朱勇

(1.華中農(nóng)業(yè)大學(xué)楚天學(xué)院,信息工程學(xué)院,武漢430205;2.武漢紡織大學(xué))

吳瓊飛(講師)、張志強(qiáng)(助教)、朱勇(教授),研究方向?yàn)榍度胧较到y(tǒng)及應(yīng)用。

引 言

專用指令集處理器(ASIP)是一種具有處理器結(jié)構(gòu)的芯片,它具有可定制性,為某個或某一類型應(yīng)用而專門設(shè)計,能夠高效地解決嵌入式系統(tǒng)設(shè)計中的實(shí)際問題,已在現(xiàn)今的片上系統(tǒng)(SoC)中得到了廣泛的應(yīng)用。但在系統(tǒng)定制ASIP處理器時往往受到芯片面積、上市時間(TTM)和功耗等非功能性的約束[1,4-5],設(shè)計者必須要找到一款合適的處理器體系結(jié)構(gòu),所以在設(shè)計的初期要針對特定應(yīng)用進(jìn)行設(shè)計空間搜索(DSE),利用ADL對目標(biāo)結(jié)構(gòu)進(jìn)行描述并用硬件描述語言(HDL)來進(jìn)行硬件實(shí)現(xiàn)。傳統(tǒng)設(shè)計方法是直接使用 HDL語言來進(jìn)行硬件設(shè)計[6,9],從而導(dǎo)致設(shè)計周期相當(dāng)漫長。本文探討了一種基于SystemC體系結(jié)構(gòu)描述語言的系統(tǒng)級設(shè)計方法,對一款開源軟核OpenRISC1200(以下簡稱OR1200)進(jìn)行系統(tǒng)級建模,并在此基礎(chǔ)上實(shí)現(xiàn)系統(tǒng)級的綜合,由ADL描述通過相應(yīng)機(jī)制映射成RTL級的HDL描述,加快處理器的設(shè)計速度。

1 OR1200軟核剖析

1.1 OR1200CPU基本結(jié)構(gòu)

OR1200是OpenRISC系列RISC處理器內(nèi)核的一員,它是一種32位標(biāo)量RISC體系結(jié)構(gòu)[14],具有哈佛結(jié)構(gòu),帶有5級整數(shù)流水線。其執(zhí)行特征包括虛擬內(nèi)存支持和基本DSP功能,外部數(shù)據(jù)總線和地址總線接口符合Wishbone總線標(biāo)準(zhǔn)。OR1200CPU/DSP基本框圖如圖1所示。

圖1 OR1200CPU/DSP基本框圖

1.2 OR1200CPU 5級流水結(jié)構(gòu)分析

OR1200 5級流水是指IF取指、ID譯碼、EX執(zhí)行、MA存儲、WB回寫,這里將CPU分解成若干個模塊,每一級都對應(yīng)相應(yīng)的模塊,5級流水的OR1200CPU內(nèi)部模塊如圖2所示。

各級流水的功能分別如下:

圖2 5級流水的OR1200CPU內(nèi)部模塊

①IF(Instruction Fetch)取指級,按照PC的地址從存儲器中取出指令,PC指向下一條指令,取出的指令被送到下一條流水級ID。為了保證運(yùn)算能按時進(jìn)行,在這個時鐘周期需要提前提取操作數(shù)RA和RB寄存器的內(nèi)容,寄存器的地址rf_addra/b和讀信號rf_rda/b在本流水線級未被凍結(jié)時給出。

②ID(Instruction Decode)指令譯碼級,指令被ctrl模塊解碼成控制信號,所得到的這些信號被送到EX執(zhí)行級和其他流水級。指令在EX執(zhí)行級時需要用到來自rf(寄存器堆)的2個操作數(shù),這2個操作數(shù)在ID級被送到算術(shù)邏輯運(yùn)算單元ALU的a、b兩個端口,同時譯碼級還要把譯碼后得到的運(yùn)算操作信號OP傳遞給ALU。對于跳轉(zhuǎn)指令分為非條件跳轉(zhuǎn)和條件跳轉(zhuǎn)。如果譯碼器ctrl識別到非條件跳轉(zhuǎn),會馬上通知IF級;如果識別到的是條件跳轉(zhuǎn),就會根據(jù)標(biāo)志位判斷跳轉(zhuǎn)的結(jié)果,從而決定是否立即通知IF。另外,如果譯碼器識別到指令HALT,則會停止流水線。

③EX(Excution)執(zhí)行級,它主要通過ALU實(shí)現(xiàn)算術(shù)和邏輯運(yùn)算。

④ MA(Memory Access)存儲器訪問級,它使用Load/Store指令從存儲器裝載數(shù)據(jù)到寄存器堆或從寄存器堆存儲數(shù)據(jù)到存儲器,或者只是將EX級的運(yùn)算結(jié)果送到下一級WB回寫級中。

⑤ WB(Write Back)回寫級,主要是把數(shù)據(jù)寫回到寄存器堆rf中。

2 系統(tǒng)級描述方法研究

2.1 系統(tǒng)級設(shè)計方法

嵌入式系統(tǒng)的設(shè)計[8,10]是一個由高抽象級到低抽象級的逐層實(shí)現(xiàn)過程,每一層都會涉及到描述、驗(yàn)證以及到下一層的轉(zhuǎn)換(綜合)問題。系統(tǒng)級包含硬件和軟件等多種實(shí)現(xiàn),與RTL級相比處于更高的抽象層次,它能實(shí)現(xiàn)對微處理器、專用集成電路、可編程邏輯和存儲器等的高層次抽象。

針對傳統(tǒng)設(shè)計方法的不足,本文提出了一種基于系統(tǒng)級描述語言SystemC的設(shè)計方法,基于SystemC的ASIP設(shè)計流程如圖3所示。

圖3 基于SystemC的ASIP設(shè)計流程

首先針對一組特定應(yīng)用以及設(shè)計約束分析得到初始目標(biāo)體系結(jié)構(gòu)[7,13],然后對目標(biāo)體系結(jié)構(gòu)進(jìn)行SystemC描述,通過SystemC開發(fā)平臺自動生成相應(yīng)的軟件工具(包括編譯器、仿真器、連接器等)以及硬件RTL級HDL描述,之后分別從軟件和硬件兩個方面進(jìn)行評測,看是否符合設(shè)計約束要求。如果不符合設(shè)計約束要求,設(shè)計人員對目標(biāo)體系結(jié)構(gòu)的SystemC描述進(jìn)行相應(yīng)的修改,最后通過開發(fā)平臺完成軟件工具和硬件描述的生成并對其進(jìn)行評測,直到滿足設(shè)計約束要求為止。

2.2 體系結(jié)構(gòu)描述語言SystemC

SystemC作為一種硬件描述語言,是由OSCI(Open SystemC Initiative)組織制定和維護(hù)的、開放源代碼的、基于C++類庫的系統(tǒng)級建模平臺。它既是一種軟硬件協(xié)同設(shè)計語言,又是一種新的系統(tǒng)級建模語言,可以用來設(shè)計硬件模型和提供硬件模擬平臺。

在SystemC中,用來進(jìn)行設(shè)計描述的基本SystemC類是SC_M(jìn)ODULE,它類似VHDL的實(shí)體ENTITY或者Verilog的模塊MODULE。在SC_M(jìn)ODULE中可以定義輸入引腳、輸出引腳、內(nèi)部信號等資源,同時也可以實(shí)例化另外一個SystemC MODULE,對于設(shè)計的行為可以使用方法SC_M(jìn)ETHOD或者SC_THREAD進(jìn)行描述。SC_M(jìn)ETHOD或SC_THREAD在SC_M(jìn)ODULE內(nèi)的構(gòu)造函數(shù)中進(jìn)行聲明,并且可以指定相應(yīng)的敏感信號列表SENSITIVE,隨著敏感列表上輸入信號的變化從而產(chǎn)生相應(yīng)的方法。SystemC能在內(nèi)核的基礎(chǔ)上建立信號、FIFO等,它結(jié)合了高級語言和硬件描述語言這兩者的特點(diǎn)[2-3],系統(tǒng)抽象能力強(qiáng),并能對硬件設(shè)計中的信號同步、時間延遲、狀態(tài)轉(zhuǎn)換等物理信息進(jìn)行描述,所以SystemC可以很好地應(yīng)用于ASIP系統(tǒng)級設(shè)計中。

2.3 OR1200CPU系統(tǒng)級SystemC描述

在系統(tǒng)級對ASIP處理器進(jìn)行設(shè)計,ADL是整個設(shè)計的核心。利用SystemC在系統(tǒng)級對OR1200CPU內(nèi)部模塊進(jìn)行描述,并通過一款可集成開發(fā)軟件Agility Compiler實(shí)現(xiàn)SystemC的綜合,加快了硬件設(shè)計的實(shí)現(xiàn)。在實(shí)現(xiàn)的過程中,目前只用到了if(取指令)、getpc(程序計數(shù)器)、ctrl(控制譯碼器)、rf(通用寄存器文件)、opmux(操作數(shù)多路復(fù)用器)、alu(算術(shù)邏輯單元)、lsu(load/store單元)和wbmux(寫回)這8個模塊。下面的例子是使用SystemC對OR1200CPU部分模塊進(jìn)行系統(tǒng)級描述的部分代碼實(shí)現(xiàn):

3 系統(tǒng)驗(yàn)證

采用一種將新的高效測試方式與傳統(tǒng)的系統(tǒng)測試方式相結(jié)合的手段,利用嵌入式邏輯分析儀進(jìn)行驗(yàn)證,設(shè)計人員將它連同目標(biāo)文件一起下載到目標(biāo)器件的芯片中(這里是EP2C70F896),以此來獲得目標(biāo)器件芯片內(nèi)部信號節(jié)點(diǎn)處的相應(yīng)信息,同時硬件系統(tǒng)還能正常工作,這就是QuartusII中SignalTapII的目的。在實(shí)際檢測過程中,SignalTapII[14]將采集到的樣本信號臨時存入到目標(biāo)器件的RAM中,然后通過目標(biāo)器件的JTAG口將采樣信息傳入到計算機(jī)中顯示,最后進(jìn)行分析。SignalTapII能夠?qū)Ρ粶y試系統(tǒng)模塊內(nèi)部的信號節(jié)點(diǎn)進(jìn)行采樣,并且它是由多時鐘驅(qū)動的,能通過設(shè)置相應(yīng)的參數(shù)來顯示前后觸發(fā)捕捉信號節(jié)點(diǎn)信息的比例,便于對數(shù)據(jù)進(jìn)行分析。當(dāng)然在驗(yàn)證系統(tǒng)之前,要設(shè)計好指令Testbench,本文根據(jù)OpenRISC ORBIS32指令集用匯編語言設(shè)計了3類指令Testbench:無沖突的指令Testbench、有沖突的指令Testbench和有跳轉(zhuǎn)的指令Testbench。為了測試?yán)肧ystemC設(shè)計后的OR1200CPU是否能正常工作,事先設(shè)計好測試指令的相應(yīng)編碼mif文件,利用Altera Quartus II自帶的SignalTap II工具仿真驗(yàn)證,系統(tǒng)驗(yàn)證結(jié)果略——編者注。

結(jié) 語

本文設(shè)計實(shí)現(xiàn)了一種對ASIP進(jìn)行系統(tǒng)級高層綜合的方法,以一款開源軟核OR1200為實(shí)例,ADL體系結(jié)構(gòu)描述語言SystemC為核心,通過Agility Compiler編譯器實(shí)現(xiàn)系統(tǒng)級綜合。實(shí)踐證明,這種基于體系結(jié)構(gòu)描述語言SystemC的系統(tǒng)級設(shè)計方法是可行的。

編者注:本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。

[1]楊君.專用指令集處理器(ASIP)體系結(jié)構(gòu)設(shè)計研究[D].合肥:中國科學(xué)技術(shù)大學(xué),2006.

[2]申鑫.基于SystemC的RTL級綜合的研究[D].西安:西安電子科技大學(xué),2012.

[3]魯芳,柏娜.基于SystemC和Verilog軟硬件協(xié)同驗(yàn)證[J].現(xiàn)代電子技術(shù),2008(4):1-3.

[4]楊君,李曦,王志剛,等.專用指令集處理器(ASIP)系統(tǒng)級設(shè)計研究[J].系統(tǒng)工程與電子技術(shù),2006,28(10).

[5]李曦,龔育昌.基于Petri網(wǎng)的ASIP體系結(jié)構(gòu)形式化建模方法研究[J].小型微型計算機(jī)系統(tǒng),2006,27(9).

[6]蘇鶴年,李曦,王志剛,等.基于語言的ASIP系統(tǒng)級綜合方法研究[J].微型機(jī)與應(yīng)用,2005(9).

[7]余潔.專用指令集處理器可靠性評估技術(shù)研究[D].合肥:中國科學(xué)技術(shù)大學(xué),2007.

[8]王志剛.xpMODEL:A Novel Model for ASIP Architecture[D].合肥:中國科學(xué)技術(shù)大學(xué),2006.

[9]Yong Zhu.The Specification of the Embedded System of Realtime IR,DCABES 2007(ISTP),2007.

[10]Yong Zhu.The ASIP Design Specification Based on ADL,DCABES2009(ISTP).

[11]Fanucci L,Cassiano M,Saponara S.ASIP Design and Synthesis for Non Linear Filtering in Image Processing,Design[J].Automation and Test in Europe,2006(12):1-6.

[12]Morgan P,Taylor R.ASIP Instruction Encoding for Energy and Area Reduction,Design Automation Conference,2007[C].California:[unknown],2007.

[13]Dan Wu,Zhiying Wang,Kui Dai,et al.A Novel Compiling Approach for Sub-Word Parallelism Exploitation in Media-Processing Algorithm,5th International Symposium on Parallel Computing in Electrical Engineering(PARELEC 2006,IEEE Computer Society),2006[C].Bialystok:[unknown],2006.

[14]Altera Corporation.Quartus II Handbook,volume 5,2007.

猜你喜歡
指令信號方法
聽我指令:大催眠術(shù)
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
ARINC661顯控指令快速驗(yàn)證方法
LED照明產(chǎn)品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
基于FPGA的多功能信號發(fā)生器的設(shè)計
電子制作(2018年11期)2018-08-04 03:25:42
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
基于LabVIEW的力加載信號采集與PID控制
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
主站蜘蛛池模板: 欧美精品aⅴ在线视频| 国产毛片高清一级国语| 综合亚洲色图| 国产免费福利网站| 亚洲资源站av无码网址| 一级毛片免费高清视频| 在线观看免费人成视频色快速| 国产97色在线| 久久精品人人做人人综合试看| 成人国产精品视频频| 91精品小视频| 欧美在线综合视频| 99视频在线观看免费| www欧美在线观看| 91精品在线视频观看| 沈阳少妇高潮在线| 欧美日韩精品综合在线一区| 日本不卡在线视频| 毛片基地美国正在播放亚洲 | 亚洲国产综合精品中文第一| 五月婷婷亚洲综合| 人妻中文久热无码丝袜| 久久网欧美| 亚洲成AV人手机在线观看网站| 手机看片1024久久精品你懂的| 精品久久久无码专区中文字幕| 久久网欧美| 国产91特黄特色A级毛片| 国产在线精品美女观看| 欧美色综合网站| av大片在线无码免费| 欧美在线导航| 中文无码毛片又爽又刺激| 国产91丝袜在线播放动漫 | 香蕉久人久人青草青草| 青青青国产视频手机| 国产一级片网址| 中文一级毛片| 精品综合久久久久久97超人| 久久9966精品国产免费| 综合成人国产| 免费a级毛片视频| 青青青国产精品国产精品美女| 国产精品原创不卡在线| 91精品福利自产拍在线观看| 国产成人高清精品免费5388| 99re免费视频| 露脸真实国语乱在线观看| 91无码人妻精品一区| 九九热视频精品在线| 亚洲精品欧美日本中文字幕| 国产精品护士| 国产91精品久久| 精品在线免费播放| 无遮挡国产高潮视频免费观看| 婷婷色一二三区波多野衣| 国产亚洲高清视频| 国外欧美一区另类中文字幕| 国产亚洲精品自在线| 欧美日韩中文国产| 一级毛片免费高清视频| 91精选国产大片| 人妻无码一区二区视频| 中文国产成人精品久久| 综合人妻久久一区二区精品| 亚洲成人动漫在线| 中文精品久久久久国产网址 | 色播五月婷婷| 九九九久久国产精品| 54pao国产成人免费视频 | 欧美.成人.综合在线| 成人国产免费| 99热这里只有免费国产精品| 亚洲精品成人片在线播放| 啪啪免费视频一区二区| 69精品在线观看| 最新国产午夜精品视频成人| 欧美国产另类| 成人国产小视频| 91美女视频在线| 欧美日韩va| 国产在线拍偷自揄观看视频网站|