日本在线www-日本在线播放一区-日本在线不卡免费视频一区-日本在线不卡视频-成人影院久久久久久影院-成人影院一区二区三区

ABB25年11月
關注中國自動化產業發展的先行者!
工業智能邊緣計算2025年會
2025工業安全大會
CAIAC 2025
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

基于NOIS處理器的定制硬件技術研究
  • 企業:    
  • 點擊數:843     發布時間:2023-05-15 07:29:46
  • 分享到:

文獻標識碼:B文章編號:1003-0492(2023)04-076-04中圖分類號:TP919

★劉元元(東方電氣集團(四川)物產有限公司,四川德陽618000)

摘要:基于系統級FPGA的SOPC嵌入式設計特點,采用SOPC Builder設計工具可以有選擇地將處理器、存儲器、I/O等系統設計所需的IP組件集成到FPGA器件上,也可以通過自定義用戶邏輯集成到FPGA器件上,從而構建高效SOC。本文分析了嵌入式處理器NOIS軟核特性,并給出了基于NOIS內核的SOPC軟硬件開發流程和自定義用戶邏輯的軟硬件設計過程。

關鍵詞:FPGA;片上系統;可編程片上系統;NOIS軟核

近年來,隨著現場可編程邏輯陣列(FPGA)器件的發展,以及SOPC技術的成熟,采用Nios Ⅱ軟核處理器在FPGA上實現系統級功能算法成為可能。Nios II軟核處理器是Altera公司推出的嵌入在其FPGA內部的32位軟核處理器,且其內核僅占用很少的邏輯資源,另外它的可配置程度極高,不但可以根據用戶需求加入各種標準接口,如各種外部存儲器、以太網控制器、IDE驅動器、USB接口等,也可以將用戶自己定義的接口模塊和邏輯模塊加入其中,必要的時候還可以在Nios II軟核中加入實時操作系統,實現了對多任務的調度,這讓用戶可以隨心所欲地構建完全符合系統要求的處理器結構。在FPGA外部只需要添加配置芯片、SDRAM、FLASH就可以構成一個完整的硬件平臺,很好地體現了SOPC的設計思想,使系統具有結構簡單、成本低廉、保密性好的特點。在性能上,系統可以利用FPGA的并行處理能力提高系統性能,如采用定制自定義模塊,用硬件控制耗時大的軟件算法模塊來提高系統性能,也可以采用NiosⅡ處理器的自定義指令方式用硬件實現部分復雜算法片段,方便在軟件程序中調用,大大提高了程序執行效率。另外,還可以用新推出的C2H工具直接將一些軟件程序進行硬件化,不僅提高了系統性能,還保證了本系統很高的處理速度,具有很好的實時性。

1 SOPC的設計

SOPC即System On a Programmable Chip,是指用可編程邏輯器件把整個系統放到一塊硅片上。一方面它是片上系統—即由單個芯片完成整個系統的主要邏輯功能;另一方面,它是可編程系統,具有靈活的設計方式,可裁減、擴充、升級,并具備軟硬件在系統可編程的功能。這項技術將EDA、計算機設計、嵌入式系統、工業自動控制系統、DSP及數字通訊系統融為一體。

一個最小系統應該包括中央處理單元(CPU)、隨機存儲器(RAM)和FlashROM(存儲代碼、數據等),稍微復雜點的系統至少應該包括UART、DMA、Timer、中斷管理模塊以及GPIO等。

我們知道,FPGA支持用戶自定義的硬件,即用戶自己設計的IP核。在許多應用中,我們可以利用這一特性,使用硬件描述語言來定制適合系統特性的模塊。例如,FPGA中沒有AD模塊,必須外加AD芯片。其他MCU控制AD芯片必須通過軟件來實現,對FPGA來說,則可以將此AD芯片的控制工作集成到一個VHDL或VERLOG模塊中,綜合后集成到SOPC系統中,實現定制外設。通過這一步,此AD就可以看成FPGA的一個內部外設,而不必像其他MCU那樣通過指令來模擬AD芯片時序。相比之下,FPGA能提高效率并減少出錯率,因為其本質還是通過硬件來實現讀取的功能。

2 SOPC Builder

