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

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

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

3天內不再提示

基于LEON開源微處理器IP軟核實現SoC系統基本平臺的構建

電子設計 ? 來源:單片機與嵌入式系統應用 ? 作者:李林,張曉林,楊希 ? 2021-06-17 14:32 ? 次閱讀

伴隨著導航系統功能日益多樣化、軟件算法愈加復雜和集成度要求更高的趨勢,在大規模可編程器件上設計、驗證和測試導航SoC芯片成為解決方案之一。導航系統SoC芯片設計的要求主要有:

①安全性。芯片的所有功能模塊運行正常,運行機制透明,可靠性強。

②可配置性。根據應用要求對硬件進行裁減和配置,達到最佳的功能、功耗和面積比。

③高運算能力。具備在特定時間內完成復雜算法的運算能力。

SoC芯片的核心是實現運算和控制功能的微處理器。LEON是一款基于SPARC V8架構的開源微處理器IP軟核,在VHDL源代碼基礎上,結合具體需求加入定制的運算單元和外設接口建立SoC系統。在配置靈活的LEON核上運行Embedded Linux,提供SoC調試和測試的基本平臺。

1 軟硬件平臺構建

1.1 LEON軟核架構簡介

LEON核心是一個與SPARCV8兼容的整數處理單元IU(Integer Unit),LEON2是5級流水線,LEON3是7級流水線。LEON包含整數硬件乘法和除法單元、雙協處理器接口(FPU浮點處理單元和Co-processor協處理器),分離的指令和數據總線(Harvard結構)。LEON通過高速的AMBA-AHB總線,指令緩存和數據緩存分別和內存控制器及高速的外部接口相連傳輸數據。低速的AMBA-APB總線實現片上外設的接口,例如定時器、串口、網絡接口等。LEON3軟核可配置體系架構如圖1所示。

1.2 LEON在SoC芯片開發應用中的優勢

LEON軟核最突出的優勢是其良好的可配置性和可移植性,以及遵循GPL許可證協議的開源性。這些特性保證導航系統SoC芯片的安全性,提供良好的性能和靈活的解決方案,也決定了在LEON上進行嵌入式操作系統移植的特殊性。

1.2.1 開源性

基于GPL許可證協議,LEON非容錯版本軟核IP提供VHDL源代碼,僅是容錯版本的LEON軟核需要商業授權。源代碼公開是實現導航系統SoC芯片設計安全性的前提,同時也使研究者和開發者從根本上研究軟核的細節從而定制滿足具體應用的軟核成為可能。與全部源代碼開放的LEON相比,Altera的NIOS軟核等其他軟核僅提供若干接口,無法在更深的軟核層次上進行設計和優化。

1.2.2 優異的可配置性

LEON軟核通過集成一套豐富的接口和運算單元IP庫,根據具體要求來達到性能、功耗和面積的平衡和優化的目的。

①軟核IU可配置參數包括流水線的深度、地址和數據高速緩存(Cache)。另外,常用指令及指令序列可以根據定制的硬件進行優化;在設計或配置新運算單元后能夠對指令集進行擴展。在導航系統SoC芯片設計中,通過配置LEON的整數硬件乘除法單元以實現較高的運算性能;而在其他某些使用軟件乘除法,即滿足要求的應用中無需配置,以降低功耗和優化芯片面積。

②外圍設備接口硬件通過掛載AMBA總線來實現。LEON3的AMBA-AHP總線上能夠靈活選擇集成opencores的以太網控制器和GRETH以太網控制器中的任意一個。針對導航系統中常見的1553總線接口設備,在LEON中通過配置GR1553單元完成1553總線到AMBA-AHB總線的轉換,為1553總線設備的集成提供了方便。

③硬件加速單元(如特定加密算法、數字信號處理單元和浮點處理單元)根據需求集成。

優異的可配置性帶來了硬件設計極大的靈活性,也為嵌入式操作系統的移植帶來了一定難度(特別是在擴展了指令集的情況下)。考慮到進行性能測試的完整性和靈活性,LEON3軟核在本項目中的配置方案如圖2所示。(詳細配置參數未列出)

1.2.3良好的可移植性

