【Camera專題】你應該瞭解的Camera HW-硬件知識

一.吐槽

做爲一個雞凍工程師,呸,打錯了,是驅動工程師,最基本的硬件基礎知識你必須得懂吧。html

舉個栗子【敲黑板,重點來了啊】ide

1.你要點亮Camera,你得知道你用的是什麼接口的,是MIPI的仍是Parallel的?性能

2.數據傳輸有哪些方式?3d

3.Camera 的成像原理是什麼?調試

等等code

說點題外話orm

1.做爲一個小白,我爲啥要寫一個專題嗎?cdn

我想,htm

一來是記錄本身的成長過程吧,記錄看過的資料,作了什麼思考。blog

二來是激勵本身不斷前行吧。Just keep moving!

若是有天我不幸真的成爲了Camera【磚家】,那麼這些就是我自學的成長曆程,也許對後人有必定的幫助;

若是我還一直是個鹹魚,那麼這個專題就是我努力而不得的見證。

我很喜歡的一句話: If you can’t fly, then run; if you can’t run, then walk; if you can’t walk, then crawl, but whatever you do, you have to keep moving forward.

我不知道30歲以後,我是否能立業,是否依舊迷茫!

總之,不管如何,咱們天天都要向前走,即便這個步子很小,但至少我一往無前了!

廢話少說,本篇文章知識點

二.知識點

1.Camera的成像原理

景物經過鏡頭(LENS)生成的光學圖像投射到圖像傳感器(Sensor)表面上,而後轉爲模擬的電信號,通過 A/D(模數轉換)轉換後變爲數字圖像信號,再送到數字信號處理芯片(DSP)中加工處理,再經過 IO 接口傳輸到 CPU 中處理,經過 LCD 就能夠看到圖像了

圖1
這個成像原理仍是很重要的,對將來咱們分析問題會有很大的幫助。

圖像傳感器(SENSOR)是一種半導體芯片,其表面包含有幾十萬到幾百萬的光電二極管。光電二極管受到光照射時,就會產生電荷。

目前的 SENSOR 類型有兩種:

1.CCD(Charge Couple Device),電荷耦合器件,它是目前高像素類 sensor 中比較成熟的成像器件,是以一行爲單位的電流信號。

2.CMOS(Complementary Metal Oxide Semiconductor),互補金屬氧化物半導體。CMOS的信號是以點爲單位的電荷信號,更爲敏感,速度也更快,更爲省電

ISP 的性能是決定影像流暢的關鍵,JPEG  encoder 的性能也是關鍵指標之一。而 JPEG encoder 又分爲硬件 JPEG 壓縮方式,和軟件 RGB 壓縮方式。

DSP 控制芯片的做用是:將感光芯片獲取的數據及時快速地傳到 baseband 中並刷新感光芯片,所以控制芯片的好壞,直接決定畫面品質(好比色彩飽和度、清晰度)與流暢度。

2.Image Sensor類型(Camera的數據格式)

a) YUV Sensor(低端貨)

YUV Sensor輸出的Data格式爲YUV,圖像的效果處理使用Sensor內部的ISP,BB端接收YUV格式的data後只進行格式的轉換,效果方面不進行處理,因爲Sensor內部的ISP處理能力有限,且YUV Sensor的數據量比較大(YUV422的格式1個pixel2個byte),通常Size都比較小,常見的YUV sensor都是5M如下

b) Raw Sensor(稍微好一點的貨,優點明顯)

Raw Sensor輸出的Data格式爲Raw,圖像的效果處理使用BB端的ISP,BB端接收Raw data後進行一系列的圖像處理(OB,Shading,AWB,Gamma,EE,ANR等),效果方面由BB端控制,須要針對不一樣的模組進行效果調試,Raw sensor是目前的主流,數據量比YUV Sensor小(RAW10 格式的sensor 1個pixel 10個bit)使用平臺ISP處理,能支持較大的size

3.硬件接口

簡單說來,Camera的接口分爲並行和串行兩種方式,而目前MTK平臺主要支持的串行方式爲mipi接口,

