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

關(guān)于EDA技術(shù)課程實(shí)驗(yàn)組織的研究

2010-04-12 00:00:00
現(xiàn)代電子技術(shù) 2010年6期

摘 要:在EDA課程實(shí)驗(yàn)組織中,這里一改傳統(tǒng)的廣播操式實(shí)驗(yàn)?zāi)J剑《氖亲寣W(xué)生從頭開始做一個(gè)實(shí)驗(yàn)專題“基于FPGA的流水線RISC_CPU實(shí)現(xiàn)”的研究。自頂向下的設(shè)計(jì)方法和模塊化的設(shè)計(jì)思想,使電子專業(yè)的學(xué)生較系統(tǒng)地掌握電子系統(tǒng)的設(shè)計(jì)技能。通過一個(gè)實(shí)驗(yàn)專題項(xiàng)目,將電子電路、計(jì)算機(jī)硬件描述語言和EDA開發(fā)軟件與仿真軟件等知識(shí)綜合起來,架構(gòu)較寬的知識(shí)體系。

關(guān)鍵詞:EDA技術(shù);流水線;實(shí)驗(yàn)?zāi)J?架構(gòu)

中圖分類號(hào):G642.0文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1004-373X(2010)06-075-03

Research of EDA Technique Course Experimental Organization

FANG Qiong

(Hangzhou Professional and Technical College,Hangzhou,310012,China)

Abstract: In the EDA course experimental organization,the traditional broadcasting hold type experimental mode is unused,making the students from research of special subject experiment \"Realization of FPGA Pipeline RISC_CPU\" Means of top-down method and modular design make electronics professional students systematically control technical ability of electronics system.Through an experimental special subject item,electronic circuit,computer hardware description language and EDA development software with simulation software etc.The knowledge system is built.

Keywords:EDA technology;pipeline;experimental mode;structure

0 引 言

隨著半導(dǎo)體技術(shù)和計(jì)算機(jī)技術(shù)的高速發(fā)展,現(xiàn)代電子系統(tǒng)的設(shè)計(jì)思路和方法發(fā)生著深刻的變化,電子系統(tǒng)設(shè)計(jì)的復(fù)雜程度也越來越高。而電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation,EDA)技術(shù)給今天的電子設(shè)計(jì)提供了強(qiáng)有力的工具。它是現(xiàn)代集成電路及電子整機(jī)系統(tǒng)設(shè)計(jì)科技創(chuàng)新和產(chǎn)業(yè)發(fā)展的關(guān)鍵技術(shù),離開EDA技術(shù)集成電路及電子系統(tǒng)設(shè)計(jì)將寸步難行。由于EDA技術(shù)獨(dú)特的設(shè)計(jì)方法,改變了傳統(tǒng)設(shè)計(jì)思路,減輕了設(shè)計(jì)難度,增加設(shè)計(jì)的自由度和靈活性,提高效率,減少設(shè)計(jì)周期。使設(shè)計(jì)的電子產(chǎn)品體積縮小,成本下降,功耗降低,性能提高。EDA技術(shù)的迅速發(fā)展,使我國(guó)高校電子技術(shù)的教學(xué)面臨著嚴(yán)峻挑戰(zhàn)。

電子技術(shù)課程的實(shí)驗(yàn)現(xiàn)狀是:實(shí)驗(yàn)內(nèi)容單一,實(shí)驗(yàn)項(xiàng)目常以驗(yàn)證型實(shí)驗(yàn)為主,學(xué)生的設(shè)計(jì)難以突破實(shí)驗(yàn)箱的限制[1]。對(duì)于傳統(tǒng)的數(shù)字電路課程設(shè)計(jì)往往還局限于采用中小規(guī)模邏輯器件來實(shí)現(xiàn)較復(fù)雜的電路或系統(tǒng)。原來的實(shí)驗(yàn)設(shè)備已遠(yuǎn)遠(yuǎn)落后于技術(shù)的發(fā)展。實(shí)驗(yàn)方法與前期課程脫節(jié),與后續(xù)課程無關(guān)。長(zhǎng)期使用這種培養(yǎng)模式很容易使學(xué)生產(chǎn)生依賴性,不利于學(xué)生創(chuàng)造性的發(fā)揮,不利于學(xué)生研究性學(xué)習(xí)能力的培養(yǎng)。更難以適應(yīng)市場(chǎng)對(duì)人才知識(shí)技能的要求。

