interview 4 Flashcards

(9 cards)

1
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What was the purpose of your RTL controller?

A

It controlled read and write operations to an OTP macro over an I²C interface. It managed command decoding, timing control, and ensured protocol correctness during OTP access cycles.

OTP is typically accessed during boot or calibration. Timing and command integrity are critical since OTP is not rewriteable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What types of operations did the controller support?

A

Basic commands included Read, Program, and optionally a Lock function. These were mapped to specific I²C instructions, decoded by the controller, and sequenced with respect to OTP timing constraints.

Program commands often require higher voltage or longer pulse timing. Lock disables future writes → irreversible → needs secure FSM logic.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What challenges did you face designing the FSM?

A

The main challenge was synchronizing I²C protocol stages (Start, Address, Data, Stop) with OTP timing – ensuring safe control even in presence of clock stretching or incomplete sequences.

Multi-stage FSM with clearly separated command and execution phases. State protection to avoid undefined write conditions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Why was I²C chosen for the interface?

A

It was a simple, low-pin-count interface suitable for configuring OTP in system initialization. It allowed integration with MCU or testbench infrastructure.

I²C is slow (typically ≤ 400kHz), so timing margins to OTP must be respected. Pull-up resistor sizing affects rise time – not just logic!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How did you test and verify the RTL block?

A

I built Verilog testbenches simulating I²C master traffic, covering valid and invalid sequences. I also added assertions for timing windows and FSM state transitions.

Mention FSM state coverage, bus protocol edge cases. If possible, name tools (ModelSim, Questa, UVM-style env).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What physical effects were relevant in this design?

A

Timing violations in OTP programming (e.g., pulse width too short) could lead to incomplete bit activation. I used timing counters and checked edge hold requirements.

OTP = antifuse or e-fuse → requires precise pulse energy. I²C bus: RC delays affect edge detection in slower corners.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Would you do anything differently today?

A

I would modularize the FSM and I²C interface more strictly, and integrate assertion-based verification from the beginning. Also, consider fault injection tests for partial programming failures.

Propose enhancements like ECC, bus timeouts, or self-checking states.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Why is this project relevant to your current goals?

A

It was a complete block-level design experience where I had to understand both digital control logic and underlying physical programming behavior. That combination is what I want to build further in design-focused roles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly