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

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

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

基于FPGA的SOC設(shè)計(jì)技術(shù)的硬核與軟核處理器的區(qū)別和聯(lián)系

FPGA研究院 ? 來源:電子電路開發(fā)學(xué)習(xí) ? 作者:電子電路開發(fā)學(xué)習(xí) ? 2022-12-06 10:00 ? 次閱讀

軟核處理器

SOPC技術(shù),即軟核處理器,最早是由Altera公司提出來的,它是基于FPGA的SOC片上系統(tǒng)設(shè)計(jì)技術(shù)。是使用FPGA的邏輯和資源搭建的一個(gè)軟核CPU系統(tǒng),由于是使用FPGA的通用邏輯搭建的CPU,因此具有一定的靈活性,用戶可以根據(jù)自己的需求對CPU進(jìn)行定制裁剪,增加一些專用功能,例如除法或浮點(diǎn)運(yùn)算單元,用于提升CPU在某些專用運(yùn)算方面的性能,或者刪除一些在系統(tǒng)里面使用不到的功能,以節(jié)約邏輯資源。

另外也可以根據(jù)用戶的實(shí)際需求,為CPU添加各種標(biāo)準(zhǔn)或定制的外設(shè),例如UART,SPI,IIC等標(biāo)準(zhǔn)接口外設(shè),同時(shí),用戶也可以自己使用FPGA的邏輯資源,編寫各種專用的外設(shè),然后連接到CPU總線上,由CPU進(jìn)行控制,以實(shí)現(xiàn)軟硬件的協(xié)同工作,在保證系統(tǒng)性能的同時(shí),增加了系統(tǒng)的靈活性。

而且,如果單個(gè)的軟核CPU無法滿足用戶需求,可以添加多個(gè)CPU軟核,搭建多核系統(tǒng),通過多核CPU協(xié)同工作,讓系統(tǒng)擁有更加靈活便捷的控制能力。

由于是使用FPGA資源實(shí)現(xiàn)的,所以具有很大的靈活性,可以實(shí)現(xiàn)根據(jù)需要實(shí)現(xiàn)多種處理器,如8051,RISC-V,Xilinx的 MicroBlaze ,Altera的Nios-II等等。

硬核處理器

由于軟核CPU是使用FPGA的通用邏輯資源搭建的,相較使用經(jīng)過布局布線優(yōu)化的硬核處理器來說,軟核處理器夠運(yùn)行的最高實(shí)時(shí)鐘主頻要低一些,而且也會相應(yīng)的消耗較多的FPGA邏輯資源以及片上存儲器資源,因此SOPC方案僅適用于對于數(shù)處理器整體性能要求不高的應(yīng)用,例如整個(gè)系統(tǒng)的初始化配置,人機(jī)交互,多個(gè)功能模塊間的協(xié)調(diào)控制等功能。

所以,各大FPGA廠家推出了SoC FPGA技術(shù),是在芯片設(shè)計(jì)之初,就在內(nèi)部的硬件電路上添加了硬核處理器,是純硬件實(shí)現(xiàn)的,不會消耗FPGA的邏輯資源,硬核處理器和FPGA邏輯在一定程度上是相互獨(dú)立的,簡單的說,就是SoC FPGA就是把一塊ARM處理器和一塊FPGA芯片封裝成了一個(gè)芯片。

例如比較有名的Xilinx的ZYNQ/PYNQ系列集成ARM Cortex-A9處理器,同時(shí)具有ARM軟件的可編程性和FPGA 的硬件可編程性,不僅可實(shí)現(xiàn)重要分析與硬件加速,同時(shí)還在單個(gè)器件上高度集成CPU、DSP、ASSP 以及混合信號功能。

Intel的Cyclone V系列,集成雙核Cortex-A9,于2013年發(fā)布,在單一芯片上集成了雙核的ARM Cortex-A9處理器和FPGA邏輯資源的新型SoC芯片,相較于傳統(tǒng)的單一ARM處理器或FPGA芯片,它既擁有了ARM處理器靈活高效的數(shù)據(jù)運(yùn)算和事務(wù)處理能力,又集成了FPGA的高速并行處理優(yōu)勢。

