Title :
High-Level Design and Validation of the BlueSPARC Multithreaded Processor
Author :
Chung, Eric S. ; Hoe, James C.
Author_Institution :
Dept. of Electr. & Comput. Eng., Carnegie Mellon Univ., Pittsburgh, PA, USA
Abstract :
This paper presents our experiences in using high-level methods to design and validate a 16-way multithreaded microprocessor called BlueSPARC. BlueSPARC is an in-order, high-throughput processor supporting complex features such as privileged-mode operations, memory management, and a nonblocking cache subsystem. Using a high-level design language called Bluespec System Verilog (BSV), our final implementation achieves comparable synthesis quality to a similar commercial microprocessor developed using conventional register transfer level flows, and is capable of running unmodified commercial applications while hosted on a Xilinx XCV2P70 field-programmable gate array (FPGA) at 90 MHz. To validate our implementation, an FPGA-accelerated approach was developed to efficiently check the correct execution of real, nondeterministic multithreaded programs running on the BlueSPARC processor. Together, the high-level language features of BSV along with our validation approach enabled us to achieve a working FPGA-based implementation in less than one man-year.
Keywords :
hardware description languages; microprocessor chips; BlueSPARC multithreaded processor; bluespec system verilog; high-level design; high-level design language; memory management; nonblocking cache subsystem; privileged-mode operations; Complexity theory; Context; Field programmable gate arrays; Hardware; Microarchitecture; Microprocessors; Pipeline processing; Hardware description language (HDL); microprocessor; synthesis; validation;
Journal_Title :
Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
DOI :
10.1109/TCAD.2010.2057870