集成器件、其布置方法和程序的制作方法

文档序号:6466664阅读:213来源:国知局
专利名称:集成器件、其布置方法和程序的制作方法
技术领域
本发明涉及一种具有嵌入式系统的集成器件以及其布置方法,和程 序,并且具体涉及系统的功率控制,在该嵌入式系统中,包括例如处理器 之类的处理器件的存储器被结合在单个芯片中。
背景技术
半导体集成电路的功率控制主要这样执行,设置功率控制中使用的专 门硬件,例如功率门和时钟脉冲门,并且控制所述硬件以实现功率最优 化。
还存在一种技术,例如高速缓冲存储器,其中设置了存储层次并且经 常访问的数据位于附近的层次,以增强功率效率。该技术的示例包括作为 普通处理器系统的功率分析技术的以下技术。
在该技术中,将在应用软件级别的数据访问活动描绘在模型化的存储 器体系结构上,由此根据高速缓存命中率或对每个源代码行上数据的访问 状态来执行合理的功率最优化。

发明内容
然而,在第一列出的现有技术中,专门硬件的增加和用于硬件的管理 方法的增加等,导致了在开发成本和产品成本上增加的费用。
在第二列出的技术中,在同样的层次内使用同样的功率损失,并且因 而,仍未考虑由于层次内物理位置造成的效率差异。
在第三列出的技术中,仍未考虑单个访问的物理功率负载,并且不能 实现精确最优化。
因此,期望提供能够考虑甚至存储层次内的物理位置同时防止成本 增加,能够考虑甚至单个访问的物理功率负载,并且能够实现详细功率最
优化的集成器件;其布置方法;和程序。
根据本发明第一方面,提供了一种集成器件,其包括至少一个数据 处理器件和至少一个可由数据处理器件访问的存储器宏。数据处理器件和 存储器宏被布置为使得存储地址和功耗具有相关性。
第一数据可存储在消耗的功率小于用于第二数据的区域消耗的功率的 区域中,其中第一数据被访问的次数大于第二数据被访问的次数。
存储地址和功耗之间的相关性可由互连长度来确定。
第一数据可存储在这样的存储区中,该存储区具有的距离数据处理器 件的数据发送距离短于用于第二数据的存储区和数据处理器件之间的数据 发送距离,其中第一数据被访问的次数大于第二数据被访问的次数。
对象应用程序所访问的逻辑地址可对应于存储器的物理地址,使得根 据对象应用程序的访问数量来确定数据处理器件和存储器之间的数据发送 距离。
由应用程序分析所估计的访问数量较多的数据可分配到这样的物理地 址,该物理地址具有的距离数据处理器件的数据发送距离短于由应用程序 分析所估计的访问数量较少的数据和数据处理器件之间的数据发送距离。
通过使用在应用程序分析期间创建的参数信息,和在应用程序执行期 间关于参数的访问信息,可执行物理地址映射以在应用程序执行期间最优 化功率。
数据处理器件可包括至少一个输入/输出端口 。存储器宏可包括多个存 储体和用于连接数据处理器件和每个存储体的存储接口 。数据处理器件的 输入/输出端口、每个存储接口、和每个存储体可通过连接互连来连接。
连接的互连可包括命令信息互连和数据互连,其中的每一个都具有多 层互连结构。命令信息互连可通过私有互连形成。数据互连的至少一部分 可通过私有互连形成。
存储接口可通过将存储器宏的布置区域插入其间而布置在与布置在数 据处理器件中已布置位置相对的位置中。每个存储器宏可并列布置在近似 正交于第一方向的第二方向中,第一方向是数据处理器件和存储接口之间 的连接方向。数据处理器件的输入/输出端口、每个存储接口、和每个存储
体可通过第一方向和第二方向中接线的互连来连接,以在存储器宏的多个 区域中形成矩阵。数据互连包括由私有互连形成的至少第二方向接线互 连。
根据本发明第二方面,提供了集成器件的布置方法,该集成器件至少 包括数据处理器件和至少一个可由数据处理器件访问的存储器宏,该方法 包括布置数据处理器件和存储器宏,使得存储地址和功耗具有相关性。
第一数据可存储在消耗的功率小于用于第二数据的区域消耗的功率的 区域中,其中第一数据被访问的次数大于第二数据被访问的次数。
根据本发明第三方面,提供了一种在集成器件中使用的程序,该集成 器件包括至少一个数据处理器件和至少一个可由数据处理器件访问的存储 器宏,程序使得计算机执行包括布置数据处理器件和存储器宏,使得存储 地址和功耗具有相关性的方法。
根据本发明第四方面,提供了一种在集成器件中使用的程序,该集成 器件包括至少一个数据处理器件和至少一个可由数据处理器件访问的存储 器宏,程序使得计算机执行包括以下的方法,布置数据处理器件和存储器 宏以使得存储地址和功耗具有相关性,并且将第一数据存储在消耗的功率 小于用于第二数据的区域消耗的功率的区域中,第一数据被访问的次数大 于第二数据被访问的次数。
当由例如处理器的数据处理器件和存储器组成的普通数据处理系统实
现为LSI时,应用本发明的实施例。因此,本发明的实施例使得能够通过 设计处理器和存储器的相对布局进行编程来实现功率最优化。这种效果不 仅可在存储器层之间实现,而且还可在存储器相同层内实现。
本发明的上面概要不旨在描述本发明的每个示出的实施例或每个实 现。随后的图形和详细描述更具体地例示了这些实施例。


