99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

在FPGA中實(shí)現(xiàn)MCU內(nèi)核的快速運(yùn)行

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

掃碼添加小助手

加入工程師交流群

有時(shí),微控制器本身可以完全吸收設(shè)計(jì)的所有功能要求。對于絕大多數(shù)嵌入式系統(tǒng)設(shè)計(jì)而言,編程良好,高度集成的嵌入式處理器是工程師可以使用的最具成本效益,功效最高,速度最快的解決方案。

當(dāng)原始性能至關(guān)重要時(shí),捕獲的邏輯專用硬件可實(shí)現(xiàn)最高性能。例如,定序器可以比軟件中實(shí)現(xiàn)的相同邏輯快一個(gè)數(shù)量級。由于分立邏輯器件占用大量空間和功率,因此添加FPGA是一種可行的替代方案。在許多情況下,F(xiàn)PGA和微控制器的組合是一個(gè)很好的解決方案。當(dāng)微控制器在FPGA的邏輯中實(shí)現(xiàn)時(shí),可以實(shí)現(xiàn)更密集的解決方案。作為硬編碼的宏,或者在每個(gè)新設(shè)計(jì)中被替換和布線的軟宏,整個(gè)微控制器吸收到FPGA的房子不僅可以產(chǎn)生最高的密度,而且可以產(chǎn)生最大的靈活性,特別是如果你足夠勇敢地修改核心以提高性能。本文著眼于在現(xiàn)有FPGA中快速運(yùn)行的微核。這些可以從各種來源獲得,包括開放和封閉,免費(fèi)和IP許可。

比原始版本更好

可以使用傳統(tǒng)架構(gòu)和專有架構(gòu),每種架構(gòu)都有優(yōu)勢。傳統(tǒng)內(nèi)核與傳統(tǒng)微處理器兼容,并提供熟悉的體系結(jié)構(gòu)。您公司生產(chǎn)的產(chǎn)品可以使用已經(jīng)過測試和驗(yàn)證的代碼。當(dāng)需要下一代產(chǎn)品甚至是新的改進(jìn)模型時(shí),組織良好且可靠的代碼庫的可重用性可以節(jié)省大量時(shí)間。

幾種流行的內(nèi)核已經(jīng)以原始邏輯形式實(shí)現(xiàn)了各種各樣的FPGA系列包括諸如Microchip PIC,Intel 8051,Atmel AVR,Motorola 6502,Intel 8080和Zilog Z80微控制器等處理器。一個(gè)不那么明顯的優(yōu)點(diǎn)是能夠改進(jìn)初始化建筑。如果時(shí)間和資源允許,可以克服缺點(diǎn),因?yàn)槟梢孕薷脑O(shè)計(jì)。例如,非常流行的8051架構(gòu)最初采用有序架構(gòu),每條指令需要12個(gè)時(shí)鐘周期。精確的傳統(tǒng)實(shí)現(xiàn)可以反映初始功能,或者可以實(shí)現(xiàn)更現(xiàn)代的風(fēng)格,減少每條指令的時(shí)鐘周期數(shù)。

改進(jìn)的8051 IP內(nèi)核也可用于跨平臺開發(fā)。 R8051XC2-BF核心1可用于ASIC或Xilinx和Altera FPGA;它通過添加第二個(gè)數(shù)據(jù)指針(初始設(shè)計(jì)的缺點(diǎn))和JTAG調(diào)試接口(圖1)改進(jìn)了初始設(shè)計(jì)。

在FPGA中實(shí)現(xiàn)MCU內(nèi)核的快速運(yùn)行

圖1:傳統(tǒng)核心的商業(yè)可用實(shí)現(xiàn)通常會(huì)改進(jìn)初始的離散設(shè)計(jì)。這個(gè)8051內(nèi)核每個(gè)指令運(yùn)行一個(gè)時(shí)鐘,并添加JTAG和第二個(gè)數(shù)據(jù)指針。

ARM內(nèi)核雖然許多設(shè)計(jì)可以使用8位內(nèi)核,但現(xiàn)代功能可能需要更高的總線寬度來簡化處理。如果您正在操作24位寬的圖形數(shù)據(jù),則單個(gè)32位傳輸比三個(gè)8位傳輸更有效。

最流行的32位架構(gòu)也許是ARM?Cortex?,令人驚訝的是,它已成為FPGA實(shí)現(xiàn)的流行且受到良好支持的架構(gòu)。從面積和功耗角度來看,ARM Cortex非常高效??蓴U(kuò)展的架構(gòu)得到眾多工具和開發(fā)套件的很好支持,以及外圍設(shè)備,內(nèi)存管理,數(shù)學(xué)和DSP功能的開源代碼。

