• 首页
  • 公司介绍
    • 公司简介
    • 实力证明
    • 产品工作原理
    • 行业应用与解决方案
  • 全新热敏温控技术
    • 感温材料介绍
  • 产品系列
    • 定制产品
      • 船用不锈钢温控阀温包
      • TV/HAT系列温控阀
      • 洗衣机、洗碗机热动元件
    • 温度压力安全阀(T/P阀)
      • 热水器温度压力安全阀
      • 空压机温度压力安全阀
      • 蒸汽锅炉温度压力安全阀
    • T/P 阀感温棒
    • 电热执行器温包
      • TEA-500 电热执行器温包
      • TEA-501 电热执行器温包
      • TEA-504 电热执行器温包
    • 温控阀温包
      • 温控阀温包 – 300系列
      • 温控阀温包 – 301系列
    • 恒温混水阀温包
      • 0829 恒温混水阀温包
      • 5464 恒温混水阀温包
    • 防冻阀温包
    • 散流器风口温包
    • 汽车温控阀温包
      • 汽车发动机温控阀温包
      • 柴油过滤模块温包
  • 新闻资讯
  • 联系我们
  • Home
  • 新闻资讯
  • 基于FPGA的高速PCMAxpress30 DMA控制器的设计
 

基于FPGA的高速PCMAxpress30 DMA控制器的设计

by admin / 2020/06/27 / Published in 未分类

  PCI Express 3.0是最新的高速数据传输协议。文介绍了基于FPGA的PCI Express 3.0高速传输系统的DMA控制器的结构,并详细说明了DMA控制器的逻辑设计。DMA控制器基于Xilinx的PCI Express硬核Virtex-7 FPGA Gen3集成模块,并封装在标准FIFO结构中,可以轻松连接采集数据源和目标读取系统。
  了验证设计的功能和可靠性,本文档构建了基于PCI Express 3.0 x8通道的高速捕获和读取验证系统。验表明,DMA控制器已达到设计目标。DMA传输大小为16MB时,8通道DMA读写速度可以达到4900MB / s,可以满足大多数超数据采集和读取系统的传输需求-快。着海量数据存储和传输系统的应用越来越广泛,对传输总线带宽的要求也越来越高。速串行总线以其优越的性能已被广泛用于数据传输系统中。中最具代表性的是PCI Express总线。时,随着FPGA技术的大规模应用,越来越多的大型系统正在使用PCI Express总线连接FPGA处理卡和PC进行数据交互。管许多FPGA公司已经发布了基于PCI Express协议的IP硬核,但是掌握这些硬核的使用需要对PCI Express协议和硬核的直接使用有一定的了解,但是带宽是体积小,开发困难,便携性差。点这些是PCI Express接口当前设计背后的瓶颈。了减少开发难度,增加带宽和可移植性,许多现有解决方案是在PCI Express硬核中添加高速DMA控制器单元,以满足设计要求。文提出了一种基于Xilinx FPGA PCI Express 3.0接口的新DMA控制器架构,以提高数据传输效率,通道带宽,灵活性和可靠性。硬件方面,我们基于Xilinx的XC7VX690T-2FFG1761C FPGA芯片,实现PCI Express 3.0的硬件接口。软件方面,基于Windows驱动程序内核,我们设计了一种主机驱动程序,该驱动程序支持诸如MSI分散/收集和中断之类的机制。个系统参照PCI Express 3.0协议的规范,最终实现了DMA模式下高速数据传输的验证平台,实现了从卡到卡的高速数据通信。PC和PC到卡。PCI Express总线技术是替代PCI的第三代I / O技术。PCI Express总线是为计算机和通信平台定义的通用,高性能I / O互连总线。目前为止,已经发布了三个正式版本:PCI Express 1.0,PCI Express 2.0和PCI Express 3.0。向单通道带宽为:250 MB / s,500 MB / s,1 GB / s。PCI Express架构的设计非常先进,采用类似于网络架构的OSI分层架构设计方案,如图2.1所示。据协议规范,PCI Express总线层次结构分为物理层体系结构(物理层),数据链路层(数据链路层)和事务层(事务层)。

