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.

Dong-U Lee

dblp:43/4084 · DBLP profile ↗
← Back
28ranked-venue papers
22as first author
0since 2021 · last 2015
—ORCID · none

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

Systems, architecture and hardware · 24 · 19 first-authorComputer networks · 2 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 2 · 2 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
12 papers
Electronic design automation · 29% Integrated circuit design · 26% Reconfigurable computing and FPGAs · 16%
Computer networks
3 papers
Physical-layer communications · 56% Content delivery and video streaming · 26% Internet of things and sensor networks · 19%
Computer graphics and multimedia
2 papers
Image and video coding · 100%
Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 100%
Theoretical computer science
1 paper
Coding theory · 100%

Topics — the 28 heaviest of 29, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Electronic design automation › high-level synthesis › arithmetic-level optimization
bit-width optimization
0.232007
A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation · IEEE Trans. Computers 2007
Accuracy-Guaranteed Bit-Width Optimization · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
MiniBit: bit-width optimization via affine arithmetic · DAC 2005
Electronic design automation
high-level synthesis
0.232007
A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation · IEEE Trans. Computers 2007
Accuracy-Guaranteed Bit-Width Optimization · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
MiniBit: bit-width optimization via affine arithmetic · DAC 2005
Reconfigurable computing and FPGAs
FPGA implementation
0.232008
Hardware Implementation Trade-Offs of Polynomial Approximations and Interpolations · IEEE Trans. Computers 2008
Optimizing Hardware Function Evaluation · IEEE Trans. Computers 2005
A Hardware Gaussian Noise Generator Using the Box-Muller Method and Its Error Analysis · IEEE Trans. Computers 2006
Integrated circuit design › digital signal processing circuits
discrete wavelet transform hardware
0.112012
Precision-Aware Self-Quantizing Hardware Architectures for the Discrete Wavelet Transform · IEEE Trans. Image Process. 2012
Integrated circuit design
low-power circuit design
0.112012
Precision-Aware Self-Quantizing Hardware Architectures for the Discrete Wavelet Transform · IEEE Trans. Image Process. 2012
Integrated circuit design › digital circuit design
arithmetic circuit design
0.122008
Hardware Implementation Trade-Offs of Polynomial Approximations and Interpolations · IEEE Trans. Computers 2008
Optimizing Hardware Function Evaluation · IEEE Trans. Computers 2005
Processor architecture and microarchitecture › computer arithmetic
function evaluation unit
0.122008
Hardware Implementation Trade-Offs of Polynomial Approximations and Interpolations · IEEE Trans. Computers 2008
Optimizing Hardware Function Evaluation · IEEE Trans. Computers 2005
Image and video coding
image compression
0.122009
Energy-Efficient Image Compression for Resource-Constrained Platforms · IEEE Trans. Image Process. 2009
Energy-optimized image communication on resource-constrained sensor platforms · IPSN 2007
Content delivery and video streaming
image transmission
0.122009
Energy-optimized image communication on resource-constrained sensor platforms · IPSN 2007
Energy-Efficient Image Compression for Resource-Constrained Platforms · IEEE Trans. Image Process. 2009
Compilers and program optimization
code generation
0.112009
Optimized Custom Precision Function Evaluation for Embedded Processors · IEEE Trans. Computers 2009
Embedded and real-time systems
embedded processor
0.112009
Optimized Custom Precision Function Evaluation for Embedded Processors · IEEE Trans. Computers 2009
Physical-layer communications › signal detection
MIMO detection
0.112008
Design Tradeoffs and Hardware Architecture for Real-Time Iterative MIMO Detection using Sphere Decoding and LDPC Coding · IEEE J. Sel. Areas Commun. 2008
Physical-layer communications › signal detection › MIMO detection
sphere decoding
0.112008
Design Tradeoffs and Hardware Architecture for Real-Time Iterative MIMO Detection using Sphere Decoding and LDPC Coding · IEEE J. Sel. Areas Commun. 2008
Reconfigurable computing and FPGAs › FPGA resource optimization
FPGA design optimization
0.122006
Accuracy-Guaranteed Bit-Width Optimization · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006
MiniBit: bit-width optimization via affine arithmetic · DAC 2005
Internet of things and sensor networks
wireless sensor network
0.112007
Energy-optimized image communication on resource-constrained sensor platforms · IPSN 2007
Energy-efficient computing
energy-efficient communication
0.112007
Energy-optimized image communication on resource-constrained sensor platforms · IPSN 2007
Electronic design automation
hardware verification and test
0.112007
A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation · IEEE Trans. Computers 2007
Electronic design automation
design space exploration
0.112005
Optimizing Hardware Function Evaluation · IEEE Trans. Computers 2005
Integrated circuit design
digital circuit design
0.122009
Optimized Custom Precision Function Evaluation for Embedded Processors · IEEE Trans. Computers 2009
A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation · IEEE Trans. Computers 2007
Processor architecture and microarchitecture › computer arithmetic
fixed-point arithmetic
0.122009
Optimized Custom Precision Function Evaluation for Embedded Processors · IEEE Trans. Computers 2009
A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation · IEEE Trans. Computers 2007
Reconfigurable computing and FPGAs
FPGA-accelerated simulation
0.012004
A Gaussian Noise Generator for Hardware-Based Simulations · IEEE Trans. Computers 2004
Coding theory › channel coding
channel code
0.012004
A Gaussian Noise Generator for Hardware-Based Simulations · IEEE Trans. Computers 2004
Coding theory › error-correcting codes › LDPC codes
LDPC decoding
0.012004
A Gaussian Noise Generator for Hardware-Based Simulations · IEEE Trans. Computers 2004
Embedded and real-time systems
resource-constrained systems
0.012009
Energy-Efficient Image Compression for Resource-Constrained Platforms · IEEE Trans. Image Process. 2009
Physical-layer communications
channel coding
0.012008
Design Tradeoffs and Hardware Architecture for Real-Time Iterative MIMO Detection using Sphere Decoding and LDPC Coding · IEEE J. Sel. Areas Commun. 2008
Physical-layer communications › channel coding › error control coding › block codes
LDPC codes
0.012008
Design Tradeoffs and Hardware Architecture for Real-Time Iterative MIMO Detection using Sphere Decoding and LDPC Coding · IEEE J. Sel. Areas Commun. 2008
Image and video coding
JPEG compression
0.012007
Energy-optimized image communication on resource-constrained sensor platforms · IPSN 2007
Electronic design automation
hardware simulation
0.012004
A Gaussian Noise Generator for Hardware-Based Simulations · IEEE Trans. Computers 2004

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

