- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一种基于格雷码的异步FIFO设计与实现
.....................................
一种基于格雷码的异步FIFO设计与实现
1 引言FIFO(First IN First Out)先进先出电路是一种实现数据先进先出的存储器件,普遍用作数据缓冲器。FIFO的基本单元是寄存器,作为存储器件,FIFO的存储能力是由其内部定义的存储寄存器的数量决定。FIFO通常是双端口的存储器,其中一个端口用于写入数据,而另一个端口用于读出数据。可以同时对存储器字存储单元进行写入和读出操作。它的数据吞吐率是普通RAM的两倍。FIFO型的存储器不需要由地址来存取数据。需要由另外的信号线(或标志)来指明存储器的内容状态。在现代数字系统设计中,FPGA(现场可编程门阵列)器件凭借其灵活、方便、资源丰富的优势在很多领域得到了广泛应用。随着其片内存储资源的增加,把FIFO器件集成到其中是一种方便地代替专用芯片的实现方法。根据异步逻辑的设计方法,引入乒乓操作的设计技巧,给出了一种新颖的异步FIFO设计方案,解决FPGA多时钟系统中不同时钟域传输数据的问题。
2 异步FIFO的设计与实现2.1 通用异步FIFO的基本结构在现代的集成电路芯片中,随着设计规模的不断扩大,一个系统中往往含有数个时钟。多时钟域带来的一个问题就是,如何设计异步时钟之间的接口电路。异步FIFO是解决这个问题一种简便、快捷的解决方案。使用异步FIFO可以在两个不同时钟系统之间快速而方便地传输实时数据。在网络接口、图像处理等方面,异步FIFO得到了广泛的应用。异步FIFO常用于存储、缓冲在两个异步时钟之间的数据传输。在异步电路中,由于时钟之间周期和相位完全独立,因而数据的丢失概率不为零。如何设计一个高可靠性、高速的异步FIFO电路便成为一个难点。下面将介绍解决这一问题的一种方法,其结构框图如图1所示。本系统FPGA内部FIFO的存储介质是一块双端口的RAM,具有两个独立的读写时钟,整个系统也分为两个完全独立的时钟域——读时钟域和写时间域。FIFO的控制逻辑执行所有的读写指针管理,产生各种状态标志。在写时钟域部分,由写地址产生逻辑产生写控制信号和写地址;读时钟域部分由读地址产生逻辑产生读控制信号和读地址。在空/满标志产生部分,由读写地址相互比较产生空/满标志。本设计的外部引脚如表1所示。这种FIFO设计当中有两个难点:一是如何正确地设计空、满信号的控制电路;二是如何同步异步信号,使触发器不产生亚稳态。下一小节将具体阐述解决方法。2.2 FIFO的读写控制空/满标志的产生是FIFO的核心部分,如何正确设计这部分逻辑,直接影响到FIFO的性能。空/满标志产生的原则是:写满不溢出,读空不多读。即无论在什么时候,都不应出现读写地址同时对一个存储器地址操作的情况。在读写地址相等或相差一个或多个地址的时候,满标志应该有效,表示此时FIFO已满。在满信号有效时若继续向FIFO写数据,应根据设计的要求对数据作保持或抛弃重发处理,空标志的产生也是如此。最直接的做法是,采用读写地址相比较来产生空满标志。当读写地址的差值等于一个预设值的时候,空/满信号被置位。这种实现方法逻辑简单,但它是减法器形成的一个比较大的组合逻辑,因而限制了FIFO的速度。所以,一般只采用相等不相等的比较逻辑,避免使用减法器。即:空标志=(|写地址-读地址|=预定值)AND(写地址超前读地址)满标志=(|写地址-读地址|=预定值)AND(读地址超前写地址)另一种方法是,比较器只对读写地址比较是否相等。在读写地址相等的时候有两种情况:满或者空。所以,附加了一个并行的区间判断逻辑来指示是空还是满。这个区间判断逻辑将整个地址空间分为几个部分,以指示读写地址的相对位置。这种做法提高了整个电路的速度,但是也有其缺点。主要是直接采用读写地址等于不等于的比较逻辑来进行空/满标志的判断,可以带来误判。将读写指针位宽分别定义为:rp[aw:0]和wp[aw:0],其中rp[aw]和wp[aw]为最高位进位位,rp[aw-1:0]和wp[aw-1:0]分别表示读写指针寻址的地址。当读写指针每次从初始地址处读写到最后一位地址位时,均需向最高位rp[aw]和wp[aw]进位。因为先有写才能有读,所以当wp[aw-1:0]=rp[aw-1:0]时,只要判断wp[aw]与rp[aw]是否相等就可以知道是写指针追赶上读指针写满了(wp[aw]!=rp[aw]),还是读指针追赶上写指针读空了(wp[aw]=rp[aw])。rp_pl1和wp_pl1分别定义为读写指针的下一个地址,而且为了在判断空满标志时对读写指针进行同步比较,设计中定义了与rd_clk同步的写指针wp_s以及与wr_clk同步的读指针rp_s,这两个信号可以通过同步逻辑来实现。2
您可能关注的文档
- 现Z3050摇臂钻床的设计.doc
- 现Z3040摇臂钻床的PLC改造设计.doc
- Z90型电动阀门装置及数控加工工艺的设计.doc
- 现Z32K型摇臂钻床变速箱的改进设计.doc
- 现Za300C阀体密封面的加工.doc
- ZL15型轮式装载机.doc
- 现ZJK7532A数控铣床进装置结构设计.doc
- 现ZigBee网络路由算法设计.doc
- ZMB型纸浆模塑成型机机座设计.doc
- ZL40装载机传动系统的设计.doc
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- 中国智能运维行业市场调查研究及投资潜力预测报告.docx
- 高职单招英语试卷高职单招英语试卷.doc
- 2023苏教版科学六年级下册教学计划、教学设计及教学总结(含目录)平铺式.docx VIP
- 《肖邦E大调夜曲 - Nocturne op 9 no 2》古典吉他谱.pdf
- 标准图集-20S515-钢筋混凝土及砖砌排水检查井.pdf VIP
- 统编版语文三年级下册第三单元教材解读解读与集体备课课件.pptx
- AI+行业应用研究报告:AI+办公.pptx VIP
- 苏教版二年级下册科学教学计划.pdf
- 《磁铁的秘密》幼儿园大班科学PPT课件.ppt VIP
- 2025顺德农商银行小微客户经理校园招聘笔试模拟试题及答案解析.docx
文档评论(0)