基于FPGA的高速PCMAxpress30 DMA控制器的设计_no.151

  PCI Express具有独特的时钟恢复核心,具有高速串行通信接口,可将时钟集成到传输的数据中,这不仅减少了时钟引脚,而且极大地提高了传输速度,从而成为并行传输带宽的瓶颈。PCI Express是一种点对点互连方法。个设备通过独立的链路连接,这提供了专用带宽并大大提高了传输效率。
  PCI Express物理连接具有极大的灵活性,可以根据实际需要以X1,X2,X4,X8,X16和X32链接模式进行配置。果,传输速度将成倍增长。输的形式,保证了数据传输的完整性和可靠性。PCI Express协议添加了数据重传机制,以提高数据传输的可靠性。是由于PCI Express的这些技术特性,它被越来越多地用于计算机系统和大量数据传输接口的体系结构领域,尤其是在控制器的传输模式下。加了高速DMA,大大提高了PCI Express带宽和传输效率,因此在高速系统领域具有广阔的前景。文基于Xilinx提供的PCI Express 3.0硬核:PCI Express v3.2的Virtex-7 FPGA Gen3集成模块(称为G3IBP),并且是一种高速DMA控制器。G3IBP是一种可扩展且可靠的宽带串行互连解决方案。帧如图3.1所示,其中m_axis_rq_ *,m_axis_rc_ * s_axis_cq_ *和s_axis_cc_ *是要实现的数据信号(表3.1定义了信号接口)与用户层的互连。G3IBP支持灵活的链接配置x1,x2,x4和x8,与PCI Express gen1(2.5GT / s),PCI Express gen2(5.0GT / s),PCI Express gen3(8.0GT / s)三种速度兼容类链接。G3IBPIP内核实现了PCI Express协议的物理层和数据链路层的数据包处理。发人员只需要在事务层集中处理TLP消息,恒温阀芯就可以大大减少开发难度。图说明了G3IBP的组成架构,该架构主要由五个部分组成。进的AXI4接口主要实现用户端数据管理;配置管理接口实现了主机与PCI Express设备之间的配置交互。
  置中断控制器主要配置MSI中断请求向量INTx;时钟重置接口和PCIE接口负责同一块主板。立物理层连接。Xilinx PCI Express IP内核为PCI Express接口提供了完整的软件包,但是它仍然有两个缺点。先,封装的接口总是非常复杂,要求设计人员对PCI Express传输协议有一定的了解。二点是传输速率远低于PCI Express协议指定的数据传输速率。此,非常有必要设计一种在PCI Express IP硬核外部具有简单接口的DMA模块,这可以简化PCI Express IP硬核的复杂接口,从而使设计人员无需”对PCI Express传输协议有深入的了解。解可以轻松,快速地使用PCI Express IP内核,并可以大大提高PCI Express接口的传输速率。DMA是一种特殊的控制器,不仅负责在FPGA卡和主机之间传输数据,而且还负责包装和解压缩来自PCI Express事务层的TLP消息。于PCI Express IP内核本身不支持PCI Express事务,因此需要用户干预。FPGA灵活地组织和分析事务层的TLP,以完成一系列数据传输和控制。

