缔冠期刊网

基于FPGA的智能串行通信板卡的设计与实现

2022-06-09

  摘 要: 串行通信模块是每台计算机所必须的对外通信模块的一部分,但由于串行通信协议较多,串行接口也较多,所以,往往这部分模块需要占用较多的体积和资源。将RS 232,RS 422和RS 485三种串行协议和同异步两种串行传输方式通过FPGA兼容于一块智能通信板卡上,通过上位机控制界面的控制,完成对8路串行通道的配置,并介绍了板卡的总体结构及硬件设计,展示了上位机控制界面的通信效果。结果表明,该智能串行通信卡能够很好地完成多协议多方式的串行通信之间的切换,达到了预期的效果。 

  关键词: 串行通信; 串行协议; 串行方式; FPGA; 智能串行通信卡 

  中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2015)07?0039?04 

  0 引 言 

  串行通信作为计算机与其他设备之间广泛使用的一种通信方式,具有开发简单,抗干扰性强,传输距离远的特点。教育论文作为现在应用比较广泛的串行通信协议RS 232[1],RS 422[2]和RS 485[3]三种标准各有特点,应用于不同的方面,但是在实际应用中,对于需要与应用不同标准的设备实现通信,却必须添加相应的转换模块,这种方法既繁琐又很麻烦,而且浪费不必要的资源。在需要实现多标准多设备同时与主控计算机通信时,以上述的传统方式,除非主控机同时具有三种标准接口,否则几乎无法实现这样的功能,将会导致某些设备与主控机通信受阻,无法实现特定的性能要求,所以提出一种能够智能化转化上述三种串行传输标准的通信系统势在必行。 

  1 总体方案 

  本文所设计的多协议串行通信模块的总体结构图如图1所示,由于本模块有8路串行传输的通道,各通道所执行的传输协议由上位机控制界面通过FPGA对各路通道进行配置,因此由外接设备所发出的各通道信号经电平转换电路进入FPGA,FPGA内的接收/发送缓存模块在缓存后,各路通过调用RS 232/422/485相应的处理模块进行处理。而后经串/并转换后,由协议转换控制模块传输给上位机,完成与外接设备的实时通信。 

  2 硬件电路设计 

  本系统的硬件部分主要是由具有SCSI(Small Computer System Interface)标准[4]接口的板卡来实现,板卡上总共有8路串行通道,每路通道的RS 232,RS 422及RS 485的标准协议的转换控制、同异步串行方式的转换选择均由Xilinx Spartan6系列的FPGA芯片XC6SLX45完成,FPGA通过PCI9030与上位机控制程序完成通信。PCI9030将复杂的PCI总线转换为简单的Local Bus总线[5],FPGA通过对Local Bus的读写完成与上位机的通信。由于FPGA芯片的管脚电平一般为标准的TTL电平,与RS 232,RS 422和RS 485串行协议的输入电压的电平不符,故还需要相应的电压转换芯片进行电平转换。同时,为了使8路串行通道能够兼容多种串行接口标准,每路通道需要有一款通道转换芯片完成RS 232/RS 422/RS 485协议的电路转换工作,FPGA通过对通道转换芯片进行控制从而配置每路通道所支持的通信协议[6]。图2是串行通信卡的硬件结构图。 

  图1 多协议串行通信模块的总体结构 

  图2 智能串行通信卡硬件结构图 

  3 串行通信各模块IP核设计 

  3.1 FPGA片内程序设计 

  FPGA内部程序大致分为三大模块:异步UART处理模块、同步HDLC处理模块和协议转换控制模块,如图3所示,其中异步UART和同步HDLC模块各自又可划分为发送和接收两个部分,如图4,图5所示。接收流程如下,首先,8路串行通道所选择的同异步通信方式及通信协议由上位机控制界面已经设定,8路串行数据进入FPGA后,分别由各路相应的处理模块进行处理,而后存入各自的接收缓存(FIFO)中,等待PCI9030进行读取,最后发送给上位机。发送流程则是首先由上位机选定各通道的配置协议及方式,而后分别将8路通道上所要传输的信息通过PCI9030写入FPGA内各自通道的发送缓存(FIFO),然后经过相应的处理发送给各通道接口电路直至外接设备。 

  图3 FPGA片内程序框图 

  图4 各通道接收程序流程图 

  3.2 UART方式 

  UART(Universal Asynchronous Receiver/Transmitter)协议作为一种低速全双工通信协议[7],是异步串行通信协议的一种,广泛应用于通信领域等各个场合。它工作于数据链路层,其工作原理是以串行方式一位接一位地传输数据字符的每个比特。 

  UART具有如下的协议特点: 

  (1) UART协议是设备之间实现低速数据通信的标准协议。UART字符格式为1位起始位,5~8位数据位,1位奇偶校验位(可选),1位停止位。由于是异步通信,所以在数据发送时,不需要同时发送时钟。接收器接收数据的时候,用几倍于波特率的时钟对输入数据流过采样,通常采样时钟为波特率的16倍,然后使用16个采样值的中间三个值。 

  (2) 串行异步数据传输时,发送方通过在字符帧之间插入任意个空闲位使得帧与帧之间的时间间隔各不相同,也就是每个字符帧的传送都是随机的。 

  (3) 通过起始位来实现收发双方的同步,起始位开启一个字符帧的传送,同时通知接收方数据传送开始。在传送每个帧之前,收发双方都可以根据要求改变通信设置,例如改变传输的速率(波特率)、改变数据位的个数、改变校验类型、改变停止位的长度,但发送和接收双方的字符格式和波特率必须统一。 

  UART处理模块按照逻辑功能可以划分为六个小模块:发送缓存、接收缓存、波特率产生模块、逻辑控制模块、发送模块和接收模块。其中发送模块和接收模块是整个逻辑电路最核心的功能模块,它们要完成协议的转换和数据的发送接收。波特率产生模块根据设定好的波特率产生相应的分频因子,然后对系统时钟进行相应分频得到波特率时钟。采用数据缓存模块FIFO主要有两个考虑:一是为了解决FPGA和PCI9030的Local Bus跨时钟域通信问题而设立的,FPGA的内部时钟与Local Bus上的时钟并不一致,数据不能直接传输,需要一个缓存地带来解决存入和取出的速度不同的问题;二是为了很好地解决8路串行通道的向上传输竞争问题,由于8路通道同时工作,各路相互独立,而向上传输的路径却只有32位的Local Bus,所以每路设立FIFO一方面先把数据缓存起来,另一方面等待PCI9030对每路FIFO进行读取,由于读取速度远远快于数据的存储速度,所以可以保证8路通道与上位机的即时通信。逻辑控制模块则是通过对上位机的控制信息的读取,对本通道的相应协议的配置等进行控制,同时也对整个处理过程进行控制。

  3.3 HDLC方式 

  高级数据链路控制规程HDLC(High?level Data Link Control)是一个同步传输数据、面向比特的数据链路层协议[8]。IBM公司在70年代初期的时候首先提出了面向比特的数据链路层协议。该协议包括主站、从站和复合站三种类型的站点。主站主要负责命令帧的发送、响应帧的接收,同时还负责初始化链路、控制流程、检测差错和恢复链路。从站的主要职责是接收由主站发来的命令帧,向主站发送响应帧,同时从站还配合主站进行链路控制,比如参与差错恢复等。复合站将主站和从站的功能集于一身,既能发送命令帧又能接收响应帧,并且负责控制整个链路。 

  HDLC协议根据通信双方的传输响应类型和链路结构,提供了正常响应方式、异步响应方式和异步平衡方式三种操作方式。本文中的HDLC即采用这种方式,正常响应方式(NRM)适用于点?点和点?多点的不平衡链路结构,特别是点?多点的链路。这种方式中,整个链路的控制由主站负责,主站主要工作包括初始化链路、控制数据流、恢复链路等。从站操作简单,只有在主站明确允许的情况下,它才可以作出响应。 

  HDLC处理模块主要分为七个小模块:发送数据帧缓存模块、接收数据帧缓存模块、时钟生成接收模块、CRC校验码生成模块、CRC码检验模块,发送模块、接收模块。其中发送模块主要完成HDLC协议的发送处理、标志字的生成及插入“0”[9]。接收模块主要完成标志字检测及删除“0”,HDLC协议的接收处理等工作。数据帧缓存模块的功能与UART模式下相同。时钟生成接收模块则是负责产生每路的发送同步时钟和接收外设所传输的接收同步时钟,该模块利用FPGA自身的全局时钟资源,并不占用逻辑资源。CRC校验码的生成和检验则是为了保证数据传输的准确性,提高线上资源的利用率。 

  3.4 协议转换控制模块 

  该模块主要完成与上位机的通信,读取上位机的控制信息,集中控制各通道RS 232/422/485协议的配置和同异步传输方式的配置,对数据的传输以及各通道相应状态信息的读取进行简单的控制,该模块可以对各通道的传输协议以及方式进行设置以期符合外接设备的通信要求。 

  图6是PCI9030写入FPGA的部分配置寄存器,其作用一是储存记录上位机控制界面所录入的配置信息,二是FPGA通过对每路配置寄存器信息的读取完成对各路的配置。 

