一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-05 08:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式系統(tǒng)的設(shè)計(jì)中, IP技術(shù)為SoC的設(shè)計(jì)提供了有效途徑, 是SoC的技術(shù)支撐。當(dāng)然, 在國內(nèi)開發(fā)出具有自主知識產(chǎn)權(quán)的IP模塊還面臨著許多問題, 如核心算法的優(yōu)化、不同層次模塊的建立、模塊的可重用問題以及IP模塊的標(biāo)準(zhǔn)化問題等。對于嵌入式處理器IP 核, 面對的挑戰(zhàn)就是如何選擇一個(gè)滿足其應(yīng)用需求的處理器。現(xiàn)已有數(shù)百種嵌入式處理器, 每組都具備一組不同的外設(shè)、存儲(chǔ)器、接口和性能特性, 用戶很難做出一個(gè)合理的選擇。本文設(shè)計(jì)的微處理器的指令集與標(biāo)準(zhǔn)8051單片機(jī)完全兼容, 這樣有利于開發(fā)人員的使用。

1 總體設(shè)計(jì)方案的擬定

1.1 提出改進(jìn)方案

首先在對典型八位微處理器進(jìn)行了詳盡地剖析的基礎(chǔ)上, 指出在傳統(tǒng)典型微處理器內(nèi)核中制約微處理器整體性能的主要因素, 然后提出以下改進(jìn)方案:

(1) 微處理器的內(nèi)核結(jié)構(gòu)上, 將乘、除法單元各自獨(dú)立出來來完成算術(shù)邏輯指令中的乘、除法運(yùn)算。這樣可以回避傳統(tǒng)典型微處理器基于累加器的ALU結(jié)構(gòu)及算術(shù)邏輯指令, 從而提高邏輯指令的執(zhí)行效率。

(2) 在指令系統(tǒng)上, 通過采用類RISC的指令系統(tǒng)和硬布線直接產(chǎn)生控制信號的方式來簡化指令譯碼器的設(shè)計(jì)。同時(shí)為內(nèi)核添加指令緩沖區(qū)、采用指令流水線技術(shù)、多管道并行執(zhí)行指令。

(3) 指令時(shí)序上, 設(shè)計(jì)中盡量減少指令執(zhí)行所需的時(shí)鐘周期, 提高微處理器的運(yùn)行效率。

1.2 總體設(shè)計(jì)思路

根據(jù)IP core通用的設(shè)計(jì)方法, 本文采用了標(biāo)準(zhǔn)的自頂向下的設(shè)計(jì)方法。就是根據(jù)系統(tǒng)級的內(nèi)容,把系統(tǒng)劃分為單元, 然后再把每個(gè)單元?jiǎng)澐譃橄乱粚哟蔚膯卧?這樣一直劃分下去, 直到最底層的單元可以用硬件描述語言進(jìn)行設(shè)計(jì), 如圖1所示; 接著在完成各個(gè)模塊設(shè)計(jì)的基礎(chǔ)上完成系統(tǒng)級設(shè)計(jì);然后進(jìn)行整個(gè)系統(tǒng)的仿真驗(yàn)證; 最后選用特定的FPGA芯片進(jìn)行綜合、布局布線以及功能后仿真。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖1 微處理器系統(tǒng)級劃分圖

2 各子模塊的設(shè)計(jì)

2.1 ALU模塊

算術(shù)邏輯單元(ALU) 是微控制器的核心部件, ALU的設(shè)計(jì)依賴于指令系統(tǒng), ALU采用什么樣的結(jié)構(gòu)、設(shè)置那些功能都是建立在對系統(tǒng)指令集分析的基礎(chǔ)上來完成。

根據(jù)算術(shù)運(yùn)算類指令可知, ALU單元主要要完成的功能有: 帶/不帶進(jìn)位加/減法、乘法、除法、十進(jìn)制調(diào)整、邏輯運(yùn)算以及布爾操作的實(shí)現(xiàn)。整個(gè)操作的完成是通過多路選擇器控制來完成。因此, 我們可以對整個(gè)ALU系統(tǒng)進(jìn)行如圖2劃分, 然后對各個(gè)子模塊進(jìn)行設(shè)計(jì)。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖2 ALU系統(tǒng)劃分框圖

