Stream Decoding with Confidence Scores at Room and Cryogenic Temperatures
Analyze & explore related research in Conceptio
Connect this record directly into your research workflow or AI agent. Explore citations across open repositories, query full text, and export structured proof bundles.
Stream Decoding with Confidence Scores at Room and Cryogenic Temperatures Maries Tahaab1 , Tim Chan2,3 , James Kirkman1 , and Simon C. Benjamin2,1 1 Quantum Motion, 9 Sterling Way, London N7 9HJ, United Kingdom 2 Department of Materials, University of Oxford, Parks Road, Oxford OX1 3PH, United Kingdom
arXiv:2608.10576v1 [quant-ph] 11 Aug 2026
3 Center for Quantum Information and Quantum Biology, The University of Osaka, 1-2 Machikaneyama, Toyonaka 560-0043, Japan
process these syndromes over the course of the quantum computation, and infer the likely nature of the errors that gave rise to them. The system responsible for this is the decoder; typically multiple decoders will be employed to monitor the many logical blocks in a utility-scale quantum computer [8]. The rate at which a decoder can process syndrome information is crucial – it must keep up with the rate at which syndromes are generated [9]; this is called the inverse throughput. For fast solid state technologies such as superconducting, spin qubit, or photonic devices: inverse throughput at or below 1 µs per stabiliser measurement round is required [10, Figure 1] [11, p 924]. For relatively slower atomic systems, the millisecond timescale may suffice [12].
In fault-tolerant quantum computing, fast and accurate decoding is crucial. Snowflake [1] is a decoder for the surface code that runs in a streaming fashion. In this paper, we implement Snowflake on commercial FPGAs and validate them at room and cryogenic temperatures. Our results demonstrate high decoding throughput for small code distances that, when extrapolated, remains within acceptable limits for larger distances. Further, we incorporate the calculation of certain decoder confidence scores with negligible overhead both in terms of latency and physical resource utilisation. We note that implementing a large-scale system would require either a large FPGA beyond today’s technology or clusters of FPGAs connected via a high-speed bus. Thus, we discuss an alternative architecture that exploits the locality of Snowflake by processing 2D slices of the 3D decoding window and offloading segments of the 3D structure to a high-speed memory.
Every logical qubit will ultimately be measured, either at the end of a computation to know the output or (more commonly) as a part of an internal step of the quantum algorithm such as gate teleportation [4, 13]. Such a measurement involves measuring each physical qubit in a suitable basis, and presenting this data to the decoder which (from the monitoring of syndrome data to this point) is capable of interpreting the physical measurements as a given logical outcome: 0 or 1. The time needed to reach this decision generally differs from the inverse throughput and is longer; it is referred to as the measurement time or the reaction time [14, Appendix B.1]. The timescale is important since typically a computation cannot proceed (at least, not far) until this logical outcome is known. Failure to assign the correct outcome is a logical error in the computation; the decoder’s capability to do this correctly is its accuracy. The performance of a given decoder in this crucial task will depend on its sophistication and different decoders lead to logical error rates that vary by orders of magnitude even for relatively small codes [15, Figure 4].
1 Introduction Fault-tolerant quantum computing involves representing quantum information robustly as logical qubits using a larger number of physical qubits [2, 3]. The relationship between the physical and the logical levels is defined by the chosen quantum error-correcting code (QECC). The physical qubits associated with a logical block have certain properties (generally, stabilisers i.e. parities of subsets of the physical qubits) that change only when errors occur. These stabilisers should therefore be measured frequently, and the classical information from each complete set of monitoring measurements is called the syndrome [4]. This paper is relevant to the much-studied surface code: a fast and hardware-friendly code that however requires many physical qubits to realise its logical qubits [5–7]. A key task of the classical control hierarchy is to
A decoder therefore has at least three core figures of merit: its inverse throughput (ideally submicrosecond), its reaction time (preferably a few microseconds [14, 16]), and its accuracy; to this one can add practical considerations such as size and dollar cost. Unsurprisingly, these merits are in tension: faster timescales generally lead to lower accuracies.
Maries Tahaab: maries@quantummotion.tech Tim Chan: timothy.chan@materials.ox.ac.uk James Kirkman: james.kirkman@quantummotion.tech
While impressive progress has been made to achieve 1
decoders that perform well by all metrics [15, 17], ideas have emerged to resolve the tension by having a two-tier decoder mechanism and employing decoder switching [18]. The first tier would be fast but not optimally accurate, while the second would be slower but more accurate. For this to work, we would require a further feature for the tier-1 decoder: a ‘soft output’ that we call the decoder confidence score (DCS). This number should indicate how likely it is that no logical error would result if the tier-1 decoder were to process its present syndrome without recourse to the superior capabilities of tier-2. When this confidence is high, there is no need for the tier-1 decoder to call for help. This then introduces another figure of merit: the reliability of the DCS. There are multiple possible ways by which a decoder can arrive at such a score, with more reliable scores taking longer to compute. The DCS is a feature that has recently been extensively researched [19–30]. In this work we implement and evaluate three DCSs with extremely low computational overhead. The majority of decoders that have been described in the literature are overlapping-window-based [6, §VI.B]: they take in a block comprising multiple rounds of syndrome data (typically d rounds where d is the code distance) and process them collectively, during which time new rounds of syndrome data emerge from the QC and are stored until they constitute another block. This process imposes a coarse granularity to the computation, such that (for example) a logical measurement cannot be completed until relevant blocks are reconciled. An alternative and arguably superior mode of operation for a decoder is round-wise streaming, i.e. taking in each round of syndrome data as it occurs and immediately adding it to a perpetually ongoing continuous decoding process. The decoder implemented and developed upon in this work, Snowflake [1], is a round-wise streaming decoder. A final desirable feature of a decoder relates to its operating temperature. Many forms of quantum processing units need to be operated at mK temperatures inside dilution refrigerators [31–33]. The need to convey measurement data out of the cryogenic system to room-temperature classical processors is a drawback in such systems. The required cabling introduces significant heat loads, and serialisation and deserialisation add latency; therefore, mature quantum computers would ideally process syndrome data within the cryogenic system [9, 33]. In this case, far less information, such as the final result of logical measurement, needs to be taken to room temperature. Operating in a cryogenic environment places severe restrictions on the heat generation of decoders – at least the tier1 decoders in the two-tier paradigm – as we explore presently in this work. Cryogenic QECC decoding has been previously studied in [34–36]. These decoders primarily utilise
application-specific integrated circuits (ASICs) based on single flux quantum and cryo-CMOS technologies. Pinball [37] takes a different approach by integrating a cryo-CMOS-based predecoder at the 4 K stage of the cryostat to resolve sparse errors locally. Its successor, Arqade [38], generates custom predecoders for quantum low-density parity-check codes. Both significantly reduce the syndrome data bandwidth to the primary decoder. While Arqade offers a field-programmable gate array (FPGA) implementation primarily for room-temperature operation, its cryogenic implementation remains ASIC-based. Although ASICs offer exceptional power efficiency, they lack post-fabrication flexibility. In contrast, FPGAs allow for rapid modifications to the decoder, avoiding the long fabrication cycles associated with custom ASIC designs. These fabrication cycles can become a significant bottleneck given the rapid advancements in the field and the frequent need to update decoder logic. Given the recent surge in research focused on FPGA-based decoders [39–46] and the need for rapid iteration, developing a fast and reliable method to evaluate FPGA designs directly at cryogenic temperatures is highly beneficial. In Section 2 we provide minimal preliminaries and review Snowflake, then describe our hardware implementation in Section 3. We show FPGA utilisation and decoding throughput results in Section 4, provided both by experiments and simulation. Section 5 discusses the alternative 2D architecture of Snowflake and its motivations. Section 6 concludes.
2 Background Decoding the surface code (and many other QECCs) can be treated as a graph problem, in which a subset of nodes, termed defects, must be paired either to each other or to one of the so-called boundary nodes of the decoding graph. The accuracy of the decoder is entirely dependent upon these pairings, and a reasonably accurate heuristic is to pair together defects that are close to one another in the graph. The Union– Find decoder (UF) [47, 48] approximates this heuristic by growing exploratory regions, called active clusters, around each defect and merging clusters that touch each other, until they reach a stopping condition (inactivation), at which point the pairings are resolved within each cluster individually. Snowflake [1] is based on UF, but adapts this cluster-growing idea to the streaming case, where the decoding graph is arbitrarily tall. Snowflake considers a small connected subgraph of fixed size, called the decoding window, of the decoding graph at any given time. On the unrotated surface code, the decoding window is a graph of d2 (d + 1) nodes that is local when embedded in 3D, as Figure 1a illustrates. Snowflake simultaneously slides this decoding window along the decoding graph, grows clusters gradually, 2
DROP
GROW
SYNC
FLOOD
MERGE
Figure 2: Simplified state transition diagram for Snowflake with the 1:1 cluster growth schedule. The analogous state diagram for the 2:1 schedule is shown in Figure 12.
(a) The decoding window W used in Snowflake which is a subgraph of the full decoding graph that extends above and below W . Boundary nodes are coloured blue; otherwise, green. Nodes higher up in W correspond to more recent stabiliser measurement data.
vices, the metres-long cabling running from roomtemperature electronics to the dilution refrigerator introduces a significant propagation delay. Furthermore, serialisation of the syndrome bitstream becomes inevitable, as routing a dedicated cable for each syndrome bit would conduct excessive heat, overwhelming the refrigerator’s limited cooling capacity and degrading qubit coherence. Combined, the physical propagation delay and the overhead of serialising and deserialising the syndrome bitstream risk creating an error backlog [4]. Minimising latency between the readout electronics and the decoder is highly beneficial for overall system performance. To achieve this, we explored operating the decoder at cryogenic temperatures. This not only reduces communication latency but also lowers the power consumption of the digital transceivers feeding the syndrome bitstream to the decoder, due to reduced transmitter drive power. This section describes the hardware implementation of the Snowflake decoder, along with the experimental setup developed to evaluate it at both room and cryogenic temperatures. First, Section 3.1 provides a high-level architectural overview of the hardware decoder, and Section 3.2 explains the additional logic implemented to determine three decoder confidence scores. Next, Section 3.3 details the specific FPGAs selected for this application and the custom power delivery circuitry required to enable operation at cryogenic temperatures. Section 3.4 then describes the physical measurement setup and instrumentation used to characterise the decoder across both thermal environments. Finally, Section 3.5 provides a systemlevel overview and discusses key design choices for operating the decoder.
(b) The distributed hardware implementation of Snowflake. Each cube represents a processing element corresponding to one node in W , and each tube represents a communication link corresponding to one edge. The centralised controller is not shown. This contrasts the 2D implementation proposed later in this work; cf. Figure 8.
Figure 1: Schematics relating to Snowflake configured for the distance-4 unrotated surface code.
and pairs defects within clusters. A drop is the process in which the window slides up the decoding graph by one layer (equivalent to a stabiliser measurement round), so called because data appears to ‘drop’ by one layer from the perspective of the decoding window. There are two versions of Snowflake, defined by their so-called cluster growth schedule: the 1:1 and the 2:1 schedule. The 2:1 schedule is more accurate, but in this first work we implement the 1:1 schedule for its simplicity, leaving the 2:1 schedule for future work. Snowflake with the 1:1 schedule operates by continuously repeating a drop-grow-merge cycle (see Figure 2), once per measurement round. For interested readers, a more detailed overview of Snowflake can be obtained by reading [1] up to and including §4.
3.1 Architecture Overview Our architecture of Snowflake consists of a network of processing elements (PEs) and a centralised controller. Each PE corresponds to a node and each communication link corresponds to an edge in the decoding window, as Figure 1b shows. The controller synchronises the decoding process by issuing command signals to the PEs within the network.
3 Design and Implementation Since the decoder must have a sub-microsecond inverse throughput for superconducting quantum de3
The node is implemented as a finite state machine (FSM) in Verilog. A simplified state diagram of this FSM is shown in Figure 2. Each node tracks its own state, and in turn the overall decoding process, by maintaining a record of its variables within the FSM. The variables belonging to each edge, however, are stored in a global register array implemented using the FPGA flip-flops, where each index uniquely maps to a specific edge within the network. Together, the PEs and the edge lookup table constitute the complete decoding graph. For the clusters to grow—leading to defect annihilation and subsequently, the generation of corrections— each node shares its variables with its immediate neighbours. Consequently, it receives the variables being shared by those neighbours. By evaluating this shared data, the node FSM’s logic governs the state transitions, thereby enabling a fully parallel decoding process.
power process node, due to prior successful demonstrations of AMD 7-series FPGAs operating at cryogenic temperatures [49, 51, 52]. We selected this device for its reduced logic footprint, which results in lower power consumption in cryogenic environments compared to the much larger XCKU5P. Delivering power to an FPGA inside a cryostat presents a challenge due to the unavoidable long interconnects and the step current load that occurs during device configuration. To negate the effects of line impedance from room-temperature power supplies and prevent brownouts, it was essential to place localised voltage regulators in close physical proximity to the FPGA. We therefore adapted a cryogenic lowdropout regulator based on the design in [53], which ensured stable power delivery despite the long cabling. Custom printed circuit boards shown in Figure 3 were designed for both the Artix-7 and Kintex UltraScale+ FPGAs with onboard voltage regulation to test the decoder at cryogenic temperatures.
3.2 Decoder Confidence Scores In addition to the core decoding logic, we implement three hardware-efficient DCSs with minimal impact on the resource utilisation of the FPGA, as well as no time overhead (achieved by computing the DCS between consecutive drop cycles of the decoder). The most accurate DCS we implement is called the Cluster Size 1-Norm Fraction. This metric (calculated by summing a variable called growth in the edge lookup table) quantifies the total volume of the decoding window occupied by any cluster. Its utility has been explored in [23]: for a distance-13 rotated surface code under physical error rate 5 × 10−3 , aborting the worst 30% of shots according to this DCS reduces the logical error rate by over an order of magnitude. In Appendix A we discuss our hardware implementation of the two other lightweight DCSs, although we observe them to be less accurate than the cluster size 1-norm fraction.
(a) Artix-7 (XC7A35T-2FTG256I).
3.3 FPGA Selection and Power Delivery The operation of commercial FPGAs in cryogenic environments has been previously demonstrated in [49– 52]. For our implementation, we chose the AMD Kintex UltraScale+ XCKU5P FPGA, fabricated on the 16 nm FinFET+ process node for its ample logic resources and strong potential for cryogenic operation. Jin et al. [50] evaluated the AMD Kintex UltraScale+ XCKU3P FPGA, which has fewer logic resources but is also a member of the Kintex UltraScale+ family and is manufactured using the same process node. In their evaluation, the XCKU3P demonstrated an ∼88% reduction in static core current draw and a 30% reduction in lookup table (LUT) delay compared to room-temperature operation. We also evaluated the AMD Artix-7 XC7A35T FPGA, fabricated on the 28 nm high performance-low
(b) Kintex UltraScale+ (XCKU5P-2FFVP676I).
Figure 3: Custom printed circuit boards featuring onboard cryogenic voltage regulation for two FPGAs.
3.4 Measurement Setup The room-temperature and cryogenic measurements for the FPGA modules were conducted in a frontloading cryostat equipped with a Sumitomo Heavy 4
3.5 System-Level Overview
Industries RP-082B2 pulse tube cryocooler, which provides a cooling power of 1 W at 4 K. Roomtemperature measurements were conducted with the cryocooler turned off. Figure 4 shows both the Kintex and Artix FPGA modules from Section 3.3 mounted inside the cryostat for testing.
For testing and validation at cryogenic temperatures, the syndrome bitstream was transmitted to the cryogenic decoder from a host device at room temperature via a serial communication link. This same host was subsequently used to receive and validate the generated corrections. A system-level block diagram of the complete setup is presented in Figure 5.
300K
POWER HOST
DP811 GS200
CLOCK DG1032Z
4K FPGA
Communication Interface
Confidence Score Generator
Syndrome Buffer (BRAM)
MMCM
Snowflake Decoder
Figure 4: Measurement setup featuring both FPGA modules mounted to the cold plate of the front-loading cryostat.
Room-temperature instruments were used to drive and monitor the test setup. A Rigol DP811 linear DC power supply and a Yokogawa GS200 source measure unit (SMU) supplied power to the FPGAs. Additionally, a Rigol DG1032Z arbitrary waveform generator provided a 20 MHz external reference clock. This clock was subsequently multiplied to the required 200 MHz operating frequency for the decoder using the FPGA’s internal Mixed-Mode Clock Manager.
Figure 5: System-level block diagram for the decoder operating inside the cryostat.
To prevent the serial transmission protocol and the long cabling required by the cryostat from acting as a bottleneck to the decoder’s operation, a syndrome buffer was implemented on the FPGA using its onchip Block RAM (BRAM). The room-temperature host pre-loaded all generated syndromes into this buffer. Since the BRAM read latency is only a few clock cycles, it effectively eliminates the data transfer bottleneck. During operation, the BRAM loaded syndrome bitstreams into the decoder at every drop cycle, accurately simulating data reception from the local cryogenic electronics of a quantum device. Conversely, attempting to stream syndrome data from outside the cryostat during active decoding would introduce significant delays, making it difficult to accurately evaluate the decoder’s true performance.
To accurately determine the active die temperature during decoder operation, the internal temperature diodes of each FPGA were first calibrated against a Lake Shore Cryotronics Cernox CX-1030-HT sensor with the FPGAs turned off. A Keithley 2450 SMU was used to provide a constant 10 µA bias current to the diode while simultaneously measuring the forward voltage. A calibration curve from 4 K–300 K was thus obtained, mapping the diode voltage to the temperature recorded by the Cernox sensor. This curve was then used to determine the active die temperature from the diode voltage while the decoder was in operation. 5
4 Results
4.2 Decoder Throughput In this section, we discuss the timing performance of Snowflake in terms of the average decoding time across varying code distances. The decoder was evaluated on hardware for d = 3 to 9 and in simulation for distances up to d = 21 at a target clock frequency of 200 MHz. Syndromes were generated by simulating 1024 stabiliser measurement rounds under a circuitlevel noise model (the same model as in [54, §B]) of physical error rate p = 10−3 : roughly seven times below threshold. Decoding time was computed by multiplying the clock period by the number of clock cycles. Figure 6 reports the mean decoding time for d = 3 to 21.
This section presents the results obtained from evaluating the decoder across a range of code distances. The design was simulated for code distances d = 3 to 21 at a target clock frequency of 200 MHz. To validate the simulated results, we present the results of physical hardware tests for distances d = 3 to 9, utilising the experimental setup previously described in Section 3.4.
4.1 FPGA Resource Utilisation Table 1 presents the resource utilisation of Snowflake configured for circuit-level noise, across various code distances. The data indicates a pronounced increase in FPGA resource utilisation as the code distance increases. This scaling is a result of the number d2 (d+1) of syndrome graph nodes, and because the hardware architecture instantiates each node as an independent PE.