目前實(shí)驗(yàn)室資源和學(xué)生的狀況迫切要求進(jìn)行教學(xué)改革。這里一改傳統(tǒng)的廣播操式實(shí)驗(yàn)?zāi)J剑《氖亲寣W(xué)生從頭做一個(gè)專題實(shí)驗(yàn)研究。為了能涵蓋前修后續(xù)課程的主要內(nèi)容,對(duì)所學(xué)內(nèi)容進(jìn)行篩選和整合,在內(nèi)容上做了精心的設(shè)計(jì)和編排[2],選擇“基于FPGA的流水線RISC_CPU實(shí)現(xiàn)”作為研究專題。

1 RISC_CPU設(shè)計(jì)

該實(shí)驗(yàn)專題以大規(guī)模器件為載體,以EDA軟件為開發(fā)平臺(tái)展開研究。EDA是以大規(guī)模可編程邏輯器件(CPLD/FPGA)為設(shè)計(jì)載體,以硬件描述語言為系統(tǒng)邏輯描述的主要表達(dá)方式,以計(jì)算機(jī)、大規(guī)模可編程邏輯器件的開發(fā)軟件及實(shí)驗(yàn)開發(fā)系統(tǒng)為設(shè)計(jì)工具,通過有關(guān)的開發(fā)軟件,自動(dòng)完成用軟件方式描述的電子系統(tǒng)到硬件邏輯系統(tǒng)的邏輯演繹、化簡(jiǎn)、分割、綜合及優(yōu)化、布局布線、邏輯仿真,直至完成對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射、編程下載等工作,最終形成集成電子系統(tǒng)或?qū)S眉尚酒囊婚T多學(xué)科融合的新技術(shù)[3]。這里采用Verilog HDL硬件描述語言實(shí)現(xiàn)及利用FPGA實(shí)驗(yàn)板對(duì)所設(shè)計(jì)的RISC_CPU進(jìn)行驗(yàn)證。

首先引導(dǎo)學(xué)生對(duì)該實(shí)驗(yàn)專題進(jìn)行分析,確定CPU采用自頂向下的方法進(jìn)行設(shè)計(jì)。為了能夠體現(xiàn)RISC_CPU主要功能,又便于學(xué)生完成研究的任務(wù),對(duì)CPU系統(tǒng)進(jìn)行了簡(jiǎn)化。

1.1 指令集

該RISC_CPU有三種尋址格式:立即尋址、寄存器尋址、寄存器間接尋址。結(jié)構(gòu)固定簡(jiǎn)單,便于設(shè)計(jì)和譯碼。CPU主要實(shí)現(xiàn)了數(shù)據(jù)處理常用的指令[4]。由15條指令組成,包括運(yùn)算類指令(MOV,ADD,SUB,AND,XOR,NOP)、跳轉(zhuǎn)指令(JMP)、子程序調(diào)用指令(CALL)、立即數(shù)指令(SET)、跳過指令(SKIP)、子程序返回、中斷程序返回指令(RET,RETI)及讀/寫指令(LDA,STO)。

1.2 系統(tǒng)結(jié)構(gòu)

該RISC_CPU具有8位數(shù)據(jù)總線,12位地址總線,采用哈佛結(jié)構(gòu),具有一級(jí)流水線,三級(jí)子程序調(diào)用,一級(jí)中斷功能。其頂層模塊如圖1所示,主要由ALU、指令寄存器、控制器、32個(gè)8位寄存器、程序計(jì)數(shù)器等組成。

圖1RISC_CPU頂層模塊

圖1各個(gè)模塊都必須在Xilix ISE下進(jìn)行邏輯綜合和功能仿真,并形成相應(yīng)的實(shí)體結(jié)構(gòu)圖[5],這樣可以在需要時(shí)調(diào)用。

2 EDA實(shí)驗(yàn)平臺(tái)

2.1 實(shí)驗(yàn)環(huán)境

該設(shè)計(jì)采用美國(guó)Xilinx公司SpartanTM-IIE系列的FPGA芯片作為開發(fā)平臺(tái)。FPGA芯片型號(hào)為XC2S100E,PQ208封裝,10萬門容量,內(nèi)部有600個(gè)可配置的邏輯塊(CLB),202個(gè)I/O口,40 KB BlockRAM,四個(gè)延遲鎖相環(huán)(DLL)。實(shí)驗(yàn)下載板自配并口下載電纜,方便了對(duì)器件的編程。

