UART微控制器设计方法及其FPGA实现
2016-07-04戚秀真
杨 澜,戚秀真
(长安大学 信息工程学院,陕西 西安 710064)
UART微控制器设计方法及其FPGA实现
杨澜,戚秀真
(长安大学 信息工程学院,陕西 西安 710064)
摘要为满足FPGA与PC之间的通信需求,提出了一种FPGA的通用异步收发器设计实现方法。在Xilinx ISE 11开发平台上采用Verilog HDL硬件描述语言及其自带的IP CORE,实现了UART精确波特率时钟模块、UART发送模块和UART接收模块。并在ISE环境下进行综合建模仿真,给出各模块的仿真时序图以及综合生成的RTL图。实验通过Xilinx公司的XC2VP30 FPGA开发板对程序进行下载运行调试,与PC进行实时通信,结果表明,UART控制器工作稳定可靠,较好地实现了数据串行通信,达到预期设计要求。
关键词UART;FPGA;Verilog HDL
通用异步收发器 (Universal Asynchronous Receiver Transmitter,UART)是一种通用串行异步通信数据总线,由于其可靠性高、传输距离远、相对成本较低等优点被广泛应用,尤其是在嵌入式微处理器设计中,UART接口已成为不可缺少的一部分[1-3]。其工作原理是UART发送器将接收到的并行数据帧转换成串行数据帧进行传输。如表1所示,串行数据帧包括1个低位1,7~8个数据位,1个可选的奇偶校验位和1个或多个高位停止位[4-5]。UART接收器发现低位起始位后与发送器时钟同步,然后接收整个串行数据帧,最后去掉低位起始位和高位停止位进行相应的奇偶校验生成并行数据帧[6]。目前,FPGA(Field Programmable Gate Array)芯片以其集成度、设计周期短、性价比高可满足时序复杂的大规模设计等诸多优点,被广泛应用于工程中[7-10]。由于大部分FPGA芯片内部并没有集成UART通信功能模块,给FPGA与CPU或其他设备间的数据传输造成不便[11-12]。……
