Interpolation error minimization for data reduction
First Claim
1. A computer-implemented method of adjusting a series of N subset data points into best fit data points for a series of sample data points that form a data source such that a linear interpolation of the N subset data points closely approximates the series of sample data points, wherein the N subset data points require less storage in computer-readable memory and less computer processing bandwidth than the series of sample data points, the method comprising:
- identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; and
performing an iterative process, including;
determining a linear interpolation error for each of the M segments;
identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and
reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are provided for reducing a set of data points into a subset of best fit data points. According to one aspect, a method of adjusting a series of N data points into best fit data points for a set of sample data points that form a data source is provided. According to this method, M segments are identified, wherein M equals N−1. Each segment has endpoints defined by adjacent subset data points. An iterative process is performed that includes determining a linear interpolation error for each of the M segments, selecting a target segment (STARGET) from the segments, and reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET. Other methods and systems are provided herein.
20 Citations
104 Claims
-
1. A computer-implemented method of adjusting a series of N subset data points into best fit data points for a series of sample data points that form a data source such that a linear interpolation of the N subset data points closely approximates the series of sample data points, wherein the N subset data points require less storage in computer-readable memory and less computer processing bandwidth than the series of sample data points, the method comprising:
-
identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-implemented method of adjusting a series of N data points into best fit data points for a series of sample data points that form a data source such that a linear interpolation of the N data points closely approximates the series of sample data points, wherein the N data points require less storage in computer-readable memory and less computer processing bandwidth than the series of sample data points, the method comprising:
-
identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that there is no S2ND, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (6, 7)
-
-
8. A computer-implemented method of adjusting a series of N subset data points into best fit data points for a series of sample data points that form a data source such that a linear interpolation of the N subset data points closely approximates the series of sample data points, wherein the N subset data points require less storage in computer-readable memory and less computer processing bandwidth than the series of sample data points, the method comprising:
-
identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (9, 10)
-
-
11. A computer-implemented method of adjusting a series of N subset data points into best fit data points for a series of sample data points that form a data source such that a linear interpolation of the N subset data points closely approximates the series of sample data points, wherein the N subset data points require less storage in computer-readable memory and less computer processing bandwidth than the series of sample data points, the method comprising:
-
identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that there is no S2ND, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (12)
-
-
13. A computer-implemented method of reducing linear interpolation error for a data subset that contains a series of data points from a data source such that a linear interpolation of the data subset closely approximates the series of data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
identifying interpolation errors for each segment defined by adjacent data points in the series of data points, and identifying the segment with a largest interpolation error as a target segment (STARGET) having endpoints defined by a first data point (PS) and a second data point (PS+1); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S2ND; and upon determining that there is no S2ND, moving PS by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A computer-implemented method of reducing linear interpolation error for a data subset that contains a series of data points from a source data such that a linear interpolation of the data subset closely approximates the series of data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
identifying interpolation errors for each segment defined by adjacent data points in the series of data points, and identifying a segment with a largest interpolation error as a target segment (STARGET) having endpoints defined by a first data point (PS) and a second data point (PS+1); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S2ND; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A computer-implemented method of reducing linear interpolation error for a data subset that contains a series of data points from a source data such that a linear interpolation of the data subset closely approximates the series of data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
identifying interpolation errors for each segment defined by adjacent data points in the series of data points, and identifying a segment with a largest interpolation error as a target segment (STARGET) having endpoints defined by a first data point (PS) and a second data point (PS+1); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S2ND; upon determining that there is no S2ND, moving PS by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S1ST; upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S2ND; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (36, 37, 38, 39)
-
-
40. A computer-implemented method of reducing linear interpolation error for a data subset that contains a plurality of data points from source data such that a linear interpolation of the data subset closely approximates the series of data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of data points, wherein the data points from the source data are sequenced from left to right, the method comprising:
-
identifying interpolation errors for each segment defined by adjacent data points in the series of data points, and identifying a segment with a largest interpolation error as a target segment (STARGET) having endpoints defined by a left data point (PL) and a right data point (PR); determining whether there is a left segment (SLEFT) with respect to STARGET having endpoints defined by a left data point (PL−
1) and a right data point (PL);determining whether there is a right segment (SRIGHT) with respect to STARGET having endpoints defined by a left data point (PR) and a right data point (PR+1); upon determining that there is no SLEFT, shortening STARGET by moving PR left by an increment corresponding to at least one data point in the series of data points; upon determining that there is no SRIGHT, shortening STARGET by moving PL right by an increment corresponding to at least one data point in the series of data points; upon determining that there is a SLEFT and a SRIGHT, determining whether an interpolation error for SLEFT (ESLEFT) or an interpolation error for SRIGHT (ESRIGHT) is larger; upon determining that ESLEFT is larger than ESRIGHT, moving PR left by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen SRIGHT; and upon determining that ESRIGHT is larger than ESLEFT, moving PL right by an increment corresponding to at least one data point in the series of data points to shorten STARGET and lengthen SLEFT. - View Dependent Claims (41, 42, 43, 44)
-
-
45. A computer-implemented method of selecting best fit data points for a series of sample data points that form source data such that a linear interpolation of the best fit data points closely approximates the series of data points, wherein the best fit data points require less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
seeding a series of N data points on the source data; and performing an iterative process, including; determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;sorting the M segments based on linear interpolation error size; identifying a segment from the M segments with a largest interpolation error, and identifying the segment with the largest interpolation error as a target segment (STARGET); and reducing the linear interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A computer-implemented method of selecting best fit data points for a data subset of a sequence of sample data points that form source data such that a linear interpolation of the data subset closely approximates the series of data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
seeding a series of N data points on the source data; determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;sorting the M segments based on linear interpolation error size; identifying a segment from the M segments with a largest interpolation error, and identifying the segment with the largest interpolation error as a target segment (STARGET); and reducing the linear interpolation error for STARGET, including; determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one data point in the sequence of sample data points to shorten STARGET and lengthen S2ND; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one data point in the sequence of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (57, 58, 59, 60, 61, 62)
-
-
63. A computer-implemented method of selecting best fit data points from a sequence of sample data points that form source data such that a linear interpolation of the best fit data points closely approximates the series of data points, wherein the best fit data points require less storage in computer-readable memory and less computer processing bandwidth than the series of data points, the method comprising:
-
seeding a series of N data points on the source data; determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;sorting the M segments based on linear interpolation error size; identifying a segment from the M segments with a largest interpolation error, and identifying the segment with the largest interpolation error as a target segment (STARGET); and reducing the linear interpolation error for STARGET, including; determining whether there is a left segment (SLEFT) with respect to STARGET having endpoints defined by a left data point (PL−
1) and a right data point (PL);determining whether there is a right segment (SRIGHT) with respect to STARGET having endpoints defined by a left data point (PR) and a right data point (PR+1); upon determining that there is no SLEFT, shortening STARGET by moving PR left by an increment corresponding to at least one data point in the sequence of sample data points; upon determining that there is no SRIGHT, shortening STARGET by moving PL right by an increment corresponding to at least one data point in the sequence of sample data points; upon determining that there is a SLEFT and a SRIGHT, determining whether an interpolation error for SLEFT (ESLEFT) or an interpolation error for SRIGHT (ESRIGHT) is larger; upon determining that ESLEFT is larger than ESRIGHT, moving PR left by an increment corresponding to at least one data point in the sequence of sample data points to shorten STARGET and lengthen SRIGHT; and upon determining that ESRIGHT is larger than ESLEFT, moving PL right by an increment corresponding to at least one data point in the sequence of sample data points to shorten STARGET and lengthen SLEFT. - View Dependent Claims (64, 65, 66)
-
-
67. A computer-implemented method of reducing a series of characterization data points from a characterization source data into a data subset for a model table by selecting best fit data points to reduce the linear interpolation error in a simulation model such that a linear interpolation of the data subset closely approximates the series of characterization data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of characterization data points, the method comprising:
-
seeding a series of N data points on the characterization source data; identifying M segments having endpoints defined by adjacent data points, wherein M equals N−
1;determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting a segment with the largest interpolation error as a target segment (STARGET); and reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one data point in the series of characterization data points to shorten STARGET. - View Dependent Claims (68, 69, 70)
-
-
71. A computer-implemented method of reducing a series of characterization data points from a characterization source data into a data subset for a model table by selecting best fit data points to reduce the linear interpolation error in a simulation model such that a linear interpolation of the data subset closely approximates the series of characterization data points, wherein the data subset requires less storage in computer-readable memory and less computer processing bandwidth than the series of characterization data points, the method comprising:
-
seeding a series of N data points on the characterization source data; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 to shorten STARGET and lengthen S2ND by an increment corresponding to at least one data point in the series of characterization data points; and upon determining that ES2ND is larger than ES1ST, moving PS to shorten STARGET and lengthen S1ST by an increment corresponding to at least one data point in the series of characterization data points. - View Dependent Claims (72)
-
-
73. A method of reducing a series of characterization data points from characterization source data into a data subset for a model table by selecting best fit data points to reduce the linear interpolation error in a simulation model, comprising:
-
seeding a series of N data points on the characterization source data; performing an iterative process to identify best fit data points, including; determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;sorting the M segments based on linear interpolation error size; identifying a target segment (STARGET) from the M segments, including identifying a segment that has endpoints defined by two adjacent data points and that has the largest interpolation error; and reducing the linear interpolation error for STARGET, including; determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 to shorten STARGET and lengthen S2ND by an increment corresponding to at least one data point in the series of characterization data points; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one data point in the series of characterization data points to shorten STARGET and lengthen S1ST; extracting the best fit data points upon completion of the iterative process; and incorporating the best fit data points as the data subset for the model table. - View Dependent Claims (74)
-
-
75. A method of forming simulation model tables, comprising:
-
retrieving source data from cell libraries, the source data including a series of sample data points; compressing the source data into subsets of best fit data points, including; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and
reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment of at least one sample point in the series of sample data points to shorten STARGET; andincorporating the subsets into simulation model tables. - View Dependent Claims (76, 77, 78)
-
-
79. A method of forming simulation model tables, comprising:
-
retrieving source data from cell libraries, the source data including a series of sample data points; compressing the source data into subsets of best fit data points, including; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that there is no S2ND, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; and incorporating the subsets in to simulation model tables. - View Dependent Claims (80, 81)
-
-
82. A method of forming simulation model tables, comprising:
-
retrieving source data from cell libraries, the source data including a series of sample data points; compressing the source data into subsets of best fit data points, including; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (S1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; and incorporating the subsets in to simulation model tables. - View Dependent Claims (83, 84)
-
-
85. A computer-implemented method of forming simulation model tables, comprising:
-
retrieving source data from cell libraries, the source data including a series of sample data points; compressing the source data into subsets of best fit data points such that a linear interpolation of the subsets of best fit data points closely approximates the series of sample data points and such that the subsets of best fit data points require less storage in computer memory and less computer processing bandwidth than the series of sample data points, including; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process, including; determining a linear interpolation error for each of the M segments; identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; upon determining that there is no S1ST, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and upon determining that there is no S2ND, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (86)
-
-
87. A method of designing a circuit, comprising:
-
providing libraries of source data, the source data including a series of sample data points; compressing the libraries into subsets of best fit data points for simulation model tables, including; retrieving source data from cell libraries; compressing the source data into subsets of best fit data points, including; identifying M segments having endpoints defined by adjacent subset data points, wherein M equals N−
1; andperforming an iterative process that includes determining a linear interpolation error for each of the M segments, identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and reducing the interpolation error for STARGET by an increment corresponding to at least one sample data point in the series of sample data points; and incorporating subsets into simulation model tables; and
designing a high level circuit using the simulation model tables. - View Dependent Claims (88, 89, 90)
-
-
91. A system, comprising:
-
a processor; computer readable medium coupled to the processor, wherein the computer readable medium is encoded with a computer program that causes the processor to reduce linear interpolation error between a series of data points in a data subset and source data, the source data including a series of sample data points, wherein the computer readable medium includes; programming code for identifying segments between adjacent data points in the series of sample data points, identifying a segment with a largest interpolation error, and identifying the segment with the largest interpolation error as a target segment (STARGET) having endpoints defined by a first data point (PS) and a right data point (PS+1); programming code for determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);programming code for determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS−
1) and a second data point (PS+2);programming code for, upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; programming code for, upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and programming code for, upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST. - View Dependent Claims (92, 93, 94, 95, 96, 97)
-
-
98. A cell characterization system, comprising:
-
a processor; computer readable medium coupled to the processor, wherein the computer readable medium is encoded with a computer program that causes the processor to extract best fit data points from a cell characterization source data for modeling of a cell using linear interpolation, the source data including a series of sample data points, wherein the computer readable medium includes; programming code for seeding a series of N data points on the characterization source data; programming code for performing an iterative process to identify best fit data points, including; programming code for determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;programming code for sorting the M segments based on linear interpolation error size; programming code for identifying a segment from the M segments with a largest interpolation error and identifying the segment with the largest interpolation error as a target segment (STARGET); and programming code for reducing the linear interpolation error for STARGET, including; programming code for determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);programming code for determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); programming code for, upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; programming code for, upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and programming code for, upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; programming code for extracting the best fit data points upon completion of the iterative process; and programming code for incorporating the best fit data points as the data subset for a simulation model table. - View Dependent Claims (99)
-
-
100. A cell characterization system, comprising:
-
a processor; computer readable medium coupled to the processor, including; a first memory storage for storing cell characterization source data that includes a series of sample data points; a second memory storage for storing a data subset for a simulation model table; and a third memory storage for storing a computer program that causes the processor to extract best fit data points from a cell characterization source data for modeling of a cell using linear interpolation, wherein the third memory storage includes; programming code for seeding a series of N data points on the cell characterization source data; programming code for identifying M segments having endpoints defined by adjacent data points, wherein M equals N−
1;programming code for determining a linear interpolation error for each of the M segments; programming code for identifying a segment from the M segments with a largest interpolation error and selecting the segment with the largest interpolation error as a target segment (STARGET); and programming code for reducing the interpolation error for STARGET by moving one endpoint of STARGET by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET. - View Dependent Claims (101, 102)
-
-
103. A cell characterization system, comprising:
-
a processor; computer readable medium coupled to the processor, including; a first memory storage for storing cell characterization source data that includes a series of sample data points; a second memory storage for storing a data subset for a simulation model table; and a third memory storage for storing a computer program that causes the processor to extract best fit data points from a cell characterization data source for modeling of a cell using linear interpolation, wherein the memory storage includes; programming code for seeding a series of N data points on the characterization source data; programming code for performing an iterative process to identify best fit data points, including; programming code for determining linear interpolation errors between the N data points and the source data for M segments that are capable of being formed between adjacent data points, wherein M equals N−
1;programming code for sorting the M segments based on linear interpolation error size; programming code for identifying a segment from the M segments with a largest interpolation error and identifying the segment with the largest interpolation error as a target segment (STARGET); and programming code for reducing the linear interpolation error for STARGET, including; programming code for determining whether there is a first adjacent segment (S1ST) having a common endpoint with STARGET such that S1ST has endpoints defined by a first data point (PS−
1) and a second data point (PS);programming code for determining whether there is a second adjacent segment (S2ND) having a common endpoint with STARGET such that S2ND has endpoints defined by a first data point (PS+1) and a second data point (PS+2); programming code for, upon determining that there is a S1ST and a S2ND, determining whether an interpolation error for S1ST (ES1ST) or an interpolation error for S2ND (ES2ND) is larger; programming code for, upon determining that ES1ST is larger than ES2ND, moving PS+1 by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S2ND; and programming code for, upon determining that ES2ND is larger than ES1ST, moving PS by an increment corresponding to at least one sample data point in the series of sample data points to shorten STARGET and lengthen S1ST; programming code for extracting the best fit data points upon completion of the iterative process; and programming code for incorporating the best fit data points as the data subset for the simulation model table. - View Dependent Claims (104)
-
Specification