色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在可編程邏輯中實現MCU內核設計

FPGA設計論壇 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2023-04-01 13:20 ? 次閱讀

有時,微控制器本身可以完全滿足設計的所有功能要求。對于大多數嵌入式系統設計,編程良好、高度集成的嵌入式處理器是工程師可用的最具成本效益、最節能、最快的解決方案。

當原始性能至關重要時,專用硬件中捕獲的邏輯可以實現最高水平的性能。例如,定序器可以比在軟件中實現的相同邏輯快一個數量級。

由于分立邏輯器件占用大量空間和功率,添加 FPGA 可能是一種可行的替代方案;在許多情況下,FPGA 和微控制器的組合是一個很好的解決方案。當微在 FPGA 的邏輯中實現時,更密集的解決方案是可能的。作為硬編碼宏,或在每個新設計中被替換和路由的軟宏,將整個微控制器吸收到 FPGA 內部不僅可以產生最高的密度,而且可以產生最大的靈活性,特別是如果你有足夠的勇氣去實際修改核心以提高性能。

本文著眼于在現成的 FPGA 中愉快地運行的微內核。這些可從各種來源獲得,包括開放式和封閉式、免費和 IP 許可的。

比原來的更好

遺留和專有架構都可以使用,并且各有優勢。舊版內核與舊版 micros 兼容,并提供熟悉的架構。然后,您公司生產的產品可以使用已經過測試和驗證的代碼。當需要下一代產品甚至新的改進模型時,組織良好且可靠的代碼庫的可重用性可以節省大量時間。

幾個流行的內核已經以原始邏輯形式用于各種 FPGA 系列,包括處理器,例如Microchip PIC、英特爾 8051、Atmel AVR、摩托羅拉 6502、英特爾 8080 和Zilog Z80 微控制器,僅舉幾例。

一個不那么明顯的優點是能夠改進初始架構。如果時間和資源允許,可以克服缺點,因為您可以修改設計。例如,非常流行的 8051 架構最初是采用順序架構引入的,每條指令需要 12 個時鐘周期。精確的遺留實現可以反映初始功能,或者可以實現更現代的風格,減少每條指令的時鐘周期數。

8051 的改進 IP 內核也可用于跨平臺開發。R8051XC2-BF 內核1可用于 ASIC 或Xilinx和Altera FPGA;它通過添加第二個數據指針(初始設計的一個缺點)和 JTAG 調試接口(圖 1)對初始設計進行了改進。

73ae8a88-d04c-11ed-bfe3-dac502259ad0.png

圖 1:傳統內核的商用實現通常會改進最初的分立設計。這個 8051 內核每條指令運行一個時鐘,并添加了 JTAG 和第二個數據指針。

ARM內核

雖然許多設計可以使用 8 位內核,但現代功能可能需要更高的總線寬度來簡化處理。如果您正在處理 24 位寬的圖形數據,則單個 32 位傳輸比三個 8 位傳輸更有效。

也許最流行的 32 位架構是 ARM Cortex,毫無疑問,它已成為流行且得到良好支持的 FPGA 實現架構。從面積和功耗的角度來看,ARM Cortex 非常高效。眾多工具和開發套件以及用于外圍設備、內存管理、數學和 DSP 功能的開源代碼都很好地支持可擴展架構。

ARM 內核的一個很好的特性是它們不是某個 FPGA 制造商專有的,并且可以在不同制造商的設備上實現。這意味著隨著設計的發展或需求的變化,您不會被鎖定在一個供應商中。

另一個好處是架構從更簡單、功能更弱的Cortex M0擴展而來高達非常高端的多核A8和A9口味。這還帶來了經過軌道驗證的驅動程序和堆棧的好處,這些驅動程序和堆棧適用于 USB以太網Wi-FiZigBee藍牙等高端外圍設備。