ARM內(nèi)核的一個(gè)很好的特性是它們不屬于一個(gè)FPGA制造商,可以在不同制造商的設(shè)備上實(shí)現(xiàn)。這意味著隨著設(shè)計(jì)的發(fā)展或需求的變化,您不會(huì)被鎖定在一個(gè)供應(yīng)商中。另一個(gè)好處是,架構(gòu)可以從更簡單,功能更少的Cortex M0擴(kuò)展到非常高端的多核A8和A9風(fēng)格。此外,還具有經(jīng)過賽道驗(yàn)證的驅(qū)動(dòng)程序和堆棧,可用于高端外設(shè),如USB以太網(wǎng),Wi-Fi,ZigBee,藍(lán)牙等。

Xilinx系列產(chǎn)品是嵌入式微核的大支持者,而ARM架構(gòu)也不例外。像XC5VLX50-1FFG676C這樣的器件是XilinxVirtex?5系列的一部分,它是一個(gè)非常大,密集,高端的FPGA的例子,它可以在芯片上安裝一個(gè)快速而密集的系統(tǒng)。 550 MHz器件具有440個(gè)I/O和超過46,000個(gè)邏輯模塊,不僅支持ARM內(nèi)核功能,還支持高達(dá)72位寬的存儲(chǔ)器寬度,流水線操作,F(xiàn)IFO,具有高達(dá)16.4 Mbits內(nèi)部塊存儲(chǔ)器的雙端口存儲(chǔ)器和DSP功能。

Microsemi是另一家提供ARM內(nèi)核支持的FPGA制造商,ProASIC3系列是一款優(yōu)秀的目標(biāo)技術(shù),具有令人印象深刻的低端到高端邏輯,I/O,RAM和門數(shù)15,000到3,000,000。一個(gè)很好的例子是A3PE3000-FGG484具有341個(gè)I/O和516 Kbits的內(nèi)部RAM。

Altera具有可比較的部件,如EP3SL50F780C4N,它同樣支持ARM核心處理器,并為DDR,DDR2,DDR3,SDRAM提供內(nèi)存支持更多,最多24個(gè)模塊化I/O bank,448 I/O(系列中最多744個(gè))。作為Stratix?III系列的成員,Altera可以訪問Altera Mega-Function合作伙伴計(jì)劃(AMPP),以獲取可用的外設(shè),內(nèi)核和支持。 Altera還通過其Altera MegaCore功能支持多種知識產(chǎn)權(quán)(圖2)。

在FPGA中實(shí)現(xiàn)MCU內(nèi)核的快速運(yùn)行

圖2:高端32位ARM架構(gòu)是許多FPGA的流行核心。該Altera版本增加了多核調(diào)試和跟蹤功能,簡化了單個(gè)FPGA內(nèi)多個(gè)實(shí)例化處理器內(nèi)核的設(shè)計(jì)。

專有內(nèi)核

除了行業(yè)標(biāo)準(zhǔn)的微控制器內(nèi)核外,F(xiàn)PGA制造商還提供專有內(nèi)核,這些內(nèi)核具有非常高的邏輯效率,可擴(kuò)展至8至32位的性能水平。這些供應(yīng)商的關(guān)鍵不是在不需要的功能和外圍設(shè)備上浪費(fèi)邏輯;經(jīng)??s減,實(shí)現(xiàn)了裸機(jī)處理單元,以提供基本的可編程性和FPGA內(nèi)部大型邏輯池的接口。這不僅可以讓內(nèi)核快速運(yùn)行,而且還可以保持它們足夠小,以便在SoC內(nèi)部創(chuàng)建自己的雙核,四核甚至八核處理器。

Xilinx指定Blaze這樣的內(nèi)核,可以同時(shí)使用PicoBlaze和MicroBlaze口味。 PicoBlaze是一種8位RISC架構(gòu),具有高達(dá)240 MHz的性能。它主要設(shè)計(jì)用于VHDL設(shè)計(jì)流程,并作為VHDL源文件提供。一旦在13個(gè)不同的Xilinx系列中實(shí)現(xiàn),它就不需要外部元件,完全在主機(jī)部分內(nèi)部運(yùn)行。

