2002 · 91 citations · 10 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureField-programmable Gate ArraysReconfigurable ComputingConfigurable Logic BlocksField-programmable Gate Array ArchitectureFpga ArchitectureHardware AccelerationLookup TablesReconfigurable System ArchitectureAdaptive ComputingAdaptive Computing ArchitecturesArithmetic Unit DesignCoordinate RotationsField-programmable Gate Arrays (Fpgas)Field-programmable Logic ArraysParameterizable Arithmetic UnitsPlacement
PAM-Blox are object-oriented circuit generators on top of the PCI Pamette design environment, PamDC. High-performance FPGA design for adaptive computing is simplified by using a hierarchy of optimized hardware objects described in C++. PAM-Blox consist of two major layers of abstraction. First, PamBlox are parameterizable simple elements such as counters and adders. Automatic placement of carry chains and flexible shapes are supported. PaModules are more complex elements possibly instantiating PamBlox. PaModules have fixed shapes and are usually optimized for a specific data-width. Examples for PaModules are multipliers, Coordinate Rotations (CORDICs), and special arithmetic units for encryption. The key difference of our approach to most other design tools for FPGAs is that the designer has total control over placement at each level of the design hierarchy, which is the key to high-performance FPGA design. Second, the object interface was chosen carefully to encourage code-reuse and simplify code-sharing between designers. PAM-Blox are intended to be part of an open library that allows design sharing between members of the adaptive computing community.
10
Fast implementations of RSA cryptography
M. Shand, Jean Vuillemin · 2002 · 220 citations
Seeking solutions in configurable computing
William H. Mangione-Smith, Brad Hutchings, David Andrews et al. · Computer · 1997 · 156 citations
Defect tolerance on the Teramac custom computer
W. Bruce Culbertson, Rick Amerson, R.J. Carter et al. · 2002 · 124 citations