Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

David M. Lewis

dblp:57/1113 · DBLP profile ↗
← Back
37ranked-venue papers
21as first author
0since 2021 · last 2019
0000-0002-8126-5662ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 33 · 18 first-authorTheory of computation · 2 · 2 first-authorSecurity and privacy · 1Software engineering, systems software and programming languages · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
24 papers
Reconfigurable computing and FPGAs · 51% Electronic design automation · 42% Integrated circuit design · 4%
Software engineering, system software, and programming languages
1 paper
Runtime systems and virtual machines · 100%

Topics — the 30 heaviest of 39, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Reconfigurable computing and FPGAs
FPGA architecture
0.542016
The Stratix™ 10 Highly Pipelined FPGA Architecture · FPGA 2016
Architectural enhancements in Stratix V™ · FPGA 2013
Architectural enhancements in Stratix-IIITM and Stratix-IVTM · FPGA 2009
Electronic design automation › timing analysis
statistical timing analysis
0.412019
Spatial Timing Analysis With Exact Propagation of Delay and Application to FPGA Performance · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2019
Electronic design automation
timing analysis
0.412019
Spatial Timing Analysis With Exact Propagation of Delay and Application to FPGA Performance · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2019
Reconfigurable computing and FPGAs
FPGA memory architecture
0.322013
Architectural enhancements in Stratix V™ · FPGA 2013
Architectural enhancements in Stratix-IIITM and Stratix-IVTM · FPGA 2009
Reconfigurable computing and FPGAs › FPGA architecture
FPGA clock network
0.212016
Stratix™ 10 High Performance Routable Clock Networks · FPGA 2016
Electronic design automation › physical design › placement and routing
FPGA place-and-route
0.212016
The Stratix™ 10 Highly Pipelined FPGA Architecture · FPGA 2016
Reconfigurable computing and FPGAs
FPGA routing architecture
0.142005
The Stratix II logic and routing architecture · FPGA 2005
Circuit design of routing switches · FPGA 2002
Using sparse crossbars within LUT · FPGA 2001
Reconfigurable computing and FPGAs
FPGA reliability
0.112010
A comprehensive approach to modeling, characterizing and optimizing for metastability in FPGAs · FPGA 2010
Integrated circuit design
metastability
0.112010
A comprehensive approach to modeling, characterizing and optimizing for metastability in FPGAs · FPGA 2010
Electronic design automation
physical design
0.122016
Stratix™ 10 High Performance Routable Clock Networks · FPGA 2016
Area-Speed Tradeoffs for Hierarchical Field-Programmable Gate Arrays · FPGA 1996
Electronic design automation › physical design › clock network synthesis
clock tree synthesis
0.112016
Stratix™ 10 High Performance Routable Clock Networks · FPGA 2016
Reconfigurable computing and FPGAs › FPGA architecture
adaptive logic module
0.112005
The Stratix II logic and routing architecture · FPGA 2005
Hardware reliability and fault tolerance
error correction
0.012013
Architectural enhancements in Stratix V™ · FPGA 2013
Electronic design automation › logic synthesis › circuit optimization
area-delay optimization
0.012002
Circuit design of routing switches · FPGA 2002
Electronic design automation › design automation tools
FPGA CAD
0.012010
A comprehensive approach to modeling, characterizing and optimizing for metastability in FPGAs · FPGA 2010
Electronic design automation › physical design › routing
routability
0.012000
Generating highly-routable sparse crossbars for PLDs · FPGA 2000
Electronic design automation
circuit simulation
0.051992
A compiled-code hardware accelerator for circuit simulation · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1992
Hardware accelerators for timing simulation of VLSI digital circuits · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1988
A Programmable Hardware Accelerator for Compiled Electrical Simulation · DAC 1988
Processor architecture and microarchitecture
arithmetic unit
0.021994
Interleaved Memory Function Interpolators with Application to an Accurate LNS Arithmetic Unit · IEEE Trans. Computers 1994
An Architecture for Addition and Subtraction of Long Word Length Numbers in the Logarithmic Number System · IEEE Trans. Computers 1990
Integrated circuit design › digital circuit design › arithmetic circuit design
logarithmic number system
0.021994
Interleaved Memory Function Interpolators with Application to an Accurate LNS Arithmetic Unit · IEEE Trans. Computers 1994
An Architecture for Addition and Subtraction of Long Word Length Numbers in the Logarithmic Number System · IEEE Trans. Computers 1990
Electronic design automation › hardware simulation
compiled simulation
0.021993
A multiple-strength multiple-delay compiled-code logic simulator · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1993
A hierarchical compiled code event-driven logic simulator · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1991
Electronic design automation › hardware verification and test
logic simulation
0.021993
A multiple-strength multiple-delay compiled-code logic simulator · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1993
A hierarchical compiled code event-driven logic simulator · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1991
Reconfigurable computing and FPGAs
multi-FPGA system
0.011997
The Transmogrifier-2: A 1 Million Gate Rapid Prototyping System · FPGA 1997
Reconfigurable computing and FPGAs
rapid prototyping
0.011997
The Transmogrifier-2: A 1 Million Gate Rapid Prototyping System · FPGA 1997
Electronic design automation › multi-objective optimization
area-time tradeoff
0.011996
Area-Speed Tradeoffs for Hierarchical Field-Programmable Gate Arrays · FPGA 1996
Reconfigurable computing and FPGAs › FPGA architecture
hierarchical FPGA
0.011996
Area-Speed Tradeoffs for Hierarchical Field-Programmable Gate Arrays · FPGA 1996
Memory systems
lookup table
0.011994
Interleaved Memory Function Interpolators with Application to an Accurate LNS Arithmetic Unit · IEEE Trans. Computers 1994
Electronic design automation
hardware verification and test
0.011993
A multiple-strength multiple-delay compiled-code logic simulator · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1993
Integrated circuit design › analog and mixed-signal circuits
device modeling
0.011990
Device model approximation using 2N trees · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1990
Electronic design automation › logic synthesis
lookup-table minimization
0.011990
An Architecture for Addition and Subtraction of Long Word Length Numbers in the Logarithmic Number System · IEEE Trans. Computers 1990
Electronic design automation › circuit modeling
table-based device model
0.011990
Device model approximation using 2N trees · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1990

Methods — techniques the papers use, named apart from their topics

symbolic delay representation · 0.4monte carlo simulation · 0.4pipelining · 0.3routable clock tree synthesis · 0.2circuit retiming · 0.2routing layer optimization · 0.2multi-bit skip adder · 0.2circuit-level simulation · 0.1board measurement · 0.1FPGA Modeling Toolkit · 0.1micro-address prediction · 0.0bit-slice ALU · 0.0
YearPublicationVenuePosition
2019 Spatial Timing Analysis With Exact Propagation of Delay and Application to FPGA Performance
abstract
This paper introduces a method for delay approximation in timing analysis for spatial variation where the parameters representing the sources of variation are based on a convolution of random variation with a basis function. This results in delay models that need only include nine nonzero random variables for each edge in a typical spatial correlation model, less than previous work. As a result the symbolic representation of all potentially critical delays can be carried through the entire timing analysis without the need for approximate maximum function of statistical delays, producing a conservative but accurate upper bound on timing to meet a specified yield target. The algorithm has been applied to a set of field-programmable gate array designs and used to show that it is computationally efficient even with large designs. Further, because the timing is pessimistic but accurate, it removes the need for guardbanding the timing analysis compared to previous approaches. The representation of all potentially critical paths in a symbolic form also enables fast Monte-Carlo (MC) algorithms to supplement the deterministic ones. We show a combined deterministic and MC algorithm that is on average within 0.35% of ideal, and has a 10-6probability of an optimistic result.
David M. Lewis, Herman Schmit
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
2016 Stratix™ 10 High Performance Routable Clock Networks
abstract
We present the clock architecture of the Stratix?10 FPGA, which uses a routable clock network rather than the fixed clock networks of previous generations. We describe the flexibility provided by this routable clock network and how arbitrarily sized clock trees can be synthesized and placed anywhere on the FPGA. We show how this capability to generate customized clock trees can provide better performance through reduced clock loss while maintaining the ability to handle the large number of clock domains that modern systems require. We experimentally demonstrate how a routable clock tree reduces the clock loss of the user design implementation by up to 6% of clock insertion delay.
Carl Ebeling, Dana How, David M. Lewis, Herman Schmit
FPGA3
2016 The Stratix™ 10 Highly Pipelined FPGA Architecture
abstract
This paper describes architectural enhancements in the Altera Stratix? 10 HyperFlex? FPGA architecture, fabricated in the Intel 14nm FinFET process. Stratix 10 includes ubiquitous flip-flops in the routing to enable a high degree of pipelining. In contrast to the earlier architectural exploration of pipelining in pass-transistor based architectures, the direct drive routing fabric in Stratix-style FPGAs enables an extremely low-cost pipeline register. The presence of ubiquitous flip-flops simplifies circuit retiming and improves performance. The availability of predictable retiming affects all stages of the cluster, place and route flow. Ubiquitous flip-flops require a low-cost clock network with sufficient flexibility to enable pipelining of dozens of clock domains. Different cost/performance tradeoffs in a pipelined fabric and use of a 14nm process, lead to other modifications to the routing fabric and the logic element. User modification of the design enables even higher performance, averaging 2.3X faster in a small set of designs.
David M. Lewis, Gordon R. Chiu, Jeffrey Chromczak, David R. Galloway, Ben Gamsa, Valavan Manohararajah, Ian Milton, Tim Vanderhoek, John Van Dyken
FPGA1
2013 Architectural enhancements in Stratix V™
abstract
This paper describes architectural enhancements in the Altera Stratix-V" FPGA architecture, built on a 28nm TSMC process, together with the data supporting those choices. Among the key features are time borrowing flip-flops, a doubling of the number of flip-flops per LUT compared to previous Stratix architectures, a simplified embedded 20kb dual-port RAM block, and error correction that can correct up to 8 adjacent errors. Arithmetic performance is significantly improved using a fast adder with two levels of multi-bit skip. We also describe how the routing architecture and layout is optimized for the 28nm process to take advantage of a wider range of wire thicknesses offered on the different layers, and improvements in performance and routability are obtained without dramatic changes to the repeated floorplan of the logic plus routing fabric.
David M. Lewis, David Cashman, Mark Chan, Jeffrey Chromczak, Gary Lai, Andy Lee, Tim Vanderhoek, Haiming Yu
FPGA1
2010 A comprehensive approach to modeling, characterizing and optimizing for metastability in FPGAs
abstract
Metastability is a phenomenon that can cause system failures in digital circuits. It may occur whenever signals are being transmitted across asynchronous or unrelated clock domains. The impact of metastability is increasing as process geometries shrink and supply voltages drop faster than transistor Vts. FPGA technologies are significantly affected since leading edge FPGAs are amongst the first devices to adopt the most recent process nodes. In this paper, we present a comprehensive suite of techniques for modeling, characterizing and optimizing metastability effects in FPGAs. We first discuss a theoretical model of metastability, and verify the predictions using both circuit level simulations and board measurements. Next we show how designers have traditionally dealt with metastability problems and contrast that with the automatic CAD algorithms described in this paper that both analyze and optimize metastability-related issues. Through our detailed experimental results, we show that we can improve the metastability characteristics of a large suite of industrial benchmarks by an average of 268,000 times with our optimization techniques.
Doris Chen, Deshanand P. Singh, Jeffrey Chromczak, David M. Lewis, Ryan Fung, David Neto, Vaughn Betz
FPGA4
2009 Architectural enhancements in Stratix-IIITM and Stratix-IVTM
abstract
This paper describes architectural enhancements in the Stratix-III" and Stratix-IV" FPGA architectures. These architectures feature programmable power management, which allows the power and performance of logic and routing to be varied to minimize total power without any performance loss. This paper describes the technique used for programmable power management, and describes the experimental evaluation that led to the choice of regions in these architectures. The memory architecture is also explored by adding heterogeneous memory mapping to the FPGA Modeling Toolkit, and used to explore LUT based memory structures. The ALM structure provides more inputs than required for a simple 6 LUT, which can be used with simple modifications to efficiently support simple dual-ported LUT based RAM. Replacing the Stratix-II" small memory blocks with LUT RAM and changing the size of other two memories is shown to reduce overall core area across a set of benchmark designs.
David M. Lewis, Elias Ahmed, David Cashman, Tim Vanderhoek, Christopher Lane, Andy Lee, Philip Pan
FPGA1
2005 The Stratix II logic and routing architecture
abstract
This paper describes the Altera Stratix II™ logic and routing architecture. This architecture features a novel adaptive logic module (ALM) that is based on a 6-LUT, but can be partitioned into two smaller LUTs to efficiently implement circuits containing a range of LUT sizes that arises in conventional synthesis flows. This provides a performance increase of 15% in the Stratix II architecture while reducing area by 2%. The ALM also includes a more powerful arithmetic structure that can perform two bits of arithmetic per ALM, and perform a sum of up to three inputs. The routing fabric adds a new set of fast inputs to the routing multiplexers for another 3% improvement in performance, while other improvements in routing efficiency cause another 6% reduction in area. These changes in combination with other circuit and architecture changes in Stratix II contribute 27% of an overall 51% performance improvement (including architecture and process improvement). The architecture changes reduce area by 10% in the same process, and by 50% after including process migration.
David M. Lewis, Elias Ahmed, Gregg Baeckler, Vaughn Betz, Mark Bourgeault, David Cashman, David R. Galloway, Mike Hutton, Christopher Lane, Andy Lee, Paul Leventis, Sandy Marquardt, Cameron McClintock, Ketan Padalia, Bruce Pedersen, Giles Powell, Boris Ratchev, Srinivas Reddy, Jay Schleicher, Kevin Stevens, Richard Yuan, Richard Cliff, Jonathan Rose
FPGA1
2004 Improving FPGA Performance and Area Using an Adaptive Logic Module
Mike Hutton, Jay Schleicher, David M. Lewis, Bruce Pedersen, Richard Yuan, Sinan Kaptanoglu, Gregg Baeckler, Boris Ratchev, Ketan Padalia, Mark Bourgeault, Andy Lee, Henry Kim, Rahul Saini
FPL3
2003 The StratixTM routing and logic architecture
abstract
This paper describes the Altera Stratix logic and routing architecture. The primary goals of the architecture were to achieve high performance and logic density. We give an overview of the entire device, and then focus on the logic and routing architecture. The Stratix logic architecture is based on a cluster of ten 4-input LUTs and its routing consists of staggered routing lines. We describe the development of the routing architecture, including its directional bias, its direct-drive routing which reduces both area and delay. The logic array block and logic cell design is also described, and new routing structures with in the logic array block, and logic element features are described.
David M. Lewis, Vaughn Betz, David Jefferson, Andy Lee, Christopher Lane, Paul Leventis, Sandy Marquardt, Cameron McClintock, Bruce Pedersen, Giles Powell, Srinivas Reddy, Chris Wysocki, Richard Cliff, Jonathan Rose
FPGA1
2002 Circuit design of routing switches
abstract
This paper examines circuit design of buffered routing switches in symmetrical, island-style FPGAs. The effects of switch size, tile length, level-restoring, and slow input slew rates are examined. Two new fanin-based switch designs are used to eliminate nearly all of the increase in delay that arises from fanout with a previous switch design. Alternating between buffers and pass transistors is shown to improve connection delay without fanout by 25%. To take advantage of this, we propose schemes to replace some buffers with pass transistors to simultaneously reduce area and delay. Routing a suite of MCNC benchmark circuits shows that 14% in area-delay, or 7% in delay can be saved using the new switch schemes. Alternatively, approximately 13% in area can be saved with no degradation to delay.
Guy Lemieux, David M. Lewis
FPGA2
2002 Analytical Framework for Switch Block Design
Guy Lemieux, David M. Lewis
FPL2
2002 Synthesizing datapath circuits for FPGAs with emphasis on area minimization
abstract
Large circuits, whether they are arithmetic, digital signal processing, switching, or processors, typically contain a greater portion of highly regular datapath logic. Datapath synthesis algorithms preserve these regular structures, so they can be exploited by packing, placement, and routing tools for speed or density. Typical datapath synthesis algorithms, however, sacrifice area to gain regularity. Current algorithms can have as much as 30% to 40% area inflation when compared with traditional flat synthesis algorithms. This paper describes a datapath synthesis algorithm with very low area overhead, which is an enhancement to the module compaction algorithm. We propose two word-level optimizations - multiplexer tree collapsing and operation reordering. They reduce the area inflation to 3%-8% as compared with flat synthesis. Our synthesis results also retain significant amount of regularity from the original designs.
Andy Gean Ye, Jonathan Rose, David M. Lewis
FPT3
2001 Using sparse crossbars within LUT
abstract
In FPGAs, the internal connections in a cluster of lookup tables (LUTs) are often fully-connected like a full crossbar. Such a high degree of connectivity makes routing easier, but has significant area overhead. This paper explores the use of sparse crossbars as a switch matrix inside the clusters between the cluster inputs and the LUT inputs. We have reduced the switch densities inside these matrices by 50% or more and saved from 10 to 18% in area with no degradation to critical-path delay. To compensate for the loss of routability, increased compute time and spare cluster inputs are required. Further investigation may yield modest area and delay reductions.
Guy Lemieux, David M. Lewis
FPGA2
2000 Design of a VLIW Compute Accelerator on the Transmogrifier-2
abstract
Design of FCCMs is an expensive and time consuming process, requiring a specialized software and hardware design for each application. A new class of architecture and compiler for customized computers called PECompiler that can automatically generate both hardware and software for field-programmable compute accelerators was recently introduced. This paper presents the parameterized compute accelerator and example applications that have been compiled for it. A generic very long instruction word (VLIW) instruction set is defined for the proposed compute accelerator architecture. Hardware accelerators are designed and implemented for two application programs on the TM-2 based system. It is demonstrated that for these two application programs, the hardware accelerators can provide significant performance improvement over a general-purpose CPU.
L. Louis Zhang, David M. Lewis
FCCM3
2000 Generating highly-routable sparse crossbars for PLDs
abstract
A method for evaluating and constructing sparse crossbars which are both area efficient and highly routable is presented. The evaluation method uses a network flow algorithm to accurately compute the percentage of random test vectors that can be routed. The construction method attempts to maximize the spread of the switch locations, such that any given subset of input wires can connect to as many output wires as possible. Based on Hall's Theorem, we argue that this increases the likelihood of routing.
Guy Lemieux, Paul Leventis, David M. Lewis
FPGA3
1999 Procedural Texture Mapping on FPGAs
abstract
Procedural textures can be effectively used to enhance the visual realism of computer rendered images. Procedural tex-tures can provide higher realism for 3-D objects than tradi-tional hardware texture mapping methods which use mem-ory to store 2-D texture images. This paper proposes a new method of hardware texture mapping in which texture im-ages are synthesized using FPGAs. This method is very efficient for texture mapping procedural textures of more than two input variables. By synthesizing these textures on the fly, the large amount of memory required to store their multidimensional texture images is eliminated, making tex-ture mapping of 3-D textures and parameterized textures feasible in hardware. This paper shows that using FPGAs, procedural textures can be synthesized at high speed, with a small hardware cost. Data on the performance and the hardware cost of synthesizing procedural textures in FP-GAS are presented. This paper also presents, the FPGA implementations of two Perlin noise based 3-D procedural textures.
Andy Gean Ye, David M. Lewis
FPGA2
1998 The Transmogrifier-2: a 1 million gate rapid-prototyping system
abstract
This paper describes the Transmogrifier-2 (TM-2), a second-generation multifield programmable gate array (FPGA) rapid-prototyping system. The largest version of the system will comprise 16 boards that each contain two Altera 10K50 FPGA's, four I-Cube interconnect chips, and up to 8 Mbytes of memory. The inter-FPGA routing architecture of the TM-2 uses a novel interconnect structure, a nonuniform partial crossbar, that provides a constant delay between any two FPGA's in the system. The TM-2 architecture is modular and scalable, meaning that systems of various sizes can be constructed from copies of the same board, while maintaining routability and the constant delay feature. Other features include a system-level programmable clock that allows single-cycle access to off-chip memory, and programmable clock waveforms with edge resolution of 10 ns. The first Transmogrifier-2 boards have been manufactured and are functional. They have recently been used successfully in some simple graphics acceleration applications.
David M. Lewis, David R. Galloway, Marcus van Ierssel, Jonathan Rose, Paul Chow
IEEE Trans. Very Large Scale Integr. Syst.1
1997 Automated field-programmable compute accelerator design using partial evaluation
abstract
This paper describes a compiler that generates both hardware and controlling software for field-programmable compute accelerators. By analyzing a source program together with part of its input, the compiler generates VHDL descriptions of functional units that are mapped on a set of FPGA chips and an optimized sequence of control constructions that run on the customized machine. The primary technique employed in the compiler is partial evaluation, which is used to transform an application program together with part of its input into an optimized program. Further phases in the compiler identify pieces of the program that can be realized in hardware and schedule computations to execute on the resulting hardware. Finally, a set of specialized functional units generated by the compiler for a timing simulation program is used to demonstrate the approach.
David M. Lewis
FCCM2
1997 The Transmogrifier-2: A 1 Million Gate Rapid Prototyping System
abstract
This paper describes the Transmogrifier-2, a second generation multi-FPGA system. The largest version of the system will comprise 16 boards that each contain two Altera 10K50 FPGAs, four I-cube interconnect chips, and up to 8 Mbytes of memory. The inter-FPGA routing architecture of the TM-2 uses a novel interconnect structure, a non-uniform partial crossbar, that provides a constant delay between any two FPGAs in the system. The TM-2 architecture is modular and scalable, meaning that various sized systems can be constructed from the same board, while maintaining routability and the constant delay feature. Other features include a system-level programmable clock that allows single-cycle access to off-chip memory, and programmable clock waveforms with resolution to 10ns. The first Transmogrifier-2 boards have been manufactured and are functional. They have recently been used successfully in some simple graphics acceleration applications.
David M. Lewis, David R. Galloway, Marcus van Ierssel, Jonathan Rose, Paul Chow
FPGA1
1996 Area-Speed Tradeoffs for Hierarchical Field-Programmable Gate Arrays
abstract
No abstract available.
Vi Cuong Chan, David M. Lewis
FPGA2
1994 Routing Architectures for Hierarchical Field Programmable Gate Arrays
abstract
This paper evaluates an architecture that implements a hierarchical routing structure for FPGAs, called a hierarchical FPGA (HFPGA). A set of new tools has been used to place and route several circuits on this architecture, with the goal of comparing the cost of HFPGAs to conventional symmetrical FPGAs. The results show that HFPGAs can implement circuits with fewer routing switches, and fewer switches in total, compared to symmetrical FGPAs, although they have the potential disadvantage that they may require more logic blocks due to coarser granularity.>
Aditya A. Aggarwal, David M. Lewis
ICCD2
1994 Interleaved Memory Function Interpolators with Application to an Accurate LNS Arithmetic Unit
abstract
This paper describes a new method for polynomial interpolation in hardware, with advantages demonstrated by its application to an accurate logarithmic number system (LNS) arithmetic unit. The use of an interleaved memory reduces storage requirements by allowing each stored function value to be used in interpolation across several segments. This strategy can be shown to always use fewer words of memory than an optimized polynomial with stored polynomial coefficients. Interleaved memory function interpolators are then applied to the specific goal of an accurate logarithmic number system arithmetic unit. Many accuracy requirements for the LNS arithmetic unit are possible. Although a round to nearest would be desirable, it cannot be easily achieved. The goal suggested is to insure that the worst case LNS relative error is smaller than the worst case floating point (FP) relative error. Using the interleaved memory interpolator, the detailed design of an LNS arithmetic unit is performed using a second order polynomial interpolator including approximately 91K bits of ROM. This arithmetic unit has better accuracy and less complexity than previous LNS units.>
David M. Lewis
IEEE Trans. Computers1
1993 An accurate LNS arithmetic unit using interleaved memory function interpolator
abstract
A logarithmic number system (LNS) arithmetic unit using a new method for polynomial interpolation in hardware is described. The use of an interleaved memory reduces storage requirements by allowing each stored function value to be used in interpolation across several segments. This strategy always uses fewer words of memory than an optimized polynomial with stored polynomial coefficients. Many accuracy requirements for the LNS arithmetic unit are possible, but a round to nearest cannot be easily achieved. The goal suggested here is to ensure that the worst case LNS relative error is smaller than the worst case FP relative error. Using the interleaved memory interpolator, the detailed design of an LNS arithmetic unit is performed using a second-order polynomial interpolator including approximately 91K bits of ROM.>
David M. Lewis
IEEE Symposium on Computer Arithmetic1
1993 A Field Programmable Accelerator for Compiled-Code Applications
abstract
Describes a special-purpose application accelerator using field-programmable gate arrays to accelerate a range of applications. The accelerator is designed to support applications by allowing the user to implement a processor with an instruction set designed for the specific application being accelerated, using specialized instructions to implement critical fragments of the application. A compiled-code software organization is used to reduce overhead operations. A prototype has been built, and the first application to be ported to it, logic simulation, is underway.>
David M. Lewis, Marcus van Ierssel, Daniel H. Wong
ICCD1
1993 Highly Selective "Analog" Filters Using Delta Sigma Based IIR Filtering
David A. Johns, David M. Lewis, Don Cherepacha
ISCAS2
1993 A multiple-strength multiple-delay compiled-code logic simulator
abstract
Describes a new logic state model for gate level simulation based upon a powerset representation of the possible drive states at the output of a logic gate. Efficient implementation techniques for this model in a compiled-code logic simulator are presented, with the results that most complicated operations can be optimized into simple table lookups. Algorithmic issues in a multiple-strength multiple-delay logic simulator are discussed. Implementation results show that for typical circuits, compiled-code implementations of multiple-strength unit-delay logic simulation and multiple-strength multiple-delay logic simulation are slightly lower than three-state unit-delay simulation, and achieve speedups of 5 to 14 times compared to interpretive versions of the same algorithms.>
Ahmet N. Parlakbilek, David M. Lewis
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.2
1992 A compiled-code hardware accelerator for circuit simulation
abstract
Describes the application of compiled-code techniques to the design of a hardware accelerator for circuit simulation, offering a speedup by a factor of up to 4400 compared with a software circuit simulator running on a Sun-3/60 workstation. The preprocessing algorithms are designed for high speed, so overall simulation time is improved by a factor of up to 560. Compiled-code hardware accelerators offer several advantages. The hardware is simpler than fully hard-wired accelerators. The simplicity of the hardware makes it possible to track advancing implementation technology and to maintain the performance advantage as technology improves. The simulation algorithm is implemented in software, making it possible to implement and maintain multiple algorithms without hardware modifications. The hardware can be used efficiently, since compiled-code techniques can eliminate or statically perform operations that would be repeatedly performed in other hard-wired implementations.>
David M. Lewis
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
1991 A hierarchical compiled code event-driven logic simulator
abstract
Logic simulation techniques that reduce both preprocessing time and execution time of unit delay logic simulation are described. Compiled code implementation techniques using a threaded code organization are applied to the event-driven logic simulation algorithm. Simulation speed is increased by a factor of tip to 10 by this technique compared to conventional event-driven simulation. The technique is then extended to hierarchical simulation, in which a fan-out procedure and simulation procedure are generated for each unique module. Hierarchical simulation reduces preprocessing time and allows the recompilation of only those modules that are modified. The simulator uses a portable machine model in which an architecture file describes the target machine. The simulator can be quickly ported to new machines by defining the architecture, while still obtaining high performance.>
David M. Lewis
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
1990 Using Deducibility in Secure Network Modelling
Brian W. Thomson, E. Stewart Lee, Peter I. P. Boulton, Michael Stumm, David M. Lewis
ESORICS5
1990 An Architecture for Addition and Subtraction of Long Word Length Numbers in the Logarithmic Number System
abstract
An architecture is described for performing addition and subtraction of numbers in the logarithmic number system using small lookup tables. Previous implementations require approximately 4*2/sup F/ words for F bits of precision in the fraction. The author shows how to reduce the size of the lookup table to fewer than (18+F)*2/sup F/2/ words. The key to this is the use of a linear approximation of the nonlinear functions stored in the lookup tables. The functions involved are highly nonlinear in some regions, so variable size regions are used for the approximation. The replacement of the F exponential dependence on the number of words by F/2 allows roughly 50% more bits of fractional precision to be obtained for a given amount of ROM. The architecture is mathematically analyzed, yielding explicit expressions for all design parameters. The approach is illustrated with an example logarithmic addition and subtraction unit using 32-b words with 30-b exponents containing 22 fractional bits. A factor of 118 reduction in table size compared to previous techniques is achieved for this example.>
David M. Lewis
IEEE Trans. Computers1
1990 Device model approximation using 2N trees
abstract
The application of 2/sup N/ trees to device model approximation is described. The domain of the device model function is partitioned using a 2/sup N/ tree, with smaller partitions where the function is more nonlinear. The function value associated with each corner of each partition is precomputed, and the function is evaluated by a given point by interpolation over the smallest partition that includes that point. This technique has the advantage that highly nonlinear functions can be modeled with modest space and time requirements. Exponential functions, such as the subthreshold behavior of FETs, can be accurately modeled. Accuracy levels of 1% are possible down to currents of 10/sup -11/ A. Table generation time is small; it is only a few minutes for a MOSFET model including subthreshold effects. This algorithm is especially suited for application to a hardware-accelerated device model evaluator. The design of a prototype that is capable of performing a device model evaluation of a SPICE level-2 model including subthreshold effects in 1 mu s is described. Less detailed models, such as timing simulator models, can be evaluated in as little as 0.2 mu s.>
David M. Lewis
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
1989 Algorithm design for a 30-bit integrated logarithmic processor
abstract
A description is given of the architecture of an integrated processor that is capable of performing addition and subtraction of 30-b numbers with 20 fractional bits in the logarithmic number system. Previous techniques would require 70 Mb of ROM to implement this processor, which is not feasible for a single-chip implementation. The techniques presented here use a factor of 275 less memory. The key to this is the use of a linear approximation of the nonlinear functions stored in the lookup tables. The functions involved are highly nonlinear in some regions, so variable size regions are used for the approximation. The use of linear approximation alone would still require over 565 kb of ROM. Further compression is obtained by using linear approximation with differential coding of each table. The compression is chosen to minimize ROM size and obtains a further reduction of 55%. A total of 260 kb of ROM is required to implement the processor.>
David M. Lewis, Lawrence K. Yu
IEEE Symposium on Computer Arithmetic1
1989 Hierarchical compiled event-driven logic simulation
abstract
A logic simulator is described that includes incremental preprocessing and reduced execution time. The simulator uses compiled code techniques with an event-driven algorithm. Each wire is compiled into a routine that performs fanout processing for that wire, and each gate is compiled into a routine that simulates that gate. At simulation time, the addresses of routines for active nodes and active gates are dynamically compiled into a threaded code sequence for simulating the active parts of the circuits. Gate-level simulation using C code output is up to 7 times faster, using as few as 40 machine instructions per gate event, while machine code would permit 20 instructions per gate event. This technique is then extended to hierarchical simulation, in which a fanout procedure and a simulation procedure are generated for each unique subcircuit type. Hierarchical simulation reduces preprocessing time by allowing incremental recompilation, in which only modified subcircuits are recompiled. The performance improvement is smaller due to the overhead of passing logic values and activation information between subcircuits, but a speed increase of 2 to 4 is realized.>
David M. Lewis
ICCAD1
1988 A Programmable Hardware Accelerator for Compiled Electrical Simulation
David M. Lewis
DAC1
1988 Hardware accelerators for timing simulation of VLSI digital circuits
abstract
Designs are presented of two hardware engines for timing simulation. Both use the forward Euler integration algorithm to solve the differential equations that model the circuit. The simplicity of this algorithm compensates for the small time-step required. By structuring the algorithm to reduce data dependencies and maximize functional parallelism, a pipelined implementation is used. The use of a compact data representation and static integration stability checks results in a simple, yet fast, processor. The first engine provides a uniprocessor implementation that explores the feasibility of this approach to timing simulation. The second engine is an enhancement of the first. It uses a multiprocessor structure with a high-bandwidth interconnection network to support parallel simulation. Circuit inactivity is also used in a selective trace algorithm. The speed of this accelerator is high, allowing the simulation of circuits with over 100000 transistors in under one second per simulated clock cycle.>
David M. Lewis
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
1986 Swamp: A Fast Processor for Smalltalk-80
abstract
A processor for the Smalltalk-80↑ programming language is described. This machine is implemented using a standard bit slice ALU and sequencer, TTL MSI, and NMOS LSI RAMS. It executes an instruction set similar to the Smalltalk-80 virtual machine instruction set. The data paths of the machine are optimized for rapid Smalltalk-80 execution by the inclusion of a context cache, tag checking, and a hardware method cache. Each context is only partly initialized when created, and has no memory allocated for it until a possibly non-LIFO reference to it is created. The machine is microprogrammed, and uses a simple next micro-address prediction strategy to obtain most of the performance of pipelining without the attendant complexity. The machine can execute simple instructions at over 7M bytecodes per second and has a predicted average throughput of 1.9M bytecodes per second.
David M. Lewis, David R. Galloway, Robert J. Francis, Brian W. Thomson
OOPSLA1
1985 A hardware engine for analogue mode simulation of MOS digital circuits
David M. Lewis
DAC1