Nios Ⅱ系統(tǒng)Avalon總線PWM設(shè)計(jì)_第1頁(yè)
Nios Ⅱ系統(tǒng)Avalon總線PWM設(shè)計(jì)_第2頁(yè)
Nios Ⅱ系統(tǒng)Avalon總線PWM設(shè)計(jì)_第3頁(yè)
Nios Ⅱ系統(tǒng)Avalon總線PWM設(shè)計(jì)_第4頁(yè)
Nios Ⅱ系統(tǒng)Avalon總線PWM設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Nios 系統(tǒng)Avalon總線PWM設(shè)計(jì)摘要:在nis系統(tǒng)設(shè)計(jì)中,spbuilder開發(fā)環(huán)境提供許多常用的設(shè)備模型,供開發(fā)者在系統(tǒng)中添加和調(diào)用。而對(duì)于其他新設(shè)備設(shè)計(jì)人員可以按照avaln總線標(biāo)準(zhǔn)將設(shè)備驅(qū)動(dòng)程序集成到spbuilder的硬件抽象層中,同樣可以加載使用,方便了用戶開發(fā)一個(gè)自定制的片上系統(tǒng)。介紹nis嵌入式系統(tǒng)內(nèi)集成avaln總線的p從外設(shè),將p應(yīng)用在嵌入式智能小車監(jiān)控系統(tǒng)。關(guān)鍵詞:p;nis系統(tǒng);avaln總線;智能小車中圖分類號(hào):tp306文獻(xiàn)標(biāo)識(shí)碼:a文章編號(hào):1004-373x(2021)01-183-03pdesignfavalnbusnnissysteangyuhua,g

2、ushujun(llegeinfratinfengineering,nrthhinauniversityftehnlgy,beijing,100041,hina)abstrat:inthedesignfnissyste,spbuilderintegratesanygenerideviesdefrdevelpertuse.butfrtherdevies,thedriveranbeintegratedinthardareabstratlayerfthespbuilderardingtavalnbusnrs.italsanbeladedanddevelpsauser-definedsnvenient

3、ly.theethdfdesigningauser-definedavalndeviethrughintegratingpinthenissyste,andpisappliednintelligentvehilesysteareintrdued.keyrds:p;nissyste;avalnbus;intelligentvehile在nis系統(tǒng)的構(gòu)建過(guò)程中,spbuilder開發(fā)環(huán)境集成了許多常用類型的設(shè)備模型,供開發(fā)者調(diào)用。在日新月異的嵌入式系統(tǒng)設(shè)計(jì)中開發(fā)環(huán)境所集成的接口設(shè)備是非常有限的,有時(shí)無(wú)法滿足開發(fā)者的需要,spbuilder開發(fā)工具允許用戶根據(jù)規(guī)那么擴(kuò)展自己的所需設(shè)備,完成系統(tǒng)的設(shè)計(jì)

4、和開發(fā),開發(fā)者按照avaln總線標(biāo)準(zhǔn)將設(shè)備驅(qū)動(dòng)程序集成到spbuilder的硬件抽象層(hal)中,在spbuilder環(huán)境下加載使用,方便了用戶開發(fā)一個(gè)自定制的片上系統(tǒng)1。本文通過(guò)在nis嵌入式系統(tǒng)內(nèi)部集成了基于avaln總線的脈沖寬度調(diào)制(p)從外設(shè),介紹了自定制avaln設(shè)備的過(guò)程。將其應(yīng)用在嵌入式智能小車監(jiān)控系統(tǒng),為采用nisii處理器的開發(fā)者提供了一些方法和建議。1定制基于avaln總線的用戶外設(shè)介紹nis的avaln總線不同于其他微處理器的固定外設(shè),nis的外設(shè)是可以任意定制的,這使得用戶可以根據(jù)詳細(xì)的應(yīng)用需求而定制。所有的nis系統(tǒng)外設(shè)都是通過(guò)avaln總線與nis軟核相連,從而

5、進(jìn)展數(shù)據(jù)交換。因此對(duì)于用戶定義的外設(shè)必須遵從該總線協(xié)議才可與nis之間建立聯(lián)絡(luò)2。avaln信號(hào)接口定義了一組信號(hào)類型片癬讀使能、寫使能、地址、數(shù)據(jù)等,用于描繪主從外設(shè)上基于地址的讀寫接口。外設(shè)使用準(zhǔn)確的信號(hào)與其內(nèi)核邏輯進(jìn)展接口,并刪除會(huì)增加不必要開銷的信號(hào)。在nis系統(tǒng)中一個(gè)自定義設(shè)備由如下幾部分組成:(1)硬件文件:用hdl語(yǔ)言編寫的描繪自定義設(shè)備元件邏輯的硬件描繪文件。(2)軟件文件:用語(yǔ)言編寫的設(shè)備存放器文件以及設(shè)備的驅(qū)動(dòng)程序文件。(3)設(shè)備描繪文件(ptf):本文件描繪了設(shè)備的構(gòu)造,包含spbuilder配置以及將其集成到系統(tǒng)中時(shí)所需要的信息。本文件由spbuilder根據(jù)硬件文件以

6、及軟件文件自動(dòng)生成。2基于nis系統(tǒng)的p設(shè)計(jì)p是利用數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)展控制的一種非常有效的技術(shù),廣泛應(yīng)用于從測(cè)量、通信到功率控制與變換的許多領(lǐng)域中。實(shí)際上p是一種對(duì)模擬信號(hào)電平進(jìn)展數(shù)字編碼的方法,通過(guò)高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來(lái)對(duì)一個(gè)詳細(xì)模擬信號(hào)的電平進(jìn)展編碼。p信號(hào)仍然是數(shù)字的,因?yàn)樵诮o定的任何時(shí)刻,滿幅值的直流供電或者完全有,或者完全無(wú)。電壓或電流源是以一種通或斷的重復(fù)脈沖序列被加到模擬負(fù)載上。通即是直流供電被加到負(fù)載上,斷即是供電被斷開。只要帶寬足夠,任何模擬值都可以使用p進(jìn)展編碼。2.1硬件設(shè)計(jì)硬件文件指的是hdl文件,由以下幾個(gè)模塊組成:邏輯模塊:描繪設(shè)備的邏輯

7、功能;存放器映射模塊:為內(nèi)部邏輯模塊和avaln總線提供了通信接口;avaln總線接口模塊:使avaln總線訪問(wèn)存放器從而完成相應(yīng)的邏輯功能3。對(duì)于自定義的p也是由以上幾部分模塊組成。p按照以下要求設(shè)計(jì):(1)任務(wù)邏輯按一個(gè)簡(jiǎn)單時(shí)鐘進(jìn)展同步操作。(2)任務(wù)邏輯使用32位計(jì)數(shù)器為p提供一個(gè)一定范圍的周期和占空比,最大周期可設(shè)為232個(gè)lk。(3)可以使用微控制器來(lái)設(shè)置p的周期和占空比的值,因此要提供一個(gè)可對(duì)存放器進(jìn)展讀寫的接口和控制邏輯。(4)定義存放器來(lái)存儲(chǔ)p周期和占空比的值。(5)微控制器可以通過(guò)控制存放器的制止位關(guān)閉p輸出。p任務(wù)邏輯的構(gòu)造圖如圖1所示。圖1p任務(wù)邏輯構(gòu)造圖p任務(wù)邏輯由輸入

8、時(shí)鐘(lk)、輸出信號(hào)端口(put)、使能位、32位計(jì)數(shù)器以及一個(gè)32位比擬電路組成。lk作為32位計(jì)數(shù)器的時(shí)鐘信號(hào),32路比擬電路比擬32位計(jì)數(shù)器的當(dāng)前值與占空比設(shè)定存放器(dutyylevalueregister)中的值來(lái)決定put的輸出為高或低。當(dāng)當(dāng)前計(jì)數(shù)器中的值小于或等于占空比存放器中的值時(shí),put輸出低電平,否那么輸出高電平。p周期設(shè)定存放器(dulnvalueregister)用來(lái)設(shè)置put的信號(hào)周期,當(dāng)當(dāng)前計(jì)數(shù)器的值等于周期設(shè)定存放器中的設(shè)定時(shí),產(chǎn)生一個(gè)復(fù)位信號(hào)來(lái)去除計(jì)數(shù)器中的值。使能控制存放器(enablentrlregister)能使時(shí)鐘信號(hào)有效或無(wú)效,即控制計(jì)數(shù)器是否計(jì)數(shù),

9、從而保持put輸出保持當(dāng)前不變。p內(nèi)部包括使能控制存放器(enablentrlregister)、周期設(shè)定存放器(dulnvalueregister)以及占空比設(shè)定存放器(dutyylevalueregister),如圖1所示。設(shè)計(jì)中將各存放器映射成avaln從端口地址空間內(nèi)一個(gè)單獨(dú)的偏移地址。每個(gè)存放器都能進(jìn)展讀/寫訪問(wèn),軟件可以讀回存放器中的當(dāng)前值。表1是p存放器以及偏移地址列表。表1p存放器以及偏移地址列表存放器名稱地址偏移量r/描繪lkdivide00r/用來(lái)設(shè)定p輸出周期的時(shí)鐘數(shù)dutyyle01r/用來(lái)設(shè)定一個(gè)周期內(nèi)p輸出低電平的時(shí)鐘個(gè)數(shù)enable10r/使能和關(guān)閉p輸出,為1時(shí)

10、使能p輸出保存11-p的avaln接口需要一個(gè)簡(jiǎn)單的從端口,該端口使用avaln總線信號(hào)完成存放器的讀/寫傳輸。p與avaln總線接口所需的信號(hào)如表2所示。表2p信號(hào)名稱和avaln信號(hào)類型列表信號(hào)名稱位寬方向描繪lk1輸入同步數(shù)據(jù)傳輸與任務(wù)邏輯resetn1輸入復(fù)位信號(hào),低有效hipselet1輸入片選信號(hào)address2輸入2位地址,只有其中3個(gè)譯碼被使用rite1輸入寫使能信號(hào)ritedata32輸入32位寫數(shù)據(jù)值read1輸入讀使能信號(hào)readdata32輸出32位讀數(shù)據(jù)值p硬件設(shè)計(jì)文件包含表3所示的三個(gè)verilg編寫的hdl文件。表3p硬件設(shè)計(jì)文件文件名描繪ptasklgi.vp的

