要求:设计一个50%占空比的3分频器

总结:设计奇数N分频的核心思想是,用计数器产生两个(N/2+1)/N占空比的时钟信号(分别在系统时钟的上升沿和下降沿产生)。在将这两个信号做组合逻辑运算(与运算)。

延伸:50%占空比的5分频。
计数器可以从0计数到2时翻转一次,到4时再翻转一次(也可以在1和3翻转)。这样就产生了一个3/5占空比的时钟。

以下为3分频器的实验代码,可以自己试试实现其他奇数倍分频器。
一、Verilog代码

module Frequency_divider3 (input clk,input rst_n,output div3,output reg clk1,  //此处的clk2信号是为了在仿真中可见output reg clk2   //此处的clk2信号是为了在仿真中可见
);reg [1:0] count;always@(posedge clk) beginif (!rst_n)count <= 2'b0;else if(count == 2'd2)count <= 2'd0;elsecount <= count + 1;endalways@(posedge clk) beginif (!rst_n)clk1 <= 1'b1;else if(count == 2'd1 | count == 2'd2) clk1 <= ~clk1;else clk1 <= clk1;endalways @(negedge clk ) beginif (!rst_n)clk2 <= 1'b1;else if(count == 2'd1 | count == 2'd2) clk2 <= ~clk2;elseclk2 <= clk2;endassign div3 = clk1 & clk2;endmodule

二、test bench

`timescale 1ns/1ps
module Frequency_divider3_tb; parameter clock_cycle = 20;
reg clk;
reg rst_n;
wire div3;initial beginclk = 0;rst_n = 1;#clock_cycle rst_n = 0;#clock_cycle rst_n = 1;
endalways #(clock_cycle/2) clk = ~clk;Frequency_divider3 div3_half_duty(.clk    (clk),.rst_n  (rst_n),.div3   (div3),.clk1   (clk1),.clk2   (clk2)
);endmodule

三、modulesim 仿真结果

50%占空比的3分频器(奇数分频)相关推荐

  1. 分频器——(任意奇分频(50%占空比、非50%占空比),任意偶分频,任意小数分频)

    分频器定义: 在数字系统的设计中经常会碰到需要使用多个时钟的情况.时钟信号的产生通常具有两种方法,一种是使用PLL(Phase Locked Loop,锁相环),可生成倍频.分频信号:另一种则是使用硬 ...

  2. 经典分频器——奇数分频(3分频,5分频,任意分频)

    文章目录 一.占空比不是50%(<<50%) 二.占空比接近50%(>50%) 三.占空比等于50% 四.占空比50%的任意整数分频(重点)    奇数分频根据占空比的不同,写法也不 ...

  3. 【数字IC手撕代码】Verilog奇数分频|题目|原理|设计|仿真(三分频,五分频,奇数分频及特殊占空比)

    芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球 四社区联合力荐!近500篇数字IC精品文章收录! [数字IC精品文章收录]学习路线·基础知识·总线·脚本语言·芯片求职· ...

  4. 4种FPGA时钟分频 【附源码】:1.偶数分频;2.奇数分频(占空比50%);3.奇数分频(任意无占空比);4.小数分频;

    题目来源于牛客网,完整工程源码:https://github.com/ningbo99128/verilog 目录 VL37 偶数分频 VL40 奇数分频(占空比50%) VL42 奇数分频(任意无占 ...

  5. 奇数分频电路—5分频(verilog实现)

    文章目录 前言 占空比不为50%的奇数分频 占空比为50%的5分频电路 扩展 前言 前文我们讲到,可以通过计数器的方法实现偶数分频,实现方式可以参考4分频电路实现 那么对于奇数分频电路应该如何实现呢? ...

  6. 占空比50%的奇数分频

    占空比50%的奇数分频 题目描述 设计一个同时输出7分频的时钟分频器,占空比要求为50% 注意rst为低电平复位. 信号示意图: `timescale 1ns/1nsmodule odo_div_or ...

  7. 数字分频器设计(偶数分频、奇数分频、小数分频、半整数分频、状态机分频|verilog代码|Testbench|仿真结果)

    数字分频器设计 一.前言 二.偶数分频 2.1 触发器级联法 2.2 计数器法 2.3 verilog代码 2.4 Testbench 2.5 仿真结果 三.奇数分频 3.1 占空比非50%奇数分频 ...

  8. 分频器的Verilog实现(偶数分频、奇数分频)

    偶数分频器的Verilog实现 核心思想 对于占空比为50%.分频系数为N的偶数分频,其核心思想是使用计数范围为[0, (N/2)-1]的计数器,每当计数器计到最大值时输出时钟翻转一次,其余时间保持不 ...

  9. (94)分频器设计(奇数分频)

    (94)分频器设计(奇数分频) 1 文章目录 1)文章目录 2)FPGA入门与提升课程介绍 3)FPGA简介 4)分频器设计(奇数分频) 5)技术交流 6)参考资料 2 FPGA入门与提升课程介绍 1 ...

最新文章

  1. python中符号计算输出数学_Python科学计算与数据处理—符号运算库.doc
  2. oracle的shell命令,Shell实现的Oracle启动脚本分享
  3. 三关节机械臂控制需求说明压缩文件中的相关文档说明
  4. Android 聊天软件客户端
  5. 搜索推荐炼丹笔记:Transformer在搜索推荐中的应用
  6. 七、FFmpeg使用---X264静态库编入FFmpeg
  7. Linux 命令find、grep
  8. .NET Core 3.0 中间件 Middleware
  9. 论文浅尝 | 利用知识-意识阅读器改进的不完整知识图谱问答方法
  10. 阿里云 MaxCompute 2020-4 月刊
  11. mysql中清空数据库,并重置主键为1
  12. java linux 写文件_Java读写文件
  13. 聊天中批判性思维的应用
  14. Unity3d第一人称视角如何设置
  15. Windows系统电脑常用快捷键
  16. Java调用SMS短信通API实现发短信功能
  17. 华为云Centos7搭建hadoop集群二:yum源替换,ssh免密处理,hadoop用户sudo
  18. JAVA 繁体 转 简体 简体转翻译 繁体简体互转
  19. ANSYS MESH
  20. 盈鹏飞嵌入式_EVB-T335 TF卡功能测试手册

热门文章

  1. LintCode 627.最长回文串
  2. LintCode 488.快乐数
  3. vue3的组件传递之子传父(项目实操)
  4. OpenCASCADE 读写STEP文件
  5. 安卓加载图片四大框架
  6. 上网本丢失F盘怎么恢复
  7. Apple App store的应用购买限制 - 年龄
  8. 教你微信怎么加更多好友的绝佳方法
  9. P4128 [SHOI2006]有色图
  10. 如何修改apk文件,反编译(转)