Xilinx 系列器件是嵌入式微核的大力支持者,ARM 架構也不例外。XC5VLX50-1FFG676C等部件是流行的 Xilinx Virtex 5的一部分系列,并且是可以在芯片上容納快速和密集系統的非常大、密集和高端 FPGA 的示例。550 MHz 部件具有 440 個 I/O 和超過 46,000 個邏輯塊,不僅支持 ARM 內核功能,還支持高達 72 位寬的存儲器寬度、流水線操作、FIFO、具有高達 16.4 Mb 內部塊存儲器的雙端口存儲器和 DSP 功能。

Microsemi是另一家提供 ARM 內核支持的 FPGA 制造商,ProASIC3系列是一個很好的目標技術,具有令人印象深刻的低端到高端邏輯、I/O、RAM 和 15,000 到 3,000,000 門數。一個很好的例子是具有 341 I/O 和 516 Kb 內部 RAM 的A3PE3000-FGG484 。

Altera 有類似的部件,如EP3SL50F780C4N,它同樣支持 ARM 核心處理器,還為 DDR、DDR2、DDR3、SDRAM 等提供內存支持,最多可在 24 個模塊化 I/O bank 上使用 448 個 I/O(該系列中最多 744 個)。作為Stratix III系列的一員,Altera 提供對 Altera Mega-Function Partner Program (AMPP) 的訪問,以獲得可用的外設、內核和支持。Altera 還通過其 Altera MegaCore 功能支持多種知識產權(圖 2)。

73e92152-d04c-11ed-bfe3-dac502259ad0.png

圖 2:高端 32 位 ARM 架構是許多 FPGA 的流行內核。這個 Altera 版本增加了多核調試和跟蹤功能,簡化了單個 FPGA 內多個實例化處理器內核的設計。

專有內核

除了行業標準的微控制器內核之外,FPGA 制造商還提供專有內核,這些內核邏輯效率非常高,可擴展至 8 至 32 位性能級別。這些供應商的關鍵是不要在不需要的功能和外圍設備上浪費邏輯;如此經常縮減,實現了準系統處理單元,以提供基本的可編程性和與 FPGA 內部大型邏輯池的接口。這不僅可以讓內核快速運行,還可以讓它們足夠小,以便在您的 SoC 內創建您自己的雙核、四核甚至八核處理器。

Xilinx 將此類內核指定為 Blaze,提供 PicoBlaze 和 MicroBlaze 兩種風格。PicoBlaze 是一種 8 位 RISC 架構,具有高達 240 MHz 的性能。它主要設計用于 VHDL 設計流程,并作為 VHDL 源文件提供。一旦在 13 個不同的 Xilinx 系列之一中實現,它就不需要外部組件,并且完全在主機部分內運行。

支持的系列包括Kinetex-7、Artix-7、Virtex(4、5、6、7、II-Pro)和Spartan(3 和 6)。

從資源和復雜性的角度來看,PicoBlaze 相當斯巴達(雙關語)。它具有一個 16 x 字節寬的通用數據寄存器、1K 的可編程片上程序存儲(在 FPGA 配置期間自動加載)、一個字節寬的算術邏輯單元 (ALU),帶有 CARRY 和 ZERO 指示標志,64 字節內部暫存器 RAM,以及 256 個輸入和 256 個輸出端口,便于擴展和增強。

另一方面,它具有可預測的性能,每條指令總是兩個時鐘周期,最高可達 240 MHz(或在 Virtex-4 FPGA 中為 100 MIPS)和 88 MHz(或在 Spartan-3 FPGA 中為 44 MIPS)。PicoBlaze 對 Xilinx 用戶免費,并附帶一個匯編程序和 VHDL 源代碼。

高端的是 Xilinx MicroBlaze。這是一個 32 位 RISC 哈佛架構軟處理器內核,具有 32 個通用 32 位寄存器、ALU、針對嵌入式應用程序優化的豐富指令集、三級 MMU/MPU 支持等。

該內核的靈活性(圖 3)允許您選擇性能優化的五級流水線,通過 Kinetix-7 系列(如XC7K70T-1FBG676C)或 3 級流水線區域可實現高達 317 DMIPS在 Kintex-7 或 Virtex-6 和 7 系列部件(如XC6VLX130T-1FFG784C)上仍可實現可觀的 264 DMIPS 的優化版本。

