下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FPGA编程时的一些实际问题阐述及解决方案详解问题:随着NI的FPGA产品的广泛使用,很多同事和客户都碰到了一些FPGA编程时遇到的问题。由于FPGA不能实时调试,每次修改一点代码之后都要编译很长时间之后才能看到修改的效果,所以,我们希望尽量在FPGA编写代码时就将更多的问题考虑到位。本文针对项目过程中碰到的一些实际问题进行阐述,希望可以为大家在FPGA编程过程中提供一些帮助。项目描述:该项目是一个实时频谱监测、流盘以及跳频信号检测的需求。具体参数是IQ速率为100MHz,流盘5分钟(要做类似ReferenceTrigger的效果,即按下按钮之前的一分钟和按下按钮之后的四分钟信号一起流盘),检测跳频信号的时间点和相应的频点,其中跳频信号的参数是:突发性,每次持续1ms~20ms,跳频信号在每个频点上的持续时间是1us~20us,跳频频率70000/s,每个频点上的信号带宽是5MHz;使用的硬件是5792+7966.其中与FPGA相关的部分就是数据采集和跳频信号的检测。对于数据采集部分,5792有专门的采集范例可以供大家参考,而跳频信号的检测算法是将数据每隔128个点做一次FFT(100M的采样率,对于1us的跳频信号持续时间,对应为100个时域采样点)。做出的FFT结果如果超过阈值,则将FFT结果的序号回传给上位机进行保存。解答:一、DMA传输的速率对于PXIe-7966R,官网上标定的DMA的传输速率为800MB/s,理论上可以完全满足项目中的400MB/s的传输速率要求。但实际测试过程中,传输的速率接近但总是达不到400MB,这直接影响了信号的实时采集和流盘。经了解,FPGA的DMABenchMark与FIFO的数据位宽、总线带宽以及DMA控制器的速率都有一定关系。见下图:注:上图中PXIe系统下,FPGA的时钟使用的是200MHz的时钟。而PXI系统下,FPGA的时钟使用的是160M(U8和U16),133M(U32和U64)。注:上图中使用的机箱是PXIe-1075,使用的控制器是PXIe-8130.通过观察上述PXIe和PXI板卡的速率统计,可以看到:对于PXI板卡,在U8场景下,FPGA每秒钟产生160MB的数据,U16场景下FPGA每秒产生320MB的数据。众所周知,PCI总线的传输带宽为133MB/s,那为什么上图中U8情况下的速率才33MB/s,U16情况下的速率才66MB/s呢?这是因为PCI总线的传输模式是并行传输,总线位宽和时钟频谱分别是32位和33M(一般的desktop都是这样的配置),也就是说每个时钟周期传输32个比特的数据。因此,如果传输的是U8或者U16的数据类型,那么相当于每个传输周期浪费了3/4或者1/2的位宽。因此,U8情况下每次只能传输一个字节,结合33MHz的时钟频率,使得DMA的Benchmark只有33MB/s。U16的情况下的DMA速率为66M也是可以理解的。而U32以及U64的情况下,只能达到133M的极限速率。
对于PXIe板卡,FPGA读写FIFO的时钟固定为200MHz,因此,如果FIFO的数据类型是U8,那么每秒钟FPGA端就产生200MB的数据;如果FIFO的数据类型是U16,那么每秒钟FPGA端就产生400MB的数据量。这些数据量远小于1075机箱的单槽带宽(PCIeGen1×4,1GB/s),因此,总的DMABenchmark就等于FPGA端产生数据的速率。如果FIFO的数据类型为U32,那么FPGA产生数据的速率就达到了800MB,这几乎1075机箱的单槽传输极限,因此U32场景下DMA的BenchMark接近800MB/s。继续增加FPGA端FIFO的位宽,在200MHz的时钟频率下FPGA每秒钟产生1.6GB的数据,但这时PCIe总线的传输速率不可能再大幅提升,因此,U64情况下DMA的Benchmark还是在800MB左右,所以我们很容易得出DMA的传输速率限制为总线的单槽传输带宽。实测1085+8135环境下的DMA速率
为了验证此种情况(U64,200M时钟)下DMA的传输速率限制确实为总线的单槽传输带宽,我们有理由假设,如果使用1085机箱(单槽传输速率为4GB/s),DMA的传输速率应该可以达到1.6GB/s。因此,我又搭建了相关的系统对1085机箱下的7966DMA速率进行测试:硬件环境:PXIe-8135+PXIe-1085+PXIe-7966测试方法:在7966中以200M的时钟不断将U64数据写入到FIFO中,FIFO大小2048;上位机中对FIFO进行全速读取(缓冲区中有多少点读多少点),上位机缓冲区设置为200M;测试结果:DMA速率900MB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 把握青春珍惜友谊教学计划
- 2025防安全工作计划
- 企管部年度工作计划报告
- 老寨完小2025年春季学期数学教研工作计划
- 供销社企业改制发展计划
- 学生素养教育教学计划
- 2025小学教务处年度工作计划2
- 月份工作总结范文与下月计划
- 《计算机图形学基础与CAD开发》课件-第3章 二维图形处理技术
- 2020版 沪教版 高中音乐 必修4音乐编创 下篇《第三单元 蹙金结绣》大单元整体教学设计2020课标
- (完整版)消防泵房安全管理制度及操作规程
- 国开2023秋《人文英语4》期末复习写作练习参考答案
- 人民代表大会第次会议代表议案专用表
- 统编版语文三年级上册第六单元训练卷含答案
- Web程序设计(第4版)-第5章
- 微习惯:自我管理法则
- 《中国“居里夫人”》
- 互联网+政务服务PPT
- 重庆市渝中区重点中学2022-2023学年九年级上学期期末数学试卷(含答案)
- 公路水运工程施工安全标准化指南 pdf
- 房颤患者的护理
评论
0/150
提交评论