2.2 控制通路的設(shè)計(jì)

本文中的控制通路由譯碼器模塊和控制器模塊兩部分組成。這部分的設(shè)計(jì)是在對指令系統(tǒng)進(jìn)行正確分析的基礎(chǔ)上來完成。

設(shè)計(jì)控制通路有兩種主要的方法。微程序控制(或微序列控制) 方式使用存儲(chǔ)器查表方式來輸出控制信號, 而硬連線控制使用時(shí)序邏輯和組合邏輯來產(chǎn)生控制信號。硬件直接實(shí)現(xiàn)的控制單元一般用有限狀態(tài)機(jī)實(shí)現(xiàn), 通常有較高的運(yùn)算速度;但是通用性差, 每個(gè)電路都必須專門設(shè)計(jì)控制單元。每一種方法都有一些變形形式。由于本文中微處理器的控制相對簡單, 所以在設(shè)計(jì)中采用了硬連線控制方法。

(1) 控制器模塊的狀態(tài)機(jī)實(shí)現(xiàn)

根據(jù)本文中多數(shù)輸出要保持一個(gè)完整的時(shí)鐘周期, 此時(shí)鐘周期內(nèi)輸出不能受時(shí)鐘信號的影響,所以采用Moore型有限狀態(tài)機(jī)來完成控制器模塊的設(shè)計(jì)。整個(gè)控制模塊的設(shè)計(jì)通過主狀態(tài)機(jī)和子狀態(tài)機(jī)兩步來完成。注狀態(tài)機(jī)模型如圖3所示。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖3 控制單元的主狀態(tài)機(jī)模型

以中斷處理子狀態(tài)機(jī)設(shè)計(jì)為例, 對子狀態(tài)機(jī)的設(shè)計(jì)進(jìn)行說明, 狀態(tài)轉(zhuǎn)換圖如圖4所示。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖4 中斷處理狀態(tài)機(jī)狀態(tài)轉(zhuǎn)換圖

(2) 存儲(chǔ)器模塊的設(shè)計(jì)

存儲(chǔ)器是數(shù)字系統(tǒng)的重要組成部分, 數(shù)據(jù)處理單元的處理結(jié)果需要存儲(chǔ), 許多處理單元的初始化數(shù)據(jù)也需要存放在存儲(chǔ)器中。本文的存儲(chǔ)器結(jié)構(gòu), 采用的是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開尋址的哈佛結(jié)構(gòu)。同時(shí)又將數(shù)據(jù)存儲(chǔ)器分為內(nèi)部數(shù)據(jù)存儲(chǔ)器和外部數(shù)據(jù)存儲(chǔ)器兩部分來設(shè)計(jì)。

(3) 中斷系統(tǒng)設(shè)計(jì)

本文中的中斷系統(tǒng)在控制通路來完成, 共提供了5個(gè)中斷源, 同時(shí)通過對中斷優(yōu)先級寄存器IP中的某位的置位或清除, 可以把每個(gè)中斷源分別編程為高優(yōu)先級或低優(yōu)先級。如表1所示。

表1 中斷源表

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

(4) 定時(shí)器/計(jì)數(shù)器模塊的設(shè)計(jì)

定時(shí)器/計(jì)數(shù)器是微處理器中重要的外圍模塊,它主要是完成作為定時(shí)器和事件計(jì)數(shù)器的功能。

在作為定時(shí)器工作時(shí), 每一個(gè)機(jī)器周期使定時(shí)寄存器加1計(jì)數(shù)。在作為事件計(jì)數(shù)器工作時(shí), 是對外部輸入負(fù)跳變信號做加法計(jì)數(shù), 規(guī)定在每個(gè)機(jī)器周期的某一狀態(tài)采樣此信號, 在前一個(gè)周期采樣到"1", 后一個(gè)周期采樣到"0" 時(shí)計(jì)數(shù)加1, 而在檢測到跳變信號后的那個(gè)周期的下一個(gè)狀態(tài)時(shí),新的計(jì)數(shù)值裝入計(jì)數(shù)寄存器。