740c1a54-d04c-11ed-bfe3-dac502259ad0.png

圖 3:Xilinx FPGA 的專有 32 位 MicroBlaze 內核具有條件編譯指令,允許您添加所需的模塊并刪除不需要的模塊,以節省邏輯并提高密度。

Altera 還提供了一個稱為 NIOS 的專有內核,現在是第二代NIOS II版本(圖 4)。它被譽為業內使用最廣泛的軟處理器,具有實時性能、功率靈敏度和安全關鍵 (DO-254) 合規性。

742c3712-d04c-11ed-bfe3-dac502259ad0.png

圖 4:Altera 的第二代 NIOS II 內核被吹捧為 FPGA 使用和支持最廣泛的 IP 內核,并帶來了許多開發和調試功能。

六級流水線 NIOS 內核可以用少至 600 個邏輯元件和特征向量中斷控制、緊密的內存和 DSP 耦合以及添加自定義指令(最多 256 個)的能力來實現。它可以使用內存管理單元 (MMU),并支持開源和商業支持版本的嵌入式 Linux

可行的替代方案

您的設計細節將決定您應該選擇硬宏還是軟宏。硬宏占用 FPGA 內部的特定位置和資源,但硬編碼宏具有更好的特性,可以實現更好的性能。

軟宏也可以實現良好的性能,特別是如果您有足夠的勇氣修改、改進或并行它們。與往常一樣,良好的設計實踐將產生最佳結果。

總之,當需要盡可能高的密度和/或性能時,選擇 FPGA 內部的軟處理器而不是傳統的微控制器及其所有支持電路在靈活性、效率、性能、功率、和空間。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7547

    瀏覽量

    151338
  • FPGA
    +關注

    關注

    1629

    文章

    21729

    瀏覽量

    603053
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17135

    瀏覽量

    351032
  • 可編程邏輯
    +關注

    關注

    7

    文章

    515

    瀏覽量

    44083
  • 微內核
    +關注

    關注

    0

    文章

    57

    瀏覽量

    13430

