[发明专利]基于单片块RAM的并行写入多FIFO实现方法有效

专利信息
申请号: 201110346434.3 申请日: 2011-11-01
公开(公告)号: CN102520902A 公开(公告)日: 2012-06-27
发明(设计)人: 邹复民;龚志鹏;姚进根;陈建顺;杨伟艺 申请(专利权)人: 福建富顺电子有限公司
主分类号: G06F5/06 分类号: G06F5/06
代理公司: 暂无信息 代理人: 暂无信息
地址: 363000 福建省*** 国省代码: 福建;35
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 单片 ram 并行 写入 fifo 实现 方法
【说明书】:

技术领域

发明属于信息技术应用领域。具体是涉及一种采用单片块RAM实现多个要求并行写入和随机顺序读出的FIFO的实现方法,为低成本FPGA的应用提供一种解决方案。

背景技术

随着大规模可编程技术的发展,FPGA的应用在电子设计中应用越来越广泛。FPGA主要由输入输出控制块、可编程逻辑块、可编程连线、嵌入式存储块(块RAM)等部分组成,其中块RAM是非常宝贵的片上资源,应用灵活、功能强大,可定制实现RAM、ROM、CAM、DPRAM、FIFO等各种存储结构。其中,FIFO应用尤其广泛,在数据缓存、异步时钟域数据传输几乎不可或缺。对于低端FPGA芯片,块RAM的数量非常有限,若采用ip核向导来定制FIFO,每个块RAM只能实现一个FIFO。单片块RAM的容量一般比较大,如altera的为9Kbit,xilinx的达18Kbit,在一般设计现实中,作为数据缓存的FIFO往往不需要这么大的容量,而一个块RAM例化一个FIFO后,剩余的存储空间不能再用于别的用途,白白浪费掉了,导致资源利用率低。特别是在FIFO数量需求较多、且每个FIFO的深度要求较小、但要求各FIFO能够在一定程度上并行写入时,FPGA设计经常出现总体存储容量充足,但存储器个数严重不足的问题。

发明内容

本发明的目的是提供了一种在一片块RAM中实现多个可并行写入和随机顺序读出的FIFO的方法,可充分利用现有的存储容量,大大提高存储器的利用率,显著降低产品成本,提升市场竞争力。

本发明所要解决的技术问题在于用单片块RAM设计多个可并行写入和随机顺序读出的FIFO。本发明采用以下技术方案解决上述技术问题:

基于单片块RAM的并行写入多FIFO实现方法,该方法包括5个步骤:

(1)将块RAM例化成DPRAM用于存储各通道FIFO数据,每通道FIFO在DPRAM中都有对应的存储空间,各存储空间互不重叠;

(2)写入控制逻辑能接受各通道FIFO并行数据写入要求,并将数据写入相应的相应输入缓冲区;

(3)写入控制逻辑在输入缓冲区接到数据后,产生内部写命令,将各FIFO数据从输入缓冲区取出,依次写入各FIFO在DPRAM对应的存储空间;

(4)在接到外部读出请求时,读出控制逻辑将根据要求,将数据从DPRAM对应的存储空间读出,并送往FIFO数据输出端口;

(5)标记设置逻辑用于设置各通道FIFO的空(full)、满(empty)、可编程空(prog_empty)和可编程满(prog_full)标志,以满足并行写入和随机顺序读出的访问需求。

所述步骤(1)中,通过调用FPGA开发平台的IP核例化工具将块RAM用例化成DPRAM;根据FIFO的通道数目在DPRAM中设置储存区,每通道FIFO在DPRAM中都有对应的存储空间,各存储空间互不重叠;DPRAM的高位地址用于选择各FIFO的存储空间,DPRAM的低位地址用于存储空间内部访问。

所述步骤(2)中,

输入缓冲区与写入控制逻辑接收到FIFO并行数据写入请求信号wr_en后:

1)检测到full信号为0且ready信号为1时,内部写控制将latch信号置1,将外部数据写入各通道FIFO相应输入缓冲区,输入缓冲区深度可根据并行要求设置;

2)将表示接收数据准备就绪标记ready置为0,在缓冲区数据写入DPRAM之前不再接收新的数据。

所述步骤(3)中,

输入缓冲区写入控制逻辑在输入缓冲区接到数据后,控制控制逻辑产生内部写DPRAM命令wr_en_inter,将各通道FIFO数据从相应输入缓冲区取出,依次写入各通道FIFO在DPRAM对应的存储空间:

1)内部写控制将通道编号ch_code_w设为0,确定是选择将通道0的FIFO的数据从缓冲区写入DPRAM;

2)根据当前通道号ch_code_w,地址选择器选择的当前地址指针write_p为write_p_0;

3)根据当前通道号ch_code_w,数据选择器选择通道0的数据缓冲输出作为DPRAM写入端数据输入;

4)ch_code_w与write_p_0组合,得到存储器的写入端访问地址wr_addr,其中ch_code_w为wr_addr高位,write_p_0为低位;

5)若full_0为0,则写入数据;

6)写入数据后,write_p加1;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建富顺电子有限公司,未经福建富顺电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201110346434.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top