?

基于低功耗SoC的微型圖像采集系統設計

2019-04-13 13:23胡錦謝立紅鄒望輝張磊胡嘯東
湖南大學學報·自然科學版 2019年2期

胡錦 謝立紅 鄒望輝 張磊 胡嘯東

摘 ???要:針對低成本和低功耗的物聯網SoC芯片發展要求,基于SMIC 55 nm CMOS工藝,以低功耗開源處理器RI5CY的SoC芯片為平臺,結合片內含有DSP與A/D轉換功能的低電壓CMOS圖像傳感器OV7725,設計并實現了一款基于開源 RISC_V指令集架構 SoC 芯片的圖像采集控制系統.文中介紹了圖像采集控制系統的結構,并詳細闡述基于AHB總線的圖像采集控制器的設計.控制器采用一種改進的異步FIFO來實現不同時鐘域的同步設計,具有小面積和低功耗的特點.通過Modelsim仿真、DC綜合以及 FPGA 驗證,結果表明:該系統實現了視頻圖像數據的采集和傳輸,操作流程簡單,易于軟件調試,支持應用最高帶寬可達37 MB/s. SoC芯片系統的時鐘主頻為200 MHz,芯片總面積為3 250 × 3 648 μm2,總功耗僅為24.419 mW.

關鍵詞:圖像采集;SoC;RISC_V;異步FIFO

中圖分類號:TP368????????????????????????????文獻標志碼:A

Design of Miniature Image Acquisition System

Based on Low Power System on Chip

HU Jin1,XIE Lihong1,ZOU Wanghui1,ZHANG Lei2,HU Xiaodong3

(1. School of Physics and Electronics,Hunan University,Changsha 410082,China;

2. Institute of Computing Technology of Chinese Academy of Sciences,Beijing 100080,China;

3. Netforward Shenzhen,Shenzhen 518057,China)

Abstract: Based on the development requirements of low-cost and low-power Internet SoC chip, an image acquisition and control system is designed and implemented based on open source RISC_V instruction set architecture SoC chip and SMIC 55nm CMOS process, which uses the low-power open source processor RI5CY SoC chip as a platform and combined with the Low-Voltage CMOS Image Sensor OV7725 with the integrated DSP and A/D conversion chip inside. This paper introduces the block diagram of the image acquisition and control system, and describes a design of image acquisition controller based on AHB bus in detail. An improved asynchronous FIFO with low power and small area is used to realize the synchronous design of different clock domains. According to the?results of Modelsim simulation, DC synthesis and FPGA verification shows that the system realizes the video image data acquisition and transmission,which operation flow is simple and easy to debug, and the maximum of the data transmission bandwidth come up to 37MB/s. The chip total area is 3250 μm x 3648 μm and power consumption is only 24.419 mW.

Key words: image acquisition;Soc;RISC_V;asynchronous FIFO

隨著互聯網技術、信息處理技術以及物聯網技術的發展,以微處理器為核心的片上系統 (SoC),由于成本低、體積小、集成度高、功耗低等[1]優點,逐漸成為當今集成電路的主流,為集成電路產業提供了廣闊市場和發展機遇[2].目前常見的圖像采集系統大多基于PC機的圖像視頻采集卡,雖然性能上清晰度高、運算精度大,但成本較高、體積和功耗都較大,不適合應用在便攜式電子產品中.嵌入式技術發展給圖像采集提供了新平臺,但單純應用ARM或DSP等嵌入式平臺由于其存儲容量有限、處理速度低、擴展性較差的特點,不能滿足當前圖像采集系統的帶寬需求.SoC系統芯片結合了這些優勢,為需要實時性強和處理速度快的數據信息系統實現提供了較好的解決方案.

文獻[3]利用單片機控制和USB數據采集技術等實現了視頻數據的采集和傳輸,但數據傳輸速率為8~10 Mbps,難以完整采樣和存儲30 fps、640×480像素大小的視頻圖像.

