首页> 中国专利> 使用异构处理器来为应用程序提供低潜伏时间的系统和方法

使用异构处理器来为应用程序提供低潜伏时间的系统和方法

摘要

本发明公开用于响应请求的方法、装置和计算机可读介质。一种响应请求的方法可包括接收包括回调函数的请求。所述一个或多个请求可接收于与第一类型的处理器相关联的第一存储器中,所述第一类型的处理器可为CPU。所述请求可被移动至第二存储器。所述第二存储器可与第二类型的处理器相关联,所述第二类型的处理器可为GPU。GPU线程可在所述请求的数量为至少阈值数量时处理所述请求,以便确定所述请求的结果。所述方法可包括将所述结果移动至所述第一存储器。所述方法可包括所述CPU利用所述对应结果来执行所述一个或多个回调函数。GPU持久线程可检查请求的数量,以便确定何时达到请求的阈值数量。

著录项

  • 公开/公告号CN104395890A

    专利类型发明专利

  • 公开/公告日2015-03-04

    原文格式PDF

  • 申请/专利权人 超威半导体公司;

    申请/专利号CN201380033791.1

  • 发明设计人 亚历山大·洛希夫斯基;

    申请日2013-06-07

  • 分类号G06F9/50;G06F17/30;

  • 代理机构上海胜康律师事务所;

  • 代理人樊英如

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 04:57:13

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-07

    授权

    授权

  • 2015-07-01

    实质审查的生效 IPC(主分类):G06F9/50 申请日:20130607

    实质审查的生效

  • 2015-03-04

    公开

    公开

说明书

相关申请的交叉引用

本申请要求2012年6月8日申请的美国临时专利申请序列号 61/657,404的优先权,所述申请的完整内容特此以引用方式并入,如 同完全阐明一样。

技术领域

本发明的实施方案涉及为应用程序提供低潜伏时间(latency),并 且更具体来说,涉及使用异构处理器提供低潜伏时间。

背景

一些计算机系统包括多于一种的处理器类型。例如,一些计算机 系统包括一个或多个中央处理器单元(CPU)(即,第一处理器类型)和 许多外围处理器(即,不同或第二处理器类型)。外围处理器常常为图 形处理单元(GPU),但是其它处理器类型对于本领域的普通技术人员 是已知的。可能存在可具有与CPU单独共享的存储器的许多GPU。 一些应用程序仅使用CPU,或以不太有效的方式使用GPU。

另外,一些应用程序需要来自计算机系统的低潜伏时间或延迟, 以响应来自应用程序的请求。常常必须采购其它硬件来确保响应来自 应用程序的请求的延迟不是很长。

因此,本领域中需要使用异构处理来为应用程序提供低潜伏时间 的系统和方法。

实施方案概述

本发明公开用于响应请求的方法、装置和计算机可读介质。一种 用于响应请求的方法可包括一个或多个中央处理单元(CPU)接收一个 或多个请求。所述方法可包括将一个或多个请求从与一个或多个CPU 相关联的第一存储器移动至与一个或多个图形处理单元(GPU)相关 联的第二存储器。所述方法可包括一个或多个GPU确定一个或多个 请求中的每一个的指针。所述指针可基于请求中的信息来确定。所述 方法可包括将确定的指针移动至第一存储器。对于确定的指针中的每 一个,所述方法可包括检索由确定的指针所指向的数据。所述数据可 从第一存储器中的第一数据结构检索。而且,所述方法可包括一个或 多个CPU通过发送对应检索数据来响应接收的请求。

在另一个实施方案中,响应请求的方法可包括接收包括回调函数 的一个或多个请求。所述一个或多个请求可接收于与一个或多个CPU 相关联的第一存储器中。所述方法可包括将一个或多个请求移动至第 二存储器。第二存储器可与一个或多个GPU相关联。所述方法可包 括一个或多个GPU线程在一个或多个请求的数量为至少阈值数量时 处理一个或多个请求,以便确定一个或多个请求中的每一个的结果。 所述方法可包括将结果移动至第一存储器。而且,所述方法可包括一 个或多个CPU利用对应结果执行一个或多个回调函数中的每一个。

