1. °²³]¨â¯x§ÎªºÂI©MÂI³s±µ,¨ººâ¬O¦³³s±µªºÃö«Y?

ans: NO. (¤£ºâ)


2. ¦b´ú¸ÕÀÉtest31¤¤ªºlabelÀɮצ³­«½Æªºlabel¦WºÙ¡C
    ¦pªG¹J¨ì³oºØ±¡§Î¬O§ä¥X¤£¦Plabel¶¡ªº¸ô®|ÁÙ¬O¬Û¦Plabel¤]­n¦Ò¼{?

ans: We should treat these labels with same label name as a group.
From the topology, there will be multiple paths between the two different label groups.
And there is connected path(s) between any two different labels.
These labels help to identify the shorted path between the two different label groups.
The program should be able to identify a shortest path from these paths.
For Example,

              1                  2                              3
VDD+--------------+---------------+------------------------+VSS
     13 |                                      | 14                          | 15
VDD+-------------------------------+------------+----------+VSS
     16 |                     4                       5              6      |
          |                                                                     | 17
VDD +------+--------+--------+------------------+---------+VSS
              7         8          9            11                  12


Numbers 1 - 17 represent the shapes, there are so many paths between VDD to VSS,
while the shortest one would be
VDD (the middle one) through Shape 4 to Shape 14 to Shape 3 to VSS (the top one).
¡@


3.
   I want to make sure a shortest path on two different nets is determined by

 the number of polygons only.(I mean it is not to include the number of vias

 ,right
¡@

ans: Yes, only the shapes of interconnect layers (metal1 and metal2).
¡@


4. ¨C­Ótest case·|¤£·|¦³¶W¹L¨âºØªºlabel??
¬O¤£¬O©Ò¦³ªºtest case ³£·|¦³short¦s¦b¡H

ans:

In order to simplify the problem,
Yes, each test case contains exactly two different names of labels; and it really has short problem.
¡@


5. §Ú·Q½Ð°Ý¤@­Ó°ÝÃD~´N¬O·í¨â­Ónode¤W¦³¶W¹L¤@±ø¥H¤Wªº³Ìµu¸ô®|®É
§Ú­Ì»Ý­n±N©Ò¦³ªº³Ìµu¸ô®|³£ªí¥Ü¥X¨Ó¶Ü??
ÁÙ¬O¥u­nªí¥Ü¨ä¤¤¤@±ø´N¥i¥HÅo??
Á|¨Ò : a -> b ¤W¦³¤T±ø ³Ìµu¸ô®|
a -> c -> d -> b
a -> 1 -> 2 -> b
a -> e -> f -> b
³o¤T±øªº¸ô®|¼Æ³£¬O¬Û¦P¥B³£¬O³Ìµu¸ô®|
¨º¬O­n¤T±ø³£ªí¥Ü¥X¨Ó¶Ü??
ÁÙ¬O¥u­nªí¥Ü¨ä¤¤¤@±ø´N¥i¥HÅo?
¡@

ans: We encourage you to report all of the paths into different output files.
While at least one of the shortest path should be output.
¡@


6. §Ú½Ð°Ý¤@¤U,¦btest31³o­Ó´ú¸ÕÀɤ¤,¬O§_·|¦³¨âªºlabelªº®y¼ÐÂI¥´¨ì¦P¤@­Ó¯x§Î¤W,
¦pªG·|µo¥Í³oºØ±¡§Î®É,§Ú­Ì¸Ó¦p¦ó³B²z??

ans:

If the label names are the same, then it is OK.
If the label names are different, then it's a short; and the output for such case is very simple,
i.e. just the rectangle they are located on.

Please note, you should also check with the ATTACH layerName for the labels;
maybe, they are attached to different layer shape (one attached to MET1, the other attached to MET2);
then, it will be a different situation.

If you could, please send me the label names and the coordinates of the two labels you found for
this specific testcase (test31). I can double check it for you.
¡@

---------------------------------------------------------------------------------------------------

6.1. ¦]¬°test31¸Ì­±©Ò¦³ªºlabel name³£¬O¥´¤J¦P¤@¼h layer (³£¬Ometal2)
¦blabel name = VSS ®y¼Ð¬° (1300.3 , 3.75) ©M ( 0.5 , 4 ) ³o¨â­Ólabel ³£·|¸¨¤J ( 0 , 1.5 ) ( 1300.5 , 6 ) ³o­Ó¯x§Î·í¤¤
¦Ólabel name = VSS ®y¼Ð¬° ( 0.25 , 253.25 ) ©M ( 1300.35 , 253.25 ) ³o¨â­Ólabel ³£·|¸¨¤J ( 0 , 251.25 ) ( 1300.5 , 255.75 ) ³o­Ó¯x§Î·í¤¤

ans:

¦]¬°¥´¦b¦P¤@­Ó¯x§Îªº³o¨â­Ólabel name ³£¬O VSS, ©Ò¥H¬OOKªº. They just confirm that the rectangle
they attached is really for VSS. §Ú­Ì¥i¥H±N³o¨â­Ólabel©Ò¦bªºÂI, ¨Ò¦p (1300.3 , 3.75) ¤Î ( 0.5 , 4 ), ·í¦¨
¦P¤@­Ó°_©lÂIfor path tracing.
¡@