原文標題:如何在可編程邏輯中實現 MCU 內核設計

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    何在可編程邏輯實現 MCU 內核設計

    六級流水線 NIOS 內核可以用少至 600 個邏輯元件和特征向量中斷控制、緊密的內存和 DSP 耦合以及添加自定義指令(最多 256 個)的能力來實現。它可以使用內存管理單元 (MMU),并支持開源和商業支持版本的嵌入式 Li
    發表于 08-09 10:45 ?782次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>可編程</b><b class='flag-5'>邏輯</b><b class='flag-5'>中</b><b class='flag-5'>實現</b> <b class='flag-5'>MCU</b> <b class='flag-5'>內核</b>設計

    什么是可編程邏輯

    。事實上,由于有了可編程邏輯器件,一些設備制造商現在正在嘗試為已經安裝在現場的產品增加新功能或者進行升級。要實現這一點,只需要通過因特網將新的編程文件上載到PLD就可以在系統創建出新
    發表于 05-29 11:36

    可編程邏輯器件

    可編程邏輯器件到底是干什么用的呢,簡單的說,就是通過重新寫程序,重新注入到這個器件達到實現其它的功能。最常見的當屬電腦了。電腦本身除了加法,減法和簡單的邏輯運算四種。比如要是想
    發表于 04-15 10:02

    什么是可編程邏輯控制器?可編程邏輯控制器有哪些特點?

    什么是可編程邏輯控制器?可編程邏輯控制器主要有哪些特點?可編程邏輯控制器主要有哪些應用領域?
    發表于 07-05 06:00

    可編程邏輯基礎電子書

    可編程邏輯基礎電子書
    發表于 03-23 16:48 ?0次下載

    可編程邏輯器件基礎及應用實驗指導書

    可編程邏輯器件基礎及應用實驗指導書 《可編程邏輯器件基礎及應用》是一門側重掌握可編程邏輯器件的基本結構和原理的課程。重點是使學生掌握基于可編程
    發表于 03-24 14:22 ?29次下載

    什么是PLD(可編程邏輯器件)

    什么是PLD(可編程邏輯器件) PLD是可編程邏輯器件(Programable Logic Device)的簡稱,FPGA是現場可編程門陣列(Field Programable Gate Array)
    發表于 06-20 10:32 ?2.6w次閱讀
    什么是PLD(<b class='flag-5'>可編程邏輯</b>器件)

    可編程陣列邏輯(Programmable Array Log

    可編程陣列邏輯(Programmable Array Logic) 可編程陣列邏輯(PAL)是一種與項可編程、或項固定結構的
    發表于 09-18 09:13 ?2074次閱讀

    EDA技術與應用(可編程邏輯器件)

    7.1 可編程邏輯器件的基本原理 7.2 可編程邏輯器件的設計技術 7.3 可編程邏輯器件的編程與配置
    發表于 05-23 10:46 ?142次下載
    EDA技術與應用(<b class='flag-5'>可編程邏輯</b>器件)

    基于可編程邏輯的SDRAM控制方法設計

    基于可編程邏輯的SDRAM控制方法設計
    發表于 06-30 10:16 ?8次下載

    可編程邏輯控制繼電器

    可編程邏輯控制繼電器 可編程邏輯控制繼電器是一種“可編程序”、“通用”、“智能化”控制繼電器,不同廠商的產品有不同的名稱,如,德國金鐘-默勒
    發表于 11-01 13:16 ?1186次閱讀

    可編程邏輯器件測試方法

    可編程邏輯器件 (Programmable Loeie Device,PLD)是一種用戶編程實現某種邏輯功能的邏輯器件,主要由
    的頭像 發表于 06-06 15:35 ?1496次閱讀
    <b class='flag-5'>可編程邏輯</b>器件測試方法

    可編程邏輯器件測試

    可編程邏輯器件 (Programmable Loeie Device,PLD)是一種用戶編程實現某種邏輯功能的邏輯器件,主要由
    發表于 06-06 15:37 ?679次閱讀
    <b class='flag-5'>可編程邏輯</b>器件測試

    什么叫可編程邏輯器件 可編程邏輯器件有哪些特征和優勢?

    可編程邏輯器件(Programmable Logic Device,PLD)是一類集成電路器件,可以根據用戶的需求進行編程和配置,以實現特定的邏輯功能。它們具有
    發表于 09-14 15:25 ?2826次閱讀

    什么是現場可編程邏輯陣列?它有哪些特點和應用?

    可編程邏輯元件和可編程互連,實現邏輯電路的設計和配置。FPLA在電子系統設計、數字信號處理、網絡通信等多個領域都有廣泛應用。本文將對現場
    的頭像 發表于 05-23 16:25 ?935次閱讀
    主站蜘蛛池模板: 两个人在线观看的视频720| jj插入bb| 亚洲国产精品一区二区久久第| 日本高清免费一本视频在线观看| 麻豆国产96在线日韩麻豆| 久99视频精品免费观看福利 | 色久悠悠无码偷拍自怕| 嗯啊好爽视频| 伦理 电影在线观看| 久久免费黄色| 久久99精国产一区二区三区四区| 黑吊大战白女出浆| 国内极度色诱视频网站| 国模丽丽啪啪一区二区| 国产亚洲精品久久久久久白晶晶| 国产免费麻传媒精品国产AV| 国产黄大片在线视频| 国产精品99久久久久久AV| 高中生高潮抽搐喷出白浆视频| 超碰97av 在线人人操| 成年人深夜福利| 纯肉小黄文高H| 国产成人99久久亚洲综合精品| 福利一区国产| 国产成人综合在线视频| 国产精品无码AV天天爽人妻蜜桃| 国产免费人成在线视频有码| 国产午夜一级淫片| 好满射太多了装不下了视频 | avv天堂| ai换脸在线全集观看| 爱啪国产精品视频在线| 俄罗斯19girl video9| 国产69精品9999XXXX| 国产喷水1区2区3区咪咪爱AV| 国产亚洲精品精华液| 九九热视频这里只有精| 免费国产在线观看| 日本69xxxx| 亚洲国产夜色在线观看| 在线观看视频亚洲|