FPFA.一种二倍频电路代码描述以及测量详情

一、前言

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
相关推荐
FPGA之旅12 分钟前
FPGA从零到一实现FOC(一)之PWM模块设计
fpga开发·dubbo
XMAIPC_Robot1 小时前
基于ARM+FPGA的光栅尺精密位移加速度测试解决方案
arm开发·人工智能·fpga开发·自动化·边缘计算
cycf2 小时前
状态机的设计
fpga开发
szxinmai主板定制专家4 小时前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案
服务器·arm开发·人工智能·嵌入式硬件·fpga开发
千宇宙航11 小时前
闲庭信步使用SV搭建图像测试平台:第三十二课——系列结篇语
fpga开发
千宇宙航16 小时前
闲庭信步使用SV搭建图像测试平台:第三十一课——基于神经网络的手写数字识别
图像处理·人工智能·深度学习·神经网络·计算机视觉·fpga开发
小眼睛FPGA1 天前
【RK3568+PG2L50H开发板实验例程】FPGA部分/紫光同创 IP core 的使用及添加
科技·嵌入式硬件·ai·fpga开发·gpu算力
forgeda1 天前
如何将FPGA设计验证效率提升1000倍以上(2)
fpga开发·前沿技术·在线调试·硬件断点·时钟断点·事件断点
9527华安2 天前
FPGA实现40G网卡NIC,基于PCIE4C+40G/50G Ethernet subsystem架构,提供工程源码和技术支持
fpga开发·架构·网卡·ethernet·nic·40g·pcie4c
search72 天前
写Verilog 的环境:逻辑综合、逻辑仿真
fpga开发