同時(shí),基于兩者獨(dú)特的片上互聯(lián)結(jié)構(gòu),使用時(shí)可以將FPGA上的通用邏輯資源經(jīng)過配置,映射為ARM處理器的一個(gè)或多個(gè)具有特定功能的外設(shè),通過高達(dá)128位寬的AXI高速總線進(jìn)行通信,完成數(shù)據(jù)和控制命令的交互。由于片上的ARM處理器是經(jīng)過布局布線的硬線邏輯,因此其能工作的時(shí)鐘主頻較高,因此單位時(shí)間內(nèi)能夠執(zhí)行的指令也更多。

區(qū)別與聯(lián)系

從架構(gòu)的角度來說,SOPC和SoC FPGA是統(tǒng)一的,都是由FPGA部分和處理器部分組成。在SoC FPGA 中,嵌入的是純硬件基礎(chǔ)的硬核處理器,簡稱HPS(Hardware Processor System),而SOPC技術(shù)中,嵌入的是使用FPGA邏輯資源實(shí)現(xiàn)的軟核處理器,兩者指令集不一樣,處理器性能也不一樣。

一般來說,硬核處理器的性能要遠(yuǎn)遠(yuǎn)高于軟核處理器。另外,硬核處理器除了CPU部分,還集成了各種高性能外設(shè),如MMU、DDR3控制器、Nand FLASH控制器等,可以運(yùn)行成熟的Linux操作系統(tǒng)和應(yīng)用程序,提供統(tǒng)一的系統(tǒng)API,降低開發(fā)者的軟件開發(fā)難度。而軟核CPU雖然可以通過配置,用邏輯資源來搭建相應(yīng)的控制器以支持相應(yīng)功能,但是從性能和開發(fā)難度上來說,基于SoC FPGA架構(gòu)進(jìn)行設(shè)計(jì)開發(fā)是比較好的選擇。

67e61fde-74f5-11ed-8abf-dac502259ad0.png

▲ZYNQ內(nèi)部框圖

另外,雖然SoC FPGA芯片上既包含了有ARM,又包含了有FPGA,但是兩者一定程度上是相互獨(dú)立的,SoC芯片上的ARM處理器核并非是包含于FPGA邏輯單元內(nèi)部的,F(xiàn)PGA和ARM(HPS)處理器只是封裝到同一個(gè)芯片中,JTAG接口、電源引腳和外設(shè)的接口引腳都是獨(dú)立的。因此,如果使用SoC FPGA芯片進(jìn)行設(shè)計(jì),即使不使用到片上的ARM處理器,ARM處理器部分占用的芯片資源也無法釋放出來,不能用作通用的FPGA資源。

而SOPC則是使用FPGA通用邏輯和存儲器資源搭建的CPU,當(dāng)不使用CPU時(shí),CPU部分占用的資源可以被釋放,重新用作通用FPGA資源。

審核編輯:郭婷

聲明:本文內(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)注

    68

    文章

    18927

    瀏覽量

    227231
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598930
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4021

    瀏覽量

    217028

原文標(biāo)題:FPGA硬核與軟核處理器有什么區(qū)別和聯(lián)系?

