国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

DNA分析儀熒光光譜數(shù)據(jù)的傳輸設(shè)計

2019-12-13 01:56:24
分析儀器 2019年6期
關(guān)鍵詞:雙口毛細管指針

(公安部第一研究所,北京 102200)

1 前言

DNA鑒定技術(shù)起源于上世紀80年代,具有親緣關(guān)系認定準確、個體識別率高的特點,目前已成為公安機關(guān)的主要偵破手段[1]。以前我國DNA檢測儀器和配套的軟件、耗材都依賴進口,本項目組在公安部的大力支持下,經(jīng)歷近十年的科研攻關(guān),以激光誘導熒光(LIF)-高效毛細管電泳(HPCE)-面陣CCD接收- 短串聯(lián)重復序列(STR)分型[1]的技術(shù)路線成功研制了國內(nèi)首臺商業(yè)化的DNA分析儀,各項技術(shù)指標達到了國外同類產(chǎn)品水平,已在全國20多個省級公安機關(guān)推廣使用。

DNA分析儀的電路控制系統(tǒng)采用主從式多處理器架構(gòu),以ARM芯片為主CPU,負責部件的監(jiān)控、運行時序的生成、與PC機的實時通信等,其中一個從處理器DSP負責CCD驅(qū)動時序生成、CCD溫度控制、光譜數(shù)據(jù)采集等功能,這兩個CPU之間就需要一套簡潔、高效的數(shù)據(jù)存儲、傳輸機制將DSP采集、處理后的熒光光譜數(shù)據(jù)穩(wěn)定可靠地傳送給ARM。本研究對熒光光譜數(shù)據(jù)的類型進行了分析,基于光譜數(shù)據(jù)的特點,設(shè)計了一種基于雙口RAM的數(shù)據(jù)傳輸機制。

2 熒光光譜數(shù)據(jù)分析

如圖1所示,以16道毛細管陣列為例,激光光源激發(fā)攜帶熒光染料的DNA片段,在面陣CCD上每一根毛細管出射的熒光光譜展開都對應一個長條型的空間。出于毛細管定位、光譜疊加消弭的目的,需要在熒光光譜信息的通道和波長兩個維度上進行光譜分解[2-4],橫軸方向稱為空間校正(Spectral calibration),縱軸方向稱為光譜校正(spatial calibration),利用這兩個校正文件可以處理實際的樣品電泳數(shù)據(jù),得到STR分型結(jié)果。

圖1 熒光光譜在面陣CCD上的展開示意圖

空間校正的目的是確定每根毛細管在CCD檢測器上的縱向最佳讀取坐標值。為了計算空間校正圖譜,PC機數(shù)據(jù)處理軟件需要讀取某一時刻整幅CCD面陣上的所有像素(pixel)的熒光強度值進行橫軸數(shù)據(jù)求和。本研究所使用的CCD為512×512像素,由于DSP采用16bit的數(shù)據(jù)總線,故數(shù)據(jù)采集系統(tǒng)使用16位無符號正整數(shù)表示像素的強度值,一幀空間校正數(shù)據(jù)共需要256K×16 bit的數(shù)據(jù)存儲空間。

光譜校正主要是解決染料空間到光譜空間的映射問題。在實際樣品電泳前,需要先使用4種或5種已知的熒光染料(即染料空間)在面陣CCD上成像,讀取這幾種熒光染料在CCD上的光譜分布。經(jīng)過調(diào)試光路和驅(qū)動電路控制,只需要讀取圖1所示的L×H的范圍內(nèi)的像素值,這一段的位置和像素數(shù)都是固定的。本研究所用數(shù)據(jù)采集系統(tǒng)L=280 pixel、H=3 pixel,因此,DSP讀取一幀光譜校正數(shù)據(jù)需要13440×16 bit的數(shù)據(jù)空間。

實際樣品的STR熒光譜圖同樣是落在圖1中 L×H的范圍內(nèi),與光譜校正數(shù)據(jù)相比較,只是每個像素的光強度值是變化的,對ARM來說,DSP傳輸過來的STR數(shù)據(jù)格式和光譜校正是沒有區(qū)別的,只是解析時的數(shù)據(jù)幀頭是不一樣的。

綜上,在進行熒光光譜數(shù)據(jù)采集時,DSP通過控制CCD驅(qū)動電路得到兩種格式的數(shù)據(jù):空間校正數(shù)據(jù)和光譜校正數(shù)據(jù)(STR數(shù)據(jù)),然后將數(shù)據(jù)加上幀頭、幀尾、幀序號等信息,傳輸給ARM主處理器。

3 數(shù)據(jù)傳輸系統(tǒng)設(shè)計

