国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的UART控制VGA圖像顯示器設計

2020-01-18 06:26:50范靜靜權循忠呂兆承
通化師范學院學報 2020年2期
關鍵詞:波特率框圖時序

李 營,范靜靜,權循忠,呂兆承,陳 帥

通用異步串行收發(fā)器(UART)是一種實現(xiàn)設備之間低速數(shù)據通信的標準協(xié)議,該傳輸方式不需要時鐘控制,只需通過兩根信號線,分別進行數(shù)據的收發(fā).所謂串行,是指將多位數(shù)據轉為一位一位的串行數(shù)據進行傳送,發(fā)送完后組合得到并行數(shù)據.該方式適合遠距離傳送[1-2].傳統(tǒng)的串口控制往往通過單片機實現(xiàn),他不便于擴展和模塊化[3],而FPGA 作為高密度可編程處理器,具有IO 口多、并行運算速度快、模塊化集成度高[4],對外圍硬件進行擴展移植性高等特點.鑒于此本文根據UART 原理和VGA 時序顯示原理,利用層次化建模思想將系統(tǒng)劃分為PLL 分頻器、波特率發(fā)生器、串口接收通信和VGA控制模塊等模塊,在Quartus 下利用硬件描述語言Verilog實現(xiàn)各功能模塊,并進行配置,最終以FPGA芯片為核心控制器,將存儲IP 核ROM 中的圖像數(shù)據按照串口端的命令通過VGA在顯示器端進行顯示.

1 UART原理簡介

串行異步通信需要接收雙方約定好數(shù)據傳輸速度和幀格式,即約定好一個數(shù)據位傳輸?shù)臅r間和一個數(shù)據的長短.其中數(shù)據傳輸速度是用波特率描述,即每秒傳輸?shù)臄?shù)據位數(shù),典型的數(shù)據幀格式如圖1 所示,一個字符幀由起始位、數(shù)據位、校驗位、停止位、空閑位構成[5].接收端一直處于監(jiān)聽狀態(tài),當監(jiān)聽到低電平的起始位后,就按照約定的波特率接收數(shù)據.即每當發(fā)送端發(fā)送數(shù)據時,先發(fā)送1 bit的起始位,以表示通信的開始,然后發(fā)送8 bit的有效數(shù)據位.有效數(shù)據的低位在前高位在后,之后再傳送1 bit的奇偶校驗位,最后發(fā)送停止位.

圖1 串口幀格式

2 VGA接口原理

VGA 接口即視頻圖形陣列,采用非對稱分布的15針連接方式,用戶常用的有紅綠藍三色,行同步信號HS 以及場同步信號VS 等5 個信號.其中HS和VS的作用是處理輸入模擬信號,并聯(lián)合起來控制VGA的顯示時序[6].文中VGA顯示遵循640*480@60 工業(yè)標準,行掃描時序要求和場掃描要求分別見表1 和表2.通信時序如圖2 所示.

表1 行掃描(HS)時序要求

表2 場掃描(VS)時序要求

圖2 VGA的行掃描和場掃描時序圖

3 系統(tǒng)總體實現(xiàn)方案

本系統(tǒng)由FPGA芯片、時鐘電路、系統(tǒng)電源、VGA時序控制模塊和串口通信模塊等構成.依據層次化建模思想可將系統(tǒng)分為底層模塊和頂層模塊,功能框圖如圖3 所示.由圖3 可知,該系統(tǒng)底層可劃分為:波特率發(fā)生器模塊(speed_setting)、PLL分頻模塊、串口接收處理模塊(my_uart_rx)、VGA 時序控制模塊(vga_controller).頂層模塊(top.v)聲明輸入輸出端口,并調用各底層模塊構建串口通信控制VGA的圖像顯示功能.

圖3 FPGA系統(tǒng)功能實現(xiàn)框圖

3.1 VGA時序控制模塊(vga_controller)

