一、系统介绍
本设计给出了一种基于FPGA的通信显示系统设计方法,采用EDA作为开发工具,QuartusII作为运行程序的平台,结合所学知识设计一个基于FPGA的通信显示系统设计,通过串口调试器发送图片数据,通过串口调试器发送图片数据,用RXD进行接收UART接收器,并通过双口RAM进行存储,最后VGA显示。
二、设计任务及要求
1、设计任务
基于FPGA 的通讯显示系统设计。
2、要 求
(1)上位机软件发送图片数据通过串口接收至VGA终端显示
(2)学习用FPGA实现串口数据的接收和发送。
(3)发送1个数据,UART接收器会接收到1个数据,对接收到的数据进行存储,读取该数据显示到VGA指定区域
(4)会分析波形、懂得整体代码设计思路
三、系统实现
1.1系统总体设计
系统设计思路如下:
串口调试器发送文件(图片数据36000个:200*1580),以一定的速率对数据串行传输(发送1个数据,UART接收器会收到1个数据,对接收到的数据进行存储,读取该数据显示到VGA指定区域)
系统整体设计框架:
RTL视图:
1.2系统模块架构
1.2.1 PLL(my_pll)
PLL模块为VGA驱动提供25M时钟
1.2.2 串口接收器(uart_rx)
串口接收模块接收来自PC发送的图片数据
UART接收数据时:将接收的串行数据转换成并行数据
1.2.3 写入地址计数(my_dpram)
写入地址计数模块根据接收到的数据,产生写入地址,并在接收完整张图片后,输出receive_done信号,允许VGA从SRAM读取数据
1.2.4 SRAM驱动(ram2_wr_ctrl
SRAM驱动模块对SRAM芯片进行读写
1.2.5 VGA驱动(vga_ctrl)
VGA驱动模块产生VGA时序显示图片
VGA的扫描原理:逐行扫描(Z型扫描)、隔行扫描
VGA的显示区域:
只在显示区域内,RGB有效才能显示数据,在消隐区内,RGB无效无法显示数据