並口,LVDS,MIPI,GMSL
1、並口
(1)OV9712和AR0130都是並口的
(2)並口的接口定義:參考AR0130的原理圖pdf
(3)並口傳輸的是CMOS電平信號(重點是非差分)
(4)並口sensor屬於較低端老舊的,新型高像素的都是MIPI/LVDS/HISPI等差分信號的
2、LVDS
(1)low voltage differential signal,低電壓差分信號
(2)接口由1組差分clock和若干組差分信號線組成,輸出串行數據信號
(3)LVDS主要用於視頻傳輸的2個領域:camera和主控、LCD和主控
(4)LVDS利用差分抗干擾能力,提升clock頻率從而提升帶寬,傳輸距離也更遠
(5)LVDS的數據線組數越多帶寬越大、clock頻率越高帶寬越大(犧牲抗干擾和距離)
(6)並口和LVDS之間可以互轉,但是需要專門的電平轉換芯片(類似於232和485)
3、MIPI(MIPI-CSI2)
CSI -- 相機串行接口 DSI -- 顯示串行接口
(1)MIPI: mobile industry processor interface,移動工業處理器接口
(2)MIPI接口由1組差分clock和1-4組差分信號線組成
(3)MIPI和LVDS雖然都是差分對信號,但是不兼容,不能直接對接
(4)MIPI的架構層次更分明,廣泛應用在手機平板等領域中,可以認為MIPI是LVDS的升級版
(5)MIPI的數據線組數越多帶寬越大、clock頻率越高帶寬越大(犧牲抗干擾和距離)
(6)MIPI和LVDS和並口之間均可以互相轉換,但是需要專門的電平轉換芯片
4、GMSL
GMSL(Gigabit Multimedia Serial Link),是串行器和解串器構成的傳輸鏈路。
串行器是為了將ISP處理過的並行信號傳輸到遠端(域控制器)。解串器在接收端(域控制器)。
並行傳送要求同一時序輸出與接收信號,而過分提升時鍾頻率會導致時序錯亂,信號線間干擾。因此,並行方式難以實現高速化。只有將並行數據串行化,才能夠遠距離且高速的傳輸數據。
5、總結
(1)老舊的、低端的、數據量小的就用電平信號;新的、高端的、數據量大的都用差分信號
(2)要通信,物理層、協議層、應用層都得能對接才行。
(3)因為歷史原因,很多行業會使用不同的接口標准,必要時需要去互相轉換
Sensor接口引腳復用設置
查看引腳定義框圖,找到相應設置寄存器,使用himm工具寫寄存器
在編譯文件系統時,會在加載驅動的腳本中對sensor的寄存器進行設置,使用himm工具直接寫寄存器,比如設置管腳復用(MIPI,i2c),時鍾頻率(sensor,I2c, vi...)等
什么是sensor?
sensor是一個很多功能模塊的集合。sensor接收光子,通過光電轉換,將光信號轉化為模擬量的電信號,然后通過模數轉換模塊,將模擬信號轉換為電信號。如果sensor內置isp模塊,會將數字信號做簡單的處理。處理過的信號通過sensor的接口(比如,並口,LVDS,MIPI, GMSL)將數據傳輸到SOC。
ISP
ISP模塊:ISP的實現可以在sensor內置,主SOC內置或外接ISP芯片。
ISP的作用:去壞點(去掉sensor中壞點數據),去噪(去除噪聲),demosaic(raw數據轉為RGB數據),3A(自動白平衡,自動對焦,自動曝光),gamma(亮度映射曲線,優化局部與整體對比度),旋轉(角度變化),銳化(調整銳度)等。
ISP的圖像質量調節及控制邏輯:
海思的sensor驅動框架
海思平台的sensor驅動主要工作在應用層,特定類型的sensor驅動會以庫的形式鏈接進應用程序中。(好處是靈活,對sensor進行更換或修改時,不需要重新編譯內核。當然效率沒有內核層驅動高。)
在系統初始化時,使用注冊回調的機制,都向 ISP 庫和 3A 算法庫注冊sensor控制函數,這些函數都以回調函數的形式存在。通過接口來初始化sensor,控制sensor,比如調節曝光時間,模擬增益,數字增益等。這些回調函數是底層的i2c驅動讀寫sensor寄存器來操作硬件的。
海思的體系中把sensor和3A、ISP實現為:指針掛接注冊的各自獨立模塊
海思ISP質量調節
Hi3518 + AR0130
確認硬件,確保sensor電源干凈。
這一步非常重要,這一步沒有搞好, 后面都是白費力氣。因為電壓紋波比較大會影響sensor像素點電荷波動,導致噪點變大,出現亮暗橫紋豎紋。
原理:sensor的AVDD電壓是sensor像素點電荷積累的供給電壓,這個電壓紋波比較大的話直接影響sensor像素點電荷積累波動,導致圖像噪點大,亮暗橫紋,豎紋。
測試方法:
1)用示波器測量sensor AVDD輸入電壓,紋波要在100mv內,電壓值等於sensor手冊標稱值。
2)把曝光值設置到最大,增益設為64倍,把鏡頭蓋在桌上,使圖像變黑,此時畫面是全黑的,如果上面有閃白點,那么說明sensor電源有問題。
3)慢慢的把鏡頭翹起一點,讓一點點光通過,此時畫面變亮,這個過程中仔細觀察是否有亮暗橫紋閃爍。
硬件沒問題了,那么就可以使用PQ工具調軟件了。
低照度效果調試:
夜視效果要求:在無城市光源的夜間環境下,在50米開外,能識別出人的輪廓,在通過圖像增強后,通過神經網絡能識別出人形。
首先布置一個黑環境,由於沒有實驗室環境,只能等到下班后,將燈光關閉,調試。實際調試在遠郊測試。
1、然后把曝光打到最大(一幀最大行-2),提高sensor模擬增益和ISP增益,使亮度比別人亮一點,一般模擬增益在16到32倍之間,然后再考慮ISP增益,總增益一般不超過64倍。增益太高等下后面噪點很難壓下去。
2、現在滿屏都是噪點
3、調整Sharpen,調整到一個比較高的清晰度,還有噪點沒關系,清晰度優先。
4、調整3D NR參數,可以先調節空域濾波相關參數,使靜態畫面下的雨點噪聲安靜下來,單數畫面出現移動物體就會出現拖影。適當降低空域濾波,增強時域濾波。控制變量,最終能調節到一個無拖影,去噪效果最優的3D參數。
5、選一個通透性好的Gamma曲線,把DCI功能開到最大,
6、如果圖像暗的地方有偏色可以調整sensor的黑電平或者ISP的黑電平改善
(當光線很暗時,模擬信號很弱,有可能不會被AD轉換出來,因此丟失細節。所以在AD轉換前,會給模擬信號一個固定的偏移量(即黑電平),以此來保留更多細節。調節黑電平不影響信號的放大倍數,而僅僅是對信號進行偏移)
7、此時圖像一般還有噪點,接下來就是微調各個模塊的參數,無限循環上面2到7步,優先保證清晰度無噪點,通透度,亮度可以放低點。
以上參考: Hi3518EV200圖像調試經驗分享