文獻[4]采用FPGA作為圖像采集主控芯片,能較好實現圖像數據的采樣和傳輸,但操作流程繁瑣,系統較為復雜,對于軟件人員來說難以設計和調試,其功耗也相對較高.本文針對微型電子設備的應用場合,基于RISC_V指令集架構的開源處理器PULPino[5],設計了一款低功耗的圖像采集控制系統,實現了CMOS圖像傳感器圖像數據的輸出、采集、存儲.圖像數據輸入至神經網絡ANN (Artificial Neural ?Networks)加速器中進行智能識別、圖像處理或通過圖像顯示器進行顯示,該圖像采集系統操作流程簡單,易于軟件調試.

1 ??系統設計方案

本設計選用OmniVision公司小型CMOS圖像傳感器OV7725為SoC芯片提供數字視頻信號,針對當前物聯網智能芯片的圖像采集與處理需求,設計方案如下:

1)基于低功耗RISC_V的開源處理器PULPino(Parallel Ultra Lower Power)平臺.

2)利用掛載在SOC系統APB總線上的I2C控制器與CMOS圖像傳感器OV7725進行信息交互,對圖像傳感器編程配置.

3)根據圖像采集系統的應用場景,設計SoC系統圖像采集控制器,實現在控制信號的控制下正確采集圖像數據,并將圖像數據通過AHB總線存儲至LPDDR(Low Power Double Date Rate SDRAM).

4)基于LATCH 的異步FIFO實現圖像采集時

鐘域與系統時鐘域的同步,能高效率利用總線和緩解控制器長期占用總線,提高整個SoC的工作效率.

5)圖像傳感器[6]輸出圖像的最大分辨率為640 × 480 (VGA),最大刷新率為60 fps.若圖像輸出格式為RGB/YUV格式,則每個像素點為兩個字節,因此實際最大帶寬需求為(2 Byte × 640 × 480 × 60 ) /106 = 37 MB/s.而AHB總線帶寬為主頻×位寬,即200 MHz × 4 Byte = 800 MB/s,滿足視頻圖像采集帶寬需求.

1.1 ??SoC低功耗設計

SoC平臺采用big-little core平臺來實現能耗充分利用,大小核時鐘頻率分別為200 MHz和80 MHz,根據具體應用場景可利用軟件算法動態切換大小核.基于RISC_V指令集的處理器核RI5CY采用哈佛存儲器結構,具有4級流水線,同時擴展的硬件循環指令、乘累加、高級算術指令為并行超低功耗提供理論依據.除了指令實現低功耗外,RI5CY處理器核具有正常工作模式和睡眠模式,在睡眠功能使能后,處理器在空閑時進入睡眠模式,中斷和事件均會喚醒處理器.但中斷喚醒處理器后,處理器先處理中斷服務處理程序,處理完畢后若處理器空閑將再次進入睡眠模式,只有事件才能將處理器核永久喚醒,故動態功耗較低.系統中各外設IP模塊均具有獨立的門控時鐘控制,可通過關閉不必要的外設IP達到系統功耗最低.在本圖像采集系統設計中,相比于基于register的FIFO設計,采用基于latch的設計也有效降低了功耗和面積.

1.2 ??圖像采集系統總體結構

圖像采集系統主要由圖像傳感器OV7725、camera capture 控制器、I2C控制器、ANN加速器以及連接在menctrl 控制器上的LPDDR組成,如圖1所示.系統工作原理為:系統上電后,系統MCU利用I2C模塊使用標準SCCB(Serial Camera Control Bus)協議對圖像傳感器寄存器進行配置,設置工作方式.打開圖像采集控制器使能,系統圖像采集控制器對圖像數據信號進行采集,通過異步FIFO進行數據緩沖和同步兩側不同的數據傳輸速率,camera capture控制器以幀為單位將圖像數據寫至內存.寫完一幀圖像數據之后觸發中斷,隨后CPU對中斷進行處理.