如果ARM和DSP采用同步時序的方式傳輸數(shù)據(jù),會大大增加它們的工作開銷,特別是ARM還需要對儀器各部件狀態(tài)進行實時監(jiān)控,同步方式會延緩ARM對部件的響應速度,嚴重的話會造成儀器的運行故障。因此考慮采用異步讀寫的方式,并在兩者之間增加一級數(shù)據(jù)緩存,這樣當DSP采集到一幀數(shù)據(jù)時,它只需要將數(shù)據(jù)存儲到指定的數(shù)據(jù)空間、更新狀態(tài)位后,就可以轉(zhuǎn)入下一幀的數(shù)據(jù)采集,而不必等待ARM給出讀取響應;ARM也會定時(跟采集波特率有關(guān))讀取數(shù)據(jù)、更新狀態(tài)位。

3.1 硬件電路設(shè)計

DSP具有的異步通信方式主要是串口(UART)和系統(tǒng)總線掛載雙口RAM[5], UART傳輸速度慢、誤碼率高,所以本設(shè)計使用IDT公司的高速256K×18 bit 的雙口RAM芯片 IDT70V631S,它采用共享靜態(tài)RAM存儲器的方法,具有兩套(左、右)獨立的讀寫控制線,數(shù)據(jù)傳輸過程中兩邊CPU沒有時序約束,符合熒光光譜數(shù)據(jù)傳輸不需要同步的要求。

本研究所設(shè)計的數(shù)據(jù)傳輸硬件電路框圖如圖2所示。

圖2 數(shù)據(jù)傳輸電路框圖

由于i.MX6Q的應用程序運行于LINUX操作系統(tǒng)下,還需要設(shè)計雙口RAM的驅(qū)動程序,主要是配置讀寫時鐘、存儲空間映射、地址總線和數(shù)據(jù)總線等,最后結(jié)合硬件電路,完成如下文件操作結(jié)構(gòu)體eimbus_fops中的系統(tǒng)調(diào)用函數(shù)的具體實現(xiàn)。

static struct file_operations eimbus_fops = {

.owner = THIS_MODULE,

.open = eimbus_open,

.release = eimbus_release,

.read = eimbus_read,

.write = eimbus_write,

.unlocked_ioctl = eimbus_ioctl,

.llseek = eimbus_seek,

.mmap = eimbus_mmap,

.fasync = eimbus_fasync,

};

i.MX6Q EIM總線的異步數(shù)據(jù)讀寫時序如圖3所示。

圖3 EIM總線異步模式讀寫時序

3.2 軟件設(shè)計

3.2.1數(shù)據(jù)空間劃分

雙口RAM由于是數(shù)據(jù)共享,兩側(cè)CPU都能讀寫同一地址的數(shù)據(jù),這就可能造成訪問沖突,所以必須制定數(shù)據(jù)訪問協(xié)議來解決共享沖突問題。如圖4所示,將RAM空間劃分成通信協(xié)議區(qū)和光譜數(shù)據(jù)區(qū)。

圖4 雙口RAM空間劃分示意圖

通信協(xié)議區(qū)大小為64K×16 bit,它的最高兩個地址單元被稱作“郵箱”,這兩個單元一旦被一方寫入數(shù)據(jù),則會觸發(fā)另一方的中斷信號,另一方通過讀取郵箱內(nèi)容來獲取對方的命令或信息。

ARM將要發(fā)送給DSP的命令寫入LMAILBOX郵箱,這會觸發(fā)DSP端的中斷,DSP讀出LMAILBOX的內(nèi)容,根據(jù)命令執(zhí)行數(shù)據(jù)采集動作。LMAILBOX 16 bit的定義如表1所示,分別表示數(shù)據(jù)采集初始化、開始、結(jié)束、放棄、暫停、恢復,設(shè)置采樣率、幀序號,請求DSP軟件版本號等命令,初始化命令的參數(shù)寫入INITDATA區(qū),其它命令的參數(shù)寫入COMMAND_PARA區(qū)。

DSP向RMAILBOX郵箱寫入自身的狀態(tài)及事件信息,這會觸發(fā)ARM端的中斷,供其監(jiān)控CCD數(shù)據(jù)采集系統(tǒng)狀態(tài)。RMAILBOX 16 bit的定義如表2所示,前9個bit都是對ARM命令的回應,其中bit 8置1時同時將具體版本信息寫入VERSION區(qū),當CCD報錯時,將 bit 9 置1,并把具體錯誤信息寫入STATUS_EX區(qū),DATATAIL、DATAHEAD、TFRAMNUM、HFRAMNUM四個區(qū)在光譜數(shù)據(jù)傳輸時使用。

表1 LMAILBOX 16 bit定義

表2 RMAILBOX 16 bit定義

光譜數(shù)據(jù)區(qū)大小為192K×16 bit,用于光譜數(shù)據(jù)的緩沖區(qū),由右側(cè)的DSP寫入,左側(cè)的ARM讀出,由圖4可知該區(qū)域是一段線性連續(xù)的、固定長度的共享存儲空間。

3.2.2光譜數(shù)據(jù)區(qū)讀寫機制

由光譜數(shù)據(jù)分析可知,一幀空間校正數(shù)據(jù)為256K×16 bit,大于光譜數(shù)據(jù)區(qū)的容量,這就要求必須采用環(huán)形緩沖區(qū)讀寫的方式,如圖5所示,環(huán)形緩沖區(qū)是一種先進先出的循環(huán)讀寫方式,在只有一個寫用戶和一個讀用戶方式下,天然具有互斥保護機制確保兩個用戶互斥訪問數(shù)據(jù)區(qū)域。

