Divide-and-concatenate: An architecture-level optimization technique for universal hash functions

Bo Yang, Ramesh Karri, David A. McGrew

Research output: Contribution to journalArticle

Abstract

The authors present an architectural optimization technique called divide-and-concatenate for hardware architectures of universal hash functions based on three observations: 1) the area of a multiplier and associated data path decreases quadratically and their speeds increase gradually as their operand size is reduced; 2) multiplication is at the core of universal hash functions and multipliers consume most of the area of universal hash function hardware; and 3) two universal hash functions are equivalent if they have the same collision-probability property. In the proposed approach, the authors divide a 2w-bit data path (with collision probability 2 -2w) into two w-bit data paths (each with collision probability 2 -w), apply one message word to these two w-bit data paths and concatenate their results to construct an equivalent 2w-bit data path (with a collision probability 2 -2w). The divide-and-concatenate technique is complementary to all circuit-, logic-, and architecture-optimization techniques. The authors applied this technique on a linear congruential universal hash (LCH) family. When compared to the 100% overhead associated with duplicating a straightforward 32-bit LCH data path, the divide-and-concatenate approach that uses four equivalent 8-bit data paths yields a 101% increase in throughput with only 52% hardware overhead.

Original languageEnglish (US)
Pages (from-to)1740-1746
Number of pages7
JournalIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Volume24
Issue number11
DOIs
StatePublished - Nov 2005

Fingerprint

Hash functions
Hardware
Logic circuits
Throughput

Keywords

  • Collision probabilty
  • Divide-and-concatenate
  • Universal hash functions

ASJC Scopus subject areas

  • Electrical and Electronic Engineering
  • Hardware and Architecture
  • Computer Science Applications
  • Computational Theory and Mathematics

Cite this

@article{6ebd5a876b524b038aa9cac68c6ea1ec,
title = "Divide-and-concatenate: An architecture-level optimization technique for universal hash functions",
abstract = "The authors present an architectural optimization technique called divide-and-concatenate for hardware architectures of universal hash functions based on three observations: 1) the area of a multiplier and associated data path decreases quadratically and their speeds increase gradually as their operand size is reduced; 2) multiplication is at the core of universal hash functions and multipliers consume most of the area of universal hash function hardware; and 3) two universal hash functions are equivalent if they have the same collision-probability property. In the proposed approach, the authors divide a 2w-bit data path (with collision probability 2 -2w) into two w-bit data paths (each with collision probability 2 -w), apply one message word to these two w-bit data paths and concatenate their results to construct an equivalent 2w-bit data path (with a collision probability 2 -2w). The divide-and-concatenate technique is complementary to all circuit-, logic-, and architecture-optimization techniques. The authors applied this technique on a linear congruential universal hash (LCH) family. When compared to the 100{\%} overhead associated with duplicating a straightforward 32-bit LCH data path, the divide-and-concatenate approach that uses four equivalent 8-bit data paths yields a 101{\%} increase in throughput with only 52{\%} hardware overhead.",
keywords = "Collision probabilty, Divide-and-concatenate, Universal hash functions",
author = "Bo Yang and Ramesh Karri and McGrew, {David A.}",
year = "2005",
month = "11",
doi = "10.1109/TCAD.2005.852455",
language = "English (US)",
volume = "24",
pages = "1740--1746",
journal = "IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems",
issn = "0278-0070",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
number = "11",

}

TY - JOUR

T1 - Divide-and-concatenate

T2 - An architecture-level optimization technique for universal hash functions

AU - Yang, Bo

AU - Karri, Ramesh

AU - McGrew, David A.

PY - 2005/11

Y1 - 2005/11

N2 - The authors present an architectural optimization technique called divide-and-concatenate for hardware architectures of universal hash functions based on three observations: 1) the area of a multiplier and associated data path decreases quadratically and their speeds increase gradually as their operand size is reduced; 2) multiplication is at the core of universal hash functions and multipliers consume most of the area of universal hash function hardware; and 3) two universal hash functions are equivalent if they have the same collision-probability property. In the proposed approach, the authors divide a 2w-bit data path (with collision probability 2 -2w) into two w-bit data paths (each with collision probability 2 -w), apply one message word to these two w-bit data paths and concatenate their results to construct an equivalent 2w-bit data path (with a collision probability 2 -2w). The divide-and-concatenate technique is complementary to all circuit-, logic-, and architecture-optimization techniques. The authors applied this technique on a linear congruential universal hash (LCH) family. When compared to the 100% overhead associated with duplicating a straightforward 32-bit LCH data path, the divide-and-concatenate approach that uses four equivalent 8-bit data paths yields a 101% increase in throughput with only 52% hardware overhead.

AB - The authors present an architectural optimization technique called divide-and-concatenate for hardware architectures of universal hash functions based on three observations: 1) the area of a multiplier and associated data path decreases quadratically and their speeds increase gradually as their operand size is reduced; 2) multiplication is at the core of universal hash functions and multipliers consume most of the area of universal hash function hardware; and 3) two universal hash functions are equivalent if they have the same collision-probability property. In the proposed approach, the authors divide a 2w-bit data path (with collision probability 2 -2w) into two w-bit data paths (each with collision probability 2 -w), apply one message word to these two w-bit data paths and concatenate their results to construct an equivalent 2w-bit data path (with a collision probability 2 -2w). The divide-and-concatenate technique is complementary to all circuit-, logic-, and architecture-optimization techniques. The authors applied this technique on a linear congruential universal hash (LCH) family. When compared to the 100% overhead associated with duplicating a straightforward 32-bit LCH data path, the divide-and-concatenate approach that uses four equivalent 8-bit data paths yields a 101% increase in throughput with only 52% hardware overhead.

KW - Collision probabilty

KW - Divide-and-concatenate

KW - Universal hash functions

UR - http://www.scopus.com/inward/record.url?scp=27744547100&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=27744547100&partnerID=8YFLogxK

U2 - 10.1109/TCAD.2005.852455

DO - 10.1109/TCAD.2005.852455

M3 - Article

AN - SCOPUS:27744547100

VL - 24

SP - 1740

EP - 1746

JO - IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems

JF - IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems

SN - 0278-0070

IS - 11

ER -