新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 分時復(fù)用時CPLD設(shè)計變頻系統(tǒng)中的應(yīng)用

分時復(fù)用時CPLD設(shè)計變頻系統(tǒng)中的應(yīng)用

作者: 時間:2017-06-06 來源:網(wǎng)絡(luò) 收藏
變頻調(diào)速的實現(xiàn),目前一般利用CPU加片內(nèi)外設(shè)的專用微處理器。但是,專用微處理器大量占用CPU,受時鐘限制,很難實現(xiàn)高精度算法,且引腳I/O口有限。用CPLD(復(fù)雜可編程邏輯器件)設(shè)計乃至仿真、驗證、利用ISP(在系統(tǒng)編程)對硬件調(diào)試都非常方便,開發(fā)周期很短,且I/O口很多,可以隨意設(shè)定,故用CPLD設(shè)計專用芯片有很大的發(fā)展前途。如果非大量應(yīng)用可直接運用CPLD,價格也可以接受;大量應(yīng)用可在此基礎(chǔ)上設(shè)計制造專用芯片(ASIC)。本文研究VVVF變頻調(diào)速實現(xiàn)的策略,詳細介紹應(yīng)用于該系統(tǒng)的一種分時時復(fù)用電路,用CPLD實現(xiàn)。



1 ALTERA公司MaxplusII軟件簡介

CPLD是可由用戶進行編程(又稱配置)實現(xiàn)所需邏輯功能的數(shù)字集成電路。MaxplusII可編程邏輯開發(fā)軟件提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,使應(yīng)用ALTERA通用CPLD的設(shè)計得能方便地進行設(shè)計輸入、快速處理和器件編程。MaxplusII提供了全面的邏輯設(shè)計能力,可將文本、圖形和波形等設(shè)計輸入方法任意組合建立起有層次的單器件或多器件設(shè)計。MaxplusII編譯器(Compiler)完成最小化和邏輯綜合,把設(shè)計裝配成一個或多個器件并產(chǎn)生編程數(shù)據(jù);還可進行設(shè)計校驗,包括功能仿真、定時仿真、影響速度的關(guān)鍵路徑的延時預(yù)測以及多系列器件交叉的多器件仿真。Compiler的Fitter(適配)模塊應(yīng)用試探法把經(jīng)過綜合的設(shè)計最恰當(dāng)?shù)赜靡粋€或多個器件實現(xiàn)。這種自動適配功能使設(shè)計者得以從冗長的布局與布線工作解脫出來。綜上所述,以MaxplusII為EDA軟件工具,周期短、集成度高、價格合適、可實現(xiàn)強大的邏輯功能。



2 分時復(fù)用思路的實現(xiàn)

由于控制芯片需要輸出三相六路SPWM脈沖信號,這就需要在每個載波周期查三解函數(shù)表。查三角函數(shù)表法取得所需三角函數(shù)值的電路結(jié)構(gòu)兩種:一種是建立三個相位互差120°的三角函數(shù)表,輸出的SPWM波形脈沖的脈寬數(shù)據(jù)通過即時運算電路得到,三相數(shù)據(jù)分別計算,各占用一個查表電路;一種是通過一個三角函數(shù)表,輸出的SPWM波形脈沖的脈寬數(shù)據(jù)通過分時函數(shù)表,輸出的SPWM波形脈沖的脈寬數(shù)據(jù)通過分時運算電路得到,運算時間對輸出波形不會有什么影響,內(nèi)部的ROM空間要求也很小。

如果每相分別用獨立的電路實現(xiàn),將多耗費許多邏輯門,并且占用三個正弦表格。這在設(shè)計上是簡單的,但在實際上卻非常不合理。本文提出一種實現(xiàn)三相分時的思路,大大減少了邏輯數(shù)目,僅增加分時信號和信號分離電路,達到只占用一個正弦表格,并且只耗用一個計算電路的效果。試驗證明,這種三相分時計算電路穩(wěn)定、電路結(jié)構(gòu)簡單。電路原理如圖1所示。