設(shè)計(jì)軟件采用Xilinx公司提供的ISE 6.1i,該軟件功能強(qiáng)大。仿真軟件用Model Technology公司的ModelSim SE 5.6仿真工具。ISE的一般開發(fā)流程是:設(shè)計(jì)輸入→設(shè)計(jì)的綜合→器件編程,如圖2所示。

圖2 ISE的設(shè)計(jì)流程

(1) 硬件描述語言輸入和狀態(tài)機(jī)輸入,是最原始的設(shè)計(jì)輸入由設(shè)計(jì)者完成。

(2) 設(shè)計(jì)實(shí)現(xiàn)與綜合是開發(fā)系統(tǒng)的自動(dòng)執(zhí)行部分,它包括優(yōu)化、合并、映射、布局、布線,之后形成時(shí)序仿真網(wǎng)表和位流文件,位流文件用于器件編程。

(3) 器件編程是將設(shè)計(jì)輸出的位流文件下載到FPGA芯片中,加以實(shí)際激勵(lì),進(jìn)行測(cè)試,檢查是否完成預(yù)定功能。

為了提高設(shè)計(jì)效率,要準(zhǔn)確理解仿真結(jié)果,便于及時(shí)修改設(shè)計(jì),不必采用反復(fù)下載方式來驗(yàn)證設(shè)計(jì)結(jié)果。在整個(gè)設(shè)計(jì)過程中,設(shè)計(jì)輸入是關(guān)鍵,是由設(shè)計(jì)者對(duì)器件實(shí)現(xiàn)數(shù)字系統(tǒng)的邏輯功能進(jìn)行描述的階段。采用硬件描述語言輸入,在程序編寫時(shí),注意避免競(jìng)爭(zhēng)冒險(xiǎn)現(xiàn)象發(fā)生。

在FPGA設(shè)計(jì)中Modelsim仿真器使用得比較廣泛。在ISE中給Modelsim預(yù)留了接口。在啟動(dòng)Modelsim之前,應(yīng)將Modelsim根目錄下“modelsim.ini”的“只讀”屬性去掉[6]。在ISE的“processes for source”中雙擊“Simulator Behavioral Model”操作選項(xiàng),即可啟動(dòng)Modelsim仿真器。

2.2 實(shí)驗(yàn)過程

下面是ALU模塊設(shè)計(jì)實(shí)現(xiàn)過程。在輸入之前,先創(chuàng)建新項(xiàng)目,并對(duì)器件進(jìn)行配置。

(1) 設(shè)計(jì)輸入,采用Verilog HDL編程[7]:

parameter ALUOP_NOP = 3′b000;

parameter ALUOP_MOV = 3′b001;

parameter ALUOP_ADD = 3′b100;

parameter ALUOP_SUB = 3′b101;

parameter ALUOP_AND = 3′b110;

parameter ALUOP_XOR = 3′b111;

always @(posedge clk)

begin

case (op)

ALUOP_MOV:{addercout, y} <= {1′b0,a};

ALUOP_ADD:{addercout, y} <= a + b + cin;

ALUOP_SUB:{addercout, y} <= a - b - cin;

ALUOP_AND:{addercout, y} <= {1′b0,a b};

ALUOP_XOR:{addercout, y} <= {1′b0,a ^ b};

default:{addercout, y} <= {addercout, y};

endcase

end

assign cout=(op == ALUOP_SUB)? ~addercout:addercout;

ALU根據(jù)輸入的不同操作碼分別實(shí)現(xiàn)加、減、與、異或、傳輸數(shù)據(jù)5種基本操作運(yùn)算,在時(shí)鐘的上升沿進(jìn)行數(shù)據(jù)運(yùn)算。其中,op為操作碼;a,b為二目去處的兩個(gè)操作數(shù);cin,cout是加法、減法去處的進(jìn)位輸入和輸出,它們寄存在特殊功能寄存器psw中。對(duì)于減法操作,需要對(duì)借位進(jìn)行反碼運(yùn)算。

(2) 設(shè)計(jì)綜合、仿真。

編譯器用于檢查項(xiàng)目是否有錯(cuò),并對(duì)項(xiàng)目進(jìn)行邏輯綜合、功能仿真(前仿真)。如果有錯(cuò),將中斷編譯,顯示錯(cuò)誤個(gè)數(shù)、出處和原因。通過閱讀綜合報(bào)告幫助查錯(cuò)、糾錯(cuò),直至編譯成功[8]。

成功編譯,說明設(shè)計(jì)符合一定的語法規(guī)范,并不能保證設(shè)計(jì)獲得了期望的成功,這時(shí)需通過仿真對(duì)設(shè)計(jì)進(jìn)行驗(yàn)證。仿真波形如圖3所示。

