← Back to All Placements

Flavio Gazzetta

PMU Design Verification Intern

Apple
Swindon

Summary

The chip I worked on played the role of managing power, deciding what gets energy, how much, and when. Getting this wrong is expensive. Some mistakes can be worked around once the chip exists, though rarely in a cheap manner, and in many cases there is no workaround at all. My placement was at Apple on the team responsible for proving that the chip behaves exactly as its design intends, before any of it is built. The work is called digital design verification. You write tests that push a design into unusual situations, compare what it does against what it is supposed to do, and investigate every difference. It suits a particular mindset, because the goal is to prove yourself wrong rather than to confirm that things work. Over six months I moved from testing individual pieces of the design to owning the testing of several of them outright, and helped build a simulation environment that lets the team test more chip configurations than was previously possible. It was an extremely rewarding experience, and it confirmed that this is the kind of engineering I want to keep doing.

Role and Contributions

I was responsible for the testing of three separate parts of the chip along with certain parts of other chips. That meant deciding what needed to be tested, running those tests, investigating the failures, and being accountable for anything that was missed. Some features turned out to behave differently from their written description in a situation nobody had tested before, and in those cases I passed that back to the design team. My largest contribution was to the simulation environment itself. Two capabilities existed separately, and neither worked with the other. Combining them was a project that spanned a large fraction of the placement and produced a long run of failures with causes far removed from where they appeared. What made it work in the end was realising that many separate faults shared a small number of common origins, which let me replace a pile of individual fixes with one much simpler solution. The team can now test interactions that were previously out of reach.

Technical Skills

Industry standard verification methods and languages, simulation and debugging tools, source control, and analysis of test coverage. On the design side, an understanding of how power regulation circuits actually work, and how a large simulation environment models the boundary between the analog and digital parts of a chip.

Professional Skills

Judging what matters most when several pieces of work compete for attention. Knowing when a problem needs more effort and when it needs someone else's knowledge, and asking early rather than late. Explaining technical reasoning clearly enough that others can rely on it. Flagging delays before they become surprises, and supporting new team members as I was supported when I joined.

Tags

Hardware (Digital) Hardware (Analog)