文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    ARM處理器和CISC處理器區(qū)別

    ARM處理器和CISC(復(fù)雜指令集計(jì)算機(jī))處理器在多個(gè)方面存在顯著的區(qū)別。這些區(qū)別主要體現(xiàn)在架構(gòu)原理、性能與功耗、設(shè)計(jì)目標(biāo)、應(yīng)用領(lǐng)域以及市場生態(tài)等方面。
    的頭像 發(fā)表于 09-10 11:10 ?155次閱讀

    淺談國產(chǎn)異構(gòu)雙RISC-V+FPGA處理器AG32VF407的優(yōu)勢和應(yīng)用場景

    技術(shù)手段提高系統(tǒng)的安全性和可靠性,適用于對安全要求較高的應(yīng)用場景。 應(yīng)用場景 邊緣計(jì)算 : 在物聯(lián)網(wǎng)、智能城市等邊緣計(jì)算場景中,異構(gòu)雙RISC-V+FPGA處理器可以
    發(fā)表于 08-31 08:32

    中微億芯發(fā)布ARM A9處理器SoC Z7及以7系列FPGA為核心的SIP電路

    近日,中科芯控股公司中微億芯舉辦了"融造芯 智創(chuàng)未來"高性能可編程 SoC / SIP 系列新品發(fā)布會,隆重發(fā)布了ARM A9處理器SoC Z7,及以7系列
    的頭像 發(fā)表于 05-28 18:22 ?896次閱讀

    FPGA的IP使用技巧

    夠與所使用的FPGA平臺和開發(fā)工具無縫集成。 閱讀和理解IP的文檔 : 在使用IP之前,務(wù)必仔細(xì)閱讀和理解其提供的文檔,包括用戶手
    發(fā)表于 05-27 16:13

    簡談Xilinx Zynq-7000嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    處理器可以分為硬核處理器。 硬核處理器
    發(fā)表于 05-08 16:23

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

    、性能特點(diǎn)和軟硬件支持等方面存在一些區(qū)別聯(lián)系。 一、嵌入式微處理器和DSP的區(qū)別聯(lián)系 1.定義和設(shè)計(jì)思路的
    的頭像 發(fā)表于 04-21 09:50 ?1117次閱讀

    dsp和嵌入式微處理器區(qū)別聯(lián)系

    是一種專門用于數(shù)字信號處理(Digital Signal Processing)的處理器。數(shù)字信號處理是一種通過對數(shù)字信號進(jìn)行算法運(yùn)算來處理和分析信號的
    的頭像 發(fā)表于 04-21 09:35 ?666次閱讀

    Achronix FPGA增加對Bluespec提供的基于Linux的RISC-V處理器的支持,以實(shí)現(xiàn)可擴(kuò)展數(shù)據(jù)處理

    Bluespec支持加速功能的RISC-V處理器將Achronix的FPGA轉(zhuǎn)化為可編程SoC 近日,高性能FPGA芯片和嵌入式
    的頭像 發(fā)表于 04-19 18:08 ?623次閱讀

    簡談Xilinx Zynq-7000嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    的PowerPC硬核集成在V5系列的FPGA中,后來將ARM公司的雙Cortex-A9硬核集成在ZYNQ 7000系列的SoC芯片中
    發(fā)表于 04-10 16:00

    fpga和gpu的區(qū)別

    FPGA(現(xiàn)場可編程門陣列)和GPU(圖形處理器)在多個(gè)方面存在顯著的區(qū)別。
    的頭像 發(fā)表于 03-27 14:23 ?949次閱讀

    fpga和risc-v處理器區(qū)別

    FPGA(現(xiàn)場可編程門陣列)和RISC-V處理器在多個(gè)方面存在顯著的區(qū)別
    的頭像 發(fā)表于 03-27 14:21 ?779次閱讀

    fpga和單片機(jī)的區(qū)別聯(lián)系 fpga和cpu區(qū)別

    fpga和單片機(jī)的區(qū)別聯(lián)系 FPGA(現(xiàn)場可編程邏輯門陣列)和單片機(jī)在電子系統(tǒng)設(shè)計(jì)中都扮演著重要的角色,但它們之間存在明顯的區(qū)別
    的頭像 發(fā)表于 03-14 17:33 ?865次閱讀

    fpga芯片和soc芯片的區(qū)別

    FPGA芯片和SoC芯片在多個(gè)方面存在顯著的區(qū)別
    的頭像 發(fā)表于 03-14 17:28 ?2265次閱讀

    怎么使用DMA在FPGA中的HDL和嵌入式C之間傳輸數(shù)據(jù)?

    鑒于機(jī)器學(xué)習(xí)和人工智能等應(yīng)用的 FPGA 設(shè)計(jì)中硬件加速的興起,現(xiàn)在是剝開幾層“云霧”并討論 HDL 之間來回傳遞數(shù)據(jù)(主要指FPGA 的可編程邏輯 (PL) 中運(yùn)行的代碼以及 FPGA 中的
    的頭像 發(fā)表于 11-27 09:12 ?1233次閱讀
    怎么使用DMA在<b class='flag-5'>FPGA</b>中的HDL和嵌入式C之間傳輸數(shù)據(jù)?

    設(shè)置AMD以太網(wǎng)IP的Pause幀處理

    目前 AMD 的以太網(wǎng) IP ,如 10G/25G,40G/50G 或者硬核 CMAC,MRMAC,DCMAC 等等,都采用的是同一種 Pause 幀
    的頭像 發(fā)表于 10-18 09:15 ?773次閱讀
    設(shè)置AMD以太網(wǎng)IP<b class='flag-5'>核</b>的Pause幀<b class='flag-5'>處理</b>