3 系統(tǒng)綜合、仿真驗(yàn)證與性能分析

在整個(gè)微處理器IP核的設(shè)計(jì)過程中, 利用可編程邏輯器件進(jìn)行電路驗(yàn)證對于保證設(shè)計(jì)的正確性和投片成功十分重要。在FPGA的設(shè)計(jì)流程中包括三種基本的驗(yàn)證方法: HDL、RTL級描述仿真, 門級仿真和布線后的時(shí)序仿真。具體驗(yàn)證流程如圖5所示。仿真的目的就是要確認(rèn)設(shè)計(jì)的正確性。如果出錯(cuò)的話, 則通過分析仿真器的輸出波形, 找出出錯(cuò)的原因, 并對原設(shè)計(jì)進(jìn)行修改。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖5 系統(tǒng)驗(yàn)證流圖

3.1 仿真驗(yàn)證

驗(yàn)證方法: 首先編寫各種測試代碼; 然后轉(zhuǎn)化為vhdl文件, 再寫入ROM模塊; 最后在仿真環(huán)境中運(yùn)行IP核, 完成對整個(gè)系統(tǒng)的全指令集測試。一般內(nèi)部RAM和寄存器的值無法直接檢測, 可以通過多條指令將其輸出到IP核的四個(gè)輸出端口供檢查。本文采用Model Tech公司的仿真工具M(jìn)oledsim來進(jìn)行功能仿真和時(shí)序仿真。

圖6是對基本子程序調(diào)用指令的測試仿真時(shí)序。包括子程序調(diào)用、傳送、加法以及返回等指令。根據(jù)測試指令集, 如果程序執(zhí)行正確, 那么在程序執(zhí)行完后, 輸出端口P0口就會(huì)出現(xiàn)21H。

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

圖6 基本子程序調(diào)用指令的測試仿真波形圖

測試指令集: MOV A, #20H; ACALL DELEY;MOV P0, A; DELAY: INC A; MOV P0, A。

3.2 綜合及綜合結(jié)果分析

本文中的綜合及優(yōu)化都是由綜合工具SynplifyPro來完成的。利用Synplify Pro工具提供的邏輯綜合與適配工具和設(shè)計(jì)的約束條件, 可以方便的實(shí)現(xiàn)本文各模塊的邏輯綜合和布局布線。

對于本文中的八位微處理器來說, 由于它是一個(gè)非常復(fù)雜的數(shù)字邏輯電路, 不僅包含大量的組合邏輯電路, 而且包含了時(shí)序復(fù)雜的時(shí)序邏輯電路。通過邏輯綜合估計(jì)整個(gè)系統(tǒng)超過一百萬門,因此要用大容量的可編程邏輯器件來做電路驗(yàn)證。

通過比較各種可編程邏輯器件的性能和結(jié)構(gòu)特點(diǎn)(見表2), 決定采用器件Xilinx Virtex2 XC2V1000bg575-6來完成本文的電路驗(yàn)證。

表2 Virtex2系列器件性能和結(jié)構(gòu)特點(diǎn)表

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

綜合結(jié)果分析主要是利用結(jié)構(gòu)視圖、綜合報(bào)告分析綜合結(jié)果是否滿足時(shí)序要求, 分析綜合的頻率、面積等信息。

3.3 性能分析

本文的器件資源的占用情況如表3.(由于內(nèi)部存儲(chǔ)器要占用很多的資源, 故此表列出的是縮減內(nèi)部內(nèi)存后器件的資源占用情況)。

表3 器件資源占用情況表

基于VHDL語言與FPGA的嵌入式微處理器IP core設(shè)計(jì)與分析

將經(jīng)過FPGA驗(yàn)證的MCU核與傳統(tǒng)的微處理器做比較, 可以看出, 由于所設(shè)計(jì)的微處理器核是采用硬布線邏輯產(chǎn)生控制信號, 所以其工作時(shí)鐘頻率要大大優(yōu)于傳統(tǒng)的微處理器。FPGA驗(yàn)證的結(jié)果是, 工作時(shí)鐘頻率大于60MHz, 是傳統(tǒng)微控制器工作時(shí)鐘頻率的五倍; 在每MHz時(shí)鐘頻率的指令執(zhí)行效率指標(biāo)上, 所設(shè)計(jì)微處理器核的性能約為傳統(tǒng)微控制器的12倍。這得益于微控制器內(nèi)核采用類RISC指令結(jié)構(gòu), 及設(shè)計(jì)指令執(zhí)行周期的大大減小。

