书签 分享 收藏 举报 版权申诉 / 21

对嵌入式存储器元件的模式依赖性访问.pdf

  • 上传人:e1
  • 文档编号:1776056
  • 上传时间:2018-07-12
  • 格式:PDF
  • 页数:21
  • 大小:1.63MB
  • 摘要
    申请专利号:

    CN201410034860.7

    申请日:

    2014.01.24

    公开号:

    CN104808950A

    公开日:

    2015.07.29

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):G06F 3/06申请日:20140124|||公开

    IPC分类号:

    G06F3/06; G06F12/02

    主分类号:

    G06F3/06

    申请人:

    超威半导体公司

    发明人:

    朱韵鹏; 石贤帅; 刘彦

    地址:

    美国加利福尼亚州

    优先权:

    专利代理机构:

    上海胜康律师事务所31263

    代理人:

    李献忠

    PDF完整版下载: PDF下载
    内容摘要

    系统具有多个功能模块,所述多个功能模块包括第一功能模块和一个或多个其它功能模块。所述第一功能模块包括嵌入式存储器元件并且在包括第一模式和第二模式的多个模式中是可配置的。当所述第一功能模块在所述第一模式中时,对所述嵌入式存储器元件的访问被限制到所述第一功能模块。至少部分地基于所述第一功能模块在所述第二模式中为所述一个或多个其它功能模块中的至少一个提供对所述嵌入式存储器元件的访问。

    权利要求书

    权利要求书
    1.  一种电子系统,其包括:
    多个功能模块,其包括第一功能模块和一个或多个其它功能块,所述第一功能模块包括嵌入式存储器元件并且在包括第一模式和第二模式的多个模式中是可配置的,其中当所述第一功能模块在所述第一模式中时,对所述嵌入式存储器元件的访问被限制到所述第一功能模块;以及
    控制器,其用于至少部分地基于所述第一功能模块在所述第二模式中为所述一个或多个其它功能模块中的至少一个提供对所述嵌入式存储器元件的访问。

    2.  如权利要求1所述的电子系统,其中所述控制器将来自所述一个或多个其它功能模块的一个的请求中指定的逻辑地址转换成所述嵌入式存储器元件的物理地址。

    3.  如权利要求02所述的电子系统,其中:
    所述控制器包括地址转换表以在所述第一功能模块在所述第二模式中时将所述逻辑地址映射到所述嵌入式存储器元件的所述物理地址;
    响应于所述第一功能模块从所述第二模式切换到所述第一模式,所述控制器从所述地址转换表移除所述逻辑地址到所述嵌入式存储器元件的所述物理地址的映射。

    4.  如权利要求2所述的电子系统,其中:
    所述多个功能模块的每个功能模块包括一个或多个嵌入式存储器元件;
    所述多个功能模块的每个功能模块在第一模式和第二模式中是可配置的;
    在每个功能模块的所述第一模式中,所述功能模块的所述一个或多个嵌入式存储器元件仅可由所述功能模块访问;
    在每个功能模块的所述第二模式中,所述控制器是可配置的以向所述多个功能模块的至少一个其它功能模块提供对所述功能模块的所述一个或多个嵌入式存储器元件的访问。

    5.  如权利要求40所述的电子系统,其中所述多个功能模块的所述嵌入式存储器元件彼此串联耦合并与所述控制器串联耦合在链中,所述链将存储器访问请求从所述控制器提供到所述多个功能模块的所述嵌入式存储器元件。

    6.  如权利要求50所述的电子系统,其中每个功能模块还包括与所述链分开耦合到所述控制器的接口,所述接口将存储器访问请求提供给所述控制器。

    7.  如权利要求05所述的电子系统,其中:
    所述多个功能模块的所述嵌入式存储器元件包括不同数据宽度的嵌入式存储器元件;
    所述链具有数据宽度;并且
    所述多个功能模块还包括与各自嵌入式存储器元件相关联的封装器以使所述各自嵌入式存储器元件的所述不同数据宽度适应所述链的所述数据宽度。

    8.  如权利要求5所述的电子系统,其中:
    所述控制器通过所述链将存储器访问请求提供给各自嵌入式存储器元件,其中所述存储器访问请求包括指定所述存储器访问请求所 针对的所述嵌入式存储器元件的令牌;并且
    所述多个功能模块还包括与各自嵌入式存储器元件相关联的解析器以解析所述令牌。

    9.  如权利要求04所述的电子系统,其还包括交叉互连件以使所述多个功能模块的所述嵌入式存储器元件与所述控制器耦合。

    10.  如权利要求1所述的电子系统,其中所述第一功能模块在操作模式中时被配置在所述第一模式中,并且在空闲模式中时被配置在所述第二模式中。

    11.  如权利要求010所述的电子系统,其中:
    所述第一功能模块还包括所述嵌入式存储器元件外部的逻辑电路;
    所述逻辑电路处于在所述操作模式中接收功率并在所述空闲模式中被电源门控的第一电源域中;并且
    所述嵌入式存储器元件处于在所述操作模式中和在所述空闲模式中接收功率的第二电源域中。

    12.  如权利要求010所述的电子系统,其中:
    所述第一功能模块包括图形引擎;
    所述一个或多个其它功能模块包括显示控制器;
    所述第二模式包括静态屏幕模式,在所述静态屏幕模式中,图像在连续帧内保持不变;并且
    所述第一模式包括所述图像在连续帧内变化的模式。

    13.  一种方法,其包括:
    在包括多个功能模块的系统中,所述多个功能模块包括第一功能模块和一个或多个其它功能模块,所述第一功能模块包括嵌入式存储器元件:
    当所述第一功能模块在第一模式中时,将访问所述嵌入式存储器元件限制到所述第一功能模块;以及
    至少部分地基于所述第一功能模块在第二模式中为所述一个或多个其它功能模块中的至少一个提供对所述嵌入式存储器元件的访问。

    14.  如权利要求013所述的方法,其中所述系统还包括耦合到所述多个功能模块的控制器,所述方法还包括:
    在所述控制器中,当所述第一功能模块在所述第二模式中时,将来自所述一个或多个其它功能模块的各自功能模块的请求所指定的逻辑地址转换成所述嵌入式存储器元件的物理地址;
    读取被存储在所述嵌入式存储器元件中的所述物理地址处的数据;以及
    将所述数据提供给所述各自功能模块。

    15.  如权利要求14所述的方法,其中所述控制器包括地址转换表,所述方法还包括:
    当所述第一功能模块在所述第二模式中时,将所述逻辑地址到所述物理地址的映射添加到所述地址转换表;以及
    响应于所述第一功能模块从所述第二模式切换到所述第一模式,从所述地址转换表移除所述逻辑地址到所述物理地址的所述映射。

    16.  如权利要求014所述的方法,其中:
    所述多个功能模块的每个功能模块在第一模式和第二模式中是可配置的并包括一个或多个嵌入式存储器元件;并且
    对于所述多个功能模块的每个功能模块,所述方法还包括:
    当所述功能模块在所述第一模式中时,将访问所述功能模块的所述一个或多个嵌入式存储器元件限制到所述功能模块;以及
    当所述功能模块在所述第二模式中时,向所述多个功能模块的至少一个其它功能模块提供对所述功能模块的所述一个或多个嵌入式存储器元件的访问。

    17.  如权利要求16所述的方法,其中:
    所述多个功能模块的所述嵌入式存储器元件彼此串联耦合并与所述控制器串联耦合在链中,所述链具有数据宽度;并且
    所述方法还包括:
    将存储器访问请求从所述控制器传输到所述链上,所述存储器访问请求针对具有与所述链的所述数据宽度不同的数据宽度的各自嵌入式存储器元件;以及
    从所述各自嵌入式存储器元件读取数据,所述读取包括使来自所述各自嵌入式存储器元件的所述数据宽度的所述数据适应所述链的所述数据宽度。

    18.  如权利要求17所述的方法,其中:
    所述存储器访问请求包括指定所述存储器访问请求针对所述各自嵌入式存储器元件的令牌;并且
    所述方法还包括解析所述令牌来确定所述存储器访问请求针对所述各自嵌入式存储器元件。

    19.  如权利要求13所述的方法,其中:
    所述第一功能模块还包括所述第一嵌入式存储器元件外部的逻辑电路;并且
    所述方法还包括:
    当所述第一功能模块在操作模式中时,将所述第一功能模块配置在所述第一模式中;
    在所述操作模式中,提供功率给所述嵌入式存储器元件和所述逻辑电路;
    当所述第一功能模块在空闲模式中时,将所述第一功能模块配置在所述第二模式中;和
    在所述空闲模式中,提供功率给所述嵌入式存储器元件和电源门控所述逻辑电路。

    20.  一种非短暂计算机可读存储介质,其存储被配置由系统中的控制器执行的一个或多个程序,所述系统包括所述控制器、第一功能模块和一个或多个其它功能模块,所述第一功能模块包括嵌入式存储器元件并在第一模式和第二模式中是可配置的,所述一个或多个程序包括:
    用以在所述第一功能模块在所述第二模式中时将逻辑地址到所述嵌入式存储器元件的物理地址的映射添加到地址转换表的指令;以及
    响应于所述第一功能模块从所述第二模式切换至所述第一模式从所述地址转换表移除所述逻辑地址到所述物理地址的所述映射的指令。

    说明书

    说明书对嵌入式存储器元件的模式依赖性访问
    技术领域
    本发明实施方案一般涉及存储器管理,且更具体地涉及对嵌入功能模块中的存储器元件的模式依赖性访问。
    背景技术
    电子系统可包括具有较低等待时间的存储器元件(诸如寄存器和高速缓冲存储器)以及高等待时间存储器,诸如主存储器。访问高等待时间存储器比访问低等待时间存储器花费更长时间并且消耗更多功率。然而,高等待时间存储器的容量大于低等待时间存储器的容量。此外,对低等待时间存储器的访问可能被限制到系统内的特定功能模块。
    发明内容
    在一些实施方案中,电子系统具有多个功能模块,其包括第一功能模块和一个或多个其它功能模块。所述第一功能模块包括嵌入式存储器元件并且在包括第一模式和第二模式的多个模式中是可配置的。当第一功能模块在第一模式中时,对嵌入式存储器元件的访问被限制到第一功能模块。该电子系统还包括控制器从而至少部分地基于第一功能模块在第二模式中为一个或多个其它功能模块中的至少一个提供对嵌入式存储器元件的访问。
    在一些实施方案中,方法在具有多个功能模块的系统中执行,所述多个功能模块包括第一功能模块和一个或多个其它功能模块。第一功能模块包括嵌入式存储器元件。在该方法中,当第一功能模块在第 一模式中时,对嵌入式存储器元件的访问被限制到第一功能模块。至少部分地基于第一功能模块在第二模式中为一个或多个其它功能模块中的至少一个提供对嵌入式存储器元件的访问。
    在一些实施方案中,非短暂计算机可读存储介质存储被配置由控制器执行的一个或多个程序。控制器是系统的一部分,所述系统也包括第一功能模块和一个或多个其它功能模块。第一功能模块包括嵌入式存储器元件并且在第一模式和第二模式中是可配置的。一个或多个程序包括当第一功能模块在第二模式中时将逻辑地址到嵌入式存储器元件的物理地址的映射添加到地址转换表的指令。一个或多个程序也包括响应于第一功能模块从第二模式切换至第一模式从地址转换表移除逻辑地址到物理地址的映射的指令。
    附图说明
    本实施方案通过举例进行示出且不意在受限于附图中的图。
    图1和图2是根据一些实施方案的包括具有嵌入式存储器元件的多个功能模块的系统的方框图。
    图3是根据一些实施方案的系统的方框图,在所述系统中,功能模块包括与控制器耦合在链中的多个嵌入式存储器元件。
    图4是根据一些实施方案的系统的方框图,在所述系统中,多个功能模块中的嵌入式存储器元件通过链与控制器耦合。
    图5是根据一些实施方案的系统的方框图,在所述系统中,多个功能模块中的嵌入式存储器元件通过交叉互连件与控制器耦合。
    图6是根据一些实施方案的示出访问嵌入式存储器元件的方法的流程图。
    图7是根据一些实施方案的系统的方框图,在所述系统中,图 1-图5的任何图的控制器的功能在固件中进行实施。
    在整个附图和说明书中,相同的参考数字指代相应的部件。
    具体实施方式
    现在将详细参考各种实施方案,附图中示出了各种实施方案的实例。在下列详述中,陈述了许多具体的细节以提供对本公开的深入理解。然而,可以不使用这些具体细节来实践一些实施方案。在其它实例中,公知方法、过程、组件和电路没有被详细描述以免不必要地模糊实施方案的各方面。
    图1是根据一些实施方案的系统100的方框图,系统100包括多个功能模块102-0至102-N,其中N是大于或等于1的整数。功能模块102-0至102-N中的每个包括逻辑电路104和一个或多个嵌入式存储器元件106。嵌入式存储器元件106的实例包括但不限于寄存器、寄存器阵列和高速缓冲存储器(例如,使用静态随机存取存储器(SRAM)进行实施)。系统100中的不同的嵌入式存储器元件106可以具有不同的尺寸,包括不同的数据宽度和不同的数据深度。
    功能模块102-0至102-N被耦合到存储器控制器112,存储器控制器112被耦合到存储器114(例如主存储器)。在一些实施方案中,存储器114使用动态随机存取存储器(DRAM)来实施。在一些实施方案中,存储器114是双数据率(DDR)存储器。存储器控制器112为功能模块102-0至102-N提供对存储器114的访问。例如,存储器控制器112执行地址转换(例如,使用可使用页表来实施的地址转换表)以将来自功能模块102-0至102-N的存储器访问请求指定的逻辑地址转换成各自位置在存储器114中的物理地址。然后从存储器114中的这些物理地址读取数据或将数据写入存储器114中的这些物理地址。存储器114是全局存储器,因为它可以由所有功能模块102-0至102-N进行访问。
    功能模块102-0至102-N也被耦合到控制器108。控制器108可为功能模块102-0至102-N中的每个提供对嵌入式存储器元件106的访问,这取决于嵌入式存储器元件106被如何配置。例如,每个嵌入式存储器元件106可以被配置为局部存储器元件或全局存储器元件。当被配置为局部存储器元件时,嵌入式存储器元件106仅可由嵌入式存储器元件106所位于的功能模块102进行访问。当被配置为全局存储器元件时,嵌入式存储器元件106可以由嵌入式存储器元件106所位于的功能模块102之外的其它功能模块102进行访问。
    控制器108确定被配置为全局存储器的嵌入式存储器元件106可用于其它功能模块102、收集与嵌入式存储器元件106相关联的一个或多个物理地址以及在地址转换表110中将一个或多个逻辑地址映射到与嵌入式存储器元件106相关联的一个或多个物理地址。控制器108随后从其它功能模块102中的一个接收存储器访问请求,存储器访问请求指定映射到与嵌入式存储器元件106相关联的物理地址的逻辑地址。控制器108将请求路由(如更新为指定物理地址)到嵌入式存储器元件106,其中执行对应于该请求的存储器访问操作。当嵌入式存储器元件106被重新配置为局部存储器元件时,控制器108将与嵌入式存储器元件106相关联的一个或多个物理地址释放(例如,通过从地址转换表110删除相应映射)。在这点上,嵌入式存储器元件106不再是其它功能模块102可访问的。功能模块102-0至102-N可以每个相对于其嵌入式存储器元件106被配置在第一模式或第二模式中。在第一模式中,各自功能模块102中的一个或多个嵌入式存储器元件106被配置为局部存储器元件,使得它们仅可由各自功能模块102访问。在第二模式中,各自功能模块102中的一个或多个嵌入式存储器元件106被配置为全局存储器元件,使得它们可由各自功能模块之外(例如替代各自功能模块)的其它功能模块102访问。用于功能模块102-0至102-N中的每个的模式可通过在各自模式寄存器103中存储指定模式的值来设置。
    例如,当功能模块102-0在第二模式中时,控制器108可以将一 个或多个嵌入式存储器元件106分配给功能模块102-1至102-N中的一个或多个。在一个实例中,对应于功能模块102-0中的整个嵌入式存储器元件106的存储器空间被分配给功能模块102-1。在另一实例中,对应于嵌入式存储器元件106的第一部分的存储器空间被分配给功能模块102-1。对应于嵌入式存储器元件106的第二部分的存储器空间可被分配给功能模块102-N。在又一实例中,对应于功能模块102-0中的多个嵌入式存储器元件106的存储器空间被分配给功能模块102-1。其它实例也是可能的。这些分配例如通过将逻辑地址到物理地址的映射添加到地址转换表110来执行。
    在一些实施方案中,功能模块102-0至102-N基于它们的功率模式在第一模式和第二模式之间选择。例如,功能模块102可以在处于较高功率模式中时选择第一模式,并且可以在处于较低功率模式中时选择第二模式。第一模式因此可对应于功能模块102的高功率模式(例如,操作模式)并且第二模式因此可对应于功能模块102的低功率模式(例如,空闲模式或者可替代地比高功率模式具有更低功耗的另一操作模式)。
    通过使嵌入式存储器元件106在其功能模块102在第二模式中时全局可用,控制器108虚拟化由嵌入式存储器元件106提供的存储容量。控制器108可以被称为虚拟化控制器。
    该嵌入式存储器元件106具有比存储器114更低的等待时间:访问嵌入式存储器元件106所花费的时钟周期数少于访问存储器114所花费的时钟周期数。访问嵌入式存储器元件106也比访问存储器114消耗更少的功率。通过减少使用存储器114而支持全局可访问的嵌入式存储器元件106,使各自嵌入式存储器元件106在其相应功能模块102在第二模式中时全局可访问因此提供功率和性能益处。
    在一些实施方案中,功能模块102感知存储器访问请求是针对存储器114还是针对另一个功能模块中的嵌入式存储器元件106,并相 应地使存储器访问请求针对控制器112或控制器108。在一些实施方案中,存储器访问请求首先被提供给控制器108。如果控制器108不能服务该请求,因为该请求对应于存储器114中的存储器位置,则该请求被提供给控制器112。
    在一些实施方案中,功能模块102-0至102-N中的每个中的逻辑电路104在与一个或多个嵌入式元件106不同的电源域中。因此,当各自功能模块102在第二模式中(例如,由于是在空闲模式中)时,各自功能模块102的逻辑电路104可以被电源门控时,使得当各自功能模块102在第二模式中时,逻辑电路104不通电。然而,当各自功能模块102在第二模式中时,一个或多个嵌入式元件106继续接收功率。当各自功能模块102在第一模式中(例如,由于是在操作模式中)时,两个电源域都接收功率并从而逻辑电路104和一个或多个嵌入式元件106都接收功率。
    在一些实施方案中,控制器108包括数据压缩和解压缩模块111,数据压缩和解压缩模块111压缩写入嵌入式存储器元件106的数据并解压缩从嵌入式存储器元件106读取的数据(例如,在将数据提供给请求该数据的功能模块102之前)。类似地,存储器控制器112可以包括压缩和解压缩模块(未示出),其用于压缩写入存储器114的数据和解压缩从存储器114读取的数据(例如,在将数据提供给请求该数据的功能模块102之前)。
    在一些实施方案中,功能模块102-0至102-N、控制器108和/或存储器控制器112被实施在单个集成电路中并从而构成片上系统(SOC),而存储器114使用一个或多个外部集成电路来实施。其它配置也是可能的。
    图2是根据一些实施方案的为系统100(图1)的替换物的系统200的方框图。在系统200中,控制器202组合来自系统100的控制器108和控制器112的功能。控制器202因此可以为功能模块102-0至 102-N提供对存储器114的访问和对嵌入式存储器元件106的访问。当各自功能模块102在第一模式中时,对嵌入式存储器元件106的访问被限制到它所位于的各自功能模块102,并且当各自功能模块102在第二模式中时,嵌入式存储器元件106被提供给其它功能模块102,如关于系统100(图1)所描述的。控制器202包括地址转换表204,地址转换表204将逻辑地址转换成存储器114中和嵌入式存储器元件106中的物理地址。控制器202也可以包括数据压缩和解压缩模块206,其压缩写入嵌入式存储器元件106和/或存储器114的数据,并且解压缩从嵌入式存储器元件106和/或存储器114读取的数据。
    在一些实施方案中,系统100(图1)或200(图2)是多媒体处理系统,其中功能模块102-0至102-N包括显示控制器、视频解码器、视频编码器和图像处理器。这些功能模块102-0至102-N可以位于多媒体处理器(例如,其也包括控制器108和/或存储器控制器112,或控制器202)中。在一些实施方案中,系统100(图1)或200(图2)是图形处理系统,其中功能模块102-0至102-N包括显示控制器、视频解码器、视频编码器和三维(3D)图形引擎。这些功能模块102-0至102-N可以位于图形处理单元(GPU)(例如,其也包括控制器108和/或存储器控制器112,或控制器202)中。3D图形引擎渲染由显示控制器支配的图像。存储器114可以包括用于存储图像帧的帧缓冲器。
    在一些实施方案中,3D图形引擎的第二模式对应于静态屏幕模式,在静态屏幕模式中图像在连续帧内保持不变,以及3D图形引擎的第一模式对应于图像不是静态的而是在连续帧内变化的模式。在第二模式中,3D图形引擎是空闲的并且3D图形引擎的一个或多个嵌入式存储器元件106被分配给显示控制器,显示控制器使用它们来存储全部或部分静态图像。如果3D图形引擎的一个或多个嵌入式存储器元件106足以存储整个静态图像,则存储器114中的帧缓冲器可以被电源门控以节省功率。如果3D图形引擎的一个或多个嵌入式存储器元件106仅存储一部分的静态图像,则减少对帧缓冲器的存储器访问次数,从而节省功率。
    不同的网络拓扑结构可被用来将嵌入式存储器元件106耦合到控制器108。例如,嵌入式存储器元件106可以与控制器108耦合在链、交叉杆、网或其它拓扑结构中。
    图3是根据一些实施方案的系统300的方框图,在系统300中,功能模块302-0包括与控制器314耦合在链312(例如,环)中的多个嵌入式存储器元件106(例如,三个嵌入式存储器元件106)。另一个功能模块302-1也被耦合到控制器314。该系统300是系统100(图1)或200(图2)的实例。功能模块302-0是功能模块102-0(图1或图2)的实例。控制器314是控制器108(图1)或202(图2)的实例。功能模块302-1可以是功能模块102-1至102-N(图1或图2)中的一个的实例。系统300的其它元件(诸如存储器114(图1或图2))为了简化而未示出。
    功能模块302-0中的嵌入式存储器元件106中的每个具有相关联的封装器304(例如,封装器304-0、304-1或304-2),其作为到嵌入式存储器元件106的接口。当功能模块302-0在第一模式中时,封装器304-0、304-1和304-2通过局部输入308接收存储器访问请求并通过局部输出310提供对应于存储器访问请求的数据。通过局部输入308接收的存储器访问请求在功能模块302-0(例如,由逻辑电路104(图1或图2)在功能模块302-0内)内产生。通过局部输出310提供的数据被提供到例如功能模块302-0内的逻辑电路104(图1或图2)。当功能模块302-0在第二模式中时,封装器304-0、304-1和304-2通过链312从控制器314接收存储器访问请求并通过链312向控制器314提供对应于存储器访问请求的数据。例如,控制器314可以发信号给封装器304-0、304-1和304-2以选择通过链312提供的存储器访问请求。或者,封装器304-0、304-1和304-2可被配置为基于功能模块302-0的模式寄存器103(图1或图2)中存储的值来选择通过链312提供的存储器访问请求。
    各自存储器元件106可以具有与链312的数据宽度不同的数据宽度。封装器304-0、304-1和304-2使其各自嵌入式存储器元件106的 数据宽度适应于链312的数据宽度。
    链312使封装器304-0、304-1和304-2彼此耦合且与控制器314串联耦合。链312的第一节使控制器314耦合到封装器304-2。链312的第二节使封装器304-2耦合到封装器304-1。链312的第三节使封装器304-1耦合到封装器304-0。链的最后一节使封装器304-0耦合到控制器314。
    在一些实施方案中,控制器314通过链312传输指定存储器访问请求的令牌。各自令牌指定读取使能或写入使能信息、地址(例如,嵌入式存储器元件106的物理地址或其部分)、数据(例如用于写操作)以及脉冲串长度。令牌也可以指定相应存储器访问请求所针对的嵌入式存储器元件106的标识符(ID)。封装器304-0、304-1和304-2中的每个包括解析器306,解析器306解析令牌并确定令牌所指定的存储器访问请求是否针对封装器304-0、304-1或304-2中的嵌入式存储器元件106。例如,解析器306确定令牌中的ID与封装器304-0、304-1或304-2中的嵌入式存储器元件106的ID匹配。如果ID匹配,则解析器306提供所述令牌给嵌入式存储器元件106,嵌入式存储器元件106执行所请求的存储器访问操作。如果所请求的存储器访问操作是读取操作,则该嵌入式存储器元件106将数据输出到链312上。如果ID不匹配,则解析器306将令牌转发到链312中的下一个封装器304-0或304-1。
    在一些实施方案中,功能模块302-0中的封装器304-0、304-1和304-2、解析器306和嵌入式存储器元件106是在与功能模块302-0中的其它电路(例如,逻辑电路104,图1或图2)的电源域分开的专用电源域中。因此在第二模式中(以及在第一模式中),功能模块302-0中的封装器304-0、304-1和304-2、解析器306和嵌入式存储器元件106接收功率,而功能模块302-0中的其它电路(例如,逻辑电路104,图1或图2)可以在第二模式中被电源门控(而在第一模式中接收功率)。
    功能模块302-1包括控制器接口316,功能模块302-1通过控制器接口316将存储器访问请求提供给控制器314和从控制器314接收数据。当功能模块302-0在第二模式(例如,空闲模式)中时,控制器314可以将功能模块302-0中的全部或部分嵌入式存储器元件106分配给功能模块302-1。这种分配通过地址转换表110(图1)或204(图2)中的逻辑地址到物理地址的映射来执行。例如,控制器314从功能模块302-1的控制器接口316接收指定逻辑地址的存储器访问请求。控制器314使用地址转换表110或204将逻辑地址转换成物理地址。所述物理地址可以对应于嵌入式存储器元件106中的一个;如果对应,则控制器314将用于存储器访问请求的令牌传输到链312上。如果存储器访问请求是读取请求,则控制器314通过链312接收所请求的数据并通过控制器接口316将数据提供给功能模块302-1。当功能模块302-0从第二模式切换到第一模式时,控制器314将嵌入式存储器元件106释放到功能模块302-0。例如,控制器314从地址转换表110移除相关映射。
    在一些实施方案中,功能模块302-0是3D图形引擎,功能模块302-1是显示控制器,3D图形引擎的第二模式对应于静态屏幕模式,在静态屏幕模式中图像在连续帧内是固定的,并且3D图形引擎的第一模式对应于3D图形引擎渲染从帧到帧变化的图像的模式。或者,功能模块302-1对应于显示控制器并且功能模块302-0对应于视频解码器或视频编码器。其它实例也是可能的。
    图4是根据一些实施方案的系统400的方框图,在系统400中,多个功能模块402-0、402-1和402-2中的嵌入式存储器元件106彼此耦合并通过链408(例如,环)耦合到控制器410。系统400是系统100(图1)或200(图2)的实例。功能模块402-0至402-2是功能模块102-0至102-N(图1或图2)的实例。控制器410是控制器108(图1)或202(图2)的实例。系统400的其它元件(如存储器114(图1或图2))为了简化而未示出。
    功能模块402-0、402-1和402-2中的嵌入式存储器元件106中的每个具有相关联的封装器404,封装器404包括解析器306并且如关于封装器304(图3)所述的那样运行。在图4的实例中,第一功能模块402-0具有在封装器404-0中的单个嵌入式存储器元件106。第二功能模块402-1具有在各自封装器404-1至404-2中的两个嵌入式存储器元件106。第三功能模块402-2具有在各自封装器404-3至404-4中的两个嵌入式存储器元件106。链408使封装器404-0至404-4彼此耦合并与控制器410串联耦合,如图所示。每个嵌入式存储器元件106在其功能模块402-0、402-1或402-2在第一模式中时是局部可访问的,以及在其功能模块402-0、402-1或402-2在第二模式中时是全局可访问的。控制器410控制这种全局可访问性,如先前关于控制器108(图1)、202(图2)和314(图3)所描述的。
    功能模块402-0、402-1和402-2中的每个具有控制器接口406,控制器接口406通过不同于链408的联接器耦合到控制器410。功能模块402-0、402-1和402-2提供存储器访问请求(例如,指定逻辑地址)到控制器410。如果存储器访问请求中指定的地址对应于嵌入式存储器元件106(例如,映射到存储器元件106的物理地址),则控制器410将指定存储器访问请求(例如,如参照图3描述的)的令牌传输到链408上。如果存储器访问请求是读取请求,则控制器410通过链408从读取请求所针对的嵌入式存储器元件106接收数据。控制器410通过各自控制器接口406将该数据提供给适当的功能模块402-0、402-1或402-2。
    在一些实施方案中,功能模块402-0、402-1和402-2的每个中的封装器404、解析器306以及嵌入式存储器元件106在与功能模块402-0、402-1或402-2中的其它电路(例如,逻辑电路104,图1或图2)的电源域分开的专用电源域中。因此在第二模式(以及第一模式)中,功能模块402-0、402-1和402-2的每个中的封装器404、解析器306以及嵌入式存储器元件106接收功率,而功能模块402-0、402-1和402-2的每个中的其它电路(例如,逻辑电路104,图1或图2)可以在 第二模式中被电源门控(而在第一模式中接收功率)。
    如果第一功能模块402-0在第一模式(例如,操作模式)中而第二和第三功能模块402-1和402-2在第二模式(例如,空闲模式)中,则在封装器404-1、404-2、404-3和404-4中的嵌入式存储器元件106可被分配给第一功能模块402-0。如果第二功能模块402-1在第一模式(例如,操作模式)中而第一和第三功能模块402-0和402-2在第二模式(例如,空闲模式)中,则在封装器404-0、404-3和404-4中的嵌入式存储器元件106可被分配给第二功能模块402-1。如果第三功能模块402-2在第一模式(例如,操作模式)中而第一和第二功能模块402-0和402-1在第二模式(例如,空闲模式)中,则在封装器404-0、404-1和404-2中的嵌入式存储器元件106可被分配给第三功能模块402-2。
    如果第一和第二功能模块402-0和402-1在第一模式(例如,操作模式)中而第三功能模块402-2在第二模式(例如,空闲模式)中,则在封装器404-3和404-4中的嵌入式存储器元件106可以完全被分配给第一功能模块402-0或第二功能模块402-1,或者可以在第一功能模块402-0和第二功能模块402-1之间进行划分。当第三功能模块402在第二模式(例如,空闲模式)中时,对于在第一模式(例如,操作模式)中的功能模块402的其它对,可以执行类似的分配。
    如果所有功能模块402-0、402-1和402-2在第一模式中,则封装器404-0至404-4的每个中的嵌入式存储器元件106仅可由它所嵌入的功能模块402-0、402-1或402-2访问。
    系统400中功能模块402的数目可以变化。例如,显示控制器、视频解码器、视频编码器和图像处理器或3D图形引擎中的嵌入式存储器元件106可以使用诸如链408的链进行耦合。
    图5是根据一些实施方案的系统500的方框图,在系统500中,多个功能模块502-0和502-1中的嵌入式存储器元件106通过交叉互 连件510与控制器508耦合。该系统500是系统100(图1)或200(图2)的实例。功能模块502-0和502-1是功能模块102-0至102-N(图1或图2)的实例。控制器508是控制器108(图1)或202(图2)的实例。系统500的其它元件(如存储器114(图1或图2))为了简化而未示出。虽然交叉互连件510被显示为控制器508的部分,但是它可以与控制器508分开。
    嵌入式存储器元件106中的每个具有相关联的封装器504,封装器504通过交叉互连件510耦合到控制器508。第一功能模块502-0具有在封装器504-0中的嵌入式存储器元件106。第二功能模块502-1具有在封装器504-1中的嵌入式存储器元件106和在封装器504-2中的嵌入式存储器元件106。封装器504-0至504-2使嵌入式存储器元件106的数据宽度适应由控制器508使用的数据宽度。因为交叉互连件510在控制器508和封装器504-0至504-2中的每个之间提供直接通信,所以封装器504-0至504-2不包括解析器306。
    功能模块502-0和502-1中的每个包括控制器接口506以通过交叉互连件510与该控制器508通信。功能模块502-0和502-1通过控制器接口506将存储器访问请求提供给控制器508并响应于存储器访问请求通过控制器接口506从控制器508接收数据。对于针对嵌入式存储器元件106的存储器访问请求,该控制器通过交叉互连件510将存储器访问请求提供给相应的封装器504-0、504-1和504-2。对于读取请求,控制器508通过交叉互连件510从封装器504-0、504-1和504-2接收数据进行响应。
    在一些实施方案中,通过控制器508执行对嵌入式存储器元件106的全部访问,而不管模式如何。例如,当功能模块502-0或502-1在第一模式中时,使得它的嵌入式存储器元件106专用于局部使用,功能模块502-0或502-1通过将存储器访问请求通过它的控制器接口506传输到控制器508来访问它的嵌入式存储器元件106。所述控制器将所述存储器访问请求提供给封装器504-0、504-1和504-2。因此, 封装器504-0、504-1和504-2不具有局部输入308和局部输出310。(然而,可替代地,封装器504-0、504-1和504-2可以具有局部输入308和局部输出310以用于执行局部访问。)当功能模块502-0或502-1在第二模式中时,它的嵌入式存储器元件106可以被分配给其它功能模块502-1或502-0,其它功能模块502-1或502-0通过将存储器访问请求通过控制器接口506提供给控制器508来通过控制器508访问嵌入式存储器元件106。
    在一些实施方案中,功能模块502-0和502-1的每个中的封装器504和嵌入式存储器元件106在与功能模块502-0或502-1中的其它电路(例如,逻辑电路104,图1或图2)的电源域分开的专用电源域中。因此在第二模式(以及第一模式)中,功能模块502-0和502-1的每个中的封装器504和嵌入式存储器元件106接收功率,而功能模块502-0和502-1的每个中的其它电路(例如,逻辑电路104,图1或图2)可以在第二模式中被电源门控(而在第一模式中接收功率)。
    在一些实施方案中,显示控制器、视频解码器、视频编码器和图像处理器或3D图形引擎通过诸如交叉互连件510的互连件耦合到控制器108。
    图6是根据一些实施方案的示出访问嵌入式存储器元件106的方法600的流程图。在具有多个功能模块的系统中执行方法600(602),多个功能模块包括第一功能模块和一个或多个其它功能模块。第一功能模块包括嵌入式存储器元件106。例如,在系统100(图1)或200(图2)中执行方法600,系统100(图1)或200(图2)的实例包括系统300(图3)、400(图4)和500(图5)。多个功能模块的实例包括功能模块102-0至102-N(图1和图2);功能模块302-0和302-1(图3);功能模块402-0至402-2(图4);以及功能模块502-0和502-1(图5)。
    第一功能模块相对于嵌入式存储器元件106被配置在与第二模式相对的第一模式中(604)。
    当第一功能模块在第一模式中时,对嵌入式存储器元件106的访问被限制到第一功能模块(606)。
    在一些实施方案中,当第一功能模块在第一模式中时,提供功率给嵌入式存储器元件106和第一功能模块中嵌入式存储器元件106外部的逻辑电路(例如逻辑电路104,图1或图2)(608)。
    在一些实施方案中,响应于第一功能模块从第二模式切换到第一模式,从地址转换表110(图1)或204(图2)移除逻辑地址到嵌入式存储器元件106的物理地址的映射(610)。从地址转换表110或204移除此映射将访问嵌入式存储器元件106限制到第一功能模块。
    第一功能模块被配置在第二模式中(612)。至少部分地基于第一功能模块在第二模式中为一个或多个其它功能模块中的至少一个提供对嵌入式存储器元件106的访问(614)。例如,控制器108(图1)或202(图2)将所述嵌入式存储器元件106分配给其它功能模块中的一个,或将所述嵌入式存储器元件106的各自部分分配给其它功能模块的各自功能模块。提供访问嵌入式存储器元件106可以进一步基于被提供访问的所述至少一个功能模块在操作模式中。
    在一些实施方案中,当第一功能模块在第二模式中时,提供功率给嵌入式存储器元件106,而第一功能模块中嵌入式存储器元件106外部的逻辑电路(例如逻辑电路104,图1或图2)被电源门控(616)。
    在一些实施方案中,当功能模块在第二模式中时,逻辑地址到嵌入式存储器元件106的物理地址的映射被添加到地址转换表110(图1)或204(图2)(618)。在地址转换表110或204中包括映射允许其它功能模块访问嵌入式存储器元件106。
    在一些实施方案中,来自一个或多个其它功能模块的各自功能模块的请求所指定的逻辑地址被转换成嵌入式存储器元件106的物理地址(620)。存储在嵌入式存储器元件106中的物理地址处的数据被 读取并被提供给各自功能模块。
    第一功能模块可以在第一模式和第二模式之间交替,以使重复方法600。此外,对于在第一功能模块和/或在其它功能模块中的多个嵌入式存储器元件106中的每个,可以执行方法600。
    虽然该方法600包括按特定顺序出现发生的多个操作,但是应该明白,方法600可以包括更多或更少的操作。两个或多个操作可以被组合成单个操作,操作的顺序可以变化,并且两个或多个操作的执行可以重叠。
    在一些实施方案中,控制器108(图1)或202(图2)(例如,控制器314,图3;控制器410,图4;或控制器508,图5)用硬件实施。或者,控制器108(图1)或202(图2)的功能用软件(例如固件)实施。例如,方法600(图6)的全部或部分可以由软件(例如固件)实施。非短暂计算机可读存储介质可以存储用于实施控制器108(图1)或202(图2)的功能和/或用于执行方法600的全部或部分的指令。
    图7是根据一些实施方案的系统700的方框图,在系统700中,控制器202(图2)的功能用固件实施。系统700是系统200(图2)的实例。在系统700中,只读存储器(ROM)702(例如,BIOS ROM)在非短暂计算机可读存储介质上存储控制器固件704。控制器固件704包括具有被配置为由控制器202执行的指令的一个或多个程序。例如,控制器202可以是或包括处理器,该处理器可以执行控制器固件704。(或者,存储控制器固件704以用于控制器108的ROM702可以耦合到系统100(图1)中的控制器108)。虽然控制器固件704在图7中被显示为存储在ROM702中,但是它可以交替地存储在耦合到控制器108的不同的非易失性存储器(例如闪速存储器、硬盘驱动器等)中。在一些实施方案中,控制器固件704包括具有指令的一个或多个程序,当由控制器202(或交替地,控制器108)执行指令时,所述指令使方法600的全部或部分被执行。
    在一些实施方案中,控制器固件704包括用来设置和/或跟踪功能模块102-0至102-N的模式的指令和用来通过维持地址转换表110(图1)或204(图2)控制地址转换的指令。例如,控制器固件704可以包括用来将逻辑到物理存储器地址转换添加到地址转换表110或204和从地址转换表110或204移除逻辑到物理存储器地址转换的指令,以提供对嵌入式存储器元件106的访问(例如,将嵌入式存储器元件106分配到功能模块102-0至102-N中的各自功能模块和解除到功能模块102-0至102-N中的各自功能模块的嵌入式存储器元件106的分配)。控制器固件704可以包括用来跟踪各自嵌入式存储器元件106的大小的指令,其中,所述嵌入式存储器元件106的分配根据它们的大小来执行。在一些实施方案中,控制器固件704包括用来当包含嵌入式存储器元件106的功能模块102从第二模式切换到第一模式时将数据从嵌入式存储器元件106回写到存储器114的指令。这种回写可以例如取决于是否设置了指示应当执行回写的标记。控制器固件704可以包括用于设置或复位该标记的指令。
    出于解释的目的,已经参照具体实施方案描述了前面的描述。然而,上面说明性的讨论并不意在是全面的或将所有实施方案限制到所公开的精确形式。许多修改和变化根据上述教导是可能的。所公开的实施方案被选择和描述以便最好地解释基本原理及其实际应用,从而使本领域技术人员最好地实施各种实施方案进行各种修改来适合于特定的预期用途。

    关 键  词:
    嵌入式 存储器 元件 模式 依赖性 访问
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:对嵌入式存储器元件的模式依赖性访问.pdf
    链接地址:https://www.zhuanlichaxun.net/p-1776056.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1