图1是根据本发明实施例的集成器件的基本系统结构图; 图2是示出了数据处理器件和存储器阵列的每个存储器宏的布局图像 的图3是示出了互连负载模型的图4是示出了用于将总功耗P减小到最小值的基本算法的流程图5是示出了图4中在步骤ST100处的特定过程的流程图6是示出了图5中的过程的参数列表的示例的表格;
图7是示出了在图4中的步骤ST100处的参数是局部参数的情况下的 特定过程的流程图8是示出了图7中的过程的参数列表的示例的表格;
图9是示出图5和图7中在步骤ST120处的访问数量计算例程过程的 流程图10是示出了在存在一个数据处理器件的情况下,存储器访问系统 的结构示例的框图ll是示出了图10的系统中的包括多个存储体的存储器宏的布局图 像的图12是示出了在图IO和图11中存在一个数据处理器件的情况下,对 存储器的参数分配的示例的图13是示出了与图12关联的参数列表的表格;
图14是示出了在存在两个数据处理器件的情况下,存储器访问系统 的结构示例的框图15是示出了图14的系统中的包括多个存储体的存储器宏的布局图 像的图16是示出了图14和图15中对存储器的参数分配的示例的图; 图17是示出了与图16关联的参数列表的表格;
图18是示出了根据本发明的实施例的参数分配的第一方法的流程
图19是示出了根据本发明的实施例的参数分配的第二方法的流程
图20是示出了根据本发明的实施例的采用存储系统的集成器件的一 个示例的系统结构图21是示出了图20中的集成器件的存储器映射的图22是用于描述图20中集成器件的存储器宏的互连示例概观的图; 图23是示出了其中利用图20中的X方向(第二方向或水平方向)上
的连接互连来执行X方向(第二方向)存储器到存储器转移的示例的图; 图24是用于描述当在图20的集成器件中的数据总线和存储接口 I/F
之间存在访问目的体(an access-destination bank)时可能进行直接访问的
图25是用于描述相比于简单地映射X条的情况,实施例的集成器件 能够改进吞吐量而不必增加面积的图26是示出了作为实施例的连接互连的三种模式的图私有互连
PRL;公有互连PBL;和公共互连CML;
图27是示出了私有互连PRL,公有互连PBL,和公共互连CML的实 施例的图28是示出了其中各个处理模块具有多个输入/输出端口的集成器件 的结构示例的图29是示出了其中在以Y方向(第一方向)布置的存储系统中共享 存储接口 1/F的存储器宏的结构示例的图30是示出了根据本发明的实施例的存储体的结构示例的图31是示出了本发明实施例中的立体状态的图,所述立体状态中, 命令信息互连(命令地址互连)和数据互连(写数据互连和读数据互连或 公共互连)在体(bank)上多层互连;
图32是用于描述在水平方向(X方向,第二方向)上的命令地址总线 互连的图33是用于描述在水平方向(X方向,第二方向)上的写数据总线互 连的图34是用于描述垂直方向(Y方向,第二方向)上写数据总线互连的 图,并且也是用于描述垂直方向(Y方向,第一方向)上从处理模块到其 下紧接着的存储接口 1/F的写数据总线的图35是用于描述垂直方向(Y方向,第二方向)上写数据总线互连的 图,并且也是用于描述垂直方向(Y方向,第一方向)上除了从处理模块
紧接其下之外的写数据总线的图36是示出了其中取决于延迟级别,在存储接口 I/F中设置触发器 FF的示例的图37是用于描述垂直方向(Y方向,第二方向)上写数据总线互连的 图,并且也是示出了其中根据互连资源情况,在存储接口 1/F之前的多个 私有互连被选择并且通过公有互连来形成的示例的图38是用于描述在水平方向(X方向,第二方向)上的读数据总线互 连的图39是用于描述垂直方向(Y方向,第二方向)上读数据总线互连的 图,并且也是用于描述垂直方向(Y方向,第一方向)上从处理模块到其 下紧接着的存储接口 1/F的读数据总线的图40是用于描述垂直方向(Y方向,第二方向)上读数据总线互连的 图,并且也是用于描述垂直方向(Y方向,第一方向)上除了从处理模块 紧接其下之外的读数据总线的图41是示出其中取决于延迟级别,在存储接口 I/F中提供触发器FF 的示例的图42是用于描述垂直方向(Y方向,第二方向)上读数据总线互连的 图,并且也是示出根据互连资源情况,分成存储接口 I/F之前的多个私有 互连并且通过公有互连来形成的示例的图43是用于描述垂直方向(Y方向,第一方向)上在上行方向的数据 总线互连(公共)的图44是用于描述垂直方向(Y方向,第一方向)上在下行方向的数据 总线互连(公共)的图45是示出了根据本发明的实施例的存储接口 I/F的基本结构的图46是示出了根据本发明的实施例的存储接口 I/F的另一结构示例的
图47是示出了根据本发明的实施例的存储接口 I/F的又一结构示例的
图48是用于描述垂直方向(Y方向,第一方向)上基本命令地址总线
互连的图49是用于描述垂直方向(Y方向,第一方向)上多发行(pluml-issuance)结构的命令地址总线互连的图50是共同示出了根据本发明实施例的集成器件的基本结构和连接 互连的特征的图。
具体实施例方式
联合附图,下面描述本发明的实施例。
图1是根据本发明实施例的集成器件的基本系统结构图。
集成器件1示出了基本结构,并且包括例如处理器的数据处理器件 2,和具有从数据处理器件2可访问的多个(图l的示例中为4)存储体3-0至lj3-3的存储器宏3。
在根据本发明实施例的集成器件1中,数据处理器件2和存储体3-0 到3-3被布置为使得存储地址和功耗具有相关性。集成器件1配置为使得 访问量大(即,从集成器件1访问数据的次数是多的)的数据位于(接近 于)消耗少量功率的区域中,以实现低功耗。
换言之,根据本发明的实施例,在其中预先确定到例如处理器的数据 处理器件的距离(数据发送距离)并且存在各种预定距离以对应于单个物 理地址的集成器件中,由对象应用程序所访问的逻辑地址根据访问数量分 配到存储器的物理地址,该物理地址具有到数据处理器件的可能最短的数 据发送距离,从而减少了功耗。
存储地址和功耗之间的相关性由互连长度、互连宽度、互连材料等确 定。当互连宽度和互连材料相同时,相关性由互连长度确定。
也可通过直接最优化物理地址(不需地址转换表)使得能够进行功率 最优化。在该情况下的执行手段包括编程器(programmer)和编译器。
最优化的另一方式是存在用于将逻辑地址转换为物理地址的地址转换 表,并且地址转换表的设置值用于使得能够最优化。在该情况下的执行手 段包括编程器、编译器、用于保存访问历史的手段等。
数据处理器件2执行过程以便以存储器宏3和当访问存储器宏3时获
得的关于功耗的信息为基础来实现最小功耗。
集成器件1配置为通过将访问数量大的数据分配到消耗较小功率量的 地址来减少功耗。
下面将描述根据实施例的集成器件1中的功率最优化的特定功率节省 控制方法。
首先,将描述基本概念。
当通过例如处理器的数据处理器件和存储器配置的普通处理器系统实 现为LSI等时,应用根据本发明的实施例的集成器件1。集成器件1设计 处理器和存储器的相对布局以使得能够通过编程来进行功率最优化。集成
器件1不仅可在存储器层之间,而且还可在存储器相同层内展示效果。 基本内容如下
1) :数据转移所需的电功率与例如处理器等的数据处理器件2和其 中存储数据的存储元件之间的物理距离相关。
因此,相关于数据处理器件2,建立物理布局结构使得存储地址和数 据发送(转移)的距离具有相关性。
结果,明确地识别相关于编程器所访问的地址的功耗。通过被敏锐地 识别,确定存储分配以执行编码,从而使得能够在编程级别进行功率最优 化。
随后详细描述布局技术的特定示例,其中使得存储地址和数据发送 (转移)距离具有相关性。
本发明实施例的适用性范围可包括以下-
2) :当该原理引入编译器时,使得能够容易地进行用于功率最优化 的目标代码的自动生成。
例如,当编译器编译时,如果访问数量大的参数位于物理上接近的存 储器,使得能够增加电功率效率。
通过编译期间的描绘可估计访问数量大的参数。通常,所述趋向于在 程序执行期间有高的访问量的局部参数,或者在编程期间明确地执行高的 访问量的参数等可估计为候选。
相反,在例如图像过滤的图像处理应用的情况下,图像数据被处理时 通常仅仅被读入处理器一次。
正好放入堆栈区可提供有效的低功耗,在该堆栈区中局部参数位于物 理上接近的存储器。
3) :在支持虚拟地址的系统中,存在虚拟地址控制单元,用于将逻 辑地址转换为物理地址。当距离和功耗之间的关系添加到虚拟地址控制单 元的地址转换算法时,可使得在程序执行期间能够进行功率最优化。
在该情况下,在编译程序期间创建的关于参数的简档信息和在程序执 行期间关于参数的访问信息可用于使得能够在程序执行期间进行用于功率 最优化的物理地址映射。因此,与甚至其中参数没有静止地确定的程序, 例如多线程程序等兼容成为可能。
通过仅仅在该块内的校正,虚拟地址控制单元的地址转换算法的校正 是可能的。
因此,可实现这样的系统,其中未向编译器施加负载并且低功耗执行 是可能的,同时保持与现有系统的二进制兼容性。
4) :关于前述项3),除了存储地址和距离之间的布局所生成的功率 相关性,如果另外给予存储地址和功耗之间的相关性表格,可考虑除了距 离之外的因素。
例如,可考虑按存储地址的互连材料质量上的差异,以便也可与更复 杂的物理模型兼容。
随后,将更特定地描述功率节省控制方法。
首先,作为基本原理,描述互连长度和转移功率。
图2是示出了数据处理器件和存储器阵列的每个存储器宏的布局图像 的图。图3是示出了互连负载模型的图。
功耗2_与电容^和频率£的乘积成比例。
根据互连负载模型,功耗与互连长度成比例。 存储地址和功耗之间的相关性由互连长度、互连宽度、互连材料等确定。
当互连宽度和互连材料相同时,相关性由互连长度独自确定。因此,
在集成电路上(在LSI上),可认为互连长度是居于支配的。
总功耗P由以下表达式给出,其中到存储器宏的互连长度是
Ll/L2/.. ./Lm,并且对每个存储器宏的访问数量是Nl/N2/.. ./Nm: <formula>formula see original document page 14</formula>
其中k表示常数。
因为访问数量Nl/N2/…/Nn由应用程序确定,当选择互连长度 Ll/L2/…/Ln并且执行存储器分配以将总功耗£_减少到最小值时,可实现在 程序执行期间的功率最优化。
随后,描述用于将总功耗P减少到最小值的基本算法。 图4是示出了用于将总功耗£_减小到最小值的基本算法的流程图。 该过程基本上由计算参数访问数量的步骤ST100和执行参数分配的步 骤ST200形成。 问题
估计每个参数的布置,以用于将用于访问所有参数的总功耗减少到最 小值。
定义用于访问某参数L的功耗(P)与互连长度(1)和访问数量
(n)的乘积成比例。 [表达式2]
p(i)oc l(i) * n(i)
1:到要布置的位置的数据转移路径长度 n:访问数量
参数的数量是有限的,并且当数量由M表示时,用于访问所有参数 的总功耗(P)由以下表达式给出。 [表达式3]
P=ki:(i=0,M){l(i)*n(i)}
解决方案
在图4中流程图的步骤ST100处,获得n(i)。 随后,在步骤ST200,为所有给出的n (i)估计用于将总功耗(P) 减少到最小值的所有l (i) 。
以下,将描述在基本算法的步骤ST100和步骤ST200处的特定解决方案。
在步骤ST100处的解决方案
获得每个参数的访问数量n (i)。 (方法l):
通过在编译期间分析程序,可能确定参数L是否包括在循环中。 例如,在(:/0++中,如果"do"语句、"while"语句、或"for"语句
出现,可将其后紧接着的循环体({...})确定为包括在循环中的部分。 当所有循环的次数通过程序分析己知时,如果使用次数,可计算访问
数量。 (方法2):
当即使存在一个循环次数未知的循环时,编程器可根据应用的趋向估 计循环的次数,并且使用次数来计算访问次数。
(方法3):
当即使存在一个循环次数未知的循环时,可应用以下权重来计算访问 次数。通常,循环内的参数比循环外部参数具有更多的访问次数,并且因 而,根据此,将确定相对的位置关系。
参数n (i)按如下确定 [表达式4]
如果未包括在循环中,贝U: n (i) =1;并且 如果包括在循环中,贝U: n (i) =100;
足以建立在被包括在循环中的情况下的值大于未被包括的情况下的值 的关系。关系可能不总是100: 1. (方法4):
如果在循环内存在循环(嵌套),通过设置n (i)为更大的值,可使
得能够进行更详细的功率控制。
如果未被包括在循环中,贝U: n (0 =1; 如果被包括在循环中,贝!L n (i) =100;并且 (i) =100*N;
(方法5):
通过使用用于在程序执行期间记录每个参数的访问历史的方法,可测 量访问数量。
在每个上述的方法中,关于程序中的条件分支,通过以下方法等事先 确定的估计的分支概率用于计算访问数量。 例如在方法i中,使用编程器的预测值。
在方法b中,使用统计估计的分支概率,例如各为50的"If/else"; 为90的用于后向分支概率的"for/while";以及为IO的前向分支概率。 图5是示出了图4中在步骤ST100处的特定过程的流程图。 图6是示出了图5中过程的参数列表的示例的表格。 图5示出了符合多个数据处理器件的过程流。
在图6的参数列表中的项中,分别为,"参数"表示参数名称;"编 号"表示访问一个或多个存储器宏的数据处理器件的编号;并且"访问数 量"表示被访问的次数。
在计算参数访问数量的步骤ST100处,创建图6中示出的参数列表 (ST110),并且执行访问数量计算例程过程(ST120)。访问数量计算例 程过程的输入是参数,并且其输出是访问数量。
随后,记录参数列表的访问数量(ST130)。
确定是否完成了对所有数据处理器件的检查(ST140),并且当确定 完成时,确定是否在参数列表中记录了所有参数(ST150)。
当确定在参数列表中记录了所有参数时,过程结束。
在步骤ST140和ST150,当得到否定确定结果时,从步骤ST120处的 访问数量计算例程过程重复上述过程。
图7是示出在图4中的步骤ST100处的参数是局部参数的情况下的特 定过程的流程图。
图8是示出图7中过程的参数列表的示例的表格。
如果参数是局部参数(或如果系统具有一个数据处理器件),则存在 一个访问一个或多个存储器宏的数据处理器件,并且因而,可简化过程。
即,图5中在步骤ST140处的过程变得不是必需的,并且因而,可简化过 程。
图9是示出图5和图7中在步骤ST120处的访问数量计算例程过程的 流程图。
在步骤ST120处的访问数量计算例程过程中,确定是否可能计数参数 的访问数量(ST121)。
当在步骤ST121处确定可计数参数的访问数量时,则例如采用上述基 本算法的步骤ST100处的解决方案中描述的(方法1),来计数访问数量 (ST122)。
当在步骤ST121处确定不可计数参数的访问数量时,则例如采用上述 基本算法的步骤ST100处的解决方案中描述的(方法2)、(方法3)、 和(方法4)中的任何一个,来估计访问数量(ST123)。
随后,描述基本算法的步骤ST200的特定解决方案。 步骤ST200处的解决方案
1) :如果存在一个数据处理器件。 (方法l)
使用完全搜索方法。
搜索数量为i的给定n (i)和数量为J的可选择1 (0的所有组合, 以估计最小的总功耗P。 (方法2)
执行数字分析。
具有较大值的n (i)接连地被分配到具有较小值的1 (i)。
2) :如果存在多个(nP)数据处理器件。
P(i,u)oc l(i,u) * n(i,u)
U:数据处理器件的数量
P=ki:(u=0,nP)i;(i=0,M){l(i,u) * n(i,u)} (方法1)
使用完全搜索方法。 搜索数量为i的给定n (0和数量为J的可选择1 (i)的所有组合, 以获得最小的总功耗P。 (方法2)
执行数字分析。
使用数学方法,确定提供最小总功耗P的组合。 相比于使用总检索,计算量可变得更少。
如上所述,特定地描述了根据本发明的实施例的功率节省控制方法。 作为存在一个数据处理器件的存储器访问系统的示例;存在两个数据
处理器件的存储器访问系统的示例;在这些情况下的参数分配的示例;用
于关联存储地址和数据发送距离的布置方法的示例;下面将更特定地描述
存储系统的结构示例。
图10是示出了在当存在一个数据处理器件时存储器访问系统的结构
示例的框图。图11是示出了图10的系统中的多个存储体的布局图像的图。
如图10中所示,存储器访问系统1A包括数据处理器件2A;包括 存储器体3A-0到3A-3的存储器3A;存储接口 (MI/F) 4;数据控制器 5;外部接口 (I/F) 6;和总线7。
在系统1A中,通过例如DMA的数据控制器5来执行将数据装载和 存储到存储器3A中。
包括计算单元的数据处理器件2A经由存储接口 4读出存储器3A上的 数据以计算,并且经由存储接口 4将所计算结果写回到存储器3A。
如图11中所示,根据布局,存储接口 4布置在相对于数据处理器件 2A的分配位置的位置中,同时在其间夹入存储器宏3A的分配区域。
例如,存储体3A-0到3A-3配置为2000比特(8比特X256)的存储 体。地址是十六进制的(Hex),并且每一个都被分配了地址(字节地 址)0至l飾。
存储体3A-0分配了地址000到Off;存储体3A-1分配了地址100到 Iff;存储体3A-2分配了地址200到2ff;并且存储体3A-3分配了地址300 到3ff。
在该情况下,关于到数据处理器件2A的距离的关系(互连长度), 存储体3A-0是最近的;存储体3A-1是第二最近的;存储体3A-2是第三 最近的;并且存储体3A-3是最远的。
在实施例中,布局被设计为使得存储地址和功耗具有相关性。因此, 在该示例中,访问数量大的数据位于消耗低功率的区域中,例如在存储体 3A-0或3A-1中,并且访问数量小的数据例如位于存储体3A-3或3A-2 中,从而降低功耗。
图12是示出如果图10和图11中存在一个数据处理器件,对存储器的 参数分配的示例的图。
图13是示出关联于图12的参数列表的表格。
该示例示出了其中每一个都具有256个元素的数组A、 B、和C分别 被读取和写入1次、10次和97次的情况。
在实施例中,布局设计为使得存储地址和功耗具有相关性。因此,访 问数量大(即97次)的数组C例如分配到(位于)存储体3A-0中;访问 数量小(即10次)的数组B分配到(位于)存储体3A-1中;并且访问数 量最小的数组数据A分配到(位于)存储体3A-2中。因而,减少了功 耗。
图14是示出当存在两个数据处理器件时,存储器访问系统的结构示 例的框图。
图15是示出图14的系统中的包括多个存储体的存储器宏的布局图像 的图。
存储器访问系统1B与图10中的存储器访问系统1A的不同在于存储 器访问系统1B设有两个数据处理器件2-0和2-1。
包括计算单元的数据处理器件2-0和2-1经由存储接口 4B读出存储器 3B上的数据以计算,并且经由存储接口 4B将计算结果写回存储器3B。
在该示例中,如图15中所示,根据布局,存储接口4B位于存储器宏 3B的存储体3B-1的分配区域和其存储体3B-2的分配区域之间。
即,根据布局,存储接口 4B位于相对于数据处理器件2-0的分配位 置的位置中,同时在其间夹入存储器宏3B的存储体3B-0和3B-1的分配区域。
类似地,根据布局,存储接口 4B位于相对于数据处理器件2-1的分
配位置的位置中,同时在其间夹入存储器宏3B的存储体3B-3和3B-2的 分配区域。
因此,存储接口 4B在数据处理器件2-0和2-1中共享,并且具有数据 处理器件2-0和2-1的仲裁功能和作为到和从每个存储体3B-0到3B-3的 数据输入/输出接口的功能。
在实施例中,布局设计为使得存储地址和功耗具有相关性。因此,在 该实施例中,对于数据处理器件2-0来说访问数量大的数据位于作为消耗 低功率的区域的存储体3B-0中,并且访问数量小的数据位于存储体3B-1 中。
类似地,对于数据处理器件2-1来说访问数量大的数据位于存储体 3B-3中,即消耗低功率的区域,并且访问数量小的数据位于存储体3B-2 中。
因此,实现了功耗的减少。
,16是示出了图14和图15中对存储器的参数分配的示例的图。 图17是示出了关联于图16的参数列表的表格。
该示例示出了其中每一个都具有256个元素的数组A、 B、和C分别 被读取和写入以下描述的次数的情况。
艮口,这是这样的情况,其中数据处理器件2-1对数组A读取和写入 200次;数据处理器件2-0对数组B读取和写入65次;数据处理器件2-0 对数组C读取和写入5次并且数据处理器件2-1对数组C读取和写入2 次。
在实施例中,布局设计为使得存储地址和功耗具有相关性。因此,对 于数据处理器件2-1来说访问数量大(即200次)的数组A分配到(位 于)存储体3B-3中。对于数据处理器件2-l来说访问数量小(即2次)的 数组数据C分配到(位于)存储体3B-2中。
对于数据处理器件2-0来说访问数量大(即65次)的数组B分配到 (位于)存储体3B-0中,并且对于数据处理器件2-0来说访问数量小(即
5次)的数组数据C分配到(位于)存储体3B-1中。
因此,实现了功耗的减少。
随后,描述根据本发明实施例的参数分配方法。
对于参数分配方法,可采用按顺序分配非共享参数和共享参数的第
一方法; 一起分配所有参数的第二方法;按顺序分配局部参数和全局参数 的第三方法。
图18是示出了根据本发明的实施例的参数分配的第一方法的流程图。
在第一方法中,计算非共享参数的访问数量(ST201),并且分配非 共享参数(ST202)。
计算共享参数的访问数量(ST203),并且分配共享参数(ST204)。
因此,在第一方法中,按顺序执行非共享参数和共享参数的分配。
图19是示出了根据本发明的实施例的参数分配的第二方法的流程图。
在第二方法中,计算非共享参数的访问数量(ST211),计算共享参 数的访问数量(ST212),并且分配所有的参数(ST213)。 因此,在第二方法中, 一起分配所有的参数。
随后,描述其中将根据本发明实施例的集成器件应用为更特定的存储 系统结构的集成器件示例。
图20是示出了根据本发明实施例的使用存储系统的集成器件的一个 示例的系统结构图。
作为主要元件,图20的集成器件IO具有多个(图20中为4)访问群 集20、 30、 40、和50。
各个访问群集20到50分别具有作为数据处理器件的处理模块21、 31、 41、和51,以及存储器宏(存储系统)22、 32、 42、和52。
访问群集20的存储器宏22包括多个(图20中为4)存储体221-1到 221-4。在图20中,为了避免图形的复杂化,存储体221-1到221-4表示为 B隱0、 B-l、 B-2、和B-3。
访问群集30的存储器宏32包括多个(图20中为4)存储体331-1到
331-4。在图20中,为了避免图形的复杂化,存储体331-1到331-4表示为 B-4、 B-5、 B隱6、和B画7。
访问群集40的存储器宏42包括多个(图20中为4)存储体421-1到 421-4。在图20中,为了避免图形的复杂化,存储体421-1到421-4表示为 B陽8、 B-9、 B隱A、和B-B。
访问群集50的存储器宏52包括多个(图20中为4)存储体531-1到 531-4。在图20中,为了避免图形的复杂化,存储体531-1到531-4表示为 B-C、 B-D、 B-E、禾卩B画F。
图21是示出图20中集成器件的存储器映射的图。
在该示例中,地址000到3ff以十六进制分配到访问群集20的存储体 221-1到221-4 (B-0、 B-l、 B-2、和B-3)。
地址400到7ff以十六进制分配到访问群集30的存储体331-1到331-4 (B-4、 B隱5、 B-6、和B-7)。
地址800到bff以十六进制分配到访问群集40的存储体421-1到421-4 (B-8、 B-9、 B-A、和B-B)。
地址c00到fff以十六进制分配到访问群集50的存储体531-1到531-4 (B-C、 B-D、 B誦E、和B-F)。
也在该情况下,根据上述的功率节省控制方法,布局设计为使得存储 地址和数据发送距离具有相关性,即存储地址和功耗具有相关性。
这里,省略了其特定布局的描述。
图22是用于描述图20中集成器件的存储器宏的互连示例概观的图。
在该示例中,经由数据暂记区(data pad) 61和地址暂记区62将到存 储器宏22、 32、 42、和52的互连连接到另一块,如图22中所示。
以下,特定地描述其中可采用根据本发明实施例的功率节省控制方法 的存储系统的结构示例。
访问群集20包括处理模块(PM0) 21,作为包括具有一个(或多 个)输入/输出端口 211的计算单元的数据处理器件;以及可由处理模块 21访问的诸如DRAM和SRAM的存储器宏(存储系统)22。
存储器宏22包括存储器宏221,存储器宏221包括在图20中的直角
坐标系统集的Y方向(第一方向)上排列的多个体221-1到221-n (在该 示例中n=4);和存储接口 (I/F) 222,用于匹配在存储器宏221的各个 体221-1到221-n和处理模块21之间的数据转移,执行对各个体221-1到 221-n的访问控制等等。
存储接口 222位于相对于处理模块21的分配位置的位置中,同时在 其间夹入存储器宏221的分配区域。
处理模块21的输入/输出端口 211、相应的存储接口 222、和相应的存 储体221-1到221-n通过存储器宏221的分配区域(上层)中的Y方向 (第一方向)和X方向(第二方向)中的矩阵(点阵状态)中接线的互连 来连接。
在图20的示例中,处理模块21的输入/输出端口 211和存储接口 222 通过Y方向(第一方向)上的连接互连来线性地连接。
在连接互连中,命令信息互连(命令地址互连)和数据互连(写数据 互连和读数据互连或公共互连)是多层互连的。随后将详细说明连接互 连。
访问群集30包括具有一个(或多个)输入/输出端口 311的处理模块 (PM1) 31;以及可由处理模块31访问的诸如DRAM和SRAM的存储器 宏(存储器系统)32。
存储器宏32包括存储器宏321,存储器宏321包括在图20中的直角 坐标系统集的Y方向(第一方向)上排列的多个体321-1到321-n (在该 示例中n=4);以及存储接口 (I/F) 322,用于匹配在存储器宏321的各 个体321-1到321-n和处理模块31之间的数据转移,执行对各个体321-1 到321-n的访问控制等等。在图形中,为了避免复杂化,省略了存储器宏 321的体等的符号。
存储接口 322位于面向处理模块31的分配位置的位置中,同时在其 间夹入存储器宏321的分配区域。
处理模块31的输入/输出端口 311、相应的存储接口 322、和相应的存 储体321-1到321-n通过存储器宏321的分配区域(上层)中的Y方向 (第一方向)和X方向(第二方向)中的矩阵(点阵状态)中接线的连接 互连来连接。
在图20的示例中,处理模块31的输入/输出端口 311和存储器宏32 的存储接口 222通过Y方向(第一方向)上的连接互连来线性地连接。
在连接互连中,命令信息互连(命令地址互连)和数据互连(写数据 互连和读数据互连或公共互连)是多层互连的。随后将详细说明连接互 连。
访问群集30在X方向(第二方向)上平行于访问群集20。相应对应 于存储器宏的矩阵布置的存储体通过X方向(第二方向)上接线的总线进 行连接。
访问群集30的存储器宏321的相应体321-1到321-n和访问群集20 的存储器宏221的相应体221-1到221-n都在X方向上平行,以在Y方向 上具有相等的二维高度。
在X方向平行放置的存储器宏321的相应体321-1到321-n和存储器 宏221的相应体221-1到221-n之间的连接互连中,放置触发器作为缓冲 器°
访问群集40包括具有一个(或多个)输入/输出端口 411的处理模块 (PM2) 41;以及可由处理模块41访问的诸如DRAM和SRAM的存储器 宏(存储器系统)42 。
存储器宏42包括存储器宏421,存储器宏421包括在图20中的直角 坐标系统集的Y方向(第一方向)上排列的多个体421-1到421-n (在该 示例中n=4);以及存储接口 (I/F) 422,用于匹配在存储器宏421的各 个体421-1到421-n和处理模块41之间的数据转移,执行对各个体421-1 到421-n的访问控制等等。
存储接口 422位于相对于处理模块41的分配位置的位置中,同时在 其间夹入存储器宏421的分配区域。
处理模块41的输入/输出端口 411、存储接口 422、和相应的存储体 421-1到421-n通过存储器宏421的分配区域(上层)中的Y方向(第一 方向)和X方向(第二方向)中的矩阵(点阵形式)中接线的连接互连来 连接。
在图20的示例中,处理模块41的输入/输出端口 411和存储器宏42 的存储接口 422通过Y方向(第一方向)上的连接互连来线性地连接。
在连接互连中,命令信息互连(命令地址互连)和数据互连(写数据 互连和读数据互连或公共互连)是多层互连的。随后将详细说明连接互 连。
访问群集20和访问群集40经由Y方向(第一方向)上的接口对称地 放置。连接位于相应的对应位置的存储接口 222和422。
在实施例中,多个对称放置的访问群集20和40的相应存储器系统共 享存储接口。
特定地,存储器宏22的存储接口 222和存储器宏42的存储接口 422 配置为相互共享。
共享的存储接口包括仲裁单元,用于仲裁到其它存储器系统的访问。 随后将说明仲裁单元。
访问群集50包括具有一个(或多个)输入/输出端口 511的处理模块 (PM3) 51;以及可由处理模块51访问的诸如DRAM和SRAM的存储器 宏(存储器系统)52。
存储器宏52包括存储器宏521,存储器宏521包括在图20中的直角 坐标系统集的Y方向(第一方向)上排列的多个体521-1到521-n (在该 示例中n=4);以及存储接口 (I/F) 522,用于匹配在存储器宏521的各 个体521-1到521-n和处理模块51之间的数据转移,执行对各个体521-1 到521-n的访问控制等等。在图形中,为了避免复杂化,省略了存储器宏 521的体等的符号。
存储接口 522位于相对于处理模块41的分配位置的位置中,同时在 其间夹入存储器宏521的分配区域。
处理模块51的输入/输出端口 511、存储接口 522、和相应的存储体 521-1到521-n通过存储器宏521的分配区域(上层)中的Y方向(第一 方向)和X方向(第二方向)中的矩阵(点阵状态)中接线的连接互连来 连接。
在图20的示例中,处理模块51的输入/输出端口 511和存储器宏52
的存储接口 522通过Y方向(第一方向)上的连接互连来线性地连接。
在连接互连中,命令信息互连(命令地址互连)和数据互连(写数据 互连和读数据互连或公共互连)是多层互连的。随后将详细说明连接互 连。
访问群集50在X方向(第二方向)上平行于访问群集40放置。相应 对应于多个存储器宏的矩阵布置的存储体通过X方向(第二方向)上接线 的总线进行连接。
访问群集50的存储器宏521的相应体521-1到521-n和访问群集40 的存储器宏421的相应体421-1到421-n每一个都在X方向上平行放置, 以在Y方向上具有相等的二维高度。
在X方向平行放置的存储器宏521的相应体521-1到521-n和存储器 宏421的相应体421-1到421-n之间的连接互连中,放置触发器FF作为缓 冲器。
访问群集30和访问群集50经由Y方向(第一方向)上的接口对称地 放置。连接位于相应的对应位置的存储接口 322和522。
在实施例中,多个对称放置的访问群集30和50的相应存储器系统共 享存储接口。
特定地,存储器宏32的存储接口 322和存储器宏52的存储接口 522 配置为相互共享。
共享的存储接口包括仲裁单元,用于仲裁到其它存储器系统的访问。 随后将说明仲裁单元。
上述实施例的集成器件IO配置为具有以下特征。
集成器件10利用这样的结构,使得存储器和逻辑组合在单个芯片 中,以将按照普通十字条(X条)的总线系统映射到存储器上,如图20中 所示。
在近来的制造技术中,互连层数的增加是由逻辑电路规模增加造成 的。然而,在存储器电路中,即使规模增加,仅增加了少数所需的互连层 数。结果,存储器上侧的互连层数通常剩下未使用。当利用未使用的空间 来将总线系统的互连传递到存储器系统上时,总线系统可构造为几乎在存
储区上没有增加。
在实施例中,为了避免由于互连长度增加造成的频率降低,形成连接 互连的总线是用管道输送的。
此外,为了避免互连面积的增加,在相应的处理模块和存储器系统之 间的互连不是基于一对一地连接,而是公共地接线。
每个存储器系统的存储接口 1/F位于Y方向(第一方向)上的布局中 心处。这使得每个处理模块和每个存储接口 I/F之间的距离相等并且最 短,从而减少互连的量。
当存储接口 1/F在布局中心处时,可两倍有效地利用存储器内的资 源。这是因为当存储接口 1/F定义为边界时,存储器内的资源分为图20的 多个访问群集20、 30、 40、和50的Y方向(第一方向)和X方向(第二 方向)结构中的两个,并且因此,即使当对相同存储器同时出现多个访问 时,当存储接口 I/F定义为边界时如果访问针对不同的方向,同时访问是 可能的。
在图20中,X方向(第二方向或水平方向)上的连接互连在X方向 (第二方向)上从相应处理模块PM (0到3)开始垂直地运行,以访问所 有存储器系统。
当利用互连时,如图23中的互连LNX所表示的,它也可执行X方向 (第二方向)上的存储器到存储器的转移。
通过设置模式,X方向(第二方向)上的相同互连仅仅在图20的连接 模式和图23的连接模式之间切换,并且因此,可实现高速的存储器到存 储器转移,几乎不增加面积。
对于不需要X方向转移模式(水平转移模式)的应用,可删除该转移 模式。
集成器件10将总线系统映射在存储器系统上,并且因此,如图24中 所示,当存在数据总线和存储接口 I/F之间的任何访问目的体时,直接访 问是可能的。
在图24的示例中,访问集群20的处理模块21 (PMO)访问在左端的 存储器宏221的体221-2,并且访问集群30的处理模块31 (PM1)访问相 同存储器宏221的体221-1。
结果,可实现访问等待时间的縮短。
在实施例的集成器件10中,只要在路线的进行中存在访问目的,即 使同时访问针对相同的存储器,如果体不同并且Y方向(第一方向或垂直 方向)上的互连LNY不冲突,这种访问也是可能的。
结果,如图24和图25中所示,相比于简单地映射X条的情况,可改 进吞吐量而不增加面积。
如上所述,在图24的示例中,访问集群20的处理模块21 (PMO)访 问在左端的存储器宏221的体221-2,并且访问集群30的处理模块31 (PM1)访问相同存储器宏221的体221-1。
在实施例中,如图25中所示,可用基本上同等的面积实现同时访 问,并且还可实现等待时间的縮短。
此外,X方向(第二方向或水平方向)上的互连可需要在相应的处理 模块PM中单独地(私有地)提供。然而,根据所需性能和所允许资源 (面积),Y方向(第一方向或垂直方向)上的互连可以三种模式提供, 即私有互连PRL,公有互连PBL,和公共互连CML,如图26A到26C和 图27A到27C中所示。
在私有互连中,如图26A和26B中所示,单独(专用)互连布置到相 应处理模块PM,由此获得最高性能。然而,最大量的互连资源(面积) 成为必需。
在公有互连中,当访问超过存储接口 I/F的区域时,可共享相应处理 模块PM的读数据互连和写数据互连。
例如,当访问图形中上侧的访问群集20和30的处理模块21和31 (PMO、 PM1)下的区域时,通过将用于读和写操作的捆绑到一起可共享 互连。
当发生同时访问时,可仅仅通过公有系统的编号进行访问。然而,可 抑制面积。
在公共互连中,分别在朝向存储接口 I/F (上)和远离其(下)的方 向上共享互连。读操作和写操作的差异可能不是必需的。如图26C中所
示,只要方向符合,可在所有处理模块PM之间共享资源。
通过图26A到26C中示出的私有互连、公有互连、和公共互连实现的
实施例分别在图27A到27C中示出。
作为一个示例,图20中的集成器件IO示出了其中相应访问群集的处
理模块21、 31、 41、和51各自具有一个输入/输出端口 211、 311、 411、
和511的情况。它还可能配置为将多个输入/输出端口给予相应的处理模块
21、 31、 41、和51。
图28是示出其中每个处理模块包括多个输入/输出端口的集成器件的
结构示例的图。
在图28的集成器件IOA中,相应访问群集20A、 30A、 40A、禾卩50A 的处理模块21A、 31A、 41A、禾Q 51A各自包括两个输入/输出端口 211 和212; 311和312; 411和412;以及511和512。
因此,当每个处理模块PM包括多个端口时,可进一步改进吞吐量。 在该情况下,如图28中所示,仅分开访问目的区域,并且因此,几乎没 有面积上的增加。
在图20的集成器件10中,作为一个示例,示出了包括四个访问群集 的结构。然而,也可能采用包括一个、两个、六个、或六个或更多的访问 群集的结构。
如上所述,主要给出集成器件的系统结构的描述。以下,当发现重叠 部分时,进一步给出体结构、连接互连、以及存储接口的结构和功能的特 定描述。
<存储器宏结构>
在实施例中,如图29中所示,存储器宏包括多个存储体BNK和一个 存储接口 I/F。
在实施例中,存储接口 I/F由Y方向(第一方向)上布置的存储系统 共享。
如图29中所示,大体上,数量相等的体(即,体数量的各一半)离 开中心,即存储接口 1/F物理地放置。 <体结构>
图30是示出了根据本发明的实施例的存储体的结构示例的图。
每个体BNK包括存储阵列101、写电路102、读电路103、和选择器 (S) 104到109。
在图30中,分别为,PRL-WX表示X方向(第二方向或水平方向) 上的私有写数据总线(互连);PRL-RX表示X方向(第二方向或水平方 向)上的私有读数据总线;PRL-WY表示Y方向(第一方向或垂直方向) 上的私有写数据总线;PBL-WY表示Y方向(第一方向或垂直方向)上的 公有写数据总线;PRL-RY表示Y方向(第一方向或垂直方向)上的私有 读数据总线;PBL-RY表示Y方向(第一方向或垂直方向)上的公有读数 据总线;CML-U表示Y方向(第一方向或垂直方向)上上行方向上的公 共命令地址总线;并且CML-D表示Y方向(第一方向或垂直方向)上下 行方向上的公共命令地址总线。
在实施例中,命令信息互连(命令地址互连)和数据互连(写数据互 连和读数据互连,或公共互连)是多层互连的。图31中示出了体BNK上 多层互连的互连的立体状态。
在每个体BNK中,从水平方向(X方向)上的写数据总线PRL-WX;垂直方向(Y方向)上的写数据总线(私有、公有)PRL-WY和 PBL-WY;和垂直方向上的公共命令地址总线CML-U和CML-D (上、 下),关于写入的信息通过选择器104选择性地发送到写电路102。
此外,向水平方向(X方向)上的读总线PRL-RX;垂直方向(Y方 向)上的读数据总线(私有、公有)PRL-RY和PBL-RY;和垂直方向上 的公共命令地址总线CML-U和CML-D (上、下),数据经由选择器105 到109选择性地转移。
<水平方向(X方向,第二方向)命令地址总线互连〉
命令地址总线CML-X包括信息,例如访问目的宏、体、地址、读/ 写、写掩码、ID、和脉冲串长度。
命令地址总线CML-X连接到X方向(第二方向或水平方向)上从相 应处理模块PM的所有存储系统的存储器宏,如图32中所示。
当使用"点到点"(以下,简写为"P2P")连接时,在处理模块PM
和相应存储接口 1/F之间可产生大量互连。因此,使用公共互连。
水平方向(X方向)专用于(私有)每个处理模块PM。根据访问目 的宏,连接在相应分支BRNC处分支。
在被分支后,私有总线互连连接到存储接口 I/F。 <水平方向(X方向,第二方向)写数据总线互连>
水平方向上的写数据总线PRL-WX是私有互连,并且如图33中所 示,这些不是通过P2P对于每个访问目的互连,而是共享的。
从分支BRNC到存储接口 I/F的垂直方向(Y方向,第一方向)互连 根据可用互连资源通过私有、公有、或公共总线互连来连接。 <垂直方向(Y方向,第二方向)写数据总线互连>
垂直方向(Y方向,第一方向)上从处理模块PM到其下紧接着的存 储接口 I/F的写数据总线配置为通过私有总线PRL-WY来连接,如图34中 所示。
私有写数据总线PRL-WY直接连接到水平方向(X方向,第二方向) 上接线的写数据总线PRL-WX (从图34中顶部的体的第二体BNK2)。
除了处理模块PM下紧接着的之外的私有垂直互连直接连接到写数据 总线,用于从水平方向(X方向)转移数据,如图35中所示。写数据从其 转移到垂直方向(Y方向)。
跨越存储接口 I/F的垂直方向写总线不与水平方向互连相连接。
如图36中所示,取决于延迟级别,通过存储接口 I/F中的触发器FF 一次锁住写数据,并且之后,转移所产生的数据。
当跨越存储接口I/F时,如图37中所示,根据互连资源的情况,在存 储接口 I/F之前的多个私有互连通过选择器S来选择并且通过公有互连来 形成。
私有互连是专用于处理模块PM的,并且因此,当处理模块PM的数 量增加时,当连接都是私有的时候大量的互连资源成为必需。在该情况 下,公共连接模式用于除了处理模块之下紧接着的之外的互连。 <水平方向(X方向,第二方向)读数据总线互连>
对于处理模块PM下紧接着的存储接口 I/F,读数据总线通过私有互连
PRL-RX连接,如图38中所示。水平方向(X方向)上的读数据总线互连 是私有的,并且读数据总线互连不是通过P2P对于每个访问目的来连接, 而是公共的。
如图38中所示,具有垂直方向(Y方向,第二方向)互连的连接部分 通过选择器SLC来配置,选择器SLC选择从水平方向(X方向)转移和 从垂直方向(Y方向)转移的数据。 <垂直方向(Y方向,第一方向)读数据总线互连>
垂直方向(Y方向)读数据总线从处理模块PM到其下紧接着的存储 接口 1/F配置为通过私有总线PRL-RY来连接,如图39中所述。
私有读数据总线PRL-RY通过选择器S与水平方向(X方向)上接线 的读数据总线PRL-RX连接(从图39中顶部的体的第二体BNK2)。
如图40中所示,除了处理模块PM下紧接着的之外的私有垂直互连与 读数据总线PRL-RX连接,通过读数据总线PRL-RX数据通过选择器S从 水平方向(X方向)转移。读数据选择性地从其转移到随后的水平方向 (X方向)。
在跨越存储接口 I/F的垂直方向(Y方向)上的读数据总线不与水平 方向(X方向)互连相连接。
如图41所示,取决于延迟级别,通过存储接口 I/F中的触发器FF — 次锁住读数据,并且之后,转移所产生的数据。
当跨越存储接口I/F时,如图42中所示,根据互连资源的情况,读数 据总线分为在存储接口 I/F之前的多个私有互连并且通过公有互连来形 成。
私有互连是专用于处理模块PM的,并且因此,当处理模块PM的数 量增加时,当连接都是私有的时候大量的互连资源成为必需。在该情况 下,公共连接模式用于除了处理模块之下紧接着的之外的互连。 <垂直方向(Y方向,第一方向)数据总线互连(公共)〉
当垂直方向(Y方向)上的数据总线的互连资源受限时,可通过公共 互连减少互连量。
公共互连在读互连和写互连之间没有区别,但是如图43和图44中所
示,互连形成在数据流过的方向上。为了方便,朝向存储接口 I/F的方向
称为"上",同时远离存储接口I/F的方向称为"下"。
当写数据总线在水平方向(X方向)上接线时,公共互连采用图43的 <1>中示出的结构和图44的<1>中示出的结构。
当读数据总线在水平方向(X方向)上接线时,公共互连采用图43的 <2>中示出的结构和图44的<2>中示出的结构。 <I/F结构〉
存储接口 I/F执行用于仲裁从相应处理模块PM发送的命令并且当宏 中的体的资源可用时发出命令的过程。
作为基本结构,如图45中所示,提供了对应于各个处理模块PM的 至少各一个命令缓冲器(以下,简写为"CB" ) 111-0至U lll-n;仲裁器 112;以及选择器113和114。
仲裁器112通过选择信号S112a和S112b,从CB 111-0到CB lll-n 中的命令选择可发出的命令,并且发出所选择命令。仲裁器112能够同时 从中心,即存储接口 I/F向Y方向(第一方向)上的上侧(第一侧)上的 存储系统的体,并且从其向下侧(第二侧)上存储系统的体发出命令。
如图46中所示,如果互连资源允许,则多个命令互连可接线(布 置)到上侧和下侧中的每一个。
此外,如果面积许可的话,则如图47中所示,还可能提供多个CB。 在该情况下,例如,在到上侧处理模块PM的转移路线中提供OR门115-0 到115-n。
<垂直方向(Y方向,第一方向)地址总线互连>
如图48中所示,基本上,从存储接口 1/F发出的地址(命令)在垂直 方向(Y方向)上转移,并且根据访问目的体在分支BRNC处分支。
如图46或图47中所示,当互连资源充分到足以布置多个地址互连 时,命令可最终通过选择器输入到体,如图49中所示。
图50是根据上述本发明的实施例共同地示出集成器件的基本结构和 连接互联的特征的图。
在图50中,分别地,CMD表示命令系统互连;WDT表示写数据系
统互连;并且RDT表示读数据系统互连。
根据本发明实施例的集成器件的基本结构和连接互连的特征(1)到 (9)如下
(1) :数据的X方向(水平)互连是私有互连,以避免与水平方向 上其它的处理模块PM的冲突;
(2) :当在存储接口 1/F之前存在目标时,进行直接访问。结果,可 縮短等待时间,这可导致资源冲突的减少;
(3) :由互连资源确定是否让数据的Y方向(垂直)互连私有或捆 绑。结果,可获得更高的互连资源效率;
(4) :资源许可,来自存储接口 1/F的命令发出是多个。结果,可实 现吞吐量的改进;
(5) :通过私有互连发出Y方向(垂直方向)和X方向(水平方 向)两者上的命令。结果,可避免与其它处理模块PM的冲突;
(6) :数据的处理模块PM下紧接着的Y (垂直)方向互连是私有互
连。结果,可避免与其它处理模块PM的冲突;
(7) :存储接口I/F位于Y方向(第一方向)的中心。结果,可两倍 地有效利用互连资源;
(8) : X (水平)方向上的数据互连可用于水平转移模式。因此,可 实现存储器到存储器转移性能的改进;和
(9) :可将多个端口给予处理模块PM。因此,可实现吞吐量的改进。
如上所述,根据本发明的实施例,数据处理器件2和存储器宏3-0到 3-3布置为使得存储地址和功耗具有相关性,并且访问数量大的数据位于 (接近)消耗的功率少于访问数量小的数据的区域所消耗功率的区域。因 此,可实现功耗的减少。
艮口,根据本发明的实施例,在其中先前确定到例如处理器的一个任意 数据处理器件的距离(数据发送距离),并且存在对应于每个物理地址的 各种预定距离的集成器件中,由对象应用程序访问的逻辑地址分配到物理 地址,该物理地址的预定距离根据访问数量尽可能的短。因此,可实现功
率节省。
结果,可考虑甚至存储层次内的物理位置,并且还考虑甚至单个访问 的物理功率负载,从而实现了详细的功率最优化。
根据本发明的实施例,在其中嵌入多个存储体的存储系统中,在存储 器宏上构造总线系统以使得能够执行比使用通常X条等的共享存储系统更 高速(更高吞吐量)的存储器访问。
当利用如图20中所示配置的总线系统的互连等来构造存储体之间的 总线时,可实现高速的存储器到存储器数据转移,几乎不增加电路规模。
互连在存储器宏上接线,并且因此,当互连越过访问目的体时直接访 问是可能的。因此,可实行低的等待时间。
可构造通过所需性能和接线能力之间的平衡改变接线互连的方法的系
统,即根据访问模块PM数量、互连资源、和所需性能的系统。
当使用存储系统将多个端口给予一个处理模块PM时,可能实现这样
的系统,其中构造了更高的性能,而不会消耗资源(面积)。
尽管当处理模块PM的数量增加时,互连的数量也增加。然而,可构 造根据总线宽度改变总线结构的系统。
根据本发明的实施例,可考虑甚至存储层次内的物理位置,并且考虑 甚至单个访问的物理功率负载,从而实现了详细的功率最优化。
应当注意,本发明的实施例不限于上述的那些实施例,而是可明显地 由本领域技术人员修改,而不会偏离本发明的范围。
上面详细描述的方法可配置为形成为根据上述过程的程序,以由计算 机,例如CPU执行。
此外,这种程序可配置为记录在记录介质中,例如半导体存储器、磁 盘、光盘、软(注册商标floppy)盘等,并且由提供了该记录介质的计算 机访问,由此执行上述程序。
本申请要求2007年9月13日在日本专利局申请的日本专利申请第 2007-238516号的优先权利益,通过引用将其全部内容结合于此。
权利要求
1. 一种集成器件,包括至少一个数据处理器件;和至少一个可由所述数据处理器件访问的存储器宏,其中所述数据处理器件和所述存储器宏布置为使得存储地址和功耗具有相关性。
2. 根据权利要求1所述的集成器件,其中第一数据存储在消耗的功 率小于用于第二数据的区域消耗的功率的区域中,所述第一数据被访问的 次数大于所述第二数据被访问的次数。
3. 根据权利要求1所述的集成器件,其中所述存储地址和所述功耗 之间的所述相关性由互连长度来确定。
4. 根据权利要求3所述的集成器件,其中第一数据存储在这样的存 储区中,该存储区具有的距离所述数据处理器件的数据发送距离短于用于 第二数据的存储区和所述数据处理器件之间的数据发送距离,所述第一数 据被访问的次数大于所述第二数据被访问的次数。
5. 根据权利要求1所述的集成器件,其中对象应用程序所访问的逻 辑地址对应于存储器的物理地址,使得根据所述对象应用程序的访问数量 来确定所述数据处理器件和所述存储器之间的数据发送距离。
6. 根据权利要求1所述的集成器件,其中由应用程序分析所估计的 访问数量较多的数据分配到这样的物理地址,该物理地址具有的距离所述 数据处理器件的数据发送距离短于由所述应用程序分析所估计的访问数量 较少的数据和所述数据处理器件之间的数据发送距离。
7. 根据权利要求1所述的集成器件,其中通过使用在应用程序分析 期间创建的参数信息,和在应用程序执行期间关于参数的访问信息,执行 物理地址映射以在所述应用程序执行期间最优化功率。
8. 根据权利要求l所述的集成器件,其中.-所述数据处理器件包括至少一个输入/输出端口 ;所述存储器宏包括多个存储体和用于将所述数据处理器件和每个所述 存储体进行连接的存储接口,并且其中所述数据处理器件的输入/输出端口、每个所述存储接口、和每个 所述存储体可通过连接互连来连接。
9. 根据权利要求8所述的集成器件,其中所述连接互连包括命令信 息互连和数据互连,所述命令信息互连和所述数据互连中的每一个具有多 层互连结构,所述命令信息互连通过私有互连形成,并且 所述数据互连的至少一部分通过私有互连形成。
10. 根据权利要求9所述的集成器件,其中所述存储接口中的每一个都通过将布置了所述存储器宏的区域插入其间来布置在与布置了所述数据处理器件的位置相对的位置中;每个所述存储器宏沿近似正交于第一方向的第二方向并列布置,所述第一方向是所述数据处理器件和所述存储接口之间的连接方向,所述数据处理器件的输入/输出端口、每个所述存储接口、和每个所述存储体通过在所述第一方向和所述第二方向中接线的互连来连接,以在所述存储器宏的多个区域中形成矩阵,并且所述数据互连的至少所述第二方向接线互连由私有互连形成。
11. 一种集成器件的布置方法,该集成器件至少包括数据处理器件和 至少一个可由所述数据处理器件访问的存储器宏,该方法包括布置所述数据处理器件和所述存储器宏,使得存储地址和功耗具有相 关性。
12. 根据所述权利要求11所述的集成器件的布置方法,其中第一数 据存储在消耗的功率小于用于第二数据的区域消耗的功率的区域中,所述 第一数据被访问的次数大于所述第二数据被访问的次数。
13. 根据所述权利要求12所述的集成器件的布置方法,其中所述存 储地址和所述功耗之间的所述相关性由互连长度来确定。
14. 根据所述权利要求13所述的集成器件的布置方法,其中所述第一数据存储在这样的存储区中,该存储区具有的距离所述数据处理器件的 数据发送距离短于用于第二数据的存储区所需的数据发送距离。
15.根据所述权利要求11所述的集成器件的布置方法,其中对象应用程序所访问的逻辑地址对应于存储器的物理地址,使得根据所述对象应 用程序的访问数量来确定所述数据处理器件和所述存储器之间的数据发送 距离。
16.根据所述权利要求11所述的集成器件的布置方法,其中由应用 程序分析所估计的访问数量较多的数据分配到这样的物理地址,该物理地 址具有的距离所述数据处理器件的数据发送距离短于由所述应用程序分析 所估计的访问数量较少的数据所需的数据发送距离。
17. 根据所述权利要求11所述的集成器件的布置方法,其中通过使 用在应用程序分析期间创建的参数信息,和在应用程序执行期间关于参数 的访问信息,执行物理地址映射以在所述应用程序执行期间最优化功率。
18.—种在集成器件中使用的程序,该集成器件包括至少一个数据处 理器件和至少一个可由所述数据处理器件访问的存储器宏,该程序使得计算机执行包括以下的方法布置所述数据处理器件和所述存储器宏,使得存储地址和功耗具有相 关性。
19. 一种在集成器件中使用的程序,该集成器件包括至少一个数据处 理器件和至少一个可由所述数据处理器件访问的存储器宏,该程序使得计算机执行包括以下的方法布置所述数据处理器件和所述存储器宏以使得存储地址和功耗具有相关性;并且将第一数据存储在消耗的功率小于用于第二数据的区域消耗的功率的 区域中,所述第一数据被访问的次数大于所述第二数据被访问的次数。
全文摘要
本发明提供了集成器件、其布置方法和程序。一种集成器件包括至少一个数据处理器件和至少一个可由所述数据处理器件访问的存储器宏。所述数据处理器件和所述存储器宏布置为使得存储地址和功耗具有相关性。
文档编号G06F12/02GK101387986SQ20081014967
公开日2009年3月18日 申请日期2008年9月16日 优先权日2007年9月13日
发明者伊东庆, 宏 林, 福田安志 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1