1.3 ??圖像采集控制器設計

圖像采集控制器主要實現圖像傳感器輸出數據的采集,并與系統進行通信和交互.圖像采集控制器分為以下模塊:總線接口模塊(AHB MASTER模塊和 AHB Slave (CSR模塊))、采樣與同步模塊(Camera Capture )組成,結構如圖2所示.CSR(Control Status Register)模塊作為總線的Slave接口,接收系統控制配置.通過配置可在內存中設定三個數據區(ZONE1/2/3)用于存儲采集的圖像數據.圖像采集模塊 (Camera Capture)以幀為單位對圖像傳感器輸出的原始圖像數據進行采集,通過AHB MASTER模塊將圖像數據寫入相應的存儲區.每當完成一幀的數據采集并寫入存儲區后,CSR模塊的狀態寄存器會記錄DATA_OK,并向CPU發中斷請求.CPU對采集到數據進行消費后清除狀態寄存器對應的DATA_OK標志.每個數據區大小為一幀,控制器按ZONE1到ZONE3的固定順序查找可用數據區,若全部的數據區均不可寫,則產生錯誤中斷.

1.3.1 ??CSR (Control Status Register)模塊

CSR模塊主要為軟硬件交互接口模塊,用于CPU對圖像采集控制器的訪問和寄存器的配置.根據具體應用場景,設計了以下寄存器(部分略):

BASE_ADDR_ZONE1/2/3 : 內存中設置的三個數據區(ZONE1/2/3)基地址寄存器,AHB MASTER模塊根據該基地址和低位偏移對存儲器進行訪問.

RQCNT:此寄存器用于記錄接收緩沖異步FIFO中的有效條目數.

RQTH:用于設置接收緩沖滿閾值,當接收緩沖中的有效條目數大于或等于該閾值時,則記錄在狀態寄存器并向CPU發中斷請求.

IntEn:該寄存器用來設置各中斷使能.

Ctrl:控制寄存器.包括數據采集使能信號、場、行同步信號電平配置等控制信號.

1.3.2 ??Camera Capture模塊

Camera Capture模塊主要包括圖像傳感器采集接口模塊、異步控制信號同步模塊以及接收數據緩存FIFO模塊,其結構框圖如圖3所示.

寄存器的配置與圖像控制信號及數據信號之間為異步事件,因此需要硬件保證在切換控制寄存器中的控制信號時以一幀數據為邊界.Vsync、href有效電平極性的切換只有在數據采樣使能無效時才能軟件配置,故只需保證切換數據采樣使能時以幀為邊界.具體實現的電路圖如圖4所示.

數據采樣使能開啟前需要先配置場、行信號的有效極性,數據采樣使能開啟后,電路只在Vsync有效時對采樣使能寄存器進行更新(圖4中帶使能的觸發r_CaptureEnTrue).該信號同時作用于采樣數據接收使能信號(c_WrRcvData-En),硬件上保證正在接口傳輸的此幀圖像數據被忽略,從下一幀圖像數據開始采集.同理,電路保證了關閉數據采樣使能信號時正在采集的這幀數據被采集完,下一幀圖像數據開始被忽略.數據采樣使能信號、行、場控制信號形成新一幀圖像數據開始標志,并輸出至AHB MASTER模塊復位索引地址.此時,上一幀圖像數據采集完畢并存儲至相應的數據區中,新一幀圖像數據采集開始.

基于Latch的跨時鐘域異步FIFO模塊是數據緩沖操作的核心.圖像傳感器的圖像數據采集基于數據幀的突發操作,為提高總線利用率和傳輸速率,設計了8 × 128的接收數據緩沖FIFO.將像素圖像數據拼湊齊16Byte后使FIFO寫使能有效,以便總線產生(INCR4)突發請求.由于并不需要在像素時鐘下拍拍連續寫數據,故本設計中的FIFO采用Latch陣列實現,能有效減小芯片面積和功耗.設計中還采用N+1位格雷碼計數器模塊來產生空滿標志,在減小亞穩態出現概率的同時避免算術運算,提高了FIFO的速度.

