- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HDL 设计描述实例 ----FIFO设计 国防科技大学计算机学院微电子研究所610室 曾献君 FIFO类型 同步控制的FIFO FIFO的读写时钟相同。 异步控制的FIFO 用于跨时钟域的数据交换; FIFO的读写时钟不同、读写时钟之间不一定存在相位、周期方面的约束关系; 同步FIFO设计 同步FIFO存在3种状态: 空; 满; 非空非满 FIFO为空,不可从FIFO读数据,但可写; FIFO为满,不可向FIFO写数据,但可读; 非空非满时,FIFO可读、可写。 FIFO的读写受同一时钟控制; FIFO的大小为N字 同步FIFO的操作 1、 同步FIFO的外部接口信号 时钟信号clk:控制FIFO的读写; 写请求信号Wreq: 向FIFO发送写请求信号; 写数据WData[Size-1:0] : 写数据; 写有效信号WEn:WEn=1表示写有效,否则写无效,作废写请求,并使写请求等待; 读请求信号Rreq: 向FIFO发送读请求信号; 读数据RData[Size-1:0] : 读数据; 读有效信号REn:REn=1表示读有效,否则读无效,作废读请求,并使读请求等待; 同步FIFO的操作 1、 同步FIFO的操作 当FIFO不满且Wreq有效时,向FIFO写数据,并置写使能WEn有效; 当FIFO不空且Rreq有效时,从FIFO从读出数据并置读使能REn有效; 当FIFO满且Wreq有效时,置写使能WEn无效且作废此次写操作; 当FIFO空且Rreq有效时,置读使能REn无效且作废此次读操作。 同步FIFO的操作 问题: 如何判断FIFO为空、满? FIFO的读写操作的位置如何判定? 同步FIFO的操作 算法上的考虑: 设置一个Count计数器,用于计数FIFO中的元素的个数,Count=N; 设置FIFO的读指针Rptr,0=Rptr = N-1; 设置FIFO的写指针Wptr,0=Wptr = N-1; FIFO初始操作时,Count=0, Rptr = Wptr = 0. 同步FIFO的操作 FIFO的操作可用下述几个进程表示: 1)初始化进程: Count = Wptr = Rptr =0; 2)FIFO读进程: if (Rreq ==1 Count 0) begin RData = FIFO[Rptr]; Rptr = (Rptr +1 )mod N; REn = 1; end 同步FIFO的操作 3) FIFO 写进程 if (Wreq==1 Count N) begin FIFO[Wptr] = WData; Wptr = (Wptr +1) mod N; WEn = 1; end 4) Count 计数进程 if (Wreq ==1 Count N Rreq !=1) Count = Count +1; if (Rreq == 1 Count 0 Wreq !=1) Count = Count -1; 同步FIFO的操作 FIFO 的初始化只进行一次,FIFO的读进程、写进程、Count的计数进程相互之间并行。 如何将上述进程(算法)转化为相应的硬件实现? 同步FIFO设计 根据FIFO的大小N,决定Count、Wptr、Rptr的位宽?log2N?; 设置寄存器分别保存Count、Wptr、Rptr的值; 同步FIFO必须有异步Reset; 当FIFO复位时,Count=0,Wptr=0,Rptr=0; FIFO正常操作时,受时钟控制。 异步FIFO的设计 异步FIFO的数据读、写受不同时钟的控制; 异步FIFO的空、满状态不能依靠计数的方式进行,因为读、写均需要对计数器进行操作; 如何判断异步FIFO的空、满情形?如何操作? 如何判断异步FIFO的空、满? 异步FIFO为空条件: Reset情形下,异步FIFO为空; 在正常读、写情形,当读指针追上写指针,异步FIFO为空。 异步FIFO为满条件: 在正常读、写情形,读、写指针相同,且写指针追上读指针时。 读、写指针均相同时,FIFO到底是空还是满? 异步FIFO的设计 关于异步FIFO设计更多的资料 * module Synch_FIFO(clk,
您可能关注的文档
- 是.的construction.ppt
- 税务干部心理健康与压力管理 卢迈高级心理咨询师.ppt
- 思考:观察我们收集的浓盐水,杯子底还有未溶解的食盐。.ppt
- 苏教版高中语文教科书必修五备课建议.ppt
- 提供给老师参考喔~.ppt
- 土地使用标准政策与管理应用.ppt
- 外公昔日高大的身躯平铺在病床上,像极了勉强用皮包裹着的.ppt
- 微软系统-第十六章 国际市场营销.ppt
- 我的父亲母亲(第二节).ppt
- 我们是五月的花海用青春拥抱时代我们是初升的太阳用生命点.ppt
- 内科重症监护病房的患者血液管理专家共识重点2025.pdf
- 小学体育教育中人工智能教育资源跨学科融合设计的策略研究教学研究课题报告.docx
- 8 果园物联网技术在果园生产自动化与智能化中的应用案例分析教学研究课题报告.docx
- 帕金森病发病及进展过程中小脑的作用2025.pdf
- 基于生成式AI的初中信息技术课程资源生成与项目式学习模式研究教学研究课题报告.docx
- 《金融市场波动与企业套期保值决策的宏观经济政策响应研究》教学研究课题报告.docx
- 《北方寒地水稻优质高产栽培技术对农业生产效率的影响研究》教学研究课题报告.docx
- 小学语文、数学、英语小组合作学习在人工智能辅助下的创新实践与效果评价教学研究课题报告.docx
- 基于大数据的高中生数字化学习动机评价与激发策略分析教学研究课题报告.docx
- 《文化遗产旅游开发中的文化遗产保护与旅游产业政策支持体系构建与完善研究》教学研究课题报告.docx
文档评论(0)