How can new DRAM techniques be adopted without repeated interface and controller changes?

Terracotta uses custom DRAM commands and a programmable controller to keep over 96% of each technique's speedup.

Direct answer

Terracotta answers this by replacing repeated redesigns with configuration: DRAM vendors define new commands inside one standardized interface extension, and system designers program a memory controller after silicon is fabricated. Across four DRAM techniques from four domains, this retained more than 96% of the performance benefits of custom implementations, while adding 0.6-3.2% DRAM energy, 0.03% area, and 0.56% power overheads in a high-end server-grade processor.

1sources cited

This article was generated with WisPaper-powered search and paper analysis.

Each new DRAM technique forces another redesign

DRAM still limits the performance, energy efficiency, and robustness of modern systems, and many published techniques attack those limits: computing inside DRAM, cheaper maintenance operations, more parallelism, and lower access latency. The obstacle is adoption. The paper's own analysis of 32 techniques across seven categories finds that all 32 need memory controller changes, 11 also need DRAM interface changes, and 15 need DRAM chip changes. Because the interface and controller are rigid, every technique tends to arrive with its own redesign.

Terracotta's goal is narrower than making DRAM infinitely extensible: it aims to reduce the repeated interface and controller modifications. The observation behind it is that many techniques use similar DRAM commands and similar memory controller structures. Terracotta turns those similarities into a set of primitives, so a new technique becomes a configuration of existing flexible hardware rather than a fresh round of interface and controller changes.

Custom commands plus a programmable controller

Terracotta has two components. First, custom command extensions let DRAM vendors define new commands within a single, standardized interface. Second, a programmable memory controller lets system designers support new DRAM techniques post-silicon. Together they allow deployment by configuring the memory controller instead of modifying the interface and controller.

The design targets a DDR5-based system. Its primitives are triggers, updates, and actions. Triggers add two cycles to the critical path of a memory controller that supports no techniques. Updates stay off the critical path for techniques whose minimum timing constraint exceeds the two-cycle metadata read-modify-write latency, and actions stay off the critical path because the custom and standard command issue paths operate in parallel. On the DRAM side, the custom command decoding logic is confined to the chip center stripe: a finite-state machine with one bit of state, a 4-bit payload counter tracking up to 16 payloads per custom command, and fewer than 24 gates of combinational control logic. The paper notes that a single 8-bit DDR5 mode register already requires eight flip-flops, and the standard defines 256 such registers.

Four techniques from four domains test the framework

The evaluation asks whether Terracotta retains the benefits that DRAM techniques provide with customized implementations. The authors select one representative technique per domain: PRADA for processing-using-DRAM, MoPAC-C for lower-overhead DRAM maintenance operations, MASA for subarray-level parallelism, and ChargeCache for access latency reduction.

Performance and energy come from cycle-level simulation using Ramulator 2.0 integrated with DRAMPower. The baseline is a 4.2 GHz processor with 1 or 4 cores, 4-wide issue, and a 256-entry instruction window; 64B cache lines, 16-way set-associative, 2 MiB per core; 64-entry read/write request queues with FR-FCFS scheduling and a column cap of 4; RoBaRaCoCh address mapping; and DDR5-3200 with 1 channel, 1 rank, 8 bank groups, 4 banks per bank group, 128 subarrays per bank, and 64K rows per bank. Ramulator 2.0 was extended to model Terracotta-based implementations, custom hardware implementations, and ideal implementations where applicable. For custom implementations, the authors incorporate latency overheads from the techniques' memory controller RTL models and optimistically assume 2 cycles for their non-standard DRAM commands; for Terracotta-based implementations, they use the two-cycle controller latency from their own RTL synthesis and set command latencies by payload count.

Workloads are 57 single-core workloads from SPEC CPU2006, SPEC CPU2017, TPC, MediaBench, and YCSB, split into low (RBMPKI below 2) and high (RBMPKI at least 2) memory-intensity groups, plus 60 multi-programmed four-core mixes across HHHH, HHHL, HHLL, HLLL, and LLLL categories with 12 mixes each. PRADA uses five curated microbenchmarks. Single-core performance is measured in Instructions Per Cycle and multi-core performance as weighted speedup.

Over 96% of custom speedup at low overhead

For the four techniques from four distinct domains, Terracotta retains almost all of the performance benefits of custom implementations, above 96%. That figure is a retention ratio against custom implementations, not a claim that Terracotta is faster than them; the comparison is between a Terracotta-based implementation and a technique-specific custom implementation on the same simulated system.

The costs are reported separately and should not be merged. Terracotta incurs 0.6-3.2% DRAM energy overhead, 0.03% area overhead, and 0.56% power overhead in a high-end server-grade processor. The area figure refers to the chip area of that processor, and the power figure to its power budget; the energy figure is DRAM energy. These are overheads of the framework, distinct from the performance retention measured against custom implementations.

Combining two techniques beats either one alone

A Terracotta-based composition of two techniques outperforms the Terracotta-based implementation of each technique alone. This is the paper's demonstration of the benefit of adding techniques without repeated interface and controller modifications: once the flexible interface and programmable controller exist, a second technique can be layered on through configuration rather than a new redesign.

The composition result is a comparison among Terracotta-based implementations, so it speaks to what the framework enables when techniques share the same substrate. It does not by itself establish that every pair of techniques composes well, and the paper's own discussion of extending Terracotta identifies coordination across banks as something the current trigger logic does not support.

Chip, processor, and resource limits remain

Terracotta covers the interface and controller portions of a technique, not the whole technique. Many DRAM techniques also require modifications to the DRAM chip itself, and those modifications are technique-specific; supporting all of them in one DRAM architecture could add circuitry individual products might not need. The paper leaves these to DRAM vendors, who can implement the techniques they see fit and expose them through custom command extensions. Some techniques also require changes to the core or the memory hierarchy to offload work to DRAM, and those remain the system designer's responsibility, though Terracotta can still support the parts needing interface and controller support.

Implementation constraints are fixed per Terracotta instance: a given implementation provides a fixed amount of metadata storage and a fixed number of timers. A technique's updates remain off the critical path only if its minimum timing constraint exceeds the metadata table read-modify-write latency. Techniques needing more resources, or with tighter timing constraints than that latency, may require a controller redesign. The primitives were derived from 32 techniques across seven categories and may not capture all possible DRAM techniques; the paper outlines potential extensions, such as channel- or bank-group-level triggers for multi-bank coordination and a feedback path for techniques that adapt to DRAM operation outcomes, and leaves their design and evaluation to future work.

The claim is about adoption cost, not peak speed

The paper states that, to its knowledge, Terracotta is the first work that reduces the repeated interface and controller modifications needed to enable the adoption of DRAM techniques. The relevant comparison is therefore not Terracotta versus a custom implementation on raw performance, where the custom version remains the reference and Terracotta retains more than 96% of its benefit, but Terracotta versus the alternative path of modifying the interface and controller for each new technique.

For a reader weighing this work, the decision-relevant split is by technique domain and by where the technique's requirements live. If a technique's needs fall in the memory controller and interface, Terracotta's primitives are the intended target, and the reported overheads of 0.6-3.2% DRAM energy, 0.03% area, and 0.56% power in a high-end server-grade processor are the price of that flexibility. If a technique also needs DRAM chip changes, processor-side changes, more metadata or timers than a given instance provides, or timing constraints tighter than the metadata read-modify-write latency, Terracotta does not remove that work. The composition result is the clearest evidence for the framework's premise: adding a second technique on the same substrate can beat either technique alone, which is the outcome that repeated interface and controller redesigns make expensive to reach.

Sources used in this answer

1

Terracotta: Enabling the Adoption of New DRAM Techniques via a Flexible DRAM Interface and Memory Controller

Terracotta combines custom command extensions within a standardized interface and a programmable memory controller so DRAM techniques can be deployed by configuration; for four techniques from four domains it retains over 96% of custom-implementation performance benefits, a composition of two techniques outperforms either alone, and overheads are 0.6-3.2% DRAM energy, 0.03% area, and 0.56% power in a high-end server-grade processor.