买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于PCI9054的多总线通信板卡电路及控制方法_国营芜湖机械厂_201710899682.8 

申请/专利权人:国营芜湖机械厂

申请日:2017-09-28

公开(公告)日:2024-03-22

公开(公告)号:CN107807558B

主分类号:G05B19/042

分类号:G05B19/042

优先权:

专利状态码:有效-授权

法律状态:2024.03.22#授权;2018.04.10#实质审查的生效;2018.03.16#公开

摘要:本发明涉及基于PCI9054的多总线通信板卡电路及控制方法,包括主芯片、电源电路、JTAG电路、配置电路、复位电路、时钟电路、EEPROM电路、PCI接口电路、接口,主芯片与电源电路、JTAG电路、配置电路、复位电路、时钟电路相连,EEPROM电路为PCI芯片提供配置信息,配置电路为主芯片FPGA芯片提供配置信息,板卡和上位机使用DMA传输命令帧和数据帧,通过FPGA对命令帧的解析决定传输方向和选定传输RS232、RS422通道数据。本发明提供了一种PCI总线+1路RS232总线+3路RS422总线的多总线板卡解决方案,可实现PCI总线与RS232总线、RS422总线之间的相互通信,而且具有集成度高、总线通信方式可选、降低了板卡设计成本等优点,可以广泛应用于各类总线测试系统中。

主权项:1.基于PCI9054的多总线通信板卡电路,包括主芯片1、电源电路2、JTAG电路3、配置电路4、复位电路5、时钟电路6、EEPROM电路7、PCI接口电路8,其特征在于:所述主芯片1分别连接有所述电源电路2、JTAG电路3、配置电路4、复位电路5、时钟电路6、PCI接口电路8,所述PCI接口电路8连接有EEPROM电路7;所述时钟电路6由一个50MHz的有源晶振产生,所述复位电路5包括一个低电平复位芯片MAX706SESA,所述配置电路4包括串行配置器件EPCS16;所述PCI接口电路8包括PCI9054芯片,所述EEPROM电路7为所述PCI9054芯片提供配置信息;所述EEPROM电路7包括芯片十一U11,所述芯片十一U11为EEPROM芯片93LC56L,所述芯片十一U11的3脚与4脚相连后串接有电阻二十一R21,所述电阻二十一R21串接有短路块七J7后接地,所述电阻二十一R21远离所述短路块七J7的一端连接有电阻十六R16,所述电阻十六R16串接有短路块八J8后接电源VDD,所述芯片十一U11的5脚接地,所述芯片十一U11的6脚串接有电阻十七R17后接电源VDD,所述芯片十一U11的7脚串接有电阻十八R18后接地,所述芯片十一U11的8脚连接电源VDD;PCI9054芯片通过配置DMA通道快速地在存储器或内存之间读取和写入数据而不需要占用CPU资源,通过配置PCI9054芯片的DMA通道实现DMA传输,DMA传输中,通过设置函数PlxPci_DmaTransferUserBuffer*pDevice,channel,*pDmaParams,Timeout_ms传输参数配置相关寄存器值;基于PCI9054的多总线通信板卡电路的控制方法包括步骤:S1上位机启动DMA传输发送命令帧;S2FPGA解析命令帧;S3若命令传输方向为PCI-Local,则转至步骤S4,若命令传输方向为Local-PCI,则转至步骤S7;S4根据命令选择通道,上位机向FPGA发送数据;S5数据存入PCI板卡的FIFO;S6数据被选中的通道发出;S7根据命令选择通道,将被选中通道数据存入PCI的FIFO;S8判断PCI的FIFO中是否有数据,若有则进入步骤S9,若没有则返回步骤S7;S9读取FIFO中的数据;DMA传输包括两个重要参数,采用结构体定义:PLX_DEVICE_OBJECT结构用于描述被选中的PLX器件,具体参数定义如下面结构体注释所示; PLX_DMA_PARAMS结构用于描述DMA传输参数,具体参数定义如下面结构体注释所示; 上述控制方法中关于命令帧与数据的发送均为基于DMA的方式传输,基于VC的DMA数据传输流程如下:PCI板卡至本地总线数据传输流程图,先根据输入数据位数申请用户缓存空间,然后将输入数据写入缓存,再而设置DMA通道参数,打开DMA通道,设置DMA传输参数,DMA传输用户缓存后关闭DMA通道,最后释放用户缓存,完成PCI板卡到本地总线的数据传输;本地总线至PCI总线的数据传输流程图,主芯片根据输入位数申请用户缓存,设置DMA通道参数,打开DMA通道,设置DMA传输参数,DMA传输用户缓存,PCI总线将缓存中数据读出,将数据送至编辑框显示,最后关闭DMA通道后释放用户缓存,完成本地至PCI总线的数据传输。

