verilogHDL设计中的同步时序逻辑
引用自夏宇闻教授
1、同步时序逻辑:
是指表示状态的寄存器组的值只能在唯一确定的触发条件发生改变。
只能由时钟的正跳变沿或者负跳变沿触发的状态机就是一例,always@(posedge clk)。
1.1同步时序逻辑的优点:
同步时序逻辑比异步时序逻辑稳定简单好多,由此我们有一个规定:用verilog来设计可综合的状态机必须使用同步时序逻辑。
2、异步时序逻辑:
是指触发条件有多个控制因素组成,任何一个因素的跳变都可以引起触发。寄存器组的时钟输入端不是都连接在同一个时钟信号上。
例如用一个触发器的输出连接到另外一个触发器的时钟端去触发的就是异步时序逻辑。
2.1异步时序逻辑的缺点:
1、因为异步时序逻辑的触发条件很随意,任何时刻都有可能发生
2、许多综合器不支持异步时序逻辑的综合
3、异步时序很难控制由组合逻辑和延迟产生的冒险和竞争。
3、确保时钟同步的方法:
1)全局网络布线,如图
2)采用平衡树,并在每一级假如缓冲器,如图
3)后仿真时,降低时钟频率

made by qidaiYMM , your comment is appreciated.
email:1519882610@qq.com
verilogHDL设计中的同步时序逻辑的更多相关文章
- FPGA异步时钟设计中的同步策略
1 引言 基于FPGA的数字系统设计中大都推荐采用同步时序的设计,也就是单时钟系统.但是实际的工程中,纯粹单时钟系统设计的情况很少,特别是设计模块与外围芯片的通信中,跨时钟域的情况经常不可避免. ...
- Go语言 | 并发设计中的同步锁与waitgroup用法
今天是golang专题的第16篇文章,我们一起来聊聊golang当中的并发相关的一些使用. 虽然关于goroutine以及channel我们都已经介绍完了,但是关于并发的机制仍然没有介绍结束.只有go ...
- 我的 FPGA 学习历程(09)—— 时序逻辑入门
讲到这篇时,组合逻辑就告一段落了,下面是一些总结: 描述组合逻辑时,always 语句中的敏感信号列表中需要列出全部的可能影响输出的变量 描述组合逻辑时,always 语句中的赋值总是使用阻塞赋值符号 ...
- FPGA设计中的复位
(1)异步复位与同步复位的写法 1.异步复位与同步复位的区别? 同步复位:若复位信号在时钟有效边沿到来时刻为有效,则执行一次复位操作. 优点: 1)同步复位是离散的,所以非常有利于仿真器的仿真: 2) ...
- FPGA设计中的异步复位、同步释放思想
1.一个简单的异步复位例子: module test( input clk, input rst_n, input data_in, output reg out ); always@(posedge ...
- 数字IC前后端设计中的时序收敛(五)--Max Transition违反的修复方法
本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...
- 数字IC前后端设计中的时序收敛(四)--Max Capacitance违反的修复方法
本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...
- 数字IC前后端设计中的时序收敛(一)前言
本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 为了纪念,同时 ...
- FPGA时序逻辑中常见的几类延时与时间(五)
FPGA逻辑代码重要的是理解其中的时序逻辑,延时与各种时间的记忆也是一件头疼的事,这里把我最近看到的比较简单的几类总结起来,共同学习. 一.平均传输延时 平均传输延时 二.开启时间与关闭时间 开 ...
随机推荐
- IIS7.0配置HTTPS安全类型的网站
HTTPS,它是一个安全通信通道,是基于HTTP开发,用于在客户计算机和服务器之间交换信息.它使用安全套接字 层(SSL)进行信息交换,简单来说它是HTTP的安全版.主要在一些对安全性要求比较高的网站 ...
- 图解win7中IIS7.0的安装及配置ASP环境
控制面板中“程序”的位置 “程序”中“打开或关闭Windows功能”的位置 如图,安装IIS7时需要选择要使用的功能模块 IIS7安装完成之后可以在开始菜单的所有程序中看到“管理工具”,其中有一个“I ...
- public animal this[int index]|索引器的使用
学习如何使用索引器,索引器的使用是public 类型 this[int index]{get{};set{}} ,访问通过类的实例(对象)加[i], 例如animal[i],就像访问数组一样,其实就是 ...
- .net上传图片并转成二进制流
话不多说,直接上代码 <input id="InputFile" style="width: 399px" type="file" r ...
- Android实现Http协议案例
在Android开发中,使用Http协议实现网络之间的通信是随处可见的,使用http方式主要采用2中请求方式即get和post两种方式. 一.使用get方式: HttpGet httpGet = ne ...
- go开发环境配置
- 如何在DOS下用C/C++ 编译器
本文来自CSDN博客 ★★ 注意:以下适合 PC 环境 ★★ ●C/C++ 编译器需要的环境变数设定 古早以来,PC 上的 C 编译器,就需要两个环境变数: LIB:这个环 ...
- Android App测试要点
本文主要内容,转载自 http://www.51testing.com/html/04/344504-849373.html, 在这里,主要是整理一下app测试的总体思路,这里的a ...
- 躲避球游戏ios源码
躲避球游戏源码,有限源码是一个基于cocos2d的躲避球游戏源码的,并且还引用了大家熟悉google广告的,进行推广,已经还有带game center等,游戏操作很简单,用手指按住物体,然后移动物体避 ...
- mysql数据库的简单操作
首先进入mysql:mysql -u root -p 1.建库: create database 库名称; 例如:create database mydata;(创建一个名为“mydata”的库): ...