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 1This 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.
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. :-)
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.