|
ABSTRACT
Just-in-time (JIT) compilation has previously been used in many applications to enable standard software binaries to execute on different underlying processor architectures. However, embedded systems increasingly incorporate Field Programmable Gate Arrays (FPGAs), for which the concept of a standard hardware binary did not previously exist, requiring designers to implement a hardware circuit for a single specific FPGA. We introduce the concept of a standard hardware binary, using a just-in-time compiler to compile the hardware binary to an FPGA. A JIT compiler for FPGAs requires the development of lean versions of technology mapping, placement, and routing algorithms, of which routing is the most computationally and memory expensive step. We present the Riverside On-Chip Router (ROCR) designed to efficiently route a hardware circuit for a simple configurable logic fabric that we have developed. Through experiments with MCNC benchmark hardware circuits, we show that ROCR works well for JIT FPGA compilation, producing good hardware circuits using an order of magnitude less memory resources and execution time compared with the well known Versatile Place and Route (VPR) tool suite. ROCR produces good hardware circuits using 13X less memory and executing 10X faster than VPR's fastest routing algorithm. Furthermore, our results show ROCR requires only 10% additional routing resources, and results in circuit speeds only 32% slower than VPR's timing-driven router, and speeds that are actually 10% faster than VPR's routability-driven router.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Altera Corp. http://www.altera.com, 2003.
|
 |
2
|
R. Amerson , R. Carter , W. Culbertson , P. Kuekes , G. Snider , Lyle Albertson, Plasma: an FPGA for million gate systems, Proceedings of the 1996 ACM fourth international symposium on Field-programmable gate arrays, p.10-16, February 11-13, 1996, Monterey, California, United States
[doi> 10.1145/228370.228372]
|
| |
3
|
Atmel Corp. http://www.atmel.com, 2003.
|
 |
4
|
Vasanth Bala , Evelyn Duesterwald , Sanjeev Banerjia, Dynamo: a transparent dynamic optimization system, Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation, p.1-12, June 18-21, 2000, Vancouver, British Columbia, Canada
|
| |
5
|
|
| |
6
|
|
| |
7
|
Betz, V., J. Rose, A. Marquardt. VPR and T-VPack: Versatile Packing, Placement and Routing for FPGAs. http:// www.eecg.toronto.edu/~vaughn/vpr/vpr.html, 2003.
|
 |
8
|
|
| |
9
|
Cypress Semiconductor. http://www.cypress.com, 2004.
|
| |
10
|
|
| |
11
|
Gschwind, M., E. Altman, S. Sathaye, P. Ledak, D. Appenzeller. Dynamic and Transparent Binary Translation. IEEE Computer, Vol. 3, pp.70--77, 2000.
|
| |
12
|
Klaiber, A. The Technology Behind Crusoe Processors. Transmeta Corporation White Paper, 2000.
|
| |
13
|
|
| |
14
|
Lee, C. Y. An Algorithm for Path Connection and its Applications. IRE Transaction on Electronic Computing, Vol. EC=10, pp. 346--365, 1961.
|
| |
15
|
|
 |
16
|
|
 |
17
|
|
| |
18
|
|
| |
19
|
Singh, S., J. Rose, P. Chow, D. Lewis. The Effect of Logic Block Architecture on FPGA Performance. IEEE Journal of Solid-State Circuits, Vol. 27, No. 3, 1992.
|
 |
20
|
|
 |
21
|
|
| |
22
|
Transmeta Corporation. http://www.transmeta.com, 2004.
|
| |
23
|
Xilinx, Inc. http://www.xilinx.com, 2004.
|
| |
24
|
Yang, S. Logic Synthesis and Optimization Benchmarks, Version 3.0. Technical Report, Microelectronics Center of North Carolina, 1991.
|
CITED BY 9
|
|
Greg Stitt , Zhi Guo , Walid Najjar , Frank Vahid, Techniques for synthesizing binaries to an advanced register/memory structure, Proceedings of the 2005 ACM/SIGDA 13th international symposium on Field-programmable gate arrays, February 20-22, 2005, Monterey, California, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INDEX TERMS
Primary Classification:
B.
Hardware
B.7
INTEGRATED CIRCUITS
B.7.2
Design Aids
Subjects:
Placement and routing
Additional Classification:
C.
Computer Systems Organization
C.3
SPECIAL-PURPOSE AND APPLICATION-BASED SYSTEMS
Subjects:
Real-time and embedded systems
General Terms:
Algorithms,
Design,
Performance
Keywords:
FPGA,
codesign,
configurable logic,
dynamic optimization,
hardware/software partitioning,
just-in-time compilation,
place and route,
platforms,
system-on-a-chip,
warp processors
|