新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的簡易微型計算機結構分析與實現

        基于FPGA的簡易微型計算機結構分析與實現

        作者: 時間:2012-10-15 來源:網絡 收藏

        2.2 多路選擇器方式

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

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

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

        2.3 功能描述方式

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

        C_SIM_CPU模塊由于強調實現功能,其語句不同用戶有著不同寫法,不同的綜合軟件也會生成不同的結構,因而這里不再展開討論。

        2.4 3種方式比較

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

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

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

        3 結束語

        的原理及結構一般不易理解掌握,利用來學習并構建一個簡易無疑是一個好方法,對EDA的軟硬件學習也是一個不錯的選擇,可為將來進行相關ASIC沒計打下良好的基礎。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 吴堡县| 全椒县| 宜宾市| 大渡口区| 石嘴山市| 鄱阳县| 龙口市| 金寨县| 崇义县| 汤阴县| 祁东县| 汝南县| 夏津县| 辽阳县| 清涧县| 东源县| 嘉荫县| 甘谷县| 民权县| 衡水市| 平顶山市| 海林市| 临湘市| 昭平县| 南开区| 同江市| 洞口县| 石渠县| 乌兰县| 伊金霍洛旗| 龙门县| 城口县| 承德市| 阿鲁科尔沁旗| 潼南县| 湛江市| 南澳县| 台州市| 龙江县| 武邑县| 正安县|