摘 要: 一種用于功率MOSFET器件觸發(fā)信號產(chǎn)生的多" title="的多">的多通道可調(diào)脈寬" title="脈寬">脈寬脈沖發(fā)生器,。該裝置具有控制簡單,,多個通道時(shí)間抖動小的特點(diǎn)。
關(guān)鍵詞: 信號發(fā)生器? 多通道" title="多通道">多通道? 脈寬可調(diào)
?
高重復(fù)頻率的固體開關(guān)技術(shù)是脈沖功率領(lǐng)域研究的重點(diǎn)之一,。在兆赫茲重復(fù)頻率下,,適合構(gòu)成固體開關(guān)的功率電子器件有金屬氧化物半導(dǎo)體場效應(yīng)晶體管(MOSFET)、砷化鎵光導(dǎo)開關(guān)(GaAs-PCSS)等,。對于將功率MOSFET器件作為固體開關(guān)的脈沖功率源" title="功率源">功率源,,由于單個功率MOSFET器件的耐壓和輸出電流能力有限,,為了得到更高的電壓和更大的電流,需要對大量的功率MOSFET器件進(jìn)行串聯(lián)和并聯(lián),。美國利弗莫爾國家實(shí)驗(yàn)室(LLNL)用于產(chǎn)生20kV,、400A的脈沖功率源,一共使用了720個功率MOSFET器件[1],。這些功率MOSFET器件在產(chǎn)生輸出脈沖時(shí)是同步觸發(fā)的,,這樣就需要有多通道的同步觸發(fā)信號。
功率MOSFET的開關(guān)速度非???,一般為十幾納秒。因此,,對同步輸出的觸發(fā)信號需要的時(shí)間抖動要小于MOSFET器件的開關(guān)時(shí)間,,否則將會引起并聯(lián)的MOSFET器件的電流不均勻,導(dǎo)致器件損壞,。MOSFET器件的開關(guān)完全是由輸入柵極驅(qū)動信號決定的,,為了能使功率MOSFET器件能在MHz的重復(fù)頻率下工作,要求觸發(fā)信號源有很小脈寬的輸出能力,。本文介紹了一種可用于兆赫茲重復(fù)頻率的脈沖功率源上作為觸發(fā)信號的多通道可調(diào)脈寬,、頻率的脈沖發(fā)生器的設(shè)計(jì)。
1 系統(tǒng)的組成和工作原理
脈沖發(fā)生器的系統(tǒng)結(jié)構(gòu)如圖1,,整個系統(tǒng)由控制部分和光纖發(fā)射電路部分組成,。在控制部分中,單片機(jī)89S52和可編程邏輯器件(CPLD)ispLSI1032E組成了脈沖產(chǎn)生的邏輯硬件核心,。單片機(jī)負(fù)責(zé)接收并解析上位機(jī)(PC機(jī))的設(shè)置信息,,如輸出脈沖的寬度,頻率和個數(shù),,通過運(yùn)算得到CPLD所需的分頻數(shù),,并通過8位總線傳輸給CPLD,由CPLD產(chǎn)生多個通道同步輸出的脈沖信號,。單片機(jī)還可以讀取CPLD中關(guān)于輸出脈沖的設(shè)置,,處理后返回到上位機(jī)作為診斷信息。CPLD的優(yōu)點(diǎn)是可用I/O口多,,可以實(shí)現(xiàn)多通道的同步輸出,。光纖發(fā)射電路將每一路控制產(chǎn)生的脈沖信號經(jīng)驅(qū)動增強(qiáng)電路之后,分成12路的同步脈沖,,用光纖發(fā)射器件以光信號" title="光信號">光信號的方式輸出,。
2 硬件設(shè)計(jì)
控制部分的核心是單片機(jī)和CPLD器件,它們之間的接口方式一般有獨(dú)立方式和總線方式兩種。獨(dú)立方式最大的優(yōu)點(diǎn)是接口邏輯無須遵循單片機(jī)內(nèi)固定的總線方式的讀寫時(shí)序,??偩€方式具有編程簡單、速度快的優(yōu)點(diǎn),。本設(shè)計(jì)采用8位總線方式,,圖2為硬件連接原理圖。設(shè)計(jì)中選用的CPLD是Lattice公司的ispLSI1032E-125LJ,,CPLD的時(shí)鐘采用80MHz的有源晶振,,產(chǎn)生的脈沖的最小脈寬為12.5ns,最大的脈沖寬度 為12.5×256=3187.5ns,。在脈沖串輸出模式下最多可以輸出255個脈沖,;在連續(xù)輸出模式下,輸出脈沖個數(shù)不受限制,。這樣的設(shè)計(jì)可以滿足脈沖功率源的應(yīng)用范圍,。
單路光纖發(fā)射電路原理圖見圖3。為了使光纖發(fā)射器件有足夠的驅(qū)動電流,,電路中用了3個與非門并聯(lián)驅(qū)動,。每一個CPLD的輸出端口都由光纖發(fā)射電路分成12路同步光信號輸出,因此,,最后能得到的觸發(fā)信號的路數(shù)可以是非常多的,,足以滿足現(xiàn)階段開展的脈沖功率源的研究需要。
?
3 軟件設(shè)計(jì)
信號發(fā)生器需要編寫上位機(jī)(PC機(jī)),、單片機(jī)和CPLD的程序,。在PC機(jī)上,用Microsoft Visual Studio 2005作為開發(fā)平臺,,以VB作為開發(fā)語言,,采用System.IO.Ports.SerialPort作為串口通信的控件,編寫了上位機(jī)的控制程序,。SerialPort控件很好地封裝了串口通信的操作,編寫程序僅僅需要調(diào)用Write和ReadByte這兩個函數(shù)[2],。PC的功能模塊包括設(shè)置和獲取信號發(fā)生器輸出脈沖的寬度,、數(shù)量、頻率,、復(fù)位單片機(jī)等,。 開發(fā)的脈沖信號發(fā)生器控制程序的用戶界面如圖4所示。
單片機(jī)89S52程序的各個函數(shù)模塊之間的關(guān)系和程序流程如圖5和圖6所示,。整個程序以串口中斷處理函數(shù)作為程序的主流程,。同時(shí),由于把CPLD作為單片機(jī)的外部數(shù)據(jù)存儲器,單片機(jī)對CPLD的控制程序就簡化為對CPLD映射的幾個端口的讀寫,。
CPLD以Lattice公司的ispLevel3做為開發(fā)工具,,用VHDL作為開發(fā)語言,包括端口映射模塊和脈沖生成模塊,。端口映射模塊模擬單片機(jī)的讀寫時(shí)序,,將CPLD映射為單片機(jī)的0x80~0x82這幾個地址。其VHDL語言關(guān)鍵代碼如下:
process(ALE,,RD)
begin
if((ALE and RD)=′1′)then
read<=′1′,;
end if;
if((ALE and RD)=′0′)then
read<=′0′,;
end if,;
end process;
--從總線上讀數(shù)據(jù)
process(read)
begin
if(read′EVENT and read =′0′) then
case ALE_Address is
when ″10000000″=>P0<=
baseSettingPeriod,;
when ″10000001″=>P0<=
baseSettingWidth,;
when ″10000010″=>P0<=
baseSettingPulsenumber;
when others =>P0<=″ZZZZZZZZ″,;
end case,;
end if;
end process,;
--寫數(shù)據(jù)到總線上
process(WR)
begin
if (WR′event and WR=′0′)then
case ALE_Address is
when ″10000000″=>baseSettingPeriod<=P0,;
when ″10000001″=>baseSettingWidth<=P0;
when ″10000010″=>baseSettingPulsenumber<=P0,;
when others=>null,;
end case;
end if,;
end process,;
端口映射部分的仿真結(jié)果如圖7所示。
脈沖生成部分由兩個主要process組成,,一個process用來產(chǎn)生單個的脈沖,,另一個則用來產(chǎn)生設(shè)定數(shù)量的脈沖。仿真的波形如圖8所示,。
4 實(shí)驗(yàn)結(jié)果
圖9是在周期為125ns,、脈寬為12.5ns時(shí)的實(shí)驗(yàn)波形。對波形的測量結(jié)果如表1,。
由測量結(jié)果可知,,實(shí)驗(yàn)波形的脈沖寬度以及周期的測量值與相應(yīng)的設(shè)置值之間的誤差非常小。對二路光信號進(jìn)行接收,、放大和調(diào)理之后的波形的測量顯示方法得到的多路功率MOSFET器件的觸發(fā)信號,,時(shí)間抖動可以小于1ns,,相對于功率MOSFET開關(guān)時(shí)間(十幾個ns),其時(shí)間抖動帶來的開關(guān)動作不同步效應(yīng)可以忽略,。因此,,采用這種方式設(shè)計(jì)的多通道觸發(fā)電路可以適應(yīng)脈沖功率源的應(yīng)用要求。
本文介紹的使用51內(nèi)核的單片機(jī)和CPLD器件為硬件核心搭建的多通道可調(diào)脈寬的脈沖信號發(fā)生器,,可以產(chǎn)生足夠數(shù)量的同步光信號,,滿足兆赫茲重復(fù)頻率的脈沖功率源的大量同步觸發(fā)信號的應(yīng)用要求。
參考文獻(xiàn)
[1] COOK E G,,ALLEN F V,,Anaya E M,et al.Solid-
??? State modulator R&D at LLNL.International Workshop
???? on Recent Progress of Induction Accelerators Tsukuba,,
???? Japan,,2002.
[2] Microsoft Corporation.Microsoft MSDN Library.http://
???? msdn2.microsoft.com/zh-cn/library/system.io.ports.
???? serialport.aspx