基于FPGA的高速PCMAxpress30 DMA控制器的设计_no.175

  后锁定此空间,以防止其他程序占用它。旦FPGA中的用户数据达到一定大小,就会向PC发送中断,以通知PC读取数据。PC接收并分析中断,将寄存器写入空间BAR0,包含上述物理地址的起始地址,空间的大小,然后启动DMA。旦FPGA DMA引擎从DMA接收到启动命令,它就会主动组织PCI Express存储器以写入TLP并将其发送到PC。据包中包含的数据是用户必须发送到PC的数据。DMA引擎将自动一个接一个地填写TLP数据包的地址和其他信息,直到达到用户定义的长度为止。时,以上物理内存对应于用户所需的所有数据。过程完成后,FPGA将中断发送到主机。后锁定此空间,以防止其他程序占用它。旦FPGA中的可用数据空间达到一定水平,就会向PC发送中断,以通知PC发送数据。PC接收并分析中断,将寄存器写入空间BAR0,其中包含起始地址和上面物理地址空间的大小,然后启动DMA。DMA接收到启动命令后,FPGA的DMA引擎会主动组织PCI Express存储器以读取TLP数据包并将其发送到PC。组数据是用户必须发送到PC的数据。DMA引擎将自动一个接一个地填写TLP数据包的地址和其他信息,直到达到用户定义的长度为止。PC收到读取请求时,它将自动在上方的物理空间中整理数据,以完成TLP并将其发送回FPGA。收并分析FPGA之后,它将按顺序存储在相应的缓冲区中。过程完成后,FPGA将中断发送到主机。据上述DMA传输过程,本节详细描述DMA控制器的设计,其中DMA主模块主要用于建立DMA数据通道并发送DMA读写请求, DMA从模块主要用于传输DMA控制命令信息。令传输单元模块主要用于传输用户定义的控制指令。要模块的详细设计如下。DMA模块提供2个DMA通道,如图4.1所示。DMA通道0是PC的DMA,用于从PCI Express接口读取数据。DMA通道1是PC的DMA,用于将数据发送到PCI Express接口。个频道都可以支持个性化的编程,控制和状态检测,并且具有很大的性别灵活性。求控制逻辑的结尾主要负责处理DMA通道的读/写请求,并且还接收来自硬核的读取数据包的结尾。求逻辑负责接收来自PCI Express IP内核的Completer reQuest模块的消息中断请求,并将读/写请求从用户应用程序层内存发送到Requester reQuest模块。发生一个或多个通道请求时,DMA读写请求逻辑应隐藏没有足够信用的请求,然后根据循环优先级机制过滤请求。束逻辑从PCI Express IP硬核请求者的完成模块接收内存中读取的完成数据包,匹配相应的整理器资源,DMA通道,整理器映射的本地地址并发出警告相应的DMA请求通道,以准备接收读取结束的数据包并传输数据。的有效负载被传输到应用层。成0和完成1处理未发布的请求。果在给定时间内未收到完成包,则定时错误检测逻辑将发出信号以结束传输。个完成都分配有一个介于0到7之间的标签号。外,外部数据接口也由主模块控制,以以下形式提供输入和输出数据接口:标准FIFO接口。模块从Xilinx PCI Express IP内核接收数据传输请求,并提供用户应用层数据包所需的控制信息,例如初始地址,基地址寄存器( BAR)和数据包的长度。子模块接收到信息后,应用层决定继续正常传输或拒绝数据包。模块包含PCI Express配置信息。从属模块获得读取PC终端启动的配置信息的请求。时,由主机发送的写入配置信息的请求还将指令写入从模块。了基本的数据读取和写入操作外,为了在此设计中促进FPGA和PC之间的通信并提高系统灵活性,还提供了一组控制命令总线。

基于FPGA的高速PCMAxpress30 DMA控制器的设计_no.128

  单以寄存器的形式读写。配置信息表中,空间是作为命令寄存器单独分配的,PC可以通过基本的写配置和操作信息通过PCI Express表访问块地址。取配置信息。DMA控制模块中,块寄存器信息作为一组命令控制总线进行传输,可以为PC和FPGA之间的个性化通信提供良好的支持。初始IDLE状态下,等待注册表值加载并进入RUN状态。RUN状态下,如果有数据传输请求,则进入DATA REQUEST状态传输请求;此时,如果应用层发送了停止命令,则进入CPL ABORT状态。果收到结束信号以完成请求,则输入WAIT COMPLETION;如果收到结束信号,并且没有完成请求,请输入COMPLETE。该注意的是,尽管DMA控制单元有两个DMA模块来单独操作,但是一次只能有一个DMA模块可以操作,即DMA控制器是提供的半双工接口。并且他不能同时读写。操作只能在不同的时间进行读写。PCI Express IP内核必须在完全完成传输之前并已接收所有完成数据包,并确保所有完成数据包的状态均正常才能完全完成传输。果应用层需要提前终止以完成数据包的接收,这将导致数据无法控制并引起异常错误。了简化用户与数据采集/读取系统之间的连接,我们向DMA收发器终端添加了一级FIFO作为数据缓冲区。终实现的DMA控制器的总体架构在下面的图4.4中说明。统检查使用Xilinx VC709 FPGA开发板。脑主板使用华硕X99-DELUXE主板。PCI Express时钟由100 MHz主板提供。IP硬核中的时钟模块生成250 MHz的用户时钟。户数据的宽度为256位(通道X8),因此从理论上讲,单纯形带宽可以达到8 GB / s。FPGA芯片使用Xilinx公司的XC7VX690T-2FFG1761C。FPGA开发环境使用Xilinx Vivado 2014.4。验测试的目的是验证设计功能的准确性和系统性能的可靠性。功能检测方面,当数据从FPGA传输到PC时,在FPGA内部生成增量数据,并且PC端完成对数据的检测。数据从PC传输到FPGA时,PC会生成增量数据,FPGA会完成数据的检查和检测。过大量测试后,从PC到FPGA的数据传输以及从FPGA到PC的数据传输没有任何数据传输错误,因此DMA控制器的功能测试是正确的。能测试主要测量传输带宽的大小。指示器对于系统设计至关重要。
  们通过在上位PC计算机上添加计时模块来测量传输速度。图5.1所示,当DMA的大小不同时,传输速度的大小也随之增加。DMA的大小为16 MB时,DMA的读/写速度大于4900 MB / s。合设计性能指标。

