The What, Why and How of Customizable Dataplane Processors (DPUs)
How to Avoid the Traps and Pitfalls of SOC Design
A Processor & DSP Selection Checklist
Processors cannot fulfill every function on a SOC, so they must interface with memories, I/O interfaces, and RTL blocks. Off-chip memories – often non-volatile – hold boot code that allows the processors to initialize. On-chip memories, closely coupled to the processor pipeline, hold the instruction and data sets most immediately required by the processor’s application code. Other RAMs hold shared data across tasks or serve as input and output buffers. Even on-chip ROMs make economic sense in some SOCs. These guidelines may help designers take better advantage of RAMs:
Watch for contention latency in memory access. Increase memory width or increase the number of memories that can be active to overcome these bottlenecks. Pay particular attention to tasks that must move data from off-chip memory, through the processor, and back to off-chip memory; these tasks can quickly consume all available bandwidth.
Many I/O peripheral use industry-standard communications connections that have quite modest bandwidth demands and put no special burden on interconnect structure or software device drivers. High-bandwidth interfaces – such as LAN and WAN network connections and video ports – present more of a design challenge. There are two approaches to efficient integration of high-bandwidth I/O:
Even though processors make a potent alternative to hardwired logic blocks, often RTL blocks have already been designed and verified, so reuse them if appropriate. Two interface mechanisms to RTL blocks include:
For more information, get a copy of the book “Engineering the Complex SOC: Fast, Flexible Design with Configurable Processors, by Chris Rowen, published by Prentice Hall.