用于卷积神经网络的权重移位机制的制作方法_2

文档序号:9564425阅读:来源:国知局
?和MMX?是位于加利福尼亚州圣克拉拉的Intel公司的注 册商标或商标。)。
[0036] 在一个实施例中,目的地和源寄存器/数据可以是表示对应的数据或操作的源和 目的地的类属项。在一些实施例中,它们可由寄存器、存储器或具有与所示出的那些名称或 功能不同的名称或功能的其他存储区域所实现。例如,在一个实施例中,"DEST1"可以是临 时存储寄存器或其他储存区,而"SRC1"和"SRC2"可以是第一和第二源存储寄存器或其他 储存区等等。在其他实施例中,SRC和DEST储存区中的两个或更多可以对应于相同储存区 (例如,SHffi寄存器)内的不同的数据存储元素。在一个实施例中,源寄存器中的一个也可 以通过,例如,将对第一和第二源数据执行的操作的结果回写到充当目的地寄存器的两个 源寄存器中的一个,来充当目的地寄存器。
[0037] 图IA是根据本发明的各实施例的利用可包括执行指令的执行单元的处理器形成 的示例性计算机系统的框图。根据本发明,诸如在此处所描述的实施例中,系统100可包括 诸如处理器102之类的组件,以使用包括执行用于处理数据的算法的逻辑的执行单元。系 统100可以是基于位于加利福尼亚州圣克拉拉市的英特尔公司所提供的PENTIUIVT ΠΙ、 PENTIUM S 4、Xeon?、Itanitim?、' XScale?和 / 或 StrongARM ?的微处理器的处理系统 的代表,虽然也可以也可以其他系统(包括具有其他微处理器的PC、工程工作站、机顶盒等 等)。在一个实施例中,示例系统100执行位于美国华盛顿州雷蒙德市的微软公司所提供 的WINDOWS?操作系统的一种版本,虽然也可以使用其他操作系统(例如,UNIX和Linux)、 嵌入式软件和/或图形用户界面。如此,本发明的各实施例不仅限于硬件电路和软件的任 何特定的组合。
[0038] 各实施例不仅限于计算机系统。本发明的各实施例可以用于诸如手持式设备和嵌 入式应用之类的其他设备中。手持式设备的某些示例包括蜂窝电话、网际协议设备、数码 相机、个人数字助理(PDA)以及手持式PC。嵌入式应用可包括微控制器、数字信号处理器 (DSP)、芯片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机、或能 够执行根据至少一个实施例的一个或多个指令的任何其他系统。
[0039] 计算机系统100可包括处理器102,该处理器102可包括执行一种算法以执行根 据本发明的一个实施例的至少一个指令的一个或多个执行单元108。可以在单处理器台式 机或服务器系统的上下文中来描述一个实施例,但是,其他实施例可以被包括在多处理器 系统中。系统100可以是'中枢'系统体系结构的示例。系统100可包括用于处理数据信 号的处理器102。处理器102可包括复杂指令集计算机(CISC)微处理器、精简指令集计算 (RISC)微处理器、超长指令字(VLIW)微处理器、实现指令集的组合的处理器或任何其他处 理器设备,诸如,例如,数字信号处理器。在一个实施例中,处理器102可以耦合到可以在处 理器102及系统100中的其他组件之间传输数据信号的处理器总线110。系统100的元件 可以执行本领域普通技术人员所共知的常规功能。
[0040] 在一个实施例中,处理器102可包括1级(LI)内部高速缓存存储器104。取决于 体系结构,处理器102可以具有单个内部高速缓存或多级内部高速缓存。在另一个实施例 中,高速缓存存储器可以驻留在处理器102外部。取决于特定实现以及需求,其他实施例也 可以包括内部和外部缓存两者的组合。寄存器组106可以在包括整数寄存器、浮点寄存器、 状态寄存器,以及指令指针寄存器的各种寄存器中存储不同类型的数据。
[0041] 执行单元108(包括执行整数以及浮点运算的逻辑)也驻留在处理器102中。处 理器102也可以包括用于存储某些宏指令的微代码的微代码(ucode)ROM。在一个实施例 中,执行单元108可包括处理打包指令集109的逻辑。通过与执行指令的相关联的电路一 起将打包指令集109包括在通用处理器102的指令集中,许多多媒体应用程序所使用的操 作可以使用通用处理器102中的打包数据来执行。如此,通过使用全宽的处理器的数据总 线来对打包数据执行操作,许多多媒体应用程序可以被加速并且更有效率地被执行。这可 以潜在地消除跨处理器的数据总线来传输较小单位的数据以执行一个或多个操作(一次 一个数据元素)的必要性。
[0042] 执行单元108的各实施例也可以用于微控制器、嵌入式处理器、图形设备、DSP及 其他类型的逻辑电路中。系统100可包括存储器120。存储器120可以被实现为动态随机 存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪存设备或其他存储器设备。 存储器120可以存储可以由处理器102执行的指令和/或通过数据信号来表示的数据。
[0043] 系统逻辑芯片116可以耦合到处理器总线110和存储器120。系统逻辑芯片116 可包括存储器控制器中枢(MCH)。处理器102可以通过处理器总线110与MCH 116进行通 信。MCH 116可以提供到存储器120的高带宽存储器路径118,用于指令和数据存储,并用 于存储图形命令、数据和纹理。MCH 116可以在处理器102、存储器120及系统100中的其 他组件之间定向数据信号,并在处理器总线110、存储器120以及系统I/O 122之间桥接数 据信号。在某些实施例中,系统逻辑芯片116可以提供用于耦合到图形控制器112的图形 端口。MCH 116可以通过存储器接口 118耦合到存储器120。图形卡112通过加速图形端 口(AGP)互连 114 耦合到 MCH 116。
[0044] 系统100可以使用专用中枢接口总线122来将MCH 116耦合到I/O控制器中枢 (ICH) 130。在一个实施例中,ICH 130可以通过本地I/O总线来提供到某些I/O设备的直 接连接。本地I/O总线可以包括用于将外围设备连接到存储器120、芯片组以及处理器102 的高速I/O总线。示例可以包括音频控制器、固件中枢(闪存BIOS) 128、无线收发器126、 数据存储器124、包含用户输入和键盘接口的传统I/O控制器、诸如通用串行总线(USB)之 类的串行扩展端口以及网络控制器134。数据存储设备124可以包括硬盘驱动器、软盘驱动 器、CD-ROM设备、闪存设备,或其他大容量存储设备。
[0045] 对于系统的另一个实施例,根据一个实施例的指令可以与芯片上系统一起使用。 芯片上系统的一个实施例包括处理器和存储器。一个这样的系统的存储器可以包括闪存。 闪存可以与处理器及其他系统组件位于相同管芯上。另外,诸如存储器控制器或图形控制 器之类的其他逻辑块也可以位于芯片上系统之上。
[0046] 图IB示出了实现本发明的各实施例的原理的数据处理系统140。那些精通本技术 的普通人员将轻松地理解,在不偏离本发明的各实施例的范围的情况下,此处所描述的各 实施例可以与替代的处理系统一起操作。
[0047] 计算机系统140包括用于执行根据一个实施例的至少一个指令的处理核159。 在一个实施例中,处理核159表示任何类型的体系结构的处理单元,包括但不限于,CISC、 RISC或VLIW类型的体系结构。处理核159也可以适用于采用一种或多种处理技术的产品, 并通过足够详细地在机器可读介质上被表示,可以适合于促进所述产品。
[0048] 处理核159包括执行单元142、一组寄存器组145,以及解码器144。处理核159也 可以包括可能对本发明的各实施例的理解不需要的额外的电路(未示出)。执行单元142 可以执行由处理核159接收到的指令。除执行典型的处理器指令之外,执行单元142可以 执行用于对打包数据格式执行操作的打包指令集143中的指令。打包指令集143可包括用 于执行本发明的各实施例的指令及其他打包指令。执行单元142可以通过内部总线耦合到 寄存器组145。寄存器组145可以表示处理核159上的用于存储信息(包括数据)的储存 区。如上文所提及的,应该理解,储存区可以存储可能不关键的打包数据。执行单元142可 以耦合到解码器144。解码器144可以将由处理核159接收到的指令解码为控制信号和/ 或微代码入口点。响应于这些控制信号和/或微代码入口点,执行单元142执行合适的操 作。在一个实施例中,解码器可以解释指令的操作码,该操作码将指出应该对在指令内指出 的对应的数据执行什么操作。
[0049] 处理核159可以与总线141耦合,以便与各种其他系统设备进行通信,其他系统设 备可包括,但不仅限于,例如,同步动态随机存取存储器(SDRAM)控件146、静态随机存取存 储器(SRAM)控件147、突发闪存接口 148、个人计算机存储器卡国际联合会(PCMCIA)/紧凑 闪存(CF)卡控件149、液晶显示器(IXD)控件150、直接存储器访问(DMA)控制器151,以 及替代的总线主控接口 152。在一个实施例中,数据处理系统140也可以包括用于通过1/ O总线153与各种I/O设备进行通信的I/O桥接器154。这样的I/O设备可以包括,但不仅 限于,例如,通用异步接收器/发射器(UART)设备155、通用串行总线(USB)设备156、蓝牙 无线UART 157以及I/O扩展接口 158。
[0050] 数据处理系统140的一个实施例提供移动、网络和/或无线通信以及可以执行包 括文本字符串比较操作的SHffi操作的处理核159。处理核159可以被编程有各种音频、视 频、成像以及通信算法,包括单独的变换,诸如沃尔什 -哈达马(Walsh-Hadamard)变换、快 速傅里叶变换(FFT)、离散余弦变换(DCT),以及它们的相应的逆变换;压缩/解压缩技术, 诸如颜色空间变换、视频编码运动估计或视频解码运动补偿;以及调制/解调(MODEM)功 能,诸如脉冲编码调制(PCM)。
[0051] 图IC示出了执行SHffi文本字符串比较操作的数据处理系统的其他实施例。在一 个实施例中,数据处理系统160可包括主处理器166、SHffi协处理器161、高速缓存存储器 167,以及输入/输出系统168。输入/输出系统168可以可任选地耦合到无线接口 169。 S頂D协处理器161可以执行包括根据一个实施例的指令的操作。在一个实施例中,处理核 170可以适用于采用一种或多种处理技术的产品,并通过足够详细地在机器可读介质上被 表示,可以适合于促进包括处理核170的数据处理系统160的全部或一部分的产品。
[0052] 在一个实施例中,SHffi协处理器161包括执行单元162以及一组寄存器组164。 主处理器165的一个实施例包括识别包括用于由执行单元162执行的根据一个实施例的指 令的指令集163的指令的解码器165。在其他实施例中,S頂D协处理器161还包括用于解 码指令集163的指令的解码器165的至少一部分。处理核170也可以包括可能对本发明的 各实施例的理解不需要的额外的电路(未示出)。
[0053] 在操作中,主处理器166执行控制一般类型的数据处理操作(包括与高速缓存存 储器167,以及输入/输出系统168的交互)的数据处理指令的流。SHffi协处理器指令可 以嵌入在数据处理指令的流内。主处理器166的解码器165将这些S頂D协处理器指令识 别为应当由附连的SHffi协处理器161执行的类型。相应地,主处理器166在协处理器总线 166上发出这些S頂D协处理器指令(或表示S頂D协处理器指令的控制信号)。从协处理 器总线166,这些指令可以由任何附接的S頂D协处理器接收。在此情况下,S頂D协处理器 161可以接受并执行发往它的任何接收到的S頂D协处理器指令。
[0054] 数据可以通过无线接口 169被接收,以供由S頂D协处理器指令处理。对于一个示 例,可以以数字信号的形式接收语音通信,数字信号可以由SHffi协处理器指令处理,以重 新生成表示语音通信的数字音频样本。对于另一个示例,可以以数字比特流的形式接收经 压缩的音频和/或视频,数字比特流可以由SHffi协处理器指令处理,以重新生成数字音频 样本和/或动态视频帧。在处理核170的一个实施例中,主处理器166,以及SHffi协处理器 161可以被集成到单个处理核170中,该单个处理核包括执行单元162、一组寄存器组164, 以及识别包括根据一个实施例的指令的指令集163的指令的解码器165。
[0055] 图2是根据本公开的各实施例的可包括执行指令的逻辑电路的处理器200的微架 构的框图。在某
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1