博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Good Verilog Coding
阅读量:7071 次
发布时间:2019-06-28

本文共 845 字,大约阅读时间需要 2 分钟。

1. 50%占空比的三分频

module div3(clk, reset, clk_div3);

input clk;

input reset;

output clk_div3;

reg clk1;

reg[1:0] state;

 clk or negedge reset)

begin

if(!reset)

         state<= 2’b00;

else

begin

case(state)

2’b00: state<= 2’b01;

2’b01: state<= 2’b11;

2’b10: state<= 2’b00;

2’b11: state<= 2’b00;

endcase

end

end

 clk or negedge reset)

begin

if(!reset)

         clk1<= 0;

else

         clk1<= state[0];

end

assign clk_div3 = clk1 & state[0];

endmodule

=========================================================

进一步推广,如果要得到50%占空比的奇数倍(2N+1)分频,可以使用两个count, count_0使用上升沿计数,产生的clk_0占空比为N/(2N+1),count_1使用下降沿计数, 产生的clk_1占空比为N/(2N+1),然后将clk_0和clk_1进行或运算,即得到50%占空比的时钟信号。

2. 根据时序图写verilog代码,已知时钟信号clk和输入信号a,要获得如图所示的b,应该怎么编写verilog代码?

解答:将a用寄存器打一拍,然后和原来的a异或一下就出来了b这个信号了

=========================================================

将这个波形进一步推广,一个电平有效的异步信号,如果要同步到某一个时钟域,且要在电平切换时形成脉冲式的信号,可以用上面这种方式。

转载地址:http://dhzml.baihongyu.com/

你可能感兴趣的文章
【Android】设置Dialog点击屏幕不消失
查看>>
ConcurrentDictionary与Dictionary
查看>>
Atom Remote-FTP connecting FTP with SSL/TLS
查看>>
《代码大全》阅读笔记-27-程序规模对构建的影响
查看>>
What is R语言
查看>>
【给你一个承诺 - 玩转 AngularJS 的 Promise】
查看>>
P4962 朋也与光玉
查看>>
关于flash cs4意外退出的问题
查看>>
一道笔试指针题目详解
查看>>
easyui datagrid 绑定从后台得到的复杂的特殊数据结构
查看>>
makefile 字符串处理函数
查看>>
Class Prefix(Xcode6以后设置类前缀)
查看>>
(转载)创业型公司如何管理-吸引人才
查看>>
Oracle Spool教程
查看>>
通过jQuery实现的百叶窗效果
查看>>
设置文本显示为2行,溢出隐藏后以省略号结尾
查看>>
Sequelize-nodejs-13-Working with legacy tables
查看>>
virtualbox+vagrant学习-2(command cli)-1-vagrant box命令
查看>>
数据库相关
查看>>
转:推荐一个包:Hashids,用来把整数生成唯一字符串(比如:通过加密解密id来隐藏真实id)...
查看>>