Institutional Repository
Technical University of Crete
EN  |  EL

Search

Browse

My Space

Implementation of an ARM processor with SIMD extensions using the Bluespec Hardware Description Language

Makrygiannis Konstantinos

Full record


URI: http://purl.tuc.gr/dl/dias/95931972-5301-4118-AD6D-D9AD1015F29C
Year 2018
Type of Item Diploma Work
License
Details
Appears in Collections

Summary

The goal of this thesis was to implement an ARM processor with Single Instruction Multiple Data (SIMD) extensions using the Bluespec System Verilog (BSV) as a Hardware Description Language (HDL). BSV has a fundamentally different approach to hardware design, comparing to other HDLs. It is based on circuit generation - rather than merely circuit description - and on atomic transactional rules instead of a globally synchronous view of the world. BSV language is considered a high-level functional HDL, which was essentially Haskell - extended to handle chip design and electronic design automation in general. BSV is partially evaluated (to convert the Haskell parts) and compiled to the Term Rewriting System (TRS). Our scalar processor supports a 3-stage pipeline (Fetch – Decode – Execute), belongs to the ARM7 family and uses a 32-bit architecture, which is based on ARMv4 instruction set. The SIMD unit works as an extension to the scalar part and is based on a modification of ARM NEON technology. The scalar part of the processor supports Data processing, Multiply, Long Multiply, Load/Store – Byte/Word and Branch instructions of the ARM Instruction Set Format, while the vector part supports Vector Data Processing, Vector Multiply and Vector Load/Store instructions.

Available Files

Services

Statistics