《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 基于Verilog HDL的SPWM全數(shù)字算法的FPGA實(shí)現(xiàn)

基于Verilog HDL的SPWM全數(shù)字算法的FPGA實(shí)現(xiàn)

2009-06-12
作者:丁電寬,梁建均,王文奇,楊榮杰

??? 摘? 要: 在詳細(xì)闡述正弦脈寬調(diào)制算法的基礎(chǔ)上,結(jié)合DDS技術(shù),以Actel FPGA作為控制核心,通過(guò)自然采樣法比較1個(gè)三角載波和3個(gè)相位差為1 200的正弦波,利用Verilog HDL語(yǔ)言實(shí)現(xiàn)死區(qū)時(shí)間可調(diào)的SPWM全數(shù)字算法,并在Fushion StartKit開(kāi)發(fā)板上實(shí)現(xiàn)SPWM全數(shù)字算法。通過(guò)邏輯分析儀和數(shù)字存儲(chǔ)示波器得到了驗(yàn)證,為該技術(shù)進(jìn)一步應(yīng)用和推廣提供了一個(gè)良好的開(kāi)放平臺(tái)。?

??? 關(guān)鍵詞: Actel FPGA;SPWM;DDS;Verilog HDL

?

??? 隨著信號(hào)處理技術(shù)及集成電路制造工藝的不斷發(fā)展,全數(shù)字化SPWM(正弦脈寬調(diào)制)算法在調(diào)速領(lǐng)域越來(lái)越受到青睞。實(shí)現(xiàn)SPWM控制算法的方法很多,其中模擬比較法因電路復(fù)雜、且不易與數(shù)字系統(tǒng)連接而很少采用;傳統(tǒng)的微處理器因不能滿足電機(jī)控制所要求的較高采樣頻率(≥1 kHz)而逐漸被高性能的DSP硬件系統(tǒng)所取代,但該系統(tǒng)成本高、設(shè)計(jì)復(fù)雜。與傳統(tǒng)方法相比,在現(xiàn)場(chǎng)可編程邏輯器件FPGA上產(chǎn)生一種新的SPWM控制算法,具有成本低、研發(fā)周期短、執(zhí)行速度高、可擴(kuò)展能力強(qiáng)等優(yōu)點(diǎn)。該技術(shù)進(jìn)一步推動(dòng)了變頻調(diào)速技術(shù)的發(fā)展。?

??? 本文結(jié)合SPWM算法及FPGA的特點(diǎn),以Actel FPGA作為控制核心,用Verilog HDL語(yǔ)言實(shí)現(xiàn)了可編程死區(qū)延時(shí)的三相六路SPWM全數(shù)字波形,并在Fushion StartKit開(kāi)發(fā)板上實(shí)現(xiàn)了各功能模塊,通過(guò)邏輯分析儀和數(shù)字存儲(chǔ)示波器上驗(yàn)證了SPWM波形及死區(qū)時(shí)間,為該技術(shù)進(jìn)一步應(yīng)用和推廣提供了一個(gè)平臺(tái)。?

1 Actel Fushion器件介紹[1-2]?

??? Actel Fushion系列器件是一款具有模擬功能的Flash架構(gòu)FPGA,結(jié)合先進(jìn)的Flash FPGA數(shù)字技術(shù)和模擬技術(shù),融合了FPGA數(shù)字內(nèi)核、ADC、Flash存儲(chǔ)器、模擬的I/O、RTC等部分。Fushion器件內(nèi)部具有2 Mbit到8 Mbit不等的用戶可用的Flash存儲(chǔ)器;30個(gè)通道、最高12位精度、最高600 kS/s采樣率的ADC;片內(nèi)100 MHz的RC振蕩器與PLL(鎖相環(huán))共同為FPGA提供時(shí)鐘;Fushion內(nèi)部40 bit的RTC除支持典型的RTC應(yīng)用外,還可以控制片內(nèi)1.5 V的電壓調(diào)整器以實(shí)現(xiàn)低功耗的睡眠和喚醒模式。這些特點(diǎn)極大地提高了單芯片的功能,簡(jiǎn)化了整個(gè)系統(tǒng)設(shè)計(jì),大幅度減少了電路板面積和系統(tǒng)的總成本。?