8. ¦bÃD¥ØpdfÀɸ̭±ªºªºevalution¨º¬q...
"Number of interconnect shapes in the output"
¬O¤°»ò·N«ä??
¡@

ans:

It means number of shapes (number of lines) reported in the output file. I.e. those shapes (metal1 & metal2) belonging
to a net identified as short.  It is 7 for the case shown in the example of the problem statement (pdf/doc document).
Since there are 7 shapes reported in the output file.


9. ¤@­Óvia¦b"¦P¤@¼h"¦³¨S¦³¥i¯à³s¨ì¨â­Ó¥H¤Wªºmetal?
¦]¬°¦btest31¸Ì­±¦n¹³¦³³oºØ±¡§Îµo¥Í...
¡@

ans: It's possible. As long as these metals shapes are abutting (i.e. belonging to the same polygon/net);
´N¦p¤U¹Ï .


10. ¦³Ãölabelªº§PÂ_-----

1. ¦pªGlabelµ¹ªº®y¼Ð ¸¨¦b¦P¤@¼hªº¨â­ÓmetalªºÃä½t
    ³o¼ËÀ³¸Ó¨â­Ómetal³£­nºâ¹ï§a??
2. ¦pªG¬O­°ªº¸Ü, ¦b´ú¸ÕÀÉtest22¸Ì­±, À³¸Ó¨S¦³multiple shortest path§a??
    ¦]¬°®Ú¾Útest22ªºlabel¸Ì­±²Ä¥|¦æ, ¥H¤Îmetal1¤¤²Ä2, 3¦æ
    ³o¨â­ÓmetalÀ³¸Ó¦P¼Ë¬°²×ÂI(°²³]VDD¬°²×ÂI)§a??
    ­°¤l³Ìµu¸ô®|À³¸Ó¬O:
0.000 0.000 56.000 209.000(metal1)
|
0.000 209.000 942.000 226.000(metal1)
|
523.000 51.500 542.000 225.500(metal2)
|
161.000 52.000 1061.000 69.000(metal1)
¥|­Ó§a???

3. ¤£¹L¦pªGlabel²Ä¥|¦æ±q­ì¨Óªº 1061.00 52.00 §ï¦¨ÅýY®y¼Ð¤p©ó52,
    À³¸Ó´N¦³multiple shortest path¤F...
    ÁÙ¬O³o´N¬Oreadme¸Ì­±»¡ªºcombining the errors of test21 and test23 ?

    ¤£ª¾¹D¦³¨S¦³ºâ¿ù... ¿ù¤F½Ð¦h¥]§t... ^^"

    p.s.ÀH¥óªþ¤W¥Îmfcµe¥X¨Óªºlayout¹Ï...

ans:

1. Both of the metal shapes need to be considered when we are tracing the shorted path.
It appears at the lower-right corner with label name VDD.
±z­ì¨Óªþªº¹Ï¦n¹³¤W¤UÄA­Ë¤F. ­«·sªþ¤Wrotated «áªº¹Ï with label names highlighted.

2. In the figure of file spapa_test22_A, several shorted paths are highlighted with different colors (there are more not highlighted).
You are right that the shape of rectangle (1005,0 ) (1061, 52), filled with cyan color, could be ignored in counting the
"number of connected shapes" for the shorted path since there is no other shape connected to it -- it is definitely belonging
to VDD and does not cause confusion.
So, there is only one shortest path --- highlighted by the line with green color.
¡@

3. Your comments about the fourth label coordination are correct and valid.
Sorry for the confusion.
¡@


11.

