【FPGA & Verilog】奇数分频器 (50%)

这篇具有很好参考价值的文章主要介绍了【FPGA & Verilog】奇数分频器 (50%)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2.1 设计输⼊

1. 模块名称:FrequencyDivider

2. 输⼊输出:CLK、RSTn、CLK_15

2.2 引脚约束

1. 输⼊端 ⾃定义

2. 输出端 ⾃定义

2.3 设计要求

1. 输出时钟的周期是输⼊时钟的15倍(15分频器)

2. 分别实现 7/15 占空⽐和 50% 占空⽐两种分频⽅式

3. 使⽤RTL View分析电路的区别

2.4 电路仿真1. 使⽤ModelSim仿真

7:15分频

即分频输出CLK15的一个周期中,高低电平时间之比为 7:8,据此可以在控制输出CLK15的高低电平

设计代码:

module FrequencyDivider(CLK,RSTn,CLK_15);
input CLK,RSTn;
output CLK_15;
reg [3:0]counter_p,counter_n;
reg CLK_p,CLK_n;
assign CLK_15 = CLK_p | CLK_n;

always@(posedge CLK or negedge RSTn)
if(! RSTn) begin
counter_p <= 0;
CLK_p <= 0;
end
else if(counter_p < 14)
        begin
  counter_p <= counter_p + 1;
  if(counter_p < 7)
CLK_p <= 1;
  else
CLK_p <= 0;
  end
else
counter_p <= 0;

always@(negedge CLK or negedge RSTn)
if(! RSTn) begin
counter_n <= 0;
CLK_n <= 0;
end
else if(counter_n < 14)
        begin
  counter_n <= counter_n + 1;
  if(counter_n < 7)
CLK_n <= 1;
  else
CLK_n <= 0;
end
else
counter_n <= 0;
endmodule

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

(2)50%分频 【是由两个分别由上升沿pos和下降沿neg触发的分频信号合成(或 运算)】

设计代码:

module FrequencyDivider(CLK,RSTn,CLK_15);

input CLK,RSTn;

output CLK_15;

reg [3:0]counter_p,counter_n;

reg CLK_p,CLK_n;

assign CLK_15 = CLK_p | CLK_n;

always@(posedge CLK or negedge RSTn)

  if(! RSTn) begin

  counter_p <= 0;

  CLK_p <= 0;

  end

  else if(counter_p < 14)

        begin

    counter_p <= counter_p + 1;

    if(counter_p < 7)

    CLK_p <= 1;

    else

    CLK_p <= 0;

    end

  else

  counter_p <= 0;

always@(negedge CLK or negedge RSTn)

  if(! RSTn) begin

  counter_n <= 0;

  CLK_n <= 0;

  end

  else if(counter_n < 14)

        begin

    counter_n <= counter_n + 1;

    if(counter_n < 7)

    CLK_n <= 1;

    else

    CLK_n <= 0;

  end

  else

  counter_n <= 0;

endmodule

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

由RTL view可以看出:

CLK_15由或运算得来,由CLK_n和CLK_p相加得来,而两者的区别在于CLK的边沿不同

一个为上升沿,一个为下降沿,因此其中一个D触发器的时钟clk取了一次反

3.创建VWF进行功能仿真:

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发

【FPGA & Verilog】奇数分频器 (50%),FPGA学习记录,fpga开发文章来源地址https://www.toymoban.com/news/detail-779092.html

