• 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. Blogs
  2. Breakfast Bytes
  3. Integrated Bus Routing Solution
Paul McLellan
Paul McLellan

Community Member

Blog Activity
Options
  • Subscribe by email
  • More
  • Cancel
integrated bus routing solution
grid-based routing
analog
Innovus
high frequency router

Integrated Bus Routing Solution

10 Feb 2017 • 3 minute read

 breakfast bytes logoFor most chips, the automatic routing in Innovus—NanoRoute—works well. But there are certain styles of chips that are more challenging for a grid-based router to do clean structured routing.

  • Large die size designs with buses that go from one end of the chip to other
  • Buses go through multiple levels of hierarchy and connect to blocks/cluster sitting in different hierarchies
  • Processor modules and cores connected to memories through large buses which need to be routed in a structural way without jogs and bends
  • Big-D small-A chips which have analog blocks that need to be connected in special ways

Grid-based routing has some limitations for this sort of design and a shape-based or space-based router is normally used. The 16.1 release of Innovus early last year introduced structured routing in the form of the Innovus High-Frequency Router. This router is based on the NanoRoute infrastructure and can do structured routing in the digital P&R environment. The automated solution then fills in everything else. Now, in the 16.2 release, there is a fully integrated bus routing solution, built around the idea of a busSinkGroup.

 The 50,000' view of this capability is that it allows floorplanning of buses (typically wide and long) at the top level, allows buses to be planned as a whole, takes care of all aspects of the buses to be captured for implementation and routes the buses in a structured way during the detailed routing step. These capabilities add a much easier interface to the Innovus High-Frequency Router, along with some incremental capabilities.

Specialized analog routing has lots of specialized functions so that the analog behaves as desired. But what are known as big-D small-A designs requires some of the same capabilities. These are designs that are largely digital but also have an analog aspect too. Very high-frequency designs also share some of these aspects, since at high frequency the digital illusion starts to break down and some of the signals need to be treated more like analog signals. The functions that are supported by the integrated bus routing solution are:

  • Hierarchical bus planning
  • Net grouping
  • Repeater and feedthrough insertion
  • Parallel and coaxial shielding
  • Interleaved bus shielding
  • Differential pair routing
  • Length and resistance matching

These features can also be used in two ways:

  • High End/High Frequency—Digital designs where there are crossbar type blocks with high rectangular aspect ratios; these are very prone to congestion and challenging for buffering and layer assignment. Large buses can be defined as pre-routes with constraints and routed in a structured way by defining a “Bus Sink group”.
  • Mixed-Signal designs, where assembly environment is Digital, and Analog IP blocks are imported along with constraints. Through an Open Access interface, full routing constraints can be imported as well and the bus solution will honor the constraints set on the pins by the IP maker and do structured routing for the buses.      

Another issue is long signals. In the simplest case, these require buffering, but this must be done in a controlled way so the bus timing remains correct. One way to do this cleanly is distance-based buffer insertion, where buffers are inserted on every signal at regular spacing.

In the case of the longest signals of all, buses need not just buffering, but also register insertion, so that the signals can make it all the way across the chip, taking several clock cycles to do so. These are known as pipeline flops. Because adding registers changes the sequential behavior of the circuit, this requires interaction with synthesis to add them and fix up timing before the physical design is completed. The diagram below shows details of the flow.

 At corners, where buses need to make a right-angle turn, river-routing the bus is often inadequate (although it is supported) because there is too much timing difference between the signals on the inside and the outside of the curve. Instead, an equal wire-length turn is required, so that skew is minimized. See the picture to the right.

In summary, these features allow buses to be planned at the top level and pushed down into the hierarchy. Buses can be planned as a single object for overall planning, specifying buffering,  pipeline flops, shielding, and other analog style constraints. By handling the most critical large long-distance buses first, higher performance can be achieved that would be possible using the grid-based routing alone, and design closure can be achieved earlier.