全文数据:基于PC19054的多总线通信板卡电路及控制方法技术领域[0001]本发明涉及多总线板卡通信领域,具体的说是一种基于PCI9054的多总线通信板卡电路及控制方法。背景技术[0002]PCI总线由ISA总线发展而来,具有传输能力强、多总线共存、独立于CPU以及自动识别配置外设等特点,目前被广泛应用于工控测试系统中。[0003]目前,有关PCI的设计一直是众多学者研究的热点之一,其中杭州忆恒科技有限公司的贺惠农申请的中国发明专利《一种PCI总线的高速数据通讯接口卡》的公开号为CN1700148,公开日为20051123,公开了一种采用CPLD+PCI9054的方案研制的PCI总线板卡,哈尔滨工业大学的陈兴林等人申请的中国发明专利《适用于多总线协议、多扩展接口的信号采集板卡》,公开号为CN104020691A,公开日为20140903,公开了一种采用FPGA+DSP的方式进行多路总线通讯,但以FPGA为微处理器,以PCI9054总线协议芯片,研制一张具有多总线(1路RS232总线、3路RS422总线)的通信卡的研究一直长期被忽视。发明内容[0004]本发明所要解决的技术问题在于市面上存在的PCI总线卡大多只能实现单一总线的通讯,具有PCI总线+1路RS232总线+3路RS422总线的多总线通信板卡的研究长期被忽视的现状,本发明针对目前PCI总线通讯模块的研制现状,为掌握PCI板卡设计及其通信原理,开发基于PCI接口的多总线通信卡,在对PCI9054及其PCI卡开发流程进行系统全是的基础上,以PCI9054位PCI接口协议芯片,以Cyclonem系列FPGAEP3C5E144C8位本地总线控制器,采用“FPGA+PCI9054”架构,设计一种基于PCI接口的具有1路RS232、3路RS422收发的多总线通信卡,给出该模块的硬件设计与软件开发包括基于VC++的上位机测试软件与基于Verilog的板卡代码),并对其通信功能进行试验验证。[0005]所设计的板卡基于PCI总线,将RS232总线、RS422总线进行整合,而不是设计基于PCI总线的RS232总线卡或RS422总线卡,可实现PCI总线与RS232总线、RS422总线之间的相互通信。[0006]本发明所要解决的技术问题采用以下技术方案来实现:[0007]基于PCI9054的多总线通信板卡电路,包括主芯片、电源电路、JTAG电路、配置电路、复位电路、时钟电路、EEPROM电路、PCI接口电路,所述主芯片分别连接有所述电源电路、JTAG电路、配置电路、复位电路、时钟电路、PCI电路,所述PCI电路连接有EEPROM电路。[0008]所述主芯片采用CycloneIII系列FPGAEP3C5E144C8芯片)为处理器。[0009]所述电源电路包括产生1.2V、2.5V、3.3V、5V的工作电压电路,其中1.2V工作电压由ASMl117-1.2元件提供,2.5V工作电压由ASMl117-2.5元件提供,3.3V工作电压由ASMlll7-3.3元件提供,5V工作电压由ASMlll7-5元件提供。[0010]所述时钟电路由一个50MHz的有源晶振产生,所述复位电路包括一个低电平复位芯片MAX706SESA,所述配置电路包括串行配置器件EPCS16。[0011]所述PCI电路包括PCI9054芯片,所述EEPROM电路为所述PCI9054芯片提供配置信息。[0012]所述EEPROM电路包括芯片^^一,所述芯片^^一为EEPROM芯片93LC56L,所述芯片十一的3脚与4脚相连后串接有电阻二十一,所述电阻二十一串接有按键七后接地,所述电阻二十一远离所述按键七的一端连接有电阻十六,所述电阻十六串接有按键八后接电源VDD,所述芯片i^一的5脚接地,所述芯片^^一的6脚串接有电阻十七后接电源VDD,所述芯片^^一的7脚串接有电阻十八后接地,所述芯片^^一的8脚连接电源VDD。[0013]一种基于PCI9054的多总线通信板卡电路的控制方法,包括步骤:[0014]SI上位机启动DMA传输发送命令帧;[0015]S2FPGA解析命令帧;[0016]S3若命令传输方向为PCI-Local,则转至步骤S4,若命令传输方向为Local-PCI,则转至步骤S7;[0017]S4根据命令选择通道,上位机向FPGA发送数据;[0018]S5数据存入PCI板卡的FIFO;[0019]S6数据被选中的通道发出;[0020]S7根据命令选择通道,将被选中通道数据存入PCI的FIFO;[0021]S8判断PCI的FIFO中是否有数据,若有则进入步骤S9,若没有则返回步骤S7;[0022]S9读取FIFO中的数据。[0023]本发明的有益效果是:本发明不仅可以系统掌握PCI板卡设计及其通信原理,而且具有集成度高、总线通信方式可选、降低了板卡设计成本等优点,可以广泛应用于各类总线测试系统中。附图说明[0024]下面结合附图和实施例对本发明进一步说明。[0025]图1为本发明的整体原理图;[0026]图2为本发明的EEPROM电路图;[0027]图3为本发明的PCI板卡至本地总线数据传输流程图;[0028]图4为本发明的本地总线至PCI总线的数据传输流程;[0029]图5为本发明的控制方法流程图。具体实施方式[0030]为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面对本发明进一步阐述。[0031]如图1所示的整体原理图:[0032]主芯片1采用CycloneIII系列FPGAEP3C5E144C8芯片)芯片,所述主芯片1的最小系统电路设计包括时钟电路6、复位电路7、JTAG电路3、配置电路4、电源电路2,所述时钟电路6的时钟信号由一个50MHz的有源晶振产生,为所述主芯片1提供稳定的时钟信号,所述复位电路7由一个低电平复位芯片MAX706SESA,复位电路7能够在电源投入时对主芯片复位,也能在检测出电源掉电或电源瞬间短路时给出复位信号,同时具有在电源电压上升时复位信号的解除功能,保证了所述主芯片1运行的稳定性,能够在电源和环境干扰或程序跑飞的情况下准确复位芯片,保证程序运行的可靠性。所述JTAG电路3连接主芯片的JTAG接口用于芯片程序下载和仿真调试。[0033]所述配置电路4包括EPCS16芯片,EPCS16芯片是拥有16MbitFlash存储空间的串行配置器件,拥有包括在系统可编程ISP、flash存储器访问接口、节省单板空间的小型集成电路SOIC封装等高级特征,是对CycloneFPGA芯片系列在大容量及低成本的应用环境下的绝佳选择,为所述主芯片1提供配置信息。[0034]所述电源电路2包括产生1.2V、2.5V、3.3V、5V的工作电压电路,其中1.2V、2.5V为FPGA的内核电压、锁相环模拟电压,1.2V工作电压由ASM1117-1.2元件提供,2.5V工作电压由ASMl117-2.5元件提供,3.3V工作电压为FPGA的IO电压与其他器件(如NLSX4373DR2G、PCI9054、SP3232EEN等)工作电压,由ASMl117-3.3元件提供,5V为部分器件(如MAX490ESA等工作电压,上述1.2¥、2.5¥、3.3¥以及5¥的工作电压均由工控机?:1插槽转换提供。[0035]PCI电路8包括PCI9054芯片,所述PCI9054芯片连接有PCI总线插口,EEPROM电路7为所述PCI9054芯片提供配置信息。[0036]如图2所示的EEPROM电路图:[0037]所述EEPROM电路7包括芯片^^一Ull,所述芯片^^一Ul1为EEPROM芯片93LC56L,所述芯片i^一U11的3脚与4脚相连后串接有电阻二^^一R21,所述电阻二^^一R21串接有短路块七J7后接地,所述电阻二十一R21远离所述短路块七J7的一端连接有电阻十六R16,所述电阻十六R16串接有短路块八J8后接电源VDD,所述芯片^^一Ul1的5脚接地,所述芯片^^一Ull的6脚串接有电阻十七R17后接电源VDD,所述芯片^^一Ull的7脚串接有电阻十八R18后接地,所述芯片i^一Ul1的8脚连接电源VDD。板卡初次上电时,所述EEPROM芯片为空白,需要在打开计算机前将EEPROM芯片的3脚拉低,即插上短路块J7,此时PCI9054将不从EEPROM中读取配置信息,寄存器按照默认值配置,计算机正常开启后(PCI9054分配内存后),将EEPROM芯片的3脚拉高,即插上短路块J8,即可对EEPROM进行在线烧写。[0038]所述主芯片1还引出有一路RS232和三路RS422信号,通过DB25接口与外设相连。[0039]下面阐述本多总线通信板卡的开发流程:[0040]a安装软件开发工具PLX_SDK:PLX_SDK为软件开发包,该软件包对PLX公司生产的PCI芯片有良好的兼容性,并且提供了完善的API函数库和调试工具,方便用户开发应用程序;[0041]b将板卡插入PCI插槽,安装桥芯片驱动:PLX_SDK中包含了PLX公司所有PCI芯片驱动,计算机查到PCI板卡硬件后,在硬件安装导向中选择PLX_SDK目录下的驱动安装即可;[0042]c烧写EEPR0M:既可通过烧写器将编辑好的.hex文件写入EEPR0M,也可通过PLX_SDK提供的PLXMon在线进行烧写;[0043]d开发板卡测试软件:利用PLX公司提供的API函数库,具体包括寻找器件、打开器件、数据传输以及关闭件等函数,开发上位机测试软件;[0044]e开发板卡本地总线测试软件:在CPLDFPGA器件开发环境,基于Verilog或VHDL语言,开发本地总线测试软件;[0045]f对板卡功能进行测试:针对所研制的板卡,利用所开发的上位机与板卡测试软件,对其功能进行测试。[0046]下面阐述本通信板卡的控制方法,如图5所示的控制方法流程图:[0047]基于PCI9054的多总线通信板卡电路的控制方法,包括步骤:[0048]SI上位机启动DMA传输发送命令帧;[0049]S2FPGA解析命令帧;[0050]S3若命令传输方向为PCI-Local,则转至步骤S4,若命令传输方向为Local-PCI,则转至步骤S7;[0051]S4根据命令选择通道,上位机向FPGA发送数据;[0052]S5数据存入PCI板卡的FIFO;[0053]S6数据被选中的通道发出;[0054]S7根据命令选择通道,将被选中通道数据存入PCI的FIFO;[0055]S8判断PCI的FIFO中是否有数据,若有则进入步骤S9,若没有则返回步骤S7;[0056]S9读取FIFO中的数据。[0057]所述步骤S5中,FPGA从PCI9054读取PCI总线数据,并存入PCI-Loacal方向FIFO。[0058]所述步骤S6中,当FIFO中有数据存入,便开始向命令帧所配置的RS232、RS422通道发送数据。[0059]所述步骤S7中,FPGA从Local-PCI方向的FIFO中读取RS232、RS422通道采集的数据,再通过PCI9054发送至上位机。[0060]PCI9054芯片通过配置DMA通道可以快速地在存储器或内存之间读取和写入数据而不需要占用CPU资源,大大节省了硬件资源和时间,本发明提出的一种基于PCI9054的多总线通信板卡通过配置PCI9054芯片的DMA通道实现DMA传输,DMA传输中,通过设置函数PlxPci—DmaTransferUserBuffer氺pDevice,channel,氺pDmaParams,Timeout_ms传输参数配置相关寄存器值,具体参数值如下表所示:[0062]表IDM传输用户缓存函数参数说明[0063]DM传输包括两个重要参数,采用结构体定义:[0064]PLX_DEVICE_0BJECT结构用于描述被选中的PLX器件,具体参数定义如下面结构体注释所示。[0069]上述控制方法中关于命令帧与数据的发送均为基于DMA的方式传输,基于VC的DMA数据传输流程如下:[0070]如图3所示的PCI板卡至本地总线数据传输流程图,先根据输入数据位数申请用户缓存空间,然后将输入数据写入缓存,再而设置DM通道参数,打开DM通道,设置DM传输参数,DMA传输用户缓存后关闭DMA通道,最后释放用户缓存,完成PCI板卡到本地总线的数据传输。[0071]如图4所示的本地总线至PCI总线的数据传输流程图,主芯片根据输入位数申请用户缓存,设置DMA通道参数,打开DMA通道,设置DMA传输参数,DMA传输用户缓存,PCI总线将缓存中数据读出,将数据送至编辑框显示,最后关闭DMA通道后释放用户缓存,完成本地至PCI总线的数据传输。[0072]下面阐述本发明的一个实施例:[0073]利用所开发的上位机测试软件、串口调试助手以及板卡功能代码,针对DMA传输方式,可对PCI读写功能进行实验验证。[0074]①PCI—Local方向传输计算机通过PCI总线写入的数据通过串口发送出去):[0075]a将DMA传输模块的FPGA程序下载至FPGA中。[0076]b打开串口调试助手,设置波特率为19200。[0077]c运行上位机应用程序,在上位机界面中选择DMA传输模式,选择传输方向,选择通道4串口),输入传输数据“01020304”并点击“打开板卡”按钮;[0078]d点击“传输数据”按钮,上位机对PCI9054进行DMA传输配置,配置完成后发起传输,上位机向本地基地址写入指定数据Olh02h03h04h,FPGA接收到相应数据并送至串口调试助手界面显示。[0079]②Local—PCI方向传输通过串口写入的数据可通过PCI总线读取到计算机中):[0080]a将DMA传输模块的FPGA程序下载至FPGA中。[0081]b打开串口调试助手,设置波特率为19200,输入传输数据“01020304”,每200ms循环发送。[0082]c运行上位机应用程序,在上位机界面中选择DMA传输模式,选择传输方向,选择通道4串□,点击“打开板卡”按钮;[0083]d点击“传输数据”按钮,上位机对PCI9054进行DMA传输配置,配置完成后发起传输,FPGA将指定本地基地址的数据Olh02h03h04h传输至上位机并在应用程序界面中显不O[0084]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

