Flexible performance screen ring oscillator within a scan chain
Aspects of the invention provide for a flexible performance screen ring oscillator (PSRO) integrated within a scan chain. In one embodiment, a circuit structure to create the flexible PSRO includes: a plurality of programmable scan chain elements; and a forward test scan chain path through the plurality of scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO.
Latest GLOBALFOUNDRIES Inc. Patents:
- Low resistance source drain contact formation with trench metastable alloys and laser annealing
- Coupling inductors in an IC device using interconnecting elements with solder caps and resulting devices
- Diode structures
- METHODS, APPARATUS, AND MANUFACTURING SYSTEM FOR SELF-ALIGNED PATTERNING OF A VERTICAL TRANSISTOR
- Metal on metal multiple patterning
The disclosure relates generally to scan chains, and more particularly, to a flexible performance screen ring oscillator (PSRO) integrated within a scan chain.
BACKGROUNDAs the size of integrated circuits decrease, across chip variation (ACV) is becoming an increasing concern. A transistor on one side of an integrated circuit will not always operate similar to a transistor on another side of the integrated circuit. Margins are provided in order to ensure that the integrated circuit operates as desired, which leads to reduced performance and increased power requirements.
It is desired to predict how an integrated circuit will behave, in order to minimize these margins. Performance screen ring oscillators (PSROs) are used to monitor and predict performance in areas of an integrated circuit. However, a PSRO must be in close proximity to the area that is being monitored, and in order to monitor many areas of an integrated circuit, many PSROs are needed. Therefore, current PSROs may take up significant space and wiring.
BRIEF SUMMARYAspects of the invention provide for a flexible performance screen ring oscillator (PSRO) integrated within a scan chain. In one embodiment, a circuit structure to create the flexible PSRO includes: a plurality of programmable scan chain elements; and a forward test scan chain path through the plurality of scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO.
A first aspect of the disclosure provides a circuit structure to create a flexible performance screen ring oscillator (PSRO), the circuit structure comprising: a plurality of programmable scan chain elements; and a forward test scan chain path through the plurality of scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO.
A second aspect of the disclosure provides a method for implementing a flexible performance screen ring oscillator (PSRO), the method comprising: providing a plurality of programmable scan chain elements, each of the programmable scan chain elements including additional circuitry for a backward path, the plurality of programmable scan chain elements including a forward test scan chain path that combines with the backward path to create the PSRO; programming each of the programmable scan chain elements to create the PSRO within the plurality of programmable scan chain elements; implementing the forward test scan chain path through the plurality of programmable scan chain elements, such that an observable output provides a forward path scan output; and implementing the PSRO, such that the observable output provides a backward path input.
A third aspect of the disclosure provides a design structure tangibly embodied in a machine readable medium for testing an integrated circuit chip, the design structure comprising: a circuit structure to create a flexible performance screen ring oscillator (PSRO), the circuit structure comprising: a plurality of programmable scan chain elements; and a forward test scan chain path through the plurality of scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO.
The above and other aspects, features and advantages of the disclosure will be better understood by reading the following more particular description of the disclosure in conjunction with the accompanying drawings.
The drawings are not necessarily to scale. The drawings are merely schematic representations, not intended to portray specific parameters of the disclosure. The drawings are intended to depict only typical embodiments of the disclosure, and therefore should not be considered as limiting the scope of the disclosure. In the drawings, like numbering represents like elements.
DETAILED DESCRIPTIONAs mentioned, the disclosure relates generally to scan chains, and more particularly, to a flexible performance screen ring oscillator (PSRO) integrated within a scan chain.
As the size of integrated circuits decrease, across chip variation (ACV) is becoming an increasing concern. A transistor on one side of an integrated circuit will not always operate similar to a transistor on another side of the integrated circuit. Margins are provided in order to ensure that the integrated circuit operates as desired, which leads to reduced performance and increased power requirements.
It is desired to predict how an integrated circuit will behave, in order to minimize these margins. Performance screen ring oscillators (PSROs) are used to monitor and predict areas of an integrated circuit. However, a PSRO must be in close proximity to the area that is being monitored, and in order to monitor many areas of an integrated circuit, many PSROs are needed. Therefore, current PSROs may take up significant space and wiring.
Aspects of the invention provide for a flexible performance screen ring oscillator (PSRO) integrated within a scan chain. In one embodiment, a circuit structure to create the flexible PSRO includes: a plurality of programmable scan chain elements; and a forward test scan chain path through the plurality of scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO. The flexible PSRO is integrated with existing scan chains located on an integrated circuit. Further, scan chain elements may be programmed to create a PSRO of any size.
Turning now to
A forward test scan chain path, as known to one skilled in the art, from “Si” to “So”, is provided through the plurality of programmable scan chain elements 12. However, a backward path, from “Bi” to “Bo”, is also provided. As will be described in
In order to create PSRO 100, a scan chain element 12A is programmed with a “1” to start the PSRO 100. Scan chain element 12C is programmed with a second “1” to end the PSRO 100. As seen in
In this way, the size of PSRO 100 may be any size, as desired. In the embodiment shown in
Turning now to
Turning now to
In
In
In
Delta measurements between differing PSROs may also be determined to provide an across chip variation (ACV) measurement. That is, for example, the frequency of PSRO 100 shown in
Turning now to
It is understood that PSRO 100 may oscillate at a frequency that is too high to detect. Therefore, as known to those skilled in the art, the signal may be sent to the chip boundary of the integrated circuit though a signal divider to be able to measure the frequency. Further, it is understood that other scan chain elements do not include multiplexer 14. In this embodiment, multiplexer 14 would be outside the scan chain element, and “Si” would not be accessible for additional circuitry 20. Therefore, the signal for the additional circuitry 20 would be accessed from the output of the external multiplexer.
Design flow 900 may vary depending on the type of representation being designed. For example, a design flow 900 for building an application specific IC (ASIC) may differ from a design flow 900 for designing a standard component or from a design flow 900 for instantiating the design into a programmable array, for example a programmable gate array (PGA) or a field programmable gate array (FPGA) offered by Altera® Inc. or Xilinx® Inc.
Design process 910 preferably employs and incorporates hardware and/or software modules for synthesizing, translating, or otherwise processing a design/simulation functional equivalent of the components, circuits, devices, or logic structures shown in
Design process 910 may include hardware and software modules for processing a variety of input data structure types including netlist 980. Such data structure types may reside, for example, within library elements 930 and include a set of commonly used elements, circuits, and devices, including models, layouts, and symbolic representations, for a given manufacturing technology (e.g., different technology nodes, 32 nm, 45 nm, 90 nm, etc.). The data structure types may further include design specifications 940, characterization data 950, verification data 960, design rules 970, and test data files 985 which may include input test patterns, output test results, and other testing information. Design process 910 may further include, for example, standard mechanical design processes such as stress analysis, thermal analysis, mechanical event simulation, process simulation for operations such as casting, molding, and die press forming, etc. One of ordinary skill in the art of mechanical design can appreciate the extent of possible mechanical design tools and applications used in design process 910 without deviating from the scope and spirit of the invention. Design process 910 may also include modules for performing standard circuit design processes such as timing analysis, verification, design rule checking, place and route operations, etc.
Design process 910 employs and incorporates logic and physical design tools such as HDL compilers and simulation model build tools to process design structure 920 together with some or all of the depicted supporting data structures along with any additional mechanical design or data (if applicable), to generate a second design structure 990. Design structure 990 resides on a storage medium or programmable gate array in a data format used for the exchange of data of mechanical devices and structures (e.g. information stored in an IGES, DXF, Parasolid XT, JT, DRG, or any other suitable format for storing or rendering such mechanical design structures). Similar to design structure 920, design structure 990 preferably comprises one or more files, data structures, or other computer-encoded data or instructions that reside on transmission or data storage media and that when processed by an ECAD system generate a logically or otherwise functionally equivalent form of one or more of the embodiments of the invention shown in
Design structure 990 may also employ a data format used for the exchange of layout data of integrated circuits and/or symbolic data format (e.g. information stored in a GDSII (GDS2), GL1, OASIS, map files, or any other suitable format for storing such design data structures). Design structure 990 may comprise information such as, for example, symbolic data, map files, test data files, design content files, manufacturing data, layout parameters, wires, levels of metal, vias, shapes, data for routing through the manufacturing line, and any other data required by a manufacturer or other designer/developer to produce a device or structure as described above and shown in
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
This written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal languages of the claims.
Claims
1. A circuit structure to create a flexible performance screen ring oscillator (PSRO), the circuit structure comprising:
- a plurality of programmable scan chain elements, each of the plurality of programmable scan chain elements including a programmable ring start point and a programmable ring end point for controlling a number of the programmable scan chain elements in the PSRO; and
- a forward test scan chain path through the plurality of programmable scan chain elements;
- wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO, wherein the number of programmable scan chain elements included in the PSRO is controlled by: selectively programming the programmable ring start point of a first programmable scan chain element in the forward test scan chain path to a first logic value; selectively programming the programmable ring end point of a second programmable scan chain element in the forward test scan chain path to the first logic value; and selectively programming at least one programmable scan chain element located between the first and second programmable scan chain elements in the forward test scan chain path to a second logic value, wherein the second logic value is different than the first logic value, and wherein all of the at least one programmable scan chain elements located between the first and second programmable scan chain elements in the forward test scan chain path are programmed to the second logic value.
2. The circuit structure of claim 1, wherein each programmable scan chain element is programmed to create the PSRO within the plurality of programmable scan chain elements.
3. The circuit structure of claim 1, wherein the PSRO can be programmed to measure local or global performance of a chip.
4. The circuit structure of claim 1, further comprising a plurality of PSROs within the plurality of programmable scan chain elements.
5. The circuit structure of claim 4, wherein delta measurements between differing PSROs provide an across chip variation (ACV) measurement.
6. The circuit structure of claim 1, wherein each of the programmable scan chain elements include a similar voltage threshold type.
7. The circuit structure of claim 1, further comprising an observable output that provides one of: a forward path scan output, or a backward path input.
8. A method for implementing a flexible performance screen ring oscillator (PSRO), the method comprising:
- providing a plurality of programmable scan chain elements, each of the plurality of programmable scan chain elements including a programmable ring start point and a programmable ring end point for controlling a number of the programmable scan chain elements in the PSRO, and wherein each of the programmable scan chain elements includes additional circuitry for a backward path, the plurality of programmable scan chain elements including a forward test scan chain path that combines with the backward path to create the PSRO;
- programming each of the programmable scan chain elements to create the PSRO within the plurality of programmable scan chain elements, wherein the number of programmable scan chain elements included in the PSRO is controlled by: selectively programming the programmable ring start point of a first programmable scan chain element in the forward test scan chain path to a first logic value; selectively programming the programmable ring end point of a second programmable scan chain element in the forward test scan chain path to the first logic value; and selectively programming at least one programmable scan chain element located between the first and second programmable scan chain elements in the forward test scan chain path to a second logic value, wherein the second logic value is different than the first logic value, and wherein all of the at least one programmable scan chain elements located between the first and second programmable scan chain elements in the forward test scan chain path are programmed to the second logic value;
- implementing the forward test scan chain path through the plurality of programmable scan chain elements, such that an observable output provides a forward path scan output; and
- implementing the PSRO, such that the observable output provides a backward path input.
9. The method of claim 8, wherein programming each of the programmable scan chain elements includes programming the PSRO to measure local or global performance of a chip.
10. The method of claim 8, wherein programming includes scanning data into each of the programmable scan chain elements to create the PSRO.
11. The method of claim 8, further comprising programming a second PSRO within the plurality of programmable scan chain elements.
12. The method of claim 11, further comprising implementing the second PSRO, and determining delta measurements between a first PSRO and the second PSRO to provide an across chip variation (ACV) measurement.
13. The method of claim 8, wherein each of the programmable scan chain elements include a similar voltage threshold type.
14. A design structure tangibly embodied in a machine readable medium for testing an integrated circuit chip, the design structure comprising:
- a circuit structure to create a flexible performance screen ring oscillator (PSRO), the circuit structure comprising: a plurality of programmable scan chain elements, each of the plurality of programmable scan chain elements including a programmable ring start point and a programmable ring end point for controlling a number of the programmable scan chain elements in the PSRO; and a forward test scan chain path through the plurality of programmable scan chain elements; wherein each of the programmable scan chain elements includes additional circuitry for a backward path, such that the backward path and the forward test scan chain path are combined to create the PSRO, wherein the number of programmable scan chain elements included in the PSRO is controlled by: selectively programming the programmable ring start point of a first programmable scan chain element in the forward test scan chain path to a first logic value; selectively programming the programmable ring end point of a second programmable scan chain element in the forward test scan chain path to the first logic value; and selectively programming at least one programmable scan chain element located between the first and second programmable scan chain elements in the forward test scan chain path to a second logic value, wherein the second logic value is different than the first logic value, and wherein all of the at least one programmable scan chain elements located between the first and second programmable scan chain elements in the forward test scan chain path are programmed to the second logic value.
15. The design structure of claim 14, wherein each programmable scan chain element is programmed to create the PSRO within the plurality of programmable scan chain elements.
16. The design structure of claim 14, wherein the PSRO can be programmed to measure local or global performance of a chip.
17. The design structure of claim 14, further comprising a plurality of PSROs within the plurality of programmable scan chain elements.
18. The design structure of claim 17, wherein delta measurements between differing PSROs provide an across chip variation (ACV) measurement.
19. The design structure of claim 14, wherein each of the programmable scan chain elements include a similar voltage threshold type.
20. The design structure of claim 14, further comprising an observable output that provides one of: a forward path scan output, or a backward path input.
3665396 | May 1972 | Forney, Jr. |
5592493 | January 7, 1997 | Crouch et al. |
5689517 | November 18, 1997 | Ruparel |
6158032 | December 5, 2000 | Currier et al. |
6219813 | April 17, 2001 | Bishop et al. |
6388533 | May 14, 2002 | Swoboda |
6535013 | March 18, 2003 | Samaan |
6867613 | March 15, 2005 | Bienek |
7208934 | April 24, 2007 | King et al. |
7349271 | March 25, 2008 | Kuang et al. |
7539893 | May 26, 2009 | Ferguson |
7550987 | June 23, 2009 | Acharyya et al. |
7609542 | October 27, 2009 | Adams et al. |
7620510 | November 17, 2009 | Carpenter et al. |
7835176 | November 16, 2010 | Adams et al. |
7958417 | June 7, 2011 | Chakraborty et al. |
8154309 | April 10, 2012 | Agarwal et al. |
8214699 | July 3, 2012 | Arsovski et al. |
20020129293 | September 12, 2002 | Hutton et al. |
20020199145 | December 26, 2002 | Komoike |
20040098646 | May 20, 2004 | Fisher |
20040190331 | September 30, 2004 | Ross et al. |
20050028060 | February 3, 2005 | Dervisoglu et al. |
20060269038 | November 30, 2006 | Jang et al. |
20070089078 | April 19, 2007 | Engel et al. |
20070150780 | June 28, 2007 | Shimooka |
20070237012 | October 11, 2007 | Kuang et al. |
20080034337 | February 7, 2008 | Kuemerle et al. |
20080195337 | August 14, 2008 | Agarwal et al. |
20090113263 | April 30, 2009 | Cannon et al. |
20090210760 | August 20, 2009 | Eckelman et al. |
20090295402 | December 3, 2009 | Balch et al. |
20100042962 | February 18, 2010 | Fazekas et al. |
20100188888 | July 29, 2010 | Adams et al. |
20100201418 | August 12, 2010 | Delage et al. |
20100264932 | October 21, 2010 | Marinissen et al. |
20100321042 | December 23, 2010 | Agarwal et al. |
20120233512 | September 13, 2012 | Huang et al. |
20130125073 | May 16, 2013 | Bickford et al. |
20130179742 | July 11, 2013 | Tekumalla |
20130285739 | October 31, 2013 | Blaquiere et al. |
20140132290 | May 15, 2014 | Charlebois et al. |
20140298128 | October 2, 2014 | Maliuk et al. |
20150032962 | January 29, 2015 | Buyuktosunoglu et al. |
2005003917 | January 2005 | JP |
- IBM, “PSRO Yield and Model to Hardware Correlation Improvement for ASIC Arrays,” Nov. 2008, 5 pages, IPCOM000176339D, An IP.com Prior Art Database Technical Disclosure.
- Gabor et al., Improving the Power-Performance of Multicore Processors Through Optimization of Lithography and Thermal Processing, Oct. 13, 2010, Improved power-performance metrics, 7 pages.
- U.S. Appl. No. 14/273,261, Office Action 1 dated Apr. 23, 2015, 21 pgs.
- Bickfor, J.P,; Jinjun Xiong, “Use of performance path test to optimize yield,” Advanced Semiconductor Manufacturing Conference (ASMC), 2013 24th Annual SEMI, Vol. No. pp. 206, 211, May 14-16, 2013.
- U.S. Appl. No. 14/273,261, Notice of Allowance dated May 4, 2015, 6 pgs.
- U.S. Appl. No. 14/273,247, Ex Parte Quayle Action dated May, 7 2015, 26 pgs.
- U.S. Appl. No. 14/273,247, Notice of Allowance dated Jun. 2, 2015, 9 pages.
Type: Grant
Filed: Nov 13, 2012
Date of Patent: Nov 17, 2015
Patent Publication Number: 20140132290
Assignee: GLOBALFOUNDRIES Inc. (Grand Cayman)
Inventors: Margaret R. Charlebois (Jericho, VT), Christopher D. Hanudel (Essex Junction, VT), Robert D. Herzl (South Burlington, VT), David W. Milton (Underhill, VT), Clarence R. Ogilvie (Huntington, VT), Paul M. Schanely (Essex Juntion, VT), Tad J. Wilder (South Hero, VT)
Primary Examiner: Arleen M Vazquez
Assistant Examiner: Dominic Hawkins
Application Number: 13/676,063
International Classification: G01R 31/00 (20060101); G01R 31/3185 (20060101);