Commit fc8b1ec4 by ZhiangWang033

fixed issues

parent 00abf8ec
......@@ -684,6 +684,7 @@ class ProBufFormat:
height = sqrt(area * self.aspect_ratio)
width = area / height
self.insts[macro_name] = Macro(macro_name, width, height, x, y)
self.insts[macro_name].IsSoft()
soft_macro_id += 1
# 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,
cluster_def = "./results/OpenROAD/clustered_netlist.def"
cluster_lef = "./results/OpenROAD/clusters.lef"
exit()
######################################################################
### 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:
for char in self.name:
if char == '\\':
name += '\\\\'
else:
name += char
else:
name += char
self.str += ' name: "' + name + '"\n'
for sink in self.sinks:
sink_new = ''
......@@ -123,8 +123,8 @@ class StandardCell:
for char in self.name:
if char == '\\':
name += '\\\\'
else:
name += char
else:
name += char
self.str += ' name: "' + name + '"\n'
for sink in self.sinks:
sink_new = ''
......@@ -183,6 +183,7 @@ class Macro:
self.x = x
self.y = y
self.orientation = orientation
self.is_soft = False
self.input_pins = []
self.output_pins = []
......@@ -208,8 +209,14 @@ class Macro:
def GetPins(self):
return self.input_pins + self.output_pins
def IsSoft(self):
self.is_soft = True
def GetType(self):
return "MACRO"
if (self.is_soft == True):
return "macro"
else:
return "MACRO"
def __str__(self):
self.str = ""
......@@ -218,13 +225,13 @@ class Macro:
for char in self.name:
if char == '\\':
name += '\\\\'
else:
name += char
else:
name += char
self.str += ' name: "' + name + '"\n'
self.str += " attr {\n"
self.str += ' key: "type"\n'
self.str += ' value {\n'
self.str += ' placeholder: "MACRO"\n'
self.str += ' placeholder: "' + self.GetType() + '\n'
self.str += ' }\n'
self.str += ' }\n'
self.str += " attr {\n"
......@@ -297,8 +304,8 @@ class MacroPin:
for char in self.name:
if char == '\\':
name += '\\\\'
else:
name += char
else:
name += char
self.str += ' name: "' + name + '"\n'
for sink in self.sinks:
sink_new = ''
......@@ -316,8 +323,8 @@ class MacroPin:
for char in self.macro_name:
if char == '\\':
macro_name += '\\\\'
else:
macro_name += char
else:
macro_name += char
self.str += ' placeholder: "' + str(macro_name) + '"\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