Software-defined instrumentation is the latest implementation of automated test. System designers have used software-defined instruments, which are also called virtual instruments, for more than 20 years and they were often used in one-off systems that had unique requirements. Now engineers working on software-centric next-generation electronic devices require the flexibility for their test system that software-defined instruments provide.

These latest electronic devices are complex computing machines with powerful embedded processors at their core. This has meant that software-defined devices are the new standard and enable engineers to improve design reuse by developing entire product lines from the same hardware design. They can reduce the number of board spins and resolve design flaws by downloading the latest software updates.

In this fundamentals course we describe what software-defined instrumentation includes and why we use it. We then move on to how to use it and the choice of an application development environment to implement it.

As we delve further in to the technology we will examine the choice of data bus used in the system and take a look at the type of modular instruments that are available and compare their specifications.