到了这里,关于【FPGA & Verilog】奇数分频器 (50%)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA基础设计(二):任意分频器(奇数,偶数,小数)

    FPGA开发板上一般只有一个晶振,即一种时钟频率。数字系统设计中,时间的计算都要以时钟作为基本单元,对基准时钟进行不同倍数的分频而得到各模块所需时钟频率,可通过Verilog代码实现;倍频可通过锁相环【PLL】实现。 把输入信号的频率变成成倍的低于输入频率的输出

    2024年02月01日
    浏览(33)
  • FPGA【Verilog分频器】

            在数字系统的设计中经常会碰到需要使用多个时钟的情况。时钟信号的产生通常具有两种方法,一种是使用PLL(Phase Locked Loop,锁相环),可生成倍频、分频信号;另一种则是使用硬件描述语言构建一个分频电路。         分频器的设计通常分为以下三类:奇

    2024年02月20日
    浏览(35)
  • 分频器——(任意奇分频(50%占空比、非50%占空比),任意偶分频,任意小数分频)

            在数字系统的设计中经常会碰到 需要使用多个时钟 的情况。时钟信号的产生通常具有两种方法,一种是使用PLL(Phase Locked Loop,锁相环),可生成 倍频、分频信号 ;另一种则是使用硬件描述语言构建一个分频电路。         分频器的设计通常分为以下 三类:

    2023年04月23日
    浏览(54)
  • 【实验室学习】时钟分频器,2、3、4、8分频 verilog实现

    记录时钟分频器的Verilog代码编写,主要掌握分频器设计思路 2、4、8分频设计较为容易: 2分频—设计一个1位的寄存器,当原时钟上升沿时取反即可 代码展示: 4分频与8分频—设计一个两位的计数器,4分频只需在计数器计数到00B或者10B时跳变电平即可,8分频只需在计数器计

    2024年02月11日
    浏览(30)
  • 【FPGA】Verilog:时序电路设计 | 二进制计数器 | 计数器 | 分频器 | 时序约束

    前言: 本章内容主要是演示Vivado下利用Verilog语言进行电路设计、仿真、综合和下载 示例:计数器与分频器   ​​ 功能特性: 采用 Xilinx Artix-7 XC7A35T芯片  配置方式:USB-JTAG/SPI Flash 高达100MHz 的内部时钟速度  存储器:2Mbit SRAM   N25Q064A SPI Flash(样图旧款为N25Q032A) 通用

    2024年02月02日
    浏览(48)
  • verilog---分频器设计

    //设计分频器 将50MHZ信号分频产生1HZ的秒脉冲,输出信号占空比为50%。 //设计思路:用计数器设计,N分频:当计数到(N/2)-1个数时,输出时钟翻转一次 //50*10^6次分频:计数到24 999 999(需要25bit)时,输出信号翻转。 //无法用vmf仿真,因为endtime最大为10us,实际最少需要1000000u

    2024年02月04日
    浏览(25)
  • Verilog手撕代码(6)分频器

    分频就是生成一个新时钟,该新时钟的频率是原有时钟频率的整数分之一倍,新周期是原有周期的整数倍。 再简单来说,让你手撕一个四分频电路,就是写代码生成一个周期是原来四倍的时钟,如果手撕一个三分频电路,就是写代码生成一个周期是原来三倍的时钟。 如图为

    2024年02月08日
    浏览(29)
  • FPGA——分频器

    野火学习备忘录——FPAG分频 时钟对于 FPGA 是非常重要的,但板载晶振提供的时钟信号频率是固定的,不一定满 足工程需求,所以分频和倍频还是很有必要的。这里通过计数的方式来实现分频。 1.通过计数器来实现6分频。两种方式。第一种直接通过计数方式直接获取获取。输

    2024年02月10日
    浏览(28)
  • FPGA 多路分频器实验

    1 概述         在 FPGA 中,时钟分频是经常用到的。本节课讲解 2 分频、3 分频、4 分频和 8 分频的 Verilog 实现并且学习 generate 语法功能的应。 2 程序设计思路         1)整数倍分频,为 2、4、8,这种 2^n 次方倍数倍数关系的分频最容易实现,所以我们可以把这 3 种分

    2024年01月19日
    浏览(27)
  • FPGA设计开发(基础课题):分频器设计

    一、设计目的 1、掌握分频器的设计原理; 2、用HDL语言设计分频器。 二、设计原理 分频器与计数器类似,也是要对时钟脉冲进行计数,但其输出的不是对时钟脉冲个数的计数值,而是其频率与时钟的频率成固定比例关系的脉冲信号。整数分频是所有分频器中最简单,最容易

    2024年02月13日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包