PAGE
课程论文(设计)
题 目 异步缓冲fifo的设计
院 系 电子与信息工程学院
专 业 电子与通信工程
学生姓名 卢兴森
学 号 20132281370
指导教师 刘建成
二 O 一 四 年 元 月 三 日
一 异步FIFO的介绍……………………………………………………………… 1
1.1 指针以及满空信号的产生…………………………………………………… 1
1.2 二进制指针和格雷码指针的同步…………………………………………… 2
1.3 保守的满空判断……………………………………………………………… 3
1.4 二进制指针和格雷码指针的比较…………………………………………… 4
二 程序及其介绍………………………………………………………………… 4
三 仿真结果图…………………………………………………………………… 13
四 总结…………………………………………………………………………… 14
PAGE 1
一 异步FIFO的介绍
使用FIFO同步源自不同时钟域的数据是在数字IC设计中经常使用的方法,设计功能正确的FIFO会遇到很多问题,探讨了两种不同的异步FIFO的设计思路。两种思路都能够实现功能正确的FIFO。
本文所研究的FIFO,从硬件的观点来看,就是一块数据内存。它有两个端口,一个用来写数据,就是将数据存入FIFO;另一个用来读数据,也就是将数据从FIFO当中取出。与FIFO操作相关的有两个指针,写指针指向要写的内存部分,读指针指向要读的内存部分。FIFO控制器通过外部的读写信号控制这两个指针移动,并由此产生FIFO空信号或满信号。
对于异步FIFO而言,数据是由某一个时钟域的控制信号写入FIFO,而由另一个时钟域的控制信号将数据读出FIFO。也就是说,读写指针的变化动作是由不同的时钟产生的。因此,对FIFO空或满的判断是跨时钟域的。如何根据异步的指针信号对FIFO的满状态或空状态进行正确的判断是本文研究的重点。此外,设计过程中的一些细节问题也将在文中涉及到。
1.1 指针以及满空信号的产生
为了更好地说明问题,先探讨一下同步FIFO指针移动以及满空信号的产生过程。对于同步FIFO,读写指针都指向一个内存的初始位置,每进行一次读写操作,相应的指针就递增一次,指向下一个内存位置。当指针移动到了内存的最后一个位置时,它又重新跳回初始位置。在FIFO非满或非空的情况下,这个过程将随着读写控制信号的变化一直进行下去。如果FIFO处于空的状态,下一个读动作将会导致向下溢出(underflow),一个无效的数据被读人;同样,对于一个满了的FIFO,进行写动作将会导致向上溢出(overflow),一个有用的数据被新写入的数据覆盖。这两种情况都属于误动作,因此需要设置满和空两个信号,对满信号置位表示FIFO处于满状态,对满信号复位表示FIFO非满,还有空间可以写入数据;对空信号置位表示FIFO处于空状态,对空信号复位表示FIFO非空,还有有效的数据可以读出。
当读指针和写指针相等也就是指向同一个内存位置的时候,FIFO可能处于满或空两种状态。可以通过不同的方法判断或区分FIFO究竟是处于满状态还是空状态,也就是究竟是写指针从后赶上了读指针,还是读指针从后赶上了写指针。本文所应用的方法是设置一个额外的状态位,指针由它的地址位以及状态位组成。地址位随着相应的操作递增,指针由内存的最后位置返回到初始位置的时候状态位取反。因此,当读写指针的地址位和状态位全部吻合的时候,读写指针经历了相同次数的循环移动,也就是说,FIFO处于空状态;如果读写指针的地址位相同而状态位相反,写指针比读指针多循环一次,标志FIFO处于满状态。 (2)二进制指针可以用于任意大小的FIFO;格雷码指针只能用于大小为2的幂的FIFO。
1.2 二进制指针和格雷码指针的同步
二进制指针(如图1)是由一位状态位和若干位二进制编码的地址位组成的(例如由三位地址和一位状态位构成的指针的变化:0000→0001→0010→0011→0100→0101→0110→0111→1000→1001→1010→1011→1100→1101→1110→1111)。如果在不同的时钟域内直接同步二进制指针,有可能产生问题。例如,当读指针从0111向1000变化的时侯,指针所有的位都要变化,如果写时钟恰好在读指针的变化时刻采样,写者得到的读指针值有可能是从0000到1111中的任何一个。所以二进制指针不宜被直接同步,但可以通过一对握手信号同步二进制指针。
图1
例如,读指针被读者存人一个寄存器时,读者就发出一个就绪信号。当写者看到就绪信号时,读取读指针,发出一个收到数据的确认信号。当读
您可能关注的文档
- 一卡通系统技术方案.doc
- 一年级第一学期数学第一单元课堂练习设计.doc
- 一年级品德与生活教案.doc
- 一汽大众奥迪上海东联技术标-金港.doc
- 一汽大众运营质量管理.ppt
- 一上语文复习资料.doc
- 一文带你看懂风电安装船.doc
- 一中三模文综试题 2013.doc
- 伊顿混合动力培训.ppt
- 衣柜厂一车间基础工艺培训资料.ppt
- 主题一 生物体的结构层次(复习讲义)(全国通用)2026年中考生物二轮复习讲练测(原卷版).docx
- 专题01 生物体的结构层次(解析版)2026年中考生物二轮复习讲练测.docx
- 2026年中考化学一轮复习考点过关课件--燃烧与灭火.pptx
- 专题04 植物的生活 (原卷版)(江苏专用)2026年中考生物二轮复习讲练测.docx
- 第八单元+金属和金属材料整理与提升(一)课件--2025-2026学年九年级化学人教版下册.pptx
- 5.4+化石燃料+课件--2025-2026学年九年级化学科粤版上册.pptx
- 专题02 生物的多样性 (原卷版)(江苏专用)2026年中考生物二轮复习讲练测.docx
- 第二单元+梨园撷英+演唱唱脸谱+课件2025-2026学年人音版(简谱)初中音乐七年级下册.pptx
- 2026年中考道德与法治二轮热点复习课件:央视春晚.pptx
- 第十一章+极地地区(单元复习课件)地理新教材人教版七年级下册.pptx
最近下载
- 执法工作中存在的问题和不足.docx VIP
- 分析力学PPT课件.ppt VIP
- 生成式人工智能在高中数学课堂中的应用:激发学生探究兴趣的实证研究教学研究课题报告.docx
- 部编版小学五年级道德与法治下册第二单元第5课《建立良好的公共秩序》第二课时(教案).docx VIP
- 2026年中职学校工作计划.docx VIP
- 排列数的综合运用_课件.pptx VIP
- QGW17991-2025《电力安全工作规程变电部分》.pdf VIP
- 西南科技大学处室文件-西南科技大学研究生院.PDF VIP
- iTrust UL33系列UPS系统20-60kVA用户手册(V1.5).pdf VIP
- 新改版教科版六年级下册科学知识点.doc VIP
原创力文档

文档评论(0)