一种blockram级联实现结构的制作方法

文档序号:6538618阅读:263来源:国知局
一种block ram级联实现结构的制作方法
【专利摘要】本发明涉及一种BLOCKRAM级联实现结构,其包括一列BLOCKRAM;一列BLOCKRAM内相邻的两个BLOCKRAM间通过第二级ASIC级联逻辑布线结构使得所述两个BLOCKRAM间进行地址级联,以形成一个所需地址深度及数据宽度的BRAMCOMB2级联结构,且BRAMCOMB2级联结构内的两个BLOCKRAM均能进行独立访问。本发明通过ASIC技术实现专用的级联逻辑,支持全局级联或者局部级联,使得既满足用户的存储需求,又保留了可编程逻辑器件中BRAM级联的灵活性。保留支持非级联模式,此时可以与传统可编程逻辑器件级联模式兼容。这种实现结构能在不占用外围布线资源的情况下快速地实现较大地址深度和数据宽度的BRAM级联需求,由于该级联逻辑采用ASIC技术实现,提升了时序性能,节约了外围走线资源,提高了布通率。
【专利说明】—种BLOCK RAM级联实现结构
【技术领域】
[0001 ] 本发明涉及一种级联结构,尤其是一种BLOCK RAM级联实现结构,属于可编程逻辑器件的【技术领域】。
【背景技术】
[0002]基于查找表以及内置RAM的可编程逻辑器件,具有开发周期短,成本低,风险小,集成度高,灵活性大,且便于电子系统维护和升级,因此成为了数字芯片的主流,被广泛应用在通信、控制、视频、信息处理、消费电子、互联网、汽车以及航空航天等诸多领域。
[0003]BLOCK RAM和分布式RAM是可编程逻辑器件结构中最基本和核心的存储部件,其中BLOCK RAM用于实现较大地址深度和数据宽度的存储功能,而分布式RAM由于受其实现机制限制,只适用于较小的地址深度和数据宽度的存储功能。BLOCK RAM在可编程逻辑器件中是按列分布,通常该列都是BLOCK RAM。
[0004]由于考虑到不同用户的使用需求和灵活性,一个BLOCK RAM (简称BRAM)—般不会做得很大,通常是36Kbits,内部由两块18Kbit的真双端口 RAM(简称SRAM18K,分为A端口和B端口)构成,能够提供最大地址深度为32K,此时数据位宽为lbit,或者最大数据位宽为36bit,此时地址深度为IK ;一个BRAM内部的两个18Kbits的SRAM18K可以独立使用,此时每个SRAM18K可以提供最大地址深度为16K (对应数据位宽为lbit),或者最大数据位宽为18bit,此时地址深度为1K。
[0005]当用户需要较大地址深度和数据宽度的存储RAM时,采用消耗可编程逻辑器件的可配置逻辑模块(CLB Configurable Logic Block)和可配置的连线资源来实现多个BRAM的地址深度和数据宽度级联功能。目前主流的可编程逻辑器件厂商都采用这样的实现方式,不仅需要占用额外的可编程逻辑器件布线和逻辑资源,此时处于同一个级联模式下BLOCK RAM的接口信号都需要通过可编程逻辑器件的布线和逻辑资源相连,因此在级联模式下存储RAM的访问时序性能无法得到保证,可能无法满足用户的设计需求。

【发明内容】