SOPC Builder是Altera公司推出的一種可加快在FPGA內實現嵌入式處理器相關設計的工具,其功能與PC應用程序中的引導模板(Wizard)類似,旨在提高設計者確定需要的處理器和參數,并根據此創建一個處理器的完整存儲器映射。設計者還可以選擇所需要的IP外圍電路,如存儲控制器、I/O控制器和定時器等模塊。當然,也支持用戶自定義的硬件。

SOPC Builder具有友好的圖形用戶接入,可以為用戶提供強大的設計平臺以搭建基于AVALON總線的系統。用戶不僅可以從ALTERA提供的IP庫中選取組件、處理器、SDRAM、FLASH、USB、以太網等,也可以選擇配置相應的參數,還有包含操作系統內核的嵌入式軟件開發工具。在進行SOPC設計時,如果用戶有特殊功能要求,但IP庫中沒有,則可加入自定義邏輯實現。通過QUARTUS II工具可完成SOPC的全部設計,QUARTUS II用戶能把一個基于NIOS處理器的系統經生成、仿真的編譯后,下載到ALTERA的FPGA芯片中,并進行實時評估和驗證。SOPC Builder可自動進行開發中的系統定義和集成過程,實現了嵌入式系統的各方面開發,包括研究的設計和驗證。SOPC Builder的設計流程為描述系統和生成系統。

SOPC Builder提供了一組圖形界面以方便用戶描述系統,該界面列出了所有可用的系統模塊,設計者在界面中挑選其所設計的系統所需模塊,并設置參數,界面本身不生成邏輯或軟件,其目標是形成一個“系統描述文件”。

SOPC Builder根據系統描述文件進行操作:(1)對需要軟件支持的模塊,如NOIS處理器。(2)調用每個模塊的生成程序,最終生成一個系統級的HDL文件。(3)創建Modelsim所需的文件,以便仿真使用。(4)系統綜合。(5)生成TCL腳本。

3 嵌入式處理器NOIS軟核

Altera公司的Nios是基于RISC技術的通用嵌入式處理器軟內核,它專為可編程邏輯進行了優化設計,也為SOPC設計了一套綜合解決方案。Nios處理器采用16位指令集、16/32位數據通道、5級流水線技術,平均一個時鐘周期處理一條指令,性能高達50MIPS。NiosV2.1處理器具有以下主要特征:(1)大容量窗口寄存器堆。其最大可以實現512個內部通用寄存器,編譯程序運用內部寄存器可以加快子程序的調用和局部變量的存取。(2)簡單完備的指令集。32位和16位的Nios系統都運用16位寬的指令,這減少了代碼長度和指令存儲區的寬度。(3)強大的尋址模式。Nios指令集包括裝載和存儲指令,這樣編譯程序可加快結構體和局部變量(存儲棧)的存取。(4)較強的可擴展性。用戶可直接把定制邏輯集成入Nios算術邏輯單元(ALU)內,并自動生成包含C語言和匯編語言下訪問定制指令硬件的宏指令的軟件開發工具包(SDK)。(5)硬件輔助功能。用戶可利用硬件的優點去另創一些指令,從而促進指令執行速度。它可以有5條用戶定制指令,用戶可以把復雜的工作變成一個單一的指令。

4 NIOS Ⅱ軟核

Nios Ⅱ是一個用戶可配置的通用RISC嵌入式處理器,Altera推出的Nios Ⅱ系列嵌入式處理器擴展了目前世界上最流行的軟核嵌入式處理器的性能。把Nios Ⅱ嵌入到Altera的所有FPGA中,例如Stratix Ⅱ、Stratix、Cyclone Ⅱ、cyclone、APEX、ACEX和Hardcopy系列器件中,用戶可獲得超過200DMIPS的性能,并可以從三種處理器以及超過60個IP核中選擇所需要的。Nios Ⅱ系統為用戶提供了最基本的多功能性,設計師可以依此來創建一個最適合他們需要的嵌入式系統。使用Nios Ⅱ處理器的用戶可以根據他們的需要來調整嵌入式系統的特性、性能以及成本,使得產品快速推向市場,擴展了產品的生命周期,還可以避免處理器的更新換代。

4.1 開發工作流程

(1)初期開發工作:需要軟硬件結合處理,對系統進行需求分析。比如:CPU是否需要一個硬件加速乘法器,設計中所需要的外圍器件及數量,是否需要DMA通道釋放CPU在進行拷貝時所占用的資源;

(2)硬件開發:用SOPC Builder定義Nios Ⅱ處理器系統,用Quartus Ⅱ軟件定義器件、分配管腳并編譯;

(3)軟件開發:C/C++程序開發,開發鼎峙硬件的驅動程序,定義硬件平臺為目標進行編譯連接;

(4)下載到開發板上進行驗證;

(5)成功完成Nios Ⅱ系統設計。

4.2 硬件開發流程

用SOPC Builder來選擇合適的CPU、存儲器以及外圍器件,比如片內存儲器、PIO、UART和片外存儲器接口。

系統需外接按鈕接口時,可通過用戶自定義邏輯用VHDL編程來實現按鈕并行計數的功能。用戶邏輯要與Nios處理器進行通信,需增加片選chipselect和地址address2個信號。其中當chipselect為1時,Nios處理器選中用戶邏輯。Nios處理器用地址信號來尋址用戶邏輯。通過address信號,用戶邏輯才能正確地連到總線上與Nios處理器進行通信。對于獨立的用戶邏輯,如不需與Nios進行通信,比如實現獨立并行計數和顯示的功能,則片選信號和地址信號不需要。當在用戶邏輯里加入片選信號和地址信號后,SOPC Builder會自動給用戶邏輯分配一個基地址。SOPC Builder對系統中包括用戶邏輯在內的所有組件統一進行編址,若實例需處理3個按鈕并行計數,則地址信號需要2位。2位地址信號可處理4個地址,這里只用3個:00、01和10。地址信號在VHDL中所形成的地址,比如00、01,是相對地址。相對地址與基地址結合在一起,形成絕對地址。比如,第1個按鈕的計數值分配到相對地址“00”中,則絕對地址為0x4A0+0﹡4=0x4A0,第3個按鈕的計數值分配到相對地址“10”中,則絕對地址為0x4A0+2﹡4=0x4A8,其中0x4A0是系統分配的基地址。在計算絕對地址時,相對地址乘4,因實例實現的是32位Nios處理器,每個寄存器占據32位,而地址是按字節分配的,所以32/8=4。當應用程序訪問這些地址時,無論讀還是寫,片選信號自動被設置為“1”。則應用設計的VHDL程序代碼為:

Asicl=(int*)0X4A0;//指定要訪問的地址;

Read-datal=*asicl;//讀取地址中的內容,則片選信號chipselect自動被設置為“1”。

對于地址信號的選擇,則要在應用程序中明確指定,比如上面代碼中指定訪問的地址是“0x4A0”。實現用戶邏輯設計VHDL代碼的實體說明部分為:

ENTITYtestIS

