<del id="dhfrq"></del>

    1. <tr id="dhfrq"></tr>
      成人午夜激情在线观看,国产精品一线天粉嫩av,99精品国产综合久久久久五月天 ,一卡2卡三卡4卡免费网站,国产高清在线男人的天堂,五月天国产成人AV免费观看,67194熟妇在线观看线路,成人无码潮喷在线观看
      現在位置:范文先生網>理工論文>電子通信論文>基于FPGA的LCD&VGA控制器設計

      基于FPGA的LCD&VGA控制器設計

      時間:2023-02-20 23:16:10 電子通信論文 我要投稿
      • 相關推薦

      基于FPGA的LCD&VGA控制器設計

      摘要:介紹了基于FPGA的圖形式LCD&VGA控制器的設計,詳細討論了用VHDL設計行場掃描時序的方法,這種設計方法稍作改動便可產生任意行場掃描時序,具有很好的可重用性。該控制器已成功地在某型飛機座艙圖形顯示系統中使用。

          關鍵詞:儀表裝置 LCD VHDL FPGA VGA

      飛機座艙圖形顯示系統已發展到第六代,即采用有源矩陣彩色液晶顯示器AMLCD(Active Matrix Liquid Crystal Display)。當前高分辨率的軍用AMLCD顯示模塊還只能依靠進口,且控制電路板須安裝在該顯示模塊提供的機箱內。這種安裝方式對AMLCD控制電路板的尺寸要求高,要求盡可能減少所設計電路板的尺寸。在筆者設計的新一代飛機座艙圖形顯示系統中使用了大規模現場可編程門陣列FPGA(Field Programmable Gata Array),這種設計方式可以將以前需要多塊集成芯片的電路設計到一塊大模塊可編程邏輯器件中,大大減少了電路板的尺寸,增強了系統的可靠性和設計的靈活性。本文詳細介紹了已在實際項目中應用的基于FPGA的圖形式AMLCD控制器設計,這種設計方法稍作修改即可應用于常見VGA視頻接口電路的設計。

      1 圖形顯示系統簡介

      圖1是飛機座艙圖形顯示系統結構框圖。圖中處理器采用AD公司的ADSP21061芯片,AMLCD采用Korry公司的KDM710全彩色液晶顯示模塊,該模塊為5×5英寸、600×600分辨率彩色液晶顯示模塊,24位數字RGB輸入。兩個幀存A和B采用IDT公司的71V424高速異步靜態RAM,系統采用兩個幀存輪流操作的方法:當DSP向其中一個幀存寫象素時,由FPGA構成的幀存控制器將另一個幀存中的象素順序讀出送給AMLCD,反之亦然。圖形顯示系統通過IDT公司的71V04雙口RAM接收主機的顯示信息。圖1中的幀存控制器和視頻控制器由Xilinx公司的SpartanII芯片XS2S50實現。
      (范文先生網www.ycxgx.cn收集整理)
      2 KMD710顯示模塊

      如圖1所示,美國Korry公司提供的KDM710全彩色液晶顯示模塊接口信號主要如下幾組:3個8位RGB數字信號、行同步信號HSYNC、場同步信號VSYNC、數據使能信號DATA_EN和點時鐘輸入DCLK。根據AMLCD數據手冊所需求的時序,確定掃描時序和相應的時序參數如圖2所示。一般,圖形終端顯示器掃描制式與廣播電視的標準有點不同,須根據顯示模塊所提供的時間要求來確定掃描時序,其中的行場同步的前后肩,可以根據需要進行微調,一般為了防止每行的第一個象素丟失,要求行同步后肩C與行同步脈沖寬B盡量相等。圖2中的點時鐘為20MHz,行周期為650個時鐘周期,場周期為615個行周期(場頻為50Hz)。

      3 LCD&VGA控制器設計

      設計行場掃描時序,一般有兩種方式:查找表方式和編程邏輯方式。查找表方式主要由存儲芯片構成,如SRAM、EPROM、PORM等。使用時,先根據所要產生的時序在存儲單元寫入相應的數值,查表時再從表內讀出時應存儲單元的數值,以形成掃描時序。掃描時序查找表分為行掃描時序查找表和場掃描時序查找表。場掃描時序查找表的輸入時鐘由行同步脈沖提供。用查找表形成時序的方法存在體積大、計算煩瑣的缺點。隨著大規模邏輯芯片的出現,利用編程邏輯方法產生行場掃描時序是一個發展方向。這種方法具有電路簡單、功能強、修改方便、可靠性高等優點。圖3為LCD控制器的框圖。

      在本設計中,點時鐘DCLK由處理器DSP的系統時鐘40MHz經數字鎖相環二分頻得到。點時鐘驅動行時序生成器,產生圖2所示的行同步信號HS和行消隱信號HB。為避免毛刺,控制器設計采用同步設計方法,如圖3所示,行同步信號HS通過一個微分電路,產生一個點時鐘周期寬的場時序生成器使能信號。在使能信號有效時,場時序生成器開始計數,并產生場同步信號VS和場消隱信號VB。行消隱信號HB和場消隱信號VB相與后即為數據使能信號DATA_EN。該數據使能信號作為產生幀存地址計數器的計數使能,以保證DATA_EN信號為高時,將象素送給AMLCD顯示。在DCLK的上升沿,幀存地址計數器加一,幀存SRAM經過一段延時后,象素數據出現在總線上。在DCLK的下降沿AMLCD將數據讀入。該LCD控制器的設計方法很容易用于VGA視頻接口。在VGA接口電路的設計中,不需點時鐘電路,只須將行同步信號與場同步信號輸出,將數據使能信號作為復合消隱信號輸入即可。產生行場掃描時序的VHDL描述如下:

      entity seq_gen is

      port(clk_seq : in std_logic;

      rst_seq : in std_logic;

      lcd_hs_out : out std_logic;

      lcd_dataen : o

      ut std_logic;

      lcd_vs_out : out std_logic;

      pix_clk : out std_logic );

      end seq_gen;

      architecture rtl_seq_gen of seq_gen is

      signal lcd_hb : std_logic;

      signal lcd_hs : std_logic;

      signal lcd_vb : std_logic;

      signal lcd_vs : std_logic;

      signal clken_vcount : std_logic;

      begin

      hcount: block

      signal hcountreg :std_logic_vector(9 downto 0);

      signal hz_temp : std_logic;

      signal lcd_hz : std_logic;

      begin

      process (clk_seq,lcd_hz)

      begin

      if (lcd_hz = '1') then

      hcountreg <= (others =>'0');

      elsif clk_seq'event and clk_seq = '1' then

      hcountreg <= hcountreg +1;

      end if;

      end process;

      lcd_hb <= '0' when hcountreg >=600 and hcountreg < 650

      else '1';

      lcd_hs <='0' when hcountreg >=610 and hcountreg < 630

      else '1';

      hz_temp <= '1' when hcountreg = 650 else '0';

      lcd_hz <=hz_temp or rst_seq;

      end block hcount;

      diff : block

      signal inputrega : std_logic;

      signal inputregb : std_logic;

      begin

      process(clk_seq)

      begin

      if clk_seq'event and clk_seq='1' then

      inputregb <= inputrega;

      inputrega <= not lcd_hs;

      end if;

      end process;

      clken_vcount <= not inputregb and inputrega;

      end block diff;

      vcount : block

      signal vcountreg : std_logic_vector(9 downto 0);

      signal vz_temp : std_logic;

      signal lcd_vz : std_logic;

      begin

      process (clk_seq,lcd_vz)

      begin

      if(lcd_vz='1')then

      vcountreg <= (others => '0');

      elsif clk_seq'event and clk_seq = '1' then

      if clken_vcount = '1' then

      vcountreg <= vcountreg +1;

      end if;

      end if;

      end process;

      lcd_vb <= '0' when vcountreg >=600 and vcountreg < 615

      else '1';

      lcd_vs <='0' when vcountreg >=607 and vcounreg < 610

      else '1';

      vz_temp <= '1' when vcountreg = 615 else '0';

      lcd_vz <= vz_temp or rst_seq;

      end block vcount;

      pix_clk <=clk_seq;

      lcd_dataen <=lcd_hb and lcd_vb;

      lcd_hs_out <=lcd_hs;

      lcd_vs_out <=lcd_vs;

      end rtl_seq_gen;

      這種用VHDL產生掃描時序的方法簡單、易讀,并且易于修改。在代碼中只須修改一些時序參數就能產生任意時序的波形,具有很好的可重用性。用FPGA Express 3.5半VHDL代碼綜合后,通過Foundation 3.1i進行布局和布線,用Foundation提供的門級仿真工具產生的行掃描時序仿真圖如圖4所示。

      采用FPGA技術設計的AMLCD控制器,大大減少了電路板的尺寸,同時增加了系統可靠性和設計靈活性。這種用VHDL語言實現現行場掃描時序生成器的方法,具有簡便。易讀和可重用性強的特點。該AMLCD控制器已用Xilinx公司的SpartanII系列器件XC2S50實現,并在飛機座艙圖形顯示系統中實現應用。


      【基于FPGA的LCD&VGA控制器設計】相關文章:

      基于FPGA的USB2.0控制器設計08-06

      基于FPGA的高頻時鐘的分頻和分配設計08-06

      基于FPGA的快速傅立葉變換08-06

      DDR SDRAM控制器的FPGA實現04-12

      基于MicroBlaze軟核的FPGA片上系統設計08-06

      基于FPGA的總線型LVDS通信系統設計08-06

      基于CPLD/FPGA的半整數分頻器的設計08-06

      基于FPGA的新型諧波分析儀設計08-06

      基于FPGA的直接數字頻率合成技術設計08-06

      主站蜘蛛池模板: 日韩丝袜亚洲国产欧美一区| 中文字幕国产精品第一页| 久久精品熟女亚洲av麻| 亚洲国产精品美日韩久久| 国产爽视频一区二区三区| 亚洲综合成人一区二区三区 | 国产色无码专区在线观看| 欧洲精品色在线观看| 亚洲一区久久蜜臀av| 东方四虎av在线观看| 97精品亚成在人线免视频| 67194熟妇在线直接进入| 免费无码又爽又刺激网站| 中文无码热在线视频| 国产suv精品一区二区五| 日韩av一区二区精品不卡| 久久精品国产精品第一区| 亚洲国产欧美一区二区好看电影| 亚洲欧美偷国产日韩| 久久久久88色偷偷| 国产永久免费高清在线观看| 日韩免费无码视频一区二区三区 | 国产精品福利午夜久久香蕉| 国产精品一区免费在线看| 国产不卡一区二区在线| 久久天天躁狠狠躁夜夜婷| 亚洲色欲在线播放一区二区三区| 久久av无码精品人妻出轨| 亚洲性图日本一区二区三区| 国产一区二区三区导航| 国产精品视频亚洲二区| 亚洲AV无码乱码在线观看性色扶| 乱人伦人妻系列| 国产精品内射在线免费看| 亚洲欧洲一区二区综合精品| 亚洲综合久久国产一区二区| 亚洲日本欧美日韩中文字幕| 女人张开腿让男人桶爽| 女人的天堂A国产在线观看| japanese人妻中文字幕| 日日碰狠狠躁久久躁96avv|