圖1. 結(jié)構(gòu)化總線的方法廣泛適用于各類應(yīng)用,包括嵌入式視覺、安防和人工智能。
萊迪思Propel幫助設(shè)計(jì)人員快速創(chuàng)建基于處理器的系統(tǒng)
發(fā)布時(shí)間:2021-03-16 責(zé)任編輯:lina
【導(dǎo)讀】幾乎所有的電子設(shè)計(jì)師和嵌入式系統(tǒng)開發(fā)人員都聽過現(xiàn)場可編程門陣列(FPGA)。對于實(shí)際的FPGA器件,設(shè)計(jì)人員和開發(fā)人員都知道它擁有可編程架構(gòu),能夠?qū)ζ溥M(jìn)行配置來而執(zhí)行想要的功能,但他們的了解可能僅限于此。同樣,當(dāng)涉及創(chuàng)建一個(gè)可以在FPGA上實(shí)現(xiàn)的設(shè)計(jì)時(shí),他們可能聽過硬件描述語言(HDL)和寄存器轉(zhuǎn)換級(jí)電路(RTL)之類的術(shù)語,但可能并未充分理解它們的含義。
幾乎所有的電子設(shè)計(jì)師和嵌入式系統(tǒng)開發(fā)人員都聽過現(xiàn)場可編程門陣列(FPGA)。對于實(shí)際的FPGA器件,設(shè)計(jì)人員和開發(fā)人員都知道它擁有可編程架構(gòu),能夠?qū)ζ溥M(jìn)行配置來而執(zhí)行想要的功能,但他們的了解可能僅限于此。同樣,當(dāng)涉及創(chuàng)建一個(gè)可以在FPGA上實(shí)現(xiàn)的設(shè)計(jì)時(shí),他們可能聽過硬件描述語言(HDL)和寄存器轉(zhuǎn)換級(jí)電路(RTL)之類的術(shù)語,但可能并未充分理解它們的含義。
與Verilog或VHDL相似,HDL能讓FPGA設(shè)計(jì)人員描述設(shè)計(jì)意圖,正如軟件開發(fā)人員使用C或者C++等編程語言一樣。理解HDL的方式之一就是它可以用來描述同時(shí)發(fā)生的事物,這也是現(xiàn)實(shí)世界中硬件工作的方式。相比之下,軟件編程語言通常用于描述順序發(fā)生的事。
同時(shí),RTL是常用于邏輯綜合引擎輸入的抽象級(jí)電路。該工具將RTL轉(zhuǎn)換到邏輯元件和互連網(wǎng)絡(luò),然后在FPGA的可編程邏輯內(nèi)實(shí)現(xiàn)。邏輯綜合引擎可以比作軟件開發(fā)者的編譯器,后者采用高級(jí)程序作為輸入,并將其轉(zhuǎn)換為由處理器執(zhí)行的機(jī)器代碼。
FPGA的可編程結(jié)構(gòu)可用于構(gòu)建硬件加速器,以低功耗執(zhí)行數(shù)據(jù)處理任務(wù)??删幊探Y(jié)構(gòu)經(jīng)過配置后可創(chuàng)建一個(gè)或多個(gè)更適合處理決策任務(wù)的軟核處理器,這些處理器還可以控制硬件加速器,包括向其提供數(shù)據(jù)并根據(jù)結(jié)果采取相應(yīng)措施。
RISC-V就是這樣一種處理器,它是一種開源指令集架構(gòu)(ISA),可以通過開源許可免費(fèi)獲得。RISC-V開源硬件概念的創(chuàng)造者受到Linux開源軟件成功的啟發(fā)。RISC-V的一大優(yōu)勢是在各類設(shè)計(jì)實(shí)現(xiàn)中都有出色的軟件兼容性,并且目前這些處理器的使用急劇增長。
然而,對于想要使用這種處理器的非FPGA設(shè)計(jì)人員而言,問題在于他們?nèi)狈τ嘘P(guān)FPGA設(shè)計(jì)語言、工具和流程的專業(yè)知識(shí)。為了解決這個(gè)問題,低功耗可編程FPGA的領(lǐng)先供應(yīng)商萊迪思半導(dǎo)體開發(fā)了名為Lattice Propel™的工具,這是一款基于圖形用戶界面(GUI)的設(shè)計(jì)環(huán)境,任何用戶(無論是否具有FPGA專業(yè)知識(shí))都能使用它以拖放的方式快速設(shè)計(jì)基于RISC-V處理器的系統(tǒng)。
Propel輸出的是RTL文件,可以發(fā)送到綜合引擎,生成可載入FPGA的配置文件。之后軟件開發(fā)人員可以在基于FPGA的RISC-V設(shè)計(jì)實(shí)現(xiàn)上運(yùn)行他們的RISC-V可執(zhí)行文件,正如在其他任何RISC-V處理器上運(yùn)行一樣。萊迪思為其FPGA客戶免費(fèi)提供RISC-V IP核。
基于FPGA的解決方案
數(shù)據(jù)處理要求有合適的計(jì)算引擎。開發(fā)者擁有諸多不同選擇,包括微處理器(MPU)、微控制器(MCU)、圖形處理器(GPU)、FPGA和SoC等器件。
MPU和MCU在執(zhí)行決策任務(wù)時(shí)效率很高,但是在實(shí)現(xiàn)原始數(shù)據(jù)處理算法時(shí),無論是處理時(shí)間還是功耗都不太理想。SoC能以最低的功耗實(shí)現(xiàn)最高性能,但缺點(diǎn)是開發(fā)起來價(jià)格昂貴、耗費(fèi)資源且十分耗時(shí),并且在此類芯片架構(gòu)中實(shí)現(xiàn)的算法基本上都是固定無法更改的,而系統(tǒng)采用的協(xié)議和標(biāo)準(zhǔn)會(huì)不斷變化,因此會(huì)帶來很多問題。
某些數(shù)據(jù)處理任務(wù)(包括許多AI/ML算法)非常適合并行處理。FPGA的可編程架構(gòu)(圖1a)經(jīng)配置可實(shí)現(xiàn)硬件加速器(HA)功能,以大規(guī)模并行方式執(zhí)行任務(wù)(圖1b),從而顯著提高性能,同時(shí)降低功耗。
許多情況下還需要數(shù)據(jù)協(xié)處理功能,使用中央處理器(CPU)來強(qiáng)化硬件加速器,處理器可以執(zhí)行高級(jí)決策和控制功能。不同于直接在芯片中實(shí)現(xiàn)的硬核CPU,F(xiàn)PGA的可編程架構(gòu)能夠?qū)崿F(xiàn)軟核CPU以及相關(guān)的總線結(jié)構(gòu)(地址、數(shù)據(jù)、控制)和任何所需的外設(shè)IP功能(圖1c)。
圖1. 結(jié)構(gòu)化總線的方法廣泛適用于各類應(yīng)用,包括嵌入式視覺、安防和人工智能。
需要注意的是,根據(jù)FPGA器件和用戶的要求,額外的可編程邏輯功能和外圍通信功能(例如USB、MIPI、I2C、SPI、CAN和UART)可以通過硬核和/或軟核實(shí)現(xiàn)。文章篇幅有限此處不作贅述。
使用軟核CPU有諸多優(yōu)點(diǎn),包括能夠配置處理器的操作及許多可選功能,如動(dòng)態(tài)內(nèi)存訪問(DMA)控制器,從而對其精確調(diào)整,高效地滿足目標(biāo)應(yīng)用的要求。此外,如有需要,可以配置可編程結(jié)構(gòu)實(shí)現(xiàn)其他外設(shè)IP功能。如在人工智能應(yīng)用中,可以使用可編程邏輯資源來創(chuàng)建簡單的人工神經(jīng)網(wǎng)絡(luò),用于推理之類的任務(wù)。
RISC-V
如前所述,RISC-V是基于已有的精簡指令集計(jì)算機(jī)(RISC)原則的開源指令集架構(gòu),可通過開源許可獲得。此外,許多公司目前提供支持RISC-V的RISC-V硬核或開源操作系統(tǒng),并且?guī)追N主流的軟件工具鏈均支持該指令集。
RISC-V的模塊化設(shè)計(jì)包括基礎(chǔ)指令集和其他的擴(kuò)展指令集。在行業(yè)、技術(shù)界和教育機(jī)構(gòu)的共同努力下,兩者已得到長足的發(fā)展?;A(chǔ)指令集規(guī)定了指令(及其編碼)、控制流、寄存器(及其大?。?、存儲(chǔ)器和尋址、邏輯(即整數(shù))操作以及輔助功能。僅基礎(chǔ)指令集就能實(shí)現(xiàn)具有全面軟件支持(包括通用編譯器)的通用計(jì)算機(jī)。
還可以通過可選拓展指令集實(shí)現(xiàn)額外功能,從而讓設(shè)計(jì)人員靈活選擇其應(yīng)用所需的功能。RISC-V定義了許多擴(kuò)展指令集,包括A(原子)、F(單精度浮點(diǎn))、D(雙精度浮點(diǎn))、Q(四精度浮點(diǎn))和C(壓縮的16位指令以減少代碼尺寸,用于存儲(chǔ)空間有限的系統(tǒng))。上述指令集均可靈活選擇。
圖2. 萊迪思是首個(gè)支持RISC-V的基于閃存和SRAM的FPGA供應(yīng)商。
與作為專用處理器的硬核實(shí)現(xiàn)相比,基于FPGA的軟核RISC-V擁有的巨大優(yōu)勢在于FPGA可重新配置的巨大潛力能夠滿足各種擴(kuò)展需求。
萊迪思RISC-V軟核IP套件擁有32位RISC-V處理器核以及可選的定時(shí)器和可編程中斷控制器(PIC)子模塊。該CPU核支持RV32I指令集、外部中斷和符合JTAG IEEE 1149.1規(guī)范的調(diào)試。
定時(shí)器子模塊是一個(gè)64位實(shí)時(shí)計(jì)數(shù)器,它將實(shí)時(shí)寄存器與另一個(gè)寄存器進(jìn)行比較以觸發(fā)定時(shí)器中斷。PIC子模塊最多將八個(gè)外部中斷輸入聚合為一個(gè)外部中斷。處理器核通過使用行業(yè)標(biāo)準(zhǔn)的32位AHB-L總線接口訪問子模塊寄存器。
萊迪思Propel
許多嵌入式系統(tǒng)的設(shè)計(jì)人員都對使用FPGA很感興趣,但是一想到要使用傳統(tǒng)的FPGA設(shè)計(jì)工具和HDL就望而卻步。為了解決這一問題,萊迪思Propel采用了基于圖形用戶界面(GUI)的設(shè)計(jì)環(huán)境,任何用戶(無論是否具有FPGA專業(yè)知識(shí))都能使用其拖放的設(shè)計(jì)方式快速構(gòu)建和配置基于RISC-V處理器的設(shè)計(jì)。
Propel輸出的是使用Verilog HDL語言的RTL文件,可以將其發(fā)送到綜合引擎,生成可載入FPGA的配置文件。該配置文件可用于萊迪思CrossLink™-NX(面向嵌入式視覺應(yīng)用)、Certus™-NX(通用FPGA)以及MachXO3D™和Mach™-NX FPGA(安全系統(tǒng)控制)系列產(chǎn)品。FPGA配置完成后,軟件開發(fā)人員可以在基于FPGA的RISC-V設(shè)計(jì)實(shí)現(xiàn)上運(yùn)行他們的RISC-V可執(zhí)行文件,正如在其他任何RISC-V處理器上運(yùn)行一樣。
Lattice Propel由兩個(gè)部分組成。首先是Propel Builder,它提供圖形化的拖放界面,讓用戶選擇IP模塊并將其連接在一起。這些IP模塊包括RISC-V處理器(帶有可選的定時(shí)器和中斷控制器)、AMBA總線結(jié)構(gòu)、接口、存儲(chǔ)器、輸入/輸出(I/O)等。用戶還可以方便地在線升級(jí)現(xiàn)有IP模塊和獲得新的IP模塊。
圖3.Propel界面直觀、易于使用、功能強(qiáng)大。
除了拖放IP實(shí)例化,Propel Builder還能自動(dòng)進(jìn)行引腳連接,通過向?qū)渲煤驮O(shè)置參數(shù)以及采用按構(gòu)造逐步校正進(jìn)行IP集成。
其次是萊迪思Propel SDK(軟件開發(fā)套件),可提供無縫的軟件開發(fā)環(huán)境。它擁有行業(yè)標(biāo)準(zhǔn)的集成開發(fā)環(huán)境(IDE)和工具鏈。SDK還為Propel Builder定義的系統(tǒng)提供軟件/硬件調(diào)試功能以及軟件庫和板級(jí)支持包(BSP)。
需要注意的重要一點(diǎn)是,Propel可以很好地對接下游工具,并且它也是一個(gè)獨(dú)立的程序,且其大小僅為0.5 GB,可以快速輕松地下載和安裝。同樣令人感興趣的是,Propel的所有命令都可以用Tcl編寫,從而提高了設(shè)計(jì)效率并將其快速集成到用戶自己的設(shè)計(jì)環(huán)境中。
圖4. 無論是簡單的“Hello World”應(yīng)用還是復(fù)雜的嵌入式控制和數(shù)據(jù)處理系統(tǒng),Propel都能讓用戶快速完成設(shè)計(jì)
對于硬件設(shè)計(jì),Propel是那些需要FPGA優(yōu)勢但缺乏FPGA硬件設(shè)計(jì)經(jīng)驗(yàn)的團(tuán)隊(duì)的理想選擇。此外,如果團(tuán)隊(duì)成員確實(shí)具有FPGA設(shè)計(jì)經(jīng)驗(yàn),那么他們還可以根據(jù)需要對設(shè)計(jì)做更為精確的控制。對于軟件設(shè)計(jì),Propel提供行業(yè)標(biāo)準(zhǔn)的C/C ++開發(fā)環(huán)境。軟件開發(fā)人員似乎更多地使用現(xiàn)成的微控制器。
設(shè)計(jì)人員可以使用Propel在CrossLink-NX、Certus-NX和Mach-NX FPGA中快速輕松地生成基于RISC-V軟軟核的處理器系統(tǒng),從而提供復(fù)雜的視頻處理、系統(tǒng)控制和系統(tǒng)安全功能,其延遲遠(yuǎn)遠(yuǎn)低于通過外部獨(dú)立處理器實(shí)現(xiàn)的設(shè)計(jì)。
總結(jié)
除了擁有以低功耗執(zhí)行高性能數(shù)據(jù)處理任務(wù)的邏輯功能和硬件加速器外,F(xiàn)PGA內(nèi)部的可編程架構(gòu)還可用于實(shí)現(xiàn)一個(gè)或多個(gè)更適合決策任務(wù)的軟核處理器,以及用于諸如硬件加速器之類的控制功能,包括向它們提供數(shù)據(jù)并根據(jù)結(jié)果采取措施。
RISC-V就是這樣一種處理器,它是一種開源指令集架構(gòu)(ISA),可以通過開源許可免費(fèi)獲得。萊迪思是首個(gè)支持RISC-V以及為其FPGA客戶免費(fèi)提供RISC-V IP核的基于閃存和SRAM的FPGA供應(yīng)商。
對于想要使用這種處理器的非FPGA設(shè)計(jì)人員而言,問題在于他們?nèi)狈τ嘘P(guān)FPGA設(shè)計(jì)語言、工具和流程的專業(yè)知識(shí)。為了解決這個(gè)問題,萊迪思提供了Propel來簡化設(shè)計(jì)流程,讓開發(fā)人員能夠快速設(shè)計(jì)基于RISC-V處理器的系統(tǒng)。
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請電話或者郵箱聯(lián)系小編進(jìn)行侵刪。
特別推薦
- AMTS 2025展位預(yù)訂正式開啟——體驗(yàn)科技驅(qū)動(dòng)的未來汽車世界,共迎AMTS 20周年!
- 貿(mào)澤電子攜手安森美和Würth Elektronik推出新一代太陽能和儲(chǔ)能解決方案
- 功率器件熱設(shè)計(jì)基礎(chǔ)(六)——瞬態(tài)熱測量
- 貿(mào)澤開售Nordic Semiconductor nRF9151-DK開發(fā)套件
- TDK推出用于可穿戴設(shè)備的薄膜功率電感器
- 日清紡微電子GNSS兩款新的射頻低噪聲放大器 (LNA) 進(jìn)入量產(chǎn)
- 中微半導(dǎo)推出高性價(jià)比觸控 MCU-CMS79FT72xB系列
技術(shù)文章更多>>
- 意法半導(dǎo)體推出首款超低功耗生物傳感器,成為眾多新型應(yīng)用的核心所在
- 是否存在有關(guān) PCB 走線電感的經(jīng)驗(yàn)法則?
- 智能電池傳感器的兩大關(guān)鍵部件: 車規(guī)級(jí)分流器以及匹配的評(píng)估板
- 功率器件熱設(shè)計(jì)基礎(chǔ)(八)——利用瞬態(tài)熱阻計(jì)算二極管浪涌電流
- AHTE 2025展位預(yù)訂正式開啟——促進(jìn)新技術(shù)新理念應(yīng)用,共探多行業(yè)柔性解決方案
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
生產(chǎn)測試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時(shí)間繼電器
時(shí)鐘IC
世強(qiáng)電訊
示波器
視頻IC
視頻監(jiān)控
收發(fā)器
手機(jī)開發(fā)
受話器
數(shù)字家庭
數(shù)字家庭
數(shù)字鎖相環(huán)
雙向可控硅
水泥電阻
絲印設(shè)備
伺服電機(jī)
速度傳感器
鎖相環(huán)
胎壓監(jiān)測
太陽能
太陽能電池
泰科源
鉭電容
碳膜電位器