基于FPGA的RS232异步串行口IP核设计

嵌入式系统 时间:2011-01-12来源:网络

  2.5 接收模块设计

  接收模块也分为空闲、检测起始位、移位等3种模式。如图4所示。首先捕捉起始位,在 mclkx16时钟下不断检测从rx端输入数据的起始位,当检测到起始位后,接收模块由空闲模式转换为移位模式,并且16分频mclkx16产生 rxclk波特率时钟。此时rxclk时钟的上升沿位于串行数据每一位的中间,这样接下来的数据在每一位的中点采样。然后由rxclk控制在上升沿将数据位写入移位寄存器rgr的rsr[7]位,并且rsr右移1位,依次将8位数据全部写入rsr,并且停止产生rxclk波特率时钟。判断奇偶校验、帧结构和溢出标志正确后,rsr寄存器中的数据写入rhr数据锁存寄存器中,最后由8位数据总线输出转换完成的数据。

接收状态转换

  接收模块部分VHDL程序如下:

程序

3 硬件电路设计

  UART IP核设计完成后需要嵌入FPGA系统中才能运行,该系统选用Xilinx公司Spartan-IIE XC2S50型FPGA和与其配套的EPROM XC18V01组成,如图5所示。该系统已实现设计要求的功能,实现IP核的验证。

FPGA系统连接电路

  4 结果分析

  程序经仿真验证后,须综合生成IP核并嵌人FPGA中。使用Xilinx公司的Xilinx ISE工具综合UART模块,FPGA选用Xilinx公司Spartan-IIE XC2S50,系统时钟40 MHz。经Xil-inx ISE后,资源使用结果如表1所示。表明使用少量FPGA的Slice和LUT单元就可生成UART核,节省资源UART核可灵活分成接收和发送两部分,可根据需要选择使用。节省系统资源;一些控制标志字也可根据需要自行删减和扩充。最后将集成有UART核的FPGA数据采集系统与测试台进行异步串行通信实验,检测通信数据表明使用UART核传输数据稳定可靠。

资源使用结果

  5 结束语

  数据采集系统经常采用UART异步串行通信接口作为系统的短距离串行通信。相对于传统的UART器件来说,把具有UART功能的IP核集成在FPGA中的更有利于提高数据采集系统的可靠性和稳定性,减小电路板面积。该系统设计的UART IP核通过仿真验证,经综合、编译、嵌入FPGA,成功实现系统通信。

1 2

关键词: IP 设计 串行 异步 FPGA RS232 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版