当前位置: 首页 > 专利查询>苹果公司专利>正文

按需存储器分配制造技术

技术编号:35255594 阅读:8 留言:0更新日期:2022-10-19 10:11
本发明专利技术公开了涉及为请求电路(210)动态分配和映射专用存储器的技术。所公开的电路(220)可接收专用地址并将该专用地址转译为虚拟地址(MMU(230)然后可将该虚拟地址转译为物理地址以实际访问存储元件(240))。在一些实施方案中,专用存储器分配电路(220)被配置为在尚未建立页表信息的情况下生成该页表信息,并且为请求映射专用存储器页。在各种实施方案中,这可有利地允许动态专用存储器分配,例如,以便为具有不同类型工作负载的图形着色器有效地分配存储器。所公开的用于页表信息的高速缓存技术可相对于传统技术改善性能。此外,所公开的实施方案可促进跨越设备诸如图形处理器的存储器合并。器的存储器合并。器的存储器合并。

【技术实现步骤摘要】
【国外来华专利技术】按需存储器分配

技术介绍


[0001]本公开整体涉及计算机存储器管理,并且更具体地,涉及用于按需分配专用存储器的技术。
[0002]相关技术描述
[0003]处理器诸如图形处理单元(GPU)可以使用各种类型的存储器空间。例如,共享存储器空间可用于共享由多个处理器块处理的数据,而诸如着色器处理器之类的其他块也可在操作期间使用专用存储器空间。
附图说明
[0004]图1A是示出根据一些实施方案的示例性图形处理操作的概述的图示。
[0005]图1B是示出根据一些实施方案的示例性图形单元的框图。
[0006]图2是示出根据一些实施方案的具有专用存储器分配器电路的示例性设备的框图。
[0007]图3是示出根据一些实施方案的具有存储器分配器电路和用于页表信息的高速缓存的更详细系统的框图。
[0008]图4是示出根据一些实施方案的示例性页表分级结构的图。
[0009]图5是示出根据一些实施方案的用于响应于请求创建页表条目并映射页的示例性方法的流程图。
[0010]图6是示出根据一些实施方案的用于处理包括专用存储器空间中的地址的访问请求的更一般方法的流程图。
[0011]图7是根据一些实施方案的示出示例性计算设备的框图。
[0012]图8是示出根据一些实施方案的存储电路设计信息的示例性计算机可读介质的框图。
[0013]本说明书包括对各种实施方案的参考,以指示本公开并非旨在提及一个特定具体实施,而是提及落入包括所附权利要求书的本公开的实质内的一系列实施方案。特定特征、结构或特性可以与本公开一致的任何合适的方式被组合。
[0014]在本公开内,不同实体(其可被不同地称为“单元”、“电路”、其他部件等)可被描述或声称成“被配置为”执行一个或多个任务或操作。此表达方式—被配置为[执行一个或多个任务]的[实体]—在本文中用于指代结构(即,物理的事物,诸如电子电路)。更具体地,此表达方式用于指示此结构被布置成在操作期间执行一个或多个任务。结构可被说成“被配置为”执行某个任务,即使该结构当前并非正被操作。“被配置为执行着色器程序的可编程着色器处理器”旨在涵盖例如在操作期间执行此功能的电路,即使所涉及的电路当前未被使用(例如,该电路未连接到电源)。因此,被描述或表述成“被配置为”执行某个任务的实体是指用于实施该任务的物理的事物,诸如设备、电路、存储有可执行程序指令的存储器等
等。该短语在本文中不被用于指代无形的事物。
[0015]术语“被配置为”并不旨在意指“可配置为”。例如,未经编程的FPGA不会被认为是“被配置为”执行某个特定功能,虽然其可能“可配置为”执行该功能。在适当编程之后,FPGA然后可被配置为执行该功能。
[0016]所附权利要求书中的表述结构“被配置为”执行一个或多个任务明确地旨在对该权利要求要素不援引35 U.S.C.
§
112(f)。于是,所提交的本申请中没有任何权利要求旨在要被解释为具有装置