本发明公开一种用于响应请求的系统。所述系统可包括一个或多 个CPU,所述CPU被配置来接收包括回调函数的一个或多个请求。 所述一个或多个请求可接收于与一个或多个CPU相关联的第一存储 器中。一个或多个CPU可被配置来将一个或多个请求移动至第二存 储器。第二存储器可与一个或多个GPU相关联。而且,一个或多个 CPU可被配置来利用对应结果执行一个或多个回调函数中的每一个。 一个或多个GPU可被配置来执行一个或多个GPU线程,以在一个或 多个请求的数量为至少阈值数量时处理一个或多个请求,从而确定一 个或多个请求中的每一个的结果。而且,一个或多个GPU可被配置 来将确定的结果移动至第一存储器中。

附图简述

本发明的实施方案在附图的各图中以举例而非限制的方式示出, 附图中的相同参考数字指示类似元件,并且其中:

图1为可实施一个或多个公开的实施方案的示例性设备的框图;

图2示出根据一些公开的实施方案的使用异构处理器来实现低 潜伏时间应用程序的系统;

图3和图4示意性地示出可需要低潜伏时间以用于响应请求的存 储器超高速缓存应用程序的操作;

图5和图6示出根据一些公开的实施方案的对存储器超高速缓存 应用程序使用异构处理器来实现低潜伏时间应用程序的系统的操作;

图7示意性地示出根据一些公开的实施方案的使用异构处理器 来实现低潜伏时间应用程序的系统的实施方案;

图8示出根据一些公开的实施方案的GPU可运行的内核;

图9示出用于调用根据一些公开的实施方案的用于异构处理器 的低潜伏时间应用程序的系统的数据结构和调用;以及

图10示出根据一些公开的实施方案的对存储器超高速缓存应用 程序使用异构处理器来提供低潜伏时间的系统和方法的经验检验的 结果表。

详述

图1为可实施一个或多个公开的实施方案的示例性设备100的框 图。设备100可包括例如计算机、游戏设备、手持式设备、机顶盒、 电视、移动电话或平板计算机。设备100包括处理器102、存储器104、 存储装置106、一个或多个输入设备108和一个或多个输出设备110。 设备100还可任选地包括输入驱动器112和输出驱动器114。应理解 的是,设备100可包括图1中未示出的其它部件。

处理器102可包括具有第一类型的一个或多个第一处理器(例如, 中央处理单元(CPU))128,其可包括一个或多个核心132;以及如图 形处理单元(GPU)130的一个或多个第二类型的处理器,其可包括一 个或多个计算单元(CU)134或GPU核心。CPU 128和GPU 130可定 位在同一晶粒或多个晶粒上。CU 134可组织成群组,所述群组具有 控制一组CU 134的处理控件(未示出)。处理控件可控制一组CU 134, 以使得一组CU 134作为单指令多数据(SIMD)处理单元(未示出)执行。 CU 134可包括可与一个或多个其它CU 134共享的存储器139。例如, 处理控件可控制一百三十二个CU 134,并且这一百三十二个CU 134 可全部与处理控件共享同一存储器139。

除了GPU 130和CPU 128以外,可能存在其它类型的处理器或 计算元件,如数字信号处理器(DSP)、应用程序处理器等。CPU 128 可包括在CPU 128的核心间共享的存储器136。在一些公开的实施方 案中,存储器136为L2超高速缓存。GPU 130可包括在一个或多个 GPU 130的CU 134间共享的存储器138。数据可通过存储器136与 存储器138与存储器139之间的传递137。GPU 130和CPU 128可包 括其它存储器,如用于每个核心132的存储器和用于未示出的CU 134 的处理单元中的每一个的存储器。存储器136、138和104可为相干 超高速缓存系统(未示出)的一部分。在一些实施方案中,存储器136、 138和104的一个或多个可不为相干存储器。存储器104可定位在与 处理器102相同的晶粒上,或可定位成与处理器102分开。存储器 104可包括易失性或非易失性存储器,例如随机存取存储器(RAM)、 动态RAM(DRAM)或超高速缓存。

存储装置106可包括固定或可移动存储装置,例如硬盘驱动器、 固态驱动器、光盘或闪存驱动器。输入设备108可包括键盘、小键盘、 触摸屏、触摸板、检测器、麦克风、加速计、陀螺仪、生物识别扫描 器或网络连接(例如,用于发射和/或接收无线IEEE 802信号的无线局 域网卡)。输出设备110可包括显示器、扬声器、打印机、触觉反馈 设备、一个或多个灯、天线或网络连接(例如,用于发射和/或接收无 线IEEE 802信号的无线局域网卡)。

