0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

应用通信调制解调器构建信号处理平台的系统级建模及仿真实验

电子设计 来源:EDN 作者:Deepak Shankar 2021-02-03 15:40 次阅读

软件无线电或通信调制解调器等信号处理系统的质量取决于所选用的硬件平台性能。早期在设计方面的探索使设计师可以在寄存器传输级(RTL)和软件实现之前洞悉面临的挑战,了解性能与功耗改善所需的架构决策以及软硬件的划分。

另外,早期的设计探索还有助于架构方面的设计决策,从而为规划当前和未来需求提供便利。设计师还可以进一步拓展这些设计探索,以便开展故障分析,并确定进行验证的测试用例。

本文介绍的系统级建模和仿真方法,可以用来在设计流程早期为软件无线电或高速通信调制解调器设计信号处理平台的架构。

问题

先进的高速信号处理平台等大多数复杂系统都会经历昂贵的重复设计,超过70%的重复时间是由于设计决策错误或对需求的误解。此外,影响这些复杂系统的因素有很多,如低处理时延、低功耗、可配置能力和资源限制等。早期的设计探索有助于克服这些问题。

设计师和架构师有几种开展设计探索和分析的方法可供选择。虽然分析法可以提供有关最坏情况下执行时间的重要信息,但多数情况下这在实际应用中并不会发生。物理测试方法也许能提供精确的信息,但对于软件无线电或高速通信调制解调器等复杂系统来说是不可行的。

解决方案

利用离散事件仿真,设计师和架构师可在较短的时间内根据成百上千个使用案例、任务调度和系统配置,对目标系统进行评估。离散事件建模和仿真不仅有助于构建特别复杂的仿真模型,而且能够帮助架构师和设计师运行更多的用例。

此外,硬件架构组件与框架的预构建和有效库有助于软件架构的建模。它们可以提高系统模型的精度,缩短构建仿真模型的时间。

这种方法允许设计师:

● 专注于结果的分析和解释,而不用关心模型的构建;

● 采用不同的应用配置来执行仿真, 以便进行平台选择,做出软硬件决策,了解外设、性能以及目标架构上软件线程的分配,从而优化产品架构。

解决方案实现

对信号处理平台的设计进行探索,目的是为了了解处理延时、现场可编程门阵列(FPGA)缓冲器要求、数据包长度对性能的影响以及硬件平台配置的识别。进一步扩展这种探索,可以理解每个信号处理函数的资源使用情况,比如寻峰、相关器、加权乘法和累加器。

离散事件仿真模型使用以下组件:

·4个5MHz的ADC通道;

·512字节和1024字节长度的数据包;

·233MHz的FIFO;

·深度为1024的缓冲器;

·初始时钟速率为125MHz的FPGA。改变FPGA时钟速率可满足延时要求;

·运行在167MHz的外部DDR内存;

·运行在260MHz的ADSP TS201。使用VisualSim Architect的预构建可配置库以图形化的方式构建模型。使用Visual Sim的“System- Resource”库块对处理器、内存、FPGA资源、总线和互连进行建模。模数转换器(ADC)被建模为流量发生器,负责产生5MHz的数字样本。

在这个系统设计中,我们为每个函数都考虑了抽象细节。利用这些细节,通过集成matlab/simulink/C/ C++模块,可以创建精细模型。对每个函数来说,我们已经考虑了运行在系统发生器中的现有Verilog代码的时序值和标准发布值。加权输入总和被转发给数字信号处理器进行显示处理和浮点FFT,处理后的结果数据被写进帧缓冲器用于显示。建议的系统平台框图如图1所示,VisualSim仿真模型如图2所示。

o4YBAGAaUi2APbRxAAOW6g9U59k369.png

图1:系统框架(来源:Mirabilis设计项目报告)。

o4YBAGAaUlGAXV0HAAT2skntANw248.png

图2:信号处理平台的VisualSim模型(来源:Micabilis设计项目报告)。

分析与报告