LEON軟核通過層次度分明的VHDL模型實現。通過VHDL中特定的配置接口,LEON核的關鍵參數(例如修改Cache的大小和組織方式,乘法器的生成,速度、芯片面積的調整以及容錯方案的選擇)都能夠靈活設置和移植;而唯一使用專用技術的模型是內存宏模塊。這一部分的設計采用了加上中間交互層接口的方式,因此移植的工作僅需重新編寫中間交互層接口。導航系統中包括單次濾波在內的大量算法經過硬件實現后需集成在LEON中,根據LEON特定的配置接口即可實現集成和SoC系統移植。在本硬件平臺的設計中,針對特定硬件開發板,通過修改頂層module文件設置以及更新引腳配置,即可完成硬件設計的移植工作。

目前,LEON在研究領域被廣泛應用,特別是作為軟核嵌入在可編程器件中,作為構建SoC芯片的控制和運算中心。LEON軟核的容錯版本也已經用在了空間站上。在本導航系統SoC芯片項目中,選擇了開源且配置靈活的LEON硬件平臺和Linux軟件平臺,并且在初期測試中表現出良好的性能。在本驗證平臺上,SoC系統需要以太網接口、1553總線接口、串口、通用I/O口以及調試單元,具體配置方案如圖3所示。

1.3 Linux系統的移植和調試

近年來Linux憑借其開源、性能優異、軟件資源豐富的優勢,在嵌入式平臺上得到了廣泛的應用。在LEON上運行的操作系統目前已經有RTEMS、eCOS、VxWorks和嵌入式Linux。選擇嵌入式Linux的主要原因,是由于Linux的開發平臺搭建得比較完善,在工具鏈、內核移植、驅動程序以及應用程序的各層上都有很好的支持;使用Linux開發能夠大大加快開發的進度,并滿足多數應用的指標。目前,對LEON提供良好支持的Linux發行版有Snapgear。由于LEON軟核優異的可配置性和可移植性,在LEON上進行Linux的移植工作與普通定制的嵌入式微處理器相比,有很多特殊點和難點,主要表現在兩個方面。

(1)配置和編譯內核

編譯內核的目的在于,生成在目標CPU上運行的內核。由于LEON自身硬件的可配置性,Linux的源代碼中也需要加入與硬件核相關的選項進行配置。若LEON軟核配置IP,例如硬件加速單元、加密單元或外設接口,則Linux內核中需加入驅動程序。因此,內核的配置分為兩類,一類是配置LEON軟核自身的設置,另一類是配置目標板上的其他外圍設備,例如內存系統、外設接口等。與一般的定制嵌入式CPU(如ARM體系的CPU)相比,前一類配置是LEON獨有的。這種配置的靈活性為軟硬件平臺的定制提供了極大的方便。例如,Snapgear Embedded Linux根據具體需求配置硬件乘除法指令和浮點運算單元FPU;在不需要進行浮點運算的應用中,配置LEON硬件就不需配置浮點單元,相應Linux的配置中取消FPU,進而節省硬件資源和軟件的開銷。

項目中實際采取的LEON軟核配置方案為:LEON核選擇LEON2MMU或LEON3MMU,時鐘頻率為50MHz,配置硬件整數乘除法指令和FPU對應的浮點操作指令。外圍設備配置的串口的起始波特率為38 400 bps,另外,還配置了只讀存儲區ROM和隨機存取器RAM

(2)調試內核

LEON軟核平臺調試工具有:TSIM、GRSIM和GRMON。

TSIM:SPARC架構處理器通用軟件仿真器,用于軟件仿真ERC32-和LEON微處理器。

GRSIM:LEON平臺軟件仿真器,支持多處理器平臺(MP)。

GRMON:LEON平臺硬件仿真調試器,支持基于GRLIB軟核IP的SoC設計的硬件調試。

TSIM作為軟件模擬的VHDL模型,調試過程中常見的啟動選項設置如下:

-freq:設置TSIM模擬LEON處理器硬件的工作頻率,LEON3默認為50 MHz。

-fpm:配置模擬FPU模塊。

-nfp:針對無FPU的模擬硬件平臺關閉FPU。

-nov8:針對無硬件乘除法硬件平臺關閉硬件乘除法指令。

-pr:指定使用性能觀察器。

