Since the dawn of electronics design, where there have been designs, there have been bugs. But where they have been bugs, there inevitably was debug, engaged in an epic wrestling match with faults, bugs, and errors to determine which would prevail — and how thoroughly.
In many ways, the evolution of debug technology is as fascinating as any aspect of design; but it rarely receives the spotlight. Debug has evolved from simple stimulus-response-observe approaches to sophisticated tools, equipment, and methodologies conceived to address increasingly complex designs. Now, in 2017, we sit at the dawn of a new and exciting era with the introduction of debug over functional I/O.
This is the culmination of decades of hard work and invention from around the globe. I’ve been involved in debug since 1984, so to truly appreciate the paradigm shift we’re now experiencing in debug, it’s useful to take a look back at the innovation that has taken place over the years.
System design was very different in this period compared to the way things are today. A typical system would consist of a CPU, (EP)ROM, RAM, and some peripherals (PIC, UART, DMA, TIMERs, IO…), each implemented in its own IC.
Read more at Embedded