Design of Arbiters and Allocators Based on Multi-Terminal BDDs
Václav Dvořák (Brno University of Technology, Czech Republic)
Petr Mikušek (Brno University of Technology, Czech Republic)
Abstract: Assigning one (more) shared resource(s) to several requesters is a function of arbiters (allocators). This class of decision-making modules can be implemented in a number of ways, from hardware to firmware to software. The paper presents a new computer-aided technique that can produce representations of arbiters/allocators in a form of a Multi-Terminal Binary Decision Diagram (MTBDD) with close to minimum cost and width. This diagram can then serve as a prototype for a cascade of multiple-output look-up tables (LUTs) that implements the given function, or for efficient firmware implementation. The technique makes use of iterative decomposition of integer functions of Boolean variables and a variable-ordering heuristic to order variables. The LUT cascades lead directly to the pipelined design, simplify wiring and testing and can compete with the traditional FPGA design in performance and with PLA design in chip area.
Keywords: LUT cascades, allocators., arbiter circuits, iterative disjunctive decomposition, multi-terminal BDDs
Categories: B.1.1, B.1.4, B.6.1, B.6.3, C.3, C.5.4