Magic Tutorial2 : Hierarchical Layout

bug or comment to

  1. Make sure you have inverter layout
    See Magic Tutorial - Inverter Layout or download inverter.mag file if you don't have.
  2. Execute magic program See Fig 1.
    %magic ring

  3. Get inverter cell See Fig 2.
    ":getcell inverter"

  4. Array it (5,1) See Fig 3.
    ":array 5 1"

  5. Another way to do See Fig 4 and Fig 5.
    make sure you selected inverter cell.
    get width of cell by "b" - in command box, "Box height: 59, width: 22" will appear
    ":copy r 22"
    repeat ":copy r 22" 3 more times by typing "." 3 times.

  6. Expand inverter cell(s) See Fig 6.
    select one of the instances of inverter. (type "s" or "f")
    ":expand" (type "x")

  7. Switching the edit cell See Fig 7.
    select one of the instances of inverter.

  8. Change inverter size See Fig 8.

  9. Save files

  10. Put labels on top layout See Fig 9, Fig 10 and Fig 11.
    select top cell(ring) and type ":edit"
    "box(4,4)-> :paint m1"
    label Vdd on the drawn m1 layer
    repeat for GND, z1, z2, z3, z4, z5

  11. Finish layout See Fig 12.

  12. Save.

  13. Run IRSIM or HSPICE simulation to check operation

Copyright Joong-Seok "Jay" Moon