4 結(jié)束語

由于整個(gè)微控制器內(nèi)核都是采用可綜合的VHDL語言描述, 這使得該內(nèi)核具有很好的可移植性、可重復(fù)利用性和實(shí)用性。也可以適當(dāng)?shù)赝貙挃?shù)據(jù)總線的寬度, 以減少內(nèi)存訪問的次數(shù), 從而提高指令執(zhí)行效率。此外, 還可借助EDA工具,方便地與AD/DA轉(zhuǎn)換器、LCD顯示驅(qū)動(dòng)器、串行通信接口等外圍功能模塊綜合成各種嵌入式控制系統(tǒng)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22042

    瀏覽量

    618245
  • 嵌入式
    +關(guān)注

    關(guān)注

    5150

    文章

    19660

    瀏覽量

    317406
  • 微處理器
    +關(guān)注

    關(guān)注

    11

    文章

    2383

    瀏覽量

    84159
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    嵌入式微處理器是由什么組成

    嵌入式系統(tǒng)硬件層的核心是嵌入式微處理器,嵌入式微處理器與通用CPU最大的不同在于嵌入式微處理器大多工作在為特定用戶群所專用設(shè)計(jì)的系統(tǒng)中。
    發(fā)表于 09-11 16:32 ?5127次閱讀

    嵌入式微處理器與應(yīng)用

    嵌入式微處理器與應(yīng)用(嵌入式開發(fā)環(huán)境的構(gòu)建包括幾部分內(nèi)容)-該文檔為嵌入式微處理器與應(yīng)用講解文檔,是一份很不錯(cuò)的參考資料,具有較高參考價(jià)值,感興趣的可以下載看看………………
    發(fā)表于 07-30 09:59 ?18次下載
    <b class='flag-5'>嵌入式微處理器</b>與應(yīng)用

    嵌入式微處理器的原理和應(yīng)用

    嵌入式微處理器是專為嵌入式系統(tǒng)設(shè)計(jì)的微處理器,它們是嵌入式系統(tǒng)的核心組件,負(fù)責(zé)執(zhí)行程序指令、處理數(shù)據(jù)和控制其他硬件設(shè)備。與通用
    的頭像 發(fā)表于 03-28 15:51 ?1417次閱讀

    什么是嵌入式微處理器?嵌入式微處理器有哪些?

    嵌入式微處理器是指嵌入到特定應(yīng)用系統(tǒng)中的微處理器,它是整個(gè)嵌入式系統(tǒng)的核心,由通用處理器演變而來,具有體積小、重量輕、成本低、可靠性高等優(yōu)點(diǎn)
    的頭像 發(fā)表于 03-29 11:39 ?1562次閱讀

    嵌入式微處理器嵌入式微控制器的區(qū)別

    嵌入式微處理器嵌入式微控制器在多個(gè)方面存在顯著的區(qū)別。
    的頭像 發(fā)表于 03-29 11:44 ?2115次閱讀

    主流嵌入式微處理器的結(jié)構(gòu)與原理是什么 常見的嵌入式微處理器類型包括

    主流嵌入式微處理器的結(jié)構(gòu)與原理 嵌入式微處理器是一種專門設(shè)計(jì)用于嵌入式系統(tǒng)的微處理器。它具有高度集成的特點(diǎn),能夠執(zhí)行特定的任務(wù)并且通常具有低功耗。主流
    的頭像 發(fā)表于 04-21 09:32 ?1090次閱讀

    dsp和嵌入式微處理器的區(qū)別和聯(lián)系 嵌入式微處理器應(yīng)用領(lǐng)域分析

    嵌入式微處理器(Embedded Microprocessor)和數(shù)字信號處理器(Digital Signal Processor,簡稱DSP)是兩種常見的微處理器架構(gòu)。它們在應(yīng)用領(lǐng)域、設(shè)計(jì)理念
    的頭像 發(fā)表于 04-21 09:50 ?2471次閱讀

    嵌入式微處理器的功能 嵌入式微處理器原理與應(yīng)用

    嵌入式微處理器是一種集成了中央處理單元(CPU)核心和各種外圍接口的集成電路,廣泛應(yīng)用于嵌入式系統(tǒng)中。由于嵌入式系統(tǒng)對功耗、體積和成本等方面有著嚴(yán)格的要求,
    的頭像 發(fā)表于 05-04 14:50 ?1785次閱讀

    嵌入式微處理器的分類特點(diǎn) 嵌入式微處理器作用

    嵌入式微處理器是一種專門設(shè)計(jì)用于控制和執(zhí)行嵌入式系統(tǒng)任務(wù)的微處理器。與通用微處理器相比,嵌入式微處理器通常具有低功耗、小體積、低成本和高度可
    的頭像 發(fā)表于 04-21 14:52 ?1669次閱讀

    嵌入式微處理器有哪幾類 嵌入式微處理器包含哪些重要參數(shù)

    嵌入式微處理器是指特別設(shè)計(jì)用于嵌入式系統(tǒng)的微處理器,它具有小型化、低功耗、高性能和多功能等特點(diǎn)。嵌入式微處理器廣泛應(yīng)用于各種電子設(shè)備中,例如智能手機(jī)、平板電腦、數(shù)字相機(jī)、汽車電子、醫(yī)療
    的頭像 發(fā)表于 05-04 14:58 ?1372次閱讀

    嵌入式微處理器的類型與特點(diǎn) 嵌入式微處理器技術(shù)的優(yōu)缺點(diǎn)

    嵌入式微處理器是一種專門設(shè)計(jì)和應(yīng)用于嵌入式系統(tǒng)的微處理器。相比于常規(guī)計(jì)算機(jī)系統(tǒng),嵌入式系統(tǒng)通常具有更高的實(shí)時(shí)性、更低的功耗、較小的尺寸和成本以及更強(qiáng)的可靠性和穩(wěn)定性要求。
    的頭像 發(fā)表于 05-04 15:10 ?3811次閱讀

    什么是嵌入式微處理器? 嵌入式微處理器的區(qū)別

    嵌入式微處理器(Embedded Microprocessor)是一種被用于控制和操作特定嵌入式系統(tǒng)的微處理器。嵌入式系統(tǒng)是指內(nèi)部集成了特定功能和任務(wù)的計(jì)算機(jī)系統(tǒng),通常被
    的頭像 發(fā)表于 04-21 15:44 ?2128次閱讀

    嵌入式微處理器主要組成 嵌入式微處理器的分類和特點(diǎn)

    嵌入式微處理器是指集成在嵌入式系統(tǒng)中的微處理器,它是一種專門針對特定應(yīng)用的定制處理器。嵌入式微處理器的主要組成包括核心
    的頭像 發(fā)表于 05-04 15:48 ?2970次閱讀

    嵌入式微處理器的分類 嵌入式微處理器的種類和型號

    的分類可以從多個(gè)角度進(jìn)行劃分,比如架構(gòu)、指令集、用途等。下面將從這些角度詳細(xì)介紹嵌入式微處理器的種類和型號。 一、架構(gòu)分類 嵌入式微處理器的架構(gòu)分類主要有以下幾種: 單核架構(gòu)(Single-core):單核架構(gòu)的
    的頭像 發(fā)表于 05-04 16:31 ?2904次閱讀

    嵌入式微處理器體系結(jié)構(gòu) 嵌入式微處理器原理與應(yīng)用

    嵌入式微處理器是一種集成于嵌入式系統(tǒng)中的微處理器,其體系結(jié)構(gòu)和應(yīng)用具有獨(dú)特特點(diǎn)。本文將詳細(xì)介紹嵌入式微處理器的體系結(jié)構(gòu)以及其原理與應(yīng)用。 一、嵌入式
    的頭像 發(fā)表于 05-04 16:53 ?2851次閱讀