第11章SOPC系統(tǒng)軟件開發(fā)_第1頁
第11章SOPC系統(tǒng)軟件開發(fā)_第2頁
第11章SOPC系統(tǒng)軟件開發(fā)_第3頁
第11章SOPC系統(tǒng)軟件開發(fā)_第4頁
第11章SOPC系統(tǒng)軟件開發(fā)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第11章 SOPC系統(tǒng)軟件開發(fā) Altera公司提供SOPC Builder系統(tǒng)開發(fā)工具,來幫助用戶創(chuàng)建采用Nios處理器的軟硬件系統(tǒng):硬件設(shè)計(jì)師利用SOPC Builder構(gòu)建硬件,SOPC Builder的生成結(jié)果將作為開發(fā)軟件的起點(diǎn)。11.1 Nios II IDE 簡介 Nios II IDE是一個(gè)基于Eclipse 架構(gòu)的集成開發(fā)環(huán)境,是一個(gè)圖形化的用戶界面。集成了一個(gè)硬件抽象層HAL(Hardware Abstraction Layer),支持MicroChip/OS II 和輕量級TCP/IP協(xié)議棧,支持Flash下載(Flash Programmer 和 Quartus II

2、Programmer)。IDE能夠自動(dòng)生成和維護(hù)系統(tǒng)設(shè)備驅(qū)動(dòng)以及和硬件抽象層HAL庫相關(guān)的系統(tǒng)庫軟件。11.1.1 Nios II IDE的功能模塊 Nios II IDE由文本編輯器、flash編程器、調(diào)試器和C2H編譯器組成。提供了建立、調(diào)試和管理Nios II處理器工程所需要的所有功能。 1工程管理 2編輯器和編譯器 3調(diào)試器 4Flash編程器 5C2H編譯器11.1.2 NiosII IDE開發(fā)流程 基于NiosII IDE的軟件開發(fā)的流程,如圖11.2所示。11.2 基于NiosIDE軟件示例數(shù)字鐘軟件 根據(jù)NiosIDE的開發(fā)流程,以數(shù)字鐘軟件開發(fā)的實(shí)例來介紹設(shè)計(jì)過程。11.2.

3、1 建立軟件工程 Nios IDE有自己的工程向?qū)?,幫助設(shè)計(jì)者創(chuàng)建IDE管理的工程,具體步驟如下: 1.啟動(dòng)Nios IDE 2.建立新的軟件工程digital_timer 3.建立C源文件和頭文件 4.導(dǎo)入已有的軟件工程11.2.2 編譯工程 工程創(chuàng)建后,接下來需要對工程配置一下,然后對工程進(jìn)行編譯。 1工程配置 2工程編譯11.2.3 運(yùn)行 Nios IDE提供三種運(yùn)行平臺來驗(yàn)證設(shè)計(jì),一種是直接硬件在線仿真(Nios Hardware),另外兩種是軟件仿真:NiosInstruction Set Simulator和NiosModelSim。硬件在線仿真需要硬件配合,一塊開發(fā)板,一個(gè)USB

4、-BLASTER或者BYTE-BLASTER。 1運(yùn)行程序 2在線調(diào)試程序 3將程序和硬件下載到外部Flash中11.3 數(shù)字鐘的程序設(shè)計(jì) 軟件系統(tǒng)規(guī)劃包括設(shè)計(jì)顯示、設(shè)置和時(shí)間算法三部分。用8段數(shù)碼管顯示時(shí)間(小時(shí):分鐘:秒);設(shè)置部分的功能設(shè)置小時(shí)、分鐘和秒。時(shí)間算法部分指時(shí)間累加,即秒數(shù)加到60變?yōu)?,然后分鐘數(shù)加1。分鐘數(shù)加到60變?yōu)?,小時(shí)數(shù)再加1。小時(shí)數(shù)加到24時(shí),小時(shí)數(shù)變?yōu)?,以此不斷循環(huán)。數(shù)字鐘主程序流程圖,如圖11.21所示。11.4 HAL系統(tǒng)庫 HAL是硬件抽象層(hardware abstraction level)的縮寫,HAL把與硬件相關(guān)的細(xì)節(jié)抽象出來,使應(yīng)用程序的開

5、發(fā)人員在設(shè)計(jì)時(shí)對硬件的訪問,變成訪問一組統(tǒng)一的 API(應(yīng)用程序接口)。HAL的API 和ANSI C標(biāo)準(zhǔn)庫綜合在一起,使用戶采用類似C語言的庫函數(shù)來訪問硬件設(shè)備或文件,如printf()、fopen()、fwrite()等函數(shù)。11.4.1 HAL簡述 1HAL構(gòu)成 2使用HAL的優(yōu)點(diǎn) 3HAL的工作方式 11.4.2 目前提供的主要HAL資源 目前提供的主要HAL資源有:含有系統(tǒng)設(shè)置和軟件屬性配置的系統(tǒng)頭文件;設(shè)備模型類,例如,字符設(shè)備類,定時(shí)器類,flash設(shè)備類,DMA設(shè)備類等,每一類設(shè)備都有定義好的API接口;HAL數(shù)據(jù)類型;HAL互斥資源,例如信號量和事件標(biāo)志, 用來實(shí)現(xiàn)資源的安全

6、共享;HAL文件系統(tǒng), 可以通過文件系統(tǒng)的方式,方便訪問硬件設(shè)備。 1system.h系統(tǒng)頭文件 2通用設(shè)備模型類 3HAL數(shù)據(jù)類型 4HAL文件系統(tǒng) 11. 5 使用HAL開發(fā)應(yīng)用程序 HAL和SOPC Builder緊密相關(guān),如果硬件配置有了變化,HAL設(shè)備驅(qū)動(dòng)配置也會(huì)自動(dòng)隨之改動(dòng),從而避免了由于底層硬件的變化而產(chǎn)生的程序錯(cuò)誤。用戶不用自己創(chuàng)建或拷貝HAL文件,而且用戶也不用編輯HAL中的任何源代碼。NiosIDE會(huì)為用戶自動(dòng)創(chuàng)建和管理HAL文件。11.6 小結(jié) 本章主要講述基于NiosII IDE的軟件開發(fā)。首先對NiosII IDE進(jìn)行了簡要介紹,然后講述了NiosII IDE的開發(fā)流程,并用上一章的講到的數(shù)字鐘為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論