[0006]本发明的目的是克服现有技术中存在的不足,提供一种BLOCK RAM级联实现结构,其提高级联的灵活性及配置能力,提高级联模式下访问时序性能,节约布线资源。
[0007]按照本发明提供的技术方案,所述BLOCK RAM级联实现结构,包括一列BLOCK RAM;所述一列BLOCK RAM内相邻的两个BLOCK RAM间通过第二级ASIC级联逻辑布线结构使得所述两个BLOCK RAM间进行地址级联,以形成一个所需地址深度及数据宽度的BRAM C0MB2级联结构,且BRAM C0MB2级联结构内的两个BLOCK RAM均能进行独立访问。
[0008]所述两个相邻的BRAM C0MB2级联结构通过第三级ASIC级联逻辑布线结构形成BRAM C0MB4级联结构,所述BRAM C0MB2级联结构内两个BRAM COM2级联结构均能进行独立访问。
[0009]所述两个相邻的BRAM C0MB4级联结构通过第四级ASIC级联逻辑布线结构形成BRAM GROUP级联结构,所述BRAM GROUP级联结构内两个BRAM COM4级联结构均能进行独立访问。
[0010]所述两个相邻的BRAM GROUP级联结构通过第五级ASIC级联逻辑布线结构形成BRAM HALF CULUMN级联结构,所述BRAM HALF CULUMN级联结构内两个BRAM GROUP级联结构均能进行独立访问。
[0011]所述两个相邻的BRAM HALF⑶LUMN级联结构通过第六级ASIC级联逻辑布线结构形成BRAM CULUMN级联结构,所述BRAM CULUNM级联结构内两个BRAM HALF CULUMN级联结构能进行独立访问。
[0012]每个BLOCK BRAM内包含两个SRAM18K单元,所述两个SRAM18K内通过第一级ASIC级联逻辑布线结构进行地址级联,以形成一个BLOCK RAM, BLOCK RAM内的每个SRAM 18K单元均能进行独立访问。
[0013]所述两个SRAM18K单元包括第一 SRAM18K单元及第二 SRAM18K单元;所述第一级ASIC级联逻辑布线结构包括第一选择器、第二选择器、第三选择器、第四选择器、第五选择器及第六选择器;第一选择器的输入端与第一 SRAM18K单元的读数据信号端口及第二SRAM18K单元的读数据信号端口连接,第二选择器的输出端与第二 SRAM18K单元的工作时钟信号端口连接,第二选择器的输入端用于接收第一 SRAM18K单元、第二 SRAM18K单元的工作时钟信号;
[0014]第三选择器的输出端与第二 SRAM18K单元的写数据信号端口连接,第三选择器的输入端用于接收第一 SRAM18K单元、第二 SRAM18K单元的写数据信号;
[0015]所述第四选择器的输出端与第二 SRAM18K单元的读写地址信号端口连接,第四选择器的输入端用于接收第一 SRAM18K单元、第二 SRAM18K单元的读写地址信号;
[0016]第五选择器的输出端与第二 SRAM18K单元的写使能信号端口连接,第五选择器的输入端用于接收第一 SRAM18K单元、第二 SRAM18K单元的写使能信号;
[0017]第六选择器的输出端与第二 SRAM18K单元的访问片选信号端口连接,第六选择器的输入端用于接收第一 SRAM18K单元、第二 SRAM18K单元的访问片选信号。
[0018]本发明的优点:能根据用户对存储单元地址深度和数据宽度的自主配置,通过可编程逻辑器件将用户配置的存储单元的地址和数据宽度参数转换为内定的级联配置模式,通过ASIC技术实现专用的级联逻辑,支持全局级联或者局部级联,使得既满足用户的存储需求,又保留了可编程逻辑器件中BRAM级联的灵活性。保留支持非级联模式,此时可以与传统可编程逻辑器件级联模式兼容。这种实现结构能在不占用外围布线资源的情况下快速地实现较大地址深度和数据宽度的BRAM级联需求,由于该级联逻辑采用ASIC技术实现,提升了时序性能,节约了外围走线资源,提高了布通率。
【专利附图】

