Definition
The Zynq SoC is a family of system-on-chip devices from Xilinx (now part of AMD) that fuses a dual-core ARM Cortex-A9 "processing system" with Artix-7-class FPGA "programmable logic" on a single die. Bitmain selected the low-cost Zynq-7000 line as the controller for a long run of Antminer control boards spanning the S9 through S17 generations, and in our repair experience it is the single most important chip to identify before any board-level work.
Why a hybrid chip?
Mining controllers need two things at once: a general-purpose CPU to run embedded Linux, the web UI, and the pool/Stratum networking stack; and fast, deterministic I/O to stream work to and from dozens of hashing ASICs. The Cortex-A9 cores handle the former, while the FPGA fabric implements the high-speed serial links to the hashboards. Putting both on one SoC keeps the control board small, cheap, and power-efficient.
The silicon in detail
The common Antminer part is the Zynq 7010 (XC7Z010): two Cortex-A9 cores at 667 MHz (a frequently misquoted number — it is not 700), an Artix-7 fabric of roughly 28K logic elements, 256 MB of DDR3, and 256 MB of NAND flash (typically a Winbond W29N02GZ). Critically, the CPU does not talk to the hashboards directly: the FPGA fabric implements UART IP cores with work and command FIFOs, and data flows CPU → AXI bus → FPGA FIFOs → level shifters → the 18-pin ribbon connector of each of the three hashboard chains. That is why a control board with perfectly healthy Linux can still fail to see any chips if the FPGA bitstream or the level shifters are damaged — and why "CPU alive, chips absent" points at the fabric side of the chip, not the cores.
Boot chain and firmware security
The Zynq boots through a fixed chain: on-die BootROM reads the boot-mode pins, loads the First Stage Boot Loader from BOOT.bin, which configures the FPGA bitstream and hands off to U-Boot, which loads the kernel, device tree, and ramdisk from NAND. Bitmain's stock firmware lays the 256 MB NAND out as eight partitions: mtd0 (40 MB) holds BOOT.bin and the kernel, RSA-verified; mtd1 (32 MB) holds the ramdisk, SHA256-verified and the usual replacement point for custom firmware; and mtd3 (2 MB) holds the signature data that firmware-unlock procedures patch. Understanding this layout is the difference between a clean custom-firmware install and a brick.
Recovery and repair
Because the Zynq boots from on-board NAND flash, a corrupted firmware write can leave the SoC unable to boot — the classic "bricked control board." The escape hatch is built in: a jumper (J3 on common boards) switches the boot source to SD card, letting you boot a recovery image and rewrite the NAND; the serial UART console exposed on the board shows the boot chain's output and tells you exactly which stage is failing — silence points at BootROM or a dead supply, FSBL messages that stop point at the bitstream or DDR, and a kernel panic points at the NAND image. Open-source firmware runs on the same Zynq silicon, which is why a single control board can host stock or custom firmware without hardware changes — and why these boards remain among the most rescuable in mining. Identification matters because not every Antminer is a Zynq: later S19 units shipped with BeagleBone-based boards (TI AM335x, software UART, no FPGA), the S19 XP generation moved to Amlogic S905 controllers, and S21-class machines use a CVITEK CV1835 — each with its own boot media, recovery procedure, and firmware format. Read the SoC before you flash anything. If a control board has you stuck, start a repair.
Understanding the Zynq is the foundation for board-level diagnostics; see our related entries on the FPGA and the broader System-on-Chip (SoC) concept.
In Simple Terms
The Zynq SoC is a family of system-on-chip devices from Xilinx (now part of AMD) that fuses a dual-core ARM Cortex-A9 « processing system » with Artix-7-class…
