<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > SOPC 系統建立及uClinux 移植實(shí)現

SOPC 系統建立及uClinux 移植實(shí)現

作者: 時(shí)間:2012-04-20 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:本文通過(guò)具體一個(gè)可以運行操作的最小,較為完整地介紹了構建以及構建NiosII軟核處理器的方法及步驟,并詳細描述了uCLinux操作系統在該系統上的方法。此外,還進(jìn)行了基于NiosII處理器操作系統下應用程序的開(kāi)發(fā),以從總體上完成實(shí)用性的驗證。

本文引用地址:http://dyxdggzs.com/article/149190.htm

引言隨著(zhù)大規模集成電路技術(shù)的進(jìn)步和制造工藝水平的提高,嵌入式系統的開(kāi)發(fā)變得日益復雜。傳統的嵌入式系統設計方法已經(jīng)不能適應當前嵌入式系統設計的需要。單個(gè)芯片容量的增大、功能的增加、體積的減小使得設計變得更加便利,同時(shí)也為嵌入式系統設計開(kāi)發(fā)開(kāi)辟了新的天地,即出現了可編程片上系統(SystemOnProgrammableChip,SOPC)技術(shù)。SOPC技術(shù)大大促進(jìn)了軟硬件協(xié)同設計及計算機系統設計自動(dòng)化的發(fā)展,并具有可裁剪、可擴充、可升級的靈活設計方式及在系統可編程功能。

通常,嵌入式系統的軟件部分主要基于實(shí)時(shí)操作系統(簡(jiǎn)稱(chēng)RTOS),在特定的RTOS之上開(kāi)發(fā)應用軟件。通過(guò)屏蔽掉許多底層硬件細節的方法,可以使得程序開(kāi)發(fā)人員改進(jìn)軟件功能、提高設計效率、降低開(kāi)發(fā)難度,同時(shí)使得程序調試方便、簡(jiǎn)單、容易維護,大大縮短了開(kāi)發(fā)周期。是一種廣泛應用于嵌入式設備中的實(shí)時(shí)操作系統,針對微控制器領(lǐng)域而設計。它的特點(diǎn)是較好的穩定性、出色的網(wǎng)絡(luò )功能和高效的文件系統支持等。最大特征就是不使用內存管理單元模塊(MMU:MemoryManagementUnit),很適合那些沒(méi)有MMU的處理器。如把uClinux操作系統于SOPC系統,便可以使得此類(lèi)系統大大縮短軟硬件開(kāi)發(fā)的時(shí)間,并可進(jìn)一步增強整體功能。

1SOPC硬件系統的1。1硬件系統架構不同于許多基于微處理器的嵌入式系統,基于SOPC的嵌入式系統具有可配置的特點(diǎn),可根據需要靈活地在一片FPGA中構造外設接口。本文構建的最小系統可運行uClinux,采用Altera公司的CycloneⅡ芯片EP2C35及相關(guān)外圍電路組成。其中,外圍電路包括1片16MB的DDRSDRAM、l片16MB的Flash、RS232、串行配置芯片EPCS64以及供電系統。系統體系架構如圖1所示。

1。2SOPC硬件開(kāi)發(fā)NiosⅡ系列嵌入式處理器是一款采用流水線(xiàn)技術(shù)、單指令流的RISCCPU,廣泛應用于嵌入式系統。NiosⅡ包括3種內核:快速的F(最高性能的優(yōu)化)內核、經(jīng)濟的E(最小邏輯占用的優(yōu)化)內核以及標準的S(平衡于性能和尺寸)內核,每種內核根據不同的性能而優(yōu)化。NiosⅡ嵌入式CPU支持32位指令集、32位數據線(xiàn)寬度、32個(gè)通用寄存器、32個(gè)外部中斷源、2GB尋址空間,包含高達256個(gè)用戶(hù)自定義的CPU定制指令。NI0SⅡCPU的所有數據、程序都是通過(guò)Avalon總線(xiàn)傳輸的,通過(guò)使用Altera的QuartusⅡ軟件以及SOPCBuilder工具可以輕松地將NiosⅡ內核嵌入到系統里。

