• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Digital Implementation
  3. multiple IO row issue

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 91
  • Views 13690
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

multiple IO row issue

Greatrebel
Greatrebel over 15 years ago

 

Hi All,

 I want to use multiple IO rows to place inline IO pads. The first row is bond pads, and the second row is IO pads. I typed commands below

setIoRowMargin E 1 0
setIoRowMargin S 1 0
setIoRowMargin W 1 0
setIoRowMargin N 1 0

setIoRowMargin E 2 100
setIoRowMargin S 2 100
setIoRowMargin W 2 100
setIoRowMargin N 2 100

placePadIO -rows 2

 

And in my IO arrangement file, I wrote something like (... just for reducing the longth of the post)

(globals
    version = 3
    io_order = default
)
 

(iopad
    (topleft
   
    (inst    name="TOPLEFTCORNER"    cell="PCORNER_25" place_status=placed)
    )
   
    (topright
   
    (inst    name="TOPRIGHTCORNER_A"    cell="PCORNER_25" place_status=placed)
    )
   
    (bottomleft
   
    (inst    name="BOTTOMLEFTCORNER"    cell="PCORNER_25" place_status=placed)
    )
   
    (bottomright
   
    (inst    name="BOTTOMRIGHTCORNER"    cell="PCORNER_25" place_status=placed)
    )

    (top

        (locals ring_number=1)
        (inst  name="BPIN_port_in_7"    cell="PAD60L" place_status=placed )
        (inst  name="BPIN_port_in_8"    cell="PAD60L" place_status=placed )   
         ...

        (locals ring_number=2)
        (inst  name="IOIN_port_in_7"    place_status=placed )
        ...
                              
    )                         
                              
    (right
       
            (locals ring_number=1)
        (inst  name="BPOUT_acc_out_9"    cell="PAD60L" place_status=placed )   
       ...

        (locals ring_number=2)
        (inst  name="IOOUT_acc_out_9"    place_status=placed )   
        (inst  name="IOOUT_acc_out_8"    place_status=placed )   
        ....
       
    )

  (bottom

        (locals ring_number=1)
        (inst  name="VDDPST_BP_CDG"    cell="PAD60L"     place_status=placed )
        (inst  name="VDDPST_BP_POC"    cell="PAD60L"    place_status=placed )
        ....

        (locals ring_number=2)
        (inst  name="VDDPST_IO_CDG"         place_status=placed )
        ....
  )

  (left

        (locals ring_number=1)

        (inst  name="VDD_BP_1"    cell="PAD60L"      place_status=placed )
        ....

    (locals ring_number=2)
        (inst  name="VDD_IO_1"         place_status=placed )
        (inst  name="VDD_IO_2"        place_status=placed )   
      ....
  )

I thought I could have bond pad ring placed outside IO pad ring. But I always got that IO pad ring is further away from the core compared to bond pad, even I change the margin distance in setIoRowMargin to minus values.

 

Any help will be appreciated

  • Cancel
  • Kari
    Kari over 15 years ago

     I think the first row is the one closest to the core, so that would be the one for the IO pads, and the second row would be your bond pads.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Greatrebel
    Greatrebel over 15 years ago

     hi Kari,

     

    It does not work, whatever I set IO pad or bond pad as the first row.

     

    Thanks

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kari
    Kari over 15 years ago
    Ok, please file a service request. Thanks!
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information