基于FPGA的數(shù)字量變換器測(cè)試系統(tǒng)設(shè)計(jì)
2.4 勤務(wù)信號(hào)發(fā)送模塊實(shí)現(xiàn)
計(jì)算機(jī)字信號(hào)和指令信號(hào)都有相應(yīng)的勤務(wù)信號(hào)來滿足時(shí)序要求,一般勤務(wù)信號(hào)就是指幀、碼同步信號(hào),對(duì)其他信號(hào)的產(chǎn)生和接收起到時(shí)序基準(zhǔn)同步的作用。指令勤務(wù)信號(hào)的電路原理如圖5所示。計(jì)算機(jī)字勤務(wù)信號(hào)與其原理相同。根據(jù)系統(tǒng)的信號(hào)輸出要求,即幀、碼同步信號(hào)的幅值和電流驅(qū)動(dòng)能力的要求,采用非門芯片SN5405J作為驅(qū)動(dòng)電路來滿足設(shè)計(jì)要求。
2.5 數(shù)碼接收模塊實(shí)現(xiàn)測(cè)試系統(tǒng)需要接收經(jīng)變換器處理之后的信號(hào),變換器以數(shù)碼方式回傳給測(cè)試系統(tǒng),包括計(jì)算機(jī)數(shù)碼和指令數(shù)碼,兩者的接收原理相同。設(shè)計(jì)采用光耦隔離的方式對(duì)數(shù)碼信號(hào)進(jìn)行接收,其電路原理圖如圖6所示。
光電耦合器采用TI公司的HCPL-2631,它具有電絕緣能力和抗干擾能力,并且能有效的抑制各種噪聲和尖峰脈沖干擾。它的兩個(gè)輸入端分別接收計(jì)算機(jī)字?jǐn)?shù)碼和指令數(shù)碼,其中在光耦輸入端連接的二極管作用是用來防止信號(hào)反跳造成內(nèi)部二極管燒壞。
2.6 指令信號(hào)發(fā)送模塊實(shí)現(xiàn)
指令信號(hào)是指一種斷開或閉合的開關(guān)量信號(hào)。此模塊的128路指令信號(hào)全部采用光耦繼電器來實(shí)現(xiàn),依據(jù)參數(shù)要求選擇AQY210作為控制開關(guān)的器件,它的特點(diǎn)是耐高壓,反應(yīng)速度快,使用時(shí)間長(zhǎng)。其單路指令信號(hào)發(fā)送電路原理如圖7所示。
由于指令信號(hào)的路數(shù)比較多,如果FPGA 的I/O口輸出直接驅(qū)動(dòng)AQY210,勢(shì)必會(huì)增加FPGA的功耗。因此采用三極管對(duì)FPGA的輸出信號(hào)進(jìn)行電流放大來提高控制信號(hào)的驅(qū)動(dòng)能力。本設(shè)計(jì)采用NPN 型三極管3DK103,圖中3order1是FPGA的輸出信號(hào),其為‘0’時(shí),三極管截止;其為‘1’時(shí),三極管處于電流放大,流經(jīng)光繼電器發(fā)光管的電流13mA足以使AQY210導(dǎo)通。
3 系統(tǒng)FPGA的邏輯實(shí)現(xiàn)
系統(tǒng)主控FPGA采用的晶振是10M 和32.768M,10M的晶振經(jīng)過FPGA內(nèi)部分頻后來產(chǎn)生系統(tǒng)全局時(shí)鐘信號(hào)及幀同步信號(hào),32.768M 的晶振來產(chǎn)生碼同步信號(hào);從控FPGA也通過10M 晶振來提供系統(tǒng)時(shí)鐘。系統(tǒng)在上電穩(wěn)定后,F(xiàn)PGA就會(huì)產(chǎn)生并發(fā)送幀同步信號(hào)(周期為25ms,脈寬為25μs),在25μs脈沖信號(hào)之后發(fā)送幀同步信號(hào),信號(hào)的產(chǎn)生都是通過內(nèi)部的計(jì)數(shù)器來實(shí)現(xiàn)的;且計(jì)算機(jī)字碼同步信號(hào)8個(gè)脈沖信號(hào)為一組、共4組,指令碼同步信號(hào)共16組。在時(shí)序上,計(jì)算機(jī)字信號(hào)的第1組碼同步信號(hào)和指令信號(hào)的第16組碼同步信號(hào)對(duì)齊。變換器在幀同步信號(hào)的上升沿的觸發(fā)下,會(huì)向測(cè)試系統(tǒng)發(fā)送請(qǐng)求脈沖。當(dāng)系統(tǒng)收到請(qǐng)求脈沖信號(hào)后,通過控制FPGA延時(shí)20ms,產(chǎn)生移位脈沖信號(hào)和計(jì)算機(jī)字信號(hào)共同發(fā)送給變換器。在時(shí)序上,移位脈沖信號(hào)的下降沿和計(jì)算機(jī)字每位的正中間對(duì)齊。通過對(duì)從控FPGA 的邏輯控制實(shí)現(xiàn)指令信號(hào)的發(fā)送。FPGA對(duì)上位機(jī)的命令信號(hào)解碼后,將指令控制信號(hào)寄存在內(nèi)部寄存器中,主控FPGA 通過串行通信的方式將寄存器中的命令發(fā)送給從控FPGA.發(fā)送時(shí)一組數(shù)據(jù)為10位,包括1個(gè)起始位、8個(gè)有效數(shù)據(jù)位和1個(gè)停止位,F(xiàn)PGA對(duì)串行數(shù)據(jù)解串,并重新編幀后將指令信號(hào)輸出至FPGA 相應(yīng)的I/O.數(shù)碼的接收,都是先將數(shù)碼信號(hào)編幀后存入FPGA的內(nèi)部寄存器,再通過USB將數(shù)據(jù)上傳至上位機(jī)。
4 系統(tǒng)測(cè)試結(jié)果
通過對(duì)系統(tǒng)的反復(fù)測(cè)試,來保證系統(tǒng)設(shè)計(jì)的可靠性。圖8為上位機(jī)發(fā)送計(jì)算機(jī)字全為AAH時(shí)測(cè)到的波形,通道1是幀同步信號(hào),通道2是數(shù)字量變換器發(fā)送來的計(jì)算機(jī)字請(qǐng)求信號(hào),通道3是移位脈沖信號(hào),通道4是系統(tǒng)發(fā)送的計(jì)算機(jī)字信號(hào)。
圖9是系統(tǒng)接收計(jì)算機(jī)數(shù)碼測(cè)的波形,通道1是幀同步信號(hào),通道2是計(jì)算機(jī)字請(qǐng)求信號(hào),通道3是碼同步信號(hào),通道4是計(jì)算機(jī)字?jǐn)?shù)碼信號(hào)。
因?yàn)橹噶钚盘?hào)是以并行方式發(fā)送的,所以不涉及到時(shí)序波形的問題。圖10是指令信號(hào)都發(fā)送55H 時(shí),接收指令數(shù)碼測(cè)得的波形。圖中通道1是幀同步信號(hào),通道2是碼同步信號(hào),通道3是指令數(shù)碼信號(hào)??梢钥闯鲂盘?hào)的效果滿足設(shè)計(jì)要求而且精度較高。
5 結(jié)束語
該測(cè)試系統(tǒng)充分利用FPGA強(qiáng)大的內(nèi)部邏輯功能和與外圍硬件電路的設(shè)計(jì),來達(dá)到系統(tǒng)的測(cè)試功能。通過測(cè)試系統(tǒng)和數(shù)字量變換器的聯(lián)試,驗(yàn)證了系統(tǒng)各項(xiàng)的輸出,對(duì)數(shù)字量變換器的性能做出權(quán)衡性的檢測(cè)。
評(píng)論