基于FPGA的通信接口模块的设计

时间:2012-10-10来源:网络

  2.5 通用异步串口

  通用异步串行接口的逻辑结构如图7所示。通用异步串行接口的接收模块可分为数据接收、帧检验和数据缓存3部分。数据接收部分包括移位寄存器和接收控制逻辑。按照通用异步串行接口的时序,接收控制逻辑将移动移位寄存器,实现字节数据的接收和串并转换。帧检验模块按照特定前端受控模块的通信数据帧格式对数据进行检验,对检验成功的数据写入到数据缓冲区中。数据缓存中存储数据后向状态信息处理模块发出请求,等待数据读出。

  通用异步串口的发送模块同样分为3部分:数据缓存、帧形成、数据发送。数据缓存接收控制命令处理模块的数据并缓存。由于通用异步串口发送的命令都是非周期命令,使用128 Byte的FIFO作为数据缓存。在帧形成模块中为数据添加校验、帧头和帧尾。数据发送模块针对字节数据按照通用异步通信的时序要求,将数据并串转换发送出去。

  3 仿真结果

  FPGA选用Xilinx公司XC3S500E器件,该器件具有足够的差分接口、逻辑和存储器资源,能满足该设计的要求。首先在ISE中利用Verilog HDL语言编写逻辑代码并用ISim对各个模块进行了详细的功能仿真。光纤通信接口的仿真结果如图8所示。该仿真利用光纤收发模块进行自环,检验模块输入输出的正确性。从光纤接口接收到相应控制命令后三线同步串行接口,通用异步串行接口的数据输出仿真结果如图9和图10所示。仿真表明,程序输出数据发送正确且数据处理时延很小。

  4 结束语

  文中以FPGA为控制核心,实现了中心机控制多个远程受控模块的通信接口模块。该设计具有电路简单、协议设计灵活,逻辑结构扩展性强等优点。仿真表明,该设计能够满足通信数据传输的功能要求,目前已应用到具体设备中。

1 2 3 4

关键词: FPGA 通信接口 光纤通信

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

或用微信扫描左侧二维码

相关文章

查看电脑版