45 minutes total.
It started with introducing the work on my resume — I talked about an IP block I designed myself. While I was talking he kept nodding, and I thought the first round was going pretty smoothly.
Then he started asking some technical questions. Since I mentioned different synchronizers partway through, he asked why you'd use different synchronizers (2-stage FF, edge detect, async FIFO, handshake). I answered that it's because the two sides have different clock frequencies — if you simply use a 2-stage FF you might miss the request.
After that he asked what warnings and errors you get when running lint, like treat as black box, comb loop, LHS RHS not equal length (this one's a warning) — that's what I remembered at the time.
Then he asked: suppose you don't have much technical progress — say no breakthrough in process node and no technical innovation — and you still need higher performance, what would you do. I didn't really have a good answer at the time. Actually this question was about PPA — he asked me about the adder question from college, carry-ripple adder vs mux-select adder — mux-select adder needs a bigger area but is faster, so it's basically asking about the trade-off.
Then came the classic "do you have any questions" part. I asked what version control system they use, whether there's any training, how different teams interact with each other — apparently Apple cares a lot about privacy, so other teams can't really understand what other teams are working on :)
Discussion
Loading comments…