《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于FPGA的微流控芯片電泳控制系統(tǒng)設(shè)計
基于FPGA的微流控芯片電泳控制系統(tǒng)設(shè)計
摘要: 本系統(tǒng)以FPGA芯片為控制核心,使用VerilogHDL語言編制了信號調(diào)理模塊、A/D模塊、高壓模塊、溫度控制模塊以及USB傳輸模塊的程序;另外還編寫了基于Windows XP的驅(qū)動程序與控制軟件。在選取串行控制的A/D芯片節(jié)約控制端口的同時,采用具有大量控制端口的FPGA作為系統(tǒng)的控制芯片,實(shí)現(xiàn)了同時對30個 PCR芯片的控制。該系統(tǒng)通過并行控制多個芯片,提高了PCR的檢測效率,可應(yīng)用于需大批量芯片檢測的場合。本文提出的使用FPGA控制微流控芯片的方法具有集成度高的優(yōu)點(diǎn),大幅提高了芯片的檢測效率,具有較高的實(shí)用價值。
Abstract:
Key words :

1 概 述

微型全分析系統(tǒng)的概念由Manz于20世紀(jì)90年代初提出,是集進(jìn)樣、樣品處理、分離檢測為一體的微型檢測和分析系統(tǒng)。微流控芯片是其主要部件,采用微電子機(jī)械系統(tǒng)技術(shù)集成了微管道、微電極等多種功能元器件。微流控芯片的電泳技術(shù)是指以電場方式驅(qū)動樣品在芯片的微管道中流動,然后再通過光電倍增管(Photo Multiplier Tube,PMT)將被測試樣品所產(chǎn)生的微弱信號轉(zhuǎn)換為電信號,并對該信號進(jìn)行采集與處理。與常規(guī)毛細(xì)管電泳系統(tǒng)相比,該技術(shù)具有分離時間短、系統(tǒng)體積小、集成度高等優(yōu)點(diǎn),被廣泛應(yīng)用于藥品篩選以及I臨床診斷中。聚合酶鏈?zhǔn)椒磻?yīng)(Palymerase Chain Reaction,PCR)是一項(xiàng)在短時間內(nèi)體外大量擴(kuò)增特定DNA片段的分子生物學(xué)技術(shù)。目前已有的PCR控制系統(tǒng)一般采用單片機(jī)作為控制核心,成功地實(shí)現(xiàn)了對單個微流控芯片進(jìn)行控制。然而在需要高效快速、大規(guī)模應(yīng)用微流控芯片的場合,由于單片機(jī)的控制端口數(shù)量有限,難以實(shí)施控制。本文選取串行控制的 A/D與D/A芯片,減少了所需控制端口數(shù)量;采用具有大量控制端口的現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)作為系統(tǒng)的控制芯片,在使用VerilogHDL語言對其編程后,可同時對30個PCR芯片實(shí)施控制。

2 硬件設(shè)計

系統(tǒng)以FPGA芯片為控制核心,實(shí)現(xiàn)對信號調(diào)理模塊、A/D模塊、高壓模塊、溫度控制模塊以及USB傳輸模塊的控制。具體結(jié)構(gòu)示意圖如圖1所示。虛線框內(nèi)為相應(yīng)的控制信號。

 

FPGA采用Xilinx公司的Spartan II 2S100-PQ208-5。PQ208表示其封裝為208引腳,“5”表示時延為5 ns。該器件密度為1O萬門,內(nèi)置5 KB的RAM,最高工作頻率可達(dá)到125 MHz,用戶可編程使用的I/O端口數(shù)目多達(dá)196個。工作核心電壓引腳接+2.5 V電源,其輸入/輸出(I/O)引腳支持TTL、LVTTL電平邏輯,需接+3.3 V電源。程序存儲采用CPLD加Flash的方式。Spartan II系列的FPGA支持4種配置模式:從串行模式、主串行模式、從并行模式和邊界掃描模式。在調(diào)試時期,采用邊界掃描模式。在程序編制成功后,使用通用編程器將程序燒入由EPROM組成的配置存儲器,然后將3個配置引腳全設(shè)置為高電平,采用從串行模式進(jìn)行配置。

信號調(diào)理模塊由電流轉(zhuǎn)電壓I—V電路、低通濾波電路組成。I—V電路的輸入為光電倍增管的電流輸出。I—V電路芯片采用的是安森美半導(dǎo)體公司的 MC33501,該芯片的輸入偏置電流典型值為40 fA,非常適用于微弱光電流信號的測量。反饋電阻選取1 MΩ的標(biāo)稱值,可將1μA的電流轉(zhuǎn)換為1 V的電壓。轉(zhuǎn)換后的電壓信號再經(jīng)過運(yùn)算放大器OP07組成的二階巴特沃茲低通濾波器,其截止頻率可設(shè)置在1 Hz以下。A/D模塊采用TI公司的12位串行A/D轉(zhuǎn)換器ADS7818。該芯片僅8個引腳,采用串口方式控制和輸出數(shù)據(jù)。如圖2所示,對A/D模塊進(jìn)行控制只需占用FPGA的3個控制端口(CONV、CLK、DATA)。FPGA可編程使用的I/O端口數(shù)目多達(dá)196個,在除去其他芯片的控制端口后,足以勝任同時控制30個A/D模塊的工作。這也意味著可同時對30個PCR芯片實(shí)施數(shù)據(jù)采集。

 

高壓控制模塊由TI公司的D/A芯片TLV5630和高壓模塊實(shí)現(xiàn)。高壓模塊的輸出與其輸入控制電壓成正比。TLV5630具有8通道的12位輸出,可以使高壓模塊的電壓步進(jìn)精確控制在1 V量級。FPGA通過RS232接口與溫度模塊通信,通過發(fā)送命令字與接收返回信息來控制溫度。

系統(tǒng)需要接口將數(shù)據(jù)上傳至計算機(jī),而計算機(jī)的命令參數(shù)也通過此接口下載至本系統(tǒng)中。USB2.0接口的傳輸速率達(dá)到480 Mb/s,可勝任快速傳回數(shù)據(jù)的任務(wù)。本文采用USB2.0接口作為系統(tǒng)與計算機(jī)通信的接口,USB的通信芯片選用Cypress公司的 CY7C268013A,工作模式為SlaveFIFO方式。

3 程序編碼

程序編碼包括3部分:一是采用VerilogHDL語言對FPGA編程;二是對CY7C68013A的固件編程;三是WindowsXP環(huán)境下驅(qū)動程序的開發(fā)以及上位機(jī)控制軟件的編程。與系統(tǒng)結(jié)構(gòu)相對應(yīng),F(xiàn)PGA的控制模塊包括A/D模塊、D/A模塊、RS232模塊、USB模塊以及狀態(tài)機(jī)模塊。模塊共用同一個時鐘與復(fù)位信號。除狀態(tài)機(jī)模塊外,其他模塊都將信號封裝為狀態(tài)輸出、命令輸入、選通輸入、數(shù)據(jù)輸出4個部分,由狀態(tài)機(jī)模塊對其實(shí)施控制。如圖3所示,狀態(tài)機(jī)模塊讀取USB模塊從上位機(jī)得來的命令并翻譯,然后對所指定的模塊輸入命令或者讀取信息,最后返回操作成功信息。FPGA擅長于高速的邏輯與時序控制,便于控制具體的芯片,但不適于整體復(fù)雜的流程控制。采用這種方式編程的好處在于,避免了FPGA復(fù)雜的流程控制編程,而將這一任務(wù)交給上位機(jī)去完成。

 

FPGA程序采用VerilogHDL語言在ISE6.2環(huán)境下編寫。經(jīng)ModelSim5.7g仿真無誤后,在FPGA Compile-rII3.7環(huán)境下編譯為bin文件;再經(jīng)過ISE6.2的iMPACT工具燒入FPGA的配置存儲器,上電后FPGA即可正常工作。 A/D部分的仿真波形如圖4所示。

 

固件在uVision2集成開發(fā)環(huán)境下采用Keil C51語言開發(fā)。固件編譯后,有兩種方法載入CY7C68013A:一種是從EEPROM載入,另一種是從上位機(jī)下載。本系統(tǒng)采用第2種方式。 Hex2c.exe將固件目標(biāo)碼轉(zhuǎn)換為C語言 數(shù)組形式;EZ-Loader提供程序模板;Windows DDK將嵌入固件后的模板編譯為系統(tǒng)文件;制作相應(yīng)的inf文件,使計算機(jī)系統(tǒng)在發(fā)現(xiàn)數(shù)據(jù)采集系統(tǒng)后,自動將固件下載入CY7C68013A。

USB設(shè)備驅(qū)動程序采用Jungo公司的WinDriver軟件開發(fā)。具體實(shí)現(xiàn)過程為:連接本系統(tǒng)后運(yùn)行DriverWiz-ard向?qū)?,選擇對應(yīng)的 USB設(shè)備,生成對應(yīng)的.ini文件;然后在設(shè)備診斷對話框中檢測到USB接口各端點(diǎn)的正確設(shè)置后,選擇適合的編譯環(huán)境即可生成驅(qū)動程序和API函數(shù)的示例代碼。

上位機(jī)軟件采用Visual C++6.0語言開發(fā),操作界面友好。由于FPGA程序并未完成對整個微流控過程的控制,所以這一任務(wù)由上位機(jī)軟件來完成。上位機(jī)可以通過狀態(tài)機(jī)模塊對其他各個控制模塊詢問狀態(tài)、施加命令,以及讀取返回數(shù)據(jù)。

4 結(jié) 論

本系統(tǒng)以FPGA芯片為控制核心,使用VerilogHDL語言編制了信號調(diào)理模塊、A/D模塊、高壓模塊、溫度控制模塊以及USB傳輸模塊的程序;另外還編寫了基于Windows XP的驅(qū)動程序與控制軟件。在選取串行控制的A/D芯片節(jié)約控制端口的同時,采用具有大量控制端口的FPGA作為系統(tǒng)的控制芯片,實(shí)現(xiàn)了同時對30個 PCR芯片的控制。該系統(tǒng)通過并行控制多個芯片,提高了PCR的檢測效率,可應(yīng)用于需大批量芯片檢測的場合。本文提出的使用FPGA控制微流控芯片的方法具有集成度高的優(yōu)點(diǎn),大幅提高了芯片的檢測效率,具有較高的實(shí)用價值。
 

發(fā)布者:小宇

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。