Tech, ExplainedSemiconductors and devices
Part

Hardware emulation

Running software on a chip that does not exist yet.

INSIDE: ELECTRONIC DESIGN AUTOMATION (EDA)HOW IT WORKS · A PHONE CHIP'S MODEM, RUNNING A YEAR EARLY IN CHENNAIThe chip'sdesign iscompiled ontothe emulator inseveral hoursThe emulatorruns the chip atabout 1.5million clockcycles a secondAndroid bootsin about 7hours insteadof 20 secondsTest radiosignals areplayed in; onday 3 the modemfreezes during atower handoverRecordedinternal signalsshow a hardwarecounteroverflowingDesigners fix itbefore tape-outALSO TALKS TOChip design verificationFPGAs and precision timing↗ TELECOM NETWORKSEmbedded system simulation↗ EMBEDDED SOFTWAREINSIDE: ELECTRONIC DESIGN AUTOMATION (EDA)HOW IT WORKS · A PHONE CHIP'S MODEM, RUNNING AYEAR EARLY IN CHENNAIThe chip's design iscompiled onto theemulator in several hoursThe emulator runs thechip at about 1.5 millionclock cycles a secondAndroid bootsin about 7 hoursinstead of 20 secondsTest radio signals areplayed in; on day 3 themodem freezes during atower handoverRecorded internalsignals show a hardwarecounter overflowingDesigners fix itbefore tape-outALSO TALKS TOChip design verificationFPGAs and precision timing↗ TELECOM NETWORKSEmbedded system simulation↗ EMBEDDED SOFTWAREINSIDE: ELECTRONIC DESIGN AUTOMATION(EDA) · A PHONE CHIP'S MODEM,RUNNING A YEAR EARLY IN CHENNAIThe chip's design is compiled onto theemulator in several hours↓The emulator runs the chip at about 1.5million clock cycles a second↓Android boots in about 7 hours instead of20 seconds↓Test radio signals are playedin; on day 3 the modem freezesduring a tower handover↓Recorded internal signals show a hardwarecounter overflowing↓Designers fix it before tape-outALSO TALKS TOChip design verificationFPGAs and precision timing↗ TELECOM NETWORKSEmbedded system simulation↗ EMBEDDED SOFTWARE
A phone chip's modem block compiled onto an emulator a year before the chip exists, booting Android in about 7 hours and revealing a hardware counter that overflows during a tower handover.
opens a page inside this one a page in the same scene a page in another scene a concept page a label only, with no page

Hardware emulation is the use of special machines that imitate a whole chip, so that engineers can run real software on it months before the chip exists. The machine is called an emulator. It is a large, cabinet-sized system built from thousands of programmable chips. These are either custom processors or FPGAs, field-programmable gate arrays, which are chips whose circuits can be rewired after they are made.

Why is it needed? In chip design verification, engineers run the design in a simulator, a program on ordinary servers. A simulator shows every signal inside the chip, but it is slow. A full phone chip in simulation may advance only a few hundred clock cycles each second, where the real chip runs billions. At that speed, starting an operating system would take years. An emulator loads the chip's design into its own hardware, which then behaves like the chip's circuits. It runs thousands of times faster than a simulator, though still far slower than the real chip.

Say a team in Chennai is building the modem block of a phone chip. The modem is the part that connects the phone to the 4G and 5G network. The chip will not come back from the factory for another year, but the software team must be ready on the day it arrives. So the design is compiled onto an emulator, which takes several hours. The emulator then runs the chip at about 1.5 million clock cycles a second. The software team starts Android on it. Booting takes about 7 hours instead of 20 seconds. Then the team plays test radio signals into the modem from a test box connected to the emulator. On the third day, the modem's software stops responding when the signal moves from one tower to another. The emulator has recorded every signal inside the chip around that moment. From the recording, the engineers find that a counter in the hardware overflows. No test of the modem block on its own had caught it. The designers fix it before tape-out, the moment the final design goes to the factory.

Emulators cost crores of rupees each. So a company shares a few among many teams and books them by the hour. A related method, FPGA prototyping, loads the design onto a board of FPGAs. It runs faster than an emulator, but it takes longer to set up and shows less of what happens inside the chip. The page on FPGAs and precision timing explains these chips. Software makers can also test their code on a purely software copy of a device, through embedded system simulation. That is quicker to start, but it does not test the chip's real circuits.

Emulators are sold by the two leading electronic design automation (EDA) companies, along with their design software. A system-on-chip (SoC) for a smartphone is a typical design that needs one.

Tech, Explained is a part of ingrid.fyi. Every page explains one piece of technology in plain words.