Parallel接口mipi接口的介紹能夠參考下圖

圖2
圖3

雖然硬件接口有Parallel接口mipi接口,實際上MIPI是主流,基本已經看不到Parallel的身影了! 後面咱們會詳細講解MIPI接口的硬件原理圖!

4.常見基本概念

咱們這的BB端-本來是是baseband基帶的意思,這裏理解成CPU便可

a) 三路電壓

camera包含的三路電壓爲模擬電壓(VCAMA),數字電壓(VCAMD),IO口電壓(VCAMIO)

b) I2C信號

BB與Sensor端經過I2C來通訊(讀寫寄存器),包括SCL(I2C Clock) SDA(I2C Data)信號

c) mipi幾條lane

mipi data是成對的差分信號,MIPI_RDN和MIPI_RDP,有幾對這樣的pin腳,則說明是幾條lane,同一顆sensor因爲register setting不一樣,輸出的信號有多是2 lane或者4lane等

d) parallel高低八位

Parallel接口通常Data有10根pin,分別叫作Data0~Data9,Parallel sensor輸出的data信號是8根pin時,這八根pin接到的是Data0~Data7仍是Data2~Data9,須要配置正確,叫作接到高八位或者低八位,接錯了可能產生以下現象

e) Data Format Sensor輸出的數據格式,對於YUV Sensor來講,Data Fomat通常有YUYV,YVYU,UYVY等,配置不對可能會致使顏色和亮度錯掉,例以下圖
對於Raw Sensor來講,Data Format就是First Pixel的顏色,分爲R,Gr,Gb,B,配置不對會致使顏色錯誤

f) MCLK

BB提供給Sensor的外部clock

g) PCLK

Parallel接口的Sensor輸出的clock,該clock變化一次,data更新一次

h) mipi 信號

mipi信號包括mipi clock和mipi data,該信號是高速信號,用來傳輸mipi數據包

5.硬件電路原理圖

(以最近作的TIMOVI_S9016爲例子)

TIMOVI硬件原理圖
我第一次接觸原理圖的時候,也是一臉懵逼,內心就在想,這他媽什麼鬼,密密麻麻那麼多線,後來看多了,也就駕輕就熟了。

原理圖分析(引腳做用)

1.供電部分

camera包含的三路電壓爲模擬電壓(VCAMA),數字電壓(VCAMD),IO口電壓(VCAMIO)

a) VCAMD 就是 DVDD 數字供電,主要給 ISP 供電

b) VCAM_IO 就是 VDDIO 數字 IO 電源主要給 I2C 部分供電;

c) VCAMA 就是 AVDD 模擬供電,主要給感光區和 ADC 部分供電;

d) VCAM_AF 是對 Camera 自動對焦馬達的供電

2.Sensor Input部分

a) Rest腳:用於復位和初始化

b) PDN腳:Camera工做狀態控制:1.normol work(工做) 2.standby(待機)

c)Mlck腳: 即MasterClock腳,由BB提供給Sensor的外部clock

3.I2C部分

BB與Sensor端經過I2C來通訊(讀寫寄存器),包括SCL(I2C Clock) SDA(I2C Data)信號

4.MIPI部分

mipi信號包括mipi clock和mipi data,該信號是高速信號,用來傳輸mipi數據包。

mipi data是成對的差分信號,MIPI_RDN和MIPI_RDP,有幾對這樣的pin腳,則說明是幾條lane,同一顆sensor因爲register setting不一樣,輸出的信號有多是2 lane或者4lane等。

1.MIPI_RDN0和MIPI_RDP0:用於數據傳輸

2.MIPI_RDN1和MIPI_RDP1:用於數據傳輸

所以是2lane的

另外

MIPI_RCN和MIPI_RCP:時鐘信號

圖中漏標

圖中漏標了一個VIO18_PMU:用於拉高。

路漫漫其修遠兮,吾將上下而求索。

以上是我看資料過程當中,以爲應該掌握的Camera硬件基礎知識!

參考文檔

1.MTK 資料

2.MTK平臺camera(攝像頭)調試教程要點

相關文章
相關標籤/搜索