权利要求:1.基于PCI9054的多总线通信板卡电路,包括主芯片(I、电源电路(2、JTAG电路(3、配置电路4、复位电路5、时钟电路6、EEPROM电路⑺、PCI接口电路8,其特征在于:所述主芯片⑴分别连接有所述电源电路⑵、JTAG电路3、配置电路4、复位电路5、时钟电路⑹、PCI电路8,所述PCI电路⑻连接有EEPROM电路⑺。2.根据权利要求1所述的基于PCI9054的多总线通信板卡电路,其特征在于:所述主芯片⑴采用CycloneIII系列FPGA,型号为EP3C5E144C8。3.根据权利要求1所述的基于PCI9054的多总线通信板卡电路,其特征在于:所述电源电路⑵包括产生1.2¥、2.5¥、3.3¥、5¥的工作电压电路,其中1.2¥工作电压由六3]«1117-1.2元件提供,2.5V工作电压由ASM1117-2.5元件提供,3.3V工作电压由ASMlll7-3.3元件提供,5V工作电压由ASM1117-5元件提供。4.根据权利要求1所述的基于PCI9054的多总线通信板卡电路,其特征在于:所述时钟电路(6由一个50MHz的有源晶振产生,所述复位电路(5包括一个低电平复位芯片MAX706SESA,所述配置电路⑷包括串行配置器件EPCS16。5.根据权利要求1所述的基于PCI9054的多总线通信板卡电路,其特征在于:所述PCI电路8包括PCI9054芯片,所述EEPROM电路7为所述PCI9054芯片提供配置信息。6.根据权利要求5所述的基于PCI9054的多总线通信板卡电路,其特征在于:所述EEPROM电路⑺包括芯片^^一Ull,所述芯片^^一Ull为EEPROM芯片93LC56L,所述芯片i^一Ull的3脚与4脚相连后串接有电阻二^^一R21,所述电阻二^^一R21串接有短路块七J7后接地,所述电阻二十一(R21远离所述短路块七J7的一端连接有电阻十六R16,所述电阻十六R16串接有短路块八J8后接电源VDD,所述芯片^^一Ull的5脚接地,所述芯片i^一Ull的6脚串接有电阻十七R17后接电源VDD,所述芯片^^一Ull的7脚串接有电阻十八R18后接地,所述芯片i^一Ull的8脚连接电源VDD。7.基于PCI9054的多总线通信板卡电路的控制方法,其特征在于:包括步骤:51上位机启动DMA传输发送命令帧;52FPGA解析命令帧;53若命令传输方向为PCI-Local,则转至步骤S4,若命令传输方向为Local-PCI,则转至步骤S7;54根据命令选择通道,上位机向FPGA发送数据;55数据存入PCI板卡的FIFO;56数据被选中的通道发出;57根据命令选择通道,将被选中通道数据存入PCI的FIFO;58判断PCI的FIFO中是否有数据,若有则进入步骤S9,若没有则返回步骤S7;59读取FIFO中的数据。

百度查询: 国营芜湖机械厂 基于PCI9054的多总线通信板卡电路及控制方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。