通过存储器范围筛选器和可选择地址平坦化用于可配置存储器映射的SoC结构扩展制造技术

技术编号:18465975 阅读:25 留言:0更新日期:2018-07-18 16:00
所描述的是用于可配置存储器映射的各种SoC结构扩展。存储器请求数据路径可传送存储器请求。第一电路可识别具有处于基地址与限制地址之间的地址的任何存储器请求。第二电路可向存储器接口传送第一电路所识别的任何存储器请求,并且将默认存储器访问协议应用于第一电路未识别的任何存储器请求。第三电路可在多存储器接口指示符和地址平坦化指示符均被断言时修改存储器请求的地址。

Extension of SoC structure for configurable memory mappings through memory range filters and selectable address flattening

What is described is a variety of SoC structure extensions for configurable memory mappings. The memory request data path can transfer memory requests. The first circuit can identify any memory requests with addresses between the base address and the restricted address. The second circuit can transmit any memory requests identified by the first circuit to the memory interface, and apply the default memory access protocol to any memory requests that are not identified by the first circuit. The third circuit can modify the address of the memory request when both the multi memory interface indicator and the address flattening indicator are asserted.

【技术实现步骤摘要】
【国外来华专利技术】通过存储器范围筛选器和可选择地址平坦化用于可配置存储器映射的SoC结构扩展优先权要求本申请要求对美国专利申请序号14/998224(2015年12月24日提交,标题为“SOCFABRICEXTENSIONSFORCONFIGURABLEMEMORYMAPSTHROUGHMEMORYRANGESCREENSANDSELECTABLEADDRESSFLATTENING”)的优先权,其通过引用以其整体被结合。
技术介绍
计算机系统中的存储器映射可基于多个因素(例如各种范围的预计目的、各范围的存储器的类型、以及可访问或使用各种范围的存储器的系统组件)来划分不同范围的系统的存储器。存储器映射还可暗示用于各种范围的存储器的访问协议,以便确保全部系统元件与存储器资源正确地交互。例如,对于基于Intel®的个人计算机(PC)系统的存储器映射演进成适应结合到系统架构中的新技术和方法论,同时保持与先前系统架构的向后兼容性。为了与现有PC系统兼容,新系统架构应当考虑这类“遗留”PC存储器映射。(Intel是美国和/或其他国家中的Intel公司的商标。)同时,为了鉴于诸如成本和开发时间之类的因素的灵活性,组件设计已愈加变得接受SoC(芯片上系统)设计方法论。一些SoC组件可设计成为了灵活性的目的而结合IP(知识产权)核心以及互连IP核心的结构。某种SoC结构开发已支持遗留PC系统存储器映射,并且因此这类系统的架构可与存储器子系统紧密耦合。但是,那种紧密耦合可能干扰SoC系统架构中的灵活性。附图说明从下面给出的详细描述以及从本公开的各种实施例的附图,将会更全面地理解本公开的实施例。但是,虽然附图辅助解释和理解,但是它们只是辅助,而不应当被采用为将本公开限制于本文所描绘的具体实施例。图1示出遗留PC存储器映射的一实施例。图2示出与两个存储器接口和平坦化的(flattened)地址空间紧密耦合的遗留PC存储器映射的一实施例。图3示出用于处理存储器请求的结构的算法的一实施例。图4示出结构的配置寄存器的一实施例。图5-7示出SoC存储器映射和结合用于处理存储器请求的结构的对应SoC存储器架构的实施例。图8示出实现用于处理存储器请求的算法的结构的一部分的一实施例。图9示出用于处理新存储器请求的结构的方法的一实施例。图10示出按照本公开的一些实施例的具有用于提供用于可配置存储器映射的各种SoC结构扩展的机制的计算装置。具体实施方式一些先前SoC结构已设计成支持遗留PC存储器映射。图1示出遗留PC存储器映射的一实施例。如所示,存储器映射100包括0与可配置低边界之间的低存储器地址范围、可配置低边界与4GB之间的低MMIO地址范围、4GB与可配置高边界之间的高存储器地址范围以及可配置高边界与物理存储器顶部之间的高MMIO地址范围。低存储器地址范围可选地可包括VGA地址范围(其可跨越从0xA_0000至0xB_FFFF的地址)和/或一个或多个DOXMMIO地址范围(其可跨越从0xF_0000至0xF_FFFF或者从0xE_0000至0xE_FFFF的地址)。对DRAM的存储器访问可具有比对本地存储器的访问高得多的等待时间,并且因此可影响系统性能。但是,在具有多个存储器接口的系统中,一个存储器接口上的存储器访问的等待时间可“隐藏”另一个存储器接口上的存储器访问的等待时间的至少一部分。如果多个存储器访问可并行地执行,则也许有可能增加系统性能。理论上,这可将存储器访问带宽增加高达二的因子。为了利用这类潜在性能增益,其他先前SoC结构已设计成遗留PC存储器映射,同时使用多通道存储器条带化(striping)。图2示出与两个存储器接口和平坦化的地址空间紧密耦合的遗留PC存储器映射的一实施例。如同存储器映射100那样,存储器映射200包括0与可配置低边界之间的低存储器地址范围、可配置低边界与4GB之间的低MMIO地址范围、4GB与可配置高边界之间的高存储器地址范围以及可配置高边界与物理存储器顶部之间的高MMIO地址范围。但是,与存储器映射100不同,存储器映射200的低存储器和高存储器地址范围被条带化,并且对那些地址范围的存储器访问备选地映射到两个存储器接口。更具体来说,对存储器映射200中的地址的一些访问可映射到第一存储器接口210(例如“存储器接口0”),而其他访问可映射到第二存储器接口220(例如“存储器接口1”)。存储器接口的选择可基于与0或更多物理地址位进行XOR的物理地址位[6]。在一些实施例中,条带化可将存储器的交替64字节部分映射到两个不同的存储器接口(尽管在其他实施例中,可映射交替32字节部分或者另一个大小的交替部分)。虽然描述为支持两个存储器接口,但是在其他实施例中,存储器映射200可支持多于两个存储器接口。类似地,条带化可支持多于两个存储器接口。存储器映射200的缺点在于,存储器子系统可变得紧密耦合到所述结构,并且可不允许其他(非结构)主控(Master)单独访问存储器子系统。例如,第一存储器接口210和第二存储器接口220的地址空间被“平坦化”,使得存储器映射中的非邻接地址可映射到通过第一存储器接口210和第二存储器接口220所访问的物理存储器装置中的邻接地址的范围。但是,如果这个平坦化没有在SoC的存储器子系统中实现,则有权访问子系统的其他主控不会感知结构主控所感知的存储器地址与存储器子系统目标之间的相同映射。以下讨论的是用于可配置存储器映射的各种SoC结构扩展。这些扩展有利地可增强SoC系统架构的灵活性,并且相应地可实现存储器系统拓扑和存储器映射的更宽阵列。例如,这些扩展可增强增加结构上的存储器接口的数量以增加带宽的能力,并且可允许直接连接到存储器子系统的非结构主控感知与结构主控相同的、在存储器地址和存储器子系统目标之间的映射。这些扩展还可适应与遗留PC存储器映射不同的存储器映射。在以下描述中,讨论了许多细节,以提供对本公开的实施例的更透彻解释。但是,对本领域的技术人员将显而易见的是,在没有这些具体细节的情况下也可实践本公开的实施例。在其他情形下,公知的构造和装置以框图形式来示出而不是详细示出,以避免使本公开的实施例难以理解。要注意,在实施例的对应附图中,信号采用线条来表示。一些线条可以较粗以指示更大数量的组成信号路径,和/或在一个或更多端具有箭头以指示信息流的方向。这类指示不是意在进行限制。相反,线条是与一个或多个示范实施例结合用来促进对电路或逻辑单元的更简单理解。如由设计需要和偏好所规定的任何所表示的信号实际上可包括可沿任一方向行进的一个或多个信号并且可采用任何适当类型的信号方案来实现。贯穿本说明书并在权利要求中,术语“连接”意味着在没有任何中间装置的情况下所连接的事物之间的直接电、机械或磁连接。术语“耦合”意味着所连接的事物之间的直接电、机械或磁连接或者通过一个或多个无源或有源中间装置的间接连接。术语“电路”或“模块”可表示一个或多个无源和/或有源组件,其布置成相互协作以提供预期功能。术语“信号”可表示至少一个电流信号、电压信号、磁信号或数据/时钟信号。“一(a/an)”和“所述”的含意包括复数引用。“在……中”的含意包括“在……中”和“在……上”。术语“基本上”、“靠近”、“接近”、“附近”和“大约”一般表示本文档来自技高网...