圖3 ALU Modelsim仿真圖

從仿真結(jié)果來看,op為100(加法運(yùn)算),在a=EFH,b=23H,cin為0時(shí),運(yùn)算結(jié)果y=12H,cout=1;在a=B4H,b=98H,cin為1時(shí),運(yùn)算結(jié)果y=4DH,cout=1,均達(dá)到了預(yù)期設(shè)計(jì)的效果。同樣op=101(減法運(yùn)算)、110(與運(yùn)算)等都與預(yù)期設(shè)計(jì)的效果相吻合。

ALU兩個(gè)操作數(shù)a,b從數(shù)據(jù)多路器而來。多路選擇器的輸入、綜合、仿真同ALU。

(3) 設(shè)計(jì)實(shí)現(xiàn),時(shí)序仿真,配置下載。

設(shè)計(jì)實(shí)現(xiàn)是把邏輯映射到目標(biāo)器件結(jié)構(gòu)的資源中,布局布線,并產(chǎn)生相應(yīng)文件。包括轉(zhuǎn)換、映射、布局布線、時(shí)序提取、配置[9]。

時(shí)序仿真是考慮器件延遲、連線延時(shí)等時(shí)序參數(shù)進(jìn)行的仿真,較好地反映真實(shí)器件的運(yùn)行情況。

配置下載是在仿真正確的前提下,啟動(dòng)ISE下載工具iMPACT的Slave serial模式,將生成的Bit流文件下載到FPGA芯片中,進(jìn)行實(shí)際器件的物理測(cè)試,即電路驗(yàn)證。

其中,狀態(tài)機(jī)是CPU的控制核心,它完成譯碼器的功能,用于產(chǎn)生一系列控制信號(hào),啟動(dòng)或停止某些部件。RISC_CPU何時(shí)進(jìn)行讀指令讀寫I/O端口,RAM區(qū)等操作,都是由狀態(tài)機(jī)來控制的。狀態(tài)機(jī)的當(dāng)前狀態(tài)由變量states記錄,狀態(tài) 0 表示運(yùn)行狀態(tài),當(dāng)處于此狀態(tài)時(shí),RISC_CPU對(duì)指令譯碼并運(yùn)行。狀態(tài) 1,2,3是雙字節(jié)指令狀態(tài),當(dāng)RISC_CPU處于這些狀態(tài)時(shí),讀取指令的第二個(gè)字節(jié),并進(jìn)行相關(guān)的處理。狀態(tài) 4,5是讀/寫等待狀態(tài),它是為了協(xié)調(diào)快速的CPU與慢速的存儲(chǔ)器之間的矛盾在讀/寫指令中插入的等待時(shí)鐘周期。當(dāng)系統(tǒng)復(fù)位或處于不合法狀態(tài)時(shí),RISC_CPU將自動(dòng)進(jìn)入運(yùn)行狀態(tài)。相應(yīng)的仿真如圖4所示。

圖4 狀態(tài)控制器的Modelsim仿真圖

用同樣的方法可設(shè)計(jì)、仿真RISC_CPU的其他模塊,并根據(jù)綜合、仿真結(jié)果優(yōu)化代碼。最后對(duì)各功能模塊進(jìn)行整合,即構(gòu)成一個(gè)應(yīng)用系統(tǒng)RISC_CPU。限于篇幅,在此不再祥述。

3 改革效果

這里研究形式的實(shí)驗(yàn)?zāi)J剑趯W(xué)習(xí)、思考、實(shí)踐為一體。實(shí)踐證明,采用該模式提高了學(xué)生的工程設(shè)計(jì)能力。我校電子專業(yè)的學(xué)生普遍反映:應(yīng)用FPGA/CPLD芯片設(shè)計(jì)數(shù)字系統(tǒng)的能力也得到顯著提高;分析問題、解決問題的能力得到明顯增強(qiáng)[10];以往學(xué)過的數(shù)字系統(tǒng)的基本知識(shí)也得到鞏固和深化。

4 結(jié) 語

在EDA課程實(shí)驗(yàn)教學(xué)中,通過設(shè)計(jì)專題形式的實(shí)驗(yàn)?zāi)J剑箤W(xué)生從整體上建立一個(gè)應(yīng)用系統(tǒng)開發(fā)流程的概念。這種模式極大地發(fā)揮了學(xué)生的主動(dòng)性與創(chuàng)造性,使學(xué)生的綜合技能得到進(jìn)一步提高。