11、核心代碼,用于實(shí)現(xiàn)p的功能pregisterfile.vp的存放器邏輯文件pavalninterfae.v設(shè)計(jì)的頂層文件,為p任務(wù)邏輯模塊文件和存放器模塊文件提供avaln從接口邏輯ptasklgi.v完成p的邏輯功能,圖2是此文件在quartus環(huán)境下的仿真波形。圖2p的邏輯功能設(shè)計(jì)仿真波形圖2中:lkdivide信號(hào)設(shè)定p輸出周期的時(shí)鐘數(shù),dutyyle信號(hào)設(shè)定一個(gè)周期內(nèi)p輸出低電平的時(shí)鐘個(gè)數(shù),兩個(gè)信號(hào)設(shè)定值決定p信號(hào)的占空比和周期。2.2軟件設(shè)計(jì)假如要使nis軟核可以訪問(wèn)自定義的設(shè)備,就必須根據(jù)先前的硬件設(shè)計(jì)按照硬件提取層的文件構(gòu)造編寫設(shè)備驅(qū)動(dòng)程序4。以p為例說(shuō)明hal的文件構(gòu)造,如表4

12、所示。表4p的hal文件構(gòu)造文件名描繪/ps軟件驅(qū)動(dòng)程序目錄/in硬件接口文件目錄avalnslavepregs.h存放器頭文件/hal硬件抽象層驅(qū)動(dòng)程序目錄alteraavalnprutines.hp函數(shù)原型訪問(wèn)聲明文件alteraavalnprutines.訪問(wèn)p的函數(shù)/testsftare系統(tǒng)測(cè)試程序目錄p.用戶程序2.3將p設(shè)計(jì)封裝為spbuilder元件當(dāng)硬件文件和軟件文件都已建立好后,便可以通過(guò)spbuilder中帶有的設(shè)備編輯器將自定義設(shè)備封裝到開發(fā)環(huán)境內(nèi)部,在構(gòu)建nis系統(tǒng)時(shí)可以對(duì)其直接調(diào)用。在spbuilder中單擊reatnepnent,創(chuàng)立新元件向?qū)砑觝dl文件、設(shè)置信

13、號(hào)和接口添加軟件,最終生成包含描繪文件、用戶存放硬件描繪文件的文件夾以及用來(lái)包含hal軟件文件的hal文件夾。2.4構(gòu)建nis系統(tǒng)構(gòu)建好的內(nèi)核文件在quartus中編譯,生成pf配置文件下載到e2pr芯片中,接下來(lái)就可以使用niside開發(fā)環(huán)境編輯用戶程序,以及通過(guò)jtagblaster或者usbblaster在目的板上對(duì)應(yīng)用程序進(jìn)展調(diào)試。3自定制外設(shè)p在嵌入式智能小車監(jiān)控系統(tǒng)中的應(yīng)用智能小車監(jiān)控系統(tǒng)設(shè)計(jì)應(yīng)用周立功公司sartsp核心板,fpga為altera公司的ep112,nis處理器作為嵌入式pu,機(jī)器人車電機(jī)共有兩個(gè),左輪電機(jī)和右輪電機(jī)。該部分包括電機(jī)驅(qū)動(dòng)電路和電機(jī)控制電路,即左電機(jī)的

14、驅(qū)動(dòng)與控制以及右電機(jī)的驅(qū)動(dòng)與控制。驅(qū)動(dòng)電路采用tireletrnis公司的大功率直流電機(jī)驅(qū)動(dòng)芯片l289,調(diào)速控制采用p來(lái)控制汽車的前進(jìn)速度,由fpga寫入控制字,可得到不同占空比的p驅(qū)動(dòng)信號(hào),此p信號(hào)送入電機(jī)驅(qū)動(dòng)芯片的控制端來(lái)調(diào)節(jié)速度。調(diào)用電機(jī)驅(qū)動(dòng)程序,改變p占空比,輸出p波,實(shí)現(xiàn)電機(jī)的速度控制。用p信號(hào)控制直流電動(dòng)機(jī)速度,頻率較低時(shí),電動(dòng)機(jī)不會(huì)穩(wěn)定運(yùn)轉(zhuǎn),頻率較高時(shí),p信號(hào)的驅(qū)動(dòng)效率降低。經(jīng)過(guò)屢次實(shí)際電路的測(cè)試,調(diào)試結(jié)果顯示當(dāng)頻率在5001000hz時(shí),效果較好。部分語(yǔ)言控制代碼如下:vidritevelity(intdata)ir(ypbase,0,0 xff);ir(ypbase,1,data);4結(jié)語(yǔ)nis嵌入式處

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論