RAM资源分配方法组成比例

技术编号:17667543 阅读:57 留言:0更新日期:2018-04-11 05:50
本发明专利技术涉及数据存储领域,具体涉及一种RAM资源分配方法,包括如下步骤:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出,若溢出则拼接分配;否则分配1个嵌入内存块。本发明专利技术实施例允许需求数据容量超过嵌入内存块的限制,可以满足较大数据位宽以及较深地址深度的RAM使用,自动计算分配的嵌入内存块、REG资源块、LUT资源快的数量,稳定可靠。

RAM resource allocation method

The present invention relates to the field of data storage, in particular to a RAM resource allocation method, which comprises the following steps: (a) to obtain the first data width and depth of the first address; (b) according to the first data width, the first address to judge whether the depth of capacity if overflow, overflow is mosaic distribution; otherwise allocated 1 embedded memory block. The embodiment of the invention allows the demand data embedding capacity of more than a block of memory constraints, can satisfy large data width and deep depth of the RAM address, the number of embedded memory block, REG block, LUT resource resources fast automatic calculation of distribution, stable and reliable.

【技术实现步骤摘要】
RAM资源分配方法
本专利技术属于数据存储领域,具体涉及一种RAM资源分配方法。
技术介绍
随机存取存储器(randomaccessmemory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序。FPGA中内嵌的块RAM可以大大拓展FPGA的应用范围和灵活性,除了块RAM,还可以将FPGA中的REG和LUT灵活地配置为RAM结构,芯片内部块RAM的数量是选择芯片的一个重要因素。现有技术中,单片块RAM可以根据需要改变其位宽和深度,但需要满足两个原则,首选,修改后的容量(位宽和深度)不能大于单片块RAM容量的最大值,其次,位宽不能超过36bit。当需求的数据容量较大时,如果配置的容量大于上述两个原则,则是不被允许的。因此,现有技术的RAM配置方式已经远远不能满足用户需求。因此,给出一种根据需求的数据容量灵活配置RAM的容量已经成为研究的重点问题。
技术实现思路
为了解决现有技术中存在的上述问题,本专利技术提供了一种RAM资源分配方法。本专利技术要解决的技术问题通过以下技术方案实现:一种RAM资源分配方法,包括如下步骤:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出,若溢出则拼接分配;若否,则分配1个嵌入内存块。上述的RAM资源分配方法,所述第一数据位宽包括:输入数据位宽和输出数据位宽;所述第一地址深度包括:输入地址深度和输出地址深度。上述的RAM资源分配方法,所述输入数据位宽与所述输出数据位宽的比值为2n或者n为大于等于0的整数。上述的RAM资源分配方法,根据所述第一数据位宽、所述第一地址深度判断数据是否溢出包括:(x1)根据所述输入数据位宽和所述输出数据位宽计算第二数据位宽;(x2)根据所述输入地址深度和所述输出地址深度计算第二地址深度;(x3)根据所述第二数据位宽和所述第二地址深度计算总需求容量;(x4)若所述第二数据位宽超过第一阈值并且所述总需求容量大于第三阈值或者所述第二地址深度超过第二阈值并且所述总需求容量大于第三阈值,则溢出;否则未溢出。上述的RAM资源分配方法,所述第一阈值为所述嵌入内存块数据位宽的最大值,所述第二阈值为所述嵌入内存块地址深度的最大值,所述第三阈值为所述嵌入内存块总容量的最大值。上述的RAM资源分配方法,所述拼接分配包括:(y1)根据所述第二数据位宽和所述第二地址深度计算余量;(y2)根据所述余量计算各拼接资源块的个数。上述的RAM资源分配方法,步骤(y1)包括:(y11)根据所述第二数据位宽计算数据余量;(y12)根据所述第二数据位宽计算地址深度未溢出量;(y13)根据所述第二地址深度和所述地址深度未溢出量计算地址余量。上述的RAM资源分配方法,步骤(y2)包括:若所述余量为0或者大于单个所述嵌入内存块容量的一半,则计算拼接的所述嵌入内存块的个数;否则计算拼接的所述嵌入内存块、REG资源块和LUT资源块的个数。上述的RAM资源分配方法,所述REG资源块的个数为所述输出数据位宽与所述输入数据位宽的比值。上述的RAM资源分配方法,所述LUT资源块的个数为所述输出数据位宽值。与现有技术相比,本专利技术的有益效果:本专利技术实施例允许需求数据容量超过嵌入内存块的限制,可以满足较大数据位宽以及较深地址深度的RAM使用,自动计算分配的嵌入内存块、REG资源块、LUT资源快的数量,稳定可靠。附图说明图1是本专利技术实施例提供的一种RAM资源分配方法流程示意图;图2是本专利技术实施例提供的另一种RAM资源分配方法流程示意图。具体实施方式下面结合具体实施例对本专利技术做进一步详细的描述,但本专利技术的实施方式不限于此。实施例1:请参见图1和图2,图1是本专利技术实施例提供的一种RAM资源分配方法流程示意图;图2是本专利技术实施例提供的另一种RAM资源分配方法流程示意图。该RAM资源分配方法包括如下步骤:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出,若溢出则对所述RAM资源进行拼接分配;否则分配所述RAM资源为1个嵌入内存块。本专利技术实施例允许需求数据容量超过嵌入内存块的限制,可以满足较大数据位宽以及较深地址深度的RAM使用,稳定可靠。实施例2:与上述实施例不同之处。在于本实施例详细介绍一种RAM资源分配方法,该RAM资源分配方法包括:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出,若溢出则对所述RAM资源进行拼接分配;否则分配所述RAM资源为1个嵌入内存块。其中,所述拼接分配包括:对嵌入内存块进行拼接分配或者对嵌入内存块、REG资源块和LUT资源块进行拼接分配。优选地,所述嵌入内存块为嵌入式RAM块(EmbeddedBlockRam,简称EBR)。其中,所述第一数据位宽包括:输入数据位宽和输出数据位宽;所述第一地址深度包括:输入地址深度和输出地址深度。其中,所述输入数据位宽与所述输出数据位宽的比值为2n或者n为大于等于0的整数。这样设计能够使该方法在不影响最终结果的基础上使计算更加简便,有利于完成算法的设计。优选地,所述输入数据位宽与所述输出数据位宽满足下列两种情况:第一种情况:1、2、4、8、16、32以及8的偶数倍;第二种情况:9、18、36以及9的偶数倍。其中,上述两种情况本专利技术实施例的资源分配方法均支持,因此本专利技术实施例的资源分配方法适应性强、也更加灵活。所述输入数据宽度和所述输出数据宽度可以根据上述两种情况任意组合。其中,根据所述第一数据位宽、所述第一地址深度判断数据是否溢出包括:(x1)根据所述输入数据位宽和所述输出数据位宽计算第二数据位宽;(x2)根据所述输入地址深度和所述输出地址深度计算第二地址深度;(x3)根据所述第二数据位宽和所述第二地址深度计算总需求容量;(x4)若所述第二数据位宽超过第一阈值并且所述总需求容量大于第三阈值或者所述第二地址深度超过第二阈值并且所述总需求容量大于第三阈值,则溢出;否则未溢出。进一步地,第二数据位宽和第二地址深度满足:进一步地,总需求容量满足:总需求容量=max{输入数据位宽×输入地址深度,输出数据位宽×输出地址深度}其中,对第二数据位宽、第二地址深度和总需求容量同时进行判定使溢出判断更加准确,避免出现误判,提高了本分配方法的准确率和效率。优选地,所述第一阈值为所述嵌入内存块数据位宽的最大值,所述第二阈值为所述嵌入内存块地址深度的最大值,所述第三阈值为所述嵌入内存块总容量的最大值。优选地,嵌入内存块数据位宽最大值即第一阈值为36,嵌入内存块地址深度的最大值即第二阈值为8192,嵌入内存块总容量的最大值即第三阈值为9216。进一步地,判断是否溢出条件式A满足:A=(第二数据位宽>第一阈值)or(第二地址深度>第二阈值)or(总需求容量>第三阈值)若A为真,则溢出,否则未溢出。其中,对所述RAM资源进行拼接分配包括:(y本文档来自技高网...
RAM资源分配方法

【技术保护点】
一种RAM资源分配法,其特征在于,包括如下步骤:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出;若溢出则拼接分配;若否,则分配1个嵌入内存块。

【技术特征摘要】
1.一种RAM资源分配法,其特征在于,包括如下步骤:(a)获取第一数据位宽和第一地址深度;(b)根据所述第一数据位宽、所述第一地址深度判断容量是否溢出;若溢出则拼接分配;若否,则分配1个嵌入内存块。2.根据权利要求1所述的资源分配方法,其特征在于,所述第一数据位宽包括:输入数据位宽和输出数据位宽;所述第一地址深度包括:输入地址深度和输出地址深度。3.根据权利要求2所述的资源分配方法,其特征在于,所述输入数据位宽与所述输出数据位宽的比值为2n或者n为大于等于0的整数。4.根据权利要求2所述的资源分配方法,其特征在于,根据所述第一数据位宽、所述第一地址深度判断数据是否溢出,包括:(x1)根据所述输入数据位宽和所述输出数据位宽计算第二数据位宽;(x2)根据所述输入地址深度和所述输出地址深度计算第二地址深度;(x3)根据所述第二数据位宽和所述第二地址深度计算总需求容量;(x4)若所述第二数据位宽超过第一阈值并且所述总需求容量大于第三阈值或者所述第二地址深度超过第二阈值并且所述总需求容量大于第三阈值,则溢出;否则未溢出。5.根据权利要求4所述的资源分配方法,其特征...

【专利技术属性】
技术研发人员:尹文芹褚惠芬贾红程显志陈维新韦嶔
申请(专利权)人:西安智多晶微电子有限公司
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1