FPFA.一种二倍频电路代码描述以及测量详情
2023-12-23 06:08:14
一、前言
? ? ? ? 1、因为需要倍频电路所以找了个二倍频的电路,通过fpga实际测量发现经过倍频后的电路峰值降低。不过这个也正常,因为该电路只要过触发点就会开始发生波形变化,而电路的触发值不是峰值。???????
? ? ? ? 2、继续对电路做倍频后信号做二倍频,发现已经无法继续倍频,因为峰值电压的降低后触发d触发器的电压已经距离峰值非常接近了,没有足够的高电平保持时间,而倍频后的时钟边沿斜率又大致跟原时钟一样。(如图黄、蓝信号为一次跟二次倍频结果,紫色为原时钟)???????
? ? ? ? 3、所以使用触发器的倍频方法:二倍频后就到头了。暂时还没找到优化电路的方法。
????????4、电路图???????
二、代码描述(模块名为文件名)
1、模块代码
//倍频电路
module f_double(
input clk_in,
output clk_out
);
reg Q_n;
assign clk_out = ~(Q_n ^ clk_in);
always @(posedge clk_out) begin
Q_n = !Q_n;
end
endmodule
2、顶层测试代码
module da_qian_ju_shi_233(
input clk_27Mhz,
output clk1, clk2, clk3
);
wire clk_54Mhz;
assign clk3 = clk_27Mhz;
f_double j1(
.clk_in (clk_27Mhz),
.clk_out (clk_54Mhz)
);
assign clk1 = clk_54Mhz;
reg clk_t = 1'b0;
always @(posedge clk_54Mhz) begin
clk_t <= !clk_t;
end
assign clk2 = clk_t;
//继续倍频失败
// f_double j2(
// .clk_in (clk_t),
// .clk_out (clk2)
// );
endmodule
文章来源:https://blog.csdn.net/time_grid/article/details/135162803
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!