用于矢量处理的可扩展并行流水线浮点单元的制作方法

文档序号:6557415阅读:159来源:国知局
专利名称:用于矢量处理的可扩展并行流水线浮点单元的制作方法
技术领域
本发明的实施例涉及微处理器领域,尤其涉及浮点单元。
背景技术
浮点(FP)运算的使用在诸如三维(3-D)计算机图形、图像处理、数字信号处理、天气预报、空间探测、地震处理和数值分析的许多计算机领域里逐渐变得普及。已经开发了专门设计的浮点单元来增强计算机系统里的FP计算能力。许多FP应用程序涉及矢量处理。设计用于矢量处理的浮点处理器(FPP)通常使用流水线结构。
用于流水线FPP的现有技术通常使用单深度流水线(deep pipeline)来进行矢量处理。虽然这个方法对一些应用程序可能是简单和充分的,但它对于高强度的矢量处理而言具有许多缺点。当问题大小改变时一不管是增加还是减少—很难改变该体系结构。也可能存在死锁,从而导致低的流水线利用率。简单的指令可能具有与复杂指令相同的等待时间,从而导致流水线的低效使用。其它缺点包括低的吞吐量、吞吐量取决于矢量总数等。


通过参考下述描述和用来示例说明本发明实施例的附图可以最好的理解本发明的实施例,在附图里图1A是示例说明可以实施本发明的一个实施例的处理系统的图。
图1B是示例说明可以实施本发明一个实施例的图形系统的图。
图2是示例说明根据本发明一个实施例的FPU的图。
图3是示例说明根据本发明一个实施例的调度器的图。
图4是示例说明根据本发明一个实施例的FP流水线的图。
图5是示例说明根据本发明一个实施例的仲裁器和组装单元的图。
图6是示例说明根据本发明一个实施例的为矢量处理执行FP运算的过程的流程图。
图7是示例说明根据本发明一个实施例的分派矢量输入的过程的流程图。
图8是示例说明根据本发明一个实施例的仲裁和组装的过程的流程图。
具体实施例方式
本发明的实施例是为矢量处理执行浮点运算的技术。输入队列捕获多个矢量输入。调度器分派所述矢量输入。多个浮点(FP)流水线根据对由调度器分派的矢量输入的标量分量的运算而产生FP结果。仲裁器和组装单元仲裁输出部件的使用并组装FP结果以写入到输出部件。
在以下说明中描述了大量细节。然而,应当理解本发明的实施例可以脱离这些细节而实现。在其它情况里,没有示出公知电路、结构和技术以避免混淆对该说明的理解。
本发明的一个实施例可描述为一个过程,其通常被描述为流程图、程序框图、结构图或块图。尽管流程图可将运算描述为按照时间顺序的过程,但许多运算可并行或同时执行。此外运算的顺序也可重新安排。当过程的运算完成时该过程也就结束了。过程可对应于方法、程序、工序、制造或装配方法等。
本发明的一个实施例是为矢量处理有效地执行FP运算的技术。该技术使用FP单元(FPU)体系结构,该体系结构使用多个浅流水线而不是单深度流水线。这在计算能力和缓冲深度方面提供了高度的可扩展性。通过改变流水线的数量,该体系结构就可以适应任何计算需求。将进入的矢量输入分解或者拆解为一组独立的标量分量,将这些标量分量转发到多个FP流水线以并行处理。一个简单的仲裁模式以异步方式将FP结果分配到输出缓冲器并重新组装该整个矢量结果。这种无次序的完成可允许在长的等待时间和复杂指令之前完成短的等待时间和简单指令,导致高的吞吐量。通过在命令完成时而不是在分派的时候分配输出缓冲器空间,该仲裁模式也提供改进的死锁阻止,产生高的流水线利用率。
图1A是可以实现本发明一个实施例的处理系统10的图。系统10包括处理器单元15,浮点单元(FPU)20,存储器控制器集线器(MCH)25,主存储器30,输入/输出控制器集线器(ICH)40,互连45,海量存储设备50,及输入/输出(I/O)设备471到47k。
处理器单元15表示任何类型体系结构的中央处理单元,诸如使用超线程、安全、网络、数字媒体技术的处理器、单核心处理器、多核心处理器、嵌入处理器、移动处理器、微控制器、数字信号处理器、超标量计算机、矢量处理器、单指令多数据(SIMD)计算机、复杂指令集计算机(CISC)、精简指令集计算机(RISC)、超长指令字(VLIW)或混合结构。
FPU20是为矢量处理执行浮点运算的协处理器。它可具有与处理器单元15的直接接口,并可与处理器单元15共享系统资源,诸如存储空间。处理器单元15和FPU20可交换指令和数据,包括矢量数据及FP指令。FPU20也可看作占有处理器单元15的地址空间的输入/输出(I/O)处理器。它也可连接到MCH25而不是直接连接到处理器单元15。它使用具有用于高效矢量处理的多个FP流水线的高度可扩展体系结构。
MCH25提供诸如主存储器30和ICH40的存储器和输入/输出设备的控制和配置。MCH25可集成到芯片组,该芯片组集成了诸如图形、媒体、孤立执行模式、主到外围总线接口、存储器控制、电源管理等多个功能。MCH25或MCH25里的存储控制功能可集成在处理器单元15里。在一些实施例里,不管存储器控制器是在处理器单元15的内部还是外部,都可为处理器单元15的所有核心或处理器工作。在其它实施例里,存储器控制器可以包括可分别为处理器单元15里的不同核心或处理器工作的不同部件。
主存储器30存储系统代码和数据。所述主存储器30通常可由动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)或包括不需要刷新的存储器的任何其它存储器类型来实现。所述主存储器30可由处理器单元15访问或由处理器单元15和FPU20访问。
ICH40具有设计为支持I/O功能的多个功能。可将所述ICH40与MCH20一起集成到芯片组或与MCH20分离地执行I/O功能。ICH40可包括多个接口和I/O功能,如外设部件互连(PCI)总线接口、处理器接口、中断控制器、直接存储器存取(DMA)控制器、电源管理逻辑、计时器、系统管理总线(SMBus)、通用串行总线(USB)接口、海量存储器接口、低管脚数(LPC)接口等。
互连45提供与外部设备的接口。互连45可是点对点或连接到多个设备。为清楚起见没有示出所有的互连。可以预期的是,互连45可包括任何互连或总线如外设部件互连(PCI)、PCI快速、通用串行总线(USB)和直接媒体接口(DMI)等。
海量存储设备50存储存档信息,诸如代码、程序、文件、数据和应用程序。所述海量存储设备50可包括致密盘(CD)、只读存储器(ROM)52、数字化视频/多用盘(DVD)53、软盘驱动器54和硬盘驱动器56,及任何其它磁性或光学存储设备。该海量存储设备50提供读取机器可访问介质的机制。I/O设备471到47k可包括任何I/O设备来执行I/O功能。I/O设备471到47k的示例包括用于输入设备(例如键盘,鼠标,跟踪球,指向设备)、媒体卡(例如音频、视频、图形)、网卡的控制器,及任何其它外设控制器。
图1B是可实现本发明一个实施例的图形系统60的图。图形系统60包括图形控制器65、浮点单元(FPU)70、存储器控制器75、存储器80、像素处理器85、显示处理器90、数模转换器(DAC)95和显示监视器。
图形控制器65是任何具有用于执行图形操作的图形能力的处理器,所述图形操作例如是快速线条绘制、二维(2-D)和三维(3-D)图形着色功能、明暗处理、反锯齿、多边形着色、透明效果、色彩空间转换、α混合、色度调节等。FPU70基本上与图1A示出的FPU20相类似。它对图形数据执行浮点运算。FPU70可从FP图形控制器65接收FP指令和FP矢量输入并向图形控制器65返回FP结果。存储器控制器75执行与图1A里的MCH25相类似的存储器控制功能。存储器80包括SRAM或DRAM存储设备来存储器由图形控制器60和FPU70处理的指令和图形数据。
像素处理器85是专门的图形引擎,可执行特定和复杂的图形功能,诸如几何计算、仿射变换、模型视图投影、3-D剪辑等。像素处理器85也可连接到存储器控制器70来访问存储器80和/或图形控制器65。显示处理器90处理图形数据的显示并执行与显示有关的功能,如调色板表查找、同步、逆光控制器、视频处理等。DAC95将数字显示数字数据转换成模拟视频信号到显示监视器97。显示监视器97是任何可在屏幕上显示图形信息以观看的显示监视器。显示监视器可是阴极射线管(CRT)监视器、电视(TV)设备、液晶显示屏(LCD)、平板或数字CRT。
图2是示例说明根据本发明一个实施例的FPU20/70的图。FPU20/70包括输入队列210、矢量输入选择器220、调度器230、FP部件240、仲裁器和组装单元240及输出部件260。
输入队列210从处理器单元15(图1)、图形控制器60(图2)或存储矢量输入的数据存储器获取或存储将被处理的矢量输入。每个矢量输入包括FP指令和与该指令关联的矢量数据。所述FP指令可是任何FP运算,诸如FP加法、FP减法、FP乘法、FP除法、FP三角函数等。所述矢量数据可包括多个标量分量。矢量宽度可是任何宽度(例如64位、128位)。输入队列210可由具有合适深度和宽度的先进先出(FIFO)存储器实现,或者是平面的,实际上同时显露所有条目,或者是它们的组合。在其它实施例里,输入队列210可以是没有顺序限制的缓冲存储器。
矢量输入选择器220从输入队列210选择矢量输入来发送到调度器230。它包括K个多路复用器2251到225k。每个多路复用器具有连接到输入队列210的一个或多个输出的多个输入。矢量输入的选择可基于合适的准则。
调度器230接收由矢量输入选择器220选择的矢量输入,并依据FP指令、FP部件240的可用性和该实现方式特定的可选其它准则将包含在所述矢量输入内的浮点运算分派到FP部件240以进行处理。调度器230将唯一标识符(ID)或序列号分配给每个矢量输入,并将所述矢量输入的唯一ID转发到仲裁器和组装单元250,并将分派给FP部件240的每个运算和此ID包括在一起。
FP部件240根据FP指令对分派的矢量输入执行FP运算。FP部件240可包括并行并且相互独立运行的P个FP流水线2451到245P。数字P可是任何适用于应用程序的数。P个FP流水线2451到245P可以相同也可以不同。它们包括设计用来执行特定FP运算的独立的FP流水线,诸如FP加法器、FP减法器、FP除法器、FP乘法器、FP复杂数学运算函数(例如三角函数)等。所述P个FP流水线2451到245P可具有导致相同或不同等待时间的相同或不同深度。调度器230根据与所述矢量输入相关联的FP指令及所述FP流水线是否是可用或者空闲,将运算分派给P个FP流水线2451到245P的一个。P个FP流水线2451到245P的每一个产生状态信号给调度器230,以表明该FP流水线是否能够接收额外的FP运算或是否不可用。如果FP流水线不可用,并且所述FP指令需要使用该流水线,则所述调度器230将相应的矢量输入保持在等待队列里直到所述FP流水线或另一个合适的FP流水线可用为止。P个FP流水线2451到245P的每一个在输出端产生FP结果。
仲裁器和组装单元250将FP结果从FP部件240写入到输出部件260。仲裁器和组装单元250在FP部件240的输出端有多个FP结果可用的时候,仲裁输出部件的使用。当FP结果之间有一个优胜者时,仲裁器和组装单元250将所述FP结果写入输出部件的分配在合适位置上的输出缓冲器。实际上,仲裁器和组装单元250在矢量输入的所有标量分量处理完毕之后,为每个结果矢量组装所述FP结果。
输出部件260存储由仲裁器和组装单元250写入的FP结果。所述FP结果可被清空、读取或由另一单元如处理器单元15、图形控制器60或任何其它进一步处理的消费实体使用。输出部件260包括Q个输出缓冲器2651到265Q。每个输出缓冲器具有足够的存储容量来存储结果矢量。输出缓冲器可实现为寄存器或存储器。Q个输出缓冲器2651到265Q的每一个具有状态信号来表明它是否获得了矢量结果的所有标量分量,及它的内容是否已被清空、读取或被系统里的其它消费实体使用。仲裁器和组装单元250监视这些状态信号,以确定输出缓冲器是否可用或空闲以用于写入。
图3是根据本发明一个实施例示例说明图2示出的调度器230的图。调度器230包括ID产生器310、矢量分解器320和分派器330。
所述ID产生器310为调度要加以分派的矢量输入产生唯一ID。所述唯一ID可根据矢量输入到达输入队列210的顺序或由矢量输入选择器220选择的顺序来顺序地或递增地产生。所述ID可以在零到K内,其中K大于可以包含在图2示出的P个FP流水线2451到245P中的唯一矢量指令的个数。唯一ID与标量分量一起被分派到FP部件240的FP流水线,并通过相关联的FP流水线与FP结果一起传送到该FP流水线的输出端。也可由仲裁器和组装单元250使用来将FP结果分配到输出缓冲器并将属于相同ID的所有FP结果组装到输出部件260里分配的输出缓冲器。
矢量分解器320将矢量输入分解成多个标量分量。每个标量分量具有表明其在关联的输入矢量中的位置的标量位置标记。矢量分解器320将分解的标量分量及其的位置标记转送到分派器330。
分派器330接收FP部件240里的FP流水线2451到245P的状态信号,以确定它们的可用性并将标量分量发送给FP部件240中可用的FP流水线。分派器330也将矢量输入的ID和位置标记及该矢量输入的标量分量发送给仲裁器和组装单元250。
图4是根据本发明一个实施例示例说明图2示出的FP流水线245K的图。所述FP流水线245K包括选择器410和流水线(PL)单元420。
选择器410选择从调度器230发送的标量分量及在PL单元420的输出端的FP结果。当FP结果的ID与仲裁器和组装单元250分配的ID不匹配时,重新循环该FP结果。所述重新循环的FP结果被标上空操作标记,以致于使得它可通过PL单元无修改地传播,由此保持了其值。选择器410可实现为在PL单元420的输入端的多路复用器。
PL单元420对标量分量执行浮点运算。它具有M个PL级4251到425M。深度M可以是任何适合于可扩展性和/或吞吐量需求的深度。PL单元420在输出端产生FP PL结果到仲裁器和组装单元250。此外,所述标量分量所属于的矢量输入的ID及在该矢量内部的位置标记也沿着M个PL级4251到425M传播。将这个FP PL ID与仲裁器和组装单元250分配的ID进行匹配以确定所关联的FP PL结果是否可写入输出缓冲器,或是否需要重新循环回选择器410。如果该运算未完成,诸如为计算目的需要额外通过,或完成了运算但没有匹配,则重新循环所述FP PL结果以等待输出缓冲器变得可用。如果运算完成并且匹配,则利用对应的位置标记将所述FP PL结果写入所分配的输出缓冲器的合适位置。PL单元420也产生状态信号到调度器230以表明该PL单元是繁忙还是可用于处理标量分量。
图5是示例说明根据本发明一个实施例的仲裁器和组装单元250的图。仲裁器和组装单元250包括ID队列510、仲裁器520、匹配电路530和组装器540。
所述ID队列510存储从调度器230发送的ID。该ID队列可由FIFO或任何其它合适的存储机制来实现。它的深度取决于并行FP流水线的数量P、可扩展性和/或吞吐量需要。此外,可以让多个ID为仲裁器520所用。
仲裁器520从ID队列510接收ID,并从输出部件260接收状态信号。该状态信号由输出缓冲器提供以表明该输出缓冲器是否可用。如果输出部件260中的输出缓冲器可用,贝仲裁器520将ID分配给这个输出缓冲器。仲裁器520可利用循环复用、先进先出或任何其它合适的分配模式来将ID分配给输出缓冲器。一旦输出缓冲器被分配了ID,其使用该分配的ID直到所有的标量分量都被写入到该输出缓冲器为止。然后仲裁器520将所有分配的ID传送到匹配电路530。通过在仲裁器520中推迟缓冲器分配可改进死锁阻止,导致高的流水线利用率。
匹配电路530将与在输出部件260里的FP流水线2451到245P的输出端的FP PL结果相关的ID与分配的ID进行匹配。如果存在任何匹配,则匹配电路530将匹配结果发送到组装器530。对于没有匹配的任何FP PL ID,对应的FP流水线将它的FP PL结果重新循环到它的输入端。匹配电路530可将FP PL ID与单个分配的ID或多个分配的ID进行匹配。由于匹配多个分配的ID能够使与较短等待时间流水线相关的指令通过长等待时间流水线相关的指令,因此匹配多个分配的ID可提供更高的吞吐量。匹配电路530可通过多个并行执行比较的比较器来实现。比较器可用L个异或门构成来执行逐位比较,后面连接了一个L个输入的或门,其中L是ID的字大小,或用等价的逻辑电路来构成。
组装器540接收匹配电路530的结果、从调度器230接收位置标记及从FP部件240接收FP PL结果。它将具有与分配的ID相匹配的ID的FP结果写入到输出缓冲器里通过对应标量位置标记指示的位置。
图6是根据本发明一个实施例示例说明为矢量处理执行FP运算的过程600的流程图。
在开始之后,过程600获得矢量输入(块610)。每个矢量输入具有N个标量分量。然后,过程600根据FP指令和FP流水线的可用性将矢量输入分派给所述FP流水线(块620)。接着,过程600通过对矢量输入执行FP运算产生FP结果(块630)。然后,过程600仲裁输出部件的使用并将所述FP结果组装到输出部件(块640),然后结束。
图7是根据本发明一个实施例示例说明图6示出的分派矢量输入的过程620的流程图。
在开始之后,过程620为矢量输入产生ID(块710)。所述ID对每个矢量输入是唯一的。然后过程620将所述ID传送到仲裁器和组装单元(块720)。接着,过程620将所述矢量输入分解成标量分量,并将每个标量分量与一个标量位置标记关联以表明该标量分量在矢量输入里的位置(块730)。然后,过程620确定用于标量分量的FP流水线是否可用(块740)。如果不可用,则过程620返回到块740以等待可用的FP流水线。否则过程620将该标量分量、ID和位置标记发送到可用的FP流水线(块750)。
然后,过程620确定是否还有针对这个矢量的标量分量(块760)。如果还有,则过程620返回块740以继续等待可用的FP流水线。否则结束过程620。
图8是根据本发明一个实施例示例说明图6示出的仲裁和装配的过程640的流程图。
在开始之后,过程640确定输出缓冲器是否可用(块810)。如果不可用则结束过程640。否则,过程640将来自ID队列的ID分配到可用的输出缓冲器(块820)。可利用循环复用、先进先出和任何其它合适的分配原则来实施该分配。然后,过程640确定在FP流水线的输出端的已完成操作的FP ID是否与分配的ID相匹配(块830)。如果不匹配,则过程640返回到块830以继续检查。由于FP流水线彼此独立和并行地运行,最终将会有一个与分配的ID相匹配的FP ID。如果存在匹配,那么过程640将该FP结果与匹配的ID一起写入输出缓冲器中由与该FP结果关联的位置标记指示的位置(块840)。
然后,过程640确定在输出缓冲器里的该矢量是否已完成(块850)。当该输出缓冲器里的矢量的所有标量分量都被写入所述输出缓冲器时,该输出缓冲器里的矢量已经完成。如果没有完成,则过程640返回块830以检查后来的匹配。否则,过程640将所述输出缓冲器标记为完成并将结果数据位就绪的信息通知给消费实体(块860)。消费实体可以是图1A和图1B示出的处理器15或图形控制器65。然后,过程640确定结果数据是否已经被消费实体使用(块70)。如果没有,则过程640返回块870以继续检查。否则,过程640将可用状态发送到仲裁器单元以表明所述输出缓冲器现在可用来接收新的结果数据(块880)。过程640然后结束并在所述输出缓冲器被清空之后,将可用状态发送给仲裁器和组装单元(块860),然后结束。
虽然已经根据几个实施例描述了本发明,本领域的普通技术人员将认识到本发明并不限于所描述的实施例,而是可以通过在所附权利要求的精神和范围里修改和变化来实现。因此说明书只是用来示例说明而不是限制。
权利要求
1.一种设备,包括输入队列,用于捕获多个矢量输入;耦合到所述输入队列的调度器,用于分派所述矢量输入中的运算;耦合到所述调度器的多个浮点(FP)流水线,用于根据对所述调度器分配的矢量输入的标量分量的运算来产生FP结果;及耦合到所述多个FP流水线的仲裁器和组装单元,用于仲裁输出部件的使用和组装所述FP结果以写入到所述输出部件。
2.如权利要求1所述的设备,其中所述调度器包括标识符产生器,用于为多个矢量输入里的矢量输入产生标识(ID);用于将所述矢量输入分解成标量分量的矢量分解器,其中每个标量分量具有表明该标量分量在关联的输入矢量里的位置的位置标记;及耦合到所述标识符和所述矢量分解器的分派器,用于将标量分量和位置标记发送到FP流水线,所述分派器将所述ID转发到仲裁器和组装单元。
3.如权利要求2所述的设备,其中所述仲裁器和组装单元包括仲裁器,用于将所述ID分配到输出部件里的输出缓冲器;匹配电路,用于将所述FP结果的ID和分配的ID相匹配;及组装器,用于将具有与分配的ID相匹配的ID的FP结果写入输出缓冲器里由标量位置标记指示的位置。
4.如权利要求3所述的设备,其中每个FP流水线包括输入选择器,用于选择从调度器发送的标量分量之一和在需要额外通过或当所述ID与分配的ID不匹配时被重新循环的FP结果。
5.如权利要求3所述的设备,其中所述仲裁器和组装单元还包括ID队列,用于存储从调度器分派的ID。
6.如权利要求5所述的设备,其中所述仲裁器根据循环复用和先进先出模式中的一个分配来自ID队列的ID。
7.如权利要求3所述的设备,其中所述仲裁器将ID分配到可用的输出缓冲器。
8.一种方法,包括把多个矢量输入捕获到输入队列里;利用调度器来分派矢量输入中的运算;利用多个浮点(FP)流水线,根据对调度器分派的矢量输入的标量分量的运算来产生FP结果;利用仲裁器和组装单元来仲裁存储所述FP结果的输出部件的使用;将所述FP结果组装到输出部件。
9.如权利要求8所述的方法,其中所述分派步骤包括为多个矢量输入中的矢量输入产生标识(ID);将所述矢量输入分解成标量分量,其中每个标量分量具有表明该标量分量在关联的输入矢量里的位置的位置标记;及将标量分量和位置标记发送到FP流水线;及将所述ID转发到仲裁器和组装单元。
10.如权利要求9所述的方法,其中所述仲裁器和组装单元包括将ID分配到输出部件里的输出缓冲器;将FP结果的ID和分配的ID进行匹配;及将具有与分配的ID相匹配的ID的FP结果写入输出缓冲器里由标量位置标记指示的位置。
11.如权利要求10所述的方法,还包括选择从调度器发送的标量分量之一和在需要额外通过或当所述ID与分配给多个FP流水线之一的ID不匹配时被重新循环的FP结果。
12.如权利要求10所述的方法,其中所述仲裁步骤包括将从调度器分派的ID存储到ID队列里。
13.如权利要求12所述的方法,其中仲裁包括根据循环复用和先进先出模式中的一个来分配来自ID队列的ID。
14.如权利要求10所述的方法,其中仲裁包括将ID分配给可用的输出缓冲器。
15.一种系统,包括用于处理图形数据的图形控制器;存储器,耦合到所述图形控制器以存储所述图形数据;浮点单元(FPU),耦合到所述图形控制器用于对所述图形数据执行浮点运算,所述FPU包括用于捕获多个矢量输入的输入队列,耦合到所述输入队列的调度器,用于分派矢量输入里的运算,耦合到所述调度器的多个浮点(FP)流水线,用于根据对调度器分派的矢量输入的标量分量的运算产生FP结果,及耦合到所述多个FP流水线的仲裁器和组装单元,用于仲裁输出部件的使用和组装所述FP结果以写入所述输出部件。
16.如权利要求15所述的系统,其中所述调度器包括标识符产生器,用于为多个矢量输入里的矢量输入产生标识(ID);用于将所述矢量输入分解成标量分量的矢量分解器,其中每个标量分量具有表明该标量分量在关联的输入矢量里的位置的位置标记;及耦合到所述标识符产生器和所述矢量分解器的分派器,用于将标量分量和位置标记发送到FP流水线,所述分派器将所述ID转发到仲裁器和组装单元。
17.如权利要求16所述的系统,其中所述仲裁器和组装单元包括仲裁器,用于将ID分配到输出部件里的输出缓冲器;匹配电路,用于将FP结果的ID和分配的ID进行匹配;及组装器,用于将具有与分配的ID相匹配的ID的FP结果写入输出缓冲器里由标量位置标记指示的位置。
18.如权利要求17所述的系统,其中每个FP流水线包括输入选择器,用于选择从调度器发送的标量分量之一和在需要额外通过或当所述ID与分配的ID不匹配时被重新循环的FP结果。
19.如权利17所述的系统,其中仲裁器和组装单元还包括ID队列,用于存储从所述调度器分派的ID。
20.如权利要求19所述的系统,其中所述仲裁根据循环复用和先进先出模式中的一个来分配来自ID队列的ID。
全文摘要
本发明涉及一种为矢量处理执行浮点运算的技术。输入队列捕获多个矢量输入。调度器分配所述矢量输入。多个浮点(FP)流水线根据对所述调度器分配的矢量输入的标量分量的运算来产生FP结果。仲裁器和组装单元仲裁输出部件的使用并组装所述FP结果以写入所述输出部件。
文档编号G06T1/20GK1983164SQ20061006392
公开日2007年6月20日 申请日期2006年9月27日 优先权日2005年9月28日
发明者D·多诺夫里奥, M·德怀尔 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1