??? Fushion系列AFS600內(nèi)部含有用戶使用的容量為4 Mbit的Flash存儲(chǔ)器,內(nèi)部存儲(chǔ)器模塊以Flash memory Block(FB)形式劃分,每個(gè)FB限制為2 Mbit的空間,用戶可以單獨(dú)使用每個(gè)FB塊,也可以自行用邏輯來(lái)級(jí)聯(lián)所有的FB塊以構(gòu)建大容量的Flash存儲(chǔ)器。Flash 存儲(chǔ)器讀操作可以從FB陣列、頁(yè)面緩沖區(qū)或狀態(tài)寄存器中讀取數(shù)據(jù)。?

2 數(shù)字系統(tǒng)電路總體設(shè)計(jì)方案?

2.1 SPWM算法原理[3]?

??? 正弦脈寬調(diào)制技術(shù)(SPWM)是調(diào)制波為正弦波、載波為三角波或鋸齒波的一種脈寬調(diào)制法,是現(xiàn)代變頻調(diào)速系統(tǒng)中應(yīng)用最為廣泛的脈寬調(diào)制方式,目前有自然采樣法、規(guī)則采樣法、等面積法等。其中規(guī)則采樣法計(jì)算簡(jiǎn)單,但諧波含量較大;一種改進(jìn)的等面積法諧波含量低,但計(jì)算復(fù)雜,不利于系統(tǒng)實(shí)現(xiàn);自然采樣法是在正弦波和三角波的自然交點(diǎn)時(shí)刻控制功率開(kāi)關(guān)器件的通斷,是最理想的采樣方法。?

??? 本文采用等腰三角波和三路相差120°的正弦波比較生成SPWM波,在Fushion StartKit開(kāi)發(fā)板上采用自然采樣法,結(jié)合數(shù)字頻率合成技術(shù)DDS,生成死區(qū)延時(shí)可調(diào)的SPWM全數(shù)字波形。?

2.2 數(shù)字系統(tǒng)電路總體方案設(shè)計(jì)[4-7]?

??? Verilog HDL硬件描述語(yǔ)言具有很好的易讀性和可重用性,結(jié)合Verilog HDL硬件描述語(yǔ)言設(shè)計(jì)規(guī)范及SPWM工作機(jī)理,用自頂向下的分割方法對(duì)整個(gè)系統(tǒng)進(jìn)行總體方案設(shè)計(jì)。首先從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行功能方框圖的劃分和結(jié)構(gòu)設(shè)計(jì)。系統(tǒng)頂層功能方框圖如圖1所示。?

?

?

??? 根據(jù)頂層設(shè)計(jì)的思想,采用Verilog HDL語(yǔ)言分別實(shí)現(xiàn)各個(gè)模塊的設(shè)計(jì),最后把各個(gè)模塊嵌入到頂層模塊中,使各個(gè)模塊有機(jī)地組成一個(gè)完整的整體。?

3 系統(tǒng)模塊的設(shè)計(jì)與實(shí)現(xiàn)?

3.1 直接數(shù)字頻率合成模塊[8]?

??? 直接數(shù)字頻率合成DDS是采用數(shù)字化技術(shù),通過(guò)控制頻率控制字直接產(chǎn)生所需的各種不同頻率信號(hào),突破了模擬頻率合成法的原理,從“相位”的概念出發(fā)進(jìn)行頻率合成。這種合成方法不僅可以給出不同頻率的正弦波,而且還可以給出不同初始相位的正弦波,甚至可以給出各種任意波形。電路一般包括基準(zhǔn)時(shí)鐘、頻率累加器、相位累加器、幅度/相位轉(zhuǎn)換電路、D/A 轉(zhuǎn)換器。在設(shè)計(jì)中,將要輸出的波形數(shù)據(jù)(如正弦函數(shù)表)預(yù)先存在ROM(或RAM)單元中,然后在系統(tǒng)標(biāo)準(zhǔn)時(shí)鐘頻率下,按照一定的順序從ROM(或RAM)單元中讀出數(shù)據(jù),再進(jìn)行D/A轉(zhuǎn)換,就可以得到一定頻率的輸出波形。本設(shè)計(jì)直接利用從Flash存儲(chǔ)器的存儲(chǔ)單元中讀出的離散正弦函數(shù)值與生成的三角波進(jìn)行比較,實(shí)現(xiàn)系統(tǒng)的全數(shù)字化要求。?