該模塊連接串口接收處理模塊和PLL 分頻模塊,最終實現(xiàn)針對不同串口指令,VGA顯示不同的圖像的功能,其中圖像數(shù)據存儲于IP 核ROM內以便本模塊進行調用.工作原理是根據串口接收處理模塊發(fā)送的不同串口指令數(shù)據rx_data,針對其不同數(shù)據進行模式切換,顯示不同圖像.設計采用640*480@60 工業(yè)標準.由文獻[6]知此時場同步信號VS的周期為16.7 ms,行同步信號HS的周期為31.75 us,所需時鐘頻率25 MHz.設計中VS 掃描流圖如圖4 所示,HS 掃描算法與其類似,此處省略.

圖4 場頻率掃描算法流圖

模塊接口框圖如圖5 所示.以下為各端口的說明.

輸入信號:rst_n 是復位信號,低電平有效;clk_25m 連接PLL 輸出25 MHz 時鐘,clk_50m 等其他信號類似;rx_data 信號接收數(shù)據寄存器,保存直至下一個數(shù)據來到;rx_int 信號接收數(shù)據中斷信號,接收到數(shù)據期間始終為高電平.

輸出信號:data_out是VGA顯示色彩;vga_hsy是VGA顯示行同步信號;vga_vsy是VGA顯示場同步信號.

圖5 VGA時序控制模塊接口框圖

3.2 分頻模塊(PLL_controller.v)

該模塊的功能是對系統(tǒng)時鐘進行分頻,分別產生c0(25 MHz)、c1(50 MHz)、c2(65 MHz)、c3(100 MHz)、c4(130 MHz)時鐘,以便其他功能模塊調用.

3.3 波特率發(fā)生器模塊(speed_setting.v)

該模塊的功能是根據給定的系統(tǒng)時鐘頻率和要求的波特率算出波特率發(fā)生器分頻系數(shù).波特率是指每秒鐘傳輸?shù)臄?shù)據位[5].文中采用的波特率為9 600 bps,此時每位數(shù)據持續(xù)的時間是1 s/9 600=104.2 us,即每隔104.2 us 進行一次采樣,若需要其他波特率也可在本模塊選擇,該模塊的接口框圖如圖6 所示.其中輸入信號clk 是25 MHz 主時鐘,輸入信號rst_n 是低電平復位信號,輸出信號clk_bps 的高電平為接收或者發(fā)送數(shù)據位的中間采樣點.

圖6 波特率發(fā)生器模塊接口框圖

3.4 串口接收處理模塊(my_uart_rx)

該模塊連接波特率發(fā)生器模塊和VGA時序控制模塊,其功能是通過串口外設來接收計算機發(fā)送的數(shù)據,并送至VGA時序控制模塊,模塊示意圖如圖7所示.以下為各端口含義.

輸入信號:clk 是25 MHz 主時鐘;rst_n 是低電平復位信號;uart_rx 是RS232 接收數(shù)據信號,即用戶鍵盤輸入信號;clk_bps 連接波特率發(fā)生器模塊,其高電平為接收或者發(fā)送數(shù)據位的中間采樣點.

輸出信號:bps_star接收到數(shù)據后,波特率時鐘啟動信號置位;rx_data 接收數(shù)據寄存器,保存直至下一個數(shù)據來到,rx_int接收數(shù)據中斷信號,接收到數(shù)據期間始終為高電平.

3.5 頂層模塊(top.v)

頂層模塊連接各底層模塊實現(xiàn)數(shù)據通信,滿足實現(xiàn)系統(tǒng)功能要求,系統(tǒng)最終生成的RTL圖如圖8所示,從圖8中可知,各底層模塊間的連接關系與圖3系統(tǒng)功能框圖一致.

圖8 系統(tǒng)RTL圖

4 系統(tǒng)仿真實驗

4.1 系統(tǒng)開發(fā)工具

