verilog之时钟信号的编写2
verilog之时钟信号的编写2
1、时钟信号的特点
时钟信号除了可以根据时序一个个变化列举出来,还可以利用其循环的变化的特点,使用循环执行语句always来实现。这种方法实现的时钟信号可以一直执行且不需要关注每个变化点的延时。
2、基于begin-end块的时钟信号
initial begin
clk=0;
clk1=0;
clk2=0;
end
//way1
always #1 clk=~clk;
//way2
always begin
#1 clk1=~clk1;
#1 clk2=~clk2;
end
方法1是最方便的时钟信号,只有一条执行语句,甚至不需要使用块来封装。
方法2则是使用begin-end来实现两个时钟信号clk1和clk2,可以简单地分析出clk2的周期是clk1的两倍。clk1是2系统周期,clk2是4系统周期。占空比就是50%,一条语句是无法实现其他占空比的时钟信号的。
3、基于fork-join块的时钟信号
initial begin
clk=1;
clk1=1;
end
always fork
#1 clk=~clk;
#2 clk1=~clk1;
#3 ;
#50 ;
join

可以观察到fork-join的时钟信号的周期是最大延时的两倍。每个时钟信号的周期都是一致的。其他延时只会改变时钟信号的相位。从这里也可以看出fork-join的块的工作原理:先找到最大延时,其他延时执行语句在其子期间中显示。使用fork-join可以仿真有时钟延时的信号输入。
4、小结
使用循环执行语句来实现时钟信号是常用的方法。一般的时钟信号的激励也是利用循环执行来模拟的。
verilog之时钟信号的编写2的更多相关文章
- Verilog 语言 001 --- 入门级 --- 编写一个半加器电路模块
Verilog 语言编写一个 半加器 电路模块 半加器 的电路结构: S = A 异或 B C = A 与 B 1. 程序代码 module h_adder (A, B, SO, CO); input ...
- 用Sublime Text搭建简易IDE编写Verilog代码
前言 Verilog是一种硬件描述语言(HDL),该语言在Windows上有集成开发环境可以使用,如ModelSim,但ModelSim的编辑器不太好用因此笔者萌生了用Sublime Text3来编写 ...
- FPGA —— Quartus II 15.0 使用 ModelSim SE-64 2019.2 软件进行仿真
Quartus II 15.0 使用 ModelSim SE-64 2019.2 软件进行仿真 ModelSim 仿真 Verilog HDL 时需要编写一个 TestBench 仿真文件,通过仿真文 ...
- 基于串口调试助手的WIFI模块调试-FPGA简单联网(点灯)
根据正点原子的<ATK-ESP8266 WIFI用户手册>,使用XCOM V2.2串口调试助手测试WIFI模块[26].在本系统中运用到的功能主要是TCP/IP模式中的TCP Client ...
- [原创]迈出NIOS的第一步,HelloNIOS
Altera官方推出NIOS已经很久了,个人感觉C+V代码配合会是后面FPGA使用的一个主流,由C来完成一些对时序要求不高,对功能要求偏高的部分,比如运动控制等:由V来配合时序完成高时序要求的需求以及 ...
- vivado hls(1)
笔记 1.vivado hls是fpga高级综合工具,可以将C语言转换成verilog代码,适合编写算法,但是要有硬件思想. 2.软核就是只要资源足够,就可以用逻辑打一个CPU出来,与硬核不一样,硬 ...
- sublime text 2使用方法
笔者用过的一些软件用来写Verilog代码,比如notepad+,ultra,editplus等,近日在群里看到大家在讨论一个比较有意思的软件,sublime text,才发现有种相见恨晚的感觉,其实 ...
- ISE、vivado、QuartusII调用notepad++、UE汇总(整理)
我已经用惯了notepad++编写Verilog代码,很喜欢这款编辑器,功能真的非常强大.所以,当需要对vivado.ISE或quartus ii中的工程进行Verilog代码上的编写或修改时,只需双 ...
- 转载论文关于fir滤波器的fpga实现
摘 要 本文讨论的FIR滤波器因其具有严格的线性相位特性而得到广泛的应用.在工程实践中,往往要求信号处理具有实时性和灵活性,本论文研究FIR的FPGA解决方案正体现了电子系统的微型化和单片化. 本论文 ...
- FPGA 开发详细流程你了解吗?
FPGA 的详细开发流程就是利用 EDA 开发工具对 FPGA 芯片进行开发的过程. FPGA 的详细开发流程如下所示,主要包括电路设计.设计输入.综合(优化).布局布线(实现与优化).编程配置五大步 ...
随机推荐
- 超简单JSP人员信息管理系统(适合新手练手用)
自己以前闲着没事写的JSP小项目,适合刚学完JSP拿来练手的朋友. 源码地址: https://github.com/mudfish/userManager 项目说明: 软件需求: 开发工具:ecli ...
- 编译原理LR分析
LR(0)分析存在问题及解决办法 当LR(0)含有互相冲突的项目时,则需要向前展 望符号串,检查下一个输入符号的状态 例 项目集I={X→α· bβ,A→α·,B→α· } 当面临输入符号b时,应该选 ...
- python第一章pta习题总结
chapter 1 一.选择判断部分 1.高级语言程序要被机器执行,只有用解释器来解释执行.(F) 计算机高级语言按程序的执行方式可以分为编译型和解释型两种. 执行方式 跨平台 特点 缺点 代表语言 ...
- 《系列一》-- 4、xml配置文件解析之[默认]命名空间[标签]的解析
阅读之前要注意的东西:本文就是主打流水账式的源码阅读,主导的是一个参考,主要内容需要看官自己去源码中验证.全系列文章基于 spring 源码 5.x 版本. Spring源码阅读系列--全局目录.md ...
- Windows 进程的一些学习笔记
进程的内存映像是指内核在内存中如何存放可执行程序文件. 在将程序转化为进程的过程中,操作系统将可执行程序由硬盘复制到内存. 可执行程序和内存映像的区别 可执行程序位于磁盘中而内存映像位于内存中: 可执 ...
- Vue3学习(二十)- 富文本插件wangeditor的使用
写在前面 学习.写作.工作.生活,都跟心情有很大关系,甚至有时候我更喜欢一个人独处,戴上耳机coding的感觉. 明显现在的心情,比中午和上午好多了,心情超棒的,靠自己解决了两个问题: 新增的时候点击 ...
- Windows 实例如何开放端口
矩池云 Windows 实例相比于 Linux 实例,除了在租用机器的时候自定义端口外,还需要在 Windows防火墙中添加入口规则.接下来将教大家如何设置 Windows 防火墙,启用端口. 租用成 ...
- DataGear数据可视化分析平台介绍
DataGear 是一款开源免费的数据可视化分析平台,自由制作任何您想要的数据看板,支持接入SQL.CSV.Excel.HTTP接口.JSON等多种数据源. 系统特点: 友好的数据源接入 支持运行时接 ...
- 【Azure 存储服务】ADLS Gen 2 Backup/软删除/Version管理/快照等功能参考资料
问题描述 ADLS Gen 2 存储的备份,软删除和version管理, 快照等功能应该怎么启用? 问题回答 存储的备份 测试显示 Premium 定价层 的 ADLS Gen 2 在中国区Azure ...
- Huggingface初上手即ERNIE-gram句子相似性实战
大模型如火如荼的今天,不学点语言模型(LM)相关的技术实在是说不过去了.只不过由于过往项目用到LM较少,所以学习也主要停留在直面--动眼不动手的水平.Huggingface(HF)也是现在搞LM离不开 ...