Paper 2021/1236

Architecture Support for Bitslicing

Pantea Kiaei, Tom Conroy, and Patrick Schaumont

Abstract

The bitsliced programming model has shown to boost the throughput of software programs. However, on a standard architecture, it exerts a high pressure on register access, causing memory spills and restraining the full potential of bitslicing. In this work, we present architecture support for bitslicing in a System-on-Chip. Our hardware extensions are of two types; internal to the processor core, in the form of custom instructions, and external to the processor, in the form of direct memory access module with support for data transposition. We present a comprehensive performance evaluation of the proposed enhancements in the context of several RISC-V ISA definitions (RV32I, RV64I, RV32B, RV64B). The proposed 14 new custom instructions use 1.5x fewer registers compared to the equivalent functionality expressed using RISC-V instructions. The integration of those custom instructions in a 5-stage pipelined RISC-V RV32I core incurs 10.21% and 12.72% overhead respectively in area and cell count using the SkyWater 130nm standard cell library. The proposed bitslice transposition unit with DMA provides a further speedup, changing the quadratic increase in execution time of data transposition to linear. Finally, we demonstrate a comprehensive performance evaluation using a set of benchmarks of lightweight and masked ciphers.

Metadata
Available format(s)
PDF
Category
Implementation
Publication info
Preprint. Minor revision.
Keywords
Bitslicinginstruction set extensiondirect memory accesssystem-on-chiphardware extensioncomputer architecture
Contact author(s)
pkiaei @ wpi edu
History
2022-03-24: revised
2021-09-20: received
See all versions
Short URL
https://ia.cr/2021/1236
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2021/1236,
      author = {Pantea Kiaei and Tom Conroy and Patrick Schaumont},
      title = {Architecture Support for Bitslicing},
      howpublished = {Cryptology ePrint Archive, Paper 2021/1236},
      year = {2021},
      note = {\url{https://eprint.iacr.org/2021/1236}},
      url = {https://eprint.iacr.org/2021/1236}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.