port(clock:IN STD-LOGIC

pb-gen-counr1:IN STD-LOGIC;

pb-gen-counr2:IN STD-LOGIC;

pb-gen-counr3:IN STD-LOGIC;

pb-gen-clcar:IN STD-LOGIC;

chipselect:IN STD-LOGIC;

address:IN STD-LOGIC-VECTOR(1 dorwnto0);

count-out:INSTD-LOGIC-VECTOR(7 dorwnto 0);END tesk

實體中結構部分的輸出如下,其中的temp1、temp2、temp3是內部信號,用以保存3個按鈕的計數值。使用的是并行語句,保證3個按鈕可并行計數。count-out<=temp1 when(chipselect=‘1’andaddress=“00”)else

temp2 when(chipselect=‘1’andaddress=“01”)else

temp3 when(chipselect=‘1’andaddress=“10”)else

“00000000”;

需把用戶邏輯連接到Nios處理器中,在SOPCBuilder的圖形用戶界面中,選擇添加用戶邏輯項,加入用戶編寫的VHDL文件,同時指定實體說明中各信號的類型。Clock被指定為“clk”類型,Pb-gencounr1等被指定為“expor1”類型,chipselect被指定為“chipselect”類型,address被指定為“address”類型,count-out被指定為“readdata”類型。然后,SOPCBuilder自動生成一個Nios處理器軟核及相關外設的源文件。最后工作是編譯整個項目,并把生成的后綴為sof的文件下載到開發板上的可編程芯片中。

4.3 軟件開發流程

系統軟件設計具體工作如下:

(1)在用SOPC Builder系統集成軟件進行硬件設計的同時,就可以開始編寫C/C++軟件,比如算法或控制程序。用戶可以使用現成的軟件庫和開放的操作系統內核加快開發過程;

(2)在Nios ⅡIDE中建立新的軟件工程時,IDE會根據SOPC Builder對系統的硬件配置自動定制HAL(硬件抽象層)系統庫,這個系統庫可以為程序和底層硬件的通訊提供接口驅動程序;

(3)使用Nios ⅡIDE編譯調試軟件;

(4)在硬件已下載到板上的基礎上將軟件下載到開發板上并在硬件上運行。

5 結束語

SOPC技術利用IP庫,并通過SOPCBuilder可快速生成嵌入式系統,同時,可把用戶自定義的邏輯加入到系統中。通過SOPC還可向Nios處理器中添加用戶自定義的指令,擴充了Nios指令集,體現了用SOPC設計嵌入式系統的靈活性,快速生成了最終產品,縮短了開發周期。基于系統級FPGA/CPLD的SOPC嵌入式系統的開發設計是一個新課題,需要了解開發設計的方法、普及EDA工具以及獲得IP核等。本文對SOPC的探討對推動SOPC的應用具有一定的實際借鑒意義。SOPC必將在通信、工業控制、計算機相關產品和消費類電子等各個領域中獲得廣泛的應用。

作者簡介:

劉元元(1979-),女,河南平輿人,工程師,學士,現就職于東方電氣集團(四川)物產有限公司,主要研究方向為嵌入式工控領域和新能源發電設備。

參考文獻:

[1] Anna S. Chiang. 可編程片上系統要求新的設計方法[J]. 半導體技術, 2001, 26 (8) : 5 - 7.

[2] Altera公司. SOPC Builder Data Sheet[M]. 美國: 美國Altera, 2002.

[3] 黃曉林, 蔣偉榮. SoC與IP復用及其應用策略[J]. 現代電子技術, 2003, 159 (16) : 1 - 4.

[4] 黃曉林, 梁玉紅. SoC及其應用[J]. 廣東自動化與信息工程, 2003, 24 (3) : 7 - 10.

[5] 何立民. 以SoC為中心的多學科融合與滲透[J]. 單片機與嵌入式系統應用, 2001 (5) : 5 - 9.

[6] ALTERA. Nios Development Board Reference Marual[Z]. Cyclone Edition, ALTERA Inc, 2003, 5.

[7] ALTERA. SOPC Builder datasheet[Z]. ALTERA Inc, 2003, 1.

摘自《自動化博覽》2023年4月刊

熱點新聞

推薦產品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
成人a级高清视频在线观看| 99热热久久| 中文字幕97| 天天做人人爱夜夜爽2020毛片| 91麻豆tv| 四虎影视库国产精品一区| 色综合久久天天综合| 成人免费观看视频| 久久99这里只有精品国产| 国产激情一区二区三区| 亚洲爆爽| 欧美激情一区二区三区视频 | 香蕉视频久久| 国产一区精品| 免费一级片网站| 一级片免费在线观看视频| 青青久久精品| 久久99青青久久99久久| 免费国产在线观看不卡| 二级特黄绝大片免费视频大片| 天堂网中文在线| 精品视频在线看| 九九热国产视频| 二级片在线观看| 国产国语对白一级毛片| 精品久久久久久影院免费| 成人免费网站久久久| 欧美18性精品| 国产一区二区精品久久91| 一本伊大人香蕉高清在线观看| 国产伦理精品| 91麻豆精品国产高清在线| 国产成人精品综合| 国产成人精品在线| 国产国产人免费视频成69堂| 99热精品在线| 99热精品在线| 国产福利免费视频| 99久久精品国产片| 精品视频免费观看| 国产91丝袜高跟系列| 国产视频久久久久| 日韩欧美一二三区| 国产麻豆精品视频| 国产成人精品在线| 精品在线观看一区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 99久久精品国产国产毛片 | 午夜家庭影院| 可以免费看毛片的网站| 国产91视频网| 国产原创中文字幕| 国产成人精品在线| 精品视频在线看 | 国产成人精品在线| 91麻豆精品国产片在线观看| 你懂的在线观看视频| 精品久久久久久影院免费| 亚欧成人毛片一区二区三区四区| 久久久久久久男人的天堂| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 欧美日本韩国| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产不卡在线观看视频| 99久久精品国产免费| 免费的黄色小视频| 国产美女在线一区二区三区| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 成人影院一区二区三区| 成人a级高清视频在线观看| 亚洲天堂免费| 国产福利免费视频| 精品美女| 日韩专区第一页| 人人干人人插| 你懂的福利视频| 91麻豆爱豆果冻天美星空| 国产a网| 一本伊大人香蕉高清在线观看| 日韩字幕在线| 国产极品白嫩美女在线观看看| 美女免费精品视频在线观看| 国产精品自拍亚洲| 成人免费网站久久久| 国产一区免费观看| 色综合久久手机在线| 久久精品店| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 99久久精品国产免费| 精品视频在线观看视频免费视频| 一本伊大人香蕉高清在线观看| 一本伊大人香蕉高清在线观看| 成人高清免费| 在线观看导航| 欧美国产日韩在线| 四虎影视库国产精品一区| 人人干人人草| 一本高清在线| 日日爽天天| 日韩一级黄色大片| 99久久精品国产片| 久久99这里只有精品国产| 一级片片| 日本伦理网站| 日本免费看视频| a级精品九九九大片免费看| 高清一级片| 国产伦久视频免费观看 视频| 精品国产一区二区三区国产馆| 九九免费高清在线观看视频| 麻豆系列 在线视频| 欧美爱色| 二级片在线观看| 免费毛片播放| 日韩在线观看免费| 99久久精品国产麻豆| 国产一区精品| 精品国产一区二区三区久| 国产成a人片在线观看视频| 成人高清视频在线观看| 成人免费一级毛片在线播放视频| 成人高清免费| 久久久久久久网| 成人免费观看视频| 黄视频网站免费| 91麻豆精品国产自产在线| 一本伊大人香蕉高清在线观看| 欧美大片a一级毛片视频| 国产伦精品一区二区三区在线观看| 日韩中文字幕在线播放| 国产91视频网| 精品美女| 久久国产一区二区| 精品国产一级毛片| 可以在线看黄的网站| 国产不卡高清在线观看视频| 欧美激情一区二区三区在线| 久久国产一区二区| 精品国产一区二区三区久久久蜜臀| 久久精品免视看国产成人2021| 99热精品在线| 亚欧乱色一区二区三区| 高清一级淫片a级中文字幕 | 国产视频久久久久| 国产高清在线精品一区a| 国产91素人搭讪系列天堂| 91麻豆国产福利精品| 欧美国产日韩在线| 可以免费看污视频的网站| 一本高清在线| 99久久精品国产片| 久久国产影院| 国产综合成人观看在线| 日韩一级精品视频在线观看| 91麻豆爱豆果冻天美星空| 国产激情视频在线观看| 黄色免费三级| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 免费毛片播放| 国产a免费观看| 成人免费观看网欧美片| 国产成人精品一区二区视频| 欧美大片一区| 国产精品免费久久| 久久久久久久久综合影视网| 国产福利免费视频| 日韩在线观看免费完整版视频| 欧美一级视频免费观看| 香蕉视频久久| 99热精品在线| 九九干| 亚洲wwwwww| 午夜激情视频在线播放| 国产美女在线观看| 美女免费精品视频在线观看| 日韩在线观看免费完整版视频| 欧美1区| 黄视频网站免费看| 黄色免费三级| 台湾美女古装一级毛片| 日韩字幕在线| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产美女在线观看| 久久国产精品只做精品| 日韩av东京社区男人的天堂| 欧美国产日韩精品| 欧美国产日韩在线| 国产成人欧美一区二区三区的| 亚洲 国产精品 日韩| 国产视频一区二区在线播放| 国产麻豆精品免费密入口| 麻豆网站在线看| 成人免费一级纶理片| 韩国三级视频网站| 国产一区二区福利久久| 夜夜操网| 你懂的日韩| 精品久久久久久中文字幕一区| 精品国产三级a| 麻豆系列 在线视频|