biju4u90
Full Member level 3
The set up and hold times of a FF are function of clock transition time and input transition times. What is the relation actually?? It seems the setup and hold times increase with high clock transition values. Is it correct? What about the input transition time?
This is a piece of my .lib file where index 1 represents clock transition time and index 2 represents input transition time. It seems, according to the library, the set up time decreases with increased clock transition times!! Is it so?
Code:
timing () {
related_pin : "CLK";
timing_type : "hold_rising";
rise_constraint ("hold_template_6x7") {
index_1("1, 30, 60, 110, 220, 440");
index_2("1, 40, 80, 165, 330, 660, 1320");
values("-2.315, -19.627, -36.098, -65.848, -109.046, -172.896, -259.683","5.767, -10.608, -27.015, -55.778, -97.961, -161.904, -249.602","11.97, -5.299, -20.8, -48.6, -90.8, -153.7, -242.4","22.098, 4.8, -11.7, -39.45, -80.65, -141.65, -231.25","37.811, 20.498, 4.077, -22.75, -63.05, -122.95, -211.65","61.583, 44.253, 28.715, 0.95, -38.35, -97.25, -183.05");
}
fall_constraint ("hold_template_6x7") {
index_1("1, 30, 60, 110, 220, 440");
index_2("1, 40, 80, 165, 330, 660, 1320");
values("-2.313, -18.656, -34.133, -62.933, -105.133, -151.394, -220.541","11.628, -4.712, -20.257, -50.004, -92.184, -138.445, -206.637","22.72, 8.381, -8.1, -36.9, -78.078, -124.4, -192.53","41.634, 26.23, 10.81, -17.05, -57.238, -102.55, -170.75","75.87, 60.553, 46.05, 18.25, -21.011, -64.35, -133.55","131.848, 116.476, 102, 77.153, 37.85, -10.371, -78.55");
}
}
timing () {
related_pin : "CLK";
timing_type : "setup_rising";
rise_constraint ("setup_template_6x7") {
index_1("1, 30, 60, 110, 220, 440");
index_2("1, 40, 80, 165, 330, 660, 1320");
values("37.313, 54.64, 71.096, 100.846, 144.046, 207.844, 295.533","29.262, 45.569, 62.05, 90.784, 132.991, 196.871, 284.602","22.956, 40.297, 55.799, 83.6, 125.8, 188.7, 277.3","12.889, 30.217, 46.636, 74.45, 115.65, 176.55, 266.263","-2.811, 14.447, 30.918, 57.75, 97.95, 157.95, 246.65","-26.583, -9.273, 6.227, 34.05, 73.25, 132.25, 218.05");
}
fall_constraint ("setup_template_6x7") {
index_1("1, 30, 60, 110, 220, 440");
index_2("1, 40, 80, 165, 330, 660, 1320");
values("57.813, 73.155, 89.646, 117.433, 156.633, 208.834, 272.134","44.901, 61.186, 76.699, 105.538, 144.7, 196.881, 259.2","31.78, 47.169, 63.581, 91.4, 131.6, 183.8, 247.1","12.867, 28.236, 43.713, 72.45, 111.75, 164.85, 229.15","-17.47, -2.145, 13.367, 41.15, 80.45, 133.55, 197.773","-60.77, -45.4, -29.9, -3.05, 36.15, 89.3, 154.55");
}
This is a piece of my .lib file where index 1 represents clock transition time and index 2 represents input transition time. It seems, according to the library, the set up time decreases with increased clock transition times!! Is it so?