基于fpga的异步fifo设计学位论文.docx
- 文档编号:1484233
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:33
- 大小:1.30MB
基于fpga的异步fifo设计学位论文.docx
《基于fpga的异步fifo设计学位论文.docx》由会员分享,可在线阅读,更多相关《基于fpga的异步fifo设计学位论文.docx(33页珍藏版)》请在冰豆网上搜索。
基于fpga的异步fifo设计学位论文
江苏科技大学
本科毕业设计(论文)
学院
专业
学生姓名
班级学号
指导教师
二零壹叁年六月
江苏科技大学本科毕业论文
基于FPGA的异步FIFO设计
AsynchronousFIFOdesignbasedonFPGA
摘要
在现代集成电路芯片中,随着设计规模的不断扩大,一个系统往往包含多个时钟,如何进行异步时钟间的数据传输成为了一个很重要的问题。
异步FIFO(FirstInFirstOut)是一种先进先出电路,可以在两个不同的时钟系统间进行快速准确的数据传输,是解决异步时钟数据传输问题的简单有效的方案。
异步FIFO在网络接口、数据采集和图像处理等方面得到了十分广泛的应用,由于国内对该方面研究起步较晚,国内的一些研究所和厂商开发的FIFO电路还远不能满足市场和军事需求。
由于在异步电路中,时钟间的周期和相位完全独立,以及亚稳态问题的存在,数据传输时的丢失率不为零,如何实现异步信号同步化和降低亚稳态概率以及正确判断FIFO的储存状态成为了设计异步FIFO电路的难点。
本课题介绍了一种基于FPGA的异步FIFO电路设计方法。
课题选用QuartusII软件,在CycloneII系列的EP2C5T144C8N芯片的基础上,利用VHDL硬件描述语言进行逻辑描述,采用层次化、描述语言和图形输入相结合的方法设计了一个RAM深度为128bit,数据宽度为8bit的高速、高可靠的异步FIFO电路,并对该电路功能进行时序仿真测试和硬件仿真测试。
关键词:
异步FIFO;同步化;亚稳态;仿真测试
Abstract
InmodernICchips,withthecontinuousexpansionofthescaleofdesign,asystemalwayscontainsseveralclocks.Howtotransmitdatabetweentheasynchronousclocksbecomeaveryimportantproblem.AsynchronousFIFO(FirstInFirstOut)isafirst-in,first-outcircuit,itcantransmitdatabetweentwodiffentclocksystemsfastlyandaccurately,itisalsoasimpleandeffectivesolutiontosolvetheproblemofasynchronousclockdatatransfer.TheasynchronousFIFOhasaverywiderangeofapplicationsinnetworkinterface,dataacquisitionandimageprocessing.Butbecauseoftheaspectofalatestart,somedomesticresearchinstitutesandmanufacturerswhichresearchtheFIFOcircuitalsocannotmeettheneedsofthemarketandthemilitary.
Intheasynchronouscircuit,becauseofthattheclockcycleandphaseiscompletelyindependent,andthepresenceofmetastabilityproblems,thelossrateofdatatransmissionisnotzero.Howtoimplementasynchronoussignalsynchronization,reducetheprobabilityofmetastabilityandjudgethestateoftheFIFOstoragecorrectlybecomeadifficultproblemwhiledesigningtheasynchronousFIFOcircuit.ThispaperintroducesamethodofasynchronousFIFOcircuitdesignbasedonFPGA.ThistopicselectsQuartusIIsoftware,theCycloneIIfamilyEP2C5T144C8Nchip,basedontheuseofVHDLhardwaredescriptionlanguageforlogicaldescriptions,usingthemethodofcombininghierarchical,descriptionlanguageandgraphicalinput,Thistopicdesignsahigh-speed,highlyreliableasynchronousFIFOcircuitastheRAMdepthis128bitandthedatawidthis8bit,andteststhecircuitfunctionwithtimingandsoftwaresimulation.
Keywords:
AsynchronousFIFO;Synchronization;Metastability;simulationtesting
第1章绪论
1.1FPGA简介
FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在CPLD、PAL、GAL等可编程器件的基础上进一步发展的产物[10]。
利用VHDL或Verilog硬件描述语言进行电路设计,经过简单的布局整合之后,快速的烧入至FPGA上进行调试,是现代IC设计验证技术的主流。
FPGA作为一种半定制电路而出现在专用集成电路(ASIC)领域中,既克服了先前可编程器件的门电路数目有限的缺点,又弥补了定制电路的不足。
基于FPGA的异步FIFO具有现场可编程,容量改动性大,速度快,实现简单,开发时间快,生产周期短,可移植性好的优点。
1.2异步FIFO简介
在现代集成电路芯片中,设计规模不断扩大,一个系统中往往包含多个时钟。
如何在异步时钟间进行数据传输成为了电路设计中的一个重要问题。
异步FIFO(FirstInFirstOut)是解决这个问题的一个简单有效的方案。
异步FIFO是一种先进先出电路,常用来缓存数据和容纳异步信号间的周期和相位差异,使用异步FIFO可以在两个不同的时钟系统之间进行快速准确的实时数据传输。
异步FIFO在网络接口、数据采集和图像处理等方面得到了十分广泛的应用[2]。
异步FIFO用在异步时钟数据接口部分,由于异步时钟间的频率和相位完全独立,数据传输时的丢失率不为零,如何降低数据丢失率,设计一个高速可靠的异步FIFO便成为了一个难点。
本课题介绍了一种基于FPGA设计高速可靠的异步FIFO电路的方法。
1.3国内外研究现状及存在的问题
1.3.1研究现状
在20世纪80年代早期对FIFO存储器的容量和速度需求都很低,所以那时的FIFO芯片是基于移位寄存器的中规模集成(MSI)器件,由于这种芯片在容量不会太大,所以其速度也不可能很快。
新型的FIFO芯片是基于RAM结构的大规模集成(LSI)电路,其内部存储单元使用一个双端口RAM,具有输入和输出两套数据线。
由于采用RAM结构,数据从写入到读出的延迟时间将大大缩短。
这种芯片能在存储宽度和深度上得到很大的发展。
目前,为了更大的提高芯片容量,其内部存储单元使用动态RAM代替静态RAM,并在芯片内部集成刷新电路,通过内部仲裁单元控制器件的读写及自动刷新操作。
随着微电子技术的飞速发展,新一代的FIFO芯片容量越来越大,速度越来越快,体积也越来越小。
美国IDT公司已经推出运行速度高达225MHz,电压低至2.5V,可在业内各种配置下实现业内最大数据流量高达9Mb的FIFO系列。
CypressSemiconductor公司推出具有80位宽的BEAST型的高性能FIFO存储器,它的带宽高达300bps,可以工作在200MHz频率下;Honeywell公司推出了一种基于SOI的FIFO存储器,它采用专门的抗辐射加固工艺和设计版图,主要用于军事系统和高辐射的空间环境中;FIFO芯片的最新产品是IDT公司推出的多队列FIFO存储器系列,它使用集成的嵌入式FIFO存储器核和高速队列逻辑来构成块结构。
它的数据读写速度可达到200MHz,存储时间也只有3.6ns,可以通过最多八个器件的连接来实现容量深度的扩展和队列扩展[6]。
目前在国内大部分集成芯片中,单独做FIFO芯片的很少,国内的一些研究所和厂商也开发了FIFO电路,但还远不能满足市场和军事需求。
1.3.2存在问题
国内外设计FIFO时,通常使用两种方法,一是利用可编程逻辑器件来构造FIFO(如Xilinx公司),二是利用Verilog、VHDL等硬件描述语言来对FIFO的功能结构进行描述[6]。
在大部分的EDA软件中,都是通过综合器来完成对EDA等硬件语言的编译的,综合器将硬件描述语言的描述转变为物理可实现的电路形式,由于FIFO是基于RAM结构的,大部分的参考资料都是建立在数组存取的基础上对FIFO进行描述的,然而综合器对数组的综合一般是将其转变为寄存器的结构,这带来的缺陷是综合后的结构会非常庞大,造成在大容量的FIFO设计时,会产生大量面积的浪费,甚至无法集成。
1.4本课题主要研究内容
本课题基于FPGA技术,在CycloneII系列的EP2C5T144C8N芯片的基础上,选用QuartusII软件利用VHDL硬件描述语言进行逻辑描述,并采用层次化、描述语言和图形输入相结合的方法设计了一个RAM深度为128bit,数据宽度为8bit的异步FIFO电路,并对其功能进行了时序仿真和硬件仿真验证。
论文各章节的主要内容安排如下:
第一章为绪论,简要介绍了FPGA的相关知识以及异步FIFO的主要作用、研究背景和国内外的发展现状,并概括介绍了本课题的主要研究内容。
第二章为异步FIFO设计要求及基本原理,首先介绍了本课题的设计要求,然后对异步FIFO的结构、基本原理以及其设计难点进行了分析,并由此归纳出系统的设计模块和预期功能。
第三章为模块设计与实现,主要介绍了异步FIFO的模块组成及各模块的功能和原理,并利用VHDL硬件描述语言,通过QuartusII软件对各模块进行了编写和仿真。
第四章为时序仿真与实现,通过层次化、描述语言和图形输入相结合的方法将各模块整合为异步FIFO顶层模块,并通过QuartusII软件的波形编辑器对其进行时序仿真和分析。
第五章为硬件仿真与实现,连接外设及进行引脚分配后,将完成的异步FIFO顶层实体下载入开发板,并通过编写测试程序产生读写时钟及伪随机数输入数据,利用QuartusII软件的嵌入式逻辑分析仪SignalTapII对实物进行硬件仿真和分析,完成设计任务。
最后结论对本次毕业设计进行了归纳和综合,概括了所取得的成果和存在的不足,以及对进一步开展研究的见解与建议。
第2章异步FIFO设计要求及基本原理
2.1设计要求
本课题使用EP2C5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 fpga 异步 fifo 设计 学位 论文