Team: Internal IP DV Team
4 round and a 15 min debrief with recruiter
ROUND 1: problem solving and coding
- General intro. The guy was with about 3 years of experience. I think he was there just to ask questions and then someone would later review the coderpad to judge me.
- Gave the following question to design a reg file. It was a long and confusing question so I took a screenshot of it after the interview. Hence, pasting it as it is:
// Implement a programmable bitwidth, 32-word 2-read 1-write (2R1W) register
// file (RF).
//
//•The RF has 32 entries, each of which being a DATA_WIDTH-bit•binary word.
// The input-word-din•is written•to•one•of•the•entries•of.the RF•by.using•the // write address port-wadl and asserting•signal-wen1.•Entries•are-read-from
/ the RF by selecting• the addresses and asserting• the ren1•and/or-ren2 //•signals.•The RF must-support up•to three operations per clock cycle, that // is, two reads and one write; no operations• (NOP), one, and two• operations //•must•be also-supported.
//
//•The default value•of both dout1•and dout2 is zero.•If, at the rising edge //•of.the clock, one of the read-enable ports is deasserted, then it.is
// expected that its respective data-output port•produces the default-value //• (zero).••If.one•tries to read•from.an•address•that-has never-been written.to,
// then•dout1 and/or dout2•produce zero.
//
// RF's output•port•collision•=•1 when at•least.two•out•of-three-input
// addresses are•equal,
█████████████████
███████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
██████████████████
█████████████████
███████████████
████████████████████████
████████████████████
███████████████████████████
████████████████████████████████
████████████████████████████████
█████████████████████████
██████████████████████
█████████████████
███████████████
███████████████████████████
████████████████████████████
███████████████████
█████████████████
███████████████████████████████████████████████
██████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████
██████████████████████████████████
█████████████████████████████████████████████████████████████
██████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████
██████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████
████████████████
█████████████████████████████████████████████████████████████
████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
██████████████████████
████████████████████████████████████████████████████████████████
███████████████
██████████████████████████████████████████████████████
███████████████
█████████████████████████████████████████████████████████████████
████████████████████████
██████████████████████████████████
█████████████████████████
█████████████████████████████████████████████████
███████████████████████████████████
█████████████████████████████████
██████████████████████████████████████████████
████████████████████████████████████████████████
███████████████████████████████████████████████
███████████████████████████████████████████████
██████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████
███████████████████████████
████████████████████
███████████████████████████████
████████████████████████████████████████████████
█████████████████████████████████████████████████████████████████
████████████████████████████████
█████████████████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████