3.2 三角波產(chǎn)生模塊?

??? 本模塊采用同步三角波調(diào)制方法,利用可逆計(jì)數(shù)器對(duì)輸入時(shí)鐘進(jìn)行計(jì)數(shù)。計(jì)數(shù)器先執(zhí)行加法,從0計(jì)數(shù)到255,再執(zhí)行減法計(jì)數(shù)從255到0,從而形成三角載波。如此反復(fù)就可以得到峰峰值255連續(xù)的三角波形。輸入時(shí)鐘是系統(tǒng)時(shí)鐘通過(guò)鎖相環(huán)輸出的1 MHz的時(shí)鐘。?

3.3 建立正弦函數(shù)表?

??? 三角波的幅值范圍在0~255,而正弦波的幅值在-1~+1之間,為了實(shí)現(xiàn)等幅值比較,將正弦波上移一個(gè)單位后,再將所有值同乘以128,使正弦波的幅值也在0~255之間。即:?

??? m=128×(sin(x)+1)???????????????????????????????? (1)?

??? 式(1)用C語(yǔ)言對(duì)此函數(shù)在一個(gè)周期(0~2π)內(nèi)完成768個(gè)量化并且直接生成Flash存儲(chǔ)器的初始化文件(.ahx)格式,再用SmartGen輸入將Flash 存儲(chǔ)器配置成常用的數(shù)據(jù)存儲(chǔ)器,將預(yù)先生成的.ahx文件導(dǎo)入生成data Storage宏模塊,就建立了正弦函數(shù)表。生成正弦函數(shù)表的流程圖如圖2所示。?

3.4 三相正弦波產(chǎn)生和輸出模塊[9,10]?

??? FPGA的Fushion芯片理論上可以實(shí)現(xiàn)任何方式的數(shù)學(xué)運(yùn)算邏輯,但由于芯片的容量限制,并不是任何計(jì)算都能實(shí)現(xiàn)的。因此需事先將正弦函數(shù)離散并加載到FPGA的Flash存儲(chǔ)器中,在正弦調(diào)制波的離散過(guò)程中即可將一個(gè)周期完整地離散。因此,只對(duì)其中A相進(jìn)行離散化處理,數(shù)據(jù)存儲(chǔ)在Flash存儲(chǔ)器中,每個(gè)數(shù)據(jù)分配1個(gè)地址。即可以利用計(jì)數(shù)器來(lái)產(chǎn)生取正弦波數(shù)據(jù)的地址,通過(guò)數(shù)字頻率合成技術(shù)改變計(jì)數(shù)器的計(jì)數(shù)頻率就可以改變正弦波的頻率。這樣即可先輸出一路的正弦波,另外兩路正弦波產(chǎn)生的方法與此類似,只是起始取數(shù)據(jù)的地址相差120°,即分別從第256和第512個(gè)數(shù)據(jù)開(kāi)始取數(shù)。?

??? 為了在每個(gè)調(diào)制波周期查找正弦函數(shù)表以及分別與載波進(jìn)行比較,在設(shè)計(jì)中采用時(shí)分復(fù)用技術(shù)。即依據(jù)三相關(guān)系,由一個(gè)地址計(jì)數(shù)器,通過(guò)基本量加1轉(zhuǎn)移到另一地址計(jì)數(shù)器中,并且在跳轉(zhuǎn)過(guò)程中,這一地址計(jì)數(shù)器加1指向下一單元,從而分時(shí)取出三相地址單元的內(nèi)容。利用對(duì)正弦表尋址的高速度,使一個(gè)正弦表在不同時(shí)間段查詢不同相的正弦波的幅值,以達(dá)到減少正弦表所占用的FPGA資源的目的。這樣就大大減少了邏輯數(shù)目,僅增加了地址選擇器和三個(gè)同步存儲(chǔ)器,實(shí)現(xiàn)了正弦函數(shù)表的復(fù)用,在很大程度上節(jié)省了芯片的資源。?

