Design & Verification Engineer

50+ Design & Verification Engineer Interview Questions and Answers

Updated 10 Nov 2024
search-icon

Q1. 1. XOR gate 2. How you compare two 4 bit numbers only using gates. 3. How to rotate the bits and what happens if you rotate 5 times etc like that

Ans.

Questions on XOR gate, comparing 4 bit numbers using gates and rotating bits.

  • XOR gate is a logical gate that outputs true only when the inputs differ.

  • To compare two 4 bit numbers using gates, we can use a combination of XOR, AND and OR gates.

  • To rotate bits, we can use shift registers or rotate registers.

  • If we rotate 5 times, the bits will rotate by 5 positions and the last 5 bits will become the first 5 bits.

Q2. Why $cast is used? Types of arrays

Ans.

The $cast operator is used to convert one data type to another. Types of arrays include fixed-size, dynamic, and multi-dimensional.

  • The $cast operator is commonly used in C++ to convert between data types.

  • Fixed-size arrays have a predetermined number of elements, while dynamic arrays can be resized during runtime.

  • Multi-dimensional arrays can have more than one index, such as a 2D array with rows and columns.

  • Arrays can also be declared as pointers, allowing for dynamic memory a...read more

Design & Verification Engineer Interview Questions and Answers for Freshers

illustration image

Q3. Explain setup time and hold time and what is the importance of setup time?

Ans.

Setup time and hold time are timing constraints in digital circuits to ensure proper operation of flip-flops.

  • Setup time is the minimum amount of time data must be stable before the clock edge for it to be reliably sampled.

  • Hold time is the minimum amount of time data must be stable after the clock edge for it to be reliably sampled.

  • Setup time violations can lead to metastability issues in flip-flops.

  • Hold time violations can lead to data corruption in flip-flops.

  • Setup time is i...read more

Q4. What is mux? What are the use of select lines in mux?

Ans.

A mux (multiplexer) is a digital circuit that selects one of multiple input signals and forwards it to a single output.

  • Mux is used to select one of multiple input signals based on the select lines.

  • The number of select lines determines the number of input signals that can be selected.

  • Common examples of mux include 2:1 mux, 4:1 mux, and 8:1 mux.

Are these interview questions helpful?

Q5. how to call an interface signal at sequence level in uvm?

Ans.

Interface signals can be called at sequence level in UVM using the uvm_config_db class.

  • Use uvm_config_db#(type)::set/get methods to access interface signals at sequence level

  • Register the interface signal in the configuration database before accessing it in the sequence

  • Example: uvm_config_db#(virtual interface)::set(null, "my_sequence", "my_interface", my_interface)

Q6. What is Arm advanced microcontroller based bus architecture?

Ans.

Arm advanced microcontroller based bus architecture is a high-performance, low-power bus architecture designed for Arm microcontrollers.

  • Designed for Arm microcontrollers to provide high performance and low power consumption

  • Supports advanced features like multiple bus masters, bus arbitration, and bus error handling

  • Commonly used in embedded systems and IoT devices

  • Examples include Arm Cortex-M series microcontrollers with AMBA bus architecture

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q7. What is Universal Asynchronous Receiver Transmitter?

Ans.

Universal Asynchronous Receiver Transmitter is a hardware device used for serial communication.

  • UART is commonly used for asynchronous communication between devices

  • It consists of a transmitter and a receiver

  • Data is sent in a serial format with start and stop bits

  • Common baud rates include 9600, 19200, 38400, etc.

Q8. What are the universal gates? Make Nand using Nor.

Ans.

Universal gates are gates which can be used to implement any other gate. NAND and NOR gates are examples of universal gates.

  • Universal gates can be used to implement any other gate in digital circuits.

  • NAND gate and NOR gate are examples of universal gates.

  • NAND gate can be constructed using NOR gates by applying De Morgan's theorem.

Design & Verification Engineer Jobs

IP Design Verification Engineer 5-10 years
Intel Technology India Pvt Ltd
4.2
Bangalore / Bengaluru
SoC Design Verification Engineer 8-13 years
Intel Technology India Pvt Ltd
4.2
Bangalore / Bengaluru
IP Design Verification Engineer 3-8 years
Intel Technology India Pvt Ltd
4.2
Bangalore / Bengaluru