在TSIM-LEON平臺上進行程序的測試和調試過程中,Profiling(性能觀察器)能夠顯示程序各個分支函數以及宏在實際運行中占用的資源,從而為程序的進一步優化提供必要參考,例如某測試程序在程序運行完畢后使用pro命令得出的結果:

Program exited normally

tsim>pro

function rario(%)

_start 99.99

_hardreset_real 99.99

main 99.82

processl 92.90

__muldf3 56.44

__adddf3 31.14

宏_muldf3和_adddf3在程序運行中占用了大量時間,需進一步優化。經測試證明,通過在LEON中集成FPU消除了宏_muldf3和__adddf3,從而大幅提高浮點運算性能。

2 LEON數學運算性能及算法測試

在LEON軟核系統上移植成功Linux后,通過特定測試程序驗證LEON在數學運算上的性能,以確定是否滿足項目開發的需求。測試中對比ARM9 SC32410,分析LEON以及其集成FPU配置的性能,并根據測試結果對軟硬件配置進一步優化。由于LEON硬件配置十分靈活,因此在測試中采用了多種平臺,編譯程序的選項也有對應的設置。中斷響應、功耗等雖然也是處理器性能的重要方面,但本文尚未涉及。

2.1 測試平臺

(1)硬件測試平臺

硬件測試平臺如表1所列。

TSIM仿真器通過主機的浮點機制來進行浮點運算仿真,因此仿真器的浮點精度與主機平臺相關。仿真器的時間精度與MeikoFPU相同,集成FPU的LEON3相當于集成MeikoFPU的LEON3。

(2)軟件測試平臺

①LEON2和LEON3在Linux 2.6.11下運行。

②直接使用gcc編譯生成程序加載到LEON上并運行,無操作系統。

③SamsungS3C2410在Linux 2.4.18下運行。

(3)不同硬件測試平臺上測試程序說明

不同的硬件平臺和軟件平臺的搭配需在編譯程序過程中指定特定選項(通過Makefile管理):

①一msoft-float選項。LEON平臺上若未集成FPU,則進行浮點運算必須指定該選項,此時所有浮點運算轉化為軟件模擬實現,代價是運行時間大大增加,優勢是能夠節省硬件資源(加入FPU后LEON的LE的使用率是無FPU情況下的近2倍)。

②-mv8選項。LEON平臺上配置硬件整數乘除法構件時需要指定該選項。

③sparc-linux-gcc和sparc-elf-gcc編譯器。對于LEON平臺,若在Linux系統上運行測試程序,則需用sparc-linux-gcc進行編譯,程序使用動態鏈接庫完成鏈接;若直接在LEON硬件上加載運行,則需用sparc-elf-gcc:進行編譯,程序使用靜態鏈接庫完成鏈接。

④arm-linux-gcc:編譯器。ARM9的S3C2410編譯器為arm-linux-gcc。

⑤-O3優化選項。LEON和ARM的微處理器通過指定該選項進行程序算法優化。

2.2測試項目及說明

測試項目1:整型數組與浮點數組的加法、乘法及乘加運算。每種類型的運算都循環50 000次,以驗證LEON各種平臺和ARM9的MCU在數學運算上的性能,并分析加入Linux系統后程序運行性能的變化。

測試項目2:單次濾波算法,程序每一次運行包含12 791次浮點乘法和13 595次浮點加法,以驗證在導航系統的濾波算法中LEON在多種配置下的性能。

測試程序采用clock()系統調用獲取算法開始運行和結束運行的時間,并以算法的運行時間作為衡量系統效能的唯一標準。

2.3測試總結

LEON平臺靈活的軟硬件配置在多項測試中表現優異,總結如下:

①與主流ARM9微處理器在數學運算上性能相當。

②嵌入式Linux操作系統平臺相對于無系統平臺有一定資源開銷,根據具體應用合理選擇軟件平臺是否需要嵌入式Linux系統。

③指定-mv8和-03選項后程序性能提升顯著,根據具體應用合理選擇是否配置整數硬件乘除法器。

④LEON硬件配置FPU后浮點運算性能提高一個數量級,代價是綜合需要的邏輯資源增長一倍,在權衡性能和可編程器件資源后合理選擇配置方案。

結合導航系統SoC芯片高速數據處理的需求,設計方案定型為LEON+FPU,在測試中能夠滿足系統的運算吞吐量指標要求。

