## 什麼是downlink數據 downlink指的是相機傳輸到host採集卡的高速鏈路,其中包含瞭如下類型的數據: 1、Stream Data 2、Trigger Ack, Trigger; 3、Ack (reply data); 4、Event, Heartbeat ![](https://i ...
什麼是downlink數據
downlink指的是相機傳輸到host採集卡的高速鏈路,其中包含瞭如下類型的數據:
1、Stream Data
2、Trigger Ack, Trigger;
3、Ack (reply data);
4、Event, Heartbeat
downlink packet 數據類型
和uplink的低速數據一樣,都使用packet的方式進行傳輸,以packet 作為最小單位,其中包含down link的所有數據類型indication
downlink 中的圖像數據 stream data怎麼傳輸呢?
首先,packet會標識當前數據是否傳輸的是stream data數據,其次需要看stream data的傳輸方式。
下圖標識了stream 圖像數據的傳輸,可以看出,圖像數據被截斷成了若幹個packet 進行傳輸,具體截斷的方式由device 決定
這裡2個地方要註意
1、stream ID指示當前packet數據應該緩存到哪一個buffer中去,實際應用中會很少見到,比如一個相機裡面有2個感測器,每個感測器傳輸的數據占用1個stream id,用以區分數據來源;
2、CRC校驗時,stream data中的K碼 K28.3會用D28.3替代進行CRC校驗,具體校驗方法,參考我的另外一篇博客 https://www.cnblogs.com/xingce/p/17422472.html ;
stream data格式
通常的圖像傳輸如下信息
1、header 圖像尺寸,ROI區域,像素格式,掃描方式等信息;
2、line 圖像數據;
packet中的stream 數據會以K28.3開頭,然後加上傳輸類型信息
以area掃描圖像的header為例,格式如下,只列出了部分信息:
根據上述信息,就可以知道當前圖像的詳細信息;
如果是多個LANE,如何組織數據呢?
永遠以第一條LANE 為起點,按照如下方式組織數據
這樣HOST就可以正確的解析出各種數據了。
由此可見,downlink 介面的數據首先要根據packet類型做區分,然後不同類型的數據送到不同的邏輯完成進一步處理,比如control的ack回應信息,需要送給control channel完成處理,stream 數據則送給stream data channel完成處理,然後輸出圖像的信息和dma數據給到用戶邏輯;