Q9. What is sequential ckt ? What is flip flop?

Ans.

Sequential circuit is a type of digital circuit where the output depends not only on the present input but also on the history of the input.

  • Sequential circuit stores information about past inputs, unlike combinational circuits.

  • Flip flop is a basic building block of sequential circuits, used to store one bit of information.

  • Flip flops have two stable states (0 or 1) and are used for storing binary information.

  • Examples of flip flops include D flip flop, JK flip flop, and T flip ...read more

Q10. Project explanation makes a big impact

Ans.

Project explanation is crucial for understanding its impact and success.

  • Clear and concise project goals and objectives

  • Detailed project plan and timeline

  • Regular project updates and communication

  • Demonstration of project outcomes and achievements

  • Highlighting the impact of the project on the organization or industry

  • Providing evidence of successful project completion

Q11. how to driver is communicating with sequencer?

Ans.

The driver communicates with the sequencer through signals and interfaces.

  • Driver sends commands and data to the sequencer through communication interfaces like SPI, I2C, or UART.

  • Sequencer receives the commands and data, processes them, and generates appropriate responses.

  • Communication between driver and sequencer can also involve handshaking signals to ensure data integrity and synchronization.

Q12. What are blocking and non blocking assignments?

Ans.

Blocking assignments wait for the assigned value to be calculated before moving on to the next statement, while non-blocking assignments allow multiple assignments to occur simultaneously.

  • Blocking assignments use the = operator, while non-blocking assignments use the <= operator

  • Blocking assignments are executed sequentially in the order they appear in the code, while non-blocking assignments are executed concurrently

  • Blocking assignments are used for combinational logic, while...read more

Q13. Write FSM for following inputs? Input:00101213,01001203

Ans.

FSM for processing two input sequences

  • Define states for each digit in the input sequence

  • Transition between states based on current input and previous state

  • Handle invalid inputs or transitions with error state

Q14. Difference between verilog tb and system verilog tb

Ans.

Verilog tb is used for Verilog testbenches while SystemVerilog tb is used for SystemVerilog testbenches.

  • Verilog tb uses Verilog language for testbenches while SystemVerilog tb uses SystemVerilog language.

  • SystemVerilog tb provides more advanced features like classes, randomization, and coverage.

  • SystemVerilog tb allows for easier integration of verification components and reuse of code.

  • Verilog tb may require more manual coding for tasks that are automated in SystemVerilog tb.

Q15. Difference between copy and clone

Ans.

Copy creates a new reference to the same object while clone creates a new object with the same values.

  • Copy points to the same object while clone creates a new object

  • Copy is shallow while clone is deep

  • Copy is faster than clone

  • Copy is used for mutable objects while clone is used for immutable objects

Q16. System verilog-areays and its types, task and function

Ans.

SystemVerilog arrays are data structures that store multiple elements of the same data type. Tasks and functions are reusable blocks of code.

  • SystemVerilog arrays can be declared using the 'array' keyword, with different types like dynamic arrays, associative arrays, and queues.

  • Tasks are reusable blocks of code that can contain a sequence of statements and can be called multiple times within a module.

  • Functions are similar to tasks but return a value and can be used to perform ...read more

Q17. 4x4 matrix representation with diagonal elements are 5 multiples

Ans.

A 4x4 matrix with diagonal elements as multiples of 5.

  • Diagonal elements: [5, 10, 15, 20]

  • Non-diagonal elements can be any value

  • Example matrix: [[5, 2, 3, 4], [1, 10, 6, 7], [8, 9, 15, 11], [12, 13, 14, 20]]

Q18. Why we do Need Phases.

Ans.

Phases are needed to break down complex tasks into manageable parts, ensuring proper planning, execution, and tracking.

  • Phases help in proper planning and organization of tasks

  • Phases allow for better tracking of progress and milestones

  • Phases help in managing dependencies and resources effectively

  • Phases enable better communication and collaboration among team members

Q19. use uart protocol to solve a problem?

Ans.

