fpga时钟分频——奇数分频

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

相比偶数分频,奇数分频相对复杂,下面我总结一下如何用verilog实现。以N(奇数)为例。

总结如下:

a. 上升沿计数器和信号寄存器

  • 设置一个计数长度为N的上升沿计数器(pos_cnt),并且设置一个信号寄存器(pos_clk)。
  • 当上升沿计数器计数到时,信号寄存器翻转。
  • 当上升沿计数器计数到时,信号寄存器再次翻转。

b. 下降沿计数器和信号寄存器

  • 设置一个计数长度为N的下降沿计数器(neg_cnt),并且设置另一个信号寄存器(neg_clk)。
  • 当下降沿计数器计数到时,信号寄存器翻转。
  • 当下降沿计数器计数到时,信号寄存器再次翻转。

c. 合并信号

  • 将两个信号寄存器的输出进行逻辑或操作,得到奇数分频信号。

下面以N = 7举例

module  clk_7(
	input	wire	clk,
	input	wire	rst,
	output	wire		clk_7
	);

reg		[2:0]		pos_cnt;
reg		[2:0]		neg_cnt;
reg					pos_clk,neg_clk;
//上升沿计数
always @(posedge clk) begin 
	if (rst == 1'b1) begin
		pos_cnt <= 'd0;
	end
	else if (pos_cnt == 'd6) begin
		pos_cnt <= 'd0;
	end
	else begin
		pos_cnt <= pos_cnt + 1'b1;
	end
end
//上升沿时钟
always @(posedge clk) begin
	if (rst == 1'b1)begin
		pos_clk <= 1'b0;
	end
	else if (pos_cnt == 'd3)begin
		pos_clk <= 1'b1;
	end
	else if (pos_cnt == 'd6)begin
		pos_clk <= 1'b0;
	end

end

//下降沿计数
always @(negedge clk) begin
	if (rst == 1'b1) begin
		neg_cnt <= 'd0;
	end
	else if (neg_cnt == 'd6) begin
		neg_cnt <= 'd0;
	end
	else begin
		neg_cnt <= pos_cnt + 1'b1;
	end
end
//下降沿时钟
always @(negedge clk) begin
	if (rst == 1'b1)begin
		neg_clk <= 1'b0;
	end
	else if (neg_cnt == 'd3)begin
		neg_clk <= 1'b1;
	end
	else if (neg_cnt == 'd6)begin
		neg_clk <= 1'b0;
	end

end
//相或
assign clk_7 = pos_clk||neg_clk;
endmodule

进行modelsim进行仿真模拟

结果如图

fpga时钟分频——奇数分频,fpga开发,fpga文章来源地址https://www.toymoban.com/news/detail-854014.html

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

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

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

相关文章

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

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

    2024年02月01日
    浏览(33)
  • FPGA学习——实现任意倍分频器(奇数/偶数倍分频器均可实现)

    在FPGA(可编程逻辑门阵列)中,分频器是一种用于将时钟信号的频率降低的电路或模块。它可以根据输入的时钟信号生成一个较低频率的输出时钟信号。 常见的分频器可以按照固定比例来进行分频,例如将输入时钟频率除以2、除以4等。因此,如果输入时钟信号的频率为10

    2024年02月05日
    浏览(28)
  • 【FPGA 衍生时钟约束】——时钟分频与倍频

    【FPGA 衍生时钟约束】——时钟分频与倍频 在 FPGA 开发中,时钟约束是必不可少的一部分。而对于一些需要高速运算的设计,时钟分频和倍频则是一种经常使用的技术。在本文中,我们将详细介绍 FPGA 中时钟分频和倍频的实现方法及注意事项。 时钟分频是将时钟信号分裂成更

    2024年02月06日
    浏览(30)
  • FPGA代码实现分频和pll分频后的时钟的使用

    1、代码实现的分频时钟 假如 clk_out 输出信号是我们想要的分频后的信号,然后很多人会直接把这个信号当作新的低频时钟来使用,并实现了自己想要的功能。虽然最终实现的功能是成功的,但往往忽略了一些隐患的存在,这种做法所衍生的潜在问题在低速系统中不易察觉,

    2024年02月05日
    浏览(31)
  • FPGA时钟分频倍频之PLL锁相环

    1、使用vivado创建一个工程 2、点击IP Catalog,搜索Clock Wizard,然后双击,本次实验使用PLL进行分频倍频,不动态改变相位,故选择PLL选项,并将时钟频率改变为50MHz,此处我们使用50MHz晶振作为时钟源 3、点击Output Clocks,配置产生的时钟频率,其他选项保持默认,点击ok,生pll ip核

    2024年02月12日
    浏览(28)
  • verilog实现分频(奇数分频和偶数分频,通用版)

    大家好,最近写了一些分频器的设计,发现奇数分频和偶数分频是比较常用分频效果,所以写了一个比较简单的分频代码, 适用于奇数分频和偶数分频(不考虑占空比) ,代码已经经过测试,需要可自取。 一、上代码 二、上验证代码 三、上仿真结果 图1:6分频效果(mult

    2024年02月13日
    浏览(26)
  • 数字分频器设计(偶数分频、奇数分频、小数分频、半整数分频、状态机分频|verilog代码|Testbench|仿真结果)

    数字IC经典电路设计 经典电路设计是数字IC设计里基础中的基础,盖大房子的第一部是打造结实可靠的地基,每一篇笔者都会分门别类给出设计原理、设计方法、verilog代码、Testbench、仿真波形。然而实际的数字IC设计过程中考虑的问题远多于此,通过本系列希望大家对数字I

    2024年02月08日
    浏览(30)
  • 数字分频器设计(偶数分频、奇数分频、小数分频、半整数分频、状态机分频|verilog代码|Testbench|仿真结果)

    目录 一、前言 二、偶数分频 2.1 触发器级联法 2.2 计数器法 2.3 verilog代码 2.4 Testbench 2.5 仿真结果 三、奇数分频 3.1 占空比非50%奇数分频 3.2 占空比50%奇数分频 3.3 Verilog代码 3.4 Testbench 3.5 仿真结果 四、小数分频 4.1 双模前置分频法 4.2 Verilog代码 4.3 Testbench 4.4 仿真结果 五、半整

    2024年02月04日
    浏览(37)
  • FPGA设计开发(基础课题):分频器设计

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

    2024年02月13日
    浏览(38)
  • 时钟分频电路设计--verilog(2分频、3分频、4分频)

    module divider( input clk, input resetn, output reg clk_d2, output reg clk_d3_pos, output reg clk_d3_neg, output clk_d3, //reg型不能assign赋值? output reg clk_d4 ); reg [1:0]counter; reg [1:0]counter_3; always@(posedge clk or negedge resetn)begin //4分频计数器模块 if(~resetn) counter = 2’b0; else if(counter = 2’b11) counter = counter + 1’

    2024年02月06日
    浏览(28)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包