1.3.3 ??AHB MASTER模塊

AHB MASTER 模塊是AHB總線的master接口模塊,該模塊用于發起對存儲器的訪問.針對圖像采集系統的應用場景,只需要發起對存儲器的寫操作.總線地址寬度和數據寬度均為32位,并支持總線提前中止傳輸(Early Burst Termination).模塊采用狀態機實現,狀態流程圖如圖5所示.

IDLE狀態:狀態機的初始狀態.在該狀態下,若接收緩存FIFO不空而且沒有協議錯,則跳轉至REQBUS狀態;若接收緩存FIFO不空,但有協議錯,讀取FIFO的數據.若FIFO為空,不進行操作.

REQBUS狀態:發起總線請求.該狀態下總線請求信號mHBUSREQ信號有效,并等待仲裁器授權總線使用權.若總線申請成功,則跳轉至REQESND狀態.

REQSEND狀態:命令和數據發送狀態.該狀態會維持至傳輸正常完成或傳輸提前中止.在圖像采集模塊中,設置四位Flitv發送指示,其中FIFO中的每32位對應Flitv中的一位.若某位為1,則表示該32位數據未發送.當狀態機進入REQSEND狀態時,若Flitv發送指示全為1,則總線的突發請求為INCR4;若突發操作被EBT(Early Burst Termination),MASTER會繼續發起總線請求.此時若Flitv發送指示只有一個1表明EBT后剩余一個32位數據未發送,此時發起SINGLE總線突發請求.若Flitv發送指示包含多個1表明EBT后剩余多個32位數據未發送,此時發起INCR總線突發請求.

ENDDATA狀態:最后數據發送狀態.此狀態中傳輸正常結束,讀取FIFO中的數據.當mHREADY有效時,狀態機返回至IDLE狀態.

2 ??仿真與驗證

圖像采樣控制器的設計使用Verilog HDL 語言實現.為驗證其功能的正確性,分別進行了系統級的功能仿真驗證和FPGA驗證.在仿真驗證中,編寫了模擬CMOS傳感器OV7725的行為功能模型(BFM),構建了軟硬件驗證平臺,利用Modelsim SE-64 10.2環境進行功能仿真,并利用Synopsys綜合工具DC (Design Compile)進行綜合,最后利用FPGA進行板級驗證.

圖6所示的是圖像采集模塊的仿真圖,可以看出,當圖像采集系統使能后,當前幀數據被忽略,圖像數據從新一幀開始采集.場信號有效后,行信號有效,圖像采集模塊在像素時鐘信號pclk上升沿進行圖像信號(data)的采集.

AHB Master總線寫數據至存儲器仿真圖如圖7所示.采集模塊將采集的圖像數據緩存于異步FIFO中,然后將第一幀圖像數據存在CSR設置的在存儲器LPDDR基址2202000的數據區.當寫完一幀數據后,圖像采樣模塊產生DATAOK_ZONE1(2/3)中斷.

仿真結果表明,該視頻圖像采集系統能夠很好地實現圖像數據的采集和數據傳輸.

利用Synopsys公司的Design Compile工具,采用SMIC 55nm CMOS工藝庫文件,在系統時鐘為200 MHz時對整個SoC芯片進行綜合.由綜合結果得到芯片功耗報告如表1所示,其中芯片的總功耗僅為24.419 mW,動態功耗為23.804 mW.

為了減小芯片面積和功耗,本文采用了基于Latch的FIFO設計,并在相同工藝下分別對基于Register的FIFO和基于Latch的改進FIFO的SoC芯片系統進行綜合,分別得到總功耗與含有FIFO的圖像采集模塊面積并進行比較,對比結果如表2所示.

