How much quality can you extract from a chip?
One of the key stages in designing any chip is the testing you do when you get the first silicon back. This is where you finally see the results of all your careful work and determine whether the chip is performing as designed, and as simulation told you it would. This is known as IC validation. The focus of validation is on functional test – checking that the chip in silicon meets the original requirements. This usually involves a certain amount of characterization as well as tests of basic functionality to make sure that no bugs have slipped into the design.
The validation step is separate from production test, where the focus is on quickly and accurately finding any chips with manufacturing defects so they can be discarded. Here, the focus is usually on getting the test completed to an acceptable level of accuracy in the fastest time. This is because the cost per chip will increase with every extra second the chips spend in the tester.
In contrast, in the validation step the primary focus is generally not on the speed of the testing but on the quality of the data you can extract from the chip. This is not to say that speed is irrelevant, and if you can get good results quickly, then that is always a good thing. Building automation into the testing process at the validation stage has numerous benefits:
Given all of these factors, Adesto has developed a Python based testing framework that integrates all of our instruments together in the lab and allows us to quickly port tests that were developed in the verification stage to validation tests. The Python language was chosen to automate the tests due to its familiarity amongst the testing engineers as well as the numerous libraries that were available to help with the work.
The validation system itself consists of a board with socket for the chip under test. The board contains a daughter card with a large Xilinx FPGA connected via ethernet to the lab’s network. We can program the FPGA remotely over the network and use it to control all the digital inputs of the device under test (DUT) and also monitor its outputs. Various analog inputs and outputs from the DUT are hooked up to switches that can switch them to a set of SubMiniature version A (SMA) connectors which are connected to scopes, spectrum analyzers and signal sources. We can also remotely control each of these instruments, and together it means that all the inputs, outputs, analog and digital signals from the DUT can be forced to whatever values we want to observe.
The Python test framework software runs on a remote server. Our validation engineers can write tests in Python and combine that with C programming code that can be run on the embedded processor in the DUT. This provides the ability to exercise the ASIC through its full suite of functional tests. All the connections to the instruments and the test board are via the network, and thus the development and execution of tests can be done remotely.
Our remote IC validation testing tool is used regularly by our global custom ASIC design teams for enhanced collaboration and oversight. As we look ahead to a different future of work where many of us will be working from home for some time yet, solutions like this help ensure our customers’ ASIC designs are safely delivered on time and with the high quality they expect. Check out this short video to find out more about custom ASICs.
Leave a Reply