| 网站首页 | 新闻 | SOPC | FPGA | DSP | ARM | 嵌入式操作系统 | 下载 | 网上商城 | 芯片价格参考 | 留言 | 论坛 | 网络协议 | 驱动设计 | 购买指南-HowtoBuy | 
您现在的位置: FPGA开发板 FPGA 开发板 SOPC开发板 DSP开发板 视频开发板 -嵌入式控制研究室 >> FPGA >> FPGA应用 >> 文章正文 用户登录 新用户注册
[组图]交换位技术改进FPGA-PWM计数器性能           ★★★ 【字体:
交换位技术改进FPGA-PWM计数器性能
作者:佚名    文章来源:本站原创    点击数:    更新时间:2007-12-10
简单改变FPGA计数器规格使作为DAC功能PWM计数器的纹波降低。

  当需要一些模拟输出和系统中有FPGA时,很可能选择使用如图1的PWM模块和简单低通滤波器。FPGA的输出是固定频率、计数器和数字比较器使占空比可变的典型波形(表1)。

PWM模块和简单低通滤波器

FPGA OUTPUT

  假设高信号使能,计数器每个时钟周期进行计数,PWM输出的频率为时钟频率的2次幂分频。通过连接前置比例器,使用使能来降低输出频率。由于输出频率固定,滤波器容易计算。已知占空比50%时,出现最坏的纹波。最大纹波和上升时间的限制结合决定滤波器类型和RC(电阻/电容)值。

  对表1中编码进行非小改动,能够改进PWM电路的性能。但在原先系统中,最大纹波电流发生在50%占空比时,最小纹波电流发生在最小占空比时,改进的版本显示最大纹波等于标准版的最小值。关键是产生最高频率的可能性,还能保持平均的占空比常数。输出脉冲频率越高,滤波器性能越好。

  从左到右交换所有位来修改由重编二进制比较器组成表1。MSB(最高有效位)变成LSB(最低有效位),LSB变成MSB,等等(表2)。只需重编位,而不需额外寄存器或逻辑单元。

Rewiring Modification

  表3显示了4位PWM发出的脉冲序列。表3中,可以看到50%占空比时(第二列,值为8),频率最大,为时钟频率的2分频。在第一个纹波出现点(第二列,值为1),传统PWM系统中有同样的纹波,也就是说,脉冲序列是相同的。

Simulation Result

  英文原文:

  Swapping bits improves performance of FPGA-PWM counter

  A simple change to the specification of an FPGA counter lowers the ripple of a PWM counter functioning as a DAC.

  Stefaan Vanheesbeke, Ledegem, Belgium; Edited by Charles H Small and Fran Granville -- EDN, 9/13/2007

  When you need some analog outputs and you have an FPGA in your system, you probably choose to use a PWM module and a simple lowpass filter such as those in Figure 1. The output of the FPGA is typically a waveform with a fixed-frequency, variable-duty cycle, which a counter and a digital comparator generate (Listing 1).

  Suppose that Enable is high, the counter counts up every clock cycle, and the frequency of the PWM output is the clock frequency divided by 2 count bits. You can use Enable to lower the output frequency by connecting it to a prescaler. Because the output frequency is fixed, the filter is easy to calculate, because you know that the worst-case ripple happens at a duty cycle of 50%. The combination of the desired maximum ripple and settling time determines the filter type and RC (resistance/capacitance) values.

With a small change to the code in Listing 1, you can improve the performance of the PWM circuit. Whereas in the original system, the maximum ripple currents occur at a duty cycle of 50% and the minimum ripple currents occur at the minimum duty cycle, the improved version shows a maximum ripple equal to the minimum of the standard version. The trick is to generate the highest frequency possible but keep the average duty cycle constant. The higher the frequency of the pulses on the output, the better the filter does its job.

  The modification to Listing 1 consists of rewiring the binary comparator with all the bits swapped from left to right. The MSB (most significant bit) becomes the LSB (least significant bit), the LSB becomes the MSB, and so on (Listing 2). You do only a rewiring requiring no extra registers or logic.

  Listing 3 shows the pulse trains that a 4-bit PWM emits. In Listing 3, you see that at 50% duty cycle (Value=8, second column), the frequency is maximum and equal to the clock frequency divided by two. At the first point at which some ripple shows up (Value=1, second column), there is exactly the same ripple as in the conventional PWM system—that is, the pulse train is the same.

  

文章录入:fengfeiyi    责任编辑:fengfeiyi 
  • 上一篇文章:

  • 下一篇文章: 没有了
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    探究最佳的结构化ASIC设计方…
    原型验证过程中的ASIC到FPGA…
    WTB网络HDLC在FPGA中的实现
    转换开关添加了可编程PWM占空…
    一种新型音频功放数字电调谐…
    等价型PG逻辑及其在加法器设…
    基于FPGA的数字闭环光纤陀螺…
    DDS调频信号发生器的FPGA电路…
    降低FPGA设计的功耗是一种协…
    FPGA设计的验证技术及应用原…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)