CN1849588A - 用于测试和配置半导体功能电路的系统和方法 - Google Patents
用于测试和配置半导体功能电路的系统和方法 Download PDFInfo
- Publication number
- CN1849588A CN1849588A CNA2004800261487A CN200480026148A CN1849588A CN 1849588 A CN1849588 A CN 1849588A CN A2004800261487 A CNA2004800261487 A CN A2004800261487A CN 200480026148 A CN200480026148 A CN 200480026148A CN 1849588 A CN1849588 A CN 1849588A
- Authority
- CN
- China
- Prior art keywords
- functional module
- assembly
- running
- integrated circuit
- functional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 241
- 238000000034 method Methods 0.000 title claims abstract description 226
- 239000004065 semiconductor Substances 0.000 title description 3
- 239000013078 crystal Substances 0.000 claims abstract description 244
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 15
- 230000008520 organization Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 258
- 230000002950 deficient Effects 0.000 claims description 153
- 238000012545 processing Methods 0.000 claims description 113
- 230000008859 change Effects 0.000 claims description 110
- 230000008569 process Effects 0.000 claims description 72
- 238000004458 analytical method Methods 0.000 claims description 71
- 238000003860 storage Methods 0.000 claims description 47
- 230000003213 activating effect Effects 0.000 claims description 45
- 230000004913 activation Effects 0.000 claims description 41
- 238000004519 manufacturing process Methods 0.000 claims description 41
- 238000004891 communication Methods 0.000 claims description 30
- 239000008187 granular material Substances 0.000 claims description 28
- 230000000712 assembly Effects 0.000 claims description 27
- 238000000429 assembly Methods 0.000 claims description 27
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 claims description 26
- 230000007547 defect Effects 0.000 claims description 25
- 238000009826 distribution Methods 0.000 claims description 24
- 239000002245 particle Substances 0.000 claims description 21
- 239000013598 vector Substances 0.000 claims description 18
- 230000000694 effects Effects 0.000 claims description 16
- 230000003750 conditioning effect Effects 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 14
- 230000009467 reduction Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 238000011069 regeneration method Methods 0.000 claims description 9
- 238000003909 pattern recognition Methods 0.000 claims description 8
- 238000013461 design Methods 0.000 claims description 7
- 238000005314 correlation function Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000003542 behavioural effect Effects 0.000 claims description 4
- 238000007689 inspection Methods 0.000 claims description 4
- 230000002860 competitive effect Effects 0.000 claims description 3
- 238000012508 change request Methods 0.000 claims description 2
- 238000001994 activation Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 13
- 230000006399 behavior Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 7
- 230000001483 mobilizing effect Effects 0.000 description 7
- 238000012216 screening Methods 0.000 description 6
- 230000036541 health Effects 0.000 description 5
- 238000007667 floating Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000005611 electricity Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000001259 photo etching Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000001846 repelling effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
- 230000007474 system interaction Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 229940095676 wafer product Drugs 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318544—Scanning methods, algorithms and patterns
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318566—Comparators; Diagnosing the device under test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/267—Reconfiguring circuits for testing, e.g. LSSD, partitioning
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31704—Design for test; Design verification
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Semiconductor Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明揭示在集成电路中激活功能组件的配置的系统和方法。一种本发明的系统和方法可基于包括制造缺陷、兼容性特征、性能要求和系统健康(例如,正确运作组件的数目)的多种因素而灵活地改变在一集成电路晶粒中的功能组件的运作特征。以配置抽象和组件组织的多种等级(例如,拓扑式转换分析)来测试并分析功能组件运作行为。所述测试和分析可对多个功能组件并行执行。功能组件配置相关信息以多种粒度等级并实时地呈现在一图形用户界面(GUI)中。所述图形用户界面可促进在辨别失败图案、产品测试调谐和场配置算法调整上可促进用户进行用户交互。也可以多种便利的数据库格式来组织所述测试和分析信息。
Description
本专利申请主张共同待决共同拥有的2003年9月15日递交的美国专利申请案第60/503,710号、2003年12月18日递交的美国专利申请案第10/740,721号、2003年12月18日递交的美国专利申请案第10/740,722号、2003年12月18日递交的美国专利申请案第10/740,723号、2003年12月18日递交的美国专利申请案第10/740,779号和2004年6月23日递交的美国专利申请案第10/876,340号的权利,所述申请案以引用的方式并入本文。
技术领域
本发明涉及半导体制造领域。特别而言,本发明涉及一种用于在集成电路内动态配置功能组件的运作特征的系统和方法。
背景技术
电子系统和电路已对现代社会的前进产生了显著贡献,且用于大量应用中以达到有利结果。诸如数字计算机、计算器、音频装置、视频设备和电话系统的众多电子技术促进在商业、科学、教育和娱乐的大部分领域中的分析和通信数据方面具有提高的生产率和降低的成本。提供这些有利结果的电子系统通常包括集成电路。需要使用具有很高可靠性特征的集成电路来防止错误结果。然而,设计和建置具有不同功能和性能特征的集成电路是具有挑战性的。另外,建置集成电路的制造过程是高度复杂和资源密集的。
制造集成电路是昂贵、资源密集的活动,其中众多计算组件包括在单个集成电路单元中。所述计算组件通常需要能够以很高的可靠性来执行多种任务。多种应用通常要求不同的性能等级和功能。通常,每一晶粒使用预订数量的提供设定功能的适当执行组件来制造。然而,以可接受的可靠性来提供合适和有效的功能通常是困难的。举例而言,许多传统方法要求存在少数或没有缺陷组件包括在集成电路中。
常规而言,在包含多个晶粒的晶片中制造集成电路,其中每一晶粒包含具有众多功能组件的集成电路。从一给定晶片功能上可接受的晶粒数目称为来自所述晶片的良率。需要维持较高良率以便对于给定数目的晶粒消除浪费、节约成本和加速有效制造时间。具有大量组件的高性能晶片的良率可是非常低的。
由存储器芯片制造者使用以减轻在集成电路中出现缺陷组件的影响的一个方法是产生具有多于需要的组件(例如,存储器单元)的晶粒。如果存在缺陷组件,那么断开所述缺陷组件且使用“剩余”组件中的一个。此方法通常导致贵重晶粒面积和即使在替换缺陷组件后仍保持“剩余”的制造组件资源的相当大的浪费。所述剩余组件并不有助于功能和/或运作生产率。显著数目的晶粒最终具有未使用的具有极其良好运作能力的众多“剩余”组件。
处理缺陷组件的另一传统尝试是如果与特定功能相关联的一个功能组件缺陷那么去除功能能力。举例而言,如果处理器的浮点加速组件有缺陷,那么使用常规修补技术来去除或禁用浮点加速功能,且处理器变为非浮点加速处理器。另外,最终结果为具有有限能力且不提供完整功能范围(例如,不能够执行浮点运作)的可用集成电路。
发明内容
本发明系统和方法激活于集成电路中功能组件的配置。本发明系统和方法可基于多种因素而灵活改变集成电路晶粒中功能组件的运作特征,所述因素包括制造缺陷、兼容性特征、性能需求和系统健康(例如,正确运作组件的数目)。在本发明的一个实施例中,分析功能组件运作行为。所述分析可在配置抽象和组件组织(例如,拓扑反转分析)的不同等级执行,且可为多个功能组件并行执行。基于分析结果来确定运作特征设定。
在一个实施例中,在配置抽象和组件组织的不同等级处确定运作特征设定。根据运作特征设定来执行功能组件重新配置方法。在一个示范性实施中,功能组件重新配置方法包括确定所指示功能组件配置更改是否有效;引导功能组件配置的更改;及根据功能组件配置的更改来使工作流程转向。
功能组件配置相关信息可以包括图形用户界面(GUI)的多种便利格式存在。在一个实施例中,GUI指示功能组件建置区块在粒度和实时的不同等级处的通过或失败状态。图形用户界面可以用户友好方式呈现否则以不完整笛卡尔(Cartesian)顺序分散的拓扑反转信息。图形用户界面也可促进用户与多种功能组件运作行为分析特点和运作特征设定确定特点相互作用。举例而言,图形用户界面可促进用户与失败图案辨别、产品测试调谐和场配置算法调整相互作用。
在一个实施例中,本发明配置系统包括功能组件、分配组件、功能组件配置控制器和(视情况)收集组件。功能组件执行处理运作(例如,图形处理运作、浮点运作等)。分配组件分配工作流程信息(例如,图形处理信息、浮点处理信息等)给功能组件。功能组件配置控制器配置功能组件的运作特征。收集组件“收集”来自功能组件的输出和结果,且总计所述运作的结果以用于达到共同目标。
在一个示范性实施中,对一功能组件的运作特征的改变与对其他功能组件的运作特征的改变一致。工作流程调度和分配也基于对功能组件的运作特征的改变而调整。举例而言,功能组件配置控制器改变运作特征设定,且提供对工作流程分配组件改变的指示。工作流程分配组件基于运作特征设定来改变工作流程调度。举例而言,工作流程经转向到特定功能组件或从特定功能组件转向。
本发明系统和方法可用于多种测试运作中。测试一芯片(例如,根据内建自我测试)且识别所述芯片的缺陷功能组件。可并行且在探测或最终分类处执行测试。内建于禁用缺陷组件和激活替换组件的自我修补(BISR)特点中的本发明提供大量柔性特点。举例而言,使集成电路芯片具有待补救的缺陷功能组件,且促进一个实施例中集成电路制造的增加晶片良率。通常,具有缺陷功能组件的集成电路将另外被废除,从而导致生产晶片的成本赋予少量可接受晶粒。在一个实施例中,本发明系统和方法以维持芯片基础功能的方式禁用晶粒中的缺陷功能组件。
在一个实施例中,在远端集成电路的配置中使用集中资源。远端功能组件配置结构促进包括在远端定位集成电路晶粒中的功能组件的配置。在一个示范性实施中,进行晶粒功能组件重新配置请求过程,其中系统请求来自远端资源的重新配置码。所述码请求包括指示请求者经授权接收重新配置码(例如,请求者已支付必需付款、具有经授权系统等)的重新配置码允许指示符。执行重新配置码产生过程,其中接收重新配置码和允许指示符的请求,分析允许指示符的有效性,且提供重新配置码。当由晶粒接收合适的重新配置码时,在所述晶粒上执行晶粒功能组件重新配置方法。
附图说明
并入本说明书且形成本说明书的一部分的附图以实例而非限制的方式来说明本发明的实施例。应将本说明书中所引用的附图理解为未按比例绘制,除非特定说明。
图1A是根据本发明的一个实施例的集成电路的方框图。
图1B是根据本发明的一个实施例具有组织于管线中的功能组件的集成电路的方框图。
图1C是根据本发明的一个实施例的多处理器基础电路的方框图。
图1D是根据本发明的一个实施例用以控制不同目标的示范性掩膜阵列实施的方框图。
图2是计算机系统的方框图,其中可实施本发明的实施例。
图3是根据本发明的一个实施例的图形管线的方框图。
图4是根据本发明的一个实施例的功能组件配置方法的流程图。
图5是根据本发明的一个实施例的降低性能电路补救方法的流程图。
图6是根据本发明的一个实施例的测试环境的方框图。
图7是根据本发明的一个实施例的晶粒分类方法的流程图。
图8是根据本发明的一个实施例的处理单元方框图。
图9是根据本发明的一个实施例的晶片良率优化方法的流程图。
图10是根据本发明的一个实施例的功能组件配置结构的方框图。
图11是根据本发明的一个实施例的远端重新配置方法的流程图。
图12是根据本发明的一个实施例的另一示范性功能组件配置系统的方框图。
图13是根据本发明的一个实施例的功能组件配置分析方法的流程图。
图14是根据本发明的一个实施例的柔性集成电路测试方法的流程图。
图15是根据本发明的一个实施例的集成电路分析系统的方框图。
具体实施方式
现将详细参考本发明的优选实施例,其实例说明于附图中。虽然本发明将配合优选实施例描述,但是应了解其并不希望将本发明限制于这些实施例。相反,本发明希望覆盖替代物、修改和等同物,其可包括于由附加的权利要求所界定的本发明的精神和范畴中。此外,在本发明的以下详细描述中。陈述了众多特殊细节以便提供本发明的彻底理解。然而,所属领域的一般技术人员将显而易见可实施本发明而无需这些特殊细节。在其他实例中,为详细描述众所周知的方法、程序、组件和电路以便不必要地模糊本发明的方面。
以下详细描述之某些部分以电脑存储器内的程序、逻辑区块、处理和资料位运作的其他符号表示而呈现。这些描述和表示通常是那些数据处理领域的技术人员用以将其工作的实质有效传达给所属领域的其他技术人员的方法。程序、逻辑区块、过程等在本文通常被设想为是导致需要结果的步骤或指令的自我一致序列。所述步骤包括物理量的物理操纵。通常(但非必需),这些量采用能够存储、转移、组合、比较或者操纵于电脑系统中的电、磁、光或量子信号的形式。已时常证明(主要出于共同使用的原因)将这些信号称为位、值、元素、符号、字符、术语、数字或其类似物为便利的。
然而,应记住所有那些和相似术语与合适物理量相关联且仅为应用到那些量的便利标签。除非特殊说明否则如以下讨论所见,应了解在整个本说明书中,利用诸如“处理”、“计算”、“确定”、“显示”或其类似物的术语的讨论涉及计算机系统的作用和过程,或操纵或转换表示为物理(例如,电)量的数据的相似处理装置(例如,电、光或量子计算装置)。所述术语涉及操纵或转换计算机系统组件(例如,寄存器、存储器、其他所述信息存储、传输或显示装置等)内物理量为相似表示为其他组件内物理量的其他数据的处理装置的作用和过程。
图1A是根据本发明的一个实施例的集成电路100的方框图。集成电路100包含分配组件110、功能组件配置控制器120、收集组件140和功能组件131、132、133和134。分配组件110耦合到功能组件131、132、133和134,其耦合到收集组件140。功能组件配置控制器120耦合到分配组件110、功能组件131、132、133和134和收集组件140。在本发明的一个实施例中,集成电路100的组件包括于单个晶粒中。集成电路100的组件共同运作以执行信息处理(例如,数据操纵)。在一个示范性实施中,集成电路100的组件执行与共同目标相关的信息处理(例如,与产生图像相关联的图形管线处理)。
分配组件110选择性地分配信息到功能组件131-134(例如,激活功能组件)。应了解分配组件110可分配多种信息。举例而言,分配组件110可分配工作流程信息。工作流程信息可为用于处理与共同目标相关联的信息或数据。举例而言,工作流程信息可为图形相关信息(例如,单个信息流,其中信息流的多个部分包括用于连续配置的图象像素的像素信息)。在一个示范性实施中,分配组件110接收单个工作流程信息流或数据流(例如,图形数据),且分配工作流程信息到功能组件131-134。举例而言,单个信息流可包括与第一像素、第二像素和第三像素相关的信息。分配组件110接收单个像素信息流(例如,数据包序列),且分配第一像素相关信息(例如,个别数据包)到功能组件131,第二像素相关信息到功能组件132,且第三像素相关信息到功能组件133。在另一示范性实施中,分配组件110接收与浮点计算相关的单个信息流,且分配与第一浮点计算相关联的信息到功能组件131,与第二浮点计算相关联的信息到功能组件132,且与第三浮点计算相关联的信息到功能组件133。在一个实施例中,分配组件110也可接收多个信息流,且分配信息到功能组件131-134。应了解分配组件110可在多种实施例中实施,包括分配组件110提供功能或执行除了分配工作流程信息以外的任务的实施例。
功能组件131-134可包括多种实施,其中功能组件131-134执行不同功能运作或任务。在一个实施例中,功能组件131-134提供相似功能(例如,执行并行运作)。举例而言,在一个实施例中功能组件131-134可执行图形处理相关任务(例如,遮影、纹理、遮挡选择等)。在另一实施例中,功能组件131-134可执行浮点相关处理。
收集组件140“收集”来自功能组件131-134的输出或结果。在一个实施例中,收集组件140链接或总计所述运作的结果用于达到共同目标。举例而言,收集组件140可总计所述结果以用于传递到图形缓冲器。在另一实施例中,收集组件140为图形缓冲器。在又一实施例中,收集组件140可总计浮点计算的结果。
集成电路100的组件也共同运作以柔性配置功能组件运作特征(例如,激活/禁用功能组件、改变时钟速度、改变运作电压等)。功能组件配置控制器120控制一个或一个以上功能组件131-134的运作特征(例如,禁用/激活等)中的调整,且可提供信息到关于调整的分配组件110和收集组件140。举例而言,功能组件配置控制器120可禁用或激活功能组件(例如,禁用或激活功能组件132)。功能组件配置控制器120可通知分配组件110对功能组件132运作特征的改变(例如,哪些功能组件经激活、经禁用等)。
分配组件110在分配工作流程信息中可使用关于功能组件132的运作特征的信息。
在一个实施例中,分配组件110可将功能组件的配置包括在给功能组件的信息(例如,包括用于处理的资料的工作流程)的分配中。如果处理器功能组件中的一个经禁用(例如,因为其是缺陷的),那么分配组件110将信息分配到其他剩余处理器功能组件以处理“工作流程。举例而言,如果功能组件132由功能组件配置控制器120禁用,那么分配组件110被通知功能组件132经禁用,且分配组件110可将工作流程定路线到其他功能组件(例如,131、133和/或134)。如果功能组件132由功能组件配置控制器120激活,那么分配组件110被通知功能组件132经激活,且分配组件110可将工作流程定路线到功能组件132。分配组件110也可基于功能组件的性能配置(例如,时钟速度)而将信息分配到剩余经激活的功能组件。在一个示范性实施中,具有较大性能需求的任务(例如,关键任务)投送到具有较大性能特征或能力(例如,更快)的功能组件。举例而言,三维(3D)图形信息可投送到高性能(例如,高速)图形管线,且二维(2D)图形信息可投送到较低性能(例如,较低速)图形管线。在一个实施例中,根据计分板算法来分配信息。
在本发明的一个实施例中,功能组件配置控制器120引导对功能组件131-134的运作特征的改变。运作特征可影响功能组件131-134的性能。举例而言,功能组件配置控制器120可改变功能组件131-134的运作特征状态(例如,激活或禁用所述功能组件)。在一个示范性实施中,功能组件配置控制器120可更改功能组件运作的速度(例如,通过改变时钟频率)和/或由功能组件消耗的功率(例如,通过改变供应给功能组件的电压)。举例而言,功能组件配置控制器120可引导时钟源137改变供应给功能组件131-134的时钟信号的频率,和/或引导电源138改变供应给功能组件131-134的功率信号的电压。
应了解本发明可易于适用于与多种功能组件一起使用。功能组件131-134可是提供多种不同功能(例如,浮点、像素遮影、顶点遮影、存储、缓冲等)的功能单元。在一个示范性实施中,功能组件可在大体相同时间(例如,同时并行)执行相似运作。在本发明的一个实施例中,功能组件是主动型功能组件。功能组件也可包括组织于核心和/或亚核心(例如,与特殊功能相关联的建置区块)中的大量组件。在本发明的一个实施例中,可个别地测试和/或重新配置核心或亚核心。举例而言,可根据本发明重新配置特点来激活和/或禁用特殊核心。
在一个实施例中,功能组件是包括于处理单元中的处理器组件(例如,浮点组件、像素遮影器组件、顶点处理器组件等)。应了解本发明可易于实施于多种处理单元中,包括中央处理单元(CPU)、图形处理单元(GPU)和/或嵌入处理单元。在一个示范性实施中,处理单元包括用于将任务分配给功能组件(例如,浮点组件)的记分板算法。由于结果由处理器功能组件处理,记分板跟踪哪一运作数由处理器功能组件需要且调度其。来自个别处理器功能组件的结果可经组合以提供总结果。记分板可将功能组件配置包括在任务的调度中。举例而言,如果处理器功能组件中的一者经禁用(例如,因为其是缺陷的),那么记分板重新调度其他剩余处理器功能组件以处理所述处理工作流程。
本发明可实施于管线类型(例如,向量类型、线程类型等)的处理环境中。图1B是根据本发明的一个实施例的管线集成电路150的方框图。管线集成电路150是集成电路100的实施,其中功能组件是管线。集成电路150包含分配组件151、功能组件配置控制器152、收集组件154和管线171、172、173和174。管线171、172、173和174执行管线运作(例如,取数、解码和执行指令)。功能组件配置控制器152控制管线171到174的运作特征,且也提供信息到关于管线171到174的运作特征的分配组件151和收集组件154(例如,关于哪些功能组件经禁用和/或经激活的信息)。可在变化的粒度处执行运作特征的控制。举例而言,一管线可包括每一管线内的多个个别功能组件(未图示),其也可经配置(例如,经激活、经禁用等)于个别功能组件基底上。
管线集成电路150的组件相似于集成电路100的组件运作。举例而言,工作流程信息以相似方式被转向或定路线。功能组件配置控制器152提供信息给关于功能组件171-174的运作特征(例如,经禁用、经激活、速度、电压等)的分配组件151。分配组件151部分基于运作特征信息而分配信息给管线171-174(例如,分配工作流程信息给经激活的功能组件和未经禁用的功能组件)。收集组件140“收集”(例如,链接或总计)管线171-174的输出(例如,链接或总计用于存储于图形缓冲器中的结果)。在一个实施例中,功能组件配置控制器152可引导时钟源175改变供应给功能组件171-174的时钟信号的频率,和/或引导电源177改变供应给功能组件171-174的功率信号的电压。
本发明的集成电路可以多种整合等级实施(例如,多种晶粒分层结构和结构)。图1C为多处理器集成电路190的方框图,本发明晶粒分层结构的另一实施例。多处理器集成电路190的组件除了功能组件为处理器之外相似于集成电路100。多处理器集成电路190包含分配组件191、功能组件配置控制器192、收集组件194和处理器195、197、198和199。在一个实施例中,处理器195、197、198和199包括于单个晶粒中且耦合到共同高速缓冲存储器。功能组件配置控制器192可将运作特征调整(例如,禁用/激活)引导到一个或一个以上处理器195-199,且提供运作特征信息给指示处理器195-199的运作特征(例如,指示处理器是否经禁用/激活)的分配组件191和收集组件194。在一个示范性实施中,即使功能组件配置控制器192禁用一处理器(例如,195、197、198或199),但是集成电路190仍提供完整功能。
多处理器集成电路190的组件相似于集成电路100的组件运作。举例而言,工作流程信息以相似方式被转向或定路线。功能组件配置控制器192提供信息给关于功能组件的运作特征(例如,经禁用、经激活、速度、电压等)的分配组件191。分配组件191分配信息(例如,工作流程数据)给处理器195-199。所述分配部分基于运作特征信息(例如,分配工作流程信息给经激活的功能组件和未经禁用的功能组件)。在一个示范性实施中,收集组件194是“收集”或存储处理器195-199的输出的存储器(例如,共同高速缓冲存储器)。在一个实施例中,功能组件配置控制器192可引导时钟源181改变供应给功能组件195-199的时钟信号的频率,和/或引导电源182改变供应给功能组件195-199的功率信号的电压。
在本发明的一个实施例中在性能和功能之间进行区别。在某些实例中,本发明在改变运作特征时并不限制功能,在此意思上即使所述功能或任务可以不同性能等级完成,但是仍能够执行特殊类型的功能或任务。在一个实施例中,功能组件配置控制器并未禁用能够并行执行任务的所有功能组件。举例而言,如果晶粒在一处理器中具有两并行浮点功能组件且功能组件配置更改一个浮点功能组件的激活特征或状态(例如,禁用),那么所述工作流程经“重新定路线”到剩余激活浮点功能组件。由于工作流程由一个浮点功能组件处理而非两个,浮点活动的性能等级可改变(例如,减慢)。然而,晶粒仍具有提供相同功能或任务的能力(例如,执行浮点功能)。
在本发明的一个实施例中,集成电路(例如,集成电路100、集成电路150、集成电路190等)被标记有对应于性能能力的性能指示符(例如,功能组件经激活和/或经禁用的数目)。所述标记可是电子可读标记和/或墨水标记(例如,在晶粒上)。所述标记可是集成电路的质量等级的指示符。所述标记也可对应于与集成电路相关联的性能度量(例如,处理速度、带宽等)。
应了解功能组件配置控制器120、152和/或192可引导功能组件根据多种目标而改变。举例而言,功能组件配置控制器可基于良率问题、兼容性问题、性能问题、系统“健康”问题等来更改功能组件的运作特征。也应了解功能组件配置控制器120、152和/或192可包括多种实施以达到目标,包括软件可编程寄存器或掩膜、硬编码掩膜等。
在一个实施例中,功能组件配置控制器(例如120、152和/或192)引导功能组件的运作特征中的改变以处理良率问题。本发明具有促进集成电路制造中增加晶片良率的益处。本发明系统和方法使具有缺陷功能组件的集成电路被补救。通常,具有缺陷功能组件的晶粒被废除,从而导致生产晶片的成本赋予少量可接受晶粒。本发明允许具有缺陷功能单元的某些晶粒用以执行相同类型的功能,且藉此即使缺陷组件的禁用可影响性能也维持功能。增加一晶片上有用晶粒的数目允许晶片生产的成本赋予较大数目的可接受晶粒。通过允许晶片生产的固定成本赋予较大数目的晶粒,每晶粒的成本可降低,即使较少执行晶粒可以较低价格售出。
本发明促进晶粒的“补救”,即使某些晶粒可以不同性能等级运作。在一个示范性实施中,否则将被废除的晶粒能够提供相同功能,在此意义上所述晶粒执行相同类型的任务。举例而言,具有能够执行浮点运作的并行浮点功能组件的处理器仍能够执行浮点运作,由于在一个实施例中本发明并未禁用所有的并行浮点组件,且将工作流程从经禁用的并行浮点组件“重新定路线”到剩余的浮点组件。具有较多禁用组件的晶粒可以不同等级来执行任务(例如,较慢),因为某些并行组件被禁用。然而,晶粒仍具有提供相同功能的能力(例如,执行相同任务)。
在一个实施例中,在制造测试期间功能组件配置控制器(例如,120、152和/或192)引导对功能组件的运作特征的改变(例如,激活、禁用等)。举例而言,如果测试指示功能组件是缺陷的,那么功能组件配置控制器(例如,120、152或192)禁用一功能组件(例如,分别是132、173或198),且如果测试指示功能组件是非缺陷的,那么激活一功能组件(例如,分别是131、174、197)。
在本发明的一个实施例中,功能组件配置控制器(例如,120、152和/或192)引导功能组件的运作特征中的改变以处理“自我健康”问题。在一个示范性实施中,功能组件控制器在“字段”中或在从制造者初始发货之后处理自我健康问题。在一个示范性实施中,集成电路能够在字段“自我健康”测试中运行。举例而言,如果“自我健康”测试导致缺陷功能组件的指示,那么功能组件配置控制器(例如,120、152和/或192)禁用缺陷功能组件,且提供功能组件经禁用的指示给分配组件(例如,110、150或191)。在本发明的一个实施例中,自我健康测试符合国际电气电子工程(International Electricaland Electronic Engineering)(IEEE)标准1149.1(也称为联合任务行动组织(Joint TaskAction Group)(JTAG)测试)。在替代实施例中,自我健康测试是用于核查系统的运作完整性的专门测试。在另一实施例中,如果字段中的“自我健康”测试指示功能组件非缺陷,那么功能组件经激活。
在另一实施例中,如果执行与缺陷功能组件相似的任务或功能类型的未激活非缺陷功能组件可用,如果缺陷组件被禁用那么所述未激活非缺陷功能组件被激活。举例而言,图1的集成电路100可初始发货,其中功能组件131和132激活且功能组件133和134禁用,即使其为非缺陷的(例如,由于市场分割原因等)。如果字段自我健康测试稍候指示功能组件132变得缺陷,那么功能组件控制器120可禁用功能组件132且激活功能组件133,且本将流向功能组件132(如果其未经禁用)的工作流程分配给(例如,通过分配组件110)功能组件133。因此,禁用功能组件132有效去除了与功能组件132中的缺陷相关联的问题,同时激活先前经禁用的功能组件133从而允许相同的功能或任务类型以相同性能等级执行于工作流程上,且藉此所述系统有效地“自我修复”。
在本发明的一个实施例中,功能组件配置控制器(例如,120、152和/或192)引导功能组件的运作特征的改变以处理兼容性问题。在一个实施例,包括于图形加速器中的功能组件控制器能够辨别与图形加速器的特点兼容的芯片组,且相应地改变图形加速器的运作特征。举例而言,如果功能组件配置控制器正在控制图形管线的运作特征,如果芯片组支持其且与较高数目的图形管线的使用兼容那么功能组件配置控制器可激活较高数目的图形管线。举例而言,图形加速器和芯片组由相同的制造者制造,且包括于图形加速器中的功能组件控制器可接收一识别芯片组包括于与图形加速器相同系统中的信号。在本发明的一个实施例,兼容性由驱动程序建置,且功能组件控制器相应地引导对功能组件的运作特征的改变。
在本发明的一个实施例中,功能组件配置控制器(例如,120、152和/或192)引导功能组件的运作特征中的改变以处理性能问题。在一个实施例中,性能掩膜40基于性能问题提供功能组件的运作特征的指示。举例而言,特殊应用正在运行且所要支持功能组件运作特征被激活。如果所述应用是图形应用,那么额外图形管线可被激活和/或现有图形应用管线的时钟速度可增加。在本发明的一个实施例中,系统类型可包括于性能运作改变中,例如在移动装置中性能可经调整为节约功率。
应了解存在多种功能组件配置控制器实施例用于根据不同目标来实施功能组件改变。图1D是是根据本发明的一个实施例用以控制不同目标的由功能组件控制器使用的掩膜阵列实施10的方框图。掩膜阵列中的每一掩膜可对应于一特殊运作目标。在一个示范性实施中,掩膜阵列10包含良率掩膜20、兼容性掩膜30、性能掩膜40和自我修复掩膜50。在一个示范性实施中,每一列11到18与八个功能组件中的一个相关联。每一单元(例如,单元99)包括运作特征设定值。举例而言,逻辑一的运作特征设定值可对应于激活功能组件、组件的高时钟速度、组件的高电压电平等。相反,逻辑零的运作特征设定值可对应于禁用功能组件、组件的低时钟速度、组件的低电压电平等。应了解本发明容易适用于具有的变化粒度增量的运作特征设定值(例如,很高的速度、高速度、中等速度、低速度、很低的速度)。在一个示范性实施中,掩膜阵列10实施于寄存器阵列中。
对不同的目标或掩膜,可设立优先次序。举例而言,良率良品掩膜20可经赋予比性能掩膜40高的优先权。在此实例中,单元98中的运作特征设定值控制单元97中的运作特征设定值。如果单元98中的设定值指示与列12相关联的功能组件禁用,那么功能组件被禁用而与单元97中的设定值无关。掩膜阵列10中的值也可用于多种算法中,此说明了在确定由功能组件配置控制器实施的运作特征设定时的多种考虑。
良品掩膜20提供功能组件由于良品率问题(例如,缺陷)而禁用的指示。举例而言,如果功能组件具有一制造缺陷,那么良品掩膜20包括导致功能组件禁用的运作特征设定值。在一个示范性实施中,如果存在可处理工作流程的另一运作功能组件,那么功能组件允许被禁用。
兼容性掩膜30基于兼容性问题提供功能组件的运作特征的指示。举例而言,特殊处理器和芯片组可相互交换识别且基于识别的交换,可激活兼容支持的功能组件运作特征。在本发明的一个实施例中,兼容性由驱动程序建置且相应运作特征设定值输入兼容性掩膜30中。
性能掩膜40基于性能问题而提供功能组件的运作特征的指示。举例而言,特殊应用正在运行且一值输入于性能掩膜40中,从而激活相应所要支持的功能组件运作特征。如果所述应用是图形应用,那么额外图形管线可被激活和/或现有图形应用管线的时钟速度可增加。在本发明的一个实施例中,系统类型可包括于性能运作改变中,例如在移动装置中输入于性能掩膜40中的值可引导性能调整为节约功率。举例而言,引导对功能组件的运作特征的改变,包括禁用/激活功能组件、调整速度、电压等。
自我修复掩膜50基于字段测试问题而提供功能组件的运作特征的指示。举例而言,来自测试运作的结果用以确定功能组件的运作特征的改变。在一个示范性实施中,字段测试指示经激活的第一功能组件是缺陷的。改变与第一功能组件相关联的自我修复掩膜单元中的运作特征设定值以指示第一功能组件经禁用,且改变与禁用的第二功能组件相关联的自我修复掩膜单元中的运作特征设定值以指示第二功能组件经激活。通过改变第一和第二功能组件的个别运作特征设定值,使缺陷的第一组件被禁用且防止产生较多问题,且使得经禁用的第二功能组件允许第二功能组件执行否则将定路线到第一功能组件的工作流程,且因此系统有效修复其本身,因为相同工作流程仍能够被执行而没有缺陷。
图2是计算机系统200的方框图,计算机系统的一个实施例,根据其可实施本发明的实施例。计算机系统200包括中央处理器单元201、主存储器202(例如,随机存取存储器)、具有北桥芯片209和南桥芯片205的芯片组203、可去除数据存储装置204、输入装置207、信号通信接口208和耦合到显示器220的图形子系统210。计算机系统200包括用于通信耦合到计算机系统200的组件的若干总线。通信总线291(例如,前侧总线)将芯片组203的北桥芯片209耦合到中央处理器单元201。通信总线292(例如,主存储器总线)将芯片组203的北桥芯片209耦合到主存储器202。通信总线292(例如,高级图形接口界面)将芯片组203的北桥芯片耦合到图形子系统210。通信总线294-297(例如,PCI总线)将芯片组203的南桥芯片205分别耦合到可去除数据存储装置204、输入装置207、信号通信接口208。图形子系统210包括图形处理器211和图形缓冲器215。
计算机系统200的组件共同运作以提供通用功能和性能。包括于计算机系统200中的功能组件的运作特征可动态地改变。在一个示范性实施中,计算机系统200的组件共同运作以提供预定的功能类型,即使包括于计算机系统200中的某些功能组件可是缺陷的。通信总线291、292、293、294、295和297传递信息。中央处理器201处理信息。主存储器202存储用于中央处理器201的信息和指令。可去除数据存储装置204也存储信息和指令(例如,作为大信息储存处的功能)。输入装置206提供用于输入信息和/或用于指向或增亮显示器220上的信息的机制。信号通信接口208提供通信界面给外部装置(例如,具有网络的界面)。显示装置220根据存储于帧缓冲器215中的数据来显示信息。图形处理器211处理来自中央处理器201的图形命令,且提供所得数据给图形缓冲器215以用于由显示监视器220存储和检索。
包括于计算机系统200中的功能组件的运作配置是柔性可适用的以满足多种目标。举例而言,包括于计算机系统200中的功能组件的运作配置可经配置以维持一功能类型的执行,即使某些功能组件经禁用。在一个示范性实施中,中央处理器201和图形处理器211仍能够执行相同的处理功能类型,且主存储器202存储信息,即使某些功能组件(例如,浮点组件、像素遮影器组件、存储器单元组件等)经禁用。在一个实施例中,处理器包括用于执行处理运作的多个功能组件。可更改所述功能组件的运作特征。在一个实施例中,处理器包括用于执行处现运作的多个功能组件,其中包括于多个功能组件中的缺陷功能组件经禁用。处理器也包括用于分发工作流程给激活的处理组件且防止分配工作流程给禁用的缺陷组件的工作流程控制组件。在一个示范性实施中,计算机系统200可继续提供完整功能,即使功能可以降低的性能等级(例如,变慢)来提供。
应了解本发明可以多种实施例实施。在一个示范性实施中,本发明可用于用以提供包括视频游戏的多种图形应用的处理系统中。举例而言,本发明可用于禁用游戏机、个人计算机、个人数字助理、手机或用于实施视频游戏的任何数目的平台中的缺陷组件。也应了解对视频游戏应用实施的引用是示范性的,且本发明并非限于这些实施。
图3是根据本发明的一个实施例的图形管线300的方框图。图形管线300(例如,像素处理管线)包含管线输入310、顶点处理器311到314、光栅器320、像素遮影器321到324、预光栅运作(ROP)组件330、光栅运作组件331到334、管线输出340和功能组件配置控制器350。功能组件配置控制器350耦合到管线输入310、顶点处理器311到314、光栅器320、像素遮影器321到324、预光栅运作(ROP)组件330、光栅运作组件331到334和管线输出340。管线输入310耦合到耦合到光栅器320的顶点的处理器311到314。光栅器320耦合到耦合到预光栅运作组件330的像素遮影器321到324。预光栅运作(ROP)组件330耦合到耦合到管线输出340的光栅运作组件331到334。在一个实施例中,图形管线300与管线集成电路150相似。举例而言,管线151可包括顶点处理器311、像素遮影器321和ROP331;管线152可包括顶点处理器312、像素遮影器322和ROP332;管线153可包括顶点处理器313、像素遮影器323和ROP333;且管线154可包括顶点处理器314、像素遮影器324和ROP334,其中管线输入310、光栅器320、预ROP330和管线输出340为管线151-154所共有。
图形管线300的组件共同运作以执行图形管线运作,即使管线中的功能组件的某些运作特征改变(例如,禁用/激活)。功能组件配置控制器350可改变顶点处理器311到314、像素遮影器321到324和/或光栅运作组件331到334的运作特征。功能组件配置控制器350可对运作特征进行多种改变,包括激活/禁用功能组件、改变功能组件的时钟速度和/或增加供应给功能组件的电压。功能组件配置控制器350可由于多种原因进行改变,包括良品问题(例如,功能组件是缺陷的和/或与缺陷组件相关联)、兼容性问题、性能问题和/或系统“健康”问题。功能组件配置控制器350也提供关于对管线输入310、光栅器320、预光栅运作(ROP)组件330和管线输出340的运作特征改变的信息。管线输入组件310接收图形管线信息,且分配相应分包图形管线信息给剩余激活的顶点处理器311到314。顶点处理器311到314在分别所接收的图形管线信息上执行向量遮影,且所得信息转发给光栅器320。光栅器320确定哪些像素需遮影,且将分包向量遮影的图形管线信息分配给像素遮影器321到324。像素遮影器321到323在分包向量遮影的图形管线信息上执行像素遮影计算,且将结果转发给预光栅运作(ROP)组件330。
在一个实施例中,像素遮影器321到324也可执行纹理运作。纹理运作可由纹理遮影器组件执行(例如,对应于像素遮影器)。预光栅运作(ROP)组件330聚集向量遮影信息,且将分包像素遮影信息分配给光栅运作组件331到334。光栅运作组件331到334在分包像素遮影信息上执行额外光栅化处理(例如,执行颜色结合和Z缓冲器处理),且将结果转发给管线输出340。管线输出340将图形管线信息总计为单个输出流。或者,功能组件配置控制器350可经实施为定位于管线中功能组件的个别等级之间的交叉或多任务器结构。
本发明也可应用于分为多个区段的帧缓冲器界面的部分。在一个示范性实施中,帧缓冲器界面包括运作为与存储器通信的功能组件的多个相似模块(例如,构成帧缓冲器的DRAM的一部分)。如果一个模块是缺陷的,那么其可经禁用且缺陷模块的工作负荷赋予另一模块(例如,基于存储器地址与模块相关联的部分)。举例而言,将帧缓冲器界面模块到存储器地址的映射重新映射,使得整个存储器仍可用于芯片。
图4是根据本发明的一个实施例的功能组件配置方法400的流程图。功能组件配置过程400促进集成电路中功能组件的柔性配置。举例而言,功能组件配置方法400引导对集成电路中功能组件的运作特征(例如,激活、禁用、改变速度、改变电压等)的改变。应了解功能组件配置方法400可用于根据多种目标(例如,增加良品、提供柔性性能、促进自我修复等)来重新配置功能组件的运作特征。在一个实施例中,功能组件配置方法400也促进有效信息处理工作流程管理。
在步骤410中,接收功能组件配置(例如,运作特征)更改触发事件的指示。在本发明的一个实施例中,由功能组件控制器接收更改触发事件的指示(例如,120等)。所述指示可包括将进行的配置改变的指示(例如,禁用、激活、增加/减小速度和/或电压等)。在一个实施例中,功能组件配置更改触发事件自集成电路的内部组件(例如,内部测试系统、驱动程序、应用程序等)接收。功能组件配置更改触发事件的指示也可自集成电路的外部组件(例如,外部测试系统、因特网、中央配置系统等)接收。
应了解指示和配置更改触发事件可与多种运作目标(例如,应用、按使用收费、市场分割等)相关联。更改触发事件可与良品问题相关联。举例而言,所述事件可与检测缺陷功能组件的测试运作相关联,且接收识别缺陷功能组件的指示(例如,通过功能组件控制器)。在本发明的一个实施例,缺陷功能组件的指示自测试系统接收。举例而言,国际电气电子工程(IEEE)标准1149.1(也称为联合任务行动组织(JTAG)测试)符合测试系统和/或所有权运作完整性测试(例如,所有权扫描测试机制)。更改触发事件可与兼容性问题相关联。举例而言,接收指示组件具有预定兼容性的信号。更改触发事件可与性能问题相关联。举例而言。接收一信号指示新的和/或不同应用程序被装载、被颁予按使用收费的授权和/或集成电路包括于需要功率节省的移动装置中。更改触发事件也可与自我测试和修复问题相关联。
在步骤420中,决定所指示功能组件配置更改(例如,运作特征更改)是否有效。举例而言,决定功能组件的授权运作特征。在一个实施例中,步骤410中所接收的指示为编码位流。解码所述位流,且检查所得值以用于有效授权从而触发功能组件配置更改。
在本发明的一个实施例,分析编码指示符。所述分析包括解码指示符,且使其与功能组件的不同可能运作特征设定的预定列表相比较。举例而言,解码指示符的值与授权触发指示或值的预定列表中的值相比较,其中列表中的值与特殊运作特征设定相关联。
在本发明的一个实施例中,也核查功能组件配置更改作用的有效性。举例而言,当执行与良品和自我修复问题相关联的功能组件的禁用时,在一个实施例中,决定是否存在第二功能组件(例如,并行),其可在否则将转向缺陷功能组件的工作流程信息上执行相似功能。举例而言,决定缺陷功能组件是否为多个相似功能组件中的一个。在本发明的一个实施例中,缺陷组件类型与提供相似功能的多个组件的列表相比较。举例而言,识别缺陷组件(例如,像素遮影器、顶点处理器、浮点组件等),且所识别功能组件与可提供相同功能的其他相似组件的列表相比较。在一个示范性实施中,检查其他相似组件以确定其是否为缺陷功能组件的并行组件。如果存在可执行工作流程的第二功能组件,那么第一功能组件可被禁用(例如,如果第一功能组件为缺陷的)。
在步骤430中,引导功能组件配置更改。在本发明的一个实施例中,功能组件配置更改(例如,运作特征更改)由功能组件控制器(例如,120、152、192等)引导。在本发明的一个实施例中,功能组件配置改变(例如,禁用、激活等)由编程控制功能组件的配置(例如,运作特征)的值(例如,寄存器中)来完成。基于寄存器中的值,将信号发送到改变配置(例如,禁用、激活等)组件的功能组件。在一个示范性实施中,在掩膜(例如,掩膜10)中配置一值。应了解存在用于更改功能组件的配置(例如,更改运作特征)的多种本发明方法。举例而言,缺陷功能组件的禁用可通过熔断连接到缺陷功能组件的通信线来完成。缺陷功能组件也可以确保缺陷功能组件不产生伪通信量的方式被禁用。接收组件也可被通知缺陷组件且经编程以忽略来自所述缺陷功能组件的信息。功能组件配置也可由软件编码方法来更改。
在一个实施例中,监视功能组件的持续性运作且将其包括在步骤430的配置运作中。举例而言,核查或测试系统“健康”,且将结果用于决定运作特征的改变。举例而言,如果第一功能组件在自我诊断测试中失败,那么功能组件可被禁用。如果第二功能组件可用,那么其可被激活以“替换”第一功能组件。举例而言,如果第二功能组件工作极好但由于某些其他原因而先前被禁用,那么其可被激活以替换在测试中失败的功能组件。在一个示范性实施中,监视应用激活且相应地更改功能组件的运作特征。举例而言,如果激活高性能图形应用,那么功能组件的运作特征可增加(例如,较快时钟设定)和/或额外功能组件(例如,额外图形管线)可经激活或禁用。
也可监视系统中组件的改变(例如,添加新组件)且改变运作特征以适应组件改变。举例而言,如果特殊类型的图形处理器耦合到特殊类型的芯片组,那么可传递识别指示且可相应地更改功能组件的运作特征。所述识别允许预定兼容性且支持增强特点。在一个实施例中,编码所述识别。所述编码防止运作特征设定的恶意篡改。举例而言,编码提供保护使其免于不适当地减少功能组件的运作特征和/或增加运作特征而没有兼容性确保的试图,其否则将潜在地引入难以识别的复杂错误。
在本发明的一个实施例中,运作特征改变在功能组件中一致。举例而言,与改变的功能组件紧密相关联(例如,在相同管线、线程中等)的正确运作功能组件也可改变。在一个示范性实施中,运作改变在功能组件中一致以维持产品区别化。举例而言,如果较低性能的芯片经指定为具有一个较少像素遮影组件和一个较少顶点遮影组件,像素遮影组件和顶点遮影组件可被禁用以维持产品区别化。
在步骤440中,工作流程根据功能组件的更改而转向。举例而言,工作流程可转向到其他相似功能组件。在一个实施例中,转向工作流程通过提供配置更改(例如,激活、禁用等)的通知给组件来完成,否则将信息传递给更改功能的组件。举例而言,功能组件控制器(例如,120等)提供功能组件配置更改(例如,运作特征的改变)的指示给分配组件(例如,110等),且分配组件相应地使工作流程信息定路线。举例而言,如果第一功能组件被激活,那么工作流程被定路线或调度且转发给第一功能组件。如果第一功能组件被禁用,那么工作流程被定路线或调度给另一激活的功能组件。
在一个示范性实施中,工作流程被转向或定路线到较快或较慢的功能组件。举例而言,分析工作流程内容,且将工作流程与较高性能活动相关联的部分定路线到较快功能组件(例如,以较高时钟速率运作的功能组件),且将工作流程与较低性能活动相关联的部分定路线到较慢功能组件。在图形图像快速改变的区域中的像素(例如,朝向显示器中心的像素)可被定路线到较快功能组件(例如,高计时遮影器),且图形图像较慢改变的区域中的像素(例如,朝向显示器边缘的像素)被定路线到较慢功能组件(例如,低计时遮影器)。
功能组件运作特征改变(例如,禁用等)可以减少对其他组件的影响的方式而一致。在一个实施例中,正确运作功能组件可经编程或重新配置以容忍关于禁用组件输出的可能垃圾(例如,非法信号组合)。举例而言,可引导正确运作功能组件以忽略来自禁用组件的信息。接收组件(例如,收集组件140)也可被通知功能组件中的运作特征改变,且经编程以相应地反应。举例而言,如果功能组件的速度降低,那么接收组件可经编程以不闲置,同时等待来自功能组件的信息但在稍后核查,或如果功能组件被禁用以忽略来自功能组件的信息。如果功能组件被禁用,那么接收组件可经编程以忽略来自功能组件的信号。
图5是根据本发明的一个实施例的降低性能电路补救方法500的流程图。降低性能电路补救方法500促进对将会废除的晶粒作出补偿。在一实施例中,降低性能电路补救方法500以确保维持晶粒的功能的方式测试晶粒和禁用缺陷功能组件。
在步骤510中,准备一芯片以用于测试。将一芯片置放在一测试系统中,并且所述测试系统经初始化。在本发明的一个实施例中,将扫描测试的初始状态输入扫描测试单元中。举例而言,可根据“国际电气电子工程(IEEE)标准1149.1(也称为联合任务行动组织(Joint Task Action Group)(JTAG)测试)”准备芯片以用于测试。在本发明的一个实施例中,使用一与芯片的测试能力兼容的自定义测试类型(例如,一专有和/或非JTAG-适应测试(proprietary and/or non-JTAG-compliant testing))。
在步骤520中测试芯片。在本发明的一个实施例中,测试包含识别芯片的缺陷功能组件。在本发明的一示范性实施中,执行一内建自我测试(BIST)。举例而言,在BIST中包括一扫描测试,其中应用测试向量以模拟电路的某些方面(例如,功能逻辑组件)并捕获来自电路的所得输出。扫描测试链是经设计以藉由一扫描测试链扫描或改变电路中的功能组件的扫描测试信息(例如,测试向量),从而导致一功能组件执行对于扫描测试信息的运作、捕获所得信息并随后藉由扫描测试链的扫描测试单元将所得信息移出。随后对所得信息进行错误分析(例如,将其与预定正确结果相比较)。测试向量图案可由一自动测试图案产生(ATPG)工具提供。
在本发明的一个实施例中,识别有缺陷的功能组件。在一示范性实施中,扫描测试的输出结果提供一关于哪一功能组件是有缺陷的指示。举例而言,分析测试图案结果并识别缺陷功能组件。本发明可确定一缺陷功能组件是否为一不具有其它包括在晶粒中的相似功能组件的功能组件。在一实施例中,如果所述缺陷功能组件是关键的和/或所述晶粒不具有另一可在缺陷功能组件经禁用时处理工作流程的功能组件,那么作出一区分。如果所述功能组件经识别,那么在本发明的一个实施例中废除所述晶粒,因为所述晶粒将不会提供完整功能。
在本发明的一个实施例中,使用禁用组件以促进一缺陷组件的识别。在一示范性实施中,由多个相似功能组件(例如,像素遮影器321到324)执行测试向量运作。如果存在一错误结果,那么执行进一步测试。由一禁用组件禁用多个功能组件中的一第一个(例如,像素遮影器321)并且由剩余功能组件执行测试向量运作。或者,在测试过程中,可使用软件模拟来模拟一功能组件的禁用。举例而言,禁用像素遮影器321并由像素遮影器322到324执行测试向量运作且分析结果。如果不存在错误结果,那么将第一功能组件识别为一缺陷组件。如果存在连续的错误结果,那么由一禁用组件禁用多个功能组件中的一第二个(例如,像素遮影器321)且由剩余功能组件执行测试向量运作。如果不存在错误结果,那么将第二功能组件识别为一缺陷组件。持续排除过程直到识别出缺陷组件。
在步骤530中,基于所述测试的结果在芯片上执行一功能组件配置方法(例如,功能组件配置方法400)。在本发明的一个实施例中,如果功能组件为有缺陷的,那么功能组件配置方法禁用所述芯片的多个同质功能组件中一个或一个以上功能组件(例如,执行组件)。举例而言,将一禁用信号发送给所述缺陷功能组件。
在一实施例中,降低性能电路补救方法500包括可编程地重新配置芯片以允许其它功能组件执行经禁用功能组件的功能。举例而言,可将一掩膜编程为一识别经禁用功能组件的分配组件,且在剩余功能组件之间分配工作流程。可将其或编程为一软件可载寄存器或编程为—在测试时间执行的硬编码掩膜类型程序。可使用多种技术,包括可编程非易失性存储器、熔丝、引线结合带等。
在降低性能电路补救方法500的一实施例中,测试器中的一程序包括关于一特定性能等级定义一晶粒的特征。在一示范性实施中,测试器包括一个关于在每一性能等级中允许什么缺陷的指示。举例而言,测试器可包括一其中可禁用第一多个并行功能组件的第一性能等级和一其中可禁用第二多个并行功能组件的第二性能等级。所述性能等级也可对应于经激活的功能组件的数目。本发明也可促进作为测试程序的一部分的基于性能等级的晶粒的自动分级(binning)。
图6是根据本发明的一实施例的一测试环境、测试环境600的方框图。测试环境600包括晶粒610和测试系统650。晶粒610包含:测试界面633、分配器631和功能组件611到614,其中每一功能组件和分配器631分别包括扫描测试单元621到625。晶粒补救测试系统650包含测试模块680和缺陷组件分辨率模块670,所述缺陷组件分辨率模块670包括功能维持模块671、相对应的组件检测模块672、禁用模块673和晶粒排斥模块674。
晶粒补救测试系统650测试晶粒610。测试模块680提供测试向量到测试界面633,测试界面633将测试向量转到扫描测试单元621到625。扫描测试单元621到625中的信息馈入功能组件611到614以及分配器631中,其对扫描测试信息执行一运算。结果也由扫描测试单元621到625捕获并传递到测试界面633,所述测试界面633将其转到测试系统650以用于分析。测试模块680对结果进行分析且提供一关于缺陷功能组件的指示给缺陷分辨率模块670。缺陷分辨率模块670确定一晶粒是否可通过禁用功能组件来进行补救。
功能维持模块671确定经识别功能组件是否包括在一允许被禁用的群组中。在一实施例中,功能维持模块671确定是否存在其它可处理经识别(例如,缺陷)功能组件的工作流程的功能组件。举例而言,可将工作流程转到或重新定路线到另一功能组件。在一示范性实施中,功能维持模块671对照一允许禁用的预定组件列表(例如,可处理所述工作流程的其他组件)核查经识别功能组件。
相对应的组件检测模块672确定是否存在应禁用的相关功能组件。所述相关功能组件可正确地使组件起作用。在本发明的一个实施例中,识别一与缺陷功能组件紧密关联(例如,在相同管线、线程等中)的功能组件。举例而言,如果功能组件是来自一缺陷组件的下游,那么所述正确起作用的组件可经禁用(例如,断电(powered down))以防止切换活动和相对应的功率消耗。在一个示范性实施中,功能组件可经禁用以维持产品区别化。如果识别出应禁用的其他功能组件,那么将对这些组件的识别反馈回功能维持模块671以确定禁用它们是否会影响功能。
禁用模块673引导功能组件禁用(例如,功能组件611、612、613或614的禁用)。
在本发明的一实施例中,禁用模块673藉由测试界面633直接发送一禁用信号给一功能组件。在一替代实施例中,禁用模块673发送一信号给晶粒610中的一禁用组件(未图示)。如果功能维持模块671提供可允许禁用所述组件(例如,其将不会消除功能)的指示,那么禁用模块673禁用一功能组件。在一示范性实施中,即使在降低性能的情况下,功能维持模块671仍允许禁用模块673禁用一功能组件,其限制条件为不会降低功能。
晶粒标记模块674标记一晶粒。在本发明的一实施例中,晶粒标记模块674基于一性能标准标记一晶粒。晶粒标记模块674也提供一是否排斥了晶粒的标记或指示。可排斥所述晶粒,因为功能维持模块671提供一缺陷功能组件不应禁用和/或晶粒的性能下降到一预定等级以下的指示。在一示范性实施中,晶粒是基于经禁用的功能组件而标记的。举例而言,如果禁用了一预定数目和/或类型的功能组件,那么相应地对晶粒作出标记。
在本发明的一实施例中,晶粒标记模块674也对其上定位有晶粒的晶片作出标记。
在本发明的一实施例中,晶粒标记模块674基于一良品标准标记一晶片。所述良品标准可关于不同性能等级而分割。举例而言,良品标记可指示:在一晶片中不具有经禁用功能组件的晶粒的一定数目或百分比、具有一组数目的经禁用功能组件的晶粒的一定数目或百分比和经排斥或不可补救的晶粒的一定数目。
图7是根据本发明的一个实施例的晶粒分类方法中的一个实施例的晶粒分类方法700的流程图。晶粒分类方法700包含以不同性能等级制造具有相似配置的晶粒并对所述晶粒进行分类。在一示范性实施中,基于不同性能等级对在相同制造过程中制造的晶粒进行分类。举例而言,晶粒具有相同数目的功能组件(例如,晶体管)但是其中某些功能组件以不防止执行一功能但是可影响性能的方式禁用。晶粒分类方法700促进具有相同功能和不同性能等级的晶粒的分类和分配。
在步骤710中,制造具有相似配置的多个晶粒。在本发明的一个实施例中,所述多个晶粒是制造在一单个晶片上。在本发明的一个实施例中,相似配置致使所述多个晶粒中的每一晶粒执行一预定类型的功能。在一示范性实施中,使用相同光刻过程步骤来制造多个晶粒。在一实施例中,可通过观看关于所述多个晶粒的数据单表信息而确定相似配置。举例而言,所述数据单表信息可包括:晶粒尺寸(例如,晶体管的数目)、功能指示符、和/或性能指示符、和/或关于晶粒与其相关联的生产线的信息(例如,通过确定晶粒为何而出售)。如果晶粒具有大体上相同的制造成本,那么也可指示相似配置。
在步骤720中,防止一组件参与所述多个晶粒中的一晶粒中的生产性贡献而无需消除晶粒执行一个与所述组件相关联的功能的能力。在本发明的一个实施例中,组件生产率的去除可影响性能不会消除功能的类型。在一示范性实施中,通过禁用组件来防止组件参与生产性贡献。可将经禁用组件的工作流程重新引导到其他组件。在一实施例中,可通过分析数据单表信息来检测防止一组件参与生产性贡献。举例而言,如果一晶粒具有一适用于以不同性能等级提供相同类型功能的生产线的产品单表(product sheet)。或者,关于是否防止组件参与生产性贡献的另一指示为是否直到测试执行以后,仍未作出对于哪一数据单表信息适用于一晶粒的确定(例如,数据单表信息的选择对应于基于测试结果的晶粒组件中的更改)。
在步骤730中,基于关于功能的区分化的性能等级,对所述多个晶粒中的每一晶粒进行分类。在一示范性实施中,晶粒是包括在相关于提供功能的性能等级而以不同价格出售的不同产品中。在本发明的一个实施例中,具有相同设计的晶粒是以不同性能等级(例如,不同速度、带宽等)分配的。
图8是根据本发明的一个实施例的处理单元800的方框图。在本发明的一个实施例中,处理单元800是包括在一基于计算机的系统(例如,计算机系统200)中。在一示范性实施中,处理单元800与中央处理单元201和/或图形处理单元211相似。处理单元800包含分配组件810、性能管理状态组件820和运作组件831到834。在一实施例中,分配组件810与分配组件110相似、性能管理状态组件820与功能组件控制器120相似并且运作组件831-834与功能组件131-134相似。所述运作组件831到834中的每一运作组件执行与多种任务(例如,浮点计算、图形数据操纵等)相关联的处理运作。在一实施例中,运作组件831-834执行相似任务或功能。性能管理组件820选择性地管理所述运作组件831到834中的每一运作组件的运作特征(例如,激活、禁用等。)上的改变。分配组件810耦合到运作组件831到834以及性能管理组件820。分配组件810将信息分配给经激活的运作组件831到834中的每一运作组件。举例而言,如果所述运作组件经激活,那么分配组件810将处理工作流程信息分配(例如,分配)给运作组件831到834。在一实施例中,性能管理状态组件820和运作组件831到834与功能组件控制器120和功能组件831-834类似。
性能管理组件820接收指示运作组件上的一改变的信息。举例而言,一测试结果指示一运作组件为有缺陷的。性能管理组件820识别信息所适用的运作组件831到834的一个子集。举例而言,运作组件的一个子集为有缺陷的并且所述子集无法经激活以供使用。在一示范性实施中,激活一个并非为有缺陷的子集。举例而言,如果测试结果指示运作组件831和834为有缺陷的,那么运作组件820激活运作组件832和833而不会激活运作组件831和834。如果运作组件831和834经激活,那么性能管理组件820对其进行禁用。性能管理组件820还提供一运作特征状态指示给分配组件810。举例而言,运作特征状态指示指示所述功能组件中的哪一功能组件经激活以及哪一功能组件经禁用。经激活的运作组件中的每一运作组件能够执行与否则将由未经激活的运作组件执行的功能相似的功能。
图9是根据本发明的一个实施例的晶片良品最优化方法900。晶片良品最优化方法900增加来自一晶片的可用晶粒的良品。在一示范性实施中,晶片良品最优化方法900促进对具有将从晶片中废除的缺陷组件的晶粒进行补救以增加来自一晶片的总体良品。
在步骤910中,制造一晶片。所述晶片包括多个晶粒并且所述多个晶粒中的每一晶粒具有一功能组件,所述功能组件能够使用多个功能子组件并行执行多个子任务。举例而言,每一晶粒可包括一管线,其通过功能子组件(例如,遮影器、光栅器等)执行多种图形子任务(例如,遮影、织构化、混叠、光栅化等)。在本发明的一个实施例中,晶片是使用光刻法制成的。
在步骤920中,对于每一晶粒而言,识别所述多个功能子组件中的可运作的每一功能子组件以及所述多个功能子组件中的不可运作的每一功能子组件。在一实施例中,作为常规电路测试过程的一部分,识别所述可运作和不可运作的功能子组件。举例而言,将预定输入馈入一功能子组件中并且检查所得输出。检查所述输出信息的错误(例如,将所述输出与预定正确结果相比较)。如果输出信息包括错误(例如,如果所述输出与预定正确结果不符),那么将功能子组件识别为不可运作。
在步骤930中,禁用所述多个功能子组件中的识别为不可运作的每一子组件的运作。
在一实施例中,可激活所述多个功能子组件中的识别为可运作的每一子组件。在一实施例中,通过一硬“编码”机制禁用不可运作功能子组件并且激活可运作功能子组件。举例而言,使用铸造激光调平位(foundry laser trim bits)来配置或禁用功能子组件。在另一实施例中,使用软件可编程信息来配置(例如,禁用或激活)功能子组件。
在步骤940中,基于运作状态(例如,在步骤930中识别为可运作或不可运作的组件),将所述多个晶粒中的每一晶粒分类为一性能类别。举例而言,可将晶粒分类为一高性能类别,其中所有功能子组件或大量百分比的功能子组件是可运作的并且经激活。可将晶粒分类为一中等性能范围类别,其中较少功能子组件保持经激活的。可将这些性能范围指定为可补救的。也可存在以下性能类别:其中晶粒不符合最小值并且被废除(或经受某些可能修复问题的其它校正措施)。
在步骤950中,补救分类在指定为可补救的性能等级中的晶粒。举例而言,尽管执行任务的速度降低,但仍使用具有一些经禁用功能子组件的晶粒执行处理任务。
图10是根据本发明的一个实施例的功能组件远端配置架构1100的方框图。功能组件远端配置架构1100促进包括在一集成电路晶粒中的功能组件的配置。举例而言,所述配置是从一外部或远端系统控制的。功能组件远端配置架构1100提供一架构,其中可使用以安全且受控的方式更改功能组件的运作特征以达到一定数目的理想实施。
远端配置环境1100包括集成电路晶粒1110和远端配置控制模块1150。集成电路晶粒1110包含:配置模块1133、分配组件1131和功能组件1111到1114,其中每一功能组件和分配组件1131分别包括运作特征寄存器1121到1125。远端配置控制器模块1150包含编码模块1180和配置分辨率模块1170。
远端配置控制器模块1150控制集成电路晶粒1110中的功能组件的配置。在一实施例中,远端配置控制器模块1150为离线芯片(off chip)(例如,在驱动中)。配置分辨率模块1170确定集成电路晶粒1110的功能组件的运作特征设定。在一示范性实施中,配置分辨率模块1170参与一自动功能协商过程(例如,随需应变容量(capacity ondemand)),其中关于升级的运作特征达成一致并且作为功能协商过程的一部分动态改变功能指示符。在一示范性实施中,所述运作特征设定为维持产品区别化。配置分辨率模块1170转发一运作特征指示值给编码模块1180。编码模块1180对所述运作特征指示值进行编码(例如,使用一关键、散列值等)并且将所述经编码的运作特征指示值转发给配置模块1133。
配置模块1133引导功能组件配置。举例而言,配置模块1133基于从编码模块1180接收到的经编码的运作特征设定值引导功能组件运作特征设定(例如,对于功能组件1111、1112、1113或1114)上的改变。配置模块1133可对功能组件运作特征指示值进行解码。配置模块1133将经解码的值转发给功能跟踪模块1137以用于与一相对应的运作特征设定相比较。
功能跟踪模块1137引导功能组件运作特征的维持。在一示范性实施中,功能跟踪模块1137在一经解码的功能指示值与一特定运作特征设定之间提供一相关。举例而言,功能跟踪模块1137对照一预定相关运作特征设定列表核查一功能指示符。功能跟踪模块1137也可确定是否存在其它可处理一识别的功能组件的工作流程的功能组件。
图11是根据本发明的一个实施例的远端重新配置方法1200的流程图。远端重新配置方法1200提供一用于维持重新配置运作的远端控制的机制。在一示范性实施中,在一按使用付费(pay per use)的程序中使用远端重新配置方法1200,其中利用某些配置特点需要额外支付。举例而言,如果用户需要激活额外功能组件(例如,额外图形管线、浮点组件等),那么用户必须作出额外支付。
在步骤1210中,进行一晶粒功能组件重新配置请求过程,其中一系统请求来自一远端资源的重新配置码。在一实施例中,一重新配置请求过程包括请求并接收一晶粒功能组件重新配置码。在一示范性实施中,所述晶粒重新配置码是由一功能组件控制器(例如,120等)用来重新配置功能组件。应了解,可藉由多种通信系统传递对一晶粒功能组件重新配置码的请求和接收。举例而言,所述请求和所述晶粒功能组件重新配置码藉由因特网传递。在一实施例中,所述请求包括一重新配置码允许指示符,其指示请求者经授权接收一重新配置码(例如,请求者已作出必要的支付、具有一经授权的系统等)。
在一实施例中,所述晶粒功能组件重新配置请求过程包括一重新配置码允许指示符请求过程,以获得一重新配置码允许指示符。在一示范性实施中,所述重新配置码允许指示符请求过程包含转发一对于一允许指示符的支付和请求并接收一对于所述允许指示符的支付和请求的响应。举例而言,消费者或用户藉由因特网对远端中央资源作出电子支付并作为回报接收一允许指示符(例如,位流码)。
在步骤1220中,执行一重新配置码产生过程。在一示范性实施中,远端资源处理对于重新配置码的请求。在一实施例中,所述重新配置码产生过程包含:接收一对于一重新配置码和一允许指示符的请求;分析所述允许指示符的有效性;和如果所述允许指示符有效,那么提供一重新配置码。举例而言,一远端资源接收一增加在一系统中激活的图形管线的数目的请求。远端资源分析请求者是否已作出了必要的支付。如果已作出了必要的支付,那么远端资源转发所述重新配置码以用于增加在一系统中激活的图形管线的数目。
在一实施例中,一重新配置码产生过程包括进行一重新配置码允许指示符响应过程以响应一获得一重新配置码允许指示符的请求过程。在一示范性实施中,所述重新配置码允许指示符响应过程包括接收对于一允许指示符的支付并响应于接收所述支付而转发所述允许指示符。
在步骤1230中,如果一系统接收到所述重新配置码(例如,从一远端资源所接收的),那么执行一晶粒功能组件重新配置方法。所述晶粒功能组件重新配置方法包括根据所述重新配置码来重新配置一晶粒功能组件(例如,功能组件131、132、133、134等)。在一实施例中,所述晶粒功能组件重新配置方法与功能组件配置方法400相似。
本发明可在多种系统中实施,并且可包括多种机制,以用于以常规方式将功能组件配置信息传达给一用户。图12是根据本发明的一实施例的功能组件配置系统1300的方框图。功能组件配置系统1300包括处理器1310,其以通信方式耦合到存储器1320和显示器1330。在一示范性实施中,功能组件配置系统1300是以通信方式耦合到集成电路100。
功能组件配置控制系统1300的组件共同运作以呈现与功能组件配置相关联的信息。处理器1310处理信息和指令、包括用于执行一功能组件配置分析方法的信息和指令。存储器1320存储所述信息和指令、包括用于执行一功能组件配置分析方法的信息和指令。显示器1330呈现一关于信息和功能组件配置运作设定的图形用户界面呈现,所述信息和功能组件配置运作设定包括与分析功能组件运作行为和确定一常规图形用户界面中的运作特征设定的信息。功能组件配置控制系统1300可实施在自动测试设备(ATE)中或者与ATE相连。
功能组件配置控制系统1300可以多种常规格式呈现信息。在一实施例中,所述图形用户界面以多种粒度等级并实时指示一关于功能组件构件块(例如,功能组件131等)的通过或失败状态。在一示范性实施中,一图形用户界面展示一与图3相似的图像,其中组件以绿色加亮来用于一通过状态并以红色加亮来用于一失败状态。图形用户界面可以用户友好方式呈现否则以不完整笛卡尔顺序分散的拓扑反转信息。所述图形用户界面也可促进用户与多种功能组件运作行为分析特点和运作特征设定确定特点相互作用。举例而言,所述用户界面可促进在包括失败图案辨别、产品测试调谐和场配置算法调整的排错运作上(例如,藉由一鼠标)的用户相互作用。
图13是根据本发明的一实施例的功能组件配置分析方法1370的流程图。
在步骤1371中,分析功能组件运作行为。在一个实施例中,对多个功能组件并行执行对功能组件运作行为的分析。在一示范性实施中,分析功能组件运作行为包括拓扑反转分析。所述分析也可以配置抽象化和组件组织的多种等级执行。举例而言,分析功能组件运作行为可包括:以多种功能组件粒度和组织等级提取关于多个功能组件的测试信息;以多种功能组件粒度和组织等级检查所述测试信息;和基于所述检查的结果建置运作特征设定调整。
在步骤1372中,基于在步骤1310中执行的分析的结果确定运作特征设定。在一实施例中,所述运作特征是以配置抽象化和组件组织的多种等级确定的。举例而言,运作特征设定可以管线等级、管线组件等级(例如,光栅组件、遮影器组件等)确定或以逻辑门等级(例如,与门(AND gate)、或门(OR gate)等)。可作出许多关于所述运作设定的决定。举例而言,可增加或降低管线的时钟速度、可激活或禁用管线等
在步骤1373中,根据运作特征设定配置功能组件。在本发明的一个实施例中,执行一功能组件重新配置方法(例如,功能组件重新配置方法400)。根据所述运作特征设定配置功能组件可包括确定一所指示的功能组件配置更改是否有效;引导所述功能组件配置的更改;和根据所述功能组件配置的所述更改使工作流程转向。
图14是根据本发明的一个实施例的柔性集成电路测试方法1400的流程图。柔性集成电路测试方法1400允许节约用于生产和/或场测试中的资源和成本。在一实施例中,柔性集成电路测试方法1400允许使用相对低成本的自动测试设备(ATE),这归因于内建自我测试(BIST)和内建自我修补(BISR)特点。
在步骤1410中,准备多个集成电路以用于测试。所述多个集成电路是准备用于在一有组织的测试分层结构中进行测试。在一实施例中,所述有组织的测试分层结构包括功能组件粒度和组织的多种等级。举例而言,可在一晶粒中以晶片等级、晶粒等级或功能组件等级执行测试。
在步骤1420中,测试多个集成电路。本发明可灵活地实施在多种测试阶段以及不同测试模式中。举例而言,可在一晶片探测阶段和/或最终分类阶段中执行测试。测试也可包括全速测试。可并行测试所述多个集成电路。并行测试减少了晶片的全面测试的时间和成本。
在步骤1430中,基于测试结果在多个集成电路上执行一功能组件配置方法。在本发明的一个实施例中,执行一类似于功能组件重新配置方法400的功能组件重新配置方法。可通过操纵功能组件运作设定、包括激活或禁用功能组件来实施多种功能组件配置。
应了解,可在一有组织的测试分层结构中以多种等级执行步骤1420和1430的测试和功能组件配置方法。所述有组织的测试分层结构可包括功能组件粒度和组织的多种等级。在一示范性实施中,所述有组织的测试分层结构可适应引导到拓扑反转分析的结果,从而提供一工程模式中的测试结果并相应地配置功能装置。举例而言,多个与经激活或经禁用的管线相关联的门以拓扑方式不同地分布在整个晶粒面积中,但是在工程模式中展示为一个经激活或经禁用的组件。或者,所述测试和所述功能组件配置方法是在一生产模式中执行的。所述测试和所述功能组件配置方法也可在多个集成电路上并行执行。
在本发明的一个实施例中,可存储与测试结果(例如,失败图数据)和配置调整相关联的信息。举例而言,可将所述信息存储在芯片上和/或存储在远端数据库中。可以多种分层结构和架构等级(例如,在芯片基础、晶片基础、程序组基础等上)收集、组织和分析所述信息。可在实时晶片产品良品分析上使用所述信息。举例而言,对一晶粒布局的统计分析可促进识别对良品具有不成比例的影响的冗余的失败区域(例如,像素遮影器子区块)。在测试、修补(例如,BISR)和设计期间,可快速地解决所述影响。相似地,也可追踪晶圆等级的过程改变并且作出适当的调整来校正所述改变。在一个示范例中,对晶片的标志区域发生改变或“漂移”并需要关注芯片制造、测试或设计过程的良品晶片图执行实时监控。
图15中展示根据本发明的一个实施例的集成电路分析系统1500的方框图。集成电路分析系统1500包括集成电路1510和外部功能组件协调装置1520。集成电路1510包括:多个功能组件1512到1515、一分配组件1511、功能组件配置控制器1517、测试控制器1518和一配置通信界面1519。集成电路1510的组件协同运作以提供一可配置的集成电路。
功能组件1511到1515执行处理运作(例如,与图1中所示的集成电路100的功能组件131到134相似)。分配组件1511将信息分配给所述多个功能组件(例如,与分配组件110相似)。功能组件配置控制器1517配置多个功能组件(例如,与功能组件配置控制器120相似)中的一个或一个以上的功能组件的运作特征。配置通信界面1519将与所述多个功能组件中的一个或一个以上的功能组件的运作特征相关的信息来回地传递给一外部装置。
在一实施例中,配置通信界面1519将测试信息传递给所述外部装置。在一个示范性实施中,由所述配置通信界面1519以功能组件粒度和组织的多种等级传递所述测试信息和所述功能组件配置信息。举例而言,所述测试信息包括拓扑反转分析信息。可在多种测试阶段传递所述信息。举例而言,所述测试信息包括晶片探测阶段信息和/或包括最终分类阶段信息。
配置通信界面1519也可接收运作特征设定信息。举例而言,所述配置通信界面1519可接收与失败图案辨别、产品测试调谐和场配置算法调整相关联的运作特征设定信息。
仍参看图15,也展示一根据本发明的一个实施例的外部功能组件协调装置1520的方框图。外部功能组件协调装置1520包括:测试模块1521、功能组件运作设定模块1522和分析模块1555。
测试模块1521产生关于功能组件的测试向量。举例而言,向量符合国际电气电子工程(IEEE)标准1149.1(也称为联合任务行动组织(Joint Task Action Group)(JTAG)测试)。
功能组件运作设定模块1522确定对于功能组件的运作设定。在本发明的一个实施例中,功能组件运作设定模块1522包含一缺陷分辨率模块1553,其用于确定是否可调整所述功能组件运作设定来对一晶粒作出补救。
分析模块1555分析与功能组件相关联的测试信息。在一实施例中,根据功能组件粒度和组织的分层架构执行分析。举例而言,所述分析可在晶片探测阶段信息和/或最终分类阶段信息上执行。所述分析也可包括识别测试失败的图案辨识。举例而言,对晶粒布局的产品统计分析可识别对良品具有不成比例的影响的冗余的失败区域(例如,一不成比例地失败或具有缺陷的特定像素遮影器功能组件)。所述分析也可识别产生调谐问题。举例而言,所述分析可包括识别在晶片的一特定区域中的不成比例的失败并且提出关于失败的潜在生产原因(例如,过程改变)。此外,分析可识别潜在场配置算法调整。
测试信息组织模块1557组织与所述功能组件相关联的测试信息。可根据功能组件粒度和组织的分层架构组织测试信息。举例而言,可按照晶体管等级、门等级、功能组件等级(例如,加法器、多任务器等)、处理器等级、管线等级等组织并能够呈现测试信息。所述测试信息可包括晶片探测阶段信息和最终分类阶段信息。在本发明的一个实施例中,测试信息组织模块1557与包括相关于功能组件运作和配置的各种不同类型的信息(例如,测试信息、产品信息、场性能信息、市场信息、目录信息等)的多种数据库相连。
全局运作设定调整模块1558为功能组件产生全局运作设定调整并将关于全局运作设定调整的信息提供给功能组件运作设定模块以供在确定所述功能组件的运作设定中使用。举例而言,全局运作设定调整模块1558可响应一生产问题(过程改变)而产生对于晶片的一特定区域上的晶粒中的功能组件的全局操作设定调整。
本发明可轻易地适用于多种灵活的实施。本发明的重新配置特点可以不同粒度和配置组织方案而在多种分层等级中实施。举例而言,可在分层方案中“水平地”使用或实施测试和重新配置特点(例如,并行测试多个功能组件)和/或在分层方案中“垂直地”使用或实施测试和重新配置特点(例如,在晶片基础、晶粒基础、逻辑门基础等上进行测试)。所述测试和重新配置信息也可用于多种分析运作。在一示范性实施中,测试和重新配置信息也可用于工程和生产模式分析运作中。
因此,本发明致使能够对集成电路晶粒进行灵活的运作配置并增强产品区别化。所述晶粒可用在具有多个性能等级的生产线上。本发明也促进制造能够为高性能任务或低性能任务而动态配置的单个晶粒,从而允许节省能量以及经济区别化。本发明也促进节约制造和测试资源,从而允许节约成本。举例而言,本发明的“芯片上”测试和重新配置特点提供将否则不得不由更为复杂的以及昂贵的远端测试设备执行的多种测试和重新配置功能。本发明促进与较不复杂的自动测试设备(ATE)系统相互作用并允许更为有效地(例如,并行)执行测试。
在广泛的概述中,本作品已描述了在集成电路中激活功能组件的配置的系统和方法。一种本发明的系统和方法可基于包括制造缺陷、兼容性特征、性能要求和系统健康(例如,正确运作的组件的数目)的多种因素而灵活地改变在一集成电路晶粒中的功能组件的运作特征。以配置抽象化和组件组织的多种等级(例如,拓扑反转分析)测试并分析功能组件运作行为。所述测试和分析可对多个功能组件并行执行。功能组件配置相关信息是以多种粒度等级并实时地呈现在一图形用户界面(GUT)上。所述图形用户界面可促进在辨别失败图案、产品测试调谐和场配置算法调整上进行用户相互作用。也可以多种便利的数据库格式组织所述测试和分析信息。
上述已由以下概念广泛地描述:
1.一种处理单元,其包含:
多个功能组件,其用于执行处理运作,其中包括在所述多个功能组件中的缺陷功能组件经禁用且无缺陷功能组件经选择性地激活;和
一工作流程控制组件,其用于将工作流程分发给所述经选择性地激活的功能组件并防止将工作流程分配给所述经禁用的功能组件。
2.如概念1所述的处理单元,其中所述多个处理组件执行并行处理活动。
3.如概念2所述的处理单元,其中所述并行处理活动是包括在一处理管线中的。
4.如概念1所述的处理单元,其中所述工作流程是在分包单元中分发的。
5.如概念1所述的处理单元,其中所述处理单元是一中央处理单元。
6.如概念5所述的处理单元,其中所述多个处理组件是浮点组件。
7.如概念1所述的处理单元,其中所述处理单元是一图形处理单元。
8.如概念7所述的处理单元,其中所述多个处理组件是遮影组件。
9.如概念7所述的处理单元,其中所述多个处理组件是一图形帧缓冲器界面的一区段化的部分。
10.一种功能组件配置方法,其包含:
接收一关于一缺陷功能组件的指示;
确定所述缺陷功能组件是否为多个相似功能组件中的一组件;
如果所述缺陷功能组件是所述多个相似功能组件中的一功能组件,那么禁用所述缺陷功能组件;
激活一个或一个以上的非缺陷功能组件;和
提供关于所述禁用和所述激活的通知给一组件,否则所述组件将信息传递给所述缺陷功能组件。
11.如概念10所述的功能组件配置方法,其中所述关于一缺陷功能组件的指示是从一测试系统接收的。
12.如概念10所述的功能组件配置方法,其中所述禁用和激活是通过对一控制激活所述缺陷功能组件的寄存器编程而完成的。
13.如概念10所述的功能组件配置方法,其中所述禁用是通过熔断到达所述缺陷组件的通信线路而完成的。
14.一种具有嵌于其中的计算机可读程序码以用于导致一测试系统实施缺陷分辨率模块指令的计算机可用存储媒介,其包含:
一功能维持模块,其用于确定一识别功能组件是否包括在一允许禁用的群组中;
一相对应的组件检测模块,其用于确定是否有与所述应禁用的识别组件相关联的相关功能组件;和
一禁用模块,其用于引导功能组件禁用。
15.如概念14所述的计算机可用存储媒介,其中所述指令是一驱动程序。
16.如概念14所述的计算机可用存储媒介,其中所述驱动程序是通过一网络分配的。
17.如概念14所述的计算机可用存储媒介,其中所述功能维持模块确定是否存在其他可处理所述识别功能组件的工作流程的功能组件。
18.如概念14所述的计算机可用存储媒介,其中所述功能维持模块对照一允许禁用的预定组件列表核查所述功能组件识别。
19.如概念14所述的计算机可用存储媒介,其中所述相关功能组件经禁用以维持产品性能区别化。
20.如概念14所述的计算机可用存储媒介,其中禁用模块直接通过一测试界面发送一禁用信号给所述识别功能组件。
21.如概念14所述的计算机可用存储媒介,其中所述禁用模块发送一信号给一包括在一经测试的晶粒中的功能组件控制器。
22.如概念14所述的计算机可用存储媒介,其中如果所述功能维持模块提供一允许禁用所述识别功能组件的指示,那么禁用模块引导禁用所述识别功能组件。
23.如概念14所述的计算机可用存储媒介,其进一步包含一晶粒标记模块,以用于引导晶粒标记。
24.如概念23所述的计算机可用存储媒介,其中晶粒标记模块基于一个或一个以上的标准引导标记一晶粒。
25.如概念23所述的计算机可用存储媒介,其中如果所述识别功能组件经禁用,那么晶粒标记模块引导在一晶粒上作出标记。
26.一种处理单元,其包含:
多个功能组件,其中所述多个功能组件中的每一组件执行相似功能;
一用于选择性地激活所述多个功能组件中的每一组件的组件;和
一分配组件,其耦合到所述多个功能组件和所述激活组件,所述分配组件用于将信息分配给所述多个功能组件中的所述经激活的每一组件并防止将信息分配给所述经禁用的组件。
27.如概念26所述的处理单元,其中所述激活组件识别所述多个功能组件的一缺陷子集,并且所述功能组件子集并非经激活以供使用。
28.如概念26所述的处理单元,其中所述处理单元是包括在一基于计算机的系统中。
29.如概念26所述的处理单元,其中所述激活组件提供一激活指示给所述分配组件,其中所述激活指示指示所述多个功能组件中的所述每一组件中的哪一组件经激活。
30.如概念26所述的处理单元,其中所述激活组件基于对所述多个功能组件中的每一组件的测试而选择性地激活所述多个功能组件中的每一组件。
31.如概念26所述的处理单元,其中所述激活组件选择性地激活所述测试指示为正确运作的所述多个功能组件中的每一组件。
32.如概念31所述的处理单元,其中经激活的所述多个功能组件中的所述每一组件能够执行将否则由未经激活的所述多个功能组件中的所述每一组件执行的所述相似功能。
33.一种处理单元,其包含:
多个功能组件,其用于执行处理运作,其中包括在所述多个功能组件中的缺陷功能组件经禁用;和
一工作流程控制组件,其用于防止将工作流程分配给所述经禁用的组件。
34.如概念33所述的处理单元,其中所述工作流程分发给包括在所述多个处理组件中的经激活的组件。
35.如概念33所述的处理单元,其中所述多个处理组件执行并行处理活动。
36.如概念35所述的处理单元,其中所述并行处理活动包括在一处理管线中。
37.如概念33所述的处理单元,其中所述处理单元是一图形处理单元。
38.一种集成电路,其包含:
多个功能组件,其用于执行处理运作;
一分配组件,其用于将信息分配给所述多个功能组件;和
一功能组件配置控制器,其用于配置所述多个功能组件中的一个或一个以上功能组件的运作特征。
39.如概念38所述的集成电路,其中所述功能组件配置控制器将关于所述多个功能组件的所述运作特征的信息提供给所述分配组件。
40.如概念38所述的集成电路,其中所述多个功能组件包括在一图形处理器中。
41.如概念38所述的集成电路,其中所述分配组件将所述运作特征配置包括在给所述多个功能组件的所述信息的分配中。
42.如概念38所述的集成电路,其中所述功能组件配置控制器根据多种目标配置所述运作特征。
43.如概念38所述的集成电路,其进一步包含一掩膜阵列,其中包括在所述掩膜阵列中的每一掩膜对应于一运作目标并且提供一关于所述多个功能组件的运作特征的指示。
44.如概念43所述的集成电路,其中所述掩膜阵列包括一良品掩膜,所述良品掩膜用于提供一关于所述缺陷功能组件的禁用的指示。
45.如概念44所述的集成电路,其中所述掩膜阵列进一步包含:
一兼容性掩膜,其用于指示激活所述多个功能组件的支持兼容的运作特征;
一性能掩膜,其用于指示所述多个功能组件的性能等级;和
一自我修复掩膜,其用于基于现场测试指示多个功能组件的运作特征。
46.如概念38所述的集成电路,其中所述多个功能组件包括一管线。
47.一种功能组件配置方法,其包含:
接收一关于一功能组件配置更改触发事件的指示;
确定所述所指示的功能组件配置更改是否有效;
引导更改所述功能组件配置;和
根据所述功能组件配置的所述更改使工作流程转向。
48.如概念47所述的功能组件配置方法,其进一步包含核查一关于所述功能组件运作特征的指示。
49.如概念47所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制激活所述功能组件的值编程而完成的。
50.如概念47所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制所述功能组件的一时钟速度的寄存器编程而完成的。
51.如概念47所述的功能组件配置方法,其进一步包含基于所述功能特征将工作流程分发给所述多个功能组件。
52.如概念47所述的功能组件配置方法,其进一步包含如果所述功能组件经禁用,那么防止将工作流程分配给所述功能组件。
53.如概念47所述的功能组件配置方法,其中确定所述运作特征包括考虑并协调多种运作目标。
54.一种集成电路,其包含:
多个功能组件,其用于执行相似并行运作;
一功能组件控制器,其用于控制所述多个功能组件中的一个或一个以上组件的激活和禁用;和
一分配组件,其用于将信息分配给包括在所述多个功能组件中的经激活的功能组件并且防止将信息分配给包括在所述多个功能组件中的经禁用的功能组件。
55.如概念54所述的集成电路,其中所述功能组件控制器将关于所述多个功能组件中的哪一组件经禁用的信息提供给分配组件。
56.如概念54所述的集成电路,其中所述功能组件控制器将关于所述多个功能组件中的哪一组件经激活的信息提供给分配组件。
57.如概念55所述的集成电路,其中所述多个功能组件包含主动型功能组件。
58.如概念56所述的集成电路,其中所述分配组件分配工作流程信息。
59.如概念57所述的集成电路,其中所述功能组件控制器包含一软件可编程寄存器。
60.如概念58所述的集成电路,其中所述功能组件控制器包含一硬编码掩膜。
61.如概念59所述的集成电路,其中所述集成电路标记有一对应于经禁用的所述多个功能组件的一数目的性能指示符。
62.如概念60所述的集成电路,其中所述集成电路标记有一对应于经激活的所述多个功能组件的一数目的性能指示符。
63.一种降低性能电路补救方法,其包含:准备一芯片以用于测试;
测试所述芯片;和
基于所述测试的结果对所述芯片执行一功能组件配置方法。
64.如概念63所述的降低性能电路补救方法,其中所述测试包含:
识别一缺陷功能组件;
确定是否有一无缺陷功能组件包括在所述集成电路中,其中所述无缺陷功能组件与所述缺陷功能组件执行一相似功能;
如果所述无缺陷组件包括在所述集成电路中,那么将所述缺陷功能组件指定为未使用;和
如果执行所述相似功能的所述无缺陷组件并非包括在所述集成电路中,那么将所述集成电路标记为缺陷。
65.如概念63所述的降低性能电路补救方法,其中所述芯片的多个同质执行组件是经禁用或经激活的。
66.如概念63所述的降低性能电路补救方法,其进一步包含重新配置所述芯片以允许其他功能组件执行所述经禁用的功能组件的功能。
67.如概念63所述的降低性能电路补救方法,其中所述功能组件配置方法包含:
接收一关于一缺陷功能组件的指示;
确定所述缺陷功能组件是否为多个相似功能组件中的一组件;
如果所述缺陷功能组件是所述多个相似功能组件中的一组件,那么禁用所述缺陷功能组件;
激活一个或一个以上无缺陷功能组件;和
提供关于所述禁用和所述激活的通知给一组件,否则所述组件将信息传递给所述缺陷功能组件。
68.如概念63所述的降低性能电路补救方法,其中所述关于一缺陷功能组件的指示是从一测试系统接收的。
69.一种晶粒分类方法,其包含:
制造具有相似配置的多个晶粒;
防止一组件参与所述多个晶粒中的一者中的生产性贡献而无需消除所述多个晶粒中的所述一者执行一与所述组件相关联的功能;和
基于所述功能的区别化的性能等级对所述多个晶粒分类。
70.如概念69所述的晶粒分类方法,其中所述多个晶粒是制造在一单个晶片上。
71.如概念69所述的晶粒分类方法,其中相似配置是通过观看关于所述多个晶粒的数据单表信息而确定。
72.如概念69所述的晶粒分类方法,其中如果晶粒具有大体上相同制造成本,那么确定相似配置。
73.如概念69所述的晶粒分类方法,其中通过禁用所述组件来防止所述组件参与生产性贡献。
74.如概念69所述的晶粒分类方法,其中直到在执行测试以后,做出一对于哪一数据单表信息适用于包括在所述多个晶粒中的一晶粒的确定。
75.如概念69所述的晶粒分类方法,其中包括在所述多个晶粒中的一第一晶粒和一第二晶粒是包括在相关于一提供功能的性能等级而以不同价格出售的不同产品中。
如概念69所述的晶粒分类方法,其中所述多个晶粒中的每一晶粒是使用相同设计制造并以不同性能等级分配。
77.一种用于增加来自一晶片的可用晶粒的良品的方法,其包含:
制造一晶片,其中所述晶片包括多个晶粒且其中所述多个晶粒中的每一晶粒具有一功能组件,所述功能组件能够使用多个功能子组件并行执行多个子任务;
识别所述多个功能子组件中的可运作和不可运作的每一子组件;
禁用所述多个功能子组件中的识别为不可运作的每一子组件的运作;
激活所述多个功能子组件中的识别为可运作的每一子组件的选择性运作;
基于所述功能子组件的运作状态,将所述多个晶粒中的所述每一晶粒分类为一性能类别;和
如果所述多个所述晶粒中的一者经分类为一指定为可补救的性能类别,那么补救具有不可运作的功能子组件的所述多个所述晶粒中的所述一者。
78.如概念15所述的方法,其中所述子任务包括图形子任务。
79.如概念15所述的方法,其中所述不可运作功能子组件是作为一测试过程的一部分而识别的。
80.如概念15所述的方法,其中所述补救所述多个所述晶粒中的一晶粒包括将所述晶粒标记有一对应于所述多个所述晶粒中的所述一晶粒的性能能力的性能指示符。
81.如概念15所述的方法,其中所述多个所述晶粒中的所述一晶粒包括图形处理管线功能组件。
82.如概念15所述的方法,其进一步包含废除所述多个所述晶粒中的不提供完整功能的一晶粒。
83.一种具有嵌于其中的计算机可读程序码以用于导致一电路实施功能组件配置模块指令的计算机可用存储媒介,其包含:
一功能跟踪模块,其用于引导维持功能组件运作特征;和
一配置模块,其用于引导功能组件配置。
84.如概念83所述的计算机可用存储媒介,其中所述功能跟踪模块确定是否存在其他可处理一识别功能组件的工作流程的功能组件。
85.如概念83所述的计算机可用存储媒介,其中所述功能跟踪模块对照一预定相关运作特征设定列表核查一功能指示符。
86.如概念83所述的计算机可用存储媒介,其进一步包含动态改变所述功能指示符作为一功能协商过程的一部分。
87.如概念83所述的计算机可用存储媒介,其中所述运作特征是设定为维持产品区别化。
88.如概念84所述的计算机可用存储媒介,其中多个功能组件包括在一单个晶粒中。
89.如概念85所述的计算机可用存储媒介,其中所述指令为一驱动程序。
90.如概念86所述的计算机可用存储媒介,其中所述驱动程序是通过一网络分配的。
91.一种远端重新配置方法:
进行一晶粒功能组件重新配置请求过程,其中一系统请求一来自一远端资源的重新配置码;
执行一重新配置码产生过程,其中所述远端资源处理所述对于所述重新配置码的请求;和
如果所述系统接收所述重新配置码,那么执行一晶粒功能组件重新配置方法,其中一晶粒功能组件是根据所述重新配置码而重新配置。
92.如概念91所述的远端重新配置方法,其中所述重新配置请求过程包含:
请求所述晶粒功能组件重新配置码;和
接收所述晶粒功能组件重新配置码。
93.如概念91所述的远端重新配置方法,其进一步包含进行一重新配置码允许指示符请求过程以获得一重新配置码允许指示符。
94.如概念93所述的远端重新配置方法,其中所述重新配置码允许指示符请求过程包含:
转发一对于一允许指示符的请求和支付;和
接收一对于所述对于所述允许指示符的请求和支付的响应。
95.如概念91所述的远端重新配置方法,其进一步包含响应于一获得一重新配置码允许指示符的请求过程而进行一重新配置码允许指示符响应过程。
96.如概念91所述的远端重新配置方法,其进一步包含:
接收对于一允许指示符的支付;和
响应于接收所述支付而转发所述允许指示符。
97.如概念91所述的远端重新配置方法,其中所述重新配置码产生过程包含:
接收一对于一重新配置码和一允许指示符的请求;
分析所述允许指示符的有效性;和
如果所述允许指示符有效,那么提供一重新配置码。
98.如概念97所述的远端重新配置方法,其中所述重新配置码产生过程包含如果所述允许指示符并非有效,那么转发拒绝指示。
99.一种功能组件配置方法,其包含:
接收一关于一功能组件配置更改请求的指示;
确定所述所指示的功能组件配置更改是否经授权;和
引导所述功能组件配置的更改。
100.如概念99所述的功能组件配置方法,其进一步包含核查一关于所述功能组件运作特征的指示。
101.如概念99所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制所述功能组件的所述更改的值编程而完成的。
102.如概念99所述的功能组件配置方法,其中确定所述运作特征包括考虑并协调多种运作特征。
103.一种功能组件配置分析方法,其包含:
分析功能组件运作行为;
基于所述分析的结果确定运作特征设定;和
根据所述运作特征设定配置功能组件。
104.如概念103所述的功能组件配置分析方法,其中所述分析功能组件运作行为是为多个功能组件并行执行。
105.如概念103所述的功能组件配置分析方法,其中所述分析功能组件运作行为包括拓扑反转分析。
106.如概念103所述的功能组件配置分析方法,其中所述分析是以配置抽象化和组件组织的多种等级执行的。
107.如概念103所述的功能组件配置分析方法,其中所述运作特征设定是以配置抽象化和组件组织的多种等级确定的。
108.如概念103所述的功能组件配置分析方法,其中所述分析功能组件运作行为进一步包含:
以多种功能组件粒度和组织等级提取关于多个功能组件的测试信息;
以多种功能组件粒度和组织等级检查所述测试信息;
基于所述检查的结果建置运作特征设定调整;和
将所述运作特征设定调整包括在所述运作特征设定的确定中。
109.如概念103所述的功能组件配置分析方法,其中所述根据所述运作特征设定配置功能组件包含:
确定一所指示的功能组件配置更改是否有效;
引导所述功能组件配置的更改;和
根据所述功能组件配置的所述更改使工作流程转向。
110.一种功能组件配置系统,其包含:
一汇流排,其用于传递信息和指令;
一处理器,其用于处理所述信息和指令,包括用于执行一功能组件配置分析方法的信息和指令;
一存储器,其用于存储所述信息和指令,包括用于执行一功能组件配置分析方法的信息和指令;和
一显示器,其用于显示一表示所述信息和功能组件配置运作设定、包括与功能组件运作行为的分析和运作特征设定的确定相关联的信息的图形用户界面。
111.如概念110所述的功能组件配置分析方法,其中所述图形用户界面以多种粒度等级并实时指示一关于功能组件构件块的通过或失败状态。
112.如概念110所述的功能组件配置分析方法,其中所述图形用户界面以一用户友好方式呈现拓扑反转信息。
113.如概念110所述的功能组件配置分析方法,其中所述图形用户界面促进用户与多种功能组件运作行为分析和运作特征设定特点相互作用。
114.如概念110所述的功能组件配置分析方法,其中所述图形用户界面促进用户在失败图案产品测试调谐和场配置算法调整上相互作用。
115.一种柔性集成电路测试方法,其包含:
准备多个集成电路以用于测试;
测试所述多个集成电路;和
基于所述测试的结果对所述多个集成电路执行一功能组件配置方法。
116.如概念115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在所述多个集成电路上并行执行的。
117.如概念115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在一有组织的测试分层结构上执行的。
118.如概念117所述的柔性集成电路测试方法,其中所述有组织的测试分层结构包括功能组件粒度和组织的多种等级。
119.如概念118所述的柔性集成电路测试方法,其中所述有组织的测试分层结构适应一引导至拓扑反转分析的结果。
120.如概念115所述的柔性集成电路测试方法,其中所述测试是在一晶片探测阶段执行的。
121.如概念115所述的柔性集成电路测试方法,其中所述测试是在一最终分类阶段执行的。
122.如概念115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在一工程模式中执行的。
123.如概念115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在一生产模式中执行的。
124.如概念115所述的柔性集成电路测试方法,其中所述测试包括全速测试。
125.一种集成电路,其包含:
多个功能组件,其用于执行处理运作;
一分配组件,其用于将信息分配给所述多个功能组件;
一功能组件配置控制器,其用于配置所述多个功能组件中的一个或一个以上功能组件的运作特征;和
一配置通信界面,其用于将与所述多个功能组件中的所述一个或一个以上功能组件的所述运作特征相关的信息来回地传递给一外部装置。
126.如概念125所述的集成电路,其中所述配置通信界面将测试信息传递给所述外部装置。
127.如概念125所述的集成电路,其中所述测试信息和所述功能组件配置信息是由所述配置通信界面以功能组件粒度和组织的多种等级传递的。
128.如概念126所述的集成电路,其中所述测试信息包括拓扑反转分析信息。
129.如概念126所述的集成电路,其中所述测试信息包括晶片探测阶段信息。
130.如概念126所述的集成电路,其中所述测试信息包括最终分类阶段信息。
131.如概念125所述的集成电路,其中所述配置通信界面接收与失败图案辨别、产品测试调谐和场配置算法调整相关联的运作特征设定信息。
132.一种外部功能组件协调装置,其包含:
一测试模块,其用于产生功能组件的测试向量;
一功能组件运作设定模块,其用于确定所述功能组件的运作设定;和
一测试信息组织模块,其用于组织与所述功能组件相关联的测试信息。
133.如概念132所述的外部功能组件协调装置,其进一步包含一全局运作设定调整模块,所述全局运作设定调整模块用于产生所述功能组件的全局运作设定调整并将关于所述全局运作设定调整的信息提供给所述功能组件运作设定模块以供在确定所述功能组件的运作设定中使用。
134.如概念132所述的外部功能组件协调装置,其中所述功能组件运作设定模块包含一缺陷分辨率模块,所述缺陷分辨率模块用于确定所述功能组件运作设定是否可经调整以补救一晶粒。
135.如概念132所述的外部功能组件协调装置,其中所述测试信息是根据功能组件粒度和组织的一分层架构组织的。
136.如概念132所述的外部功能组件协调装置,其中所述测试信息包括晶片探测阶段信息和最终分类阶段信息。
137.如概念132所述的外部功能组件协调装置,其中所述运作特征设定信息包括与失败图案辨别、产品测试调谐和场配置算法调整相关的信息。
本发明的具体实施例的上述描述是出于说明和描述的目的而呈现。其并非为穷尽的或将本发明限制为所揭示的精确形式,并且明显地,可能根据上述教示而作出许多修改和变更。选择并描述所述实施例以便对本发明的原理和其实际应用作出最佳解释,籍此使得其他的所属领域技术人员能够最佳利用本发明并且涵盖适用于特定用途的具有多种修改的多种实施例。希望本发明的范围是由上附权利要求书和其等同物所界定。
Claims (137)
1.一种处理单元,其包含:
多个功能组件,其用于执行处理运作,其中对包括在所述多个功能组件中的缺陷功能组件禁用且对无缺陷功能组件经选择性地激活;和
一工作流程控制组件,其用于将工作流程分发给所述经选择性地激活的功能组件并防止将工作流程分配给所述经禁用的功能组件。
2.如权利要求1所述的处理单元,其中所述多个处理组件执行并行处理活动。
3.如权利要求2所述的处理单元,其中所述并行处理活动是包括在一处理管线中的。
4.如权利要求1所述的处理单元,其中所述工作流程是在分包单元中分发的。
5.如权利要求1所述的处理单元,其中所述处理单元是一中央处理单元。
6.如权利要求5所述的处理单元,其中所述多个处理组件是浮点组件。
7.如权利要求1所述的处理单元,其中所述处理单元是一图形处理单元。
8.如权利要求7所述的处理单元,其中所述多个处理组件是遮影组件。
9.如权利要求7所述的处理单元,其中所述多个处理组件是一图形帧缓冲器界面的区段化的部分。
10.一种功能组件配置方法,其包含:
接收一关于一缺陷功能组件的指示;
确定所述缺陷功能组件是否为多个相似功能组件中的一组件;
如果所述缺陷功能组件是所述多个相似功能组件中的一功能组件,那么禁用所述缺陷功能组件;
激活一个或一个以上的非缺陷功能组件;和
提供关于所述禁用和所述激活的通知给一组件,否则所述组件将信息传递给所述缺陷功能组件。
11.如权利要求10所述的功能组件配置方法,其中所述关于一缺陷功能组件的指示是从一测试系统接收的。
12.如权利要求10所述的功能组件配置方法,其中所述禁用和激活是通过对一控制激活所述缺陷功能组件的寄存器编程而完成的。
13.如权利要求10所述的功能组件配置方法,其中所述禁用是通过熔断到达所述缺陷组件的通信线路而完成的。
14.一种具有嵌于其中的计算机可读程序码以用于导致一测试系统实施缺陷分辨率模块指令的计算机可用存储媒介,其包含:
一功能维持模块,其用于确定一识别功能组件是否包括在一允许禁用的群组中;
一相对应的组件检测模块,其用于确定是否有与所述应禁用的识别组件相关联的相关功能组件;和
一禁用模块,其用于引导功能组件禁用。
15.如权利要求14所述的计算机可用存储媒介,其中所述指令是一驱动程序。
16.如权利要求14所述的计算机可用存储媒介,其中所述驱动程序是通过一网络分配的。
17.如权利要求14所述的计算机可用存储媒介,其中所述功能维持模块确定是否存在其他可处理所述识别功能组件的工作流程的功能组件。
18.如权利要求14所述的计算机可用存储媒介,其中所述功能维持模块对照一允许禁用的预定组件列表核对所述功能组件识别。
19.如权利要求14所述的计算机可用存储媒介,其中所述相关功能组件经禁用以维持产品性能区别化。
20.如权利要求14所述的计算机可用存储媒介,其中禁用模块直接通过一测试界面发送一禁用信号给所述识别功能组件。
21.如权利要求14所述的计算机可用存储媒介,其中所述禁用模块发送一信号给一包括在一经测试的晶粒中的功能组件控制器。
22.如权利要求14所述的计算机可用存储媒介,其中如果所述功能维持模块提供一允许禁用所述识别功能组件的指示,那么禁用模块引导禁用所述识别功能组件。
23.如权利要求14所述的计算机可用存储媒介,其进一步包含一晶粒标记模块,以用于引导晶粒标记。
24.如权利要求23所述的计算机可用存储媒介,其中晶粒标记模块基于一个或一个以上的标准引导标记一晶粒。
25.如权利要求23所述的计算机可用存储媒介,其中如果所述识别功能组件经禁用,那么晶粒标记模块引导在一晶粒上作出标记。
26.一种处理单元,其包含:
多个功能组件,其中所述多个功能组件中的每一组件执行相似功能;
一用于选择性地激活所述多个功能组件中的每一组件的组件;和
一分配组件,其耦合到所述多个功能组件和所述激活组件,所述分配组件用于将信息分配给所述多个功能组件中的所述经激活的每一组件并防止将信息分配给所述经禁用的组件。
27.如权利要求26所述的处理单元,其中所述激活组件识别所述多个功能组件的一缺陷子集,并且所述功能组件子集并非经激活以供使用。
28.如权利要求26所述的处理单元,其中所述处理单元是包括在一基于计算机的系统中。
29.如权利要求26所述的处理单元,其中所述激活组件提供一激活指示给所述分配组件,其中所述激活指示指示所述多个功能组件中的所述每一组件中的哪一组件经激活。
30.如权利要求26所述的处理单元,其中所述激活组件基于对所述多个功能组件中的每一组件的测试而选择性地激活所述多个功能组件中的每一组件。
31.如权利要求26所述的处理单元,其中所述激活组件选择性地激活所述测试指示为正确运作的所述多个功能组件中的每一组件。
32.如权利要求31所述的处理单元,其中经激活的所述多个功能组件中的所述每一组件能够执行将否则由未经激活的所述多个功能组件中的所述每一组件执行的所述相似功能。
33.一种处理单元,其包含:
多个功能组件,其用于执行处理运作,其中对包括在所述多个功能组件中的缺陷功能组件禁用;和
一工作流程控制组件,其用于防止将工作流程分配给所述经禁用的组件。
34.如权利要求33所述的处理单元,其中所述工作流程分发给包括在所述多个处理组件中的经激活的组件。
35.如权利要求33所述的处理单元,其中所述多个处理组件执行并行处理活动。
36.如权利要求35所述的处理单元,其中所述并行处理活动包括在一处理管线中。
37.如权利要求33所述的处理单元,其中所述处理单元是一图形处理单元。
38.一种集成电路,其包含:
多个功能组件,其用于执行处理运作;
一分配组件,其用于将信息分配给所述多个功能组件;和
一功能组件配置控制器,其用于配置所述多个功能组件中的一个或一个以上功能组件的运作特征。
39.如权利要求38所述的集成电路,其中所述功能组件配置控制器将关于所述多个功能组件的所述运作特征的信息提供给所述分配组件。
40.如权利要求38所述的集成电路,其中所述多个功能组件包括在一图形处理器中。
41.如权利要求38所述的集成电路,其中所述分配组件将所述运作特征配置包括在给所述多个功能组件的所述信息的分配中。
42.如权利要求38所述的集成电路,其中所述功能组件配置控制器根据多种目标配置所述运作特征。
43.如权利要求38所述的集成电路,其进一步包含一掩膜阵列,其中包括在所述掩膜阵列中的每一掩膜对应于一运作目标并且提供一关于所述多个功能组件的运作特征的指示。
44.如权利要求43所述的集成电路,其中所述掩膜阵列包括一良品掩膜(yield mask),所述良品掩膜用于提供一关于所述缺陷功能组件的禁用的指示。
45.如权利要求44所述的集成电路,其中所述掩膜阵列进一步包含:
一兼容性掩膜,其用于指示激活所述多个功能组件的支持兼容的运作特征;
一性能掩膜,其用于指示所述多个功能组件的性能等级;和
一自我修复掩膜,其用于基于现场测试指示多个功能组件的运作特征。
46.如权利要求38所述的集成电路,其中所述多个功能组件包括一管线。
47.一种功能组件配置方法,其包含:
接收一关于一功能组件配置更改触发事件的指示;
确定所述所指示的功能组件配置更改是否有效;
引导更改所述功能组件配置;和
根据所述功能组件配置的所述更改使工作流程转向。
48.如权利要求47所述的功能组件配置方法,其进一步包含核对一关于所述功能组件运作特征的指示。
49.如权利要求47所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制激活所述功能组件的值编程而完成的。
50.如权利要求47所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制所述功能组件的一时钟速度的寄存器编程而完成的。
51.如权利要求47所述的功能组件配置方法,其进一步包含基于所述功能特征将工作流程分发给所述多个功能组件。
52.如权利要求47所述的功能组件配置方法,其进一步包含如果所述功能组件经禁用,那么防止将工作流程分配给所述功能组件。
53.如权利要求47所述的功能组件配置方法,其中确定所述运作特征包括考虑并协调多种运作目标。
54.一种集成电路,其包含:
多个功能组件,其用于执行相似并行运作;
一功能组件控制器,其用于控制所述多个功能组件中的一个或一个以上组件的激活和禁用;和
一分配组件,其用于将信息分配给包括在所述多个功能组件中的经激活的功能组件并且防止将信息分配给包括在所述多个功能组件中的经禁用的功能组件。
55.如权利要求54所述的集成电路,其中所述功能组件控制器将关于所述多个功能组件中的哪一组件经禁用的信息提供给所述分配组件。
56.如权利要求54所述的集成电路,其中所述功能组件控制器将关于所述多个功能组件中的哪一组件经激活的信息提供给所述分配组件。
57.如权利要求55所述的集成电路,其中所述多个功能组件包含主动型功能组件。
58.如权利要求56所述的集成电路,其中所述分配组件分配工作流程信息。
59.如权利要求57所述的集成电路,其中所述功能组件控制器包含一软件可编程寄存器。
60.如权利要求58所述的集成电路,其中所述功能组件控制器包含一硬编码掩膜。
61.如权利要求59所述的集成电路,其中所述集成电路标记有一对应于经禁用的所述多个功能组件的一数目的性能指示符。
62.如权利要求60所述的集成电路,其中所述集成电路标记有一对应于经激活的所述多个功能组件的一数目的性能指示符。
63.一种降低性能电路补救方法,其包含:
准备一芯片以用于测试;
测试所述芯片;和
基于所述测试的结果对所述芯片执行一功能组件配置方法。
64.如权利要求63所述的降低性能电路补救方法,其中所述测试包含:
识别一缺陷功能组件;
确定是否有一无缺陷功能组件包括在所述集成电路中,其中所述无缺陷功能组件与所述缺陷功能组件执行一相似功能;
如果所述无缺陷组件包括在所述集成电路中,那么将所述缺陷功能组件指定为不使用;和
如果执行所述相似功能的所述无缺陷组件并非包括在所述集成电路中,那么将所述集成电路标记为缺陷。
65.如权利要求63所述的降低性能电路补救方法,其中所述芯片的多个同质执行组件中的一个组件是经禁用或经激活的。
66.如权利要求63所述的降低性能电路补救方法,其进一步包含重新配置所述芯片以允许其他功能组件执行所述经禁用的功能组件的功能。
67.如权利要求63所述的降低性能电路补救方法,其中所述功能组件配置方法包含:
接收一关于一缺陷功能组件的指示;
确定所述缺陷功能组件是否为多个相似功能组件中的一组件;
如果所述缺陷功能组件是所述多个相似功能组件中的一组件,那么禁用所述缺陷功能组件;
激活一个或一个以上无缺陷功能组件;和
提供关于所述禁用和所述激活的通知给一组件,否则所述组件将信息传递给所述缺陷功能组件。
68.如权利要求63所述的降低性能电路补救方法,其中所述关于一缺陷功能组件的指示是从一测试系统接收的。
69.一种晶粒分类方法,其包含:
制造具有相似配置的多个晶粒;
防止一组件参与所述多个晶粒中的一者中的生产性贡献而无需消除所述多个晶粒中的所述一者执行一与所述组件相关联的功能;和
基于所述功能的区别化的性能等级对所述多个晶粒分类。
70.如权利要求69所述的晶粒分类方法,其中所述多个晶粒是制造在一单个晶片上。
71.如权利要求69所述的晶粒分类方法,其中相似配置是通过观看关于所述多个晶粒的数据单表信息而确定。
72.如权利要求69所述的晶粒分类方法,其中如果晶粒具有大体上相同制造成本,那么确定相似配置。
73.如权利要求69所述的晶粒分类方法,其中通过禁用所述组件来防止所述组件参与生产性贡献。
74.如权利要求69所述的晶粒分类方法,其中直到在执行测试以后,做出一对于哪一数据单表信息适用于包括在所述多个晶粒中的一晶粒的确定。
75.如权利要求69所述的晶粒分类方法,其中包括在所述多个晶粒中的一第一晶粒和一第二晶粒是包括在相关于一提供功能的性能等级而以不同价格出售的不同产品中。
76.如权利要求69所述的晶粒分类方法,其中所述多个晶粒中的每一晶粒是使用相同设计制造并以不同性能等级分配。
77.一种用于增加来自一晶片的可用晶粒的良率的方法,其包含:
制造一晶片,其中所述晶片包括多个晶粒且其中所述多个晶粒中的每一晶粒具有一功能组件,所述功能组件能够使用多个功能子组件并行执行多个子任务;
识别所述多个功能子组件中的可运作和不可运作的每一子组件;
禁用所述多个功能子组件中的识别为不可运作的每一子组件的运作;
激活所述多个功能子组件中的识别为可运作的每一子组件的选择性运作;
基于所述功能子组件的运作状态,将所述多个晶粒中的所述每一晶粒分类为一性能类别;和
如果所述多个所述晶粒中的一者经分类为一指定为可补救的性能类别,那么补救具有不可运作的功能子组件的所述多个所述晶粒中的所述一者。
78.如权利要求15所述的方法,其中所述子任务包括图形子任务。
79.如权利要求15所述的方法,其中所述不可运作功能子组件是作为一测试过程的一部分而识别的。
80.如权利要求15所述的方法,其中所述补救所述多个所述晶粒中的一晶粒包括将所述晶粒标记有一对应于所述多个所述晶粒中的所述一晶粒的性能能力的性能指示符。
81.如权利要求15所述的方法,其中所述多个所述晶粒中的所述一晶粒包括图形处理管线功能组件。
82.如权利要求15所述的方法,其进一步包含废除所述多个所述晶粒中的不提供完整功能的一晶粒。
83.一种具有嵌于其中的计算机可读程序码以用于导致一电路实施功能组件配置模块指令的计算机可用存储媒介,其包含:
一功能跟踪模块,其用于引导维持功能组件运作特征;和
一配置模块,其用于引导功能组件配置。
84.如权利要求83所述的计算机可用存储媒介,其中所述功能跟踪模块确定是否存在其他可处理一识别功能组件的工作流程的功能组件。
85.如权利要求83所述的计算机可用存储媒介,其中所述功能跟踪模块对照一预定相关运作特征设定列表核对一功能指示符。
86.如权利要求83所述的计算机可用存储媒介,其进一步包含动态改变所述功能指示符作为一功能协商过程的一部分。
87.如权利要求83所述的计算机可用存储媒介,其中所述运作特征是设定为维持产品区别化。
88.如权利要求84所述的计算机可用存储媒介,其中多个功能组件包括在一单个晶粒中。
89.如权利要求85所述的计算机可用存储媒介,其中所述指令为一驱动程序。
90.如权利要求86所述的计算机可用存储媒介,其中所述驱动程序是通过一网络分配的。
91.一种远端重新配置方法:
进行一晶粒功能组件重新配置请求过程,其中一系统请求一来自一远端资源的重新配置码;
执行一重新配置码产生过程,其中所述远端资源处理所述对于所述重新配置码的请求;和
如果所述系统接收所述重新配置码,那么执行一晶粒功能组件重新配置方法,其中一晶粒功能组件是根据所述重新配置码而重新配置。
92.如权利要求91所述的远端重新配置方法,其中所述重新配置请求过程包含:
请求所述晶粒功能组件重新配置码;和
接收所述晶粒功能组件重新配置码。
93.如权利要求91所述的远端重新配置方法,其进一步包含进行一重新配置码允许指示符请求过程以获得一重新配置码允许指示符。
94.如权利要求93所述的远端重新配置方法,其中所述重新配置码允许指示符请求过程包含:
转发一对于一允许指示符的请求和支付;和
接收一对于所述对于所述允许指示符的请求和支付的响应。
95.如权利要求91所述的远端重新配置方法,其进一步包含进行一重新配置码允许指示符响应过程以响应于一获得一重新配置码允许指示符的请求过程。
96.如权利要求91所述的远端重新配置方法,其进一步包含:
接收对于一允许指示符的支付;和
响应于接收所述支付而转发所述允许指示符。
97.如权利要求91所述的远端重新配置方法,其中所述重新配置码产生过程包含:
接收一对于一重新配置码和一允许指示符的请求;
分析所述允许指示符的有效性;和
如果所述允许指示符有效,那么提供一重新配置码。
98.如权利要求97所述的远端重新配置方法,其中所述重新配置码产生过程包含如果所述允许指示符并非有效,那么转发拒绝指示。
99.一种功能组件配置方法,其包含:
接收一关于一功能组件配置更改请求的指示;
确定所述所指示的功能组件配置更改是否经授权;和
引导所述功能组件配置的更改。
100.如权利要求99所述的功能组件配置方法,其进一步包含核对一关于所述功能组件运作特征的指示。
101.如权利要求99所述的功能组件配置方法,其中所述功能组件的所述配置是通过对一控制所述功能组件的所述更改的值编程而完成的。
102.如权利要求99所述的功能组件配置方法,其中确定所述运作特征包括考虑并协调多种运作目标。
103.一种功能组件配置分析方法,其包含:
分析功能组件运作行为;
基于所述分析的结果确定运作特征设定;和
根据所述运作特征设定配置功能组件。
104.如权利要求103所述的功能组件配置分析方法,其中所述分析功能组件运作行为是为多个功能组件并行执行。
105.如权利要求103所述的功能组件配置分析方法,其中所述分析功能组件运作行为包括拓扑反转分析。
106.如权利要求103所述的功能组件配置分析方法,其中所述分析是以配置抽象化和组件组织的多种等级执行的。
107.如权利要求103所述的功能组件配置分析方法,其中所述运作特征设定是以配置抽象化和组件组织的多种等级确定的。
108.如权利要求103所述的功能组件配置分析方法,其中所述分析功能组件运作行为进一步包含:
以多种功能组件粒度和组织等级提取关于多个功能组件的测试信息;
以多种功能组件粒度和组织等级检查所述测试信息;
基于所述检查的结果建置运作特征设定调整;和
将所述运作特征设定调整包括在所述运作特征设定的确定中。
109.如权利要求103所述的功能组件配置分析方法,其中所述根据所述运作特征设定配置功能组件包含:
确定一所指示的功能组件配置更改是否有效;
引导所述功能组件配置的更改;和
根据所述功能组件配置的所述更改使工作流程转向。
110.一种功能组件配置系统,其包含:
一总线,其用于传递信息和指令;
一处理器,其用于处理所述信息和指令,包括用于执行一功能组件配置分析方法的信息和指令;
一存储器,其用于存储所述信息和指令,包括用于执行一功能组件配置分析方法的信息和指令;和
一显示器,其用于显示一表示所述信息和功能组件配置运作设定、包括与功能组件运作行为的分析和运作特征设定的确定相关联的信息的图形用户界面。
111.如权利要求110所述的功能组件配置分析方法,其中所述图形用户界面以多种粒度等级并实时指示一关于功能组件构件块的通过或失败状态。
112.如权利要求110所述的功能组件配置分析方法,其中所述图形用户界面以一用户友好方式呈现拓扑反转信息。
113.如权利要求110所述的功能组件配置分析方法,其中所述图形用户界面促进用户与多种功能组件运作行为分析和运作特征设定特点相互作用。
114.如权利要求110所述的功能组件配置分析方法,其中所述图形用户界面促进用户在失败图案辨别、产品测试调谐和场配置算法调整上相互作用。
115.一种柔性集成电路测试方法,其包含:
准备多个集成电路以用于测试;
测试所述多个集成电路;和
基于所述测试的结果对所述多个集成电路执行一功能组件配置步骤。
116.如权利要求115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在所述多个集成电路上并行执行的。
117.如权利要求115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置步骤是在一有组织的测试分层结构上执行的。
118.如权利要求117所述的柔性集成电路测试方法,其中所述有组织的测试分层结构包括功能组件粒度和组织的多种等级。
119.如权利要求118所述的柔性集成电路测试方法,其中所述有组织的测试分层结构适应一引导至拓扑反转分析的结果。
120.如权利要求115所述的柔性集成电路测试方法,其中所述测试是在一晶片探测阶段执行的。
121.如权利要求115所述的柔性集成电路测试方法,其中所述测试是在一最终分类阶段执行的。
122.如权利要求115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在一工程模式中执行的。
123.如权利要求115所述的柔性集成电路测试方法,其中所述测试和所述功能组件配置方法是在一生产模式中执行的。
124.如权利要求115所述的柔性集成电路测试方法,其中所述测试包括速度测试。
125.一种集成电路,其包含:
多个功能组件,其用于执行处理运作;
一分配组件,其用于将信息分配给所述多个功能组件;
一功能组件配置控制器,其用于配置所述多个功能组件中的一个或一个以上功能组件的运作特征;和
一配置通信界面,其用于将与所述多个功能组件中的所述一个或一个以上功能组件的所述运作特征相关的信息来回地传递给一外部装置。
126.如权利要求125所述的集成电路,其中所述配置通信界面将测试信息传递给所述外部装置。
127.如权利要求125所述的集成电路,其中所述测试信息和所述功能组件配置信息是由所述配置通信界面以功能组件粒度和组织的多种等级传递的。
128.如权利要求126所述的集成电路,其中所述测试信息包括拓扑反转分析信息。
129.如权利要求126所述的集成电路,其中所述测试信息包括晶片探测阶段信息。
130.如权利要求126所述的集成电路,其中所述测试信息包括最终分类阶段信息。
131.如权利要求125所述的集成电路,其中所述配置通信界面接收与失败图案辨别、产品测试调谐和场配置算法调整相关联的运作特征设定信息。
132.一种外部功能组件协调装置,其包含:
一测试模块,其用于产生功能组件的测试向量;
一功能组件运作设定模块,其用于确定所述功能组件的运作设定;和
一测试信息组织模块,其用于组织与所述功能组件相关联的测试信息。
133.如权利要求132所述的外部功能组件协调装置,其进一步包含一全局运作设定调整模块,所述全局运作设定调整模块用于产生所述功能组件的全局运作设定调整并将关于所述全局运作设定调整的信息提供给所述功能组件运作设定模块以供在确定所述功能组件的运作设定中使用。
134.如权利要求132所述的外部功能组件协调装置,其中所述功能组件运作设定模块包含一缺陷分辨模块,所述缺陷分辨模块用于确定所述功能组件运作设定是否可经调整以补救一晶粒。
135.如权利要求132所述的外部功能组件协调装置,其中所述测试信息是根据功能组件粒度和组织的一分层架构组织的。
136.如权利要求132所述的外部功能组件协调装置,其中所述测试信息包括晶片探测阶段信息和最终分类阶段信息。
137.如权利要求132所述的外部功能组件协调装置,其中所述运作特征设定信息包括与失败图案辨别、产品测试调谐和场配置算法调整相关的信息。
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US50371003P | 2003-09-15 | 2003-09-15 | |
US60/503,710 | 2003-09-15 | ||
US10/740,723 | 2003-12-18 | ||
US10/740,721 | 2003-12-18 | ||
US10/740,721 US8872833B2 (en) | 2003-09-15 | 2003-12-18 | Integrated circuit configuration system and method |
US10/740,722 | 2003-12-18 | ||
US10/740,779 | 2003-12-18 | ||
US10/740,779 US8768642B2 (en) | 2003-09-15 | 2003-12-18 | System and method for remotely configuring semiconductor functional circuits |
US10/740,723 US8775112B2 (en) | 2003-09-15 | 2003-12-18 | System and method for increasing die yield |
US10/740,722 US8788996B2 (en) | 2003-09-15 | 2003-12-18 | System and method for configuring semiconductor functional circuits |
US10/876,340 US8775997B2 (en) | 2003-09-15 | 2004-06-23 | System and method for testing and configuring semiconductor functional circuits |
US10/876,340 | 2004-06-23 | ||
PCT/US2004/030127 WO2005029329A2 (en) | 2003-09-15 | 2004-09-13 | A system and method for testing and configuring semiconductor functional circuits |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1849588A true CN1849588A (zh) | 2006-10-18 |
Family
ID=34375385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004800261487A Pending CN1849588A (zh) | 2003-09-15 | 2004-09-13 | 用于测试和配置半导体功能电路的系统和方法 |
Country Status (6)
Country | Link |
---|---|
EP (2) | EP1665049A2 (zh) |
JP (1) | JP5441305B2 (zh) |
CN (1) | CN1849588A (zh) |
CA (1) | CA2538113A1 (zh) |
SG (1) | SG146654A1 (zh) |
WO (1) | WO2005029329A2 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102608518A (zh) * | 2012-02-29 | 2012-07-25 | 华为技术有限公司 | 一种芯片测试方法及装置 |
CN102812443A (zh) * | 2010-03-26 | 2012-12-05 | 超威半导体公司 | 集成电路管芯检测装置及方法 |
CN104615439A (zh) * | 2015-02-13 | 2015-05-13 | 东南大学 | 一种可重构系统的配置控制器 |
CN104977483A (zh) * | 2014-04-14 | 2015-10-14 | 吕俊毅 | 测试装置、测试系统以及测试方法 |
CN105143896A (zh) * | 2013-03-13 | 2015-12-09 | 格伦·J·利迪 | 可配置垂直集成 |
CN106896317A (zh) * | 2015-12-21 | 2017-06-27 | 瑞昱半导体股份有限公司 | 通过扫描测试的扫描链所执行的电路排错方法及电路排错系统 |
CN116774014A (zh) * | 2023-08-21 | 2023-09-19 | 北京怀美科技有限公司 | 多任务芯片测试系统和多任务芯片测试方法 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8872833B2 (en) | 2003-09-15 | 2014-10-28 | Nvidia Corporation | Integrated circuit configuration system and method |
US8711161B1 (en) | 2003-12-18 | 2014-04-29 | Nvidia Corporation | Functional component compensation reconfiguration system and method |
US8723231B1 (en) | 2004-09-15 | 2014-05-13 | Nvidia Corporation | Semiconductor die micro electro-mechanical switch management system and method |
US8711156B1 (en) | 2004-09-30 | 2014-04-29 | Nvidia Corporation | Method and system for remapping processing elements in a pipeline of a graphics processing unit |
US8021193B1 (en) | 2005-04-25 | 2011-09-20 | Nvidia Corporation | Controlled impedance display adapter |
US7793029B1 (en) | 2005-05-17 | 2010-09-07 | Nvidia Corporation | Translation device apparatus for configuring printed circuit board connectors |
US7412353B2 (en) * | 2005-09-28 | 2008-08-12 | Intel Corporation | Reliable computing with a many-core processor |
US20090051687A1 (en) * | 2005-10-25 | 2009-02-26 | Mitsubishi Electric Corporation | Image processing device |
US8417838B2 (en) | 2005-12-12 | 2013-04-09 | Nvidia Corporation | System and method for configurable digital communication |
US8412872B1 (en) | 2005-12-12 | 2013-04-02 | Nvidia Corporation | Configurable GPU and method for graphics processing using a configurable GPU |
US7774590B2 (en) * | 2006-03-23 | 2010-08-10 | Intel Corporation | Resiliently retaining state information of a many-core processor |
US20100325481A1 (en) * | 2006-10-20 | 2010-12-23 | Freescale Semiconductor, Inc. | Device having redundant core and a method for providing core redundancy |
US8724483B2 (en) | 2007-10-22 | 2014-05-13 | Nvidia Corporation | Loopback configuration for bi-directional interfaces |
JP5499682B2 (ja) * | 2009-12-17 | 2014-05-21 | 株式会社リコー | 半導体集積回路、デバッグシステム、デバッグ方法、デバッグプログラム及び記録媒体 |
US9331869B2 (en) | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
CN101980225B (zh) * | 2010-11-16 | 2013-03-20 | 中国人民解放军63908部队 | 一种电子产品测试性分析与诊断决策系统的实现方法 |
US9098561B2 (en) | 2011-08-30 | 2015-08-04 | Intel Corporation | Determining an effective stress level on a processor |
US9465620B2 (en) * | 2012-12-20 | 2016-10-11 | Intel Corporation | Scalable compute fabric |
US9317389B2 (en) | 2013-06-28 | 2016-04-19 | Intel Corporation | Apparatus and method for controlling the reliability stress rate on a processor |
US9904339B2 (en) | 2014-09-10 | 2018-02-27 | Intel Corporation | Providing lifetime statistical information for a processor |
US9704598B2 (en) | 2014-12-27 | 2017-07-11 | Intel Corporation | Use of in-field programmable fuses in the PCH dye |
CN108037443B (zh) * | 2017-12-27 | 2024-04-05 | 安徽凯尔通讯科技有限公司 | 具有扫码装置的测试标识机 |
KR102486624B1 (ko) * | 2020-10-15 | 2023-01-11 | (주)큐랩스 | 설계된 회로도에서의 회로 및 부품 검증 시스템 및 방법 |
KR20230155249A (ko) | 2022-05-03 | 2023-11-10 | 주식회사 딥엑스 | 구동중인 컴포넌트를 테스트할 수 있는 npu |
US12061855B2 (en) * | 2022-09-22 | 2024-08-13 | Apple Inc. | Functional circuit block harvesting in integrated circuits |
CN115391124B (zh) * | 2022-10-27 | 2023-03-21 | 瀚博半导体(上海)有限公司 | 一种面向图形芯片功耗测试的方法及装置 |
KR102647936B1 (ko) * | 2023-09-26 | 2024-03-15 | 주식회사 퓨어스마트 | Ic 칩에 대한 고장 판단 방법 및 이러한 방법을 수행하는 ic 칩 인코딩 장치 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6120348A (ja) * | 1984-07-06 | 1986-01-29 | Hitachi Ltd | Lsi集合体 |
US6288561B1 (en) * | 1988-05-16 | 2001-09-11 | Elm Technology Corporation | Method and apparatus for probing, testing, burn-in, repairing and programming of integrated circuits in a closed environment using a single apparatus |
US5276893A (en) * | 1989-02-08 | 1994-01-04 | Yvon Savaria | Parallel microprocessor architecture |
SE500447C2 (sv) | 1990-10-31 | 1994-06-27 | Siemens Elema Ab | Ventilator |
WO1994003901A1 (en) * | 1992-08-10 | 1994-02-17 | Monolithic System Technology, Inc. | Fault-tolerant, high-speed bus system and bus interface for wafer-scale integration |
US5513354A (en) * | 1992-12-18 | 1996-04-30 | International Business Machines Corporation | Fault tolerant load management system and method |
JPH06274459A (ja) * | 1993-03-17 | 1994-09-30 | Hitachi Ltd | 半導体集積回路装置 |
JPH09160840A (ja) * | 1995-12-08 | 1997-06-20 | Fuji Facom Corp | バス通信装置 |
US5956252A (en) * | 1997-04-29 | 1999-09-21 | Ati International | Method and apparatus for an integrated circuit that is reconfigurable based on testing results |
US6067633A (en) * | 1998-03-31 | 2000-05-23 | International Business Machines Corp | Design and methodology for manufacturing data processing systems having multiple processors |
US6504841B1 (en) * | 1998-04-06 | 2003-01-07 | Lockheed Martin Corporation | Three-dimensional interconnection geometries for multi-stage switching networks using flexible ribbon cable connection between multiple planes |
US6067262A (en) * | 1998-12-11 | 2000-05-23 | Lsi Logic Corporation | Redundancy analysis for embedded memories with built-in self test and built-in self repair |
US6377898B1 (en) * | 1999-04-19 | 2002-04-23 | Advanced Micro Devices, Inc. | Automatic defect classification comparator die selection system |
US6255849B1 (en) * | 2000-02-04 | 2001-07-03 | Xilinx, Inc. | On-chip self-modification for PLDs |
US6598194B1 (en) * | 2000-08-18 | 2003-07-22 | Lsi Logic Corporation | Test limits based on position |
JP2002076120A (ja) * | 2000-08-24 | 2002-03-15 | Sony Corp | 半導体装置 |
JP2002305250A (ja) * | 2001-02-02 | 2002-10-18 | Matsushita Electric Ind Co Ltd | 半導体集積回路および半導体集積回路に関するビジネス方法 |
US20030061409A1 (en) * | 2001-02-23 | 2003-03-27 | Rudusky Daryl | System, method and article of manufacture for dynamic, automated product fulfillment for configuring a remotely located device |
GB0114317D0 (en) * | 2001-06-13 | 2001-08-01 | Kean Thomas A | Method of protecting intellectual property cores on field programmable gate array |
US6883109B2 (en) * | 2001-07-30 | 2005-04-19 | Hewlett-Packard Development Company, L.P. | Method for accessing scan chains and updating EEPROM-resident FPGA code through a system management processor and JTAG bus |
-
2004
- 2004-09-13 WO PCT/US2004/030127 patent/WO2005029329A2/en active Application Filing
- 2004-09-13 SG SG200806908-0A patent/SG146654A1/en unknown
- 2004-09-13 CN CNA2004800261487A patent/CN1849588A/zh active Pending
- 2004-09-13 JP JP2006526417A patent/JP5441305B2/ja not_active Expired - Lifetime
- 2004-09-13 EP EP04784098A patent/EP1665049A2/en not_active Ceased
- 2004-09-13 CA CA002538113A patent/CA2538113A1/en not_active Abandoned
- 2004-09-13 EP EP09178413A patent/EP2163910A3/en not_active Ceased
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102812443A (zh) * | 2010-03-26 | 2012-12-05 | 超威半导体公司 | 集成电路管芯检测装置及方法 |
CN102608518A (zh) * | 2012-02-29 | 2012-07-25 | 华为技术有限公司 | 一种芯片测试方法及装置 |
CN105143896A (zh) * | 2013-03-13 | 2015-12-09 | 格伦·J·利迪 | 可配置垂直集成 |
CN104977483A (zh) * | 2014-04-14 | 2015-10-14 | 吕俊毅 | 测试装置、测试系统以及测试方法 |
CN104615439A (zh) * | 2015-02-13 | 2015-05-13 | 东南大学 | 一种可重构系统的配置控制器 |
CN106896317A (zh) * | 2015-12-21 | 2017-06-27 | 瑞昱半导体股份有限公司 | 通过扫描测试的扫描链所执行的电路排错方法及电路排错系统 |
CN116774014A (zh) * | 2023-08-21 | 2023-09-19 | 北京怀美科技有限公司 | 多任务芯片测试系统和多任务芯片测试方法 |
CN116774014B (zh) * | 2023-08-21 | 2023-10-31 | 北京怀美科技有限公司 | 多任务芯片测试系统和多任务芯片测试方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2163910A2 (en) | 2010-03-17 |
JP5441305B2 (ja) | 2014-03-12 |
EP2163910A3 (en) | 2010-09-15 |
JP2007506267A (ja) | 2007-03-15 |
EP1665049A2 (en) | 2006-06-07 |
WO2005029329A3 (en) | 2006-01-26 |
WO2005029329A2 (en) | 2005-03-31 |
SG146654A1 (en) | 2008-10-30 |
CA2538113A1 (en) | 2005-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1849588A (zh) | 用于测试和配置半导体功能电路的系统和方法 | |
CN1297939C (zh) | 图像处理装置及图像处理方法 | |
CN1111836C (zh) | 数据处理器和数据处理设备 | |
CN1287282C (zh) | 执行实时操作的方法和系统 | |
CN1110745C (zh) | 具有面向目标的打印接口的操作系统 | |
CN1259622C (zh) | 对排列在信元中的信息进行显示的装置 | |
CN1287283C (zh) | 调度方法和信息处理系统 | |
CN1376283A (zh) | 基于块的设计方法 | |
CN1916962A (zh) | 存储和回存状态上下文在图形处理单元的方法和装置 | |
CN1912825A (zh) | 信息处理装置及其控制方法 | |
CN1892795A (zh) | 集成电路装置及电子设备 | |
CN1916961A (zh) | 可中断图形处理单元及其控制方法 | |
CN1773407A (zh) | 信息处理装置、运行状况管理装置、信息处理方法 | |
CN101046883A (zh) | 图形绘制设备 | |
CN1175034A (zh) | 存储器控制器和存储器控制系统 | |
CN1653487A (zh) | 具有边绘制单元的图形引擎以及合并有该图形引擎的电子装置及存储器 | |
CN1601474A (zh) | 执行实时操作的方法和系统 | |
CN1912926A (zh) | 可中断图形处理单元处理多个程序的方法和图形处理单元 | |
CN1768275A (zh) | 测试摸拟装置、测试模组模拟装置以及记录此程式的记录媒体 | |
CN1731391A (zh) | 布局处理方法、信息处理装置 | |
CN1702634A (zh) | 便利无环境主机干预下的可分页模式虚拟环境存储管理 | |
CN1674049A (zh) | 图像处理装置及其方法 | |
CN1505790A (zh) | 带有可编程组件的基于块的设计方法 | |
CN1298521A (zh) | 具有二维或多维可编程序的单元结构(fpgas、dpgas等)的数据流处理器和模块的无死锁配置方法 | |
CN1731397A (zh) | 信息处理装置及其控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20061018 |