【附图说明】
[0019]图1为本发明一列BRAM进行多级级联的结构示意图。
[0020]图2为本发明一个SRAM18K单元的接口信号说明示意图。
[0021]图3为本发明在BRAM模式下的A端口地址级联模式下内部逻辑信号的连接关系示意图。
[0022]图4为本发明在BRAM C0MB2模式下的A端口地址级联模式下内部逻辑信号连接关系不意图。
[0023]图5为采用本发明简化的可编程逻辑器件中半列BLOCK RAM级联连接的示意图。
[0024]附图标记说明:100-第一 SRAM18K单元、101-第二 SRAM18K单元、102-第一选择器、103-第二选择器、104-第三选择器、105-第四选择器、106-第五选择器及107-第六选择器。
【具体实施方式】
[0025]下面结合具体附图和实施例对本发明作进一步说明。
[0026]为了能够实现所需的地址深度计数据宽度的存储,提升时序性能,节约外围走线资源,提高布通率,本发明包括一列BLOCK RAM ;所述一列BLOCK RAM内相邻的两个BLOCKRAM间通过第二级ASIC级联逻辑布线结构使得所述两个BLOCK RAM间进行地址级联,以形成一个所需地址深度及数据宽度的BRAM C0MB2级联结构,且BRAM C0MB2级联结构内的两个BLOCK RAM均能进行独立访问。
[0027]具体地,一列BLOCK RAM包括若干个BLOCK RAM,将其中相邻的两个BLOCK RAM通过第二级ASIC级联逻辑布线结构进行地址级联,以形成更大地址深度计数据宽度的级联,在一列BLOCK RAM中,一个BLOCK RAM用于地址级联后,不再参与另外一个相邻的BLOCKRAM的地址级联中,一个BL0CKRAM只能与一个BRAM C0MB2级联结构对应。形成BRAM C0MB2级联结构后,两个BLOCK RAM均能进行独立访问,此时,两个BR0CKRAM处于非级联模式下。本发明实施例中,第二级ASIC级联逻辑布线结构为本【技术领域】常用的电路逻辑结构,采用ASIC技术实现,不占用外部布线资源。
[0028]如图1所示,为可编程逻辑器件内一列BLOCK RAM支持的级联结构,是以可编程逻辑器件一列的32个BLOCK RAM为作为示例进行描述的。一列BRAM资源为32个,即是有64个SRAM18K单元。SRAM18K单元为最小的独立可访问资源,为级联结构中的基本单元。每个SRAM18K分为A端口和B端口,每个端口有一套独立的访问接口信号,包括访问地址,写数据,写使能(片选有效下,如果写使能无效则表示本次为读操作),片选信号和读数据输出接口,上述信号统称访问接口信号,如图2所示。后文为了描述方便,以SRAM18K单元的A端口级联控制为例,同样的级联结构也适用于B端口。
[0029]如图3所示,每个BLOCK BRAM内包含两个SRAM18K单元,所述两个SRAM18K内通过第一级ASIC级联逻辑布线结构进行地址级联,以形成一个BLOCK RAM,BLOCK RAM内的每个SRAM18K单元均能进行独立访问。
[0030]所述两个SRAM18K单元包括第一 SRAM18K单元100及第二 SRAM18K单元101 ;所述第一级ASIC级联逻辑布线结构包括第一选择器102、第二选择器103、第三选择器104、第四选择器105、第五选择器106及第六选择器107 ;第一选择器102的输入端与第一 SRAM18K单元100的读数据信号端口及第二 SRAM18K单元101的读数据信号端口连接,第二选择器103的输出端与第二 SRAM18K单元101的工作时钟信号端口连接,第二选择器103的输入端用于接收第一 SRAM18K单元100、第二 SRAM18K单元101的工作时钟信号;
[0031]第三选择器104的输出端与第二 SRAM18K单元101的写数据信号端口连接,第三选择器104的输入端用于接收第一 SRAM18K单元100、第二 SRAM18K单元101的写数据信号;[0032]所述第四选择器105的输出端与第二 SRAM18K单元101的读写地址信号端口连接,第四选择器105的输入端用于接收第一 SRAM18K单元100、第二 SRAM18K单元101的读写地址信号;
[0033]第五选择器106的输出端与第二 SRAM18K单元101的写使能信号端口连接,第五选择器106的输入端用于接收第一 SRAM18K单元100、第二 SRAM18K单元101的写使能信号;
[0034]第六选择器107的输出端与第二 SRAM18K单元101的访问片选信号端口连接,第六选择器107的输入端用于接收第一 SRAM18K单元100、第二 SRAM18K单元101的访问片选信号。
[0035]上述第一级ASIC级联逻辑布线结构中,第一 SRAM18K单元100的工作时钟信号、写数据信号、读写地址信号、写使能信号、访问片选信号直接与第一 SRAM18K单元100的对应A端口直接连接。上述选择器均可采用二选一选择器,通过选择器使得两个SRAM18K单元进行地址级联,在非级联模式下,每个SRAM18K单元均能进行独立访问。在具体实施时,根据可编程逻辑器件的用户配置来确定地址级联或非级联模式的状态,为本【技术领域】人员所熟知,此处不再赘述。
[0036]进一步地,所述两个相邻的BRAM C0MB2级联结构通过第三级ASIC级联逻辑布线结构形成BRAM C0MB4级联结构,所述BRAM C0MB2级联结构内两个BRAM COM2级联结构均能进行独立访问。
[0037]进一步地,所述两个相邻的BRAM C0MB4级联结构通过第四级ASIC级联逻辑布线结构形成BRAM GROUP级联结构,所述BRAM GROUP级联结构内两个BRAM COM4级联结构均能进行独立访问。
[0038]进一步地,所述两个相邻的BRAM GROUP级联结构通过第五级ASIC级联逻辑布线结构形成BRAM HALF CULUMN级联结构,所述BRAM HALFCULUMN级联结构内两个BRAM GROUP级联结构均能进行独立访问。
[0039]进一步地,所述两个相邻的BRAM HALF⑶LUMN级联结构通过第六级ASIC级联逻辑布线结构形成BRAM CULUMN级联结构,所述BRAM CULUNM级联结构内两个BRAM HALFCULUMN级联结构能进行独立访问。
[0040]上述通过处于不同级的ASIC级联逻辑布线结构能实现不同地址深度及数据宽度的级联结构,第二级ASIC级联逻辑布线结构、第三级ASIC级联逻辑布线结构、第四级ASIC级联逻辑布线结构、第五级ASIC级联逻辑布线结构的具体实现均为本【技术领域】所熟知,采用ASIC技术实现,不占用外围布线资源。
[0041]基于上述实现结构,可以支持2个SRAM18K单元地址级联,2个BL0CKRAM地址级联,4个BLOCK RAM地址级联,8个BLOCK RAM地址级联,16个BLOCK RAM地址级联,32个BLOCK RAM地址级联;或者2个SRAM18K单元数据并联,2个BLOCK RAM数据并联,4个BLOCKRAM数据并联,8个BLOCK RAM数据并联,16个BLOCK RAM数据并联,32个BLOCK RAM数据并联。
[0042]不管是地址级联还是数据并联,面对用户使用,是将级联后的存储资源作为一个RAM对象进行访问的,一个端口只有一套公共信号,即是RAM的访问接口信号(A端口和B端口各有一套)。不同的级联深度模式下,选择不同的物理位置上的SRAM18K单元的访问接口信号,原属于该SRAM18K单元的接口信号此时就作为用户接口的公共信号,与用户的逻辑相连,这样可以使得在后端进行布局布线时走线长度均匀,利于时序收敛。
[0043]下表表示不同级联模式下公共信号的选择:
[0044]
【权利要求】
1.一种BLOCK RAM级联实现结构,包括一列BLOCK RAM ;其特征是:所述一列BLOCK RAM内相邻的两个BLOCK RAM间通过第二级ASIC级联逻辑布线结构使得所述两个BLOCK RAM间进行地址级联,以形成一个所需地址深度及数据宽度的BRAM C0MB2级联结构,且BRAMC0MB2级联结构内的两个BLOCK RAM均能进行独立访问。
2.根据权利要求1所述的BLOCKRAM级联实现结构,其特征是:所述两个相邻的BRAMC0MB2级联结构通过第三级ASIC级联逻辑布线结构形成BRAM C0MB4级联结构,所述BRAMC0MB2级联结构内两个BRAM COM2级联结构均能进行独立访问。
3.根据权利要求2所述的BLOCKRAM级联实现结构,其特征是:所述两个相邻的BRAMC0MB4级联结构通过第四级ASIC级联逻辑布线结构形成BRAM GROUP级联结构,所述BRAMGROUP级联结构内两个BRAM COM4级联结构均能进行独立访问。
4.根据权利要求3所述的BLOCKRAM级联实现结构,其特征是:所述两个相邻的BRAMGROUP级联结构通过第五级ASIC级联逻辑布线结构形成BRAM HALF CULUMN级联结构,所述BRAM HALF CULUMN级联结构内两个BRAM GROUP级联结构均能进行独立访问。
5.根据权利要求4所述的BLOCKRAM级联实现结构,其特征是:所述两个相邻的BRAMHALF CULUMN级联结构通过第六级ASIC级联逻辑布线结构形成BRAM CULUMN级联结构,所述BRAM CULUNM级联结构内两个BRAM HALF CULUMN级联结构能进行独立访问。
6.根据权利要求1所述的BLOCKRAM级联实现结构,其特征是:每个BLOCK BRAM内包含两个SRAM18K单元,所述两个SRAM18K内通过第一级ASIC级联逻辑布线结构进行地址级联,以形成一个BLOCK RAM, BLOCK RAM内的每个SRAM18K单元均能进行独立访问。
7.根据权利要求6所述的BLOCKRAM级联实现结构,其特征是:所述两个SRAM18K单元包括第一 SRAM18K单元(100)及第二 SRAM18K单元(101);所述第一级ASIC级联逻辑布线结构包括第一选择器(102)、第二选择器(103)、第三选择器(104)、第四选择器(105)、第五选择器(106)及第六选择器(107);第一选择器(102)的输入端与第一 SRAM18K单元(100)的读数据信号端口及第二 SRAM18K单元(101)的读数据信号端口连接,第二选择器(103)的输出端与第二 SRAM18K单元(101)的工作时钟信号端口连接,第二选择器(103)的输入端用于接收第一 SRAM18K单元(100)、第二 SRAM18K单元(101)的工作时钟信号; 第三选择器(104)的输出端与第二 SRAM18K单元(101)的写数据信号端口连接,第三选择器(104)的输入端用于接收第一 SRAM18K单元(100)、第二 SRAM18K单元(101)的写数据信号; 所述第四选择器(105)的输出端与第二 SRAM18K单元(101)的读写地址信号端口连接,第四选择器(105)的输入端用于接收第一 SRAM18K单元(100)、第二 SRAM18K单元(101)的读写地址信号; 第五选择器(106)的输出端与第二 SRAM18K单元(101)的写使能信号端口连接,第五选择器(106)的输入端用于接收第一 SRAM18K单元(100)、第二 SRAM18K单元(101)的写使能信号; 第六选择器(107)的输出端与第二 SRAM18K单元(101)的访问片选信号端口连接,第六选择器(107)的输入端用于接收第一 SRAM18K单元(100)、第二 SRAM18K单元(101)的访问片选信号。
【文档编号】G06F3/023GK103809769SQ201410062706
【公开日】2014年5月21日 申请日期:2014年2月24日 优先权日:2014年2月24日
【发明者】刘瑛, 冯盛, 万清 申请人:中国电子科技集团公司第五十八研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1