自在自线亚洲а∨天堂在线-中文字幕一区视频播放-扒开双腿猛进入喷水高潮叫声-欧美日本亚洲一区二区-老熟妇高潮偷拍一区二区-国产精品高清一区二区不卡-午夜色福利视频一区二区三区-亚洲国产成人精品福利在线观看-亚洲欧美成人一区二区在线电影

當前位置:機電之家首頁 >> PLC技術>> plc應用 >> 其它PLC應用 >> 基于可編程邏輯器的VGA顯示控制器的設計
基于可編程邏輯器的VGA顯示控制器的設計

隨著CCD(電荷耦合器件)和CMOS(互補金屬氧化物半導體)圖像傳感器制造工藝的發(fā)展,圖像傳感器的分辨率越來越高,假如要實時顯示圖像傳感器采集到的圖像,則要求圖像處理芯片有較高的運行速度,但由于需要處理的數(shù)據(jù)量太大,一般的數(shù)字信號處理器很難直接輸出分辨率為1024×768,幀頻為60 Hz的標準XGA信號。這就需要對DSP輸出的圖像數(shù)據(jù)進行處理,使圖像能夠在VGA顯示器上實時顯示。市場上固然也有一些專門圖像處理芯片,但其價格昂貴,且應用于特殊場合。本文設計的顯示控制器可以達到提升幀頻的功能,可使輸進分辨率為1024×768,幀頻為7.5HZ的YCbCr(4:2:2)圖像信號提升到幀頻為60HZ,并通過色空間轉換,將YCbCr(4:2:2)圖像信號轉換成RGB格式的標準XGA信號,同時產生符合VESA標準的XGA格式的行、場同步信號,輸出信號經(jīng)D/A轉換后可直接輸出到VGA接口,從而可使圖像傳感器采集到的圖像數(shù)據(jù)能夠在VGA顯示器上實時顯示。
  隨著微電子技術及其制造工藝的發(fā)展,可編程邏輯器件的邏輯門密度越來越高,功能也越來越強,由于FPGA器件的可并行處理能力及其可重復在系統(tǒng)編程的靈活性,其應用越來越廣泛。隨著微處理器、專用邏輯器件、以及DSP算法以IP核的形式嵌進到FPGA中,F(xiàn)PGA可實現(xiàn)的功能越來越強,F(xiàn)PGA在現(xiàn)代電子系統(tǒng)設計中正發(fā)揮著越來越重要的作用。本文設計的顯示控制器就是用VHDL語言描述,基于FPGA而實現(xiàn)的。該系統(tǒng)硬件框圖如圖1所示。
系統(tǒng)硬件框圖
  圖1 系統(tǒng)硬件框圖
  1 顯示控制器的設計
  1.1 工作原理
  圖像傳感器采集到的原始圖像數(shù)據(jù),經(jīng)過A/D轉換及DSP處理后,天生每秒7.5幀的圖像數(shù)據(jù),該數(shù)據(jù)是分辨率為1024×768的YCbCr(4:2:2)格式的16位圖像數(shù)據(jù)。DSP輸出到FPGA的信號有象素時鐘,行、場參考,圖像數(shù)據(jù)。FPGA在輸進的行、場參考都有效時,在輸進象素時鐘的同步下,接收圖像數(shù)據(jù),并送進到SDRAM中, 同時從另一個SDRAM 中讀取數(shù)據(jù),并通過色空間轉換,將YCbCr(4:2:2)信號轉換成RGB信號。當SDRAM 中寫滿一幀圖像數(shù)據(jù)時,控制器對兩個SDRAM進行讀、寫切換。由于寫數(shù)據(jù)速率小于讀數(shù)據(jù)速率,所以在往一個SDRAM寫滿一幀圖像數(shù)據(jù)的時間內,控制器能夠連續(xù)多次從另一個SDRAM中讀出另一幀圖像數(shù)據(jù),從而實現(xiàn)了進步幀頻的目的。FPGA輸出的RGB格式數(shù)據(jù)經(jīng)D/A轉換后,將數(shù)據(jù)轉換成模擬信號,配合行、場同步信號可使其在VGA顯示器上顯示。外部晶振輸進32.5MHZ的時鐘,該時鐘在FPGA內經(jīng)時鐘鎖相環(huán)倍頻后產生65MHZ的主時鐘,用于對兩個SDRAM進行讀寫和用來產生符合VESA標準的XGA格式的行、場同步信號。
  1.2 控制器的內部模塊先容
  本設計采用模塊化設計原則,按照現(xiàn)代EDA工程常用的“自頂向下“的設計思想,進行功能分離并按層次設計,用VHDL語言實現(xiàn)每個模塊的功能。該顯示控制器主要由以下七個功能模塊組成:
  用于從DSP接收數(shù)據(jù)的輸進緩沖模塊
  用于對兩個SDRAM進行讀寫切換的主控制器模塊
  SDRAM1的控制器模塊
  SDRAM2的控制器模塊
  用于產生標準XGA格式的時序發(fā)生器模塊
  用于從SDRAM中讀取數(shù)據(jù)并配合行、場同步輸出數(shù)據(jù)的輸出緩沖模塊
  用于將YCbCr(4:2:2)轉換成RGB格式的色空間轉換模塊。
  該顯示控制器的內部結構如圖2所示。上電后,顯示控制器首先對兩片SDRAM進行初始化,初始化結束后,其它模塊才開始工作。下面將具體先容各個模塊的功能及設計思想。