输入驱动器112与处理器102和输入设备108通信,并且容许处 理器102接收来自输入设备108的输入。输出驱动器114与处理器 102和输出设备110通信,并且容许处理器102发送输出至输出设备 110。应指出的是,输入驱动器112和输出驱动器114为任选部件, 并且即使输入驱动器112和输出驱动器114不存在,设备100也将以 相同方式操作。

图2示出使用异构处理器来实现低潜伏时间应用程序的系统。图 2中示出CPU 128、GPU 130、CU 134、存储器138、请求202、响应 204、设置220、网络线程206、主机线程208、出站队列210、CPU 数据结构216、GPU线程212、入站队列214和GPU数据结构218。 请求202由网络线程206接收并且传递至主机线程208,所述主机线 程208将请求202放置在入站队列214中。GPU线程212使用GPU 数据结构218处理入站队列214中的请求202,并且将响应204发送 至出站队列210,在所述出站队列210处,主机线程208可使用CPU 数据结构216处理响应204。响应204可接着被发送至网络线程206 以供发送。网络线程206可接收设置220,所述设置220可用于建立 或修改CPU数据结构216和GPU数据结构218。

请求202可为从应用程序(未示出)接收的用于参考或用于处理的 请求202。请求202可通过计算机网络(未示出)接收。请求202的实 例可为对数据222的请求,所述数据222对应于请求202中的秘钥。 请求202可包括回调函数(参见图9)。

响应204可为对请求202的响应204。示例性响应204可为对应 于请求202中的秘钥(参见图3)的数据222。设置220可为用于修改 或建立CPU数据结构216的指令。示例性设置220可为将被嵌入至 CPU数据结构216中的新数据222。

网络线程206可被配置来从输入设备108获得请求202和设置 220,并且通过输入设备108发出响应204。例如,网络线程206可 为多任务操作系统中的线程,所述线程使用插口来监控用于请求202 和设置220的一个或多个传输控制协议(TCP)端口,并且使用TCP通 过一个或多个端口发出响应204。网络线程206可被配置来发送或传 递请求202和设置220至主机线程208,并且从主机线程208接收响 应204。CPU 128可执行网络线程206。在一些实施方案中,网络线 程206可驻留在存储器136(参见图1)中,和或存储器104或与核心 132相关联的另一个存储器(未示出)中。在一些实施方案中,网络线 程206可为应用程序线程。

主机程序208可被配置来接收请求202并且将所述请求202放置 在入站队列214中以供GPU 130进行处理。主机线程208可被配置 来从出站队列210接收响应204。在一些公开的实施方案中,主机线 程208可监控出站队列210,并且当一个或多个响应204变得可用时, 主机线程208可获得响应204并且根据CPU数据结构216对响应204 执行进一步处理。例如,主机线程208可从入站队列214获得响应 204,并且在响应204中使用指针224来从CPU数据结构216检索数 据222,并且修改响应204来包括数据222。主机线程208可接着发 送响应204至网络线程206。在一些实施方案中,如果响应204的数 量低于阈值数量或频率,则主机线程208可满足响应204。在一些实 施方案中,可存在多于一个的主机线程208。在一些实施方案中,每 个出站队列210可存在一个主机线程208。在一些实施方案中,主机 线程208可驻留在与CPU 128相关联的存储器中。在一些实施方案 中,网络线程206可驻留在存储器136中,和或存储器104或与核心 132相关联的另一个存储器(未示出)中。

出站队列210可为放置有已被GPU线程212处理的请求202的 队列。在一些实施方案中,出站队列210的数量和主机线程208的数 量可成比例。在一些实施方案中,每个主机线程208可存在一个出站 队列210。在一些实施方案中,出站队列210可驻留在存储器136中 或CPU 128可访问的另一个存储器中。

GPU线程212可被配置来处理请求202。在一些实施方案中, GPU 130可组织成m个组,每组n个GPU线程212。一组n个GPU 线程212可各自在单独的CU 134上运行。例如,n可为64并且m可 为24。那么,将存在64*24个或1536个GPU线程212。可存在针对 这组n个GPU线程212的每一个的入站队列214。例如,入站队列 214.1可由GPU线程212.1至212.n提供服务。这组n个GPU线程 212可为单指令多数据(SIMD)CU 134。这组n个GPU线程212可同 时处理一组请求202。例如,如GPU线程212.1至GPU线程212.n(其 中n=64)的一组n个GPU线程212可监控入站队列214.1,并且当入 站队列214.1上存在64个可用请求202时,这组GPU线程212.1至 GPU线程212.64可同时处理64个请求202。在一些实施方案中,这 组n个GPU线程212中的GPU线程212中的一个可监控针对这组n 个GPU线程212的入站队列214。GPU线程212可运行相同内核或 程序,或被配置来以相同方式处理请求202。GPU线程212可发送响 应204至出站队列210。

