版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
US2002169813A1,2002.11.14用于复紧缩数据元素和实紧缩数据元素的公开了用于复紧缩数据和实紧缩数据的乘源寄存器中所选择的虚数据元素与第二源寄存存器中所选择的实数据元素与第二源寄存器中将多个虚乘积的第一子集相加以生成第一临时果与来自目的地寄存器的第一数据累加以生成以及将第一和第二最终结果往回存储在目的地2乘法器电路,用于在所述第一源寄存器和所述第二源寄存器中选加法器电路,用于将所述多个虚乘积的第一子集相加以生将所述多个虚乘积的第二子集相加以生成第二取反电路,用于对所述第一临时结果进行取反以生成第三临3.如权利要求1或2所述的处理器,其中标识所述第一源寄存器和所述第二源寄存器中的数据元素位置A-H中扩展电路,用于在与来自所述目的地寄存器的第一数据和第二数所述第三临时结果和所述第四临时结果零扩展或符号扩展为67.如权利要求1或6所述的处理器,其中,所39.如权利要求1或6所述的处理器,其中,将所述将第一多个紧缩实数据元素和虚数据元素存储在第一源将第二多个紧缩实数据元素和虚数据元素存储在第二源在所述第一源寄存器和所述第二源寄存器中选择要相乘的将所述第一源寄存器中的每个所选择的虚数据元素与所述第二源寄存器中的所选择将所述多个虚乘积的第一子集相加以生成第一临时结果,对所述第一临时结果执行取反以生成第三临时结果,并且对所述第二将所述第三临时结果与来自目的地寄存器的第一数据累加以生成第一将所述第一最终结果和所述第二最终结果往回存储在所述目的地所述第一源寄存器和所述第二源寄存器中的数据元素位置A-H在与来自所述目的地寄存器的所述第一数据和所述第三临时结果和所述第四临时结果零扩展或符号扩展为4将第一多个紧缩实数据元素和虚数据元素存储在第一源将第二多个紧缩实数据元素和虚数据元素存储在第二源在所述第一源寄存器和所述第二源寄存器中选择要相乘的将所述第一源寄存器中的每个所选择的虚数据元素与所述第二源寄存器中的所选择将所述多个虚乘积的第一子集相加以生成第一临时结果,对所述第一临时结果执行取反以生成第三临时结果,并且对所述第二将所述第三临时结果与来自目的地寄存器的第一数据累加以生成第一将所述第一最终结果和所述第二最终结果往回存储在所述目的地存器包括能配置有分别存储数据元素分别标识所述第一源寄存器和所述第二源寄存器中的数据元素位置A-H中的紧缩数据元包括S1C*S2D+S1D*S2C+S1A*S2B+S1B*S2A,并且所述多个虚乘积的所述第二子集的相加包括S1G*S2H+S1H*S2G+S1E*S2F+S1F*S2E,以分别生成所述第一临时结果和所述第二临时结24.如权利要求19所述的机器可读介质,进一步包括使所述机器执行以下操作的程序在与来自所述目的地寄存器的所述第一数据和所述第三临时结果和所述第四临时结果零扩展或符号扩展为56司(AdvancedMicroDevices,Inc.)的多个处理器实现几乎相同版本的x86指令集(具有已于指示寄存器架构中的寄存器/寄存器堆,而不同的形容词将用于规定给定微型架构中的[0004]乘法-累加是常用的数字信号处理操作,该操作计算两个数的乘积并将该乘积加如,可利用乘法指令,随后是4路加法,并且然后是利用目的地四字数据的累加来执行乘[0006]图1A和图1B是图示出根据本发明的实施例的通用向量友好指令格式及其指令模7核的示例性实施例和示例性寄存器重命名的乱序发布/执行架[0013]图6是根据本发明的实施例的具有集成存储器控制器和图形器件的单核处理器和进制指令转换成目标指令集中的二进制指令位置)以指定将要执行的操作(操作码)以及将对其执行该操作的(多个)操作数等等。通过模板定义为具有该指令格式的字段(所包括的字段通常按照相同顺序,但是至少一些字段照该指令格式的指令模板中的给定的一个指令模板)来表达,并包括用于指定操作和操作包括用于指定该操作码的操作码字段和用于选择操作数(源1/目的地以及源2)的操作数字段;并且该ADD指令在指令流中出现将使得在操作数字段中具有选择特定操作数的特定的8[0030]图1A-图1B是图示根据本发明的实施例的通用向量友好指令格式及其指令模板的而图1B是图示根据本发明的实施例的通用向量友好指令格式及其B类指令模板的框图。具操作数长度(或尺寸)与32位(4字节)或64量操作数长度(或尺寸)与16位(2字节)或8位(1字节)数据元素宽度(或尺寸);32字节向量向量操作数尺寸(例如,256字节向量操作数)与更大、更小或不同的数据元素宽度(例如,以及无存储器访问的写掩码控制的vsize型操作117的指令模板;以及2)在存储器访问120[0033]通用向量友好指令格式100包括以下列出的按照在图1A-1B中图示的顺序的如下[0034]格式字段140——该字段中的特定值(指令格式标识符值)唯一地标识向量友好指[0036]寄存器索引字段144——其内容直接或者通过地址生成来指定源或目的地操作数在寄存器中或者在存储器中的位置。这些字段包括足够数量的位以从PxQ(例如,32x512、源寄存器和一个目的地寄存器,但是替代实施例可支持更多或更少的源和目的地寄存器[0037]修饰符(modifier)字段146——其内容将指定存储器访问的以通用向量指令格式9访问105的指令模板与存储器访问120的指令模板之间进行区分。存储器访问操作读取和/[0038]扩充操作字段150——其内容区分除基础操作以外还要执行各种不同操作中的哪[0041]位移因数字段162B(注意,位移字段162A直接在位移因数字段162B上的并置指示使用一个或另一个)——其内容用作地址生成的一部分;它指定将按比例缩放存储器访问器硬件在运行时基于完整操作码字段174(稍后在本文中描述)和数据操纵字段154C确定。位移字段162A和位移因数字段162B不用于无存储器访问105的指令模板和/或不同的实施[0042]数据元素宽度字段164——其内容区分将使用多个数据元素宽度中的哪一个(在[0043]写掩码字段170——其内容逐数据元素位置地控制目的地向量操作数中的数据元辑等。尽管描述了其中写掩码字段170的内容选择了多个写掩码寄存器中的包含要使用的写掩码的一个写掩码寄存器(并且由此,写掩码字段170的内容间接地标识要执行的掩蔽)的本发明的实施例,但是替代实施例替代地或附加地允许掩码写字段170的内容直接指定[0044]立即数字段172——其内容允许对立即数的指定。该字段在实现不支持立即数的问的数据变换型操作115的指令模板分别指定舍入152A.1和数据变换152A.2)的RS字段[0049]在无存储器访问的完全舍入控制型操作110的指令模板中,β字段154被解释为其段154A包括抑制所有浮点异常(SAE)字段156和舍入操作控制字段158,但是替代实施例可变舍入模式。在其中处理器包括用于指定舍入模式的控制寄存器的本发明的一个实施例[0053]在无存储器访问的数据变换型操作115的指令模板中,β字段154被解释为数据变[0054]在A类存储器访问120的指令模板的情况下,α字段152被解释为驱逐提示字段令模板和存储器访问非时效性130的指令模板分别指定时效性的152B.1和非时效性的152B.2),而β字段154被解释为数据操纵字段154C,其内容区分要执行多个数据[0055]向量存储器指令使用转换支持来执行来自存储器的向量加载以及向存储器的向量存储。如同寻常的向量指令,向量存储器指令以数据元素式的方式从/向存储器传输数[0057]时效性的数据是可能足够快地被重新使用以从高速缓存[0059]非时效性的数据是不太可能足够快地被重新使用以从第一级高速缓存中的高速控制部分舍入控制类型操作112的指令模板和无存储器访问的写掩码控制VSIZE型操作117[0063]在无存储器访问的写掩码控制部分舍入控制型操作110的指令模板中,β字段154的其余部分被解释为舍入操作字段159A,并且禁用异常事件报告(给定的指令不报告任何[0064]舍入操作控制字段159A——正如舍入操作控制字段158,其内容区分要执行一组分被解释为向量长度字段159B,其内容区分要执行多个数据向量长度中的哪一个(例如,操作字段142和数据元素宽度字段164。尽管示出了其中完整操作码字段174包括所有这些[0068]扩充操作字段150、数据元素宽度字段164和写掩码字段170允许逐指令地以通用吐量)计算的核可仅支持A类,并且旨在用于通用计算和图形和/或科学(吞吐量)计算两者类,而通用核中的一个或多个可以是具有旨在用于通用计算的仅支持B类的乱序执行和寄于对隐含的前导操作码字节进行编码的内容。W字段264(VEX字节2,位[7]–W)——由记号的作用可包括如下:1)VEX.vvvv对以反转(1补码)的形式被指定的第一源寄存器操作数进以1补码的形式被指定的目的地寄存器操作数进行编码;或者3)VEX.vvvv不对任何操作数[0080]图3是根据本发明的一个实施例的寄存器架构300的框图位(ymm寄存器的较低阶128个位)覆盖在寄存器与现有的x86寻址模式一起使用以对存储器操作数寻址。这些寄存器通过名称RAX、RBX、[0082]标量浮点栈寄存器堆(x87栈)345,在其上面重叠了MMX紧缩整数平坦寄存器堆350——在所图示的实施例中,x87栈是用于使用x87指令集扩展来对32/64/80位浮点数据乱序核;3)旨在主要用于图形和/或科学(吞吐量)计算的专用核。不同处理器的实现可包[0087]图4A是图示根据本发明的各实施例的示例性有序流水线和示例性的寄存器重命名的乱序发布/执行流水线的框图。图4B是示出根据本发明的各实施例的要包括在处理器中的有序架构核的示例性实施例和示例性的寄存器重命名的乱序发布/执行架构核的框[0090]前端单元430包括分支预测单元432,该分支预测单元432耦合到指令高速缓存单冲器436耦合到指令取出单元438,该指令取出单元438耦合到解码单元440。解码单元440490包括存储用于某些宏指令的微代码的微代码ROM或其他介质(例如,在解码单元440中,或以其他方式在前端单元430内)。解码单元440耦合到执行引擎单元450中的重命名/分配[0091]执行引擎单元450包括重命名/分配器单元452,该重命名/分配器单元452耦合到引退单元454和一个或多个调度器单元的集合456。(多个)调度器单元456表示任何数量的集群460包括一个或多个执行单元的集合462以及一个或多个存储器访问单元的集合464。或各自具有其自身的调度器单元、(多个)物理寄存器堆单元和/或执行集群的存储器访问元472。指令高速缓存单元434还耦合到存储器单元470中的第二级(L2)高速缓存单元476。[0093]作为示例,示例性寄存器重命名的乱序发布/执行核架构可如下所述地实现流水重命名/分配器单元452执行分配级408和重命名级级412;5)(多个)物理寄存器堆单元458和存储器单元470执行寄存器读取/存储器读取级尔市的ARM控股公司的ARM指令集(具有诸如NEON的任选的附加扩展)),其中包括本文中描个物理核为物理核正在同时多线程化的线程中的每一个线程提供逻辑核)、或其组合(例一些实施例中,该系统可包括内部高速缓存和在核和/或处理器外部的外部高速缓存的组[0098]图5A-图5B图示更具体的示例性有序核架构的框图,该核将是芯片中的若干逻辑[0099]图5A是根据本发明的实施例的单个处理器核以及它至管芯上互连网络502的连接向量单元510使用分开的寄存器集合(分别为标量寄存器512和向量寄存器514),并且在这发明的替代实施例可以使用不同的方法(例如,使用单个寄存器集合或包括允许数据在这[0100]L2高速缓存的本地子集504是全局L2高速缓存的一部分,该全局L2高速缓存被划高速缓存的本地子集504的直接访问路径。由处理器核读取的数据被存储在其L2高速缓存子集504中,并且可以与其他处理器核访问其自身的本地L2高速缓存子集并行地被快速访高速缓存504的L1数据高速缓存506A部分,以及关于向量单元510和向量寄存器514的更多或NMOS)中的任何技术被实现在一个或多个速缓存单元的集合606、以及耦合到集成存储器控制器单元的集合614的外部存储器(未示和操作核602A-N的那些部件。系统代理单元610可包括例如功率控制单元(PCU)和显示单元。PCU可以是对核602A-N以及集成图形逻辑608的功率状态进行调节所需的逻辑和部件,含如本文中所公开的处理器和/或其他执行逻辑的各种各样的系统或电子设备一般都是合器中枢720包括图形存储器控制器中枢(GMCH)790和输入/输出中枢(IOH)750(其可以在分控制器中的一个或这两者被集成在(如本文中所描述的)处理器内,存储器740和协处理器些指令内的可以是协处理器指令。处理器710将这些协处理器指令识别为具有应当由附连合的第一处理器870和第二处理器880。处理器870和880中的每一个都可以是处理器600的[0117]处理器870和880示出为分别包括集成存储器控制器(IMC)单元872和882。处理器理器880包括P-P接口886和888。处理器870、880可以经由使用点对点(P-P)接口电路878、可以是外围部件互连(PCI)总线或诸如PCI快速总线或另一I/O互连总线之类的总线,但是列或任何其他处理器的一个或多个附加处理器815耦合到第一总线816。在一个实施例中,第二总线820可以是低引脚数(LPC)总线。在一个实施例中,各种设备可耦合到第二总线[0128]至少一个实施例的一个或多个方面可以由存储在机器可读介质上的表示性指令[0129]此类机器可读存储介质可以包括但不限于通过机器或设备制造或形成的制品的(ROM)、诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)的随机存取存储器[0133]图11是根据本发明的实施例的对照使用软件指令转换器将源指令集中的二进制有至少一个第一指令集核的处理器1116表示通过兼容地执行或以其他方式执行以下各项来执行与具有至少一个x86指令集核英特尔处理器基本相同的功能的任何处理器:1)英特理器上运行以便取得与具有至少一个x86指令集核的英特尔处理器基本相同的结果的应用的处理器1114(例如,具有执行加利福尼亚州桑尼维尔市的MIPS技术公司的MIPS指令集、和/或执行加利福尼亚州桑尼维尔市的ARM控股公司的ARM指令集的核的处理器)原生执行拟或任何其他过程来表示允许不具有第一指令集处理器或核的处理器或其他电子设备执地寄存器可以是图4B中的(多个)物理寄存器堆单元458中的SIMD寄存器和/或图3中的向量后处理的SSE/SSE2/AVX指令中的若干指令与DSPISA一起使用。具有存储器操作数的VEX编[0139]1)具有多于16位的Q31数据类型,用于要求模数转换(ADC)和数模转换(DAC)的信用卡尔曼滤波的传感器融合、其他主要DSP应用等的广泛范围的指令。给定权重序列{w1,理器1255包括用于同时执行多个指令线程的多个核0-N。所图示的实施例包括解码器1230流水线组件可响应于对DSP指令的解码和执行来执行本文中所描述的操作。尽管在图12中向量寄存器1206可具有512位宽度用于存储两个256位的值、四个128位的值、八个64位的发明的基本原理不限于任何特定的掩码寄存器[0147]每个核0-N可包括根据所指定的高速缓存管理策略用于对指令和数据进行高速缓存储器1200和/或共享的第三级(L3)高速缓存1216取出指令的指令取出单元1210。指令取[0148]如所提到,解码单元1230包括用于将本文中所描述的DSP指令解码为微操作或写回/引退单元1250引退已执行的指令并写回结果。[0151]本发明的一个实施例使用图14A中示出的架构来执行向量紧缩双复数乘法、对和[0154]TEMP0[33:0]←(((SRC2[47:32]*SRC3[47:32])‑(SRC2[63:48]*SRC3[63:48]))+[0155]TEMP1[33:0]←(((SRC2[111:96]*SRC3[111:96])‑(SRC2[127:112]*SRC3[127:[0159]DEST[63:0]←AddT[0160]DEST[127:64]←AddToQuadword({{30{TEMP3[33]}},TEMP3[33:0]},DEST[127:[0162]在一个实施例中,随后通过反转每个值的位并且随后将被反转的结果增加1来使源寄存器SRC21401和存储数据元素S3A-S3H的第二源寄存器SRC31402(此处使用S2作为[0166]S2G*S3G-S2H*S3H+S2E*S3E-S2F*S3F.[0168]DEST[63:0]←AddT[0169]DEST[127:64]←AddToQuadword({{30{TEMP3[33]}},TEMP3[33:0]},DEST[127:[0171]包括加法器1420-1421的累加电路将以上结果与存储在SRC1/DEST寄存器1460中的先前累加的结果(如果有)组合。具体而言,将加法器网络1410的输出AN0_A至AN0_D与SRC1/DEST寄存器1460中的元素位置A-D中的累加数据组合。由饱和电路1440使结果饱和一源寄存器的所选择的紧缩虚数数据元素乘以来自第二源寄存器的对应的紧缩虚数数据[0175]在1505处,使第一和第二实乘积的所选择的组合相加/相减以分别生成临时结果的((S2C*S3C)-(S2D*S3D))+((S2A*S3A)-(S2B*S3B)),以及用于生成第二临时结果的组合,并且将累加结果往回存储到该目的地寄存器中的较低的64位(跨越四个紧缩数据元[0185]本发明的一个实施例使用图14A中示出的架构来使用有符号字将复数的紧缩虚部Imaginary((16+16i)×(16+16i)))+64i=64i以计算并累[0187]一个特定实施例解码并执行单条指令,以执行向量紧缩双复数乘加和虚部的累[0188]TEMP0[33:0]←(((SRC2[47:32]*SRC3[63:48])+(SRC2[63:48]*SRC3[47:32]))+[0189]TEMP1[33:0]←(((SRC2[111:96]*SRC3[127:112])+(SRC2[127:112]*SRC3[111:96]))+((SRC2[79:64]*SRC3[95:80])+(SRC2[0193]DEST[63:0]←AddT[0194]DEST[127:64]←AddToQuadword({{30{TEMP3[33]}},TEMP3[33:0]},DEST[127:[0195]TEMP0存储使用来自SRC2和SRC3的下半部(即,位63:0)的数据元素的乘法和加法[0197]返回图14A,第一源寄存器SRC21401存储数据元素S2A-S2HD、F和H是虚数。八个乘法器1405将SRC2中的实/虚数据元素与SRC3中的虚/实数据元素相S2A*S3B+S2B*S3A,并且被相加并被存储在TEMP1中的乘积是S2G*S3H+S2H*S3G+S2E*S3F+[0200]TEMP1[33:0]←S2G*S3H+S2H*S3G+S2E*S3F+S2F*S3E.[0206]包括加法器1420-1421的累加电路将以上结果与存储在SRC1/DEST寄存器1460中饱和电路1441使虚结果饱和,并且将该虚结果往回输出到SRC1/DEST寄存器1460的同一区[0207]图14B图示出包括2补码取反电路1470和1471的一个实施例的附加细节,2补码取反电路1470和1471使用2补码取反来分别对由加法器网络1410和1411计算的乘积和进行取1491使用64位临时结果和来自SRC1/DEST寄存器1460的紧缩64位值来执行本文中所描述的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年文化传播与国际交流实践问题
- 2026年宅基地使用权继承问题政策解读测试题
- 2026年河南单招护理专业轮椅运送病人操作模拟试题集
- 2026年国家鼓励发展的重大环保技术装备目录版依托单位申报考核
- 2026年统计守信联合激励题库
- 2026年社会心理学知识学习自测题
- 2026-2032年中国SCR-FI脱硝除尘装置行业市场发展形势及前景战略研判报告
- 2026年绿色制造体系建设知识测试题
- 深圳发展银行贵港市覃塘区2026招聘配置管理岗笔试题库
- 2026年腾讯动漫业务招聘考试题
- 中华人民共和国危险化学品安全法(原版)
- 2026年江苏省英语听力口语考试-话题简述12篇
- 急性呼吸窘迫综合征俯卧位通气指南(2025年版)
- 2026年上海市普陀区社区工作者公开招聘考试大纲备考题库附答案
- 金融公司档案管理制度(标准范本)
- (正式版)DB50∕T 1896-2025 《建设项目占用湿地、湿地公园生态影响评价专题报告编制规范》
- 公路道路施工组织设计方案范本(完整版)
- 2026北京中牧实业股份有限公司高校毕业生招聘21人备考笔试题库及答案解析
- DB31∕T 1048-2020“上海品牌”认证通 用要求
- 直燃机维修协议书
- 建材的合作合同范本
评论
0/150
提交评论