基于I2C總線的CMOS圖像傳感器接口電路設(shè)計(jì)
考慮該主I2C總線的讀寫周期的特殊性,將該I2C總線設(shè)計(jì)成如圖3所示的總體結(jié)構(gòu)。主要包括控制狀態(tài)機(jī)、數(shù)據(jù)緩存器、SDA產(chǎn)生接收器、SCL產(chǎn)生器以及并-串轉(zhuǎn)換和串-并轉(zhuǎn)換。數(shù)據(jù)緩存器用來將要通過I2C總線傳輸?shù)臄?shù)據(jù)組合成所需要的格式,由于CMOS圖像傳感器的I2C總線特殊的讀寫操作格式,因此可以將需要傳輸?shù)腎D地址、subaddress和data組合在一個(gè)30位的緩存器中,它的低六位用來表示高24位的3個(gè)字節(jié)的屬性,以便正確的傳輸,通過這種數(shù)據(jù)組合,便于I2C總線傳輸和識別。串-并轉(zhuǎn)換和并-串轉(zhuǎn)換本質(zhì)上是兩個(gè)移位寄存器,用來將接收到的串行數(shù)據(jù)轉(zhuǎn)變成并行數(shù)據(jù)或并行數(shù)據(jù)轉(zhuǎn)變成要發(fā)送的串行數(shù)據(jù)。
SDA產(chǎn)生接收器用宋生成主總線的控制命令如開始、結(jié)束和應(yīng)答位等(和SCL配合工作),隨后接收和讀取數(shù)據(jù)。SCL產(chǎn)生器用來產(chǎn)生I2C總線的時(shí)鐘信號和控制命令信號(和SDA配合工作)。控制狀態(tài)機(jī)主要負(fù)責(zé)控制整個(gè)I2C總線的流程,其狀態(tài)圖如圖4所示。主要包括以下八個(gè)狀態(tài):IDLE(等待讀取或?qū)懭霐?shù)據(jù))、LOAD(加載需要傳輸?shù)臄?shù)據(jù))、START(發(fā)送開始信號)、WRRD(I2C總線處于讀取或?qū)懭霐?shù)據(jù)狀態(tài))、DECIDE(判決當(dāng)前狀態(tài)是讀取數(shù)據(jù)還是寫入數(shù)據(jù))、WR_ACK(寫應(yīng)答)、RD_ACK(讀應(yīng)答)、STOP(發(fā)送結(jié)束信號)。例如給CMOS圖像傳感器的一個(gè)寄存器寫一個(gè)字節(jié)的數(shù)據(jù),需要經(jīng)歷以下狀態(tài):IDLE→LOAD→START→WRRD→WR_ACK→WRRD→WR_ACK→WRRD→WR_ACK→STOP→IDLE;一個(gè)字節(jié)的寫操作的ActiveHDL的仿真時(shí)序如圖5所示。
3.3可編程降采樣模塊
可編程降采樣模塊是通過MCU給內(nèi)部的降采樣寄存器寫入需要的降采樣參數(shù)來實(shí)現(xiàn)可編程的,接口內(nèi)一共有6個(gè)降采樣參數(shù)寄存器:總行數(shù)寄存器(hrefprecnt)、總列數(shù)寄存器(pixprecnt)、行丟寄存器(hrefdropcnt)、列丟寄存器(pixdropcnt)、行降采樣寄存器(vdscnt)、列降采樣寄存器(hdscnt),各個(gè)寄存器參數(shù)所表示的意義如圖6所示。操作過程如下:先跳過列丟寄存器值和行丟寄存器值數(shù)目的列和行,接下來保留總列數(shù)寄存器值和總行數(shù)寄存器值數(shù)目的列和行,在這些保留的行和列當(dāng)中用列降采樣寄存器和行降采樣寄存器的值進(jìn)行降采樣:行降采樣寄存器和列降采樣寄存器分為兩部分:保留和丟棄,保留和丟棄的像素和行的數(shù)目均為偶數(shù)且為連續(xù)的像素,從而保證降采樣后輸出的像素滿足RGRG…RG或GBGB…GB的Bayer格式。通過這樣幾個(gè)降采樣寄存器可以很方便實(shí)現(xiàn)的各種分辨率的降采樣,能夠輸出任意4的倍數(shù)的分辨率的圖像,因而可以很方便的支持多種規(guī)格的LCD顯示器。
4電路的FPGA驗(yàn)證
在經(jīng)過上述頂層設(shè)計(jì)和各個(gè)子模塊的設(shè)計(jì)后,用Verilog語言[5]來實(shí)現(xiàn),并用ActiveHDL來進(jìn)行RTL級仿真,并對電路進(jìn)行了FPGA驗(yàn)證,使用的芯片是Xilinx公司的SPARTANIIXC2S200PQ208,系統(tǒng)時(shí)鐘為54MHz,F(xiàn)PGA綜合的結(jié)果顯示需要FPGA芯片的11%的SLICEs,22%的IOBs和25%的GCLKIOBs。整個(gè)測試流程由MCU控制,在拍照模式下,CMOS圖像傳感器的數(shù)據(jù)流經(jīng)CMOS接口采樣存儲(chǔ)在SDRAM中,再由EPP接口上傳至PC上:在取景模式下,則有LCD顯示器實(shí)時(shí)顯示。該接口電路在各種工作模式下功能驗(yàn)證正確。
FPGA驗(yàn)證通過后,作為數(shù)碼相機(jī)專用集成電路芯片的一部分采用上華0.6μm工藝庫進(jìn)行了ASIC的后端自動(dòng)綜合,包括用DesignCompiler(Synopsys公司)進(jìn)行邏輯綜合、PrimeTime(Synopsys公司)做版圖前驗(yàn)證、SiliconEnsemble(Cadence公司)做自動(dòng)布局布線、Virtuoso(Cadence公司)做DRC和LVS,最后得到的版圖面積約為3.7mm×3.7mm,綜合頻率為25MHz,在5V供電下,功耗約為150mW。
5結(jié)論
CMOS圖像傳感器接口電路的設(shè)計(jì)模塊可以分為寄存器文件、主12C總線接口和可編程降采樣模塊3部分,經(jīng)過電路的頂層設(shè)計(jì)和各個(gè)子模塊的功能設(shè)計(jì),進(jìn)行了Verilog語言代碼實(shí)現(xiàn),用ActiveHDL進(jìn)行了RTL級仿真,并進(jìn)行了FPGA驗(yàn)證,功能設(shè)汁正確,并打算作為數(shù)碼相機(jī)專用集成電路芯片的一部分到工藝廠流片。
評論