diff --git a/plot-3d-slack.py b/plot-3d-slack.py index 73b9b6c..f2a8fbb 100755 --- a/plot-3d-slack.py +++ b/plot-3d-slack.py @@ -14,17 +14,18 @@ def load_data(filename): for line in file: parts = line.split() if len(parts) == 4: - slack.append(float(parts[1])) - x.append(float(parts[2])) - y.append(float(parts[3])) + s = float(parts[1]) + slack.append(s) + x.append(float(parts[2])/1000) + y.append(float(parts[3])/1000) return np.array(x), np.array(y), np.array(slack) def plot_3d(x, y, slack): # Create grid data for surface plot - grid_x, grid_y = np.mgrid[min(x) : max(x) : 100j, min(y) : max(y) : 100j] - grid_z = griddata((x, y), slack, (grid_x, grid_y), method="cubic") + grid_x, grid_y = np.mgrid[0: 2000: 100j, 0: 2000: 100j] + grid_z = griddata((x, y), slack, (grid_x, grid_y), method="linear") fig = plt.figure() ax = fig.add_subplot(111, projection="3d") diff --git a/slack-positions.tcl b/slack-positions.tcl index d55ebf4..401a57f 100644 --- a/slack-positions.tcl +++ b/slack-positions.tcl @@ -1,7 +1,7 @@ source $::env(SCRIPTS_DIR)/load.tcl load_design 4_cts.odb 4_cts.sdc -set paths [find_timing_paths -path_group reg2reg -sort_by_slack -group_count 1000] +set paths [find_timing_paths -path_group reg2reg -sort_by_slack -group_count 1000000] set db [::ord::get_db] set block [[$db getChip] getBlock]