《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的LCoS驅動和圖像處理系統設計
基于FPGA的LCoS驅動和圖像處理系統設計
摘要: 相較于透射式LCD,LCoS具有光利用率高、體積小、開口率高、器件尺寸小等特點,可以很容易地實現高分辨率和微顯示投影。采用彩色LCoS屏顯示基于RGB的彩色圖像,經過光學成像系統投影到接收屏上,實現計算全息圖像的三維顯示。
Abstract:
Key words :
  基于空間光調制器的計算全息三維顯示技術,目前常采用透射式LCD和反射式LCoS作為空間光調制器,以改變光經過空間光調制器(SLM)后的空間相位和振幅分布,達到對光信息的調制。傳統的基于透射式LCD空間光調制器的計算全息三維顯示系統,其成像光路復雜,而且必須依賴計算機進行數據發生、采集以及處理,這就限制了系統應用的靈活性,不便于推廣。

  相較于透射式LCD,LCoS具有光利用率高、體積小、開口率高、器件尺寸小等特點,可以很容易地實現高分辨率和微顯示投影。采用彩色LCoS屏顯示基于RGB的彩色圖像,經過光學成像系統投影到接收屏上,實現計算全息圖像的三維顯示。

  基于FPGA的顯示系統有以下優勢:第一,LCoS尺寸小,便于實現微投影,利用可靈活編程的FPGA器件作為驅動控制器,這樣就可以將其做成像普通投影儀一樣的微型投影設備,使計算全息三維顯示擺脫了計算機和復雜光路的束縛,具有了更高的靈活性,為其走出實驗室提供了條件。第二,因為在傳統空間光調制器上得到的圖像里含有物波和參考光的復共軛像,形成了噪聲,在FPGA上可以實現圖像濾波去噪,使得到的圖像更清晰。第三,FPGA是基于可編程邏輯單元的器件,當經過綜合、布局布線、時鐘約束的代碼燒錄到FPGA器件后,FPGA就將算法代碼硬件化了,可以作為專用芯片工作,其內部信號延時完全是硬件級傳輸延時。在處理數據搬移和復雜的數學運算以及一些循環操作時,例如圖像的FFT變換,FPGA硬件運算要比軟件運算快得多,即利用FPGA器件實現對軟件算法的硬件加速。

  基于以上原因,本文設計了基于FPGA的LCoS驅動代碼及圖像的FFT變換系統,為計算全息三維顯示圖像處理和顯示提供了硬件平臺。

  1 系統設計

  1.1 系統模塊框圖:

  該系統采用CycloneⅢ EP3C5E144C8,該芯片有5 136個LE,95個用戶I/O,2個PLL,以及46個嵌入式乘法器和423 936 b的內部邏輯寄存器。以它豐富的資源,完全可以作為LCoS的驅動控制器件。顯示屏采用Himax的反射式LCoS屏HX7308,其分辨率為1 024×768,可以支持256級灰度顯示,具有內置的行場驅動電路,在外部輸入時鐘的上升沿和下降沿分別接收8b×4dots圖像數據,這保證了場頻可高達360 Hz。

  系統的整體框圖如圖1所示。

c.JPG

  1.2 PLL及系統復位模塊

  采用Altera的鎖相環IP核,外部輸入時鐘為20 MHz,經倍頻后得到其他各模塊的驅動時鐘,以及LCoS的驅動時鐘信號。為防止系統異步復位時寄存器出現亞穩態,設計了PLL的前級和后級D觸發器。因為鎖相環的locked引腳在鎖相環穩定輸出后才會跳變為高電平,所以為保證其他模塊得到穩定的時鐘信號,將locked引腳和外部輸入復位信號rst_n相與后作為整個系統的復位信號。

  1.3 單口ROM模塊

  利用FPGA內部的M9K存儲器資源實現的單口ROM作為源圖像的數據存儲器。將分辨率為176×144(QCIF)的256階灰度位圖圖像初始化到單口ROM里,所需數據深度為25 344 B。當異步FIFO沒寫滿時,單口ROM將按圖像存儲地址依次輸出圖像數據給FFT核做快速傅里葉變換。經過處理的圖像數據暫存到FIFO)里,等待行場時序控制器模塊取用。

  1.4 異步FIFO模塊

  按其數據地址最高2位分為4個區間,讀/寫指針分別對某一區間操作,當讀/寫指針相等時通過譯碼器產生FIFO已讀空或者已寫滿標志信號。為避免地址信號變化時出現冒險競爭現象,寫地址和讀地址指針都采用格雷碼編碼。在讀空比較子模塊和寫滿比較子模塊里加入了FI-FO“將空”和“將滿”檢驗機制,有效地保證了FIFO正確無誤的工作。在寫時鐘wrclk的上升沿,異步FIFO每個地址對應的存儲單元里被寫入8bits數據,在讀時鐘rdclk的上升沿,FIFO四塊連續地址上的32bits數據輸出,即讀FIFO的速率相當于寫FIFO速率的4倍速。

  1.5 I2C狀態機模塊

  沒有滿足I2C配置條件時,狀態機處于空閑狀態,當滿足I2C配置條件時,狀態機在狀態標志位的控制下依次輸出配置地址和配置數據。當數據配置結束時,狀態機產生停止信號,并拉高輸出引腳iic_config,通知行場時序控制器模塊開始工作,這樣保證了LCoS屏能在正確配置下工作。狀態機工作原理如圖2所示。