SOPC硬件開(kāi)發(fā)主要使用QuartusⅡ和SOPCBuilder。由于本系統中使用到DDRSDRAM,所以在系統開(kāi)發(fā)前必須安裝與QuartusⅡ版本相兼容的Megacore程序以提供DDRSDRAMIP核。硬件設計主要工作有以下兩步:(1)定制NiosⅡ處理器軟核。用SOPCBuilder軟件從NiosⅡ處理器內核和NiosⅡ開(kāi)發(fā)套件提供的外設列表中選取合適的CPU、存儲器以及各外圍器件(如片內存儲器、PIO、定時(shí)器、UART、片外存儲器接口等),并定制和配置它們的功能、分配外設地址及中斷號、設定復位地址、最后生成系統。用戶(hù)也可以添加用戶(hù)自身定制指令邏輯到NiosⅡ內核以加速CPU性能,或添加用戶(hù)外設以減輕CPU的任務(wù)。定制好的NiosⅡ處理器軟核如圖2所示。

(2)完善頂層模塊。使用SOPCBuilder生成NiosⅡ系統后,將其集成到整個(gè)QuartusⅡ工程中。根據需要在工程中加入NiosⅡ系統以外的邏輯,用戶(hù)也可以集成自身定制的硬件模塊到SOPC設計之中,或集成從Altera或第3方IP供應商得到的其它現成的知識產(chǎn)權設計模塊。頂層模塊主要包括DDRSDRAM模塊、FLASH模塊、UART模塊以及PIO模塊。

2裁剪和移植uClinux操作系統本系統使用的是Microtronix公司負責維護和發(fā)行的NiosⅡuClinux版本。該版本uClinux是2。6。11的內核,目前在NiosⅡ上運行最為穩定。在NiosⅡ上uClinux操作系統環(huán)境主要包括兩個(gè)部分,一是針對NiosⅡ處理器移植的uClinux內核,二是一個(gè)包含基本系統工具和應用程序的根文件系統。

2。1建立uClinux內核該項工作主要需在NiosIIIDE環(huán)境中利用MicrotronixDevice欄中選擇uClinux內核上傳的位置(FLASH)以及內核運行的位置(SDRAM),完成生成內核的配置?;氐絅iosIIIDE主窗口界面后,在ProjectNavigator窗口中可以看到uClinux_kernel工程已經(jīng)建立好。此時(shí)在uClinux_kernel上點(diǎn)擊右鍵選擇ConfigureKernel,進(jìn)入uClinux內核配置界面,并根據硬件系統進(jìn)行uClinux內核配置。需配置的主要選項及相關(guān)描述如下:(1)Processertypeandfeature--->Platform。項選擇AlteraCycloneDevelopmentBoardSupport;(2)DeviceDrivers--->ATA/ATAPI/MFM/RLLsupport選項關(guān)掉,我們所建立的NiosII系統沒(méi)有外部IDE接口外設;(3)DeviceDrivers--->Characterdevices--->NiosPIObuttonssupport選項關(guān)掉,因為系統中沒(méi)有buttonsPIO,若選擇則會(huì )編譯出錯;(4)DeviceDrivers->Characterdevices--->Serialdrivers--->AlteraJTAGUARTsupport選項選中,為控制臺選擇JTAG下載方式;(5)DeviceDrivers->Characterdevices--->Serialdrivers--->Niosserialsupport選項選中,通過(guò)RS232串口與系統進(jìn)行通信交流;(6)其余配置不需要改變。

配置完成后予以保存并回到NiosIIIDE主窗口界面。在ProjectNavigator窗口中右鍵點(diǎn)擊uClinux_kernel選擇BuildProject編譯內核。編譯完成后,在ProjectNavigator窗口中展開(kāi)uClinux_kernel工程??梢钥吹?,在uClinux_kernel的目錄中,已經(jīng)生成了vmlinux。bin文件。在該文件上點(diǎn)擊右鍵選擇Upload即可啟動(dòng)燒寫(xiě)程序,將生成的內核二進(jìn)制文件vmlinux。bin寫(xiě)入Flash芯片中。

2。2建立uClinux文件系統uClinux文件系統的建立與uClinux內核的建立方法類(lèi)似,也是在NiosIIIDE環(huán)境中利用MicrotronixInstallMinimal按鈕,只選擇必須的工具和應用程序。這種情況下生成的基本文件系統僅為872K,很適合資源緊湊的開(kāi)發(fā)平臺。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>