功能要素。如果申请人在申请过程中想要援引112(f)部分,则其将使用“用于[执行功能]的装置”结构来表述权利要求的要素。
[0017]如本文所用,术语“基于”用于描述影响确定的一个或多个因素。此术语不排除可能有附加因素可影响确定。也就是说,确定可仅基于指定的因素或基于所指定的因素及其他未指定的因素。考虑短语“基于B确定A”。此短语指定B是用于确定A的因素或者B影响A的确定。此短语并不排除A的确定也可基于某个其他因素诸如C。此短语也旨在覆盖A仅基于B来确定的实施方案。如本文所用,短语“基于”与短语“至少部分地基于”是同义的。
[0018]此外,如本文所用,术语“第一”、“第二”、“第三”等并不一定暗示元件之间的排序(例如,时间顺序)。例如,对“第一”图形操作和“第二”图形操作的参考并不暗示对图形操作的排序,缺少限制这些操作之间的时间关系的附加语言。简而言之,诸如“第一”、“第二”等的参考用作标记,以便于在说明书和所附权利要求中进行参考。
具体实施方式
[0019]图形处理概述
[0020]参见图1A,其示出了示出用于处理图形数据的示例性处理流程100的流程图。在一些实施方案中,变换和照明步骤110可涉及基于限定的光源位置、反射率等处理从应用程序接收的顶点的照明信息,将顶点组装成多边形(例如,三角形),以及/或者基于三维空间中的位置来将多边形转换为正确的大小和取向。剪辑步骤115可涉及丢弃在可视区域之外的多边形或顶点。光栅化步骤120可涉及在每个多边形内限定片段并且例如基于多边形顶点的纹理坐标来为每个片段分配初始色值。片段可指定它们重叠的像素的属性,但可基于组合多个片段(例如,在帧缓冲器中)和/或忽略一个或多个片段(例如,如果它们被其他对象覆盖)来确定实际像素属性。着色步骤130可涉及基于照明、阴影、隆起映射、半透明度等来改变像素分量。可将着色像素组装在帧缓冲器135中。现代GPU通常包括允许应用开发者定制着色和其他处理步骤的可编程着色器。因此,在各种实施方案中,图1A的示例性元件可以各种顺序执行,并行执行或省略。还可实施另外的处理步骤。
[0021]现在参见图1B,示出了根据一些实施方案的例示图形单元150的简化框图。在例示的实施方案中,图形单元150包括可编程着色器160、顶点管185、片段管175、纹理处理单元(TPU)165、图像写入单元170、和存储器接口180。在一些实施方案中,图形单元150被配置为使用可编程着色器160来处理顶点数据和片段数据两者,该可编程着色器可被配置为使用多个执行流水线或实例来并行处理图形数据。
[0022]在图示实施方案中,顶点管185可包括被配置为处理顶点数据的各种固定功能硬件。顶点管185可被配置为与可编程着色器160通信,以便协调顶点处理。在图示实施方案中,顶点管185被配置为将经处理的数据发送至片段管175和/或可编程着色器160以用于进
一步处理。
[0023]在图示实施方案中,片段管175可包括被配置为处理像素数据的各种固定功能硬件。片段管175可被配置为与可编程着色器160通信,以便协调片段处理。片段管175可被配置为在来自顶点管185和/或可编程着色器160的多边形上执行光栅化以生成片段数据。顶点管185和/或片段管175可耦接到存储器接口180(未示出耦接)以便访问图形数据。
[0024]在图示实施方案中,可编程着色器160被配置为接收来自顶点管185的顶点数据和来自片段管175和/或TPU 165的片段数据。可编程着色器160可被配置为对顶点数据执行顶点处理任务,该顶点处理任务可包括顶点数据的各种变换和/或调整。在例示的实施方案中,可编程着色器160还被配置为对像素数据执行片段处理任务,诸如像纹理和着色处理。可编程着色器160可包括用于并行处理数据的多个执行流水线。
[0025]在例示的实施方案中,TPU 165被配置为调度来自可编程着色器160的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种装置,包括:第一电路,所述第一电路被配置为请求使用第一地址访问专用存储器空间;专用存储器分配电路,所述专用存储器分配电路被配置为:确定虚拟空间中的页是否被映射用于所述第一地址;响应于确定页未被映射,生成所述专用存储器空间的页表信息并且将所述第一地址的专用存储器页映射到所述虚拟空间;以及基于所映射的专用存储器页为所述请求生成虚拟地址;以及存储器管理单元(MMU)电路,所述MMU电路被配置为将所述虚拟地址转译为所述装置的存储元件中的物理地址。2.根据权利要求1所述的装置,还包括:第一高速缓存电路,所述第一高速缓存电路被配置为高速缓存与来自所述第一电路的请求相对应的页表条目。3.根据权利要求2所述的装置,其中所述专用存储器分配电路包括:第二高速缓存电路,所述第二高速缓存电路被配置为针对多个不同的请求电路在页表分级结构的一个或多个非最低级别处高速缓存页表信息。4.根据权利要求3所述的装置,其中所述第二高速缓存电路包括页名录高速缓存和页目录高速缓存。5.根据权利要求1所述的装置,其中所述装置被配置为维持可用页的计数;并且其中响应于页保留请求,所述专用存储器分配电路被配置为递减所述计数并提供页授权响应。6.根据权利要求1所述的装置,其中所述专用存储器分配电路包括多个分布式单元和全局单元,每个分布式单元专用于着色器处理器集,所述全局单元被配置为与所述分布式单元通信以管理页请求。7.根据权利要求1所述的装置,其中所述专用存储器分配电路被进一步配置为:处理转译

无映射请求,所述转译

无映射请求指定在对应专用存储器页被映射到专用地址的虚拟地址的情况下将所述专用地址转译为虚拟地址,但不以其他方式映射所述地址的专用虚拟页。8.根据权利要求1所述的装置,其中所述专用存储器分配电路被进一步配置为:响应于取消映射请求从专用存储器页取消映射虚拟页。9.根据权利要求1所述的装置,其中为了基于所映射的专用存储器页为所述请求生成虚拟地址,所述专用存储器分配电路被配置为生成所述第一地址的散列,并且基于散列结果的部分来访问页表分级结构的多个级别。10.根据权利要求1所述的装置,其中所述页表信息包括多个分级级别,其中所述装置被配置为在每个级别处维护指示较低级别处的条目是否有效的跟踪信息,并且其中所述装置被配置为响应于使跟踪信息指示所述页不具有任何对应有效条目的一个或多个取消映射请求而释放所述页表分级结构的页。11.根据权利要求1所述的装置,其中所述装置被配置为访问第一页表分级结构以将所述第一地址转译为所述虚拟地址,并且访问第二页表分级结构以将所述虚拟地址转译为所述物理地址。
12.一种其上存储有设计信息的非暂态计算机可读存储介质,所述设计信息以半导体制造系统识别的格式指定硬件集成电路的至少一部分的设计,所述半导体制造系统被配...

【专利技术属性】
技术研发人员:J
申请(专利权)人:苹果公司
类型:发明
国别省市:

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

1