I often wonder why most, if not all, design teams shoot themselves in the foot by choosing a variety of different interfaces for the IP cores in their SoCs? Wouldn’t they save time and money by keeping the integration among multiple IP cores simple?
Many design teams have in fact given up on proprietary interfaces and moved to increase use of IP offered by an external supplier that relies on standardized interfaces— such as AHB, AXI, and OCP to name a few. But even when standard interfaces are chosen, you still have to deal with multiple interface protocols. For example, a given IP core may only support a particular standard interface (e.g. AHB) while another IP core needed in the design supports a different standard (e.g. AXI). So even with the best of intentions and planning, the SoC design team still must deal with communications among multiple protocols.
SoCs are intricate and complex devices and are becoming even more so over time. Interfaces such as the AMBA® (APB, AHB, AXI) protocols have been used for several years now. APB was the first simple interface defined by ARM. As complexity increased, ARM introduced AHB, and then later AXI, and now AXI4. With each new definition, design teams that used AMBA interfaces were forced to learn a new interface to support the next iteration of a more complex SoC. The AMBA ecosystem today is widely available and heavily proliferated, and for that reason, SoC organizations now opt for AMBA interfaces by default for their designs.
Integrating multiple IP cores with different interfaces is no small feat, and is a costly consideration for any design project. The design team is expected to not only understand its own proprietary interfaces (if used), but also the industry standard interfaces just mentioned. Teams can continue what they’re doing today and learn each new interface to design a custom on-chip communications network. However, this approach has the disadvantage of limiting the amount of reuse from chip-to-chip, and with increasing SoC complexities, the design time and expertise are also a big factor.
To ease the design effort, I recommend that SoC teams consider choosing a configurable on-chip communications interface that is universal in its protocol support while agnostic to the majority of industry interfaces. This greatly decreases the integration effort while dramatically improving overall time-to-market. Two of the commonly used interfaces today are AXI and OCP.
Although a standard protocol, AXI for example, runs into limitations with the width of the signals and thus designers are forced to breach the specification. Having universal connectivity support in the on-chip network can deal with these breaches of the AMBA specification. In the case of an OCP interface, protocol breaches can be avoided because the OCP specification promotes the idea of configurable interfaces making it very flexible. OCP however, does not have a widely proliferated ecosystem similar to AMBA. The configurable nature of OCP is an advantage, however this flexibility adds ramp-up costs because it takes time to understand and use the interface efficiently. At Sonics, our goal is to minimize both of these concerns for design teams by providing an on-chip communications network that provides a universal “socket” that will isolate your interface protocol from the on-chip communications network—significantly simplifying the overall design.
As design teams struggle with ever-growing SoC complexity, saving time and money are critical concerns. The choice (or lack thereof) of specific cores with a given interface will have a direct impact on both. Future chip design considerations are also part of the mix. Ask yourself whether it’s better to select an on-chip network that is scalable and highly configurable across the SoC, or a custom interface that has to be re-designed for each chip and contend with standard, semi-standard and custom protocols? Keep these design decisions in mind before you start your next SoC project so you are carefully weighing all critical options and can make the most informed choice for your specific design and application.
Ravi Venugopalan
Verification Manager
Tags: ahb, amba, apb, axi, fabric, ic, IP, ocp, protocol, SoC