系統(tǒng)開發(fā)采用的仿真軟件是QuartusⅡ13.1,硬件描述語言是Verilog,硬件包含F(xiàn)PGA 核心板EP4CE6E22C8及UART控制器和VGA控制器等.

4.2 系統(tǒng)時序信號仿真

系統(tǒng)設計完成后編寫測試文件進行時序仿真,結果如圖9所示.圖中ext_clk_50是50 MHz輸入時鐘信號,ext_rst_n 為輸入復位信號,vga_vsy和vga_hs 分別為輸出場同步和行同步信號,data_out為輸出圖像數(shù)據,clk_bps為串口波特率發(fā)生器的中間采樣信號,由圖9 中分析線可知:輸出vga_hs的周期為31.75 us,與文中3.1小節(jié)所要求的VGA 接口時序一致,說明VGA 時序滿足系統(tǒng)要求.clk_bps 的周期為104.2 us,與文中3.3 小節(jié)要求波特率為9 600 bps 時的信號采樣間隔時間一致,說明串口通信滿足系統(tǒng)設計要求.

圖9 系統(tǒng)時序信號仿真結果圖

4.3 硬件仿真

通過串口調試助手發(fā)送不同的16 進制數(shù),存儲于ROM內的不同圖像將通過VGA在顯示器端顯示.如圖10 所示,當通過串口調試助手發(fā)送16’h01時,在VGA顯示器上顯示了一幅男生圖片.

圖10 串口端發(fā)送16’h01時VGA顯示的圖像

4.4 系統(tǒng)仿真結論

通過4.2小節(jié)可知系統(tǒng)仿真時序與前述VGA顯示和UART通信要求的時序一致,說明系統(tǒng)時序正確.通過4.3 小節(jié)硬件仿真驗證了該系統(tǒng)可實現(xiàn)串口控制VGA圖像顯示功能.綜上兩方面說明利用層次化建模思想構建的UART 控制VGA圖像顯示器系統(tǒng)的設計方案是切實可行的.

5 結束語

文章利用自頂向下層次化建模思想,設計出基于FPGA的串口通信控制VGA圖像顯示系統(tǒng),該系統(tǒng)能夠利用UART控制VGA顯示不同圖像.與傳統(tǒng)單片機設計相比,F(xiàn)PGA可方便地進行系統(tǒng)升級和移植,且本系統(tǒng)可實現(xiàn)異步通信及圖像顯示,在圖像遠程控制顯示方面有一定的工業(yè)參考價值[7].

猜你喜歡
波特率框圖時序
基于時序Sentinel-2數(shù)據的馬鈴薯遙感識別研究
基于Sentinel-2時序NDVI的麥冬識別研究
CAN 總線波特率自適應程序設計
智能制造(2020年5期)2020-07-03 06:24:00
捷豹I-PACE純電動汽車高壓蓄電池充電系統(tǒng)(三)
基于FPGA的異步串行通信波特率容錯設計
電子測試(2018年7期)2018-05-16 06:27:18
電路圖2017年凱迪拉克XT5
算法框圖的補全
一種毫米波放大器時序直流電源的設計
電子制作(2016年15期)2017-01-15 13:39:08
基于圖表法構建《萬有引力定律與航天》知識網絡
DPBUS時序及其設定方法
河南科技(2014年15期)2014-02-27 14:12:36
牙克石市| 竹溪县| 轮台县| 鹤庆县| 莲花县| 庆云县| 永兴县| 海晏县| 临湘市| 额济纳旗| 韩城市| 巨鹿县| 仪征市| 沂源县| 紫金县| 美姑县| 乌鲁木齐市| 临高县| 南岸区| 禄丰县| 扎囊县| 牟定县| 西昌市| 卫辉市| 长兴县| 西丰县| 洪洞县| 昭觉县| 旌德县| 丹凤县| 海安县| 苍梧县| 多伦县| 岳阳市| 华阴市| 平顺县| 崇仁县| 增城市| 天峨县| 新化县| 江陵县|