可配置FPU對LEON數學運算性能的提升極為有效,特別是在運算密集型的SoC設計中。LEON3的GRFPU相對于其他常見微處理器的FPU有較大優勢。表2為若干處理器核FPU單元完成浮點運算指令需要的處理(延遲)時鐘周期數對比情況口。

時鐘周期數說明:括號外數字是指令處理周期數,即硬件流水線中完成該指令的周期;括號內數字是指令延遲周期數,即該指令進入流水線至從流水線中輸出結果所需要的時鐘周期數。

3 結論

作為硬件VHDL代碼開源的SPARC架構軟核IP微處理器,LEONX(包括LEON2和LEON3)良好的可移植性和可配置性使其成為建立片上系統微處理器的一個優選方案。采用Snapgear Embedded Linux的方案能夠提供一個從內核、庫文件到常用應用程序的驗證原型。然而,LEON硬件配置上的改變、升級需要驅動程序的支持,定制的軟件也需要自主開發。另外,在LEON平臺上移植并運行良好的實時操作系統有RTEMS和eCOS,根據實際的需求可以靈活選擇這些軟件開發平臺。

通過詳盡的對比測試,LEON軟核的性能優異,在導航系統SoC芯片原型設計中得到驗證。測試為基于LEON開源可配置軟核的嵌入式系統開發的軟硬件配置方式提供了有益的參考,特別是集成浮點處理單元FPU的方案。隨著可編程器件規模的超大型化,實現高性能且配置靈活的開源SoC硬件系統及軟件平臺的優勢日益明顯,為制造ASIC提供前期原型論證提供極大方便。

責任編輯:gt

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

    關注

    68

    文章

    19259

    瀏覽量

    229651
  • soc
    soc
    +關注

    關注

    38

    文章

    4161

    瀏覽量

    218162
  • 微處理器
    +關注

    關注

    11

    文章

    2258

    瀏覽量

    82403
