<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的LCD大屏幕拼接系統的設計

基于FPGA的LCD大屏幕拼接系統的設計

作者: 時(shí)間:2014-12-15 來(lái)源:網(wǎng)絡(luò ) 收藏

  3、算法的實(shí)現

本文引用地址:http://dyxdggzs.com/article/266848.htm

  3.1視頻分割算法的實(shí)現

  算法對數字視頻的處理采用并行處理方式, 首先要對輸入視頻像素流進(jìn)行分割處理, 得到四路具有完整視頻格式的子視頻, 并且輸出的四路子視頻具有相同的掃描規律, 即行同步和場(chǎng)同步;四路子視頻中, 當有一個(gè)視頻進(jìn)行場(chǎng)變換或行變換時(shí), 其它三路視頻也要同時(shí)完成對各自視頻的場(chǎng)變換或行變換;當顯示屏在對屏上的第一行像素點(diǎn)進(jìn)行掃描時(shí),其余各顯示屏也都在對各自屏上的第一行像素點(diǎn)進(jìn)行掃描。盡管掃描規律一致, 但每個(gè)子屏幕所顯示的視頻圖像內容卻是不同的。

  (1)片外SRAM分時(shí)切換: 所設計視頻分割算法通過(guò)在外部SRAM 中對輸入視頻像素數據幀進(jìn)行緩存,因為要進(jìn)行不同順序的讀、寫(xiě)操作。為了保證對數據進(jìn)行讀寫(xiě)處理的連續性, 即對RAM的寫(xiě)入和讀出不發(fā)生時(shí)間上中斷, 因此須使用兩組SRAM進(jìn)行讀、 寫(xiě)分時(shí)切換操作, 如圖2 所示。

  

圖2 SRAM讀寫(xiě)切換示意圖

 

  圖2 SRAM讀寫(xiě)切換示意圖

  在處理算法中使用了A、 B兩組像素數據存儲區, 用以記錄單幀的視頻像素數據。 的分時(shí)切換邏輯是依據輸入視頻流的場(chǎng)同步控制信號VSync發(fā)生由高電平到低電平的轉換, 以此作為新數據幀到來(lái)的標識。場(chǎng)同步控制寄存器Last-VSync 存儲的是像素流中前一個(gè)像素點(diǎn)的場(chǎng)同步控制信息,如果 LastVSync 為高電平“1”且當前像素點(diǎn)的場(chǎng)同步信號VSync 為低電平 “0” , 則表示新的像素幀開(kāi)始。那么幀存儲器選擇寄存器ReadBank則取反, 從而提示數據寫(xiě)入和讀出控制邏輯進(jìn)行讀/寫(xiě)幀緩存的切換;相反,如果場(chǎng)同步控制寄存器LastVSync 與當前像素點(diǎn)的 VSync 值同時(shí)為有效“1” ,即表示沒(méi)有新的像素幀的到來(lái), 幀存儲器選擇寄存器不發(fā)生變化。 這樣將輸入數據輪流分配到這兩組幀緩沖存儲器。即可實(shí)現對輸入視頻像素流的無(wú)縫緩沖與處理。

  (2)子視頻同步控制獲?。?輸入視頻圖像在一幀內的行同步控制信號(HSync)和場(chǎng)同步控制信號(VSync)與輸出的四路子視頻的行同步控制信號及場(chǎng)同步控制信號并不一致,因此需要在算法中加入一個(gè)參考視頻像素流,用于提供子視頻行場(chǎng)同步控制信息; 該參考視頻流不包含像素點(diǎn)的R、 G、 B數據信息, 但滿(mǎn)足輸出子視頻流所需要的行、 場(chǎng)同步控制信號的時(shí)序特征。在形成的單幀視頻圖像中其水平方向和垂直方向像素點(diǎn)個(gè)數為輸入視頻像素點(diǎn)個(gè)數的一半,視頻刷新頻率與輸入視頻保持一致。

  視頻流的控制邏輯如圖 3 所示, 過(guò)程如下:第1 級,將參考視頻流復制成4個(gè)子視頻流(Split4), 第2級是對每一個(gè)視頻像素流地像素坐標增加偏移量(dx, dy), 使其對應不同的子視頻像素點(diǎn)的顯示位置,例如,對第2 個(gè)子視頻, 由于它要讀取輸入視頻的右上方位置的視頻圖像數據,設置其橫向偏移量為Width/2 和縱向偏移量為0,其它的子視頻與之類(lèi)似。復制出的四路參考視頻要轉換成串行像素流,輸入到幀緩存讀取像素數據,第3級操作就需要改變它們的像素周期,使子視頻在每4 個(gè)像素周期內輸出一個(gè)有效的像素數據, Cycles為預設置的控制像素周期(Cycles設置為 4), 使有效像素數據的時(shí)鐘頻率與子視頻像素頻率相同。最后,對四路參考視頻像素流作不同的延時(shí)處理, 再經(jīng)過(guò)像素流融合(MUX4)為串行的視頻像素流。這樣把并行像素流轉為串行像素流,串行像素流讀取一幀像素的時(shí)間與輸入視頻像素流寫(xiě)入一幀像素的時(shí)間是相等的。像素流融合操作對輸入的四路視頻, 通過(guò)設置控制參數(control), 在不同時(shí)鐘下選取帶有偏移量的視頻像素點(diǎn)。

  

圖 3 視頻流的控制邏輯圖

 

  圖 3 視頻流的控制邏輯圖

  3.2視頻插值放大算法的實(shí)現

  視頻插值放大模塊包含了坐標計算單元、加權系數產(chǎn)生器、垂直插值單元、虛擬像素緩存器與水平插值單元,如圖4所示:

  

圖3  插值放大模塊的框圖

 

  圖3 插值放大模塊的框圖

LCD顯示屏相關(guān)文章:lcd顯示屏原理


lcd相關(guān)文章:lcd原理


關(guān)鍵詞: FPGA LCD

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>