Dokumentdetails
ID

oai:arXiv.org:2409.03119

Thema
Computer Science - Hardware Archit... Computer Science - Programming Lan...
Autor
Rao, Varun Sisco, Zachary D.
Kategorie

Computer Science

Jahr

2024

Auflistungsdatum

11.09.2024

Schlüsselwörter
decompilation source netlist circuits blocks registers memory hardware
Metrisch

Zusammenfassung

Hardware decompilation reverses logic synthesis, converting a gate-level digital electronic design, or netlist, back up to hardware description language (HDL) code.

Existing techniques decompile data-oriented features in netlists, like loops and modules, but struggle with sequential logic.

In particular, they cannot decompile memory elements, which pose difficulty due to their deconstruction into individual bits and the feedback loops they form in the netlist.

Recovering multi-bit registers and memory blocks from netlists would expand the applications of hardware decompilation, notably towards retargeting technologies (e.g. FPGAs to ASICs) and decompiling processor memories.

We devise a method for register aggregation, to identify relationships between the data flip-flops in a netlist and group them into registers and memory blocks, resulting in HDL code that instantiates these memory elements.

We aggregate flip-flops by identifying common enable pins, and derive the bit-order of the resulting registers using functional dependencies.

This scales similarly to memory blocks, where we repeat the algorithm in the second dimension with special attention to the read, write, and address ports of each memory block.

We evaluate our technique over a dataset of 13 gate-level netlists, comprising circuits from binary multipliers to CPUs, and we compare the quantity and widths of recovered registers and memory blocks with the original source code.

The technique successfully recovers memory elements in all of the tested circuits, even aggregating beyond the source code expectation.

In 10 / 13 circuits, all source code memory elements are accounted for, and we are able to compact up to 2048 disjoint bits into a single memory block.

;Comment: 6 pages, 6 figures

Rao, Varun,Sisco, Zachary D., 2024, Register Aggregation for Hardware Decompilation

Dokumentieren

Öffnen

Teilen

Quelle

Artikel empfohlen von ES/IODE AI