入站队列214可为放置有请求202的一个或多个队列。入站队列 214可驻留在存储器138或另一个存储器中。GPU数据结构218可为 驻留在与GPU 130相关联的存储器中的数据结构218。GPU数据结 构218可基于一个或多个设置220构建,并且可基于其它信息构建。 GPU数据结构218可包括指针224,所述指针224可为可用于从CPU 数据结构216检索数据222的指针224。GPU数据结构218可由GPU 130使用来处理请求202。在一些实施方案中,GPU数据结构218可 驻留在存储器138中,和或存储器104或与GPU 130相关联的另一 个存储器(未示出)中。

CPU数据结构216可为驻留在与CPU 128相关联的存储器中的 数据结构216。CPU数据结构216可基于一个或多个设置220构建, 并且可基于其它信息构建。CPU数据结构216可包括数据222,所 述数据222可为由指针224所指向的数据222。CPU数据结构216可 由CPU 128使用来处理请求202。在一些实施方案中,CPU数据结构 216可驻留在存储器136中,和或存储器104(参见图1)或与CPU 128 相关联的另一个存储器(未示出)中。

图3和图4示意性地示出可需要低潜伏时间以用于响应请求的存 储器超高速缓存应用程序的操作。图3和图4中示出客户端302、设 置220、确认330、服务器390、散列表326以及请求202和响应204。 客户端302选择服务器390并且接着向选择的服务器390.1发送设置 220,所述设置220可为用于将值338.15与秘钥322.15相关联的命令。 存储器超高速缓存应用程序(未示出)接收设置220并且在数据结构中 存储与秘钥322.15相关联的值338.15,所述数据结构可为散列表326 并且可发送确认330至客户端302。客户端302可接着发送具有秘钥 322.15的请求202(参见图4),并且服务器390.1通过搜索散列表326 发送具有与秘钥322.15相关联的值338.15的响应204。

客户端302可通过如LAN或互联网(未示出)的通信网络与服务 器390.1通信。在一些实施方案中,客户端302可驻留在服务器390.1 上。设置220可为包括秘钥322和值338的对324的命令。秘钥322 和值338可为数据。秘钥322可为识别值338的唯一方式。确认330 可为设置220是否成功的指示。散列表326可为将索引328与秘钥 322和值338的对324相关联的表。

客户端302可选择服务器390。在一些实施方案中,客户端302 基于秘钥322选择服务器390。例如,客户端302可基于确定秘钥322 的散列值(如秘钥322的模量)来确定服务器390。例如,服务器390 可基于在如图3中示出存在三个服务器390时确定(秘钥322模量3)+ 1的值来进行选择。

客户端302可接着发送设置220至服务器390.1。存储器超高速 缓存应用程序(未示出)可确定秘钥322的索引328,在一些实施方案 中这被称为确定散列值。例如,如果散列表为9个条目,则存储器超 高速缓存应用程序可将索引确定为[秘钥322模量9]+1,以使得具有 为30的值的秘钥322将具有[30mod 9]+1=4的散列值或索引。存储 器超高速缓存应用程序将接着在散列表326中存储秘钥322.15和值 338.15的对324.15。索引328的每一个可具有一连串的对324,所述 一连串的对324可需要加以遍历来搜索对324。

以这种方式,客户端302可使得服务器390.1建立存储秘钥322 和值338的对324的散列表326。客户端302可通过基于如上所述的 秘钥322选择服务器390来检索与秘钥322相关联的值338,并且接 着发送请求202至具有秘钥322.15的服务器390.1(参见图4)。服务 器390.1接着获得秘钥322.15并且计算秘钥322.15的散列值,以确 定索引328.4,并且接着在与索引328.4相关联的对324中搜索具有 秘钥322.15的对324.15。当找到秘钥322.15时,存储器超高速缓存 应用程序检索值338.15,并且向客户端302发送具有值338.15的响 应204。

