Claims
- 1. An automated integrated circuit design method comprising:
(a) inputting an initial layout of interconnected circuit devices that define a circuit; (b) performing a plurality of circuit simulations for the circuit, with each circuit simulation performed for a unique layout of the circuit devices, with each circuit simulation generating a design point that includes a plurality of device variables for the circuit devices and a plurality of performance goals for the circuit, wherein each device variable and each performance goal has a value associated therewith; (c) allocating the design points to a first subset of model building design points and a second subset of validation design points; (d) utilizing a first model building technique to determine as a function of the model building design points a first circuit model for one of the performance goals; (e) utilizing a second, different model building technique to determine as a function of the model building design points a second, different circuit model for the one performance goal; (f) determining for each validation design point—first circuit model pair a value for the one performance goal associated with said pair as a function of said first circuit model and the values of the device variables of said validation design point; (g) determining for each validation design point—first circuit model pair an error between the value of the one performance goal determined therefor in step (f) and the values of the corresponding performance goal of the validation design point; (h) determining in connection with the first circuit model an average of the errors determined in step (g); (i) determining for each validation design point—second circuit model pair a value for the one performance goal associated with said pair as a function of said second circuit model and the values of the device variables of said validation design point; (j) determining for each validation design point—second circuit model pair an error between the value of the one performance goal determined therefor in step (i) and the value of the corresponding performance goal of the validation design point; (k) determining in connection with the second circuit model an average of the errors determined in step (j); (l) inputting a set of values of the device variables; (m) processing the input set of values of the device variables with at least one of the first and second circuit models having the smallest average error associated therewith to determine at least one value for the one performance goal associated therewith; and (n) based on the value of the at least one performance goal determined in step (m), generating a layout of the circuit devices based on the values of the device variables input for said one performance goal in step (l).
- 2. The method of claim 1, wherein the model building design points and the validation design points are non-overlapping.
- 3. The method of claim 1, wherein:
the first model building technique is a Group Method of Data Handling (GMDH) model building technique; and the second model building technique is Support Vector Machines (SVM) model building technique.
- 4. The method of claim 1, further including scaling each device variable value and each performance goal value of each design point within a predetermined numerical range.
- 5. The method of claim 4, wherein step (m) includes unscaling the value of the one performance goal.
- 6. The method of claim 1, wherein, in at least one of the first and second model building techniques, the values of at least two device variables are combined to obtain a new value that replaces said two device variables in the model.
- 7. The method of claim 1, wherein:
step (d) further includes determining a plurality of first circuit models for the one performance goal; step (e) further includes determining a plurality of second circuit models for the one performance goal; step (h) further includes determining in connection with each first circuit model an average of the errors determined in step (g); and step (k) further includes determining in connection with each second circuit model an average of the errors determined in step (j).
- 8. The method of claim 1, wherein step (m) includes:
determining a difference between the value of the one performance goal determined utilizing the first circuit model having associated therewith the smallest error of the plurality of first circuit models and the value of the one performance goal determined utilizing the second circuit model having associated therewith the smallest error of the plurality of second circuit models; and displaying the thus determined difference.
- 9. The method of claim 1, wherein:
step (d) further includes determining a first circuit model for each performance goal of a subset of the model building design points; step (e) further includes determining a second circuit model for each performance goal of the subset of the model building design points; step (h) further includes determining in connection with each first circuit model an average of the errors determined in step (g); step (k) further includes determining in connection with each second circuit model an average of the errors determined in step (j); step (m) further includes processing the input set of device variable values with the first or second circuit model of each performance goal of the subset of the model building design points having the smallest average error associated therewith to determine a value for the performance goal; and step (n) further includes, based on the values determined for the performance goals in step (m), generating a layout of the circuit devices based on the values of the device variables input for said performance goals in step (l).
- 10. A computer readable medium having stored thereon instructions which, when executed by a processor, cause the processor to:
(a ) receive an initial layout of interconnected circuit devices that define a circuit; (b) perform a plurality of circuit simulations for the circuit, with each circuit simulation performed for a unique layout of the circuit devices, with each circuit simulation generating a design point that includes a plurality of device variables for the circuit devices and a plurality of performance goals for the circuit, wherein each device variable and each performance goal has a value associated therewith; (c) allocate the design points between a first subset of model building design points and a second subset of validation design points; (d) determine a first circuit model and a second, different circuit model for one of the performance goals as a function of the model building design points; (e) determine for each validation design point—first circuit model pair a value for the one performance goal associated with said pair as a function of said first circuit model and the values of the device variables of said validation design point; (f) determine for each validation design point—first circuit model pair an error between the value of the one performance goal determined in step (e) and the value of the corresponding performance goal of the validation design point; (g) determine in connection with the first circuit model an average of the errors determined in step (f); (h) determine for each validation design point—second circuit model pair a value for the one performance goal associated with said pair as a function of said second circuit model and the values of the device variables of said validation design point; (i) determine for each validation design point—second circuit model pair an error between the value of the one performance goal determined in step (h) and the value of the corresponding performance goal of the validation design point; (j) determine in connection with the second circuit model an average of the errors determined in step (i); (k) receive a set of device variable values; (l) process the received set of device variable values with at least one of the first and second circuit models having the smallest error associated therewith to determine a value for the one performance goal associated therewith; and (m) based on the value of the one performance goal determined in step (l), generate a layout of the circuit devices based on the device variable values input in step (k).
- 11. The computer readable medium of claim 10, wherein step (d) includes processing the first subset of design points with a first model building technique and a second, different model building technique to determine the first and second circuit models, respectively.
- 12. The computer readable medium of claim 11, wherein, in at least one of the first and second model building techniques, the values of at least two device variables are combined to obtain a new value that replaces said two device variables in the model.
- 13. The computer readable medium of claim 11, wherein:
the first model building technique is a Group Method of Data Handling (GMDH) model building technique; and the second model building technique is Support Vector Machines (SVM) model building technique.
- 14. The computer readable medium of claim 10, wherein the model building design points and the validation design points are non-overlapping.
- 15. The computer readable medium of claim 10, wherein the instructions further cause the processor to scale each device variable value and each performance goal value of each design point within a predetermined numerical range.
- 16. The computer readable medium of claim 10, wherein, in step (l), the instructions further cause the processor to unscale the value of the one performance goal.
- 17. The computer readable medium of claim 10, wherein:
step (d) further includes determining for the one performance goal a plurality of first circuit models and a plurality of second circuit models; step (g) further includes determining in connection with each first circuit model an average of the errors determined in step (f); and step (j) further includes determining in connection with each second circuit model an average of the errors determined in step (i).
- 18. The computer readable medium of claim 10, wherein step (l) further includes:
determining a difference between the value of the one performance goal determined utilizing the first circuit model having associated therewith the smallest error of the plurality of first circuit models and the value of the one performance goal determined utilizing the second circuit model having associated therewith the smallest error of the plurality of second circuit models; and displaying the thus determined difference.
- 19. The computer readable medium of claim 10, wherein:
step (d) further includes determining first and second circuit models for each performance goal of a subset of the model building design points; step (g) further includes determining in connection with each first circuit model an average of the errors determined in step (f); step (j) further includes determining in connection with each second circuit model an average of the errors determined in step (i); step (l) further includes processing the input set of device variable values with the first or second circuit model of each performance goal of the subset of the model building design points having the smallest average error associated therewith to determine a value for the performance goal; and step (m) further includes, based on the values determined for the performance goals in step (l), generating a layout of the circuit devices based on the device variable values received in step (k).
- 20. An automated integrated circuit design method comprising:
(a) inputting an initial layout of interconnected circuit devices that define a circuit; (b) performing a plurality of circuit simulations for the circuit, with each circuit simulation performed for a unique layout of the circuit devices, with each circuit simulation generating a design point that includes device variable values for the circuit devices and performance goal values for the circuit; (c) determining a plurality of different circuit models for one of the performance goals as a function of a first subset of the design points; (d) determining for each circuit model a value for the one performance goal as a function of the circuit model and the values of the device variables obtained from a second subset of the design points; (e) determining for each circuit model errors between the value of the one performance goal determined in step (d) and values of corresponding performance goals obtained from the second subset of design points; (f) inputting a set of device variable values; (g) processing the input set of device variable values with at least one of the circuit models having the smallest error associated therewith to determine at least one value for the one performance goal; (h) repeating steps (f) and (g) a plurality of times with a new set of device variable values input in each repetition; and (i) generating a layout of the circuit devices utilizing the device variable values processed in one of the repetitions of step (g).
- 21. The method of claim 20, wherein step (c) further includes determining a first circuit model and a second circuit model for the one performance goal.
- 22. The method of claim 20, wherein:
step (c) further includes determining a plurality of different circuit models for each performance goal of the circuit; and step (g) further includes processing the input set of device variables with the circuit model associated with each performance goal having the smallest error associated therewith to determine a value for the performance goal.
CROSS REFERENCE TO RELATED APPLICATION
[0001] This application claims benefit from Provisional Patent Application No. 60/474,815, filed May 30, 2003, entitled “Performance Modeling For Analog Circuit Design”.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60474815 |
May 2003 |
US |