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

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

3天内不再提示

如何通过交换位提高FPGA-PWM计数器性能

电子设计 来源: EDN 作者:Brian Park 2021-05-13 16:22 次阅读

当您需要一些模拟输出并且您的系统中有FPGA时,您可能选择使用PWM模块和简单的低通滤波器,如图1所示。FPGA的输出通常是具有固定频率,可变占空比的波形,由计数器和数字比较器生成(清单1)。

o4YBAGCc4R6AcAq1AABy2nFI2BY156.png

图1一个简单的低通滤波器将FPGA的PWM数字输出更改为模拟电压电平。最大纹波出现在占空比为50%的情况下。

pIYBAGCc4TaABoQlAAFl26ahMz0579.png

假设Enable为高电平,则计数器在每个时钟周期递增计数,PWM输出的频率为时钟频率除以2个计数位。您可以使用启用将其连接到预分频器来降低输出频率。由于输出频率是固定的,因此滤波器易于计算,因为您知道最坏情况的纹波发生在占空比为50%的情况下。所需的最大纹波和建立时间的组合决定了滤波器的类型和RC(电阻/电容)值。

只需对清单1中的代码进行少量更改,就可以改善PWM电路的性能。在原始系统中,最大纹波电流出现在占空比为50%的情况下,最小纹波电流出现在最小占空比的情况下,改进后的版本显示出的最大纹波等于标准版本的最小值。技巧是产生尽可能高的频率,但保持平均占空比恒定。输出上脉冲的频率越高,滤波器的工作效果就越好。

清单1的修改包括重新布线二进制比较器,所有位从左到右交换。MSB(最高有效位)成为LSB(最低有效位),LSB成为MSB,依此类推(清单2)。您只需要进行重新布线,不需要额外的寄存器或逻辑。

o4YBAGCc4UKAPVp-AAHc2fGP0H8280.png

清单3显示了4位PWM发射的脉冲序列。在清单3中,您看到占空比为50%(值= 8,第二列)时,该频率是最大的,等于时钟频率除以2。在出现一些纹波的第一点(值= 1,第二列),存在与常规PWM系统完全相同的纹波-也就是说,脉冲序列是相同的。

pIYBAGCc4VGAVK88AAHR_iRLLVI459.png

编辑:hfy

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

    关注

    1602

    文章

    21302

    浏览量

    593109
  • 滤波器
    +关注

    关注

    158

    文章

    7326

    浏览量

    174759
  • PWM
    PWM
    +关注

    关注

    114

    文章

    4896

    浏览量

    209882
  • 分频器
    +关注

    关注

    43

    文章

    433

    浏览量

    49310
收藏 人收藏

    评论

    相关推荐

    计数器怎么用 计数器的作用有哪些

    计数器是一种被广泛应用于各个领域的实用工具,在我们的日常生活中随处可见。无论是进行时间统计,协助工作任务的完成,还是用于科学研究和编程技术,在各个领域都起到了重要的作用。本文将详细介绍计数器
    的头像 发表于 02-03 10:04 1188次阅读

    Mali-G310性能计数器1.3参考指南

    本指南介绍了Mari-G310 GPU ARM流线型分析模板中的马里性能计数器,该GPU是ValHall架构系列的一部分。 Streamline中的计数器模板遵循逐步分析工作流。 分析从高级工作负载
    发表于 08-11 07:48

    Mali-G78性能计数器1.2参考指南

    本指南解释了Mali-G78 GPU的Arm Streamline评测模板中的马里性能计数器,该模板是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-11 06:18

    Mali-G510性能计数器1.3参考指南

    本指南介绍了马里-G510 GPU ARM流线型分析模板中的马里性能计数器,该GPU是ValHall架构系列的一部分。 Streamline中的计数器模板遵循逐步分析工作流。 分析从高级工作负载分类
    发表于 08-11 06:10

    Mali-T760性能计数器参考指南

    本指南解释了Mali-T760 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Midgard架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 07:54

    Mali-G72性能计数器参考指南

    本指南解释了Mali-G72 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Bifrost架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 07:53

    Mali-G52性能计数器参考指南

    本指南解释了Mali-G52 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Bifrost架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 07:52

    Mali-G710性能计数器参考指南

    本指南解释了Mali-G710 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 07:48

    Mali-G71性能计数器参考指南

    本指南解释了Mali-G71 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Bifrost架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 07:23

    Mali-T880性能计数器1.0参考指南

    本指南解释了Mali-T860和Mali-T880 GPU的Arm Streamline评测模板中的GPU性能计数器,它们是Midgard架构系列的一部分。 Streamline中的计数器模板遵循
    发表于 08-09 07:01

    Mali-G310性能计数器参考指南

    本指南解释了Mali-G310 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 06:40

    Mali-G51性能计数器参考指南

    本指南解释了Mali-G51 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Bifrost架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 06:18

    Mali-G77性能计数器参考指南

    本指南解释了Mali-G77 GPU的Arm Streamline评测模板中的GPU性能计数器,它是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流。分析
    发表于 08-09 06:17

    Mali-G78性能计数器参考指南

    本指南解释了Mali-G78 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 06:16

    Mali-G610性能计数器参考指南

    本指南解释了Mali-G610 GPU的Arm Streamline评测模板中的GPU性能计数器,该模板是Valhall架构系列的一部分。 Streamline中的计数器模板遵循循序渐进的分析工作流
    发表于 08-09 06:00