1. ¤§«eªº°ÝÃD9©Ò°Ýªº¡G¤@­Óvia¦b"¦P¤@¼h"¦³¨S¦³¥i¯à³s¨ì¨â­Ó¥H¤Wªºmetal"
¨º·Ó¦^µª¨Ó¬Ý¡A¬O§_ªí¥Üvia¤£¤@©w­n§¹¥þ³£¦bmetal rectangle¤§¤º

2. ÁÙ¬O¥²¶·¨º¦P¤@¼hªºmetal¤¬¬Û¬Û³s¡A©Ò¥Hvia¤~¥i¥H¦³¾î¸ó¤@­Ómetal rectangleªº±¡§Î¥X²{¡H

3. ¨º¤U­±³o2­Ócase¥i¥H»¡ºâ¬O¬Û³sªº±¡ªp¶Ü¡H

Black¡Gvia      Blue¡Gmetal2       Red¡Gmetal1
      Case 1                                                        Case 2

4. ·|¦³³æ¿Wªºvia¦s¦b©Î¬O¥u¸ò¨ä¤¤¤@¼hmetal rectangle overlapªº±¡§Îµo¥Í¶Ü¡H
Ãþ¦ü©³¤U³o¼Ë


ans:

1. via ¤@©w·|³Qmetal1, metal2 §¹¥þ¥]¦í, ¦ý¤£¤@©w¥u¦b³æ¤@­Ó metal rectangle ¤§¤º

2.¬Oªº

3.³£¤£ºâ. °ò¥»¤W³o¨â­Ócases ³£¹H¤ÏDesign Rule.
Testcases¤¤À³¸Ó¤£·|¦³³o¨Çª¬ªp¤~¹ï


4.No. If there is, please just ignore it.
¡@


12.

­Y¦b¥Õ¦âªºmetal 1¤¤¦³metal-11»Pmetal-12¬Û¾F,¨Ã¥B¦b¥t¤@¼hÁÙ¦³¤@­Ómetal 2»P¥¦­Ì­«Å|,°£¦¹¤§¥~,¦³¤@­Óvia¥¿¦n¥´¦b¦¹¨â¬Û¾Fmetal 1ªºÃä¤W¡C³]¦¹viaªº¥kÃ䥿¦n»Pmetal-11»Pmetal-12¬Û¾FªºÃä­«¦X,½Ð°Ý¦b³oºØ±¡ªp¤U: (1)metal 2¥²¶·ÂÇ¥Ñmetal-11¤~¯à»Pmetal-12³s³q,©Î¬O(2)¦]¬°viaªºÃ䦳»Pmetal-12ªºÃä¬Û¾F,©Ò¥H¤]µø¬°metal-12¥i¥Hª½±µÂÇ¥Ñvia³s³q¨ìmetal 2,¦Ó¤£»Ý­n³z¹Lmetal-11¤~¯à»Pmetal 2³s³q?

¡@

¡@

¡@

¡@

ans:

For this case, Metal1-11 through via to Metal2 would be enough.
Since this via is fully enclosed by Metal-11, we can ignore Metal-12 which does not enclose (or overlap) the via, but only with edge touched.
¡@


13.

1. A¡BB¡BC¬O«ü¬õ¦âªº¯x§Î¡A1¡B2¡B3¬O«üÂŦ⪺¯x§Î
¨Ì·Ó¤W¹Ï¡A¦pªG­n±q¤U­±ºñ¦âªº¤pÂI¨«¨ì¤W­±ºñ¦âªº¤pÂI¡A­þ»ò¸ô®|ªººâªk
ƒÜ 3¡B2¡BB¡BC ¡]ªí¥ÜA¡B1¥iºâ¬Oª½±µ¬Û³s ©Î¬OB¡B2¤]¬O¡^
ƒÜ 3¡B2¡B1¡BA¡BB¡BC ¡]ªí¥Ü­n¸g¹L³o¨Çvia¨º»ò4­Ó¯x§Î³£­nºâ¤~¥i¡^
¤£ª¾¹D¬O±Ä¥Î¤W­±­þ¤@ºØºâªk¡H

2.
¦b°ÝÃD6¤¤¨Ì·Ó¦^µª¨Ó¬Ý¡A¦³¥i¯à¤@­Ó¯x§Î¦P®É³Q¼Ð¤WÄÝ©ó¦P¤@layerªºVSS¸òVDDªºlabel¡A¨º»ò³oºØcaseªº³Ìµu¸ô®|´N¬O³o­Ó¯x§Î¥»¨­¡A¥i¬O³oºØcaseªºall path­n¦p¦ó¦C¥X©O¡H³oºØcaseÀ³¸Ó¤£ºâ¬Oµu¸ô°ÝÃD¦Ó¬O³]­p¿ù»~©Ò¥H¥u»Ý¦C¥X³o­Ó¯x§Î¶Ü¡H©Î¬O¦b¦Cpath®É¥i¥H±N¦¹¯x§Î·í§@¬O¤@­Ó¨S¦³label¦s¦bªº¯x§Î¨Ó­pºâpath¶Ü¡H
¡@

ans:

1.

¸û¥¿½Tªºªí¥ÜÀ³±Ä¥Î²Ä¤GºØ, §Y3¡B2¡B1¡BA¡BB¡BC
We need to include all of shapes fully enclosing the via(s), if the via(s) is on the shorted paths.
¡@

2.

We can treat this special case as a shorted path. The iteration of short location will finally come
to such situation, so that we know where the short is exactly located. Normally, this rectangle is
wrongly placed in the layout and the designers need to correct it. You may refer to the reference paper.
¡@


14.

1.½Ð°Ý¤@¤U¥[¤Àªº³¡¤À¡A¬O»¡¥u­n¬Oµu¸ôªº¸ô®|´N­noutput¥X¨Ó¡A¦ý¬O³o±ø¸ô®|¤£¤@©w­n¬O³Ìµuªº¡A¬O³o­Ó·N«ä¶Ü¡H(¦]¬°°ÝÃD5ªº¦^µª¦n¹³¬O¥u°w¹ï³Ìµu¸ô®|¸òÃD¥Ø¤Wªº¥[¤À­n¨D¦³¨Ç¤£¦P¡A©Ò¥H·Q§Ë²M·¡^^||)

2.¸ô®|¬O­nrectangleªº¶°¦X¨Ó¥Nªí¡A¨º»ò¦pªG±N¨ä¤¤¬Y¨Ç¯x§Îªº¶¶§Ç±¼´«¤@¤U¡A¤]´N¬O±qVSS¨ìVDDªº¨Ì§Ç¨«ªºrectangle¤£¦P¡A³o¼Ë¥i¥Hºâ¬O¥t¤@±øªº¸ô®|¶Ü¡HÁÙ¬O¥u­n¶°¦X¤¤ªºrectangle ¬O¤@¼Ò¤@¼Ëªº¡A¨º»ò¤£ºÞ¶¶§Ç¤@½×³£·í¦¨¤@±ø¸ô®|¨Ó­pºâ¡H
¡@

ans:

1.Yes. ¥[¤Àªº³¡¤À: ¥u­n¬Oµu¸ôªº¸ô®|´N­noutput¥X¨Ó¡A¦ý¬O³o±ø¸ô®|¤£¤@©w­n¬O³Ìµuªº.
¡@

2. If you could report the rectangles in an order (either from VSS or from VDD) that would be a plus. It would be very helpful
if the users want to trace the layout with the text report.
Since we have the scheme to show the results in graphics, it does not matter the order of the rectangles reported.
The output path should be unique, i.e. ¥u­n¶°¦X¤¤ªºrectangle ¬O¤@¼Ò¤@¼Ëªº¡A¨º»ò¤£ºÞ¶¶§Ç¤@½×³£·í¦¨¤@±ø¸ô®|¨Ó­pºâ.
¡@


15.

³]¦b¥Õ¦âªºmetal 1¤¤(¦³metal-11»Pmetal-12¬Û¾F),¦b¥t¤@¼hÁÙ¦³ÂŦ⪺metal 2 (¥Bmetal-21»Pmetal-22¬Û¾F),°£¦¹¤§¥~,metal-21©Mmetal-22§¡»Pmetal-11­«Å|,¦P®É, metal-22¤]»Pmetal-12­«Å|¡C­Y¦³¤@­Óvia¥¿¦n¥´¦b¦¹¨â¬Û¾Fmetal 1ªºÃä¤W,³]¦¹via¥ç¥¿¦n¥´¦bmetal-21»Pmetal-22¬Û¾FªºÃä¤W,½Ð°Ý:(1)metal-12¥²¶·ÂÇ¥Ñmetal-11©Îmetal-22¤~¯à»Pmetal-21³s³q?ÁÙ¬O(2)¦]¬°viaªº¥k¥b³¡¥´¦bmetal-12¤W,viaªº¥ª¥b³¡¤]¥´¦bmetal-21¤W,©Ò¥H¤]µø¬°metal-12¥i¥Hª½±µÂÇ¥Ñvia³s³q¨ìmetal-21,¦Ó¤£»Ý­n³z¹Lmetal-11©Îmetal-22¤~»Pmetal-21³s³q?(3)¦b¦¹¦P®É,metal-11¥i§_ºâ¬Oª½±µ»Pmetal-21©Mmetal-22¬Û³q?

