Unverified Commit 3f1491c9 by ZhiangWang033 Committed by GitHub

Update README.md

parent ee0b9646
......@@ -82,10 +82,13 @@ Here **threshold** = sqrt(**canvas_width** * **canvas_height** / 16).
For each cluster *c*, the break-up process is as following:
* *cluster_lx, cluster_ly, cluster_ux, cluster_uy = c.GetBoundingBox()*
* If ((*cluster_ux - cluster_lx) <= threshold*) && (*cluster_uy - cluster_ly) <= threshold*))
* Return
* return
* *cluster_x, cluster_y = c.GetWeightedCenter()*. Here the weighted center of cluster *c* is the average location of all the standard cells in the cluster, weighted according to their area.
* Use (*cluster_x*, *cluster_y*) as the origin and *threshold* as the step, to divide the bounding box of *c* into different regions.
* The elements (macro pins, macros, ports and standard cells) in each region forms a new cluster.
The following figure shows an example: the left part shows the cluster *c<sub>1</sub>* before break-up process and the blue dot is the weighted center of *c<sub>1</sub>*; the right part shows the clusters after breakup-up process. The "center" cluster still has the cluster id of 1.
<img src="./breakup.png" width= "1600"/>
Note that the netlist is generated by physical-aware synthesis, we know the (x, y) coordinate for each instance.
......
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