模型的构建花了两个人时,仿真在拥有4GB RAM的2.6GHz微软Windows 10平台上执行,仿真的实际时间为900ms。VisualSim花了25s完成一次仿真。根据数据包大小得出算法处理结束的时间,并在功耗和性能之间做出折衷,是设计时要重点考虑的问题。

分析1

这个设计将缓冲器深度选为“数据包长度的”两倍,长度为512字节的包的信号处理时延有望在20ms以下。

图3显示的仿真报告表明,最大处理延时是24.52ms,这说明在FPGA上实现信号处理功能需要花更多的周期。克服这个挑战的解决方案是要么提高FPGA的时钟速率,要么修改算法。我们决定提高FPGA的时钟速率作为初步的解决方案。

图4:系统功耗(来源:Mirabilis设计项目报告)。

随着后续的研究,我们发现如果将FPGA的时钟速率从125MHz提高到170MHz,系统就能满足20ms的延时要求,而且我们发现平均功耗(6.2W) 只增加了1.1W。

延时图形如图5所示,功耗图形如图6所示。

图6:系统功耗(来源:Mirabilis设计项目报告)。

考虑到有可能需要支持增加包长,我们将数据包长度从512字节增加到了2048字节以作进一步分析。我们发现,功耗没有明显的变化,但最大处理延时从期望的20ms左右增加到了76ms,系统的平均功耗为7.8W。

pIYBAGAaUrmACxwkAAE3keetQMk577.png

图7:处理延时(来源:Mirabilis设计项目报告)。

我们还观察了某些函数的缓冲器占用情况。表1表明,针对上述所有场景,每个函数缓冲器占用情况是一致的( 缓冲器占用以包数计量)。这意味着这种算法实现没有为了支持不同的数据包大小而进行优化,而且如果设计要求不同的包大小,这种实现也是不可行的。

o4YBAGAaUtmAITqrAAFeoHSnkFU747.png

表1,缓冲器要求

分析2

在这次探索中,我们为每个ADC通道的每个函数建立了专用资源模型。

我们通过查看处理延时图形和平均功耗图形来评估系统配置。

处理延时如图8所示,平均功耗如图9所示。

pIYBAGAaUvKAOs4AAAHzO5lJqGE570.png

图8:处理延时(来源:Mirabilis设计项目报告)。

由于每个ADC通道的每个函数都有专门的FPGA资源,因此,与分析1 所示的平均系统功耗相比,这次系统的功耗增加了很多。不过平均的端到端延时小于10.8ms,寻峰延时为11.1ms。

pIYBAGAaUxCAQ6r4AAEsWSfZHg0404.png

图9:平均功耗(来源:Mirabilis设计项目报告)。

这表明,如果每个ADC 通道都考虑使用专门的FPGA资源, 即使FPGA时钟速率较低也能满足性能要求。不足之处就是FPGA资源要求更高了,而且平均功耗增加了100%。

小结

使用建模和仿真方法进行早期的设计探索可以验证实现信号处理的硬件能力和效率,从而确保所选的架构有足够的处理能力来满足系统在性能、功耗和可靠性方面的要求。利用VisualSim性能建模可以帮助我们估计资源要求、性能和功耗统计数据, 进而做出正确的设计决策。

在研究过程中我们发现,系统架构师可以通过“分析1”做出平衡系统性能和功耗的设计决策。“分析2” 则表明,即使用较低的时钟速率也可以实现系统性能,但要求更多的FPGA资源,并且功耗要求增加了几乎一倍。

通过构建硬件资源的周期精确模型并进行微架构级的研究,上述探索还能进一步扩展。
编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • fpga
    +关注

    关注

    1551

    文章

    20358

    浏览量

    588815
  • 缓冲器
    +关注

    关注

    6

    文章

    1462

    浏览量

    44301
  • 调制解调器
    +关注

    关注

    3

    文章

    709

    浏览量

    38064
  • 无线电
    +关注

    关注

    57

    文章

    1966

    浏览量

    114443
收藏 人收藏

    评论

    相关推荐

    通信和电信>xDSL 调制解调器/DSLAM

    通信和电信>xDSL 调制解调器/DSLAM xDSL 调制解调器/DSLAM德州仪器 (TI) 的 xDSL(数字用户线)调制解调器/DSLAM 解决方案方框图 (SBD) 方框图
    发表于 12-24 11:26

    LoRa™调制解调器相关设计操作

    调制解调器相关设计操作。好了,不说废话直接进入主题。LoRa™调制解调器LoRa™调制解调器采用扩频调制和前向纠错技术。与传统
    发表于 08-03 15:11

    线缆调制解调器的原理是什么?

    调制解调器(简称CM),Cable是指有线电视网络,Modem是调制解调器。平常用Modem通过电话线上互联网,而线缆调制解调器是在有线电视网络上用来上互联网的设备,它是串接在用户家的有线电视
    发表于 09-27 09:11

    嵌入式系统上的调制解调器通信该怎样去实现呢?

    系统上的调制解调器通信而苦苦挣扎,该系统几乎没有实时执行其他任务。我正在使用内置于调制解调器 (Fibocom G510) 中的 TCP 堆栈。 这似乎并不复杂,但每次我
    发表于 12-27 08:31

    如何检查调制解调器是否挂起?

    调制解调器挂起,我失去了互联网连接。只有将其关闭并再次打开才能开始连接。 我正在编写一个小程序放入我的 ESP8266 中以检查
    发表于 04-26 07:29

    基于FPGA的MSK调制解调器设计与应用

    调制解调器设计方法,应用VHDL 语言进行了模块设计和时序仿真。硬件部分在Altera 公司 EP2C15AF256C8N FPGA 上实现。结果表明,数字MSK调制解调器具有
    发表于 01-25 14:29 53次下载

    调制解调器(MODEM)介绍

    调制解调器(MODEM)介绍  一.
    发表于 08-01 09:55 1511次阅读

    调制解调器(Modem)

    调制解调器(Modem)           调制解调器(Modem)是为数据通信的数字信号在具有有限带宽的模拟信道上进行远距
    发表于 12-17 15:00 813次阅读

    什么是Modem(调制解调器

    调制解调器)  Modem(
    发表于 12-28 13:33 1361次阅读

    调制解调器(Modem),调制解调器(Modem)是什么意思

    调制解调器(Modem),调制解调器(Modem)是什么意思
    发表于 03-19 14:15 3062次阅读

    调制解调器的作用和相关语术手册

    调制解调器的作用和相关语术手册
    发表于 03-19 14:19 665次阅读

    调制解调器的原理

    调制解调器的原理
    发表于 09-17 19:36 5137次阅读
    <b>调制解调器</b>的原理

    调制解调器(Modem)是什么_调制解调器(Modem)有什么功能?

    调制,就是把数字信号转换成电话线上传输的模拟信号解调,即把模拟信号转换成数字信号。合称调制解调器调制解调器的英文是MODEM,它的作用是模拟信号和数字信号的“翻译员”。电子信号分两种,一种是“模拟
    发表于 10-27 09:43 5.5w次阅读
    <b>调制解调器</b>(Modem)是什么_<b>调制解调器</b>(Modem)有什么功能?

    调制解调器和adsl有什么区别_调制解调器和adsl对比解析

    调制解调器是两种不同的概念,ADSL是一种技术,而调制解调器是一种设备,调制解调器只是实现了ADSL技术的一种设备,ADSL用的猫是只是调制解调器中的一种而已,像光猫也叫调制解调器等还有很多的设备,调制解调是一种技术,因此很多实现两种功能的都叫
    发表于 01-30 11:51 8793次阅读

    什么是手机调制解调器_调制解调器的作用是什么

    信号息息相关,它就是手机调制解调器。那么,什么是手机调制解调器?手机调制解调器又有什么用呢?一起来看看吧。
    的头像 发表于 06-11 17:36 1.5w次阅读