EMBITEL
1. How is various C, ASM, and SV are connected in the system. How do they understand or establish
synchronization between each of them. What is the mechanism behind all these?
2. What is the debug procedure followed in AMD. How verification engineers approach/debug any issue.
2. TCS
Verilog Questions:
3. Can we write Task inside a function or can we write function inside a task?
System Verilog:
3. How are drivers & generators connected; how does a driver interact with DUT. Expectations: Exact
explanation in terms of code
4. Arent mailboxes used between Drivers & DUT? What is the usage of Mailboxes?
5. How do you instantiate/connect different modules inside interfaces. Expectation: Coding details.
Project Related:
2. What is the extra aspect which comes in SOC level apart from what is done in IP level?
3. Explain packet structure in UART. What is that data packet comprises?
7. What is the differences between functional & Code coverages? What is the significance of EACH?
9. How does a module level TC varies from a system level test cases? What is added extra in that?
3. Wipro Technologies
1. Can we randomize a variable without declaring the variable as rand. If yes how to do it?
2. What are the SV constructs/OOPS concepts used in your current (BMS) project? Expectation:
Polymorphism, Inheritance..
1. Write a clock generator code with period 5 ns (its not 10ns)? Also after few cycles of clock the clock
should be 0 for 50ns and then the generation should keep going normally I wrote initial forever
inside forever some external clock stop signal (wait for 50ns)& again forever continues.
2. Write a C function which takes an array of integers using pointer/reference, arrange/swap them and
gives back the array to calling function.
3. What are the differences between tasks & function in Verilog? Where, when, which is used?
4. AXI: A) What are the Burst modes, Cacheable property, protection modes, and Slave responses?B)
When the master gives size, length its pre know that when the last byte is transferred, but still why
there is a special signal called LAST? What is its significance?
5. I2C: How the two masters competing amongst them take control of Bus?
Once a Master establishes connection, Can another master steal control from established connection or
will it wait for the transaction completion? If so how is done? Definitely it cant wait wait till the 1st
master transfer completion since it may take unnecessary long time, other might be very urgent also.
4. INFOTECH SERVICES
Project Related:
2. Given a DUT which is a black box: How would you verify? Brief all the Steps Will check the spec,
note down verification points, come up will test plan, test plan should be extensive, check if all covered.
3. AXI: What is the special feature of AXI protocol? Why specifically it is used? List the advantages &
all the features of AXI.
A) How wrap around address is calculated? Is there any specific calculations/procedure for it?
B) All funda questions: Error signals, responses, Burst modes.
C) Why we need to use fixed address mode Targeting address of a peripherals.
SYSTEM VERILOG:
1. What are the data types which allow all the four states he gave a clue to remember RIL Reg,
Integer, and Logic?
2. Similarly, data types which allow unsigned values BLR Bit, Logic, Reg.
3. What are the differences between logic & reg? Both are same except that logic to facilitate
multiple ways of driving. It can be used in both procedural (initial) & continuous (assign) statements.
4. Difference between program & modules almost both are same just for clarity purpose & also
major difference is in program block always are not allowed.
What is the work around for always in program block forever inside initial blocks.
5. Regions of execution in SV? Active, Inactive, NBA, prepone, postpone, bla bla.. some 7 stages.
VERILOG:
General Questions:
Methodology:
3. What is the difference between SV & Verilog in terms of stages of simulation? In Verilog we
compile every time we load/run a new testcase (only alternative is if we happened to load memory/data
to be written via back door only this is to avoid entire compilation repetitively). But in SV we need not
have to compile everything every-time. TB is compiled once & done (needs to check on this).
System Verilog:
Project Related:
2. Where is the test code loaded? How is it fetched? Its loaded in microprocessor memory.
3. How are the different components C, ASM, SV interacts/sync up with each other? Expln Mechanism
Verilog:
2. What is #5? Which is the parameter for this 1st or 2nd parameter?
Project:
4. Assume some DUT: how can we develop the environment? Expectations were regarding
environmental components like: Driver, Generator & checkers.
5. How is the connection between generator & driver? How are the data put exactly? What is the exact
flow?
7. Who will call generators (if it is a separate module)? How is it taken across, exact flow details?
8. Where in which module checker (scoreboard) functional coverage block is inserted? How is it done?
9. How do you tap data is it @ input/output/immediately over the DUT or where else?
10. How did you write assertions for Pin Muxing block?
System Verilog:
1. Write a class for packet: 1.Good 2. Bad. In Good again subdivision: 1. Short. 2. Long. Again Short has 1.
Addr: 0-100. 2. Addr: 1:155. While Long(one hierarchy up): Address: 200 300. And Bad: Addr: FF
3. How you write functional coverage for the above block? Where will you insert functional coverage in
the TB environment?
5. Explain the complete SV project flow Drivers, generators, scoreboards. How are they connected?
AXI:
Miscellaneous:
3. How is the swapping between SV, C, ASM, Memory handlers done in a SOC.
7. ST Ericsson
Project:
3. In Phoenix, if all the functions are in C, how will you display the result in log files? Intent: Log files
display works for Verilog $display, how will you pass data from C files to Verilog
4. SN2025, How did you ensured that timing parameters like break, ones, zero are detected in the
testbench? Since all are timing related, how did you ensured its correctness?
6. What are the coverages block written, which is important in IP based & which is important in SOC?
Methodology:
System Verilog:
Miscellaneous:
1. What is State Machine? Write a SM for a BULB in a room, for each person swiping bulb should be on,
on all the members in the room logged out, bulb should be switched off.
Ans: So initial, reset state. S1 In count ++, stay in same state till IN, S2 on Out, count --, count = 0 go
to initial state & switch off
Second Round
Project:
Ans: First the Control goes to RAM default location then look for the boot mode security if it satisfies
then only it proceed further (security ensured) clocks are determined 1st, PLLs are enabled and clock
generated thats how clock is supplied to every model all the peripherals are initialised via booting
peripheral (externally/internally) which its gonna be booted is determined by a specific register
read that boot up sequence and proceed control finally comes to the testcase where it behaves
exactly as per intent.
4. How the high level code is exactly understood by the processor? Are we feeding finally feeding ones &
zeroes or ASM code to processor.
6. Explain the testbench environment arround the SOC DUT, explain everything like BFM, how was the
scoreboard implemented.
8. What is the difference between differnet types of coverages? Why do we need all of that?
Miscellaneous:
1. Write a state machine for detecting Red Blue Yellow objects coming in a trolley and once the
sequence in order pack it and keep aside.
2. How many states required, what is the minimum requirement. Bla..bla.. write pseudo code.
8. WaferSpace Technologies
Methodology:
1. How will you implement, multiple put (one drives USB packets & other PCIE packets) and what will
the implementation part contains? There can be only 1 put implementation, how will you manage two
put implementation? Case is Multiple drivers, how is the synchronization done between two?
Ans: Using TLM Fifo one method, something called put_** feature is there in UVM check out.
2. Why super.build () is used? If you extend the class, automatically everything comes in child class, what
is the need for including base class elements?
System Verilog:
2. If a packet with Addr, ID, data is there? Declaring packet pac[$]; how will you find a particular element
using ID = 0? Can you write a logic/function for doing so?
Packet good or bad; if good RD or WR; on Rd addr: 0-ff, WR - !Rd. If Bad - Idle 00, 04.
4. Functional coverage code for: two bits interrupt signals Int1 & Int2 generating from an interrupts.
Verilog:
2. What is the output of this & why so? Always @ (posedge clk); a = 1; a <= 0; $dispaly(a);
Miscellaneous:
9. Samsung
AXI:
1. Explain the wrap around address for a 16 bit data bus, if the start address is 0x1000; what would be
the WRAP4, WRAP8 address complete sequence of address if we are to transfer 32 bytes.
3. How the exclusive operation is set up, who is giving Exclusive command master/slave, how is it
coming out of this mode?
4. In exclusive mode, can another master try for another exclusive mode to another slave? Can it
attempt to same slave? Since AXI supports multi-master scenarios.
5. When will the response come in AXI? Is it for each transfer or burst, how is it?
1. Questions on Coverage, bins, how are you gonna get cross coverage.
2. What are SV Call backs? Where it used & what are its advantages?
4. What is the necessity/reason behind separate functional coverage & code coverage?
Miscellaneous:
1. Memory whose address are shorted, how are you going find the bug explain the verification
strategy.
Ex: If your writing & read from location 5; it will read from location 6 how are you gonna detect.
Ans: Something like keep writing & reading incremental data to incremental addresses.
Methodology:
Project:
1. How would you conclude that you have done 100% feature extraction? How would you know that you
have extracted all features without missing out any?
2. 90% code coverage vs 100% functional coverage is it better? OR 90% functional coverage vs 100%
code coverage??
4. Difference between different coverage & what is what & where itsused?
System Verilog:
Project:
1. How you will decide the frequency @ which a system has to work?
System Verilog:
1. Tasks having three inputs (A1, A2, A3), same task with (B1, B2, B3) and another (C1, C2, C3) all used in
fork...join; will it be a problem, if so what, how can it be resolved?
Ans: All the task being a static occupies same memory; if declare automatic it would be possible.
Verilog:
1.What is the difference in $display & $monitor in blocking & non-blocking events?
1. Though we run a simulation in verification, they might again fail in GLS, what are the possible
reasons?
Ans: Gate delays, X propagations, Latch inferences, coding error not following guidelines.
Miscellaneous:
1. What is the minimum Fifo Depth required for a simple fifo with 80writes/100 clock cycles & 8
reads/10 clock cycles. Assume same clock used & both read & write happens at the same time.
Ans: For 80 writes/ 100 clock cycles can be understood as lets say 1st 20 cycles nothing is done & the
remaining 80 clock cycles continuously 80 writes happen.
1st 20 clock cycles no read as Fifo is empty. Next 80 cycles only 64 reads can happen & still 16 bytes are
remaining; so we need a minimum fifo depth of = 16 as a worst scenario.
B) Going further: 21 180 clock cycles continuous writes are happening, so what is fifo depth?
21 180 = 160 writes can happen, while only 64+64=128 reads can be done, so we need a minimum fifo
depth of 160-128 = 32
2. 500 coins Head faced is placed on a table facing HEAD, 500 children are let in one by one... 1st child
flips down all the coins to tail, 2nd child flips whatever is existing for 2, 4, 8 even series, 3rd child flips 3,
6, 9. 4th child flips 4, 8, 12. 5th child flips 5, 10, 15 and so on while 500th child is left with only
flipping 500th coin. How many coins will be flipped in final?
Ans: Break the problem into simpler sample of 10 coins & 10 children. Mark the flips done by each child
to the corresponding corresponding coin.Coins with odd flips are the one who are gonna be TAILs &
coins with even multiples will remain HEAD oly. So by the end of 10 iterations..coins 1, 4, 9 are gonna be
TAIL rest all HEADS.
So, expanding to original sample. 1, 4, 9 are the squares 1square, 2 square, 3square..
Accordingly only square numbers are to be flipped. So, total of 22 coins will be flipped to TAIL rest all
will be HEADS.
Face 2 Faces:
Round 2:
3. Derive swapping of two variables without using external variable; using logical operators.
5. Calculate the depth for FIFO: Read @ 20MHZ, Write @ 30MHz with 8 bit data size.
Round 3
Example: struct {int a=20, int b=30} v/s union {int a=20, int b=30}. If you use display statements, what
would be displayed? How is the memory assigned?
2.Write a function which generates fibinocii; which called whenever should display next series.
Catch: here is there has to be STATIC variables declared inside function; such that any point of time its
called it should have values of last fib value displayed & previous to that also.
4. Write assertions for I2C: Start (high Low) 8 data bits Ack.
Hint: you can neglect 8 bits mentioning as [7:0] time delay, need not have to track the bit values. If @ all
you have to know bits you gotta call another assertion separately.
Round 4
1. Explain the OVM environment of the project, with complete block diagram.
3. What is to be used between multiple clock domains. Ans: Not expected Buffer/Fifo but Synchronizer.
What is the digital circuit for that? How is it working?
4. Write a digital circuit realization of 000 111 using FSM, sort of up-counter using Flip-flops.
5. There is a memory model for 4GB, what type of data type you would use in SV? Dynamic array or
associate array or queue or static array? Which one is more appropriate and why is it best?
What if it is in C language/PLI?
7. If code coverage of 50% & Functional 90% - how would you infer & what should be done?
8. If Functional coverage is 50% &code coverage is 90% - how would you infer & what should be done?
Round 5: