A Formal Approach to Design and Verification of Different Modules of a Processor having Software Bas

Page 1

Volume 2, Spl. Issue 2 (2015)

e-ISSN: 1694-2310 | p-ISSN: 1694-2426

A Formal Approach to Design and Verification of Different Modules of a Processor having Software Based Pipelining Architecture Sanjeev Kumar1, Narender kumar2, Tejinder Singh3 Assitant Professor, Department of Electronics and Communication Engineering, Baddi University of Emerging Sciences and Technology, Baddi, Solan (H.P.) sanjeevbhatti@baddiuniv.ac.in1 , narenrder.k.s@baddiuniv.ac.in2 , tejindersingh@baddiuniv.ac.in3

Abstract— This paper proposes a formal approach to design and verification of different modules used in processor, which is based on software based on software based pipelining architecture. Microprocessors have grown from 8 bits to 16 bits, 32 bits, and currently to 64 bits. Microprocessor architecture has also grown from complex instruction set computing (CISC) based to reduced instruction set computing (RISC) based on a combination of RISC-CISC based and currently very long instruction word (VLIW) based. In this paper we have performed the hardware design and verification of a 32-bit VLIW microprocessor capable of operating four operations per VLIW instruction word on ASIC and FPGA technology. The VLIW microprocessor begins with the technical specifications which involve the voltage requirements, performance requirements, area utilization, VLIW instruction set, register file definition, and details of operation for each instruction. From these technical details, the architecture and microarchitecture consisting of four pipes running in parallel allowing for four operations executed in parallel are described in detail with each pipe being split into four stages of pipelining. Keywords— Reduced Instruction Set Computing (RISC), Complex Instruction Set Computing (CISC), Very Long Instruction Word (VLIW), instruction level parallelism (ILP ).

I. INTRODUCTION Microprocessors and microcontrollers are widely used in the world today. They are used in everyday electronic systems, be it systems used in industry or systems used by consumers. Complex electronic systems such as computers, ATM machines, POS systems, financial systems, transaction systems, control systems, and database systems all use some form of microcontroller or microprocessor as the core of their system. Consumer electronic systems such as home security systems, chipbased credit cards, microwave ovens, cars, cell phones, PDAs, refrigerators, and other daily appliances have within the core of their systems either a microcontroller or microprocessor. Microprocessors and microcontrollers are very similar in nature. In fact, from a top level perspective, a microprocessor is the core of a microcontroller. A microcontroller basically consists of a microprocessor as its central processing unit (CPU) with peripheral logic surrounding the microprocessor core. As such it can be viewed that a microprocessor is the building block for a microcontroller. A microcontroller has many uses. It is commonly used to provide a system level solution for things such as controlling a car’s electronic system, home security systems, ATM system, communication systems, BUEST, Baddi

RIEECE-2015

daily consumer appliances (such as microwave oven, washing machine), and many others. II. TYPES OF MICROPROCESSORS The first microprocessor was developed by Intel Corp in 1971. It was called 4004. The 4004 was a simple design compared to the microprocessors that we have today. However, back in 1971 the 4004 was a state-of-the-art microprocessor [1]. Microprocessors today have grown manifold from their beginnings. Present-day microprocessors typically run in hundreds of megahertz ranging to gigahertz in their clock speeds. They have also grown from 8 bits to 16, 32, and 64 bits. The architecture of a microprocessor has also grown from CISC to RISC and VLIW. Complex instruction set computing (CISC) is based on the concept of using as little instruction as possible in programming a microprocessor. CISC instruction sets are large with instructions ranging from basic to complex instructions. CISC microprocessors were widely used in the early days of microprocessor history [1]. Reduced instruction set computing (RISC) microprocessors are very different from CISC microprocessors. RISC uses the concept of keeping the instruction set as simple as possible to allow the microprocessor’s program to be written using only simple instructions. This idea was presented by John Cocke from IBM Research when he noticed that most complex instructions in the CISC instruction set were seldom used while the basic instructions were heavily utilized. Apart from the CISC and RISC microprocessors, there is a different generation of microprocessor based on a concept called very long instruction word (VLIW). VLIW microprocessors make use of a concept of instruction level parallelism (ILP)—executing multiple instructions in parallel. There are many applications in the multimedia domain happen to contain a lot of Instruction Level Parallelism (ILP), because they typically consist of many independent repetitive calculations. Very Long Instruction Word (VLIW) processors exploit ILP by means of a compiler that is completely aware of the target processor architecture [2]. VLIW microprocessors are not the only type of microprocessors that take advantage of executing multiple instructions in parallel. Superscalar super pipeline 258


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.
A Formal Approach to Design and Verification of Different Modules of a Processor having Software Bas by IJEEE (Elixir Publications) - Issuu