收藏 人收藏

    評論

    相關推薦

    基于SOC/IP的智能傳感設計研究

    將提出集采集系統、補償校正、數據處理、數據通信、任務調度、人機界面、IP功能復用等功能模塊于一體的智能傳感SOC/
    發表于 08-26 09:38

    基于AVR 8位微處理器的FSPLC微處理器SOC設計

    兩個方面的內容:IP核生成和IP核復用。文中采用IP核復用方法和SOC技術基于AVR 8位微處理器AT90S1200
    發表于 07-26 06:19

    SoC驗證平臺的FPGA綜合怎么實現

    基于NiosII微處理器的SOPC系統與基于MicroBlaze微處理器的SOPC系統等。它們功能強大,而且配有相應的開發環境與系統集成的
    發表于 10-11 07:07

    怎么設計集處理器的嵌入式設計平臺

    編程接口共用或并存,可能包含部分可編程模擬電路,單芯片、低功耗。本文主要研究的是應用嵌入式系統開發的軟硬件協同設計方法來實現一個集處理器的嵌入式設計
    發表于 03-13 07:03

    學習RISC-V入門 基于RISC-V架構的開源處理器SoC研究

    ,并涌現了眾多開源處理器SoC采用RISC-V架構,這些處理器既有標量處理器,也有超標量處理器
    發表于 07-27 18:09

    LEON3開源處理器怎么才可以設計一個動態圖像邊緣檢測

      本文介紹了基于LEON3開源處理器的動態圖像邊緣檢測SoC設計。  實驗結果表明該SoC
    發表于 02-22 07:50

    求一種基于FPGA的微處理器IP的設計方法

    本文根據FPGA的結構特點,圍繞在FPGA上設計實現八位微處理器核設計方法進行探討,研究了片上系統的設計方法和設計復用技術,并給出了指令集和其調試方法,提出了一種基于FPGA的
    發表于 04-29 06:38

    如何構建基于LEON開源核的SoC平臺

    導航系統SoC芯片設計的要求有什么?如何構建基于LEON開源核的
    發表于 05-27 06:18

    基于IP復用設計的微處理器FSPLCSOC模塊

    基于IP復用設計的微處理器FSPLCSOC模塊 1 引言   文中采用IP核復用方法和SOC技術基于AVR 8位微處理器AT90S12
    發表于 05-17 08:41 ?1537次閱讀
    基于<b class='flag-5'>IP</b>復用設計的<b class='flag-5'>微處理器</b>FSPLCSOC模塊

    AEMB處理器設計的SoC系統驗證平臺

    AEMB處理器設計的SoC系統驗證平臺 本文采用OpenCores組織所發布的32位微處理器
    發表于 05-24 11:02 ?865次閱讀
    AEMB<b class='flag-5'>軟</b>核<b class='flag-5'>處理器</b>設計的<b class='flag-5'>SoC</b><b class='flag-5'>系統</b>驗證<b class='flag-5'>平臺</b>

    LEON處理器結構特點

    LEON處理器系列是歐洲航天局的下屬的研究所開發的32位微處理器,應用在航天局的各種ASIC芯片內。目前有LEON2,LEON3系列。
    發表于 01-13 17:00 ?1261次閱讀
    <b class='flag-5'>LEON</b><b class='flag-5'>處理器</b>結構特點

    基于LEON3開源處理器的動態圖像邊緣檢測SoC設計

    ,邊緣檢測和圖像顯示三個部分封裝設計為IP(Intellectual Property)核,通過AMBA APB總線嵌入到LEON3的經典SoC架構中。
    發表于 02-04 22:38 ?1148次閱讀
    基于<b class='flag-5'>LEON</b>3<b class='flag-5'>開源</b><b class='flag-5'>軟</b>核<b class='flag-5'>處理器</b>的動態圖像邊緣檢測<b class='flag-5'>SoC</b>設計

    在FPGA中利用IP核實現SOC系統中的串口收發接口的設計

    資源。為簡化設計,降低硬件資源開銷,可以在FPGA中利用IP核實現的嵌入式微處理器來對串口數據進行處理
    的頭像 發表于 08-02 08:08 ?4478次閱讀

    基于PowerPC 405微處理器和VME總線實現以太網接口設計

    SoC(片上系統)的概念已日益普及,而隨著FPGA技術的迅速發展,可編程系統芯片(SoPC)作為一種特殊的嵌入式微處理器系統,融合了
    的頭像 發表于 06-17 11:40 ?2748次閱讀
    基于PowerPC 405<b class='flag-5'>微處理器</b>和VME總線<b class='flag-5'>實現</b>以太網接口設計

    基于ARM微處理器的嵌入式TCP-IP協議的實現與應用

    基于ARM微處理器的嵌入式TCP-IP協議的實現與應用(嵌入式開發平臺搭建)-文檔為基于ARM微處理器的嵌入式TCP-
    發表于 08-04 14:38 ?22次下載
    基于ARM<b class='flag-5'>微處理器</b>的嵌入式TCP-<b class='flag-5'>IP</b>協議的<b class='flag-5'>實現</b>與應用
    主站蜘蛛池模板: 国产亚洲精品欧洲在线视频| 国产在线中文字幕| 国内自拍 在线 亚洲 欧美| 美女胸网站| 亚洲乱亚洲乱妇在线观看| www.青青草| 久久久性色精品国产免费观看| 日日噜噜夜夜爽爽| 主播蜜汁丝袜精品自拍| 国产精品久久久久久久久爆乳| 免费99精品国产人妻自在线| 亚洲AV精品乱码专区| 成人欧美一区二区三区白人| 久久久久久久尹人综合网亚洲| 香蕉鱼视频观看在线视频下载| CHINA篮球体育飞机2022网站| 久久国产影院| 亚洲精品午夜VA久久成人| 国产精人妻无码一区麻豆| 日韩欧美国产免费看清风阁| 91免费网站在线看入口黄 | 久久精品黄色| 亚洲欧美日韩国产另类电影| 国产高潮久久精品AV无码| 日韩人妻无码精品久久中文字幕| 799是什么意思网络用语| 久青草国产97香蕉在线视频| 亚洲野狼综合网站| 精品国产露脸久久AV麻豆| 亚洲免费片| 久久精品18| 在线观看中文字幕码2021不用下载| 很很射影院| 亚洲中文热码在线视频| 精品国产午夜福利在线观看蜜月 | 色综合伊人色综合网站| 工口肉肉彩色不遮挡| 无码国产成人午夜在线观看不卡| 国产精品久久久久久亚洲毛片| 天天操人人射| 久久66热在线视频精品|