Semiconductor Automated Test Equipment
Semi-ATE
is a tester- and instruments AGNOSTIC framework for Semiconductor ATE ASIC testing projects.
This means that the system is not build around a specific instrument (let's consider an ATE tester for a moment as a super instrument), it rather focuses on organizing semiconductor testing in such a way that all use- (and special) corner cases have their well known place. This enables the users (read: DE's, TCE's, TE's & PE's) to focus on the REAL work, being the writing of good, fast and stable tests. Organizing tests into test-programs and test-programs in to flows is handled by wizards, so the only code that needs writing is the actual test! (motto: Code is our enemy)
The Semi-ATE
package is written purely in Python (noarch) and provides besides libraries also a plugin to the Spyder IDE.
The Semi-ATE project is maintained in this single repository, however it is released as a set of packages (all with the same version number) to accomodate the different use-cases.
Package Name | PyPI Version | conda Version | feedstock |
---|---|---|---|
Semi-ATE-common | |||
Semi-ATE-project-database | |||
Semi-ATE-sammy | |||
Semi-ATE-plugins | |||
Semi-ATE-testers | |||
Semi-ATE-spyder | |||
Semi-ATE-apps-common | |||
Semi-ATE-control-app | |||
Semi-ATE-master-app | |||
Semi-ATE-test-app | |||
Semi-ATE-installer |
3rd party packages needed:
===
Installation of the packages can be achieved via conda
or pip.
Each package can be installed using python -m pip install <package-name>
:
python -m pip install semi-ate-common
python -m pip install semi-ate-project-database
python -m pip install semi-ate-sammy
python -m pip install semi-ate-plugins
python -m pip install semi-ate-testers
python -m pip install semi-ate-spyder
python -m pip install semi-ate-apps-common
python -m pip install semi-ate-control-app
python -m pip install semi-ate-master-app
python -m pip install semi-ate-test-app
Or all at once:
python -m pip install semi-ate-common semi-ate-project-database semi-ate-sammy semi-ate-plugins semi-ate-testers semi-ate-spyder semi-ate-apps-common semi-ate-control-app semi-ate-master-app semi-ate-test-app
To be defined
we use maxiconda (https://www.maxiconda.org) , because it is free and open source conda installer.
Create an environment in conda and install semi-ate in it:
(base)~$ mamba create -n Semi-ATE python=3.9 spyder=5.5.5
(base)~$ conda activate Semi-ATE
(Semi-ATE)~$ mkdir -p ~/repos/Semi-ATE
(Semi-ATE)~$ cd ~/repos/Semi-ATE
(Semi-ATE)~/repos/Semi-ATE$ git clone https://github.com/Semi-ATE/Semi-ATE.git
(Semi-ATE)~/repos/Semi-ATE$ cd Semi-ATE
(Semi-ATE)~/repos/Semi-ATE/Semi-ATE$ python scripts/package_tool.py --change-env cicd
...
For the development of testflows, tests and debugging, the easiest way is to use the plugin lab_control for spyder:
cd src/ATE_spyder/ate_spyder_lab_control
pip install -e .
that is describe here
Test program development process documentation can be found here