d.JPG

  1.6 行場時序控制器模塊

  內設水平計數器hcnt和垂直計數器vcnt。由于顯示屏每個時鐘周期鎖存8個像素值,所以顯示1 024個像素值所需行周期為128個Tclk(行時鐘周期)。當hcnt計數器值為HBP時表示行有效顯示區域開始,hcnt計數器值為HBP128時表示行有效顯示區域結束,hent計數器值為HSYN-Ccycle時,完成一行顯示,vcnt計數器加1。當vcnt計數器值為VBP時,垂直有效顯示區域開始,當vcnt計數器值為VBP768時,垂直有效顯示區域結束,當vcnt計數器值為VSYNC cycle時,完成一幀圖像顯示。行場時序關系如圖3所示。

e.JPG

  1.7 FFT模塊

  FFTV 9.1 IP核采用Cooley-Tukey基-2 DIF算法,其FFT變換原始公式為:

f.JPG

  因為采用了數據流模式,經過變換的數據可以連續輸出,即輸出數據不會因為圖像數據的輸入而停止數據輸出,同時輸入數據也不會因為處理后的數據正在輸出而停止繼續輸入,保證了數據轉換和傳輸的連續性,提高了數據處理的速度和效率。因為FFT通過異步FIFO向屏幕輸出數據,而FIFO的讀數據是寫數據的4倍速,假如讀時鐘和寫時鐘都為100 MHz,那么有可能會在某一行里出現FIFO被取空,而無法向屏幕輸出有效數據的情況。為保證FIFO向屏幕輸出圖像數據的連續性,就要充分利用VBP,VFP,HBP和HFP的時間,在每一行的開始,如果FIFO沒滿,那么啟動FFT進行數據轉換。若圖像的分辨率為M×N并且在VBP期間FIFO已被寫滿,則FIFO,FFT核、行場周期以及圖像分辨率間關系的計算公式如下:

g.JPG

  式中:Deepth是異步FIFO的數據深度,單位為B;THSYNC cycle是行周期;Tclk是異步FIFO,FFT核、行場時序控制器模塊的驅動時鐘周期。當△>O時,系統會連續實時地處理圖像;當△0。

  2 實驗仿真結果和測量結果分析

  圖4是采用Modelsim 6.5b進行功能仿真的結果。利用QuartusⅡV9.1自帶的TimeQuest Timing Analyzer進行時序約束后,在實驗板上的場信號測量結果如圖5所示,場掃描頻率已達到368 Hz,經測量其他引腳輸出信號也均滿足時序要求。由于FPGA器件資源限制,對圖像做了256點FFT變換,經實驗驗證,該設計能夠實現圖像的實時處理,代碼達到了預期設計效果。

a.JPG

b.JPG

  3 結語

  采用Himax的LCoS屏HX7308BTJFA作為顯示器件,其尺寸為14.43mm×10.69mm,大小可跟1枚1元硬幣相比擬,很容易實現三維投影微顯示。因VerilogHDL有很強的可移植性,便于以后對代碼的升級和維護。FPGA內部資源畢竟有限,文中敘述可知,若顯示分辨率較大的圖像,光靠內部資源實現異步FIFO是不可能的,所以在此提出兩種方案:第一,換一片性能較高的芯片,滿足寫FIFO速率等于讀FIFO速率的要求,這樣就能達到讀/寫數據的動態平衡,保證了圖像的連續顯示;第二,采用外部存儲器SDRAM存儲源圖像和FFT處理后的數據,采用DDRII技術讀取數據,使讀/寫FIFO的速率匹配。受FPGA芯片資源限制,該設計采用分辨率為176×144的圖像進行了系統功能驗證,尚未實現圖像濾波以及FFT逆變換,未來可將代碼移植在高端的FPGA芯片上繼續開發數據處理功能。



 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: a级毛片免费网站 | 国产精品久久久久久亚洲伦理 | 日韩三级观看 | 亚洲免费成人在线 | 久久香蕉国产线看观看亚洲片 | 一区二区视频在线观看 | 国产 另类 在线 欧美日韩 | 激情五月婷婷综合网 | 亚洲成年人网址 | 日本午夜在线 | 亚洲成av人片在线观看 | 男女毛片视频 | 亚洲欧美精品一区天堂久久 | 500短篇超污多肉推荐短视频 | 国产精品久久精品视 | 深夜福利日韩 | 免费中文字幕在线观看 | 亚洲午夜一区二区三区 | 国外性xxxnxxxf视频 | 国产专区青青草原亚洲 | 伦理 在线 | 国产真实乱偷人视频 | 两个人看的www视频中文字幕 | 欧美日韩亚洲另类 | 日日噜噜夜夜狠狠久久丁香婷婷 | 国产亚洲欧美日韩在线观看不卡 | 4k岛国精品午夜高清在线观看 | 91欧美秘密入口 | 欧美日韩大尺码免费专区 | 免费看男人靠女人靠到爽 | 天天躁日日躁狠狠躁综合 | 狠狠亚洲丁香综合久久 | 国产一区三区二区中文在线 | 九九视频在线观看 | 免费在线看黄网址 | 欧美日韩一区二区视频免费看 | 成人网18免费网 | 一区二区三区成人 | 日日干日日操 | 久久免费特黄毛片 | 97夜夜|