基于LPM的高速FIFO的设计
1引言
当今电子系统的复杂程度越来越高,手工设计已经无法完成,必须依靠现代电子设计技术。现代电子设计技术的核心是EDA(electronic design automation),就是利用计算机,在EDA工作平台上,利用硬件描述语言(例如VHDL),完成逻辑编译、逻辑化简、逻辑综合、仿真测试、布局布线等设计工作,完成对系统硬件功能的实现。
在基于EDA技术的电子系统设计中,如果能够直接调用参数可设置模块库(Library of Parameterized Modules,简称LPM)中的兆功能块,则可以大大提高系统设计的效率和可靠性。设计者可以根据实际系统的需要,在LPM中选择库中的适当模块,对其参数进行必要的调整设置,使其符合自己的要求,将已有的设计模块为己所用。
2. 兆功能块的编辑方法
FIFO意思为First In First Out (先进先出),是一种存储器参数可设置模块库,在高速数字系统中常用作缓存。在高速数据传输和实时显示领域中,需要对数据进行快速储存和发送,要实现快速的数据采集、顺序储存和传送,传统的RAM型存储器已经无法满足要求。目前许多高速系统都采用了FIFO作为缓存体。因为FIFO的写入(读出)时间只需要一个时钟周期,不需要对地址进行加1操作,大大提高了存储速度。下面利用LPM中的兆功能块LPM-FIFO,设计一个高速FIFO元件。
LPM库中的兆功能模块有许多种,例如LPM-ROM、LPM-RAM、LPM-FIFO。可以根据需要,调用其中的某一种。例如要设计高速FIFO元件,则选择LPM-FIFO作为以VHDL描述的设计项目中的一个元件,首先利用MAX+PLUS内自带的兆功能块处理器,根据需要对所使用的兆功能块的参数进行适当的调整,由此生成一个满足自己特定需要的模块。最后,利用例化语句,在顶层设计中调用该模块。具体步骤如下:
进入MAX+PLUSⅡ后,在file下进入LPM元件定制器界面,选择storage中的LPM-FIFO元件,然后根据需要修改该元件的参数:
(1)图1,数据宽度为8位,深度为512,即设置此FIFO的存储容量为8*512bit。与clock同步的数据写入wrreq和数据读出rdreq。
图1
(2)图2,异步清零信号aclr,当此信号有效时, FIFO 清零。存储数据溢出信号full,当FIFO中数据满时,此信号有效。
图2
(3)图3,选择数据读出方式:在读请求信号rdreq有效后数据输出。
图3
(4)图4,选择面积优化方式:Area,即要求综合器和适配器更有效地利用逻辑资源而忽略电路速度的约束。
图4
最后单击finish 完成参数的定制,文件以fifo22.vhd名保存。
相关文章
- 2023-02-27基于激光干涉层析理论的蒸发喷束的三维测量
- 2024-03-27弱光探测器中复合抛物面聚光镜(CPC)的优化设计
- 2024-03-05插值算法在CMC表示方式中的应用
- 2024-01-25利用4400系统构造具有光学多道分析功能的信号处理系统
- 2023-04-12SY8232型BH分析仪校准方法研究



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。