李洪法
(中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所,吉林長(zhǎng)春 130033)
一種基于高速串行接口技術(shù)的CCD圖像數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)
李洪法
(中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所,吉林長(zhǎng)春 130033)
為了解決空間CCD(電荷耦合器件)大數(shù)據(jù)量的圖像數(shù)據(jù)的高速實(shí)時(shí)傳輸,設(shè)計(jì)了一種基于高速串行接口技術(shù)的CCD數(shù)據(jù)傳輸系統(tǒng)。該系統(tǒng)可實(shí)現(xiàn)2Gbps的數(shù)據(jù)流傳輸,經(jīng)實(shí)驗(yàn)驗(yàn)證,系統(tǒng)工作穩(wěn)定可靠。
空間CCD 高速串行接口 圖像數(shù)據(jù)傳輸
在光電成像領(lǐng)域,電子耦合器件(CCD:Charge Coupled Device)得到了廣泛的應(yīng)用。隨著應(yīng)用范圍的擴(kuò)大,應(yīng)用系統(tǒng)對(duì)CCD的功能、性能要求越來越高,CCD逐漸向大尺寸,小像元,高速度的方向發(fā)展。這直接導(dǎo)致圖像數(shù)據(jù)量的成倍增長(zhǎng),給圖像數(shù)據(jù)傳輸帶來壓力。因此解決CCD圖像數(shù)據(jù)的高速傳輸成為必須要面對(duì)的問題[1,2]。本文基于高速差分串行總線技術(shù),設(shè)計(jì)了空間CCD的高速實(shí)時(shí)傳輸系統(tǒng),有效解決了圖像數(shù)據(jù)高速傳輸所面臨的瓶頸問題。
本文為實(shí)現(xiàn)CCD高速圖像數(shù)據(jù)傳輸而設(shè)計(jì)的數(shù)傳系統(tǒng),其組成如圖1所示,主要包括CCD、圖像采集整合與控制單元、高速數(shù)據(jù)串化和解串核心器件TLK2711、圖像數(shù)據(jù)控制與接收單元、快視上位機(jī)。
圖 1 系統(tǒng)組成原理圖
圖像采集整合與控制單元對(duì)CCD進(jìn)行時(shí)序控制,同時(shí)接收CCD輸出的圖像信號(hào),將其進(jìn)行AD量化、采集、整合后,以并行16位數(shù)據(jù)的形式輸出給高速串化器TLK2711,同時(shí)提供的信號(hào)還包括TLK2711工作時(shí)所需的時(shí)序控制信號(hào),以及數(shù)據(jù)傳輸所必需的時(shí)鐘信號(hào)。高速串化器輸出的差分信號(hào),經(jīng)過高速串行總線后,到達(dá)高速解串器。高速串化器和高速解串器都由TLK2711實(shí)現(xiàn),一個(gè)實(shí)現(xiàn)數(shù)據(jù)發(fā)送,另一個(gè)實(shí)現(xiàn)數(shù)據(jù)接收。高速解串器的工作控制由數(shù)據(jù)控制與接收單元實(shí)現(xiàn)。高速差分信號(hào)經(jīng)過高速解串后,重新恢復(fù)為16位并行數(shù)據(jù)和一路時(shí)鐘信號(hào),進(jìn)入到數(shù)據(jù)控制與接收單元中,并由后者緩存整理后,通過內(nèi)部總線發(fā)送給快視上位機(jī)。快視上位機(jī)將接收到的圖像數(shù)據(jù)進(jìn)行顯示和存儲(chǔ)。
本設(shè)計(jì)的數(shù)傳系統(tǒng)中高速串化器和高速解串器都是由TLK2711[3,4]實(shí)現(xiàn)的。TLK2711是TI公司生產(chǎn)的一款高速串行收發(fā)器。它專用于高速雙向點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)收發(fā)系統(tǒng),其主要功能模塊包括:并轉(zhuǎn)串單元、串轉(zhuǎn)并單元、8B/10B編碼和解碼單元,逗號(hào)碼檢測(cè)單元、偽隨機(jī)碼產(chǎn)生與檢測(cè)單元、時(shí)鐘合成與恢復(fù)以及內(nèi)部控制單元等,如圖2所示。
圖2 TLK2711的功能組成框圖
TLK2711支持的有效接口串行數(shù)據(jù)速度可達(dá)1.6Gbps到2.7Gbps,這主要取決于傳輸時(shí)所采用的時(shí)鐘。TLK2711所允許的并行數(shù)據(jù)發(fā)送時(shí)鐘頻率可達(dá)80MHz至135MHz,具體值根據(jù)實(shí)際系統(tǒng)的不同可具體設(shè)置,在本系統(tǒng)中并行時(shí)鐘速度為100MHz。
作為發(fā)送端使用的TLK2711,在TXCLK的驅(qū)動(dòng)下,將端口上的16位并行數(shù)據(jù)鎖進(jìn)器件內(nèi)部的存儲(chǔ)器[5]。在器件內(nèi)部采用8B/10B編碼格式,將16位并行數(shù)據(jù)編碼為位寬為20位的數(shù)據(jù)。器件以20倍于TXCLK的速度將編碼后的數(shù)據(jù)通過串行差分總線傳輸給接收端。串行差分總線可以是同軸電纜、阻抗受控的底臺(tái)板,也可以是光纜。本系統(tǒng)中采用的是同軸電纜傳輸方式。
接收端從20位寬的數(shù)據(jù)流中恢復(fù)出時(shí)鐘RXCLK,并在該時(shí)鐘的同步驅(qū)動(dòng)下,完成對(duì)接收到的串行數(shù)據(jù)串/并轉(zhuǎn)換。轉(zhuǎn)換后的數(shù)據(jù)從RXD0-RXD15引腳輸出。
所有真實(shí)的串行接口都有自己的編碼方法,以保證最小的數(shù)據(jù)傳輸密度。通過編碼使總線上傳輸?shù)摹?”和“0”的數(shù)量相等,這樣可保持 總線上直流信號(hào)的平衡,為數(shù)據(jù)傳輸提供了較好的傳輸密度[6],有利于接收端的時(shí)鐘恢復(fù),提高錯(cuò)誤容限。
8B/10B編碼是一種已在fibre channel和千兆以太網(wǎng)中得到應(yīng)用了的編碼方法。這種編碼方法將8B數(shù)據(jù)編碼為10B數(shù)據(jù)。10B數(shù)據(jù)共有1024個(gè)數(shù)據(jù),8B/10B編碼只選取了其中的256個(gè),用以實(shí)現(xiàn)前文中所說的保證總線上傳輸?shù)摹?”和“0”的數(shù)量相等的目的。這些數(shù)據(jù)在編碼規(guī)則中被稱為D碼。
除此之外,8B/10B編碼還使用了12個(gè)控制字符,在編碼規(guī)則中被稱為K碼。K碼的主要作用是用來區(qū)分圖像數(shù)據(jù)流。根據(jù)實(shí)際需要可以描述圖像的段、幀、行等信息。
TLK2711的數(shù)據(jù)接口是16位寬,因此數(shù)據(jù)被拆分成兩個(gè)8位寬的數(shù)據(jù),分別進(jìn)行8B/10B編碼后,再組合為20位寬的數(shù)據(jù)。編碼方式則由TKLSB和TKMSB決定。
3.3 逗號(hào)碼檢測(cè)和8B/10B解碼
TLK2711有兩個(gè)并行的8B/10B解碼單元。每個(gè)單元各自獨(dú)立地將10位寬數(shù)據(jù)恢復(fù)為8位寬數(shù)據(jù)。但是在完成該功能之前,首先要完成逗號(hào)碼的檢測(cè)。所謂逗號(hào)碼是TLK2711在編碼過程中使用的用以區(qū)分字符邊界的控制字符,通常采用獨(dú)特的“1”和“0”實(shí)現(xiàn)。TLK2711中使用的是b0011111或b1100000。逗號(hào)碼檢測(cè)和8B/10B解碼過程是這樣的:逗號(hào)碼檢測(cè)電路利用逗號(hào)碼,產(chǎn)生一個(gè)同步信號(hào)對(duì)接收信號(hào)進(jìn)行重構(gòu)以便進(jìn)行解碼;解串器,亦即8B/10B解碼器將接收到的信號(hào)恢復(fù)為8位寬的數(shù)據(jù);兩個(gè)解碼器的輸出鎖存進(jìn)16位寬的寄存器;在恢復(fù)時(shí)鐘信號(hào)RXCLK上升沿的驅(qū)動(dòng)下,16位寬寄存器的數(shù)據(jù)在RXD0~RXD15引腳上輸出。
本文應(yīng)用高速差分串行總線技術(shù)設(shè)計(jì)了一個(gè)高速CCD圖像數(shù)據(jù)傳輸系統(tǒng)。該系統(tǒng)保證了圖像數(shù)據(jù)的實(shí)時(shí)高速傳輸,大大減少了連接器的點(diǎn)數(shù),降低了系統(tǒng)間互聯(lián)的復(fù)雜性,確保了信號(hào)傳輸?shù)臏?zhǔn)確性,提高了系統(tǒng)可靠性。利用該技術(shù)設(shè)計(jì)的10通道CCD數(shù)傳系統(tǒng),工作穩(wěn)定可靠,數(shù)傳速度達(dá)到2Gbps,達(dá)到了預(yù)期的目的。
[1]李洪法.一種多通道CCD圖像數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)[J].科技資訊,2014(1):9-10.
[2]陳驥,郭超.線陣CCD的高速信號(hào)采集與USB數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J].儀表技術(shù)與傳感器,2010(12):106-110.
[3]Texas Instruments.TLK2711 1.6 to 2.7Gbps transceiver datasheet[Z].2001.
[4]R.Koga,P.Yu,J.George.Single event effects and total dose test results for TI TLK2711 transceiver[J].IEEE REDW,2008:69-75.
[5]倪建軍,李濤,王建宇.基于TLK2711的高速串行全雙工通信協(xié)議研究.電子設(shè)計(jì)工程[J],2013,21(10):76-80.
[6]wikipedia. 8b/10b encoding[OL]. http://en.wikipedia.org/wiki/8b/10b_encoding.