论文中心更多

期刊百科
期刊投稿 期刊知识 期刊审稿 核心期刊目录 录用通知 期刊版面费 投稿期刊推荐 学术问答
基础教育
小学语文 中学语文 小学数学 中学数学 小学英语 中学英语 物理教学 化学教学 生物教学 政治教学 历史教学 地理教学 科学教学 音乐教学 美术教学 体育教学 信息技术 班主任管理 校长管理 幼教 教育管理 微课教学 作文教学 德育教学 教学设计
医学论文
内科医学 外科医学 预防医学 妇科医学 检测医学 眼科医学 临床医学 药学论文 口腔医学 中西医 中医学 外科 护理 基础医学 急救医学 老年医学 医学实验 儿科医学 神经医学 兽医学 肿瘤医学 综合医学
职业教育
教育学原理 电影文学教育 学前教育 教育学管理 高等教育学 教育技术学 职业技术教育 成人教育学 特殊教育学 教育心理学 家庭教育 教育毕业 中专中职教育 教学设计 国学教育 学术研究 大学教育
药学卫生
社区门诊 医药学 医患关系 医院管理 疾病预防 保健医学 公共卫生 医学教育
文科论文
农业经济 工商管理毕业 会计毕业 行政管理 法律毕业 市场营销 经济毕业 汉语言文学 财务管理 物流管理 人力资源 旅游管理 国际贸易 物业管理 新闻学 企业管理 金融银行 社会科学 食品安全 办公档案 审计学 税务税收学 外国文学 哲学
理科论文
机电毕业 土木工程 计算机毕业 电气毕业 建筑毕业 电子商务 工程毕业 设计毕业 机械制造 汽车毕业 园林毕业 农学毕业 数控毕业 软件技术 水利工程 环境生态 畜牧渔业 化工毕业 科技创新 石油矿藏
论文格式
开题报告 论文题目 摘要关键词 目录提纲 论文致谢 参考文献 附录其他 论文答辩
职业论文
教育论文 经济论文 科技论文 财会论文 管理论文 医学论文 法学论文 文学论文 工业论文 建筑论文 农业论文 水利论文 计算机论文 社科论文 机械论文 生态环境 中西文化

先发表后付款 不成功可退款

权威机构认证 专注期刊10余年 1000余家杂志社长期合作

缔冠期刊网

首页 网站地图 返回顶部
Copyright © 1998- 缔冠期刊网