d触发器实现2倍频数字电路(要分直接给电路图或verilog程序,网上有的基本都不对,本人已测试)

d触发器实现2倍频数字电路(要分直接给电路图或verilog程序,网上有的基本都不对,本人已测试),第1张

module(

input wire clk ,

input wire rest_n ,

output reg clk2 )

always@(posedge clk or negedge rest_n)

begin

if (!rest_n)

clk2 <= 'h0

else

clk2 <= ~clk2

end

endmodule

那是2倍频,不是分频

基本思想:通过逻辑延时,使同频时钟相位改变,而后将两个时钟相或即可得到二倍频电路,不过占空比不可调,由两个时钟相位差决定。

Verilog代码如下:

module twice (clk,

clk_out

)

input clkoutput clk_out

wire clk_temp

wire d_outn

reg d_out=0

assign clk_temp = clk ^ d_out

assign clk_out = clk_temp

assign d_outn = ~d_out

always@(posedge clk_temp)

begin

d_out <= d_outn

end

endmodule

一般的FPGA里面有多个PLL, DLL模块, 用于产生高质量时钟信号,供特定单元使用.

基本的备频原理是由模拟电路提取低频的高次谐波, 再整形输出. 高次谐波衰减厉害,备频效率都不高.1Hz到4kHz是不可能一次完成的. 建议买个24MHz晶振挂在适当的时钟脚, 然后利用PLL分频.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7991599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存