UART protocol can be used to transmit and receive data between two devices.

  • UART can be used to communicate between a microcontroller and a computer

  • UART can be used to send and receive data between two microcontrollers

  • UART can be used to interface with sensors and actuators

  • UART can be used to implement a simple command/response protocol

  • UART can be used to implement a data logging system

Q20. What is the difference between MOSFET and bjt

Ans.

MOSFET and BJT are both types of transistors used in electronic circuits, but they differ in terms of construction, operation, and characteristics.

  • MOSFET stands for Metal-Oxide-Semiconductor Field-Effect Transistor, while BJT stands for Bipolar Junction Transistor.

  • MOSFET is a voltage-controlled device, while BJT is a current-controlled device.

  • MOSFET has a high input impedance and low output impedance, while BJT has a low input impedance and high output impedance.

  • MOSFET has a ...read more

Q21. use uart to receive signals from micrcontroller

Ans.

UART can be used to receive signals from a microcontroller.

  • Connect the UART pins of the microcontroller to the UART pins of the receiving device.

  • Configure the UART settings such as baud rate, parity, and stop bits.

  • Use a UART library or write code to read the incoming data from the UART buffer.

  • Process the received data as required by the application.

Q22. What is factory override in UVM?

Ans.

Factory override in UVM allows users to replace default factory methods with custom implementations.

  • Factory override is used to customize the behavior of UVM components without modifying the original source code.

  • It allows users to replace default factory methods with custom implementations to meet specific requirements.

  • Factory override can be useful for debugging, testing, or adding new features to existing UVM components.

  • Example: Overriding the default create method in a UVM...read more

Q23. What is digital electronics

Ans.

Digital electronics is a branch of electronics that deals with digital signals and systems.

  • Deals with discrete values (0s and 1s)

  • Utilizes logic gates to process digital signals

  • Used in computers, smartphones, digital cameras, etc.

  • Digital circuits can be easily replicated and manipulated

Q24. 1) Explain flipflops 2) UVM Architecture 3)constraints

Ans.

Flip-flops are sequential logic circuits used to store and manipulate binary data.

  • Flip-flops are basic building blocks of digital circuits.

  • They can store a single bit of information, either 0 or 1.

  • Flip-flops have two stable states: set and reset.

  • They are used to store and transfer data in sequential circuits.

  • Examples of flip-flops include D flip-flop, JK flip-flop, and T flip-flop.

Q25. Task to write 50 transactions to a memory

Ans.

Writing 50 transactions to a memory task

  • Use a loop to iterate 50 times and write each transaction to the memory

  • Ensure each transaction is unique and properly formatted

  • Verify the transactions after writing them to the memory

Q26. What are synthesizable constructs ?

Ans.

Synthesizable constructs are hardware description language (HDL) constructs that can be translated directly into hardware logic by a synthesis tool.

  • Synthesizable constructs are used in hardware description languages like Verilog and VHDL.

  • They describe the behavior and structure of digital circuits.

  • Examples include flip-flops, multiplexers, adders, and registers.

  • Non-synthesizable constructs include delays, file I/O, and tasks.

  • Synthesis tools convert synthesizable constructs in...read more

Q27. What is m_sequencer and p_sequencer?

Ans.

m_sequencer and p_sequencer are components used in design and verification for sequencing operations.

  • m_sequencer and p_sequencer are commonly used in digital design for controlling the sequence of operations.

  • m_sequencer typically refers to a master sequencer, while p_sequencer refers to a peripheral sequencer.

  • These components are often used in verification environments to ensure proper sequencing of events.

  • For example, m_sequencer may control the overall flow of a testbench, ...read more

Q28. difference between dynamic and associative array.

Ans.

Dynamic arrays can change size during execution, while associative arrays use keys to access elements.

  • Dynamic arrays in SystemVerilog are declared using [] and can change size during simulation.

  • Associative arrays use keys to access elements, like a dictionary in Python.

  • Dynamic arrays are indexed by integers, while associative arrays are indexed by strings or other data types.

Q29. What is the call back in UVM?

Ans.

A call back in UVM is a mechanism used to notify a component about a specific event or condition.

  • A call back is defined using a function or task in the UVM component.

  • It is registered with the UVM framework to be executed when a certain event occurs.

  • Call backs are commonly used for handling events like transaction completion or error detection.

