As the chip design becomes increasingly complex, verification engineers need to keep their skills updated and sometimes adapt their skills to a new design landscape.
Verification is a critical step in manufacturing because it helps detect and debug functional defects before products are deployed. This role is performed by a verification engineer, a role that can go by many titles, such as Product Quality Engineer, Quality Assurance Engineer, and Validation Specialist.
To ensure that products work as intended, verification engineers are responsible for a wide range of tasks — including designing the verification methodology, selecting appropriate testing environments, developing test plans, selecting testing tools, and reporting test results. They perform their tasks before the FPGA, ASIC, or SoC production phase, working with the design teams to verify their designs (e.g., IP, sub-system, system).
To perform their essential tasks requires a specific set of skills and tools. We've compiled a list of the most important tools and skills for verification processes in the semiconductor industry. See what verification engineers need to know now to be successful:
ASIC, FPGA, and SoC verification skills:
- SystemVerilog: A hardware verification language and description used by a design verification engineers to develop, test, and implement electronic systems, including software and hardware, to ensure design quality and integrity.
- UVM: This is the Standard Universal Verification Methodology, which aims at improving interoperability and reducing the cost of rewriting and repurchasing IP for every new project, electronic device, or automation tool. It also makes it easier to reuse verification components.
- Verilog: A hardware description language used to model electronic systems that is commonly used in the design and verification of digital circuits at the register-transfer level of abstraction.
- VHDL: The VHSIC Hardware Description Language is a hardware description language that can model the behavior and structure of digital systems at multiple levels of abstraction, ranging from the system level to the logic gates, for design entry, documentation, and verification.
- Python: An object-oriented and all-purpose coding language that can be used for software development as well as web development. In verification, it’s used for a variety of purposes, such as creating a script to automatically hardcode values in embedded C-code for testing purposes.
- Perl: Practical Extraction and Report Language is a programming language used for a script intended for syntax. It’s used to manipulate text and uses tasks, like web development, programming, and system administration.
Depending on which industry they work in, verification engineers need to know how to use a variety of verification tools. Here are some examples in the semiconductor industry:
- Frequency/spectrum analyzers: Measures the magnitude of an input signal versus frequency within the full frequency range of an instrument.
- Integrated circuit testers: Tests whether an integrated circuit is working appropriately. Engineers test ICs at two levels: wafer-level testing and package-level testing.
- Digital multimeters: An electronics diagnostic tool used to measure two or more electrical values, especially voltage (volts), current (amps), and resistance (ohms).
- Network analyzers: An instrument that measures the network parameters of an electrical network.
- Pressure sensors: A device that measures pressure and converts the pressure into an analog electrical signal.
- Protocol analyzers: A device used to capture and monitor data over a communication channel for debugging devices and bus failures in embedded systems.
If you’re looking to move into a verification engineer role, it’s a good idea to ensure you’re proficient at using the above tools and have the skills necessary to be successful in the job. To stay up to speed about other industry standards, trends, and tools of the trade, make sure you subscribe to our blog.