圖5 環(huán)形緩沖讀寫示意圖

環(huán)形緩沖區(qū)有一個寫指針和一個讀指針,DSP擁有寫指針,它以DATATAIL區(qū)存儲的指針(偏移值)開始將數(shù)據(jù)寫入可寫區(qū)域后,用最新的寫指針(偏移值)更新DATATAIL區(qū),并用最新寫入的數(shù)據(jù)幀序號更新TFRAMNUM區(qū);同樣的ARM定時讀取數(shù)據(jù),首先比較DATATAIL區(qū)與DATAHEAD區(qū)是否相等,如果相等表明沒有數(shù)據(jù)更新,如果不相等則可以讀取數(shù)據(jù),它以DATAHEAD區(qū)存儲的指針(偏移值)開始將數(shù)據(jù)讀出,最后用最新的讀指針(偏移值)更新DATAHEAD區(qū),并用最新讀取的數(shù)據(jù)幀序號更新HFRAMNUM區(qū),具體讀寫流程如圖6所示。

在這種方式下,DSP寫入一幀完整的空間校正數(shù)據(jù)時,幀尾的數(shù)據(jù)必然覆蓋了幀頭的數(shù)據(jù),覆蓋大小為64K×16 bit,這就要根據(jù)數(shù)據(jù)采樣率計算好ARM端讀取數(shù)據(jù)的定時時間,保證在DSP寫入周期內(nèi)最少要讀取64K×16 bit數(shù)據(jù)、在一個采樣周期內(nèi)必須讀取完整的一幀數(shù)據(jù),本文綜合各方面情況將定時時間設(shè)定為1秒。光譜校正和STR檢測時數(shù)據(jù)量少,不存在覆蓋的問題,按照1秒的時間間隔讀取數(shù)據(jù)是足夠的。

圖6 讀、寫流程圖

4 測試驗證

本研究所述熒光光譜數(shù)據(jù)傳輸系統(tǒng)已經(jīng)應用在國產(chǎn)GA118-16A DNA分析儀上,使用16道毛細管陣列和IdentifilerTM、DNATyperTM15 PLUS等國內(nèi)外主流試劑盒,成功生成了空間校正和光譜校正圖譜。對DNATyperTM15 PLUS 進行等位基因分型標準物(Allelic ladder)的STR檢測,分型圖譜如圖7所示,其含有的16個STR基因座分型準確,沒有出現(xiàn)片段丟失現(xiàn)象。

5 結(jié)語

在對DNA分析儀熒光光譜數(shù)據(jù)分析的基礎(chǔ)上,采用主從式處理器架構(gòu),以雙口RAM作為數(shù)據(jù)傳輸?shù)墓蚕泶鎯臻g,成功設(shè)計了一套滿足DNA分析儀要求的數(shù)據(jù)傳輸系統(tǒng)。目前,使用該系統(tǒng)的國產(chǎn)DNA分析儀已經(jīng)銷售了100多臺(套),滿足了公安機關(guān)刑事偵查、打拐、DNA庫建設(shè)等方面的需要!

猜你喜歡
雙口毛細管指針
雙口形式的戴維寧定理在電路分析中的應用
毛細管氣相色譜法測定3-氟-4-溴苯酚
云南化工(2020年11期)2021-01-14 00:50:54
偷指針的人
娃娃畫報(2019年5期)2019-06-17 16:58:10
雙口RAM在機載嵌入式系統(tǒng)中的應用
電子測試(2018年4期)2018-05-09 07:28:10
為什么表的指針都按照順時針方向轉(zhuǎn)動
超聲萃取-毛細管電泳測定土壤中磺酰脲類除草劑
雜草學報(2015年2期)2016-01-04 14:58:05
毛細管氣相色譜法測定自釀葡萄酒中甲醇的含量
中藥與臨床(2015年5期)2015-12-17 02:39:28
基于改進Hough變換和BP網(wǎng)絡(luò)的指針儀表識別
電測與儀表(2015年5期)2015-04-09 11:30:42
雙口RAM讀寫正確性自動測試的有限狀態(tài)機控制器設(shè)計方法
雙口RAM在無人機三余度飛控計算機數(shù)據(jù)交換中的應用
武乡县| 鄂温| 文安县| 宿迁市| 定南县| 青川县| 百色市| 屏东县| 龙山县| 民勤县| 金秀| 图们市| 武汉市| 饶平县| 达孜县| 海淀区| 安新县| 泰州市| 郑州市| 屏南县| 荆州市| 石景山区| 图木舒克市| 沧州市| 凤庆县| 祁阳县| 大安市| 福海县| 福州市| 东辽县| 武宣县| 尖扎县| 潮安县| 从江县| 余庆县| 霸州市| 宁河县| 平原县| 永泰县| 宁武县| 广安市|