This way of working failed to materialize for several reasons. With a single description, it would be possible to optimize the implementation, partitioning off pieces of functionality that would go into accelerators, pieces that would be implemented in custom hardware and pieces that would run as software on the processor-all at the touch of a button. The initial idea behind co-design was that a single language could be used to describe hardware and software. Software also adds an element of flexibility, which is essential in many of these designs because algorithms are in a state of almost constant flux. Software is a critical component, and the more tightly integrated the software, the better the power and performance. What’s different this time around is the growing complexity and an emphasis on architectural improvements, as well as device scaling, particularly for AI/ ML applications. The core concepts in hardware-software co-design are getting another look, nearly two decades after this approach was first introduced and failed to catch on.
0 Comments
Leave a Reply. |