JPEG compression · 0.5bit-width optimization · 0.4analytical error analysis · 0.3multi-word arithmetic · 0.2iterative detection and decoding · 0.2quantization · 0.1integer bit-width optimization · 0.1digit-serial design · 0.1bit-parallel design · 0.1simulated annealing · 0.1piecewise polynomial interpolation · 0.1piecewise linear approximation · 0.0chi-square test · 0.0anderson-darling test · 0.0
YearPublicationVenuePosition
2015 Automated Iterative Pipelining for ASIC Design
abstract
We describe an automated pipelining approach for optimally balanced pipeline implementation that achieves low area cost as well as meeting timing requirements. Most previous automatic pipelining methods have focused on Instruction Set Architecture (ISA)-based designs and the main goal of such methods generally has been maximizing performance as measured in terms of instructions per clock (IPC). By contrast, we focus on datapath-oriented designs (e.g., DSP filters for image or communication processing applications) in ASIC design flows. The goal of the proposed pipelining approach is to find the optimally pipelined design that not only meets the user-specified target clock frequency, but also seeks to minimize area cost of a given design. Unlike most previous approaches, the proposed methods incorporate the use of accurate area and timing information (iteratively achieved by synthesizing every interim pipelined design) to achieve higher accuracy during design exploration. When compared with exhaustive design exploration that considers all possible pipeline patterns, the two heuristic pipelining methods presented here involve only a small area penalty (typically under 5%) while offering dramatically reduced computational complexity. Experimental validation is performed with commercial ASIC design tools and described for applications including polynomial function evaluation, FIR filters, matrix multiplication, and discrete wavelet transform filter designs with a 90nm standard cell library.
Dong-U Lee, John D. Villasenor
ACM Trans. Design Autom. Electr. Syst.2
2012 Precision-Aware Self-Quantizing Hardware Architectures for the Discrete Wavelet Transform
abstract
This paper presents designs for both bit-parallel (BP) and digit-serial (DS) precision-optimized implementations of the discrete wavelet transform (DWT), with specific consideration given to the impact of depth (the number of levels of DWT) on the overall computational accuracy. These methods thus allow customizing the precision of a multilevel DWT to a given error tolerance requirement and ensuring an energy-minimal implementation, which increases the applicability of DWT-based algorithms such as JPEG 2000 to energy-constrained platforms and environments. Additionally, quantization of DWT coefficients to a specific target step size is performed as an inherent part of the DWT computation, thereby eliminating the need to have a separate downstream quantization step in applications such as JPEG 2000. Experimental measurements of design performance in terms of area, speed, and power for 90-nm complementary metal-oxide-semiconductor implementation are presented. Results indicate that while BP designs exhibit inherent speed advantages, DS designs require significantly fewer hardware resources with increasing precision and DWT level. A four-level DWT with medium precision, for example, while the BP design is four times faster than the digital-serial design, occupies twice the area. In addition to the BP and DS designs, a novel flexible DWT processor is presented, which supports run-time configurable DWT parameters.
Dong-U Lee, John D. Villasenor
IEEE Trans. Image Process.1
2009 Optimized Custom Precision Function Evaluation for Embedded Processors
abstract
Fixed-point processors are utilized in an enormous variety of applications, often for tasks that require the evaluation of mathematical functions. We present an automated method for mapping functions to such processors via polynomials that explicitly targets the native word-length of the processor, thereby significantly reducing the execution time relative to commonly used floating-point emulation approaches based on traditional mathematical libraries. The methods presented here also contrast with hand-tuned processor-specific code, which has the potential to deliver efficient implementations but at the cost of significant design time. We describe an automated design flow utilizing multi-word arithmetic to provide overflow protection and precision accurate to one unit in the last place (ulp). Analytical approaches are used to minimize the number of fixed-width operands required for each operation and to ensure that precision requirements are met. This allows automated generation of processor-optimized code and characterization of a design space representing a rich range of tradeoffs among precision, latency, and memory cost.
Dong-U Lee, John D. Villasenor
IEEE Trans. Computers1
2009 Energy-Efficient Image Compression for Resource-Constrained Platforms
abstract
One of the most important goals of current and future sensor networks is energy-efficient communication of images. This paper presents a quantitative comparison between the energy costs associated with 1) direct transmission of uncompressed images and 2) sensor platform-based JPEG compression followed by transmission of the compressed image data. JPEG compression computations are mapped onto various resource-constrained platforms using a design environment that allows computation using the minimum integer and fractional bit-widths needed in view of other approximations inherent in the compression process and choice of image quality parameters. Advanced applications of JPEG, such as region of interest coding and successive/progressive transmission, are also examined. Detailed experimental results examining the tradeoffs in processor resources, processing/transmission time, bandwidth utilization, image quality, and overall energy consumption are presented.
Dong-U Lee, Hyungjin Kim 0003, Mohammad H. Rahimi, Deborah Estrin, John D. Villasenor
IEEE Trans. Image Process.1
2009 Hierarchical Segmentation for Hardware Function Evaluation
abstract
This paper presents a method for evaluating functions based on piecewise polynomial approximations (splines) with a hierarchical segmentation scheme targeting hardware implementation. The methodology provides significant reduction in table size compared to traditional uniform segmentation approaches. The use of hierarchies involving uniform splines and splines with size varying by powers of two is particularly well suited for the coverage of nonlinear regions. The segmentation step is automated and supports user-supplied precision requirements and approximation method. Bit-widths of the coefficients and arithmetic operators are optimized to minimize circuit area and enable a guarantee of 1 unit in the last place (ulp) accuracy at the output. A coefficient transformation technique is also described, which significantly reduces the dynamic ranges of the fixed-point polynomial coefficients. The hierarchical segmentation method is illustrated using a set of functions including -(x/2) log2x, cos-1(x), radic(-ln(x)) , a high-degree rational function, ln(1+x), and 1/(1+x). Various degree-1 and degree-2 approximation results for precisions between 8 to 24 bits are given. Hardware realizations are demonstrated on a Xilinx Virtex-4 field-programmable gate array (FPGA).
Dong-U Lee, Ray C. C. Cheung, Wayne Luk, John D. Villasenor
IEEE Trans. Very Large Scale Integr. Syst.1
2008 Design Tradeoffs and Hardware Architecture for Real-Time Iterative MIMO Detection using Sphere Decoding and LDPC Coding
abstract
We explore the performance and hardware complexity tradeoffs associated with performing iterative multiple- input multiple-output (MIMO) detection using a sphere decoder and a low-density parity-check (LDPC) decoder. Iterations are performed both within the LDPC decoder as well as via an outer iteration loop through which refined soft information is fed back from the LDPC decoder to a MIMO detector. A hardware architecture and associated implementation results on Xilinx Virtex-5 field programmable gate array for a 4 x 4 QPSK MIMO system are presented. The system offers a performance improvement of approximately 1 dB over systems without the outer iteration loop, and provides an information bit throughput that ranges from 60 to 300 megabits per second when a length 1944 rate 1/2 LDPC code is used.
Hyungjin Kim 0003, Dong-U Lee, John D. Villasenor
IEEE J. Sel. Areas Commun.2
2008 Hardware Implementation Trade-Offs of Polynomial Approximations and Interpolations
abstract
This paper examines the hardware implementation tradeoffs when evaluating functions via piecewise polynomial approximations and interpolations for precisions up to 24 bits. In polynomial approximations, polynomials are evaluated using stored coefficients. Polynomial interpolations, however, require the coefficients to be computed on-the-fly using stored function values. Although it is known that interpolations require less memory than approximations at the expense of additional computation, the tradeoffs in memory, area, delay, and power consumption between the two approaches have not been examined in detail. This work quantitatively analyzes these tradeoffs for optimized approximations and interpolations across different functions and target precisions. Hardware architectures for degree-1 and degree-2 approximations and interpolations are described. The results show that the extent of memory savings realized by using interpolation is significantly lower than what is commonly believed. Furthermore, experimental results on a field-programmable gate array (FPGA) show that for high output precision, degree-1 interpolations offer considerable area and power savings over degree-1 approximations, but similar savings are not realized when degree-2 interpolations and approximations are compared. The availability of both interpolation-based and approximation-based designs offers a richer set of design tradeoffs than is available using either interpolation or approximation alone.
Dong-U Lee, Ray C. C. Cheung, Wayne Luk, John D. Villasenor
IEEE Trans. Computers1
2007 Energy-optimized image communication on resource-constrained sensor platforms
abstract
Energy-efficient image communication is one of the most important goals for a large class of current and future sensor network applications. This paper presents a quantitative comparison between the energy costs associated with 1) direct transmission of uncompressed images and 2) sensor platform-based JPEG compression followed by transmission of the compressed image data. JPEG compression computations are mapped onto various resource-constrained sensor platforms using a design environment that allows computation using the minimum integer and fractional bit-widths needed in view of other approximations inherent in the compression process and choice of image quality parameters. Detailed experimental results examining the tradeoffs in processor resources, processing/transmission time, bandwidth utilization, image quality, and overall energy consumption are presented.
Dong-U Lee, Hyungjin Kim 0003, Steven Tu, Mohammad H. Rahimi, Deborah Estrin, John D. Villasenor
IPSN1
2007 A Bit-Width Optimization Methodology for Polynomial-Based Function Evaluation
abstract
We present an automated bit-width optimization methodology for polynomial-based hardware function evaluation. Due to the analytical nature of the approach, overflow protection and precision accurate to one unit in the last place (ulp) can be guaranteed. A range analysis technique based on computing the root of the derivative of a signal is utilized to determine the minimal number of integer bits. Fractional bit requirements are established using an analytical error expression derived from the functions that occur along the data path. Global fractional bit optimization across multiple computation stages is performed using simulated annealing and circuit area estimation functions
Dong-U Lee, John D. Villasenor
IEEE Trans. Computers1
2007 Hardware Generation of Arbitrary Random Number Distributions From Uniform Distributions Via the Inversion Method
abstract
We present an automated methodology for producing hardware-based random number generator (RNG) designs for arbitrary distributions using the inverse cumulative distribution function (ICDF). The ICDF is evaluated via piecewise polynomial approximation with a hierarchical segmentation scheme that involves uniform segments and segments with size varying by powers of two which can adapt to local function nonlinearities. Analytical error analysis is used to guarantee accuracy to one unit in the last place (ulp). Compact and efficient RNGs that can reach arbitrary multiples of the standard deviation sigma can be generated. For instance, a Gaussian RNG based on our approach for a Xilinx Virtex-4 XC4VLX100-12 field-programmable gate array produces 16-bit random samples up to 8.2 sigma. It occupies 487 slices, 2 block-RAMs, and 2 DSP-blocks. The design is capable of running at 371 MHz and generates one sample every clock cycle.
Ray C. C. Cheung, Dong-U Lee, Wayne Luk, John D. Villasenor
IEEE Trans. Very Large Scale Integr. Syst.2
2007 A Flexible Architecture for Precise Gamma Correction
abstract
We present a flexible hardware architecture for precise gamma correction via piece-wise linear polynomial approximations. Arbitrary gamma values, input bit widths, and output bit widths are supported. The gamma correction curve is segmented via a combination of uniform segments and segments whose sizes vary by powers of two. This segmentation method minimizes the number of segments required, while providing an efficient way for indexing the polynomial coefficients. The outputs are guaranteed to be accurate to one unit in the last place through an analytical bit-width analysis methodology. Hardware realizations of various gamma correction designs are demonstrated on a Xilinx Virtex-4 field-programmable gate array (FPGA). A pipelined 12-bit input/8-bit output design on an XC4VLX100-12 FPGA occupies 146 slices and one digital signal processing slice. It is capable of performing 378 million gamma correction operations per second.
Dong-U Lee, Ray C. C. Cheung, John D. Villasenor
IEEE Trans. Very Large Scale Integr. Syst.1
2006 Inversion-based hardware gaussian random number generator: A case study of function evaluation via hierarchical segmentation
abstract
We present the design and implementation of a Gaussian random number generator (GRNG) via hierarchical segmentation. Gaussian samples are generated using the inversion method, which involves the evaluation of the inverse Gaussian cumulative distribution function (IGCDF). The IGCDF is highly nonlinear and is evaluated via piecewise polynomial approximations (splines) with a hierarchical segmentation scheme that involves uniform splines and splines with size varying by powers of two. This segmentation approach adapts the spline sizes according to the non-linearity of the function, allowing efficient evaluation of the IGCDF. Bit-widths of the fixed-point polynomial coefficients and arithmetic operators are optimized in an analytical manner to guarantee a precision accurate to one unit in the last place. Our architecture generates 16-bit Gaussian samples accurate to 8.2cr (standard deviations). A pipelined implementation on a Xilinx Virtex-4 XC4LX100-12 FPGA yields 371 MHz and occupies 543 slices, 2 block RAMs, and 2 DSP slices, generating one sample every clock cycle
Dong-U Lee, Ray C. C. Cheung, John D. Villasenor, Wayne Luk
FPT1
2006 A Hardware Gaussian Noise Generator Using the Box-Muller Method and Its Error Analysis
abstract
We present a hardware Gaussian noise generator based on the Box-Muller method that provides highly accurate noise samples. The noise generator can be used as a key component in a hardware-based simulation system, such as for exploring channel code behavior at very low bit error rates, as low as 10-12to 10-13. The main novelties of this work are accurate analytical error analysis and bit-width optimization for the elementary functions involved in the Box-Muller method. Two 16-bit noise samples are generated every clock cycle and, due to the accurate error analysis, every sample is analytically guaranteed to be accurate to one unit in the last place. An implementation on a Xilinx Virtex-4 XC4VLX100-12 FPGA occupies 1,452 slices, three block RAMs, and 12 DSP slices, and is capable of generating 750 million samples per second at a clock speed of 375 MHz. The performance can be improved by exploiting concurrent execution: 37 parallel instances of the noise generator at 95 MHz on a Xilinx Virtex-II Pro XC2VP100-7 FPGA generate seven billion samples per second and can run over 200 times faster than the output produced by software running on an Intel Pentium-4 3 GHz PC. The noise generator is currently being used at the Jet Propulsion Laboratory, NASA to evaluate the performance of low-density parity-check codes for deep-space communications
Dong-U Lee, John D. Villasenor, Wayne Luk, Philip H. W. Leong
IEEE Trans. Computers1
2006 Accuracy-Guaranteed Bit-Width Optimization
abstract
An automated static approach for optimizing bit widths of fixed-point feedforward designs with guaranteed accuracy, called MiniBit, is presented. Methods to minimize both the integer and fraction parts of fixed-point signals with the aim of minimizing the circuit area are described. For range analysis, the technique in this paper identifies the number of integer bits necessary to meet range requirements. For precision analysis, a semianalytical approach with analytical error models in conjunction with adaptive simulated annealing is employed to optimize the number of fraction bits. The analytical models make it possible to guarantee overflow/underflow protection and numerical accuracy for all inputs over the user-specified input intervals. Using a stream compiler for field-programmable gate arrays (FPGAs), the approach in this paper is demonstrated with polynomial approximation, RGB-to-YCbCr conversion, matrix multiplication, B-splines, and discrete cosine transform placed and routed on a Xilinx Virtex-4 FPGA. Improvements for a given design reduce the area and the latency by up to 26% and 12%, respectively, over a design using optimum uniform fraction bit widths. Studies show that MiniBit-optimized designs are within 1% of the area produced from the integer linear programming approach
Dong-U Lee, Altaf Abdul Gaffar, Ray C. C. Cheung, Oskar Mencer, Wayne Luk, George A. Constantinides
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
2005 Automating custom-precision function evaluation for embedded processors
abstract
Due to resource and power constraints, embedded processors often cannot afford dedicated floating-point units. For instance, the IBM PowerPC processor embedded in Xilinx Virtex-II Pro FPGAs only supports emulated floating-point arithmetic, which leads to slow operation when floating-point arithmetic is desired. This paper presents a customizable mathematical library using fixed-point arithmetic for elementary function evaluation. We approximate functions via polynomial or rational approximations depending on the user-defined accuracy requirements. The data representation for the inputs and outputs are compatible with IEEE single-precision and double-precision floating-point formats. Results show that our 32-bit polynomial method achieves over 80 times speedup over the single-precision mathematical library from Xilinx, while our 64-bit polynomial method achieves over 30 times speedup.
Ray C. C. Cheung, Dong-U Lee, Oskar Mencer, Wayne Luk, Peter Y. K. Cheung
CASES2
2005 MiniBit: bit-width optimization via affine arithmetic
abstract
MiniBit, our automated approach for optimizing bit-widths of fixed-point designs is based on static analysis via affine arithmetic. We describe methods to minimize both the integer and fraction parts of fixed-point signals with the aim of minimizing circuit area. Our range analysis technique identifies the number of integer bits required. For precision analysis, we employ a semi-analytical approach with analytical error models in conjunction with adaptive simulated annealing to find the optimum number of fraction bits. Improvements for a given design reduce area and latency by up to 20% and 12% respectively, over optimum uniform fraction bit-widths on a Xilinx Virtex-4 FPGA.
Dong-U Lee, Altaf Abdul Gaffar, Oskar Mencer, Wayne Luk
DAC1
2005 Ziggurat-based Hardware Gaussian Random Number Generator
abstract
An architecture and implementation of a high performance Gaussian random number generator (GRNG) is described. The GRNG uses the Ziggurat algorithm which divides the area under the probability density function into three regions (rectangular, wedge and tail). The rejection method is then used and this amounts to determining whether a random point falls into one of the three regions. The vast majority of points lie in the rectangular region and are accepted to directly produce a random variate. For the nonrectangular regions, which occur 1.5% of the time, the exponential or logarithm functions must be computed and an iterative fixed point operation unit is used. Computation of the rectangular region is heavily pipelined and a buffering scheme is used to allow the processing of rectangular regions to continue to operate in parallel with evaluation of the wedge and tail computation. The resulting system can generate 169 million normally distributed random numbers per second on a Xilinx XC2VP3O-6 device.
Guanglie Zhang, Philip H. W. Leong, Dong-U Lee, John D. Villasenor, Ray C. C. Cheung, Wayne Luk
FPL3
2005 Reconfigurable Acceleration for Monte Carlo Based Financial Simulation
Guanglie Zhang, Philip H. W. Leong, Chun Hok Ho, Kuen Hung Tsoi, Chris C. C. Cheung, Dong-U Lee, Ray C. C. Cheung, Wayne Luk
FPT6
2005 Optimizing Hardware Function Evaluation
abstract
We present a methodology and an automated system for function evaluation unit generation. Our system selects the best function evaluation hardware for a given function, accuracy requirements, technology mapping, and optimization metrics, such as area, throughput, and latency. Function evaluation f(x) typically consists of range reduction and the actual evaluation on a small convenient interval such as [0, /spl pi//2) for sin(x). We investigate the impact of hardware function evaluation with range reduction for a given range and precision of x and f(x) on area and speed. An automated bit-width optimization technique for minimizing the sizes of the operators in the data paths is also proposed. We explore a vast design space for fixed-point sin(x), log(x), and /spl radic/x accurate to one unit in the last place using MATLAB and ASC, a stream compiler for field-programmable gate arrays (FPGAs). In this study, we implement over 2,000 placed-and-routed FPGA designs, resulting in over 100 million application-specific integrated circuit (ASIC) equivalent gates. We provide optimal function evaluation results for range and precision combinations between 8 and 48 bits.
Dong-U Lee, Altaf Abdul Gaffar, Oskar Mencer, Wayne Luk
IEEE Trans. Computers1
2005 A hardware Gaussian noise generator using the Wallace method
abstract
We describe a hardware Gaussian noise generator based on the Wallace method used for a hardware simulation system. Our noise generator accurately models a true Gaussian probability density function even at high /spl sigma/ values. We evaluate its properties using: 1) several different statistical tests, including the chi-square test and the Anderson-Darling test and 2) an application for decoding of low-density parity-check (LDPC) codes. Our design is implemented on a Xilinx Virtex-II XC2V4000-6 field-programmable gate array (FPGA) at 155 MHz; it takes up 3% of the device and produces 155 million samples per second, which is three times faster than a 2.6-GHz Pentium-IV PC. Another implementation on a Xilinx Spartan-III XC3S200E-5 FPGA at 106 MHz is two times faster than the software version. Further improvement in performance can be obtained by concurrent execution: 20 parallel instances of the noise generator on an XC2V4000-6 FPGA at 115 MHz can run 51 times faster than software on a 2.6-GHz Pentium-IV PC.
Dong-U Lee, Wayne Luk, John D. Villasenor, Guanglie Zhang, Philip H. W. Leong
IEEE Trans. Very Large Scale Integr. Syst.1
2004 A Flexible Hardware Encoder for Low-Density Parity-Check Codes
abstract
We describe a flexible hardware encoder for regular and irregular low-density parity-check (LDPC) codes. Although LDPC codes achieve better performance and lower decoding complexity than turbo codes, a major drawback of LDPC codes is their apparently high encoding complexity. Using an efficient encoding method proposed by Richardson and Urbanke, we present a hardware LDPC encoder with linear encoding complexity. The encoder is flexible, supporting arbitrary H matrices, rates and block lengths. An implementation for a rate 1/2 irregular length 2000 LDPC code encoder on a Xilinx Virtex-II XC2V4000-6 FPGA takes up 4% of the device. It runs at 143 MHz and has a throughput of 45 million codeword bits per second (or 22 million information bits per second) with a latency of 0.18 ms. The performance can be improved by exploiting parallelism: several instances of the encoder can be mapped onto the same chip to encode multiple message blocks concurrently. An implementation of 16 instances of the encoder on the same device at 82 MHz is capable of 410 million codeword bits per second, 80 times faster than an Intel Pentium-lV 2.4 GHz PC.
Dong-U Lee, Wayne Luk, Connie Wang, Christopher R. Jones 0001, Michael Smith 0020, John D. Villasenor
FCCM1
2004 Automating Optimized Table-with-Polynomial Function Evaluation for FPGAs
Dong-U Lee, Oskar Mencer, David J. Pearce 0001, Wayne Luk
FPL1
2004 Adaptive range reduction for hardware function evaluation
abstract
Function evaluation f(x) typically consists of range reduction and the actual function evaluation on a small interval. We investigate optimization of range reduction given the range and precision of x and f(x). For every function evaluation there exists a convenient interval such as [0, /spl pi//2) for sin(x). The adaptive range reduction method, which we propose in this work, involves deciding whether range reduction can be used effectively for a particular design. The decision depends on the function being evaluated, precision, and optimization metrics such as area, latency and throughput. In addition, the input and output range has an impact on the preferable function evaluation method such as polynomial, table-based, or combinations of the two. We explore this vast design space of adaptive range reduction for fixed-point sin(x), log(x) and /spl radic/(x) accurate to one unit in the last place using MATLAB and ASC, A Stream Compiler. These tools enable us to study over 1000 designs resulting in over 40 million Xilinx equivalent circuit gates, in a few hours' time. The final objective is to progress towards a fully automated library that provides optimal function evaluation hardware units given input/output range and precision.
Dong-U Lee, Altaf Abdul Gaffar, Oskar Mencer, Wayne Luk
FPT1
2004 A Gaussian Noise Generator for Hardware-Based Simulations
abstract
Hardware simulation offers the potential of improving code evaluation speed by orders of magnitude over workstation or PC-based simulation. We describe a hardware-based Gaussian noise generator used as a key component in a hardware simulation system, for exploring channel code behavior at very low bit error rates (BERs) in the range of 10/sup -9/ to 10/sup -10/. The main novelty is the design and use of nonuniform piecewise linear approximations in computing trigonometric and logarithmic functions. The parameters of the approximation are chosen carefully to enable rapid computation of coefficients from the inputs while still retaining high fidelity to the modeled functions. The output of the noise generator accurately models a true Gaussian Probability Density Function (PDF) even at very high /spl sigma/ values. Its properties are explored using: 1) several different statistical tests, including the chi-square test and the Anderson-Darling test, and 2) an application for decoding of low-density parity-check (LDPC) codes. An implementation at 133 MHz on a Xilinx Virtex-II XC2V4000-6 FPGA produces 133 million samples per second, which is seven times faster than a 2.6 GHz Pentium-IV PC; another implementation on a Xilinx Spartan-IIE XC2S300E-7 FPGA at 62 MHz is capable of a three times speedup. The performance can be improved by exploiting parallelism: an XC2V4000-6 FPGA with nine parallel instances of the noise generator at 105 MHz can run 50 times faster than a 2.6 GHz Pentium-IV PC. We illustrate the deterioration of clock speed with the increase in the number of instances.
Dong-U Lee, Wayne Luk, John D. Villasenor, Peter Y. K. Cheung
IEEE Trans. Computers1
2003 A Hardware Gaussian Noise Generator for Channel Code Evaluation
abstract
Hardware simulation of channel codes offers the potential of improving code evaluation speed by orders of magnitude over workstation of PC-based simulation. We describe a hardware-based Gaussian noise generator used as a key component in a hardware simulation system, for exploring channel code behavior at very low bit error rates (BERs) in the range of 10/sup -9/ to 10/sup -10/. The main novelty is the design and use of nonuniform piecewise linear approximations in computing trigonometric and logarithmic functions. The parameters of the approximation are chosen carefully to enable rapid computation of coefficients from the inputs, while still retaining extremely high fidelity to the modeled functions. The output of the noise generator accurately models a true Gaussian PDF even at very high /spl sigma/ values. Its properties are explored using: (a) several different statistical tests, including the chi-square test and the Kolmogorov-Smirnov test, and (b) an application for decoding of low density parity check (LDPC) codes. An implementation at 133MHz on a Xilinx Virtex-II XC2V4000-6 FPGA produces 133 million samples per second, which is 40 times faster than a 2.13GHz PC; another implementation on a Xilinx Spartan-IIE XC2S300E-7 FPGA at 62MHz is capable of a 20 times speedup. The performance can be improved by exploiting parallelism: an XC2V4000-6 FPGA with three parallel instances of the noise generator at 126 MHz can run 100 times faster than a 2.13GHz PC. We illustrate the deterioration of clock speed with the increase in the number of instances.
Dong-U Lee, Wayne Luk, John D. Villasenor, Peter Y. K. Cheung
FCCM1
2003 Non-uniform Segmentation for Hardware Function Evaluation
Dong-U Lee, Wayne Luk, John D. Villasenor, Peter Y. K. Cheung
FPL1
2003 Hierarchical segmentation schemes for function evaluation
abstract
This paper presents a method for evaluating functions based on piecewise polynomial approximation with a novel hierarchical segmentation scheme. The use of a novel hierarchy scheme of uniform segments and segments with size varying by powers of two enables us to approximate non-linear regions of a function particularly well. This partitioning is automated: efficient look-up tables and their coefficients are generated for a given function, input range, order of the polynomials, desired accuracy and finite precision constraints. We describe an algorithm to find the optimum number of segments and the placement of their boundaries, which is used to analyze the properties of a function and to benchmark out approach. Our method is illustrated using three non-linear compound functions, /spl radic/-log(x), x log(x) and a high order rational function. We present results for various operand sizes between 8 and 24 bits for first and second order polynomial approximations.
Dong-U Lee, Wayne Luk, John D. Villasenor, Peter Y. K. Cheung
FPT1
2002 Incremental programming for reconfigurable engines
abstract
We present an incremental approach to developing programs for reconfigurable engines, systems which contain both instruction processors and reconfigurable hardware. The purpose is to support rapid production of prototypes, as well as their further systematic refinement and adaptation when required. The key elements of our approach include abstractions and tools based on high-level descriptions, and facilities for optimizations such as domain-specific data partitioning and run-time reconfiguration. The application of our approach is illustrated using the SONIC reconfigurable engine, which contains a multi-FPGA card in a PC system designed for video image processing.
Dong-U Lee, Wayne Luk, Peter Y. K. Cheung
FPT1