zoukankan      html  css  js  c++  java
  • verilog时钟分频设计

    参考:

    https://blog.csdn.net/moon9999/article/details/75020355

    1.偶分频模块设计

    偶分频意思是时钟模块设计最为简单。首先得到分频系数M和计数器值N。

    M = 时钟输入频率 / 时钟输出频率

    N = M / 2

    如输入时钟为50M,输出时钟为25M,则M=2,N=1。偶分频则意味着M为偶数。

    因此只需要将counter以clk_in为时钟驱动计数,当counter = (N-1)时,clk_out翻转即可

    2.奇分频模块设计

    奇分频需要通过两个时钟共同得到。首先得到分频系数M和计数器值N。

    M = 时钟输入频率 / 时钟输出频率

    N = (M-1) / 2

    如输入时钟为50M,输出时钟为10M,则M=5,N=2。奇分频则意味着M为奇数。

    clk_out为最终输出时钟,clk_out1和clk_out2为辅助时钟生成。

    计数器counter由0技术至(M-1)。

    clk_out1在在clk_in的上升延跳变,条件是counter==(N-1)或(M-1)。

    clk_out2在在clk_in的下降延跳变,条件是counter==(N-1)或(M-1)。

    之后clk_out = clk_out1 & clk_out2即可得到M分频的时钟。

  • 相关阅读:
    五种线程池的分类与作用
    什么是死锁?
    事务隔离级别区分,未提交读,提交读,可重复读
    共享锁(读锁)和排他锁(写锁)
    java中的成员变量和全局变量的区别
    Algorithm
    6
    5
    4
    3
  • 原文地址:https://www.cnblogs.com/zlll/p/9626120.html
Copyright © 2011-2022 走看看