基于FPGA的高速PCMAxpress30 DMA控制器的设计_no.61

  靠性测试主要测量长时间运行期间系统的稳定性。测试过程中,PC侧的PC每10分钟记录一次当前的传输速度,并绘制了图5.2中的时间-速度图。试表明,无论是从FPGA到PC的数据传输方向,还是从PC到PC的数据传输方向,速度均稳定在4900 MB / s以上,达到了系统设计指标。文首先介绍了PCI Express的技术特性,重点介绍了DMA控制器的设计和实现。了测试功能,性能指标和设计稳定性,本文建立了PCI Express 3.0 X8通道传输系统并在半双工传输条件下测试指标。据实验结果,本文设计的DMA控制器可以稳定运行,并且DMA读/写的设计带宽可以达到4900 MB / s以上。过长时间的测试,速度没有降低,可靠性达到了设计指标。项目的设计可广泛应用于雷达,通信,测试测量仪器及其他需要高性能传输,具有较高应用价值的应用系统中。
  本文转载自
  恒温阀芯 https://www.wisdom-thermostats.com

归档

  • 2020年八月
  • 2020年七月
  • 2020年六月
  • 2020年五月
  • 2020年四月
  • 2020年三月
  • 2020年二月
  • 2020年一月
  • 2019年十二月
  • 2019年十一月
  • 2019年十月
  • 2019年九月
  • 2019年八月
  • 2019年七月
  • 2019年六月
  • 2019年五月
  • 2019年四月
  • 2019年三月
  • 2019年二月
  • 2019年一月
  • 2018年十二月
  • 2018年十一月
  • 2018年十月
  • 2018年八月
  • 2018年七月
  • 2018年六月
  • 2018年五月
  • 2018年四月
  • 2018年一月
  • 2017年十月

文章分类

  • 技术
  • 资讯

关于威仕顿

  • 公司简介
  • 实力证明
  • 感温材料介绍
  • 全新热敏温控技术
  • 产品工作原理
  • 行业应用与解决方案
  • 版权与条款

产品

  • 定制产品
    • 船用不锈钢温控阀温包
    • TV/HAT系列温控阀
    • 洗衣机、洗碗机热动元件
  • 温度压力安全阀(T/P阀)
    • 热水器温度压力安全阀
    • 空压机温度压力安全阀
    • 蒸汽锅炉温度压力安全阀
  • 电热执行器温包
    • TEA-500 电热执行器温包
    • TEA-501 电热执行器温包
    • TEA-504 电热执行器温包
  • 温控阀温包
    • 温控阀温包 – 300系列
    • 温控阀温包 – 301系列
  • 恒温混水阀温包
    • 0829 恒温混水阀温包
    • 5464 恒温混水阀温包
  • T/P 阀感温棒
  • 防冻阀温包
  • 散流器风口温包
  • 汽车温控阀温包
    • 汽车发动机温控阀温包
    • 柴油过滤模块温包

联系我们

Tel.: 0574 - 8805 9937
Mob.: 180 6927 2889
技术咨询: 181 0689 9222

Email: sales@wisdom-thermostats.com

浙江威仕顿温控科技有限公司
宁波市 鄞州区 首南街道,萧皋西路 615 号

© 2015 浙江威仕顿温控科技有限公司 all rights reserved. | 浙ICP备17055712号

TOP