顯示控制器的內部結構
  圖2 顯示控制器的內部結構
  1.2.1 數(shù)據(jù)輸進緩沖模塊
  數(shù)據(jù)輸進緩沖模塊為深度為1024、寬度為16bit的異步FIFO (先進先出),寫時鐘為DSP輸出的12MHZ的象素時鐘,讀時鐘為經(jīng)時鐘鎖相環(huán)倍頻后的65MHZ的主時鐘,通過場下降沿檢測,來確保從一幀開始時接收數(shù)據(jù)。當輸進的原始圖像數(shù)據(jù)的行、場參考信號都有效時,該FIFO的寫使能有效,在輸進象素時鐘的同步下,開始接收數(shù)據(jù),寫地址計數(shù)器為0到1023的循環(huán)計數(shù)器,當其計數(shù)到511或1023時,給主控制器發(fā)讀信號,主控制器隨后產生FIFO的讀使能信號,使讀使能信號在連續(xù)的512個讀時鐘周期內一直有效,即可連續(xù)讀出512個數(shù)據(jù)。由于讀時鐘頻率大于寫時鐘頻率,所以不會產生數(shù)據(jù)寫滿溢出的現(xiàn)象。
  1.2.2 主控制器模塊
  該模塊為顯示控制器的主要控制部分,通過對輸進緩沖的讀請求信號和輸出緩沖的寫請求信號處理,來實現(xiàn)對兩個SDRAM的讀、寫切換。上電后,該模塊接收從輸進緩沖中讀出的數(shù)據(jù)并將其寫進到SDRAM 1中,同時從SDRAM2中讀出數(shù)據(jù),送進到輸出緩沖中,當然最初讀出的數(shù)據(jù)為無效數(shù)據(jù)。當SDRAM1中寫滿一幀圖像數(shù)據(jù),即1024×768個有效數(shù)據(jù)后,該模塊對兩個SDRAM進行讀、寫切換,即將接收數(shù)據(jù)寫進到SDRAM2中,同時從SDRAM 1中讀出數(shù)據(jù),一直按此規(guī)則進行讀、寫切換。兩個SDRAM的讀、寫地址發(fā)生器靠主控制器內部的計數(shù)器來實現(xiàn)。
  1.2.3 SDRAM控制器模塊
  該模塊首先完成對SDRAM 的初始化,初始化過程為:上電后等待200 us,然后對所有BANK發(fā)預充命令,接著發(fā)出八個自動刷新命令,然后進行模式設置,模式設置時將SDRAM設置成連續(xù)的全頁并發(fā)模式,即512并發(fā)。
  初始化結束后,SDRAM進進正常工作狀態(tài),預備接收讀、寫命令。當SDRAM在空閑狀態(tài)下,為保持其數(shù)據(jù)不丟失,必須對其進行定時刷新,一般要求64ms內刷新4096次,通常根據(jù)時鐘頻率,用計數(shù)器計時鐘脈沖到15.625 us時,發(fā)自動刷新命令,但是當SDRAM在進行讀、寫進發(fā)時,自動刷新命令會打斷讀、寫,從而造成數(shù)據(jù)丟失。該設計中,由于在64ms內對SDRAM至少進行4096次讀、寫操縱,所以可以不必對其進行刷新。
  由于SDRAM被設置玉成頁并發(fā),預充命令可停止并發(fā),所以當SDRAM讀、寫到511時,發(fā)出預充命令,來停止并發(fā),同時封閉當前行,為下一次讀、寫作好預備。SDRAM初始化后,其狀態(tài)轉移圖如圖3所示。
 
  1.2.4 時序發(fā)生器模塊
  該模塊為輸出行、場同步產生模塊,利用FPGA內部時鐘鎖相環(huán)倍頻后的65MHZ的主時鐘產生符合VESA標準的分辨率為1024×768、幀頻為60HZ的標準XGA格式的行、場同步信號,同時在行、場參考信號都有效時產生一個信號給輸出緩沖模塊,作為輸出緩沖的讀使能信號。根據(jù)VESA標準,分辨率為1024×768、幀頻為60HZ的標準XGA信號的象素時鐘為65MHZ,行同步信號的有效時間相當于1024個象素時鐘周期,同步頭寬度相當于136個象素時鐘周期,前肩寬度為相當于26個象素時鐘周期,后肩寬度為相當于162個象素時鐘周期。場同步信號的有效時間相當于768個行周期長度,同步頭為6個行周期長度,前肩為3個行周期長度,后肩為29個行周期長度。根據(jù)此標準,當行、場參考信號都有效時,一幅圖像可輸出1024×768個有效數(shù)據(jù)。

  1.2.5 輸出緩沖模塊
  該模塊為深度為1024、寬度為16bit的異步FIFO(先進先出),寫時鐘和讀時鐘同為65MHZ的主時鐘,SDRAM初始化結束后,該模塊先從SDRAM2中讀出1024個數(shù)據(jù),然后才使時序發(fā)生器模塊開始工作,當讀使能有效時,在讀時鐘同步下,讀地址計數(shù)器從0到1023循環(huán)計數(shù),當計數(shù)器計到100或700時,該模塊向主控制器模塊發(fā)寫請求命令,從而每次可從SDRAM中連續(xù)讀出512個數(shù)據(jù),由于在輸出行、場消隱期間,讀使能信號無效,所以,不會產生讀空現(xiàn)象。
  1.2.6 色空間轉換模塊
  YCbCr色空間到RGB色空間的轉換公式為:
  其中Y的范圍是(16,235),Cb、Cr的范圍是(16,240),為了防止相減后為負出現(xiàn)溢出,對轉換公式變形得:
  用VHDL語言描述小數(shù)乘法時,通常是將小數(shù)擴大2的整數(shù)冪次方倍后,取整進行乘法運算,然后將結果進行移位操縱。當需要對運算結果進行四舍五進時,可以在運算時加0.5,然后對運算結果取整。下面將對R的運算過程進行描述,運算精度取11位。
  R=(1.164Y+1.596Cr)-222.912+0.5
  = (1.164Y+1.596Cr)-222.412
  = (1/211) [(2384Y+3296Cr)-455499]
  將方括號中的運算結果右移11位,即可得到R的值。Cb、Cr的運算過程與此類似。
  色空間轉換模塊輸出24bit RGB(8:8:8)信號,該信號經(jīng)D/A轉換后,配合時序發(fā)生器模塊產生的行、場同步信號,即可在VGA顯示器上顯示。
  色空間轉換模塊之所以放在輸出緩沖模塊后,主要是為了減少輸進緩沖和輸出緩沖模塊中的先進先出及SDRAM的存儲空間,如在相同精度下,SDRAM存儲一幀圖像將會占用1024×768×24bit的存儲空間,色空間轉換模塊放在輸出緩沖模塊后,將會減少1/3的存儲空間。
  2 顯示控制器的硬件實現(xiàn)
  該顯示控制器是基于Xilinx公司的Spartan-IIE系列FPGA XC2S300E-6-PQ208C設計實現(xiàn)的。此FPGA邏輯資源豐富,其內有30萬個系統(tǒng)門,6912個邏輯單元(LC),1536個可配置邏輯快(CLB),64Kbit的塊RAM,146個可用的I/O口,4個數(shù)字延遲鎖相環(huán)(DLL)。塊RAM可實現(xiàn)大量數(shù)據(jù)的內部存儲,延遲鎖相環(huán)可對時鐘進行治理,可自動調整并消除輸進時鐘與FPGA內部時鐘之間的相位偏移,同時還可實現(xiàn)對時鐘的分頻、倍頻和移相。
  用于幀緩存的兩個SDRAM 的型號為HY57V281620HCST,此SDRAM 為Hynix公司生產的高速存儲器,其內有四個Bank,每個Bank的存儲空間為2M×16bit,可應用于需存儲大量數(shù)據(jù)的場合。
  3 結論
  本文設計的顯示控制用具有很強的靈活性,當輸進圖像格式改變時,只需在色空間轉換模塊做相應修改,便可實現(xiàn)不同格式圖像的VGA顯示。基于該顯示控制器而研發(fā)的高分辨率監(jiān)控攝像機、數(shù)字視頻展臺等產品可廣泛應用在教育、銀行、煤礦、交通、醫(yī)療等領域。
作者:未知 點擊:398次 [打印] [關閉] [返回頂部]
本文標簽:基于可編程邏輯器的VGA顯示控制器的設計
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《基于可編程邏輯器的VGA顯示控制器的設計》相關權利人與機電之家網(wǎng)取得聯(lián)系。
電子樣本

SN系列樣冊
:鞏經(jīng)理
:13915946763
:南京塞姆泵業(yè)有限公司
個人求購

鄔經(jīng)理 【求購】  LED分析...  2026-4-10
李先生 【求購】  綜合微機保...  2026-4-10
王坤 【求購】  石英碎片  2026-4-9
陳經(jīng)理 【求購】  攪拌設備的...  2026-4-9
周經(jīng)理 【求購】  遠大流量計  2026-4-9
蔡經(jīng)理 【求購】  歐姆龍傳感...  2026-4-8
呂經(jīng)理 【求購】  二手伺服變...  2026-4-8
曾經(jīng)理 【求購】  金龍羽電線  2026-4-8
VIP公司推薦