圖1中D點為待分離的三相正弦數(shù)據(jù)經(jīng)幅度調(diào)制后的瞬時值,由box1計算產(chǎn)生。在每一個載波周期,從三角波的發(fā)生到出現(xiàn)波峰的時刻計算并輸出。Box1工作框圖如圖2所示。

時鐘CLK在每個運算周期產(chǎn)生3次上升沿。該時鐘圖2的“count0_2”以3為模計數(shù),計數(shù)值送三選一數(shù)據(jù)選擇器,如圖3所示。并列輸入的三相數(shù)據(jù)16、516、266經(jīng)過該電路變成時間上承接的數(shù)據(jù)result[9..0],這樣送入的三相數(shù)據(jù)就實現(xiàn)了合成。

其Maxplus box2框圖的一個部分如圖4所示。其中retb這個box中的輸入M0[1..0]為判據(jù),來確定D[8..0]是否可以通過,如上所述count0_2為以3為模的計數(shù)器。數(shù)據(jù)通過這種方式實現(xiàn)了分離,再加后級鎖存,并鎖存送到PWM發(fā)生器。



ABC三點為由box2分離后的數(shù)據(jù),鎖存一個載波周期,送至后面的PWM發(fā)生器。。box2工作的仿真波形如圖5所示。

圖5中,CLKA、CLKB、CLKC為輸入的分時時鐘信號,在每個三角波計數(shù)峰值處產(chǎn)生。在此處,D點傳送過來的三相數(shù)據(jù)為18、305、175,是經(jīng)過查正弦表,以及查vf曲線,并進行調(diào)幅運算后得到的某一個瞬間的數(shù)據(jù)。分別是C、B、和A相的數(shù)據(jù)。經(jīng)過box2的分離可以看到,三相數(shù)據(jù)被分離開來并鎖存,直到經(jīng)過一個載波周期,新的數(shù)據(jù)送過來。



從圖1~5可以很清晰地看出:該分時復(fù)用電路對圖1中的box1進行了復(fù)用,三路并列輸出的數(shù)據(jù)通過分時選擇,被分成按順序排列的一路數(shù)據(jù)送到box1,經(jīng)過一系列運算得出一路按順序排列的數(shù)據(jù),該路數(shù)據(jù)其實包含了三相的信息。然后,再反過來把這一路數(shù)據(jù)拆分了三路數(shù)據(jù),就可以送到PWM波形發(fā)生器產(chǎn)生三相六路波形。

上述可見,如果不采用這種分時電路,那么三相的運算將會用到三個box1,而box1包括了乘法器、正弦表格、死區(qū)計算等。所以利用分時電路大大節(jié)約了門數(shù),從而使芯片電路規(guī)??s小近2/3。這種思想在ASIC設(shè)計中也很有實用價值。

系統(tǒng)設(shè)計結(jié)束后,利用MaxplusII的芯片配制,選用最大1萬門的芯片ACEK EP1K10。該系統(tǒng)可以成功配制,但如果用最初設(shè)計不使用分時電路的系統(tǒng),必須使用最大3萬門的ACEK EP1K30系列CPLD芯片。這證明了該系統(tǒng)節(jié)約了大約2/3的邏輯門。

3 系統(tǒng)邏輯與時序功能驗證

圖6為利用MaxplusII的波形仿真功能得到的芯片輸入輸出圖。ALTERA公司的這種軟件十分方便地提高了逼真的驗證方式。這種仿真不但提供了邏輯輸出的驗證,而且提供了時序的驗證,包括芯片內(nèi)部的各之間延時,以及競爭冒險現(xiàn)象的顯現(xiàn)。

輸入調(diào)制頻率為500Hz時的三相六路SPWM波形,在相位上互差120°。



4 結(jié)論

本文提出的一種實現(xiàn)三相分時運算思路,通過了仿真驗證。該分時電路使系統(tǒng)占用CPLD邏門的個數(shù)減少近2/3,減小了系統(tǒng)規(guī)模,提高了效率。


評論


技術(shù)專區(qū)

關(guān)閉