Testing is a vital but often overlooked part of the board development process. At Eurotech, Inc., for each product that we offer, there is a corresponding and intensive test strategy to ensure our boards are error-free before being shipped to customers. Our test strategy has evolved over the years and continues to stress our flexibility and focus on OEM customer needs. It consists of a three-phase process: in-circuit test, boundary-scan test, and functional test.
In-circuit test is done at the contract manufacturer's site and is the first phase of Eurotech's board testing process. During in-circuit testing, Eurotech's boards (BitsyXb, TurboXb, etc) are fully assembled with all components on the printed circuit board and then mounted on a bed of nails test fixture. Each component is then essentially isolated and considered independent of other components on the PCB and measured for various analog and digital performance metrics such as opens and shorts and resistance values. The focus of in-circuit test is to ensure that the contract manufacturer has placed all the correct components in the correct locations on the PCB and free of manufacturing defects such as solder errors, opens and shorts.
Boundary-scan, Eurotech's second phase of testing, begins after the board is recieved from the contract manufacturer and uses Corelis software. Boundary-scan, (also referred to as JTAG or IEEE1149) picks up where in-circuit testing is limited due to complexity and density of PCB components and allows us to take an assembled product and test interconnects and I/O pins without using physical probes and by minimizing the number of test vectors needed. In addition, it lets us program on-board components such as CPLDs, Flash memory, and AVR microcontroller reducing the amount of component handling. Click here to read an article about the Corelis tool our engineers use to do boundary-scan.
The last phase of testing, called functional testing which allows us to test the embedded system as a final product similar to our customer applications including testing interfaces, touch screens, and video display operations. At Eurotech, we have two methods to perform functional test: live bench setup or fully automated test setup. During the live bench setup, the test program resides on and runs from the unit under test and is manually connected to devices and interfaces such as bench equipment so that we can reflect the actual user environment. This method, while more manual and time-consuming than the fully automated setup, is ideal for smaller volumes and as a low-cost test solution. The live bench setup has another advantage in that it is often used by technicians for bench troubleshooting. The second, fully automated method has the test program running externally on a host PC rather than being loaded onto the unit under test. This method uses National Instruments TestStand software as the test executive (click here to learn more about TestStand) and LabVIEW software (click here to learn more about LabVIEW) to program test modules to perform particular test functions. The unit under test is loaded with diagnostic control applications called Unified Test Set (UTS) instructions which are Windows CE applications written in C#. Being fully automated, this second method allows the PC to interact directly with the board and other equipment, minimizing the need for human intervention.
Just as Eurotech, Inc. is able to customize boards to meet unique customer needs, we are also able to tailor the customer's testing needs as well. Customers can decide what level of testing they would like done and make their own trade-offs between cost and coverage. In the meantime, Eurotech is continuing to improve our testing strategies to provide a flexible, cost-effective, and comprehensive test environment.