參考文獻(xiàn)

[1]翟文正,管功湖.將EDA技術(shù)引入“計(jì)算機(jī)組成與結(jié)構(gòu)”實(shí)驗(yàn)教學(xué)的研究[J].實(shí)驗(yàn)室研究與探索,2008(12):12-14.

[2]周莉莉,周淑閣.EDA課程教學(xué)方法的研究與實(shí)踐[J].實(shí)驗(yàn)室科學(xué),2008(5):55-57.

[3]陳強(qiáng).項(xiàng)目導(dǎo)向模式在EDA技術(shù)課程實(shí)踐教學(xué)中的應(yīng)用[J].科技信息,2008(24):323-324.

[4]黃旺華.基于FPGA流水線RISC微處理器的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2008,24(14):187-189.

[5]王本有,蘇守寶,汪德如.一種基于FPGA的CPU的設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(16):221-224.

[6]薛小剛,葛毅敏.Xilinx ISE 9.X FPGA/CPLD設(shè)計(jì)指南[M].北京:人民郵電出版社,2008.

[7]夏宇聞.Verilog 數(shù)字系統(tǒng)設(shè)計(jì)教程[M].北京:北京航空航天大學(xué)出版社,2008.

[8]田耘,徐文波,胡彬,等.Xilinx ISE Design Suite 10.x FPGA開發(fā)指南邏輯設(shè)計(jì)[M].北京:人民郵電出版社,2008.

[9]李輝.基于FPGA的數(shù)字系統(tǒng)設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2008.

[10]孫冬梅,陳捷.EDA技術(shù)及其在教學(xué)應(yīng)用中的實(shí)踐與探討[J].高教論壇,2008(6):150-152.

主站蜘蛛池模板: 中文字幕色站| 精品伊人久久久香线蕉| 欧美乱妇高清无乱码免费| 久久久久久久久亚洲精品| 国产三级国产精品国产普男人| 国产免费黄| 五月天天天色| 国产一国产一有一级毛片视频| 免费人成网站在线高清| 精品无码一区二区在线观看| 国产第一页免费浮力影院| 人妻精品全国免费视频| 啪啪免费视频一区二区| 国产一级妓女av网站| 亚洲欧美成人影院| 综合五月天网| 无码福利日韩神码福利片| 啦啦啦网站在线观看a毛片| 国产精品亚洲一区二区三区在线观看| 激情综合网址| 亚洲第一极品精品无码| 国产精品蜜臀| 日韩av电影一区二区三区四区| 这里只有精品国产| av在线人妻熟妇| 中国精品久久| 亚洲国产日韩在线观看| 国产成人高清亚洲一区久久| 一本大道无码日韩精品影视| 狠狠做深爱婷婷久久一区| 久久永久视频| 亚洲精品在线影院| 欧美激情视频在线观看一区| 蝴蝶伊人久久中文娱乐网| 人人爽人人爽人人片| 日韩久草视频| 在线观看无码a∨| 极品av一区二区| 国产超碰在线观看| 国产成人综合日韩精品无码不卡| av午夜福利一片免费看| 国产av色站网站| 日韩av高清无码一区二区三区| 无码aaa视频| 欧美国产在线看| 波多野结衣一区二区三区88| 91麻豆国产精品91久久久| 久久国产精品波多野结衣| 久综合日韩| 91精品啪在线观看国产| 日韩无码精品人妻| 午夜国产小视频| 欧美精品导航| 天天色综网| 中文字幕乱码二三区免费| 国产不卡一级毛片视频| 人妻一区二区三区无码精品一区 | 国产婬乱a一级毛片多女| 亚洲欧美国产高清va在线播放| 亚洲欧洲日韩国产综合在线二区| 欧美亚洲中文精品三区| 久久精品电影| 国产成人凹凸视频在线| 成人国产精品视频频| 欧美一区二区自偷自拍视频| 国产18页| 国产成人AV大片大片在线播放 | 一边摸一边做爽的视频17国产 | 一本久道久久综合多人| 在线网站18禁| 日韩成人午夜| 激情六月丁香婷婷| 成人欧美日韩| 丰满人妻一区二区三区视频| 四虎永久免费在线| 国产精品毛片一区| 欧美亚洲另类在线观看| 免费看av在线网站网址| 99爱视频精品免视看| 国产主播福利在线观看| 亚洲一区二区三区香蕉| 久久国语对白|