USB3.0視頻輸出方案

1.上位機通過USB3.0發送的視頻數據經過USBDataToRGB模塊,先把USB數據流轉換成RGB接口的視頻流
2.用RGB視頻流接口和FDAM控制fdma_controller的寫對接,先把數據緩存到DDR3裏面,進行三幀緩存
3.輸出PAL引擎OutPal模塊根據時序從DDR3讀取緩存的數據,輸出PAL接口的信號

存在問題:PAL爲標準的25幀視頻流,如何和上位機USB3.0的視頻幀匹配?

問題解決:
      USB接口的數據要和PAL輸出的數據量匹配,MFC上位機一次寫一幀圖片,當PAL啓動一幀圖片第一行時,啓動上位機發送下幀圖片(也就是FPGA使能接收),當上位機發送完一幀圖片時,我們FPGA可以讓USB禁止接收上位機的數了(也就是上上位機機),等PAL處理本幀圖片的第一行時,在啓動USB接收。這樣PAL輸出一幀圖像的時間爲40ms,USB發送給FPGA一幀的圖像的時間肯定要小於40ms,從而達到了同步。比如以三緩存設計爲例,我們PAL輸出第一幀圖片肯定是從地址2處(current frame 的上一張),USB3.0存到DDR3的第一幀圖片肯定是在地址0處,我們在PAL輸出地址2圖片的時候,地址0的圖片就開始準備好了(40ms內),等PAL輸出地址0處圖像第一行的時候,地址1處的圖像輸出開始準備。
    
    USB啓動發送機制:PAL啓動一幀圖片第一行時,FPGA使能USB接收
    PAL輸出機制:USB3.0肯定要比PAL快,PAL一幀一幀刷新DDR3裏面的數據就行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章