Commit 400b9f39 by sakundu

Removed __pycache__

Signed-off-by: sakundu <sakundu@ucsd.edu>
parents 1140fb09 305b3ced
...@@ -684,6 +684,7 @@ class ProBufFormat: ...@@ -684,6 +684,7 @@ class ProBufFormat:
height = sqrt(area * self.aspect_ratio) height = sqrt(area * self.aspect_ratio)
width = area / height width = area / height
self.insts[macro_name] = Macro(macro_name, width, height, x, y) self.insts[macro_name] = Macro(macro_name, width, height, x, y)
self.insts[macro_name].IsSoft()
soft_macro_id += 1 soft_macro_id += 1
# Read Macro Pin file # Read Macro Pin file
......
This source diff could not be displayed because it is too large. You can view the blob instead.
The [flow.py](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/CodeFlowIntegration/flow.py) contains implementation of [Gridding](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/Gridding), [Grouping](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/Grouping), [Clustering](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/Clustering) and
[FormatTranslators](https://github.com/TILOS-AI-Institute/MacroPlacement/tree/main/CodeElements/FormatTranslators). After running
[flow.py](https://github.com/TILOS-AI-Institute/MacroPlacement/blob/main/CodeElements/CodeFlowIntegration/flow.py),
you will be able to generate the clustered netlist in the protocol buffer format, which you can used for circuit training.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -85,6 +85,9 @@ clustering = Clustering(design, clustering_src_dir, fixed_file, step_threshold, ...@@ -85,6 +85,9 @@ clustering = Clustering(design, clustering_src_dir, fixed_file, step_threshold,
cluster_def = "./results/OpenROAD/clustered_netlist.def" cluster_def = "./results/OpenROAD/clustered_netlist.def"
cluster_lef = "./results/OpenROAD/clusters.lef" cluster_lef = "./results/OpenROAD/clusters.lef"
exit()
###################################################################### ######################################################################
### Convert the clustered netlist to the Protocol Buffer Format ### Convert the clustered netlist to the Protocol Buffer Format
###################################################################### ######################################################################
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -45,8 +45,8 @@ class Port: ...@@ -45,8 +45,8 @@ class Port:
for char in self.name: for char in self.name:
if char == '\\': if char == '\\':
name += '\\\\' name += '\\\\'
else: else:
name += char name += char
self.str += ' name: "' + name + '"\n' self.str += ' name: "' + name + '"\n'
for sink in self.sinks: for sink in self.sinks:
sink_new = '' sink_new = ''
...@@ -123,8 +123,8 @@ class StandardCell: ...@@ -123,8 +123,8 @@ class StandardCell:
for char in self.name: for char in self.name:
if char == '\\': if char == '\\':
name += '\\\\' name += '\\\\'
else: else:
name += char name += char
self.str += ' name: "' + name + '"\n' self.str += ' name: "' + name + '"\n'
for sink in self.sinks: for sink in self.sinks:
sink_new = '' sink_new = ''
...@@ -183,6 +183,7 @@ class Macro: ...@@ -183,6 +183,7 @@ class Macro:
self.x = x self.x = x
self.y = y self.y = y
self.orientation = orientation self.orientation = orientation
self.is_soft = False
self.input_pins = [] self.input_pins = []
self.output_pins = [] self.output_pins = []
...@@ -208,8 +209,14 @@ class Macro: ...@@ -208,8 +209,14 @@ class Macro:
def GetPins(self): def GetPins(self):
return self.input_pins + self.output_pins return self.input_pins + self.output_pins
def IsSoft(self):
self.is_soft = True
def GetType(self): def GetType(self):
return "MACRO" if (self.is_soft == True):
return "macro"
else:
return "MACRO"
def __str__(self): def __str__(self):
self.str = "" self.str = ""
...@@ -218,13 +225,13 @@ class Macro: ...@@ -218,13 +225,13 @@ class Macro:
for char in self.name: for char in self.name:
if char == '\\': if char == '\\':
name += '\\\\' name += '\\\\'
else: else:
name += char name += char
self.str += ' name: "' + name + '"\n' self.str += ' name: "' + name + '"\n'
self.str += " attr {\n" self.str += " attr {\n"
self.str += ' key: "type"\n' self.str += ' key: "type"\n'
self.str += ' value {\n' self.str += ' value {\n'
self.str += ' placeholder: "MACRO"\n' self.str += ' placeholder: "' + self.GetType() + '\n'
self.str += ' }\n' self.str += ' }\n'
self.str += ' }\n' self.str += ' }\n'
self.str += " attr {\n" self.str += " attr {\n"
...@@ -297,8 +304,8 @@ class MacroPin: ...@@ -297,8 +304,8 @@ class MacroPin:
for char in self.name: for char in self.name:
if char == '\\': if char == '\\':
name += '\\\\' name += '\\\\'
else: else:
name += char name += char
self.str += ' name: "' + name + '"\n' self.str += ' name: "' + name + '"\n'
for sink in self.sinks: for sink in self.sinks:
sink_new = '' sink_new = ''
...@@ -316,8 +323,8 @@ class MacroPin: ...@@ -316,8 +323,8 @@ class MacroPin:
for char in self.macro_name: for char in self.macro_name:
if char == '\\': if char == '\\':
macro_name += '\\\\' macro_name += '\\\\'
else: else:
macro_name += char macro_name += char
self.str += ' placeholder: "' + str(macro_name) + '"\n' self.str += ' placeholder: "' + str(macro_name) + '"\n'
self.str += ' }\n' self.str += ' }\n'
self.str += ' }\n' self.str += ' }\n'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment