亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于FPGA的AD9945驅(qū)動設計

        2011-07-25 00:34:00洪冰心鄭力新
        關(guān)鍵詞:低電平寄存器電平

        洪冰心,鄭力新

        (華僑大學 信息科學與工程學院,福建 廈門361021)

        隨著計算機和通信技術(shù)的發(fā)展,機器視覺的應用更加廣泛,而FPGA因具有高性能、高靈活性、低開發(fā)成本、低成本的結(jié)構(gòu)化ASIC移植等優(yōu)點,在機器視覺中發(fā)揮著越來越重要的作用。AD9945是一款12 bit的高速CCD信號處理芯片,最高頻率可達到40 MHz,非常適用于處理高速CCD信號。

        1 AD9945芯片簡介[1]

        AD9945是一款高速CCD模擬信號處理芯片,最高頻率可處理40 MHz的面陣CCD模擬信號。其信號鏈主要由相關(guān)雙采樣(CDS)、數(shù)控可變增益放大器(VGA)、黑色電平鉗位、12位A/D轉(zhuǎn)換器組成。

        1.1 AD9945內(nèi)部寄存器

        AD9945有4個內(nèi)部寄存器,分別為工作寄存器、控制寄存器、暗電平鉗制水平寄存器、VGA增益寄存器。4個寄存器可通過3線串行數(shù)字接口(SCK、SDATA、SL)進行編程。通過編程可改變增益、黑電平校正、輸入時鐘極性及掉電模式等。各個內(nèi)部寄存器詳細設置見其芯片手冊[1]。

        對單個寄存器的賦值應滿足其芯片時序圖,并且注意4個寄存器應被連續(xù)寫入,第一個寄存器的地址(最低的地址)被寫入后,跟著寫入一個測試位(置 0)和 4個12 bit的數(shù)據(jù)(不足 12 bit的補 0),其中地址位將跟著每一個12 bit的數(shù)據(jù)而自動增加。每一位SDATA的數(shù)據(jù)在SCK的上升沿被寫入。在所有的寄存器的值寫入期間,SL保持低電平,并且系統(tǒng)在SL上升沿后對寄存器的值進行更新。

        1.2 AD9945工作流程

        對于來自CCD的輸入信號,AD9945通過一個由0.1 μF的外部耦合隔直電容以及內(nèi)置的高精度直流電平恢復電路,使CCD信號的直流分量保持在1.5 V左右,從而與3 V單電源輸入的 AD9945相匹配。接著AD9945對CCD信號進行相關(guān)雙采樣處理,即對CCD信號采樣兩次以提取視頻信息,這有效地防止了低頻噪音。相關(guān)雙采樣發(fā)生在SHP(復位電平)和SHD(像元信號電平)的上升沿,這兩個時鐘信號是完成采樣、發(fā)揮CCD性能的關(guān)鍵。然后AD9945可以通過10 bit的串行數(shù)字接口編程設置對CCD信號的增益進行調(diào)整,增益范圍從6 dB~40 dB。其增益調(diào)整的公式為:VGA增益(dB)=(VGA代碼值×0.035 dB)+5.3 dB。為了清除CCD信號鏈中殘留的偏置并跟蹤暗電平低頻的變化,AD9945還設置了一個光學暗電平鉗制反饋環(huán)。通過內(nèi)部寄存器設置暗電平的參考值,并與ADC輸出的實際暗電平的值進行比較。產(chǎn)生的誤差信號經(jīng)過數(shù)字濾波,通過一個D/A轉(zhuǎn)換器反饋到ADC的輸入。暗電平鉗制脈沖CLPOB應處于有效的CCD光學暗電平期間。最后CCD信號通過一個12 bit的AD轉(zhuǎn)換器輸出,并且輸出時延遲10像素時鐘。

        2 AD9945驅(qū)動設計

        2.1 AD9945時序分析[1-2]

        AD9945要正常工作必須由時序發(fā)生器提供各種脈沖信號,以保證其內(nèi)部寄存器能夠正確賦值,雙相關(guān)采樣信號SHP和SHD時序應滿足CCD信號要求以及CLPOB脈沖應處于有效的CCD光學暗電平期間。AD9945時序脈沖信號是一組周期性、關(guān)系較復雜的脈沖信號,它直接影響了對CCD信號的處理性能。本文設計的AD9945的時序包括三個部分:(1)3線串行數(shù)字接口(SCK、SDATA、SL),保證內(nèi)部寄存器被正確賦值;(2)相關(guān)雙采樣信號SHP、SHD,確保采樣的準確性;(3)光學暗電平鉗制,減少鉗制噪聲。

        預設當CCD數(shù)據(jù)頻率為40 MHz時,各個驅(qū)動信號的相位關(guān)系如表1所示。通過觀察各驅(qū)動信號的相位表和時序圖[1]可以得到:如果設t=T/8(T是驅(qū)動信號的周期),則 SHP、SHD、DATACLK 的脈沖寬度分別為 2 t、2 t、4 t,并且 SHP、SHD之間相位差為 2 t。由于 DATACLK上升沿必須處于SHD的上升沿與下一個SHP的下降沿之間,因此設DATACLK上升沿到SHP下降沿的相位為t。所以如果基準時鐘信號的周期為t,根據(jù)上述分析的結(jié)果可以得到各個驅(qū)動信號。

        需要注意的是,表1中的各個驅(qū)動信號的相位關(guān)系是在CCD信號頻率為40 MHz時的,如果CCD信號頻率發(fā)生變化,各個驅(qū)動信號的頻率也應該跟著變化。

        表1 驅(qū)動信號相位關(guān)系

        2.2 AD9945驅(qū)動的程序設計[3]

        主控芯片選用現(xiàn)場可編程門陣列。FPGA可以通過QuartusII軟件編程對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件設計如同軟件設計方便快捷。本設計主要使用VHDL語言來編寫驅(qū)動程序。

        AD9945最高工作頻率可以達到40 MHz,但是為了配合前端CCD提供的圖像數(shù)據(jù)信號(CCD信號為10 MHz),把 AD9945的工作頻率設定為10 MHz(即 SHP、SHD、DATACLK頻率=10 MHz),這樣與前端CCD信號達到同步。通過觀察SHP、SHD、DATACLK之間的相位關(guān)系以及上文的時序分析,發(fā)現(xiàn)需要一個80 MHz的基準時鐘(1/t=8/T),然后對基準時鐘進行 8分頻,得到 10 MHz的信號。然而FPGA的基準時鐘信號是由一塊50 MHz的有源晶振產(chǎn)生,要想得到需要的80 MHz的信號,就必須進行小數(shù)分頻處理。選擇利用FPGA內(nèi)部的鎖相環(huán)PLL完成8/5的小數(shù)分頻[3-4]。

        2.2.1 AD9945內(nèi)部寄存器程序設計

        在AD9945對CCD信號進行采集之前,需要對其內(nèi)部寄存器進行設置,使其工作在需要的狀態(tài)下。此步驟需要對3線串行數(shù)字接口(SCK、SDATA、SL)進行編程。

        首先定義一個串行數(shù)據(jù)類型SPI=RAM_ARRAY,并賦初值,即是預計要向各個寄存器寫入的值,總共52位(3位地址位+1位測試位+每個寄存器12位×4個寄存器=52位)。通過SPI對串行數(shù)據(jù)接口SDATA進行賦值,實現(xiàn)對內(nèi)部寄存器的設置。

        然后編寫程序產(chǎn)生串行數(shù)據(jù)輸入時鐘SCK,因為SCK是頻率為10 MHz,占空比為1:1的方波,所以對80 MHz的基準時鐘進行8進制計數(shù)div8=(0,1,2,3,4,5,6,7),當div8=0、1、2、3時,SCK為低電平。最后需要產(chǎn)生內(nèi)部寄存器載入脈沖SL。定義一個52位的計數(shù)器 CNT52,對SCK的脈沖計數(shù)52次(用于串行數(shù)據(jù)的寫入)。計數(shù)期間SL置 0,結(jié)束后置1,并且在此期間當每一個 SCK上升沿到來時通過SPI對SDATA進行串行寫入(共52次)。

        2.2.2 AD9945采樣時鐘的程序設計

        通過對內(nèi)部寄存器進行賦值,規(guī)定了AD9945的工作方式后,就可以編寫程序設計AD9945的采樣時鐘SHP、SHD、DATACLK。其中 DATACLK是數(shù)據(jù)像素同步時鐘,必須與前端CCD信號嚴格匹配,在這里也是通過軟件產(chǎn)生,實際驗證過程中再根據(jù)具體情況進行調(diào)整。

        DATACLK 占空比為 1:1, 所以當 div8=0、1、2、3 時DATACLK為低電平;SHP和 SHD占空比都為 3:1,但是SHP比SHD超前,所以當div8=1、2時,SHP為低電平;當 div8=5、6時,SHD為低電平。

        2.2.3 AD9945行鉗制時鐘輸入

        通過觀察CCD輸出信號,發(fā)現(xiàn)CCD信號的有效像元之間夾雜著一些光學暗電平和一些空白像素,在此區(qū)間CCD是沒有輸出的。通過軟件設計PBLK和CLPOB脈沖信號,使AD9945采集的結(jié)果更準確。

        設置CLPOB為20個像素時間寬度,而PBLK脈沖寬度的設置需要準確知道CCD空白像素的寬度,在此也是預設20個像素時間寬度,針對實際情況再進行調(diào)整。

        2.3 驅(qū)動程序及仿真結(jié)果

        由于設計需要的頻率較高,擔心FPGA編程后的管腳輸出達不到所需電壓,波形也不盡如人意,所以設計通過反向器來提升FPGA的輸出信號,使其達到AD9945的輸入要求,同時可以對波形進行整形,這就要求在編寫FPGA程序時,時序編寫要反向設計,按照上述時序分析反邏輯編寫。

        驅(qū)動電路實體端口定義如下:

        軟件(QuartusII)仿真結(jié)果如圖(圖 1~圖 3)。

        通過把仿真得到時序圖與芯片要求的時序圖進行比較,發(fā)現(xiàn)設計得到的驅(qū)動信號符合AD9945數(shù)據(jù)手冊的要求,因此能正常驅(qū)動AD9945進行工作,完成對CCD信號的采集、處理。

        [1]ADI公司.AD9945芯片資料,2003.

        [2]常丹華.基于CPLD技術(shù)的CCD驅(qū)動時序產(chǎn)生方法[J].儀器技術(shù)和傳感器,2001(3):26-28.

        [3]潘松,黃繼業(yè).EDA技術(shù)與 VHDL(第二版)[M].北京:清華大學出版社,2007.

        [4]吳繼華,王誠.Altera FPGA/CPLD設計(初級篇)[M].北京:人民郵電出版社,2010.

        猜你喜歡
        低電平寄存器電平
        數(shù)字電路中“邏輯非”的用法辨析
        鐵道車輛高/低電平信號智能發(fā)生器設計
        Lite寄存器模型的設計與實現(xiàn)
        計算機應用(2020年5期)2020-06-07 07:06:44
        2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        NPC五電平Z源逆變器的設計研究
        基于三電平光伏并網(wǎng)逆變器控制系統(tǒng)的研究與實踐
        基于NPC三電平變換器的STATCOM研究
        電測與儀表(2015年2期)2015-04-09 11:28:58
        一種多電平逆變器及其并網(wǎng)策略
        電測與儀表(2014年7期)2014-04-04 12:09:32
        集成電路靜態(tài)參數(shù)測試
        微處理機(2012年5期)2012-07-25 03:21:06
        国产成人高清亚洲一区二区| 野外性史欧美k8播放| 久久精品免费一区二区喷潮| 亚洲午夜久久久精品国产| 亚洲国产免费不卡视频| 欧美人与禽2o2o性论交| 国产a三级久久精品| 亚洲av永久无码精品成人| 少妇人妻精品久久888| 7777色鬼xxxx欧美色妇| 亚洲精品无码高潮喷水在线| 波多吉野一区二区三区av| 亚洲综合在不卡在线国产另类| 亚洲av无码乱码在线观看牲色| 国产色综合天天综合网| 亚洲一区精品中文字幕| 粉嫩人妻91精品视色在线看| 久久久久亚洲精品无码蜜桃| 欧美视频二区欧美影视| 日本女优在线观看一区二区三区 | 无码一区二区三区不卡AV| 国产精品二区三区在线观看| 18禁裸体动漫美女无遮挡网站| 久久精品国产亚洲av蜜臀| 亚洲专区一区二区在线观看| 成人国产av精品麻豆网址| 国模冰莲极品自慰人体| 最新亚洲av日韩av二区| 杨幂国产精品一区二区| 国产高清在线一区二区不卡| 亚洲av高清在线一区二区三区 | 水蜜桃男女视频在线观看网站| 乱中年女人伦av一区二区| 91精品福利观看| 国产一级r片内射视频播放| 国产av无码专区亚洲av麻豆| 国产av无码专区亚洲av琪琪| 久久99精品久久久久久国产人妖| 国产精品国产自产拍高清| 国产亚洲真人做受在线观看| 国产成人久久精品区一区二区|