All system designers have three major tasks:
achieve system-design goals
minimize project costs
reduce design risks
At the same time, rising system complexity conspires to make these tasks increasingly difficult. For example, a system designed in 1995 might have simple I/O requirements such as a few parallel and asynchronous serial ports. Today’s electronic systems bristle with USB, IEEE 1394, and Ethernet ports that employ many complex protocol layers. Consequently, system-processing requirements have grown and are growing dramatically. Increasingly, system designers turn to SOCs to achieve the system complexity and cost goals. However, due to its very nature, SOC design is inherently more costly and riskier than board-level ...