我是靠谱客的博主 清新嚓茶,最近开发中收集的这篇文章主要介绍verilog | 十、时钟信号与复位信号,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.常规时钟

1) initial:

parameter clk_period = 10;

reg clk;

initial begin

clk = 1'b0;

forever

#(clk_period / 2) clk = ~clk;

end

2) always:

parameter clk_period = 10;

reg clk;

initial

clk = 0;

always #(clk_period / 2) clk = ~clk;

2.占空比可调时钟

//占空比:High_time / (High_time + Low_time)

parameter High_time = 5, Low_time = 10;

reg clk;

always

begin

clk = 1;

# High_time;

clk = 0;

# Low_time;

end

3.偏移相位时钟信号

//相位偏移:360 * pshift_time / (High_time + Low_time)

parameter High_time = 5, Low_time = 10, pshift_time = 2;

reg clk;

always

begin

clk = 1;

# High_time;

clk = 0;

# Low_time;

end

assign #(pshift_time) clk_p = clk;

4.固定数目时钟信号

parameter clk_cnt = 50, clk_period = 2;

reg clk;

initial

begin

clk = 0;

repeat(clk_cnt)

#(clk_period / 2) clk = ~clk;

end

5.复位信号

1)异步复位

parameter rst_repiod = 100;

reg rst_n;

initial

begin

rst_n = 0;

#rst_repiod;

rst_n = 1;

end

2)同步复位

parameter rst_repiod = 100;

reg rst_n;

initial begin

rst_n = 1;

@(posedge clk)

rst_n = 0;

#rst_repiod;

rst_n = 1;

end

最后

以上就是清新嚓茶为你收集整理的verilog | 十、时钟信号与复位信号的全部内容,希望文章能够帮你解决verilog | 十、时钟信号与复位信号所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部