??? 電路的具體實(shí)現(xiàn):相位互差120°的三路地址數(shù)據(jù)并行輸入,通過(guò)一個(gè)三選一的選擇器進(jìn)行選擇,選擇器的控制端接三進(jìn)制的計(jì)數(shù)器。如計(jì)數(shù)器為0時(shí),輸出A相地址,取出A相正弦值;為1時(shí),輸出B相地址,取出B相正弦值;為2時(shí),輸出C相地址,取出C相正弦值。因此只要使輸入的三相地址周期性變化,就可實(shí)現(xiàn)并行輸入的三相地址數(shù)據(jù)在時(shí)間上的連續(xù),也就實(shí)現(xiàn)了三相地址數(shù)據(jù)的合成。其存儲(chǔ)單元功能框圖如圖3。這樣就可以利用一個(gè)正弦表來(lái)得到三相的正弦值,達(dá)到減少正弦表占用FPGA資源的目的。?

?

?

??? 查表時(shí)每次只能輸出一相的數(shù)據(jù),所以每次產(chǎn)生的數(shù)據(jù)需利用寄存器先暫存一下。首先輸出A相,通過(guò)暫存器l存入到A相存儲(chǔ)器;接著輸出B相,利用暫存器2存入到B相存儲(chǔ)器;最后輸出C相,利用暫存器3存入到C相存儲(chǔ)器中。這樣,三相正弦波數(shù)據(jù)都存儲(chǔ)在各自的存儲(chǔ)器中,這三個(gè)寄存器采用同步控制信號(hào),當(dāng)控制信號(hào)觸發(fā)時(shí),同時(shí)輸出三相的正弦波數(shù)據(jù)用于后面的比較。該部分用狀態(tài)機(jī)實(shí)現(xiàn),其狀態(tài)轉(zhuǎn)換圖如圖4所示。?

?

?

??? 其部分程序代碼如下:?

??? case(state1)?

A:???? //初始化狀態(tài)?

??? begin?

??? ? ADDRES1<=addr1;? //時(shí)分復(fù)用第一路地址?

??? ? READ_EN<=1′b1;? //讀使能開(kāi)?

??? ? NEXT<=1′b1;???????? //開(kāi)啟預(yù)讀模式?

??? ? if(addr1==18'd767)??????? //生成地址?

??????? addr1<=18'd0;?

??????? else if (!BUSY)???? //如不忙狀態(tài)開(kāi)始讀?

??????? ?? begin?

??????? ?? addr1<=addr1+18′d1;//地址自增?

??????? ?? out0<=DATAOUT;? //數(shù)據(jù)暫存?

??????? ?? state1<=B;????????? //取第二路數(shù)據(jù)地址?

??????? ?? end?

??? ? end?

B:???? //取第二路數(shù)據(jù)?

??? begin?

??? ? ADDRES1<=addr2;????? //時(shí)分復(fù)用第二路地址?

??? ? READ_EN<=1′b1;?

??? ? NEXT<=1′b1;?

??? ? if(addr2==18′d767)?

??? ? addr2<=18′d0;?

??? ? else if (!BUSY)?

??? ? begin?

??????? addr2<=addr2+18′d1;?

??????? out1<=DATAOUT;?

??????? state1<=C;?

??????? end?

??? ? end?

C:???? //取第三路數(shù)據(jù)?

??? begin?

??? ? ADDRES1<=addr3;????? //時(shí)分復(fù)用第三路地址?

??? ? READ_EN<=1′b1;?

??? ? NEXT<=1′b1;?

??? ? if(addr3==18′d767)?

??? ? addr3<=18′d0;?

??? ? else if (!BUSY)?

??????? begin?

??????? addr3<=addr3+18′d1;?

??????? out2<=DATAOUT;?

??????? state1<=D;?

??? ??? end?

??? ? end?

D:???? //空操作狀態(tài)?

??? begin?

??? ? state1<=E;?

??? ? end?

E:???? //數(shù)據(jù)存儲(chǔ),同時(shí)取出三路數(shù)據(jù)?

??? begin?

??? ? outdata0<=out0;?

??? ? outdata1<=out1;?

??? ? outdata2<=out2;?

??? ? state1<=A;?

??? end?

??? endcase?

3.5 三角波與正弦波比較控制模塊?

??? 該模塊用于輸出三相六路SPWM脈沖序列。用模塊1中輸出的三角波分別與模塊4輸出的三相正弦波相比較,從而先得到三路SPWM脈沖序列。當(dāng)正弦波數(shù)據(jù)大于三角波數(shù)據(jù)時(shí),輸出高電平;反之,輸出低電平。每相輸出又分為互補(bǔ)的兩路輸出,利用一個(gè)逆變器對(duì)輸入波形取反,就可以得到與SPWM脈沖序列互補(bǔ)的波形。?

??? 其部分程序代碼如下:?

??? always@(outdata0 or outdata1 or outdata2 or out2)//比較器?

??????? begin?

??????? ?? if(outdata0>out2)?

?? ??????????????? outdata4=1;?

??????? ?? else outdata4=0;?

??????? ?? if(outdata1>out2)?

????? ???????????? outdata5=1;?

??????? ?? else outdata5=0;?

??????? ?? if(outdata2>out2)?

???????? ????????? outdata6=1;?

??????? ?? else? ? outdata6=0;?

??????? end?

3.6 時(shí)延控制死區(qū)輸出模塊?

??? 對(duì)于SPWM三相橋式逆變器,由于開(kāi)關(guān)管固有開(kāi)關(guān)時(shí)間Ts的影響,開(kāi)通時(shí)間Ton往往小于關(guān)斷時(shí)間Tof,因此容易發(fā)生同臂兩只開(kāi)關(guān)管同時(shí)導(dǎo)通的短路故障。為了避免這種故障的發(fā)生,通常要設(shè)置開(kāi)關(guān)死區(qū)ΔT,以保證同橋臂上的一只開(kāi)關(guān)管可靠關(guān)斷后,另一只開(kāi)關(guān)管才能開(kāi)通。死區(qū)的設(shè)置方式有兩種:一種是提前關(guān)斷、延時(shí)開(kāi)通的雙邊對(duì)稱設(shè)置;另一種是按時(shí)關(guān)斷、延滯Δt開(kāi)通的單邊不對(duì)稱設(shè)置。根據(jù)FPGA的編程特點(diǎn),選擇了按時(shí)關(guān)斷、延滯Δt開(kāi)通的單邊不對(duì)稱設(shè)置,并且時(shí)延死區(qū)的調(diào)節(jié)與控制與時(shí)延控制死區(qū)模塊的輸入時(shí)鐘clk有關(guān)。?

??? 根據(jù)延時(shí)模塊中延時(shí)信息:Δt=2×Tclk ?

??? clk是鎖相環(huán)輸出時(shí)鐘CLK 1 MHz(本文采用的是1 MHz)的2次分頻得到的時(shí)鐘,只要改變頂層模塊中對(duì)CLK 1 MHz的分頻系數(shù),就可以精確控制延滯Δt的大小,本文計(jì)算值Δt=4μs。?

??? 另外,死區(qū)調(diào)節(jié)單元還能消除由于FPGA器件本身時(shí)延造成的毛刺。其部分死區(qū)控制程序代碼如下:?

??? always@(posedge clk or posedge rst)?

??? begin?

??? ?? if(rst)????????????? //異步復(fù)位?

??????????? begin?????? //初始化寄存器?

??????????? q<=0;?

??????????? q0<=0;?

??????????? end?

  ?? else?

??? ?? begin??????????????? //延時(shí)輸出的D觸發(fā)器?

??????????? ?? if(d)?

??????????? ???? begin?

??????????? q0<=1′b1;?

??????????? q<=q0;?

??????????? ???? end?

??????????? ?? else?

??????????? ?? begin??????? //立即清零?

??????????? ?? q<=0;?

??????????? ?? q0<=0;?

??????????? ?? end?

??????????? end?

??? end?

??? 有關(guān)clk生成與調(diào)節(jié)的程序代碼如下:?

??? always@(posedge CLK1M or posedge rst)?//分頻產(chǎn)生時(shí)延控制時(shí)鐘?

??? begin ?

??? ?? if(rst)????????? //異步復(fù)位?

??????? begin?

??????? clk<=0;??????? //時(shí)鐘初始狀態(tài)清零?

??????? couter<=0; //計(jì)數(shù)初值設(shè)置零?

??????? end?

??? ?? else ?

??????????? begin?

??????????? if(couter==2′b01)?

??????????? begin?

??????????? ? clk<=~clk;?

??????????? ? couter<=0;?

??????????? end?

??????????? else?

??????????? couter<=couter+1′b1;? //計(jì)數(shù)器加1?

??????????? end?

??? end?

3.7 時(shí)鐘輸出控制模塊?

??? FushionAFS600器件的系統(tǒng)時(shí)鐘是48 MHz,因本設(shè)計(jì)正弦波的掃描頻率和三角波的掃描頻率預(yù)設(shè)為1 MHz,為減少時(shí)鐘輸出模塊的數(shù)量以及能方便更改系統(tǒng)輸出SPWM波形的占空比和頻率,本設(shè)計(jì)充分利用Fushion器件的時(shí)鐘調(diào)整電路,用SmartGen生成一個(gè)靜態(tài)PLL宏模塊,把系統(tǒng)時(shí)鐘分頻成1 MHz的時(shí)鐘分別是CLK 1 M和CLK 2 M,并連接到全局網(wǎng)絡(luò)上。當(dāng)需要一定頻率和不同占空比的SPWM脈沖時(shí),只需計(jì)算出載波和調(diào)制波形的掃描頻率,而后直接在SmartGen宏模塊中修改靜態(tài)PLL輸出時(shí)鐘,就可實(shí)現(xiàn)輸出SPWM波形密度的控制與調(diào)節(jié),從而滿足各種工作頻率的需求。?

4 基于FPGA的SPWM實(shí)現(xiàn)及系統(tǒng)測(cè)試?

4.1 SPWM控制技術(shù)的FPGA實(shí)現(xiàn)?

??? 根據(jù)頂層功能圖(如圖1),分別用Verilog HDL語(yǔ)言和SmartGen輸入描述了各個(gè)功能單元模塊,并分別在Libero 8.1集成開(kāi)發(fā)環(huán)境下通過(guò)編譯和仿真驗(yàn)證。最后用Verilog HDL語(yǔ)言編寫(xiě)一個(gè)頂層模塊實(shí)現(xiàn)各個(gè)功能模塊的有機(jī)組合,以實(shí)現(xiàn)總體功能,再在Libero 8.1集成開(kāi)發(fā)環(huán)境下進(jìn)行編譯、邏輯綜合、布局布線后下載到目標(biāo)器件Fushion AFS600器件FPGA上,實(shí)現(xiàn)了三相六路可控SPWM全數(shù)字算法的片上系統(tǒng)。?

4.2 系統(tǒng)測(cè)試結(jié)果?

??? 圖5是從邏輯分析儀上對(duì)系統(tǒng)測(cè)試的結(jié)果。從圖中可以看出所設(shè)計(jì)電路完全符合功能要求,且觀測(cè)到的時(shí)延死區(qū)時(shí)間均為4 μs,與理論計(jì)算值一致。下載后觀測(cè)與功能仿真,布局布線后仿真圖形也都完全一樣,達(dá)到了設(shè)計(jì)的預(yù)期要求。?

?

?

圖5? 邏輯分析儀測(cè)試時(shí)序結(jié)果

?

參考文獻(xiàn)?

[1] 周立功.Actel FPGA實(shí)驗(yàn)教程[M].廣州:廣州致遠(yuǎn)電子有限公司,2007,10.?

[2] 周立功.Actel FPGA原理與應(yīng)用[M].廣州:廣州致遠(yuǎn)電子有限公司,2007,10.?

[3] 劉鳳君.正弦波逆變器[M].北京:科學(xué)出版社,2002,2.?

[4] 夏宇聞.Verilog 數(shù)字系統(tǒng)設(shè)計(jì)教程[M].北京:北京航空航天大學(xué)出版社,2007,1.?

[5] 王偉.Verilog HDL程序設(shè)計(jì)與應(yīng)用[M].北京:人民郵電出版社,2005,3.?

[6] 陳尚松,雷加.電子測(cè)量與儀器[M].北京:電子工業(yè)出版社,2007,2.?

[7] 王金明.Verilog HDL程序設(shè)計(jì)教程[M].北京:人民郵電出版社,2004,1.?

[8] 譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)(第二版)[M].北京:清華大學(xué)出版社,2006,1.?

[9] 陳利杰,董煥芝.SPWM信號(hào)產(chǎn)生系統(tǒng)IP軟核設(shè)計(jì)及驗(yàn)證[J].包頭鋼鐵學(xué)院學(xué)報(bào),2005,24(4):364-368.?

[10] 楊旭東,張強(qiáng).SPWM的FPGA實(shí)現(xiàn)方法.微計(jì)算機(jī)信息[J].(嵌入式與SOC),2006,12(2):145-147.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。