因此,客户端302可在散列表326中设置220值秘钥322和值 338的对324,并且使用秘钥322从散列表326请求202值338。在 一些实施方案中,散列表326可较大并且散列表326可存储在如104、 136或138的随机存取存储器(参见图1)中,以使得请求202可较快 速。在一些实施方案中,可为重要的是:快速地执行设置220和/或 请求202命令,以使得当客户端302请求202值338时与当值338实 际上在响应204中返回时之间存在低潜伏时间。例如,散列表326可 用于为需要非常快速的响应204的路由选择存储网络地址。

图5和图6示出根据一些公开的实施方案的对存储器超高速缓存 应用程序使用异构处理器来实现低潜伏时间应用程序的系统的操作。 图5和图6中示出客户端302、设置220、确认330、服务器390.1、 CPU数据结构216、GPU数据结构218以及(参见图6)请求202和响 应204。CPU数据结构216可具有地址570和值338的数据结构。值 338可使用地址570来设置或检索。GPU数据结构218包括秘钥322 和地址570的由索引528访问的对524。在一些实施方案中,GPU数 据结构218可为散列表527。

从客户端302的角度,存储器超高速缓存应用程序的操作与结合 图3和图4的描述相同。参考图2和图5,在操作中,客户端302发 送设置220至服务器390.1。服务器390.1的网络线程206发送设置 220至主机线程208。主机线程208在CPU数据结构216的地址570.7 处设置值338.15。主机线程208接着在入站队列214中放置秘钥 322.15和地址570.7的对524.15。在一些实施方案中,主机线程208 可基于入站队列214的内容确定将对524.15放置在哪个入站队列214 上。GPU线程212接着为秘钥322.15确定索引528,并且以索引528 将秘钥322.15和地址570.7的对524.15放置在散列表527中,所述 索引528为如图5中示出的索引528.4。在一些实施方案中,对524 可存储在散列表527中,作为与索引528相关联的连接表。确认330 可被发送至客户端302以确认设置220是成功的。

参考图2和图6,客户端302可发送请求202至服务器390.1。 网络线程206可接受请求202。网络线程206可发送请求202至主机 线程208。主机线程208可将请求202放置在入站队列214中。GPU 线程212可通过确定对应于秘钥322的索引528处理请求202。如图 6中示出,索引528.4对应于秘钥322.15,并且GPU线程212可搜索 列表,以找出秘钥322.15和地址570.7的对524.15。GPU线程212 可接着将秘钥322.15和地址570.7的对524.15移动至出站队列210。 主机线程208可接着使用地址570.7以从CPU数据结构216检索值 338.15。主机线程208可接着向网络线程206指示具有值338.15的响 应204应发送至客户端302。网络线程206可接着发送具有值338.15 的响应204至客户端302。

在一些公开的实施方案中,CPU数据结构216可驻留在存储器 136中。在一些公开的实施方案中,GPU数据结构218可驻留在存储 器138中。一些公开的实施方案具有的优势在于,可为大量数据的值 338可不需要传递至如存储器138的存储器,这种传递是耗时的。

在一些公开的实施方案中,可能存在比CPU 128核心132更多 的请求202。在一些公开的实施方案中,许多请求202在入站队列214 中排队,直到请求202的数量等于或大于GPU 130的计算单元134 的数量,并且接着一个或多个请求202被分配至GPU 130的计算单 元134中的每一个。

在一些公开的实施方案中,CPU 128和GPU 130使用原子读取/ 写入指令。在一些公开的实施方案中,GPU 130轮询存储器位置来获 得由CPU 128写入的入站队列指针。在一些实施方案中,在GPU 130 上运行的线程中的一个线程可轮询存储器位置,以用于更新入站队列 214。在一些公开的实施方案中,GPU 130通过将指针写入CPU 128 轮询的存储器位置来更新出站队列210。

在一些公开的实施方案中,GPU线程212可为保持活动与内核 保持活动一样久的持久线程。内核可具有响应停机消息的无限外循环。 在一些公开的实施方案中,GPU 130的每个计算单元134可由两个持 久线程使用OpenCL。每个计算单元134两个持久线程可提供的优势 在于:虽然第一线程可正在等待数据抵达,但第二线程可执行。

图7示意性地示出使用异构处理器来实现低潜伏时间应用程序 的系统的实施方案。系统700包括CPU 128、主机线程708、出站队 列210、GPU 130、GPU线程212、入站队列214。应用程序线程706 可发送请求202,并且系统700可处理请求202并且发送响应204至 应用程序线程706。

应用程序线程706可为在CPU 128或另一个CPU 128上运行的 应用程序。请求202可为用于处理任务的请求。例如,结合图3、图 4、图5和图6,设置220和请求202如结合存储器超高速缓存应用 程序所公开。响应204可为对请求202的响应。例如,响应204可为 如结合存储器超高速缓存应用程序所公开的响应204。

主机线程708可为接收请求202并且发送响应204的线程。在一 些实施方案中,应用程序线程706可为密码学应用程序、网络应用程 序和嵌入式应用程序。

图8示出根据一些公开的实施方案的GPU可运行的内核。GPU 线程212(参见图2)可运行gpuGenericApplication内核800,所述内核 800允许GPU线程212运行通用应用程序。内核800具有从804至 816的无限do循环的流程控制,所述无限do循环(do loop)可被如 中的EOS的中断信号阻断。在805处,内核800读取可能 为入站队列214的__in_control_queue,并且为_in_control_queue中的第 一队列202设置read_ptr。在806处,当_in_control_queue中存在请 求时,内核800在while循环(while loop)中循环。在808处,内核800 根据由curr_ptr所指向的请求202调用应用程序。在810处,内核800 将响应放在可为出站队列210的_out_control_queue上。在812处,内 核800增加curr_ptr++。如果curr_ptr指向in_control_queue中的需要 获得服务的请求202,则内核800接着循环回到806。如果curr_ptr 并未指向请求202,那么内核800前往814并且更新protocol_control。 内核800接着在816处检查是否在816处接收到中断信号EOS。如果 接收到中断信号EOS,则内核800结束。否则,内核800循环回到 804。内核800具有的优势在于,其可被调用一次并且保持持久地响 应许多请求202。

图9示出用于调用根据一些公开的实施方案的用于异构处理器 的低潜伏时间应用程序的系统的数据结构和调用。称为 LOLALY_REQ的结构902可由应用程序id 903和回调函数904填充 (populated)。那么,lolalySendRequest 906可用于为系统700执行请求 202。

图10示出对存储器超高速缓存应用程序使用异构处理器来提供 低潜伏时间的系统和方法的经验检验的结果表。表1000包括请求大 小1002并且还包括两组数据,一组针对的产品APU BrazosTM、 HD631/430 1004,而另一组针对的产品AP TrinityTM、 HD7660/600。例如,在具有2048个请求1020的情况下,APU BrazosTM具有为197μ秒的潜伏时间1010以及为0.19的吞吐量MR 1006和为 3.23的带宽GB 1008。在具有2048个请求1020的情况下,AP TrinityTM具有为140μ秒的潜伏时间1018以及为0.31的吞吐量MR 1014和为 5.26的带宽GB 1016。因此,即使具有较大数量的请求,系统也提供 可接受的潜伏时间。

应了解,可能存在基于本说明书公开内容的许多变型。尽管上述 特征和元件具有特定组合,但是每个特征和元件可以在独立于其它特 征和元件的情况下单独使用,或者可以用于包括或不包括其它特征和 元件的各种组合中。

所提供的方法可在通用计算机、处理器或处理器核心中实施。举 例来说,合适的处理器包括通用处理器、图形处理单元(GPU)、专用 处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP 核心相关联的一个或多个微处理器、控制器、微控制器、专用集成电 路(ASIC)、现场可编程门阵列(FPGA)电路、任何其它类型的集成电 路(IC)和/或状态机。可以通过使用处理的硬件描述语言(HDL)指令和 包括网络列表的其它中间数据(这些指令能够存储在计算机可读介质 上)的结果配置制造过程来制造这些处理器。这种处理的结果可以是 光罩作品,所述光罩作品接着用于半导体制造过程中,以制造实施公 开的实施方案的各方面的处理器。

本文提供的方法或流程图可以实现在并入计算机可读存储介质 中的计算机程序、软件或固件中,以由通用计算机或处理器执行。在 一些实施方案中,计算机可读存储介质为非暂时性计算机可读存储介 质。计算机可读存储介质的实例包括只读存储器(ROM)、随机存取存 储器(RAM)、寄存器、超高速缓存存储器、半导体存储设备、如内部 硬盘和可移动磁盘的磁性介质、磁光介质以及如CD-ROM盘和数字 多功能盘(DVD)的光学介质。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号