支持的系列包括Kinetex-7,Artix-7,Virtex(4,5,6,7,II-Pro) )和Spartan?(3和6)。從資源和復(fù)雜性的角度來看,PicoBlaze是Spartan(雙關(guān)語)。它具有一個(gè)16 x字節(jié)寬的通用數(shù)據(jù)寄存器,1K可編程片上程序存儲(chǔ)器(在FPGA配置期間自動(dòng)加載),一個(gè)帶有CARRY和ZERO指示器標(biāo)志的字節(jié)寬運(yùn)算邏輯單元(ALU),64字節(jié)內(nèi)部暫存器RAM,256個(gè)輸入和256個(gè)輸出端口,便于擴(kuò)展和增強(qiáng)。另一方面,它具有可預(yù)測的性能,每條指令總是兩個(gè)時(shí)鐘周期,高達(dá)240 MHz(或Virtex-4中的100 MIPS) FPGA)和88 MHz(或Spartan-3 FPGA中的44 MIPS)。 PicoBlaze對Xilinx用戶免費(fèi)提供,并附帶匯編程序和VHDL源代碼。

高端是Xilinx MicroBlaze。這是一個(gè)32位RISC Harvard架構(gòu)軟核處理器內(nèi)核,具有32個(gè)通用32位寄存器,ALU,針對嵌入式應(yīng)用優(yōu)化的豐富指令集,三級MMU/MPU支持等。

靈活性該核心(圖3)允許您選擇性能優(yōu)化的五級流水線,使用Kinetix-7系列(例如XC7K70T-1FBG676C)或3級流水線區(qū)域優(yōu)化版本可實(shí)現(xiàn)高達(dá)317 DMIPS在Xintex-7或Virtex-6和7系列器件(如XC6VLX130T-1FFG784C)上仍然可以達(dá)到令人尊敬的264 DMIPS。

在FPGA中實(shí)現(xiàn)MCU內(nèi)核的快速運(yùn)行

圖3:用于Xilinx FPGA的專有32位MicroBlaze內(nèi)核有條件編譯指令允許你添加你需要的塊,并消除你不保存邏輯和提高密度的塊。

Altera還提供了一個(gè)名為NIOS的專有內(nèi)核,現(xiàn)在是第二代NIOS II版本(圖4) 。作為業(yè)界使用最廣泛的軟處理器,它具有功率靈敏度和安全關(guān)鍵(DO-254)兼容性的實(shí)時(shí)性能。

在FPGA中實(shí)現(xiàn)MCU內(nèi)核的快速運(yùn)行

圖4:Altera的第二代NIOS II內(nèi)核被譽(yù)為FPGA中使用最廣泛且支持的IP內(nèi)核,并帶來了許多開發(fā)和調(diào)試功能。

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

可行的替代方案

您的設(shè)計(jì)細(xì)節(jié)將決定您是應(yīng)該選擇硬宏還是軟宏。硬宏占用FPGA內(nèi)部的特定位置和資源,但硬編碼宏的特性更好,可以實(shí)現(xiàn)更好的性能。