【技术保护点】
1.一种设备,包括:存储器请求数据路径,可操作以传送存储器请求;第一电路,可操作以识别具有处于一对或多对基地址和限制地址指示符中的任一对之间的地址的任何存储器请求;第二电路,可操作以向存储器接口传送所述第一电路所识别的任何存储器请求,并且将默认存储器访问协议应用于所述第一电路未识别的任何存储器请求;以及第三电路,可操作以在多存储器接口指示符和地址平坦化指示符均被断言时修改存储器请求的地址。

【技术特征摘要】
【国外来华专利技术】2015.12.24 US 14/9982241.一种设备,包括:存储器请求数据路径,可操作以传送存储器请求;第一电路,可操作以识别具有处于一对或多对基地址和限制地址指示符中的任一对之间的地址的任何存储器请求;第二电路,可操作以向存储器接口传送所述第一电路所识别的任何存储器请求,并且将默认存储器访问协议应用于所述第一电路未识别的任何存储器请求;以及第三电路,可操作以在多存储器接口指示符和地址平坦化指示符均被断言时修改存储器请求的地址。2.如权利要求1所述的设备,包括相应驱动所述基地址和限制地址指示符对的基地址和限制地址寄存器对。3.如权利要求1所述的设备,其中所述一对或多对基地址和限制地址指示符中的至少一对具有驱动筛选器启用指示符的对应筛选器启用寄存器。4.如权利要求3所述的设备,其中所述第一电路可以可操作以在对应筛选器启用指示符被断言时识别存储器请求。5.如权利要求1所述的设备,其中所述设备可包括多个存储器接口,其中所述多个存储器接口中的至少一个存储器接口具有所述基地址和限制地址指示符对中的一对或多对。6.如权利要求1所述的设备,其中所述第三电路可以可操作以在存储器请求由所述第一电路所识别并且所述多存储器接口指示符和所述地址平坦化指示符均被断言时将所述存储器请求的地址位[M:6]设置成地址位{[M:Y],[(Y-2):6]}的值,并且在所述存储器请求是所述第一电路所未识别的并且所述多存储器接口指示符和所述地址平坦化指示符均被断言时将所述存储器请求的地址位[M:6]设置成地址位{[M-l:7]}的值,以及在所述多存储器接口指示符或者所述地址平坦化指示符被解除断言时使所述存储器请求的地址位[M:6]保持未修改。7.如权利要求1所述的设备,包括第一存储器接口和第二存储器接口。8.如权利要求7所述的设备,包括第四电路,可操作以基于条带化协议和散列协议之一来选择所述存储器请求数据路径上的存储器请求的所述第二存储器接口。9.一种系统,包括存储器、耦合到所述存储器的处理器以及用于允许所述处理器与另一个装置进行通信的无线接口,所述处理器包括权利要求1至8中任一项所述的设备。10.一种方法,包括:采用逻辑装置集合来识别存储器请求数据路径上具有处于一对或多对基地址和限制地址指示符中的任一对之间的地址的任何存储器请求;向存储器接口传送所述逻辑装置集合所识别的任何存储器请求;将默认存储器访问协议应用于所述逻辑装置集合未识别的任何存储器请求;以及在地址平坦化指示符被断言的同时在多个存储器接口可用时修改存储器请求的地址。11.如权利要求10所述的方法,包括:在对应筛选器启用指示符被断言时采用所述逻辑装置集合来识别存储器请求。12....

【专利技术属性】
技术研发人员:JS尼尔
申请(专利权)人:英特尔IP公司
类型:发明
国别省市:美国,US

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

1