Home > Community > Blogs > Digital Implementation > how to use i o rows
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more convenient.

Register | Membership benefits
Get email delivery of the Digital Implementation blog (individual posts).


* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

How To Use I/O Rows - It's a Snap!

Comments(2)Filed under: Digital Implementation, Floorplanning, i/o rows, encounter 8.1

Have you ever tried manually moving IO cells in your design and thought: "This would be a lot easier if these IO cells could snap to a row, just like standard cells do"? Well, now they can! One of the new features in Encounter 8.1 is the support of IO rows.

First, you will have to enable the IO Row Flow (it is not on by default). After importing your design, type:

    setIoFlowFlag 1

This setting will be preserved in the .conf file when you save the design, so after this first time, you don't have to set it in every session.

Next, you'll want to create IO rows as part of your floorplan. Bring up the Specify Floorplan form (Floorplan->Specify Floorplan) and choose your settings as you normally would. Then, on the Advanced tab, make sure "Use IO Rows for IO Placement" is turned on:


Hit OK or Apply, and your floorplan will be set. If you turn off instances, you can see the IO rows. Now, if you move an IO in the GUI, it will snap to the row, even if you move the IO to a different side of the chip. Nice!

But what if your floorplan is already set, and you'd just like to add IO rows now? No problem, you can do that too. There are many options to choose from when creating IO rows, but the easiest way is to derive the rows by the IO cells already in your design. Use the GUI: Floorplan->Edit Floorplan->I/O Row->Create...


Or, use the command:

    createIoRow -deriveByCells

Let me know in the comments if using IO Rows makes your job easier.


By eminemshow on March 12, 2009
Hi, Kari,

This is eminemshow, your tips are always very great and useful. I am kind of resonant with your post.  After reading your post, I am reminding of the time when I use snapFPlan to snap hard macros to M1 routing track or std cell rows, really easy. But before knowing this command I have to write a snap script myself.....hope that others all know 'snapFPlan' can snap macros to whatever grids, even user defined.


By Kari on March 16, 2009
Hi eminemshow, thanks for the comment, and even more so, thank you for highlighting snapFPlan. You are so right, this is a very useful command to know. I will keep this in mind for a future blog entry and give you credit for the idea. :-)

Leave a Comment

E-mail (will not be published)
 I have read and agree to the Terms of use and Community Guidelines.
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.