我是靠谱客的博主 会撒娇红牛,最近开发中收集的这篇文章主要介绍远程FPGA虚拟实验平台之计数器与分频器(10Mhz分为1hz verilog HDL描述)一、偶数分频器二、具体实现方法三、用该分频器实现流水灯自动左移,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在这里插入图片描述

一、偶数分频器

偶数分频器比较简单,完全可以使用计数器完成分频。如,10Mhz位偶数分频器,占空比位50%,要求分后为1hz,分频倍数N=10M。当计数器从0计到10M/2-1时,计数器反转。

二、具体实现方法

代码如下:

module ClockDivider
#(parameter N =10000000) //设定一个合适的参数,本例中设置的是10兆
(   //参数列表
input wire Clk,
input wire Reset,
output reg outClk
);
logic [23:0]count; //一个计数器

always@(posedge CLK or posedge Reset)
begin
    if(Reset)
        count <=	0;
    else if(count ==N/2-1)  //翻转条件
	 begin
	 out_Clk<=!out_Clk; 
	 count<=0;
	 end
	 else
        count <=count+1;
end
endmodule

三、用该分频器实现流水灯自动左移

实现代码:

wire reset = PB[0]; 
wire clk;
localparam N=10000000;
ClockDivider #(N) RS0(.Clk(CLOCK),.Reset(reset),.outClk(clk));
logic [7:0]q;
always @ (posedge clk or posedge reset)
	if (reset)
		q <= 1;
	else
		q <= {q[6:0], q[7]};
assign L[7:0] = q[7:0];

最后

以上就是会撒娇红牛为你收集整理的远程FPGA虚拟实验平台之计数器与分频器(10Mhz分为1hz verilog HDL描述)一、偶数分频器二、具体实现方法三、用该分频器实现流水灯自动左移的全部内容,希望文章能够帮你解决远程FPGA虚拟实验平台之计数器与分频器(10Mhz分为1hz verilog HDL描述)一、偶数分频器二、具体实现方法三、用该分频器实现流水灯自动左移所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部