数字移相

[复制链接]
2392|5
 楼主| uiodh 发表于 2012-9-30 22:45 | 显示全部楼层 |阅读模式
已知一个周期脉冲信号(占空比可调),要对此信号进行移相(90°,180°,270°等)请问怎么实现,用verilog或vhdl编程实现。急!!!!!!!!

    本人试过自己定制PLL实现移相,但如果输入信号是占空比非50%,那么输出占空比还是固定的,这种方法有一定限制。
zaxy 发表于 2012-9-30 22:48 | 显示全部楼层
用计数器移相就可以。
GoldSunMonkey 发表于 2012-10-1 11:40 | 显示全部楼层
用计数器移相就可以。
zaxy 发表于 2012-9-30 22:48
他想保证占空比,这样不行。
GoldSunMonkey 发表于 2012-10-1 11:41 | 显示全部楼层
已知一个周期脉冲信号(占空比可调),要对此信号进行移相(90°,180°,270°等)请问怎么实现,用verilog或vhdl编程实现。急!!!!!!!!

    本人试过自己定制PLL实现移相,但如果输入信号是占空比非50%, ...
uiodh 发表于 2012-9-30 22:45
想保持占空比,太难了。
西门看雪 发表于 2012-10-2 08:38 | 显示全部楼层
可以考虑一下使用延时:将所有的上升沿和下降沿延时一定的时间再输出。对于频率固定且频率已知的信号,延时可以设置为四分之一周期、二分之一周期、四分之三周期等。对于频率未知的信号,则要首先统计出过去一段时间里信号的平均周期【比如10个(100个、1K个……)信号周期的每个周期的平均时间】,然后再延时1/x个周期输出即可。

理论上用这种方法移相之后的信号的占空比的最大误差为【(+/-)信号频率/系统时钟频率】。
sxhhhjicbb 发表于 2012-10-2 09:29 | 显示全部楼层
二楼回应是对的.LZ.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

95

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部