Q30. What is Metastability?

Ans.

Metastability is a phenomenon in digital circuits where a flip-flop enters an undefined state due to timing violations.

  • Occurs when a flip-flop samples an input signal at a time when it is transitioning between logic levels

  • Can lead to unpredictable output and potentially cause system failures

  • Can be mitigated by using synchronization techniques such as double or triple flopping

  • Common in high-speed digital designs

Q31. Explain Project Test Case

Ans.

Project test case is a specific scenario or condition to be tested in a project to ensure its functionality and performance.

  • Project test cases are designed to validate the functionality of a specific feature or requirement.

  • They include inputs, actions, and expected outcomes for testing.

  • Test cases help in identifying defects and ensuring the quality of the project.

  • Examples: testing login functionality, testing data validation, testing error handling.

Q32. Design an and gate using 2:1 mux

Ans.

An AND gate can be designed using a 2:1 multiplexer by connecting one input to select line and the other input to the data input.

  • Connect one input of the AND gate to the select line of the 2:1 mux

  • Connect the other input of the AND gate to the data input of the 2:1 mux

  • The output of the 2:1 mux will be the output of the AND gate

Q33. Design an xor gate using 2:1 muz

Ans.

An XOR gate can be designed using a 2:1 MUX by connecting the inputs to the select lines and the outputs to the data inputs.

  • Connect one input of the XOR gate to the select line of the MUX

  • Connect the other input of the XOR gate to the inverted select line of the MUX

  • Connect the outputs of the MUX to the XOR gate's output

Q34. What is verilog code of d-ff

Ans.

D flip-flop (D-FF) verilog code stores data on the rising edge of the clock signal.

  • Use always block to describe the behavior of the D-FF

  • Use a positive edge-triggered clock signal to update the output

  • Assign the output to the input data when the clock signal rises

Q35. How uvm methodology is useful

Ans.

UVM methodology is useful for creating reusable, scalable, and efficient verification environments in SystemVerilog.

  • UVM provides a standardized methodology for creating verification environments in SystemVerilog

  • It promotes reusability of verification components such as testbenches, sequences, and drivers

  • UVM helps in achieving better coverage closure and improves verification productivity

  • It enables easier debugging and tracking of issues in the verification environment

  • UVM faci...read more

Q36. What is MOSFET ?

Ans.

MOSFET stands for Metal-Oxide-Semiconductor Field-Effect Transistor, a type of transistor used in electronic devices.

  • MOSFET is a type of field-effect transistor that is commonly used in integrated circuits.

  • It consists of a metal gate electrode separated from the semiconductor by a thin insulating layer of oxide.

  • MOSFETs are used for amplifying or switching electronic signals in devices like computers, smartphones, and power amplifiers.

Q37. What is OP-AMP?

Ans.

OP-AMP stands for Operational Amplifier, a type of electronic amplifier with two inputs and one output.

  • OP-AMP is a high-gain electronic voltage amplifier with differential inputs.

  • It is commonly used in analog circuits for signal processing, filtering, and mathematical operations.

  • OP-AMPs have a wide range of applications including audio amplifiers, instrumentation amplifiers, and voltage comparators.

Q38. Design a 8:1 mux using 3 to 8 decoder

Ans.

Use a 3 to 8 decoder to design an 8:1 mux.

  • Connect the inputs of the 3 to 8 decoder to the select lines of the mux.

  • Use the outputs of the decoder as the control signals for the mux.

  • Connect the data inputs of the mux to the corresponding outputs of the decoder.

Q39. Difference between task and function

Ans.

Tasks are parallel processes that can run concurrently, while functions are sequential and return a value.

  • Tasks can run concurrently, while functions run sequentially

  • Tasks do not return a value, functions do

  • Tasks are defined using the 'task' keyword in Verilog, functions using the 'function' keyword

Q40. Diff bw latches and ff

Ans.

Latches are level-sensitive while flip-flops are edge-triggered. Flip-flops have a clock input while latches do not.

  • Latches are level-sensitive, meaning the output changes as long as the enable signal is active.

  • Flip-flops are edge-triggered, meaning the output changes only on the rising or falling edge of the clock signal.

  • Flip-flops have a clock input which latches do not have.

  • Latches are faster but consume more power compared to flip-flops.

  • Example of latches: SR latch, D lat...read more

Q41. Explain UVM Phase

Ans.

UVM Phase is a specific stage in the Universal Verification Methodology used in verification of digital designs.

  • UVM Phase is a part of the UVM methodology used in SystemVerilog for verification.

  • It helps in organizing and controlling the verification process by dividing it into different stages.

  • Examples of UVM phases include build, connect, run, and cleanup phases.

Q42. test bench environment for fifo

Ans.

Test bench environment for FIFO involves creating stimuli to test the functionality of a FIFO design.

  • Create stimulus to write data into the FIFO

  • Create stimulus to read data from the FIFO

  • Implement checks to verify data integrity and order

  • Randomize data inputs to test different scenarios

  • Monitor FIFO status signals for debugging

Q43. Difference between mealy and moore

Ans.

Mealy machines have outputs that depend on both present state and input, while Moore machines have outputs that depend only on present state.

  • Mealy machines have outputs that change asynchronously with input changes

  • Moore machines have outputs that change synchronously with state changes

  • Mealy machines have fewer states compared to Moore machines

  • Example: Traffic light controller is a Mealy machine as the output changes based on both current state and input (traffic conditions)

  • Ex...read more

Q44. Difference between latch and flipflops

Ans.

Latches are level-sensitive while flip-flops are edge-triggered. Flip-flops have a clock input while latches do not.

  • Latches are level-sensitive, meaning the output changes as long as the enable signal is active. Flip-flops are edge-triggered, changing only on the rising or falling edge of the clock signal.

  • Flip-flops have a clock input which controls when the output changes, while latches do not have a clock input.

  • Latches are simpler in design and faster, but can be prone to g...read more

Q45. Expected CTC and Preferred Location

Ans.

Expected CTC and preferred location are important factors to consider in a job interview.

  • Expected CTC refers to the salary or compensation package the candidate is expecting from the job.

  • Preferred location indicates the geographical area where the candidate would like to work.

  • These factors help the employer assess if the candidate's expectations align with the company's budget and location requirements.

  • Candidates should research industry standards and consider their experienc...read more

Q46. and gate code in behavioral

Ans.

Implementing an AND gate in behavioral code

  • Use if statements to check if both inputs are high

  • Assign the output to high if both inputs are high

  • Use Verilog or VHDL syntax depending on the language being used

Q47. difference between Ff &amp; latch

Ans.

FF is edge-triggered, stores data on clock edge. Latch is level-sensitive, stores data as long as enable signal is active.

  • FF stores data on clock edge, latch stores data as long as enable signal is active

  • FF has two stable states (0 or 1), latch has one stable state (depends on enable signal)

  • FF is used for sequential circuits, latch is used for level-sensitive circuits

  • Example: D flip-flop (FF) vs SR latch

Q48. Explain task and functions?

Ans.

Tasks and functions refer to the specific responsibilities and roles assigned to an individual within a job or project.

  • Tasks are specific actions or activities that need to be completed within a certain timeframe.

  • Functions are broader roles or responsibilities that encompass multiple tasks and contribute to the overall goal.

  • Examples of tasks include writing test cases, debugging code, and creating design specifications.

  • Examples of functions include leading a team, coordinatin...read more

Q49. Plans for the future?

Ans.

I plan to continue advancing my skills in design verification engineering and eventually move into a leadership role.

  • Continue taking relevant courses and certifications to stay updated on industry trends

  • Seek opportunities to lead projects and teams to gain leadership experience

  • Network with professionals in the field to learn from their experiences and insights

Q50. write code randc behaviour

Ans.

randc behavior generates random complex numbers with specified distribution

  • Use randc to generate random complex numbers

  • Specify distribution using arguments like mean, variance, etc.

  • Example: randc(10, 1, 2) generates 10 random complex numbers with mean 1 and variance 2

1
2
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.7
 • 5.6k Interviews
3.9
 • 88 Interviews
4.3
 • 4 Interviews
View all

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

Design & Verification Engineer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter