新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的簡易微型計(jì)算機(jī)結(jié)構(gòu)分析與實(shí)現(xiàn)

基于FPGA的簡易微型計(jì)算機(jī)結(jié)構(gòu)分析與實(shí)現(xiàn)

作者: 時間:2012-10-15 來源:網(wǎng)絡(luò) 收藏

2.2 多路選擇器方式

多路選擇器方式是對總線方式的一種改進(jìn),可以實(shí)現(xiàn)地址總線與數(shù)據(jù)總線分離,一條指令的執(zhí)行只需4個機(jī)器節(jié)拍,極大地提高了運(yùn)行速度。對圖1進(jìn)行略微改變,如圖3所示。其中程序計(jì)數(shù)器模塊duolu_PC及指令寄存器模塊duolu_IR不再有三態(tài)門,對其控制也相應(yīng)簡化。增加了2個二選一多路選擇器。下面介紹其工作原理。

狀態(tài)s0(第1節(jié)拍)時,首先判斷有沒有加減法指令,若有則發(fā)出控制信號,PC值同時送入MAR。如控制字順序?yàn)镋rLrS3S2 S1S0EuLm LbEaLaEi LiCpEpLp,有加法時,其控制字為“0000 1011 0010 0010”,當(dāng)S3S2S1S0為0001”時做加法運(yùn)算;沒有加減法時則控制字為0000 0001 0000 0010”。狀態(tài)s1時,PC值加1,將存儲器單元中的內(nèi)容讀人到IR,其控制字為“1000 0000 0000 1100”,注意當(dāng)給程序計(jì)數(shù)器置數(shù)時,Lp才為l,多路選擇器選通由IR米置數(shù)。狀態(tài)s2和s3與總線方式的第4和第5節(jié)拍類似。整個周期可簡化為判斷與置地址、讀數(shù)、判斷與置地址、讀數(shù)4個步驟。

這里的多路選擇器方式僅僅是略微改變,不是指全部,只是提出一種方法。

2.3 功能描述方式

功能描述方式是指充分利用VHDL語言的行為描述能力,從功能描述的角度來實(shí)現(xiàn)簡易。除了調(diào)用ROM模塊及OUTREG、DLEDDIS、DECL7S外,其余子模塊被包含在一個整體C_SIM_CPU模塊內(nèi),每一個狀態(tài)實(shí)現(xiàn)一定的功能。同樣,C_SIM_CPU模塊只需4個狀態(tài)即可實(shí)現(xiàn)相應(yīng)功能。部分程序如以下所示,不再采用控制字的方式。

C_SIM_CPU模塊由于強(qiáng)調(diào)實(shí)現(xiàn)功能,其語句不同用戶有著不同寫法,不同的綜合軟件也會生成不同的結(jié)構(gòu),因而這里不再展開討論。

2.4 3種方式比較

用QuartusⅡ4.0對總線方式、多路選擇器方式及功能描述方式分別進(jìn)行編程下載,都可以實(shí)現(xiàn)一些簡單的計(jì)算程序,在數(shù)碼管上顯示出地址及相應(yīng)結(jié)果。如果采用1 Hz的clkin頻率,動態(tài)掃描頻率單獨(dú)用1 kHz時,可以清楚地看到每一過程。

QuartusⅡ4.0對總線方式、多路選擇器方式及功能描述方式編譯,其LE(邏輯單元)分別為:232、206、143。功能描述方式資源利用最優(yōu),但結(jié)構(gòu)復(fù)雜。多路選擇器方式優(yōu)于總線方式,不僅是在資源利用上,還是在執(zhí)行速度上。當(dāng)然,總線方式對于模塊的擴(kuò)展方面要強(qiáng)于多路選擇器方式。

如果想更深入了解其內(nèi)部結(jié)構(gòu),可以使用Synplifypro軟件觀察這3種方式的RTL電路及門級電路。用Synplify pro軟件進(jìn)行綜合,顯示所需的LE比QuartusⅡ4.0更少。

3 結(jié)束語

的原理及結(jié)構(gòu)一般不易理解掌握,利用來學(xué)習(xí)并構(gòu)建一個簡易無疑是一個好方法,對EDA的軟硬件學(xué)習(xí)也是一個不錯的選擇,可為將來進(jìn)行相關(guān)ASIC沒計(jì)打下良好的基礎(chǔ)。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