軟宏也可以實(shí)現(xiàn)良好的性能,特別是如果你足夠勇敢修改,改進(jìn),或平行他們。一如既往,良好的設(shè)計(jì)實(shí)踐將產(chǎn)生最佳結(jié)果。總之,當(dāng)需要盡可能高的密度和/或性能時(shí),選擇FPGA內(nèi)部的軟處理器而不是傳統(tǒng)的微控制器及其所有支持電路可能在靈活性,效率,性能,功耗和空間方面,這是一個(gè)更好的解決方案。

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

    關(guān)注

    48

    文章

    7955

    瀏覽量

    155208
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618755
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17984

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    FPGAMCU的應(yīng)用場景

    可編程性 與MCU只能通過軟件進(jìn)行編程不同,FPGA允許用戶硬件級別上進(jìn)行編程和重新配置。這種靈活性使FPGA
    發(fā)表于 07-29 15:45

    51內(nèi)核FPGA的使用

    本帖最后由 729930209 于 2018-5-21 21:54 編輯 51內(nèi)核FPGA上的VHDL代碼,相對簡單好用。
    發(fā)表于 11-14 21:21

    FPGA做的MCU內(nèi)核的匯編指令集完全解析

    FPGA做的MCU內(nèi)核的匯編指令集完全解析,FPGA使用VHDL編寫MCU內(nèi)核,使用PHP編寫
    發(fā)表于 03-04 18:53

    AGM MCU+FPGA的相關(guān)資料分享

    ,與AG16KSDE176(+ MCU)+ SDRAM引腳對引腳兼容。MCU硬IP嵌入FPGA邏輯結(jié)構(gòu),所有
    發(fā)表于 11-01 08:48

    FPGA實(shí)現(xiàn)高精度快速除法

    FPGA實(shí)現(xiàn)高精度快速除法
    發(fā)表于 07-17 16:33 ?25次下載

    LOG算子FPGA實(shí)現(xiàn)

    介紹了一種高斯拉普拉斯LOG算子FPGA實(shí)現(xiàn)方案!并通過對一幅BMP圖像的處理!論證了FPGA
    發(fā)表于 05-16 17:12 ?50次下載
    LOG算子<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的<b class='flag-5'>實(shí)現(xiàn)</b>

    TCAM高速路由查找的應(yīng)用及其FPGA實(shí)現(xiàn)

    TCAM高速路由查找的應(yīng)用及其FPGA實(shí)現(xiàn),TCAM高速路由查找的應(yīng)用及其
    發(fā)表于 11-04 16:32 ?15次下載

    FPGA VI不同的Xilinx內(nèi)核生成器IP設(shè)計(jì)實(shí)現(xiàn)與子模板說明

    。 使用Xilinx內(nèi)核生成器IP函數(shù)實(shí)現(xiàn)FPGA VI不同的Xilinx內(nèi)核生成器IP。LabVIEW使用IP集成節(jié)點(diǎn)
    發(fā)表于 11-18 05:54 ?1641次閱讀

    Xilinx FPGA上單源SYCL C++實(shí)現(xiàn)運(yùn)行的方法

    在此Xilinx研究實(shí)驗(yàn)室演示,解釋了單源SYCL C ++示例以及生成Xilinx FPGA運(yùn)行的硬件實(shí)現(xiàn)的方法。
    的頭像 發(fā)表于 11-20 06:30 ?3601次閱讀

    Nimbix云加速工作流實(shí)現(xiàn)FPGA開發(fā)和運(yùn)行

    本視頻,Nimbix的首席技術(shù)官Leo Reiter討論了使用SDAccel開發(fā)環(huán)境和Xilinx FPGA卡在Nimbix云加速工作流實(shí)現(xiàn)
    的頭像 發(fā)表于 11-29 06:06 ?2071次閱讀

    FPGALPM_ROM設(shè)計(jì)快速實(shí)現(xiàn)

    FPGALPM_ROM設(shè)計(jì)快速實(shí)現(xiàn)(嵌入式開發(fā)的硬件環(huán)境)-該文檔為FPGALPM_ROM設(shè)
    發(fā)表于 08-04 10:45 ?10次下載
    <b class='flag-5'>FPGA</b><b class='flag-5'>中</b>LPM_ROM設(shè)計(jì)<b class='flag-5'>快速</b><b class='flag-5'>實(shí)現(xiàn)</b>

    FPGA_ASIC-MACFPGA的高效實(shí)現(xiàn)

    FPGA_ASIC-MACFPGA的高效實(shí)現(xiàn)(理士電源技術(shù)有限公司)-該文檔為FPGA_AS
    發(fā)表于 08-04 19:03 ?8次下載
    <b class='flag-5'>FPGA</b>_ASIC-MAC<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的高效<b class='flag-5'>實(shí)現(xiàn)</b>

    AGM MCU+FPGA

    ,與AG16KSDE176(+ MCU)+ SDRAM引腳對引腳兼容。MCU硬IP嵌入FPGA邏輯結(jié)構(gòu),所有
    發(fā)表于 10-25 17:21 ?23次下載
    AGM <b class='flag-5'>MCU+FPGA</b>

    MCU之SWMKEIL環(huán)境實(shí)現(xiàn)代碼RAM運(yùn)行

    MCU的實(shí)際使用過程,我們一般會(huì)將程序放在FLASH運(yùn)行,但有時(shí)候需要同時(shí)操作falsh或者需要更好的實(shí)時(shí)性,程序
    的頭像 發(fā)表于 03-16 15:53 ?4012次閱讀

    FPGA實(shí)現(xiàn)MCU內(nèi)核快速運(yùn)行

    。 當(dāng)原始性能至關(guān)重要時(shí),捕獲的邏輯專用硬件可實(shí)現(xiàn)性能。例如,定序器可以比軟件實(shí)現(xiàn)的相同邏輯快一個(gè)數(shù)量級。由于分立邏輯器件占用大量空間和功率,因此添加FPGA是一種可行的替代方案。
    的頭像 發(fā)表于 08-14 10:25 ?1381次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>MCU</b><b class='flag-5'>內(nèi)核</b>的<b class='flag-5'>快速</b><b class='flag-5'>運(yùn)行</b>