module div_clk(clk_in, divisor, clk_out);

input clk_in;

input divisor;

output clk_out;



reg clk_out = 0;

wire clk_in;

reg [7 : 0] count = 0;

wire [7 : 0] divisor;

wire odd;



assign odd = divisor & 1;



always @(clk_in)

begin

if (count == 0 && clk_in)

clk_out = 1;

else if (count == ((divisor >> 1) + odd) && (odd == !clk_in))

clk_out = 0;

if (clk_in)

begin

count = count + 1;

if (count >= divisor)

count = 0;

end

end

endmodule

TestBench:

module div_tb;

reg clk_in;

wire clk_out;



initial

begin

#0 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

10 clk_in = 1;

#10 clk_in = 0;

10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

#10 clk_in = 0;

#10 clk_in = 1;

end

wire [7 : 0] divisor = 3;

div_clk dc(.clk_in(clk_in),.clk_out(clk_out), .divisor(divisor));

endmodule

[Verilog]随意整数(奇数,偶数)分频器设计, 50%占空比的更多相关文章

  1. Verilog 任意(奇数/偶数)分频器

    参加过一次笔试,让实现3分频,楼主当时是懵逼的,脑子里只知道同时利用上升沿和下降沿,本来写对了,慌张面试,脑子不管用了,(因为是手写,只能用脑子仿真)后来又给改错了,捂脸... 还是逻辑不清晰,现在自 ...

  2. 基于Verilog的偶数、奇数、半整数分频以及任意分频器设计

    在FPGA的学习过程中,最简单最基本的实验应该就是分频器了.由于FPGA的晶振频率都是固定值,只能产生固定频率的时序信号,但是实际工程中我们需要各种各样不同频率的信号,这时候就需要对晶振产生的频率进行 ...

  3. 基于Verilog的奇数偶数小数分频器设计

    今天呢,由泡泡鱼工作室发布的微信公共号“硬件为王”(微信号:king_hardware)正式上线啦,关注有惊喜哦.在这个普天同庆的美好日子里,小编脑洞大开,决定写一首诗赞美一下我们背后伟大的团队,虽然 ...

  4. 在一个N个整数数组里面,有多个奇数和偶数,设计一个排序算法,令所有的奇数都在左边。

    //在一个N个整数数组里面,有多个奇数和偶数,设计一个排序算法,令所有的奇数都在左边. // 例如: 当输入a = {8,4,1,6,7,4,9,6,4}, // a = {1,7,9,8,4,6,4 ...

  5. 基于Verilog HDL整数乘法器设计与仿真验证

    基于Verilog HDL整数乘法器设计与仿真验证 1.预备知识 整数分为短整数,中整数,长整数,本文只涉及到短整数.短整数:占用一个字节空间,8位,其中最高位为符号位(最高位为1表示为负数,最高位为 ...

  6. JavaScript语言里判断一个整数是偶数还是奇数,并输出判断结果

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. C 语言实例 - 判断奇数/偶数

    C 语言实例 - 判断奇数/偶数 C 语言实例 C 语言实例 以下实例判断用户输入的整数是奇数还是偶数. 实例 #include <stdio.h> int main() { int nu ...

  8. 手写面试编程题- 数组去重 深拷贝 获取文本节点 设置奇数偶数背景色 JS中检测变量为string类型的方法 第6题闭包 将两个数组合并为一个数组 怎样添加、移除、移动、复制、创建和查找节点? 继承 对一个数组实现随机排序 让元素水平 垂直居中的三种方式 通过jQuery的extend方法实现深拷贝

    第1题==>实现数组去重 通过 new Set(数组名) // var arr = [12, 12, 3, 4, 5, 4, 5, 6, 6]; // var newarr1 = new Set ...

  9. verilog简易实现CPU的Cache设计

    verilog简易实现CPU的Cache设计 该文是基于博主之前一篇博客http://www.cnblogs.com/wsine/p/4661147.html所增加的Cache,相同的内容就不重复写了 ...

随机推荐

  1. Djangio笔记

    django图解 新创建一个项目后的目录层级

  2. STM32F401

    The STM32F401 line is the entry level to the STM32 F4 series. It is designed for medical, industrial ...

  3. CDMA,GPRS,3G有什么区别

    1 CDMA: 我们常说的CDMA 是IS-95A CDMA的简称 ,属于第二代通信技术(2G)的一种,属于北美的技术.另一种技术是GSM,属于欧洲的技术.这两种实现的原理不同,各有各的优点: 2 G ...

  4. React的第一个例子

    准备: 官网:https://facebook.github.io/react/downloads.html Github地址:https://github.com/facebook/react 首先 ...

  5. Hibernate:有了 save,为什么还需要 persist?

    背景 万物皆自然,每个 API 的设计,无论是否正确,都有其意图.因此,在学习某些框架的时候,我们需要经常思考:这个 API 的设计意图是啥? 本文来探讨一下 Session 中 persist 的设 ...

  6. Shuttle ESB(四)——公布订阅模式实例介绍(1)

    前面,我已经集中用了三篇文章来讲Shuttle ESB的入门实例与宏观概念. Shuttle ESB一共同拥有两种发送消息的模式:请求/对应模式与Pub/Sub模式. 关于这两种模式的区分.请看以下文 ...

  7. android开源框架之 andbase

    andbase开发框架介绍:andbase是为Android开发人员量身打造的一款开源类库产品,您能够在本站中获取到最新的代码,演示样例以及开发文档. 下载地址:http://download.csd ...

  8. 使用Springboot Email实现邮件发送

    在springboot配置文件增加emai配置(此种方式不支持QQ邮箱): spring.datasource.type=com.alibaba.druid.pool.DruidDataSource ...

  9. UVA 10123 No Tipping (物理+贪心+DFS剪枝)

    Problem A - No Tipping As Archimedes famously observed, if you put an object on a lever arm, it will ...

  10. unity 统一替换shader

    camera.SetReplacementShader(shader,"tag"); 可以切了测试性能