¡@

¡@

¡@

¡@

¡@

ans:

The guideline would be, all of the connect layers¡¦ shapes need to be reported once their enclosed via(s) is in the path.
If we trace the path from Metal-12, and decide to trace up to metal2 through the via,
Ć Since the via is partially enclosed by Metal-12 and Metal-11 encloses it also, Metal-11 needs to be included in the path
Ć Get Metal-21 and Metal-22 enclosing this via. Both of Metal-21 and Metal-22 need to be included in the path once we select this via into the path -- no matter the path goes to the left-hand side from Metal-21 or to the right-hand side from Metal-22.
So, for this case, all of the four shapes should be reported.
¡@


16. [³q§i]

¥D¿ì³æ¦ì¤w¸g±N¶l±H³ø§i¥H¤ÎFTP¤W¶Ç§@«~ªº¤è¦¡¤½¥¬©ó°ÑÁɤâ¥U(April 22, 2004ª©¥»), ·q½ÐºÉ³t¦ÜÄvÁɺô­¶¤U¸ü. ¥t¥~, FTP¯¸¤]¤w¶}©ñ¤W¶Ç§@«~, ¤]½ÐºÉ³t½T»{¯à§_¦¨¥\µn¤J.

­Y¦³¥ô¦óºÃ°Ý, ½Ð¨Ó«H cad@cs.nthu.edu.tw
ÁÂÁÂ
¡@


17.

(1)³]ÂŦâ¬Ometal 1,¬õ¦â¬Ometal 2,¦b¥H¤U¹q¸ô¹Ï¤¤,
¦³¤@±ø³Ìµu¸ô®|±q(VDD)1„³2„³3„³4(VSS),
¦¹®É­Y­n§ämultiple paths,¬O§_¯à§ä¨ì¥t¤@±ø¸ô®|: (VDD)1„³2„³3„³4(VSS)„³5(VSS)


(2)·Q½Ð±Ðmultiple paths ªº§PÂ_±ø¥ó¨ú¨M©ó¤°»ò?
(¤£¦Pªº§PÂ_±ø¥ó·|¦³¤£¦Pªºmultiple paths¿é¥X)
¬O§_¬°¡§¥u­n¥ô·NVDD¨ì¥ô·NVSS¦³¸ô®|³s³q,¨Ã¥B¥ô·N¤@­Ómetal¦b¤@±ø¸ô®|¤¤
¥u¯à³Q¸g¹L¤@¦¸ªº±¡ªp¤U,³o´Nºâ¬O¤@±ømultiple paths¤§¤@¶Ü?
¡¨
Ex:¥Hºô­¶¤W°ÝÃD2ªºµª®×¹Ï¥Ü¬°¨Ò:
¦¹¹Ïªºmultiple paths ¬O§_¥]¬A¥H¤U´X±ø:
VDD„³1„³2„³3„³VSS
VDD„³1„³2„³3„³15„³VSS
VDD„³ 1„³2„³3„³15„³17„³VSS
VDD„³16„³13„³1„³2„³3„³15„³17„³VSS
VDD„³ 1„³2„³3„³15„³6„³5„³4„³16„³7„³8„³9„³11„³12„³VSS
:

              1                  2                              3
VDD+--------------+---------------+------------------------+VSS
     13 |                                      | 14                          | 15
VDD+-------------------------------+------------+----------+VSS
     16 |                     4                       5              6      |
          |                                                                     | 17
VDD +------+--------+--------+------------------+---------+VSS
              7         8          9            11                  12

¡@

ans:

(1) Yes. The path (VDD)1„³2„³3„³4(VSS)„³5(VSS) could be treated as another shorted path.

(2) Basically, yes. While if the program is smart enough, the shapes of 13, 16, 15, 17 should be ignored and not considered in the shorted paths. For example, shape 13 connected to VDD in both sides directly, it is definitely correct.


¡@


¡@

¡@