Digital IC interview experience and summary of interview questions (with test questions from major manufacturers)

foreword

In the field of microelectronics, it is more difficult for undergraduates to go out to do research and development, especially in large companies, which rarely recruit undergraduates to do research and development. At that step, I always felt a little guilty.

And as a student, when the big event of job hunting came, frankly speaking, I panicked.

At the beginning of the spring recruitment, after interviews and presentations by several companies, I found that there were still many shortcomings in my ability, which made me even less confident to choose the company I wanted.

But fortunately, I am still a bit self-motivated, and I can make up for what I lack. I immediately chose the IC Xiuzhen Institute of Xi’an Kochi Electronics for personal improvement. After all, I participated in the tree core project led by Academician Hao Yue of the Chinese Academy of Sciences, which is relatively reliable. .

At that time, I didn’t have too many ideas. I just went for the lecturers’ backgrounds. They were all industry giants from Intel and Huawei with more than ten years of experience in the industry, so the direction of the lectures was more practical than theoretical.

This is exactly what I needed at that time, to successfully transform learning thinking into working thinking, and to be familiar with the content and projects to be done in the work after mastering. In the end, I went through the whole process of tape-out in the training stage, which was a pleasant surprise.

After six months of study, I finally found a job that I am satisfied with. But ability belongs to ability, and interview belongs to interview. You will never know what kind of questions the interviewer will ask.

After going through countless written test interviews, I found that digital IC's written test interviews still have a lot in common and rules to follow. I hope my experience can save you some detours.

1. Preparation for the written test

The written test for digital IC verification is often the same set of written test questions as digital IC design, so compared to students with digital design experience, students who do verification still have a big disadvantage in the written test, but it is not irreparable.

Written test questions generally focus on the basics, but they are basically related to the most commonly used methods and ideas in digital IC design. The most frequently tested questions are:

(1) Cross-clock domain synchronization of signals. Including single-bit and multi-bit, it is most convenient to use two-level register synchronization for single-bit. For multiple bits, asynchronous FIFOs and handshaking methods are often investigated. To understand the concept of metastable state and the method of avoiding it.
(2) When it comes to metastable state, we have to talk about setup time and hold time. Be sure to master both clock constraints and methods for analyzing clock constraints. Clear four paths (input to output, input to register, register to register, register to output), and can find the critical path. The highest operating frequency is calculated.
(3) Analyze and repair setup time validation (reduce clock frequency, optimize or split combinational logic, increase operating voltage) and hold time validation (insert buffer, more difficult to repair) (4) Can use verilog to describe commonly used circuit structures, such
as : D flip-flop, counter, frequency division (odd multiple frequency division, even multiple frequency division, fractional frequency division (such as 1.5 times)), synchronous FIFO, asynchronous FIFO, sequence detector (FSM implementation) (5) described by
verilog The code or pseudo-code
(6) finds the errors in the verilog code, such as the signal is not synchronized across the clock domain, no else branch will generate an unexpected latch, and so on.
(7) Blocking, non-blocking assignment
(8) sv basis, including the difference between @signal trigger and wait (signal), event trigger, queue operation, task synchronous scheduling (fork ... join, fork ... join_any, fork ... join_none usage difference )
(9) Master some commonly used protocols, such as I2C (can be implemented with verilog according to the prompt), SRAM protocol, AMBA (AHB), AXI.
(10) What should be paid attention to when using asynchronous reset?
(11) Please draw the circuit structure of asynchronous reset and synchronous release:
(12) In the verification environment, how does C access and registers in dut, and how are they connected?
(13) Master some commonly used low power consumption methods, such as clock gating (can draw circuit structure diagram), understand DVFS, multi-threshold voltage technology, multi-voltage technology (14) Combination logic output needs to filter glitches through registers
. . .

2. Digital IC interview

Interview preparation:

Fully prepare self-introduction before the interview. For foreign companies, you can prepare an English self-introduction. It is best to be able to introduce the projects or topics you have done in English.

Then the most important thing is to fully prepare the content of your resume. The things written on the resume must be fully mastered by you. If there is a project, it is best to think of the questions that may be asked in all aspects of the project.

Another thing that is easily overlooked is that many people are not fully prepared for the reasons for choosing a job city. You must be able to give a very reasonable and convincing reason to convince the interviewer that you really want to work and live in that city. Show your sincerity, otherwise it will make the interviewer feel that you are only using them as a back-up offer.

Technical aspect:

If you have project experience, the interviewer is most concerned about whether you have a thorough understanding of the projects you have done. So the preparation before the interview is very important. Of course, this is based on your solid project experience. There are also interviewers who are not interested in your project experience, he/she may ask you some basic knowledge.

In most technical interviews, the interviewer will usually ask you if you have any questions at the end. It is best to prepare before the interview and prepare some questions about career development and job positions. Generally, do not mention salary and treatment in technical aspects, because this is the part that HR is responsible for.

Technical problems encountered:

  1. Let's talk briefly about what you're doing right now.
  2. Please tell us about your studies and projects at school.
  3. Please talk about your understanding of UVM verification methodology.
  4. Please talk about the relationship of UVM components.
  5. Give an example to talk about some common methods in UVM components.
  6. Please talk about the difference between virtual sequencer and sequencer, and why use virtual sequencer?
  7. Why are there sequence, sequencer, and driver, why should they be implemented separately? What are the benefits of doing this?
  8. Have you ever written an assertion? What are the types of assertions? Briefly describe the usage of assertion.
  9. Please describe the functionality of the modules you have tested.
  10. Are you familiar with fifo? Talk about how to judge the empty and full state of fifo?
  11. There are synchronous and asynchronous fifo, what is the difference between them?
  12. For an asynchronous fifo, how to deal with the synchronization problem when empty and full? What else can be done?
  13. Please talk about the idea of ​​verification, the difference between the thinking of verifiers and designers.
  14. What coverage will be considered in your project?
  15. Coverage generally does not directly reach 100%, what should you do when you find that there is a condition that has not been covered?
    16. Why try to avoid the use of absolute paths? How to avoid it?
  16. How to use interface in driver? Why?
  17. Do you understand the callback mechanism of UVM?
    19. How are the components of UVM organized and run, is it serial or parallel? If it is serial, what mechanism is used to realize the operation scheduling among the components?
    20. Verify an encryption module and a decryption module. If the data is encrypted first and then decrypted, if the input data is found to be the same as the output data, can you explain that there is no problem with the functional solutions of the two encryption and decryption modules? Why?
    21. When simulating a module, it is found that if the input is an address addr, the output of the dut is found to be the same address addr, but the output of the reference model is addr1. Please analyze what may be causing the problem? How would you go about it?

HR side:

Generally, after passing the technical aspect, at this time, you can understand all aspects of salary and benefits in detail, including questions about food, housing, transportation, etc. You can ask questions.

Try to think about the things you want to ask in advance to avoid unnecessary trouble and distress after you join the job.

last words

The competition in the IC industry is not considered fierce. Under the environment where all walks of life are introverted, those who make chips can concentrate on technology. (The premise is that your ability is sufficient)
Finally, I hope everyone can calm down. When you have enough ability, the success of the interview depends only on your own mentality and on-the-spot performance.

Guess you like

Origin blog.csdn.net/coachip/article/details/114287607