• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 基于CPLD的异步串行通讯控制器的研究与设计

基于CPLD的异步串行通讯控制器的研究与设计

录入:edatop.com     点击:

3.2接收数据模块

串行数据帧与接收时钟是异步的,所以接收器功能实现中的关键是接收器时钟与每个接收字符的同步。一个有效的方法是接收器采用高速率时钟对串行数据进行采样,通常采样频率是位时钟频率的整数倍,也就是选择比较高的波特率因子。理论上倍数越高接收数据各位的分辨率越高,实际中一般最大选择16倍。

接收器应该尽可能地在靠近每个数据位周期的中心处进行采样。如果接收器能很好地预测起始位的开始,那么它可在起始位的下降沿到来之后,等待半个位周期再采样数据位。此后,接收器每等待一个位周期采样一个数据位,直至收到最后一位为止。

接收过程主要由一个3位状态机实现,其状态有空闲状态、接收起始位、接收数据位、接收奇偶校验位以及接收停止位。每一个状态表明了当前正在接收到数据属于哪一种字符,并且根据当前接收字符的状态驱动其他部件进行合适的操作。状态转换机的转换图如图4所示。

4基于CPLD的实现和仿真

可编程逻辑器件(PLD)是在20世纪80年代迅速发展起来的一种新型集成电路,随着大规模集成电路的进一步发展,出现了PAL和GAL逻辑器件,而复杂可编程逻辑器件CPLD是在此逻辑器件基础上发展起来的,它是由大量逻辑宏单元构成的。通过配置,可以将这些逻辑宏单元形成不同的硬件结构,从而构成不同的电子系统,完成不同的功能。正是CPLD的这种硬件重构的灵活性,使得设计者能够将用硬件描述语言(如VHDL或者Veritog HDL)描述的电路在CPLD中实现。这样一来,同一块CPLD能实现许多完全不同的电路结构和功能。同时也大大简化了系统的调试,从而能极大地缩短系统的研发周期。

于是我们在验证这一环节中,采用Xilinx公司的XC9500系列的XC95108 CPLD来验证该方案的合理性。在用VHDL语言实现图2的功能时,采用自顶向下的设计方法,先设计一个TOP顶层模块,它里面包括了接口控制电路模块,调制解调模块,发送模块和接收模块。其中接口控制电路模块包含了图2中的波特率控制逻辑电路,数据总线缓冲器和读写控制逻辑电路。设计实现中比较复杂的部分就是接口控制电路的实现。在接口控制电路模块中,设计了接收缓冲寄存器(RBR),发送保持寄存器(THR),中断使能寄存器(IER),中断标识寄存器(IIR),模式选择控制寄存器(LCR),调制解调控制寄存器(MCR),接收发送状态寄存器(LSR),调制解调状态寄存器(MSR),它们的存储器映射地址分别设置为000~110,因为该设计中把控制器设计为不能同时接收和发送,所以接收缓冲寄存器(RBR)和发送保持寄存器(THR)共用一个地址。其中,模式选择控制寄存器(LCR)用来设置,要发送数据的位数(从低到高发送),奇偶校验位的位数和停止位的位数。

采用Xilinx公司的ISE工具发送和对接收这两个关键模块分别进行仿真,发送模块的时序波形图如图5所示,接收数据模块的时序波形图如图6所示。

在发送模块的仿真测试程序中,让CPU的数据总线连续发送55H,AAH,5AH,A5H,并在控制器的模式控制寄存器中设置发送的数据位5位,1个奇偶校验位(偶校验),1个停止位。在TxRDYn信号变低的时候,开始发送一帧新的数据。根据图5中数据输出信号Sout上信号变化的情况可以验证该模块设计是正确的。

在接收模块仿真波形图中,Sin信号是负责接收串行数据的信号线,RBR是该控制器内部的缓冲寄存器,负责存储经过串并转换后的数据,RxRDYn是控制器的外部信号,用来告诉CPU,控制器已经转换完一帧数据,CPU可以把数据从缓冲寄存器中取出。中断信号INTR会在数据传输完后,产生一个正脉冲。在测试接收数据模块的文件中,使产生一个连续的AAH和56H的串行数据,在图6中可以看到在Sin信号每接收完一个数据帧后,数据便存入RBR寄存器,RBR寄存器的数据位AAH和56H,并且在AAH传完后,RxRDYn立即变为低电平。

5 结语

本文在对异步串行通信协议进行分析的基础上,根据实际工程的需要,对异步串行通信控制器进行了详细设计,并结合CPLD器件,采用VHDL语言,对设计方案进行了实现和验证,通过最后时序仿真的波形图得出了设计方案的正确,而且加载了该设计程序的CPLD在实际工程中能够很好地与处理器进行连接来收发数据,从而为那些没有串行异步接口的处理器提供一个比较理想的设计方案。

作者:李洪威,张遂南 来源:中电网

上一篇:基于NAND闪存的自适应闪存映射层设计
下一篇:ST的SPEAr600应用于MPU嵌入式VoIP解决方案

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图