




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
安徽工業(yè)大學(xué)實驗報告課程名稱: 硬件描述語言與系統(tǒng)仿真課題名稱:通用PWMIP核模塊學(xué)院: 電氣學(xué)院 專業(yè): 電氣工程(專碩) 姓名: 丁凱 學(xué)號: 20120278 指導(dǎo)教師:武衛(wèi)華2013.1.10摘要利用QuartusII6.0軟件,在其特定的VHDL語言運行的環(huán)境下,設(shè)計出了一個通用的三相6路互補輸出的PWM波IP核模塊。其中每項PWM波帶死區(qū),頻率從5k變換到10k,占空比從0.1?0.9可調(diào),這些都可由用戶設(shè)置。本文用軟件方法實現(xiàn)死區(qū)可控,通過改變調(diào)制波的值來實現(xiàn)占空比調(diào)節(jié),并采用DDS技術(shù)設(shè)計一個自加模塊對三角波ROM尋址來實現(xiàn)頻率可控。在設(shè)計的過程中運用了分頻器模塊,三角波和比較器模塊,在實際的實驗仿真中得出所需要的信號發(fā)生模塊,是的進一步對VHDL語言的理解與應(yīng)用在電力電子上,對軟件QuartusII6.0軟件更進一步了解。關(guān)鍵詞:PWM波分頻模塊比較器DDS技術(shù)1、 引言隨著FPGA(FieldProgrammableGateArray)和EDA(ElectronicDesignAutomation)技術(shù)的發(fā)展。一些研究者紛紛采用可編程邏輯器件構(gòu)建多路PWM發(fā)生器來簡化電力電子核心數(shù)字電路,提高系統(tǒng)的可靠性,但是所有這些設(shè)計均根據(jù)主電路特定的應(yīng)用場合定制,因而缺乏通用性和靈活性。由于三項PWM波有緊密的相關(guān)性,本文設(shè)計了統(tǒng)一的時鐘頻率,對每一對PWM波的開關(guān)頻率、死去時間、占空比實行同時同頻控制。這大大減少了該小核的模塊,并非常易于實現(xiàn)PWM信號的同步。這樣的設(shè)計也簡化了用戶使用時的參數(shù)設(shè)置。通用PWMIP核是針對一般電力電子應(yīng)用場合而設(shè)計,應(yīng)具有較好的可設(shè)置性,如開關(guān)周期、死區(qū)時間、PWM模式以及功率保護等設(shè)置。2、 通用PWMIP核的構(gòu)建2.1總體結(jié)構(gòu)為了簡化說明,下面以單項PWM波的產(chǎn)生為例來說明三項PWM波發(fā)生器。單項PWM波產(chǎn)生主要包括如下圖(一)中的幾個模塊。硬件的時鐘脈沖經(jīng)分頻器分頻后作為系統(tǒng)的各個模塊的同一時基。DDS(DirectDigitalSynthesizer)即直接數(shù)字合成器,是一種新型的頻率合成技術(shù)。具有較高的頻率分辨率,可以實現(xiàn)快速頻率切換并且在改變時能夠保持相位的連續(xù)。本文的9
位自加器就是根據(jù)DDS原理來實現(xiàn)對三角波ROM進行循環(huán)尋址,從而得到頻率可調(diào)的三角波。將所得三角波與用戶輸入的一個數(shù)值在比較器中比較后得到一路占空比可控的PWM波。最后加一個死去產(chǎn)生模塊就能輸出兩路互補的死去可控的PWM波,分別標記為XH、XL。三項6路互補PWM波的產(chǎn)生,原理上與單項PWM波產(chǎn)生一樣,只不過在三角波ROM中分別錯開了120度角。加數(shù)*率控制字—20分頻器'兆加數(shù)*率控制字—20分頻器'兆*自加器 >三角波ROM死區(qū)挫制字常數(shù)二占空比控制字比較器FWM波死區(qū)控
制模塊XHXL2.2各個模塊的設(shè)計1、分頻器模塊:由于而本設(shè)計系統(tǒng)用的是1M的時鐘,并且三角波ROM中總共存了1000個值,根據(jù)公式f 1000m(M是頻率控制字),就可以實現(xiàn)步長為1K的頻率跳轉(zhuǎn)。而FPGA硬件用的是20M的時鐘脈沖,所以設(shè)計中加了一個20倍的分頻器。其模塊和代碼如下:Pclkfen_pinclkclkoutinst18Pclkfen_pinclkclkoutinst18--20倍的分頻器設(shè)計libraryieee;useieee.std_logic_1164.all;--20倍的分頻器設(shè)計libraryieee;useieee.std_logic_1164.all;signalnt:std_logic_vector(4downto0);signalcnt:std_logic;beginuseieee.std_logic_arith.all;Process(nt,clk)useieee.std_logic_unsigned.all;entityfen_pinISport(clk:instd_logic;useieee.std_logic_unsigned.all;entityfen_pinISport(clk:instd_logic;clkout:outstd_logic);endfen_pin;architecturertloffen_pinisbeginifclk'eventandclk='1'thenifnt=9thennt<="00000";--強制回零clkout<=cnt;cnt<=notcnt;--翻轉(zhuǎn)endprocess;endrtl;endprocess;endrtl;endif;endif;2、自加器模塊:首先對DDS原理進行簡單介紹,對于信號發(fā)生器而言,他的輸出可以用下式來描述:S=Asin①t=Asin(2丸ft) (1)其中,sout是指該信號發(fā)生器的輸出信號波形,fout指輸出信號對應(yīng)的頻率。上式的表述對于時間是連續(xù)的,為了用數(shù)字邏輯實現(xiàn)該表達式,必須進行離散化處理,用基準時鐘clk進行抽樣,令正弦信號的相位。為0=2兀ft2兀f out在一個clk周期Tclk2兀f out(3)fclkA°=(3)fclk其中如指clk的頻率,對于2??梢岳斫獬伞皾M”相位,為了對A0進行數(shù)字量化,把2兀切個clk成N份,由此每個clk周期的相位增量^0用量化值氣0來表述:B/^.N,且B履為整數(shù)。與公式(3)聯(lián)立,可得BA0='out,B=N?'outNfA0fclk clk本文的自加器就是基于這樣一個原理,由外部輸入一個頻率控制字M,在自加器中以M為步長從零開始自加至超過1000后強制回零,從而在三角波ROM中循環(huán)尋址輸出不同頻率的三角波。三角波輸出頻率為:f=念m。其模塊和代碼如下:ADDftA/nrrirQHl | 、|?F_ADDftA/nrrirQHl | 、|?F_T」 : A[9..O] 3[9..O:B[9..O]elkirisFHLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYADDISPORT(A:INSTD_LOGIC_VECTOR(9
DOWNTO0);B:INSTD_LOGIC_VECTOR(9DOWNTO0);clk:INSTD_LOGIC;S:INOUTSTD_LOGIC_VECTOR(9
DOWNTO0));--10位自加法器模塊ARCHITECTUREbehavOFADDISBEGINPROCESS(clk)BEGINIFclk'eventandclk='1'thenIFS>="1111100111"THENS<="0000000000"; --強制回零ELSES<=A+B;ENDIF;ENDIF;ENDPROCESS;ENDADD; ENDbehav;3、三角波ROM:本設(shè)計中將三角波采了1000個計數(shù)點(便于頻率計算),存放在一個10位ROM中,為了盡可能精確,輸出采用8位二進制輸出形式。將所采的1000個值分別錯開120度排列存放在三個不同的ROM中實現(xiàn)了三角波的相位移動從而得到三項PWM波輸出。三個ROM表里的值如下圖所示:
AddrF+1+7T+4+5祁日0170169169168168167167166316616516516416416316316216162161161160160159159158241581571561561551551641643215315315215216115115015040149'149148148147147M614648145145144144143143142142561411411401401391391381386413713713613613513513413472133132132131131130130129301291281281271271261261268812512412412312312212212196121120120119'11911811811710411711611611511511411411311211311211211111111011010912010810810710710610G105105128104104103103102102101101136100100999998989797144969695969494939316292929191909089891608888878786868584168848383828281818017680797978781111761847675757474737372Addr+0+1+2Addr+0+1+2+3+5+6H017017017117117217217317381741741751751761761771771617817817917918018018118124182182183183184184185186321861871871881881891891904019019119119219219319319448194195195196196197197198561981991992002002012012026420220320320420420520520672206207207208209209210210802112112122122132132142148821521521621621721721821896219219220220221221222222104223223224224226226226226112227227228228229229230230120231232232233233234234235128235236236237237238238239136239240240241241242242243144243244244245245246246247152247248248249249260260251160251252252263263264255255168254253253252252251251250176250249249248248247247246184246245245244244243243242(一)初相為零三角波ROM部分值(二)初相為120°三角波ROM部分值(三)初相為240°三角波ROM部分值
4、占空比控制字模塊:由于三角波以8位二進制輸出,最大值為255。要實現(xiàn)占空比可控,就要不斷調(diào)節(jié)與三角波的比較常值大小。當比較值為230時,由230/255=0.9可知此時占空比為90%,比較值為204時,有204/255可知此時占空比為80%,以此類推。但是這樣輸入值使得用戶還要計算,很不方便。為了解決這個問題,我們把比較值裝入一個ROM,由外部尋址來調(diào)節(jié)占空比。當外部輸入值為9時,尋址找到ROM的230,即輸出波形占空比為90%;輸入8時,尋址找到204,即輸出波形占空比為80%,輸入7時,尋址找到178,即輸出波形為占空比70%,以此類推。占空比控制字模塊及ROM表如下:I7hwn_knng_hi-address[4..O]->clockii模塊Addr+0噸+3+4+5+7002551761021271531788204230占空比控制字的ROM表5、比較器模塊:產(chǎn)生三項三角波后,將每項三角波與占空比控制字在比較器中作比較。令8位占空比控制字為A,三角波為令8位占空比控制字為A,三角波為B,為高電平;當A<B為高電平;當A<B時,Y輸出低電平。這就得到了頻率和占空比都可控的PWM波。比較器模塊和代碼如下所示:比較器模塊及其連接圖比較器模塊及其連接圖--8位比較器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYcomp8_1ISPORT(A:INSTD_LOGIC_VECTOR(7DOWNTO0);B:INSTD_LOGIC_VECTOR(7DOWNTO0);Y:OUTSTD_LOGIC);ENDcomp8_1;ARCHITECTUREbehaveOFcomp8_1ISBEGINPROCESS(A,B)BEGINIF(A>=B)THEN<='0';ELSE<='1';ENDIF;ENDPROCESS;ENDbehave;6、死區(qū)產(chǎn)生模塊:本實驗的把產(chǎn)生死去放在最后一個模塊是出于以下幾個原因:1) 改變死區(qū)時不會影響前面模塊的參數(shù);2) 編程算法相對容易實現(xiàn);3) 所產(chǎn)生的死區(qū)更不容易上失真;下面以A相為例說明死去產(chǎn)生的原理,算法中使加計數(shù)和減計數(shù)交替執(zhí)行,計數(shù)周期由外部用戶輸入決定。死區(qū)計數(shù)采用飽和計數(shù),飽和計數(shù)的特性類似于電容的充放電過程,飽和溢出則回零,規(guī)則:(1) 當輸入為0時,如果計數(shù)值等于0,則計數(shù)值保持不變,否則作減1計數(shù);(2) 當輸入為1時,如果計數(shù)值等于max,則計數(shù)值保持不變,否則作加1計數(shù);(3) 當輸入為1且死區(qū)計數(shù)數(shù)值為max時,AL=0,AH=1;(4) 當輸入為0且死區(qū)計數(shù)數(shù)值為0時,AL=1,AH=0;(5) 當死區(qū)計數(shù)數(shù)值在0~max之間時,AL=0,AH=0,從而形成死區(qū)。其中,max就是用戶控制輸入的死區(qū)控制字,具體時序參見下圖。設(shè)置一個8位用戶控制死區(qū)時間,使得用戶有一個較寬的死區(qū)控制時間,但是所設(shè)定的死去時間不應(yīng)超過輸出PWM波寬度的一半。以下是死區(qū)產(chǎn)生模塊及其代碼:死區(qū)產(chǎn)生的時序原理圖模塊圖死區(qū)產(chǎn)生的時序原理圖模塊圖--死區(qū)產(chǎn)生模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;Entitydead_1isPort(AH,AL:outstd_logic;clk,Ax:instd_logic;Dead_time:instd_logic_vector(7downto0));Enddead_1;Architecturedeadofdead_1is
signalpA:std_logic_vector(7downto0);BeginProcess(clk)BeginIf(clk'EVENTandclk='1')thenIf((Ax=T)and(pA/=dead_time))thenpA<=pA+1;Elsif((Ax='0')and(pA/="00000000"))then
pA<=pA-1;Endif;If((Ax=T)and(pA=dead_time))thenAL<='1';ElseAL<='0';Endif;If((Ax='0')and(pA="00000000"))thenAH<='1';ElseAH<='0';Endif;Endif;Endpro
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)形象策劃服務(wù)合同
- 專業(yè)分包施工合同協(xié)議書
- 舊機動車買賣居間服務(wù)合同
- 石灰土底基層施工勞務(wù)承包合同
- 廣州華立學(xué)院《區(qū)域數(shù)字經(jīng)濟調(diào)查》2023-2024學(xué)年第二學(xué)期期末試卷
- 大興安嶺職業(yè)學(xué)院《財務(wù)報表編制與分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 下壓式接力跑 教學(xué)設(shè)計-2023-2024學(xué)年高一上學(xué)期體育與健康人教版必修第一冊
- 江南影視藝術(shù)職業(yè)學(xué)院《信息與內(nèi)容安全》2023-2024學(xué)年第二學(xué)期期末試卷
- 綿陽飛行職業(yè)學(xué)院《馬克思主義經(jīng)典著作選讀(一)》2023-2024學(xué)年第二學(xué)期期末試卷
- 長江大學(xué)文理學(xué)院《家具史》2023-2024學(xué)年第二學(xué)期期末試卷
- 【部編版】六年級道德與法治下冊全冊課件
- 《殯葬文化學(xué)》課程教學(xué)大綱
- DBJ51T 198-2022 四川省既有民用建筑結(jié)構(gòu)安全隱患排查技術(shù)標準
- 退役軍人基層服務(wù)平臺
- DB15T 2427-2021 公路水泥穩(wěn)定鋼渣混合料設(shè)計與施工技術(shù)規(guī)范
- 稅法最全課件完整版ppt教程整套教學(xué)講義(最新)
- 2022年南京信息職業(yè)技術(shù)學(xué)院職業(yè)適應(yīng)性測試模擬試題及答案解析
- 廣東佛山祖廟導(dǎo)游詞
- 硬筆書法紙可打印
- 正丁烷的理化性質(zhì)及危險特性表
- 入團志愿書(2016版本)(可編輯打印標準A4) (1)
評論
0/150
提交評論