資源描述:
《基于FPGA的PCB測試機硬件電路設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、基于FPGA的PCB測試機硬件電路設(shè)計PCB光板測試機基本的測試原理是歐姆定律,其測試方法是將待測試點間加一定的測試電壓,用譯碼電路選中PCB板上待測試的兩點,獲得兩點間電阻值對應(yīng)的電壓信號,通過電壓比較電路,測試出兩點間的電阻或通斷情況。重復(fù)以上步驟多次,即可實現(xiàn)對整個電路板的測試?! ∮捎诒粶y試的點數(shù)比較多,一般測試機都在2048點以上,測試控制電路比較復(fù)雜,測試點的查找方法以及切換方法直接影響測試機的測試速度,本文研究了基于FPGA的硬件控制系統(tǒng)設(shè)計。硬件控制系統(tǒng) 測試過程是在上位計算機的控制下,控制測試電路分別打開不同的測試開關(guān)。測試機系統(tǒng)由以下幾部分
2、構(gòu)成:上位計算機PC104、測試控制邏輯(由FPGA實現(xiàn))、高壓測試電路。其中上位機主要完成人機交互、測試算法、測試數(shù)據(jù)處理以及控制輸出等功能。FPGA控制高壓測試電路完成對PCB的測試過程?! ”鞠到y(tǒng)以一臺PC104為上位計算機,以FPGA為核心,通過PC104總線實現(xiàn)上位機對測試的控制?! y試系統(tǒng)總體框圖如圖1所示。FPGA與PC104的接口電路 PC104總線是一種專為嵌入式控制定義的工業(yè)控制總線,其信號定義與ISA總線基本相同。PC104總線共有4類總線周期,即8位的總線周期、16位的總線周期、DMA總線周期和刷新總線周期。16位的I/O總線周期為3
3、個時鐘周期,8位的I/O總線周期為6個時鐘周期。為了提高通信的速度,ISA總線采用16位通信方式,即16位I/O方式。為了充分利用PC104的資源,應(yīng)用PC104的系統(tǒng)總線擴(kuò)展后對FPGA進(jìn)行在線配置。正常工作時通過PC104總線與FPGA進(jìn)行數(shù)據(jù)通信?;A(chǔ)電路設(shè)計(十)高頻電路用電路板設(shè)計技術(shù)探索 ·電子設(shè)備中電路板布局、布線和安裝的抗ESD設(shè)計規(guī)則 ·PCB導(dǎo)線設(shè)計技術(shù)(上) ·SI設(shè)計及板級EMC:湯昌茂 ·線路板PCB覆銅經(jīng)驗之我談 ·PCB電路板差分阻抗測試技術(shù) ·PCB導(dǎo)線設(shè)計技術(shù)(下) 根據(jù)測試機系統(tǒng)設(shè)計要求,需要對測試電壓及兩通道參
4、考電壓進(jìn)行自檢,即A/D轉(zhuǎn)換通道至少有3路。兩路比較電路的參考電壓由D/A輸出,則系統(tǒng)的D/A通道要求有兩通道。為了減少A/D及D/A的控制信號線數(shù),選用串行A/D及D/A器件。綜合性能、價格等因素,選用的A/D器件為TLC2543,D/A器件為TLV5618?! LV5618是TI公司帶緩沖基準(zhǔn)輸入(高阻抗)的雙路12位電壓輸出DAC,通過CMOS兼容的3線串行總線實現(xiàn)數(shù)字控制。器件接收16位命令字,產(chǎn)生兩路D/A模擬輸出。TLV5618只有單一I/O周期,由外部時鐘SCLK決定,延續(xù)16個時鐘周期,將命令字寫入片內(nèi)寄存器,完成后即進(jìn)行D/A轉(zhuǎn)換。TLV56
5、18讀入命令字是從CS的下降沿開始有效,從下一SCLK的下降沿開始讀入數(shù)據(jù),讀入16位數(shù)據(jù)后即進(jìn)入轉(zhuǎn)換周期,直到下次出現(xiàn)CS的下降沿。其操作時序圖如圖2所示?! LC2543是TI公司的帶串行控制和11個輸入端的12位、開關(guān)電容逐次逼近型A/D轉(zhuǎn)換器。片內(nèi)轉(zhuǎn)換器有高速、高精度和低噪音的特點。TLC2543工作過程分為兩個周期:I/O周期和轉(zhuǎn)換周期。I/O周期由外部時鐘SCLK決定,延續(xù)8、12或16個時鐘周期,同時進(jìn)行兩種操作:在SCLK上升沿以MSB方式輸入8位數(shù)據(jù)到片內(nèi)寄存器;在SCLK下降沿以MSB方式輸出8、12、16位轉(zhuǎn)換結(jié)果。轉(zhuǎn)換周期在I/O周期的
6、最后一個SCLK下降沿開始,直到EOC信號變高,指示轉(zhuǎn)換完成。為了與TLV5618的I/O周期一致,采用了MSB方式,使用CS的16時鐘傳送的時序。其操作時序如圖3所示?! ∮捎谶@兩種器件都是SPI接口,可將這兩器件連接至同一SPI總線,通過不同的片選信號對不同的器件操作。由于SPI接口協(xié)議復(fù)雜,而且從圖3可以看出,這兩種器件的時序并沒有用到全部的SPI接口時序。為了實現(xiàn)符合以上邏輯的時序,減少標(biāo)準(zhǔn)SPI接口IP核對FPGA資源的浪費,設(shè)計采用Verilog硬件描述語言用同步狀態(tài)機(FSM)的設(shè)計方法實現(xiàn),編寫ADC及DAC控制時序。程序?qū)嶋H上是一個嵌套的狀態(tài)機
7、,由主狀態(tài)機和從狀態(tài)機通過由控制線啟動的總線在不同的輸入信號情況下構(gòu)成不同功能的有限狀態(tài)機。則由圖3可知,D/A操作有4個狀態(tài),A/D操作有7個狀態(tài)。兩種狀態(tài)中有幾個狀態(tài)是相同的,故可用一個有限狀態(tài)機完成對串行A/D及D/A的操作。程序?qū)嶋H上是一個嵌套的狀態(tài)機,由主狀態(tài)機和從狀態(tài)機通過由控制總線啟動的總線在不同的輸入信號情況下構(gòu)成不同功能的較復(fù)雜的有限狀態(tài)機。A/D及D/A操作共用唯一的驅(qū)動時鐘(SCLK)及數(shù)據(jù)總線(SI、SO)。由于操作的寫周期有16個時鐘周期,讀周期有12個時鐘周期,模塊是在三個嵌套的有限狀態(tài)機中完成的,其主狀態(tài)機的狀態(tài)如圖4所示?! ∠到y(tǒng)
8、設(shè)計中,將AD、DA操作