FPGA驗證環境[7]包括Xilinx公司的7系列ARTIX-7 FPGA核心板和帶有LPDDR及FLASH的擴展板.其中ARTIX-7 FPGA核心板由FPGA芯片XC7A100T +128 Mb QSPI FLASH組成,擴展板包含FPGA IO擴展口、數據和控制信號接口、LPDDR、CMOS圖像傳感器OV7725以及FLASH芯片.

為驗證圖像采樣模塊的正確性,使用Xilinx的工具Vivado產生網表和bitstream文件,并用JTAG下載器下載至FPGA芯片XC7A100T中.利用連接在SoC系統中SPIMaster上的SPI顯示屏進行圖像顯示.如圖8所示的為FPGA圖像采集驗證結果.

FPGA時鐘管理模塊提供給SoC系統時鐘為50 MHz,板級提供給圖像傳感器OV7725的系統輸入時鐘為30 MHz.在I2C模塊配置圖像傳感器后,圖像采集系統穩定采樣并在較少CPU干預下實現數據存儲至LPDDR,數據傳輸帶寬為30 MB/s,滿足圖像視頻的傳輸速率要求.由顯示屏顯示結果可以得到,圖像采集系統采樣正確并存儲數據信息,圖像顯示效果較好且無失真.

3 ??結 ??語

本文針對物聯網SOC芯片圖像采集的特定應用,設計并實現了圖像采集控制系統.該圖像采集控制系統通過采集圖像傳感器的數據和控制信號,并通過改進的異步FIFO,實現了不同時鐘域的數據傳輸.仿真和驗證結果表明,該設計能很好地采樣圖像數據,并利用總線在較少CPU干預的情況下,以幀為單位將數據高效率傳輸至內存.由顯示屏顯示圖像的驗證結果可以得出,該采集系統采集的圖像質量好,畫面清晰,并具有操作過程簡單、靈活、方便等優點,驗證了該設計的可行性.

參考文獻

[1] ???MITIC M,STOJCEV M,STAMENKOVIC A Z M. An overview of on-chip buses[J]. Facta universitatis - series: Electronics and Energetics,2006,19(3):405—428.

[2] ??DUTT N,JANTSCH A,SARMA S. Toward smart embedded systems: A self-aware system-on-chip(SoC) perspective[J]. ACM Transactions on Embedded Computing Systems,2016,15(2):1—27.

[3] ???商婷婷. 基于MSP430的網絡化視頻監控系統的設計[J]. 電子設計應用,2007(9):110—111.

SHANG T T. Design of networked video surveillance system based on MSP430[J]. Electronic Design Application,2007(9):110—111. (In Chinese)

[4] ???周泉,馬俊,董亞男,等. 基于低功耗微控制器的圖像采集系統設計[J]. 電子測量技術,2014,37(3):77—81.

ZHOU Q,MA J,DONG Y N,et al. Design of image acquisition system based on low power microcontroller[J]. Electronic Measurement Technology,2014,37(3): 77—81. (In Chinese)

[5] ??ZIMMER M,BROMAN D,SHAVER C,et al. FlexPRET: A processor platform for mixed-criticality systems[C]// IEEE Real-time & Embedded Technology & Applications Symposium. IEEE,2014:101—110.

[6] ???OmniVision Technologies Inc.OV7725 color CMOS VGA (640×480) CAMERACHIPTM sensor omni Vision ■ with OmniPixel2TM technology,advanced information datasheet[R]. California: ALLDATASHEET,2007,Version 1.4. https://www.alldatasheet.net/view.jsp?Searchword=OV7725.

[7] ???李列文,桂衛華,胡小龍. 一種基于FPGA的低功耗、容錯狀態機設計方法[J]. 湖南大學學報(自然科學版),2010,37(6):77—82.

LI L W,GUI W H,HU X L. Low power consumption based on FPGA design method of fault tolerant state machine[J]. Journal of Hunan University(Natural Sciences),2010,37(6): 77—82.(In Chinese)

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合