(3)异步FIFO设计及仿真验证(上)_少卿不在大理寺的博客-程序员宅基地

技术标签: 数字IC设计从入门到实战  IC设计  verilog  

思考1:同步和异步的定义及区别么? 

        当两个时钟信号间的相位差是固定的时候,则称为同步时钟;当两个时钟信号间的相位差无法固定的时候,则称为异步时钟。

思考2:为什么要异步FIFO?

        前面我们使用同步时钟设计了FIFO,读写操作都是受控与同一个时钟clk,但在实际IC设计中,不同信号间的传输是受控于不同的时钟信号的。所以对于跨时钟域的信号传输则要进行“同步”处理。

思考3:单bit怎么做同步处理?

        对于单bit信号的同步操作——采用“同步器”操作,由2~3级FF组成(2到3级的触发器,作delay效果),它第一级采集到的数据无法确定是0或是1,但输出肯定是有定值了,第二级触发器再采的时候肯定可以采集到一个确定的值。

图1 电路结构图

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/CAUC_learner/article/details/122497076

智能推荐

c语言 指针 保存地址,将指针的地址存储在C中的unsigned int中_不神马的博客-程序员宅基地

是否可以将指针强制转换为unsigned int,然后将其转换回指针?我正在尝试将指针存储到pthread_t变量中的结构,但我似乎无法让它工作.这是我的代码的一些片段(我正在创建一个用户级线程管理库).当我尝试打印出线程的tid时,它给了我一些很长的垃圾编号.编辑:没关系,我让它工作.我变了thread = (pthread_t) currentThread;至*thread = (pthrea...

asmcmd命令学习_congnuo5674的博客-程序员宅基地

实例管理命令:dsget 返回discovery diskstringdsset 设置discovery diskstringlsct 显示当前oracle ASM的客户端,一般指数据库实例...

JAVAMail发送邮件_aofmkrl6423的博客-程序员宅基地

Author:Rockay(刘其超,刘涛)Page:http://www.cnblogs.com/RockayEmail:[email protected]注:有部分是参考网上资料。接上次smtp邮件发送功能,这次用的是JAVAMail,运行此程序还需三个Java包:mail.jar,activation.jar和htmlparser.jar。下面介绍一下JAV...

About Resouce_iteye_15860的博客-程序员宅基地

 关于RESTful风格的URL设计 Singular(单数) resourceful route: resource :geocoder creates six different routes in your application, all mapping to the Geocoders controller:VerbPa...

解决springMVC文件上传报错: The current request is not a multipart request_HaHa_Sir的博客-程序员宅基地

解决springMVC文件上传报错: The current request is not a multipart request 一、问题描述在使用springMVC做文件上传时,点击"导入" 时页面报错:org.springframework.web.multipart.MultipartException: The current request is not a m

vue html模板递归,Vue递归组件 - Prettypice的个人页面 - OSCHINA - 中文开源技术交流社区..._Avatar Ye的博客-程序员宅基地

开始在js/jsx中,我们可以通过递归的方式来生成一些有规律的dom结构,那么,在Vue模板中,我们能不能递归生成dom呢?答案是肯定的。在Vue中,组件可以递归的调用自己本身,但是有一些条件:该组件要有name属性要确保递归的调用有终止条件,防止内存溢出Demo下面为了方便理解递归组件,我写了一个小的demo:有这么一份数据,我们希望能把它做成像文件树一样的结果[{'name': 'Vue','...

随便推点

教你GridView如何获取选中行的值?_gridview获取选中行的值_礼拜六的博客-程序员宅基地

页面代码Default.aspx GridView 部分gvMain" runat="server" AllowPaging="True" AutoGenerateColumns="False"            DataSourceID="ObjectDataSource2" Height="144px" CellPadding="0" ForeColor="#333333"    

查询HPUX系统中某个文件被谁使用_congrang4031的博客-程序员宅基地

在HPUX中,我们可以用fuser -cu命令查看哪个用户占用某个文件系统,这样在UMOUNT不下来的时候可以看看,或者使用fuser -kcu命令杀掉相关进程那么监控文件级别的有吗,fuser命令到不了文件级别。这里有一个工具...

深度学习必备三种基本绘图技能_深度学习绘图_技术人Howzit的博客-程序员宅基地

在深度学习中,常用的图大概有一下几种:曲线图点状图显示图片1 安装一般都是自带的,比如conda 软件,若没有,桌面安装呢?如果已经安装了,可以略过。1.打开控制台(win+R)->输入cmd2.输入下面命令pip install matplotlib或者conda install matplotlib完成即可。1.1 显示中文import matplotlib.pyplot as plt # 显示中文 plt.rcParams['font.sans-ser

Unity Button长按检测_unity 检测按键持续按下_菜菜码农柠檬哥的博客-程序员宅基地

调用Unity自带接口即可,代码如下:public class upSpeed : MonoBehaviour,IPointerDownHandler,IPointerUpHandler{ // Start is called before the first frame update private void Awake() { this.gameObject.GetComponent<Button>(); } // Update i

学习日志-《微习惯》笔记_用户780371189327的博客-程序员宅基地

本文记录了阅读《微习惯》过程中的所有笔记。

json_parser_read.hpp:257:264: error: ‘type name’ declared as function returning an array escape_AllyLi0224的博客-程序员宅基地

运行make之后出现如下错误:/usr/include/boost/property_tree/detail/json_parser_read.hpp:257:264: error: ‘type name’ declared as function returning an arrayescape ^ /usr/include/boost/property_tree/det

推荐文章

热门文章

相关标签