[发明专利]FPGA中具有多种写入模式的Block RAM有效
申请号: | 201310114053.1 | 申请日: | 2013-04-03 |
公开(公告)号: | CN103198854A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 张昕睿;王健;陈丹;来金梅 | 申请(专利权)人: | 复旦大学 |
主分类号: | G11C7/10 | 分类号: | G11C7/10 |
代理公司: | 上海正旦专利代理有限公司 31200 | 代理人: | 陆飞;盛志范 |
地址: | 200433 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | fpga 具有 多种 写入 模式 block ram | ||
技术领域
本发明属于电子设计技术领域,具体涉及FPGA内嵌IP 硬核Block RAM(以下简称BRAM)中写入操作时序控制实现及兼顾高速性和可靠性的电路设计。
背景技术
早期的FPGA由configurable logic blocks(CLBs),input/output blocks(IOBs)以及互联资源组成。但是现代数字电路设计对FPGA中存储资源的要求越来越高,而使用CLB配置实现存储功能会消耗大量的可配置资源且实现的性能因资源分布及互联线长度而受到影响。故在FPGA中引入BRAM IP 硬核,以支持FPGA中的存储资源实现,解决逻辑资源的性能和功能限制问题,使得FPGA得以具有更加广泛的应用。
作为FPGA中的内嵌存储结构,BRAM的基本功能为数据的写入和读出操作。早期的BRAM只支持在写入数据的同时该写入数据出现在输出端的这种称为“write with write-back”的模式,这极大地限制了BRAM在应用中的灵活性。在后续研究中提出,基本的BRAM的写入操作时序应有三种配置模式:Write_First(写入写先读),Read_First(写入读先读),No_Change(写入不读出)。但是,这些模式传统实现是建立针对Write_Mode的读写控制信号发生模块来进行控制,一般情况下是通过配置输入和相应的固定延迟单元(通常采用反相器链实现)结合的方式产生具有不同时序的控制信号来控制实现。这样做在逻辑电路设计上要求较低,但是由于控制信号传输距离较远,使得Skew的时间较大,而Write_Mode又对信号的时序要求很高,故可能会引起时序上的可靠性错误。另外,当电路工作在不同工作环境(工艺角、温度、电压等)下时,信号的延迟情况很难使用固定延迟单元模拟给出,由于要保证所有情况下数据都能够正确写入需要取延迟的最大值,使得在实际芯片中对BRAM的应用极大的影响了芯片的工作频率。
通过研究各个控制信号间的相关性及数据传输所需的时间,产生控制实现三种Write_Mode模式的脉冲信号模块。同时加入信号通路上所通过的电路模块为冗余模块,动态的模拟在当前工作环境下的电路信号传输的延迟情况并将其反馈给脉冲信号控制模块,从而产生适应于当前工作环境的脉冲信号。本发明实现了FPGA中要求BRAM的三种Write_Mode配置下信号控制及数据传输功能,同时动态的控制延迟保证在好的工作环境下能够高速运行,而在最坏情况下也能够保证时序的正确性。
发明内容
本发明的目的在于提供一种能够实现三种Write_Mode配置功能的FPGA内嵌BRAM电路,并在保证基本功能的前提下兼顾提高整体电路的高速性和可靠性。
FPGA中具有多种写入模式的Block RAM,包括:输入缓冲器101,输入位宽调整器102,二级列译码模块103,SRAM阵列104,灵敏放大器105,输出位宽调整模块106,锁存器107,时序逻辑控制器108,一级行列译码器109,二级行译码器110;BRAM作为FPGA中重要的可编程IP硬核,具有独立双端口数据写入/读出路径,见图1的整体框架图。数据在写入路径上经过输入缓冲器101,输入位宽调整器102,二级列译码模块103,最终写入SRAM阵列104中。数据在读出路径上经过SRAM阵列104,二级列译码模块103,灵敏放大器105,输出位宽调整模块106,最终从输出锁存器107中读出。其中时序由时序逻辑控制器108控制;地址译码由一级行列译码器109,二级行译码器110以及二级列译码器103配合产生。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310114053.1/2.html,转载请声明来源钻瓜专利网。