DEVELOPMENT OF PESONA RISC MICROPROCESSOR ARCHITECTURE IN FPGA MOHD FAHMIR ADZRAN BIN RAMLEE

Similar documents
THREE BIT SUBTRACTION CIRCUIT VIA FIELD PROGRAMMABLE GATE ARRAY (FPGA) NOORAISYAH BINTI ARASID B

MICRO-SEQUENCER BASED CONTROL UNIT DESIGN FOR A CENTRAL PROCESSING UNIT TAN CHANG HAI

HARDWARE AND SOFTWARE CO-SIMULATION PLATFORM FOR CONVOLUTION OR CORRELATION BASED IMAGE PROCESSING ALGORITHMS SAYED OMID AYAT

HIGH SPEED SIX OPERANDS 16-BITS CARRY SAVE ADDER AWATIF BINTI HASHIM

IMPLEMENTATION OF UNMANNED AERIAL VEHICLE MOVING OBJECT DETECTION ALGORITHM ON INTEL ATOM EMBEDDED SYSTEM

HARDWARE/SOFTWARE SYSTEM-ON-CHIP CO-VERIFICATION PLATFORM BASED ON LOGIC-BASED ENVIRONMENT FOR APPLICATION PROGRAMMING INTERFACING TEO HONG YAP

DESIGN AND IMPLEMENTATION OF A MUSIC BOX USING FPGA TAN KIAN YIAK

SMART AQUARJUM (A UTOMATIC FEEDING MACHINE) SY AFINAZ ZURJATI BINTI BAHARUDDIN

BLOCK-BASED NEURAL NETWORK MAPPING ON GRAPHICS PROCESSOR UNIT ONG CHIN TONG UNIVERSITI TEKNOLOGI MALAYSIA

LOGICAL OPERATORS AND ITS APPLICATION IN DETERMINING VULNERABLE WEBSITES CAUSED BY SQL INJECTION AMONG UTM FACULTY WEBSITES NURUL FARIHA BINTI MOKHTER

ISOGEOMETRIC ANALYSIS OF PLANE STRESS STRUCTURE CHUM ZHI XIAN

AMBA AXI BUS TO NETWORK-ON-CHIP BRIDGE NG KENG YOKE UNIVERSITI TEKNOLOGI MALAYSIA

Signature : IHSAN BIN AHMAD ZUBIR. Date : 30 November 2007

Design and Implementation of I2C BUS Protocol on Xilinx FPGA. Meenal Pradeep Kumar

ENHANCING TIME-STAMPING TECHNIQUE BY IMPLEMENTING MEDIA ACCESS CONTROL ADDRESS PACU PUTRA SUARLI

AN IMPROVED PACKET FORWARDING APPROACH FOR SOURCE LOCATION PRIVACY IN WIRELESS SENSORS NETWORK MOHAMMAD ALI NASSIRI ABRISHAMCHI

Signature :.~... Name of supervisor :.. ~NA.lf... l.?.~mk.. :... 4./qD F. Universiti Teknikal Malaysia Melaka

AUTOMATIC RAILWAY GATE CONTROLLERUSING ZIGBEE NURLIYANA HAZIRAH BINTI MOHD SAFEE (B )

This item is protected by original copyright

ENHANCEMENT OF UML-BASED WEB ENGINEERING FOR METAMODELS: HOMEPAGE DEVELOPMENT CASESTUDY KARZAN WAKIL SAID

HARDWARE-ACCELERATED LOCALIZATION FOR AUTOMATED LICENSE PLATE RECOGNITION SYSTEM CHIN TECK LOONG UNIVERSITI TEKNOLOGI MALAYSIA

HOME APPLIANCE CONTROL SYSTEM TAN WEI SYE

FPGA Based Digital Design Using Verilog HDL

Novel Design of Dual Core RISC Architecture Implementation

THE COMPARISON OF IMAGE MANIFOLD METHOD AND VOLUME ESTIMATION METHOD IN CONSTRUCTING 3D BRAIN TUMOR IMAGE

DETECTION OF WORMHOLE ATTACK IN MOBILE AD-HOC NETWORKS MOJTABA GHANAATPISHEH SANAEI

MAC PROTOCOL FOR WIRELESS COGNITIVE NETWORK FARAH NAJWA BINTI MOKHTAR

Digital Integrated Circuits

Embedded Computing Platform. Architecture and Instruction Set

IMPLEMENTATION AND PERFORMANCE ANALYSIS OF IDENTITY- BASED AUTHENTICATION IN WIRELESS SENSOR NETWORKS MIR ALI REZAZADEH BAEE

The Nios II Family of Configurable Soft-core Processors

AUTOMATIC APPLICATION PROGRAMMING INTERFACE FOR MULTI HOP WIRELESS FIDELITY WIRELESS SENSOR NETWORK

SEMANTICS ORIENTED APPROACH FOR IMAGE RETRIEVAL IN LOW COMPLEX SCENES WANG HUI HUI

BORANG PENGESAHAN STATUS TESIS

Multi Cycle Implementation Scheme for 8 bit Microprocessor by VHDL

SOFTWARE-BASED SELF-TESTING FOR A RISC PROCESSOR TEH WEE MENG UNIVERSITI TEKNOLOGI MALAYSIA

IMPROVED IMAGE COMPRESSION SCHEME USING HYBRID OF DISCRETE FOURIER, WAVELETS AND COSINE TRANSFORMATION MOH DALI MOUSTAFA ALSAYYH

International Journal of Informative & Futuristic Research ISSN (Online):

ENHANCING SRAM PERFORMANCE OF COMMON GATE FINFET BY USING CONTROLLABLE INDEPENDENT DOUBLE GATES CHONG CHUNG KEONG UNIVERSITI TEKNOLOGI MALAYSIA

MUHAMMAD FIRDAUS BIN MD YUSOF

The University of Reduced Instruction Set Computer (MARC)

MULTICHANNEL ORTHOGONAL FREQUENCY DIVISION MULTIPLEXING -ROF FOR WIRELESS ACCESS NETWORK MOHD JIMMY BIN ISMAIL

INTEGRATION OF CUBIC MOTION AND VEHICLE DYNAMIC FOR YAW TRAJECTORY MOHD FIRDAUS BIN MAT GHANI

MC68000 MICROPROCESSOR STAND ALONE EDUCATIONAL BOARD HENG POH XUAN

AUTOMATIC PET FEEDER WITH CLIENT/SERVER APPLICATION KHAIRUL ANWAR B MOHD YAKOP UNIVERSITI MALAYSIA PAHANG

FPGA Implementation of MIPS RISC Processor

FINGERPRINT DATABASE NUR AMIRA BINTI ARIFFIN THESIS SUBMITTED IN FULFILMENT OF THE DEGREE OF COMPUTER SCIENCE (COMPUTER SYSTEM AND NETWORKING)

A NEW STEGANOGRAPHY TECHNIQUE USING MAGIC SQUARE MATRIX AND AFFINE CIPHER WALEED S. HASAN AL-HASAN UNIVERSITI TEKNOLOGI MALAYSIA

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

ARM PROCESSOR EMULATOR MOHAMAD HASRUZAIRIN B MOHD HASHIM

RECONFIGURABLE SPI DRIVER FOR MIPS SOFT-CORE PROCESSOR USING FPGA

Teaching Computer Architecture with FPGA Soft Processors

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

COLOUR IMAGE WATERMARKING USING DISCRETE COSINE TRANSFORM AND TWO-LEVEL SINGULAR VALUE DECOMPOSITION BOKAN OMAR ALI

SPEED ENHANCEMENT ON A MATRIX INVERSION HARDWARE ARCHITECTURE BASED ON GAUSS-JORDAN ELIMINATION OH ENG WEI UNIVERSITI TEKNOLOGI MALAYSIA

Honorary Professor Supercomputer Education and Research Centre Indian Institute of Science, Bangalore

OPTIMIZE PERCEPTUALITY OF DIGITAL IMAGE FROM ENCRYPTION BASED ON QUADTREE HUSSEIN A. HUSSEIN

MODELLING AND REASONING OF LARGE SCALE FUZZY PETRI NET USING INFERENCE PATH AND BIDIRECTIONAL METHODS ZHOU KAIQING

INTRODUCTION TO FPGA ARCHITECTURE

DEVELOPMENT OF SPAKE S MAINTENANCE MODULE FOR MINISTRY OF DEFENCE MALAYSIA SYED ARDI BIN SYED YAHYA KAMAL UNIVERSITI TEKNOLOGI MALAYSIA

Basic FPGA Architectures. Actel FPGAs. PLD Technologies: Antifuse. 3 Digital Systems Implementation Programmable Logic Devices

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim

FPGAs in a Nutshell - Introduction to Embedded Systems-

BORANG PENGESAHAN STATUS TESIS

Programmable Logic Devices

Keywords: Soft Core Processor, Arithmetic and Logical Unit, Back End Implementation and Front End Implementation.

THESIS PROJECT ARCHIVE SYSTEM (T-PAS) SHAHRUL NAZMI BIN ISMAIL

SUPERVISED MACHINE LEARNING APPROACH FOR DETECTION OF MALICIOUS EXECUTABLES YAHYE ABUKAR AHMED

HERMAN. A thesis submitted in fulfilment of the requirements for the award of the degree of Doctor of Philosophy (Computer Science)

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

L2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA

DEVELOPMENT OF VENDING MACHINE WITH PREPAID PAYMENT METHOD AMAR SAFUAN BIN ALYUSI

VERILOG DESIGN OF INPUT/OUTPUT PROCESSOR WITH BUILT-IN-SELF-TEST GOH KENG HOO UNIVERSITI TEKNOLOGI MALAYSIA

A LEVY FLIGHT PARTICLE SWARM OPTIMIZER FOR MACHINING PERFORMANCES OPTIMIZATION ANIS FARHAN BINTI KAMARUZAMAN UNIVERSITI TEKNOLOGI MALAYSIA

Readout Control in a Calorimeter

Universiteit Leiden Opleiding Informatica

FPGA Based Implementation of Pipelined 32-bit RISC Processor with Floating Point Unit

FPGA How do they work?

RECOGNITION OF PARTIALLY OCCLUDED OBJECTS IN 2D IMAGES ALMUASHI MOHAMMED ALI UNIVERSITI TEKNOLOGI MALAYSIA

Segment 1A. Introduction to Microcomputer and Microprocessor

MAGNETIC FLUX LEAKAGE SYSTEM FOR WIRE ROPE INSPECTION USING BLUETOOTH COMMUNICATION MUHAMMAD MAHFUZ BIN SALEHHON UNIVERSITI TEKNOLOGI MALAYSIA

A TRUST MODEL FOR BUSINESS TO CUSTOMER CLOUD E-COMMERCE HOSSEIN POURTAHERI

VLSI DESIGN OF REDUCED INSTRUCTION SET COMPUTER PROCESSOR CORE USING VHDL

ADAPTIVE ONLINE FAULT DETECTION ON NETWORK-ON-CHIP BASED ON PACKET LOGGING MECHANISM LOO LING KIM UNIVERSITI TEKNOLOGI MALAYSIA

Panduan Guru Maker UNO/ Arduino

System-on Solution from Altera and Xilinx

Introduction to Microcontrollers

SYSTEMATIC SECURE DESIGN GUIDELINE TO IMPROVE INTEGRITY AND AVAILABILITY OF SYSTEM SECURITY ASHVINI DEVI A/P KRISHNAN

PERFOMANCE ANALYSIS OF SEAMLESS VERTICAL HANDOVER IN 4G NETWOKS MOHAMED ABDINUR SAHAL

ECED3204: Microprocessor Part I--Introduction

DEVELOPMENT OF SCADA FOR SERVO CONTROLLED PICK AND PLACE SYSTEM JUHAIDAH BINTI JOHARI

Section 6. Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8

Design and Implementation of a FPGA-based Pipelined Microcontroller

AN ANDROID-BASED SMART SECURITY TOURING SYSTEM FOR REAL-TIME DATA RECORDING USING NFC, GPS AND GSM TECHNOLOGY.

Instruction Set Overview

Lecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit

DETERMINING THE MULTI-CURRENT SOURCES OF MAGNETOENCEPHALOGRAPHY BY USING FUZZY TOPOGRAPHIC TOPOLOGICAL MAPPING

Contents of this presentation: Some words about the ARM company

Universität Dortmund. ARM Architecture

Transcription:

DEVELOPMENT OF PESONA RISC MICROPROCESSOR ARCHITECTURE IN FPGA MOHD FAHMIR ADZRAN BIN RAMLEE This Report Is Submitted In Partial Fulfilment of Requirements For The Bachelor Degree of Electronic Engineering (Computer Engineering) Fakulti Kejuruteraan Elektronik dan Kejuruteraan Komputer Universiti Teknikal Malaysia Melaka JUNE 2014

I, hereby declare that this report is the result of my own except for quotes as cited in the references. Signature : Name : Mohd Fahmir Adzran Bin Ramlee Date : 5 th June 2014

iv I hereby declare that I have read this report and in my opinion this report is sufficient in terms of scope and quality for the award of a Bachelor in Electronic Engineering (Computer Engineering) with honours. Signature : Name : Professor Abdul Hamid Bin Hamidon Date : 5 th June 2014

v Ramlee Kamal Fatimah Mohamad Sahari Mohd Faliq Ihsan Ramlee

vi Praise be to Allah, His grace, I have been able to perform this project very well. Special dedication to my supervisor, Professor Abdul Hamid Bin Hamidon and a thousand thanks for Encik Sani Irwan Bin Md Salim, a great guidance throughout this project. I would like to take this opportunity to extend my appreciation to everyone who has helped me throughout my final year project especially my research partner, Kartini Binti Zainol Abidin. I express my gratitude and hope that God will repay you well.

vii ABSTRACT Pesona is the first Malaysian made 16-bit Microprocessor designed by Malaysian Institute of Microelectronic System (MIMOS). It began when Reduce Instruction Set Computer (RISC) processor was introduced; MIMOS took this as a challenge to produce its own RISC microprocessor in 1994. Since then, there was no attempt to upgrade or continue the Pesona RISC Microprocessor and lead to the idea of implementing this microprocessor in Field Programmable Gate Array (FPGA). With the technological advancement of FPGA, there created a possibility of implementing the Pesona architecture. The objective is to emulate the original Pesona RISC architecture in FPGA platform. To test and verify the architecture Xilinx Virtex-II FPGA was used. The Pesona processor architecture has been design using Verilog HDL. At the end of the project, a processor architecture that emulates the operation of the Pesona processor was developed. Since the architecture is developed using hardware description language, there are a lots of opportunity to improve the processor design.

viii ABSTRAK Pesona ialah 16 bit mikropemproses Malaysia yang pertama dihasilkan oleh Malaysian Institute of Microelectronic System (MIMOS). Ia bermula setelah pemproses Reduced Instruction Set Computer (RISC) mula diperkenalkan. Sejurus selepas itu, MIMOS telah menyahut cabaran untuk menghasilkan pemproses RISC tersendiri pada tahun 1994. Sejak itu, tiada sebarang usaha untuk menaiktaraf atau meneruskan Pesona RISC Mikropemproses yang akhirnya menjurus kepada idea untuk melaksanakan mikropemproses ini di dalam Field Programmable Gate Array (FPGA). Seiring dengan kemajuan teknologi FPGA, begitu banyak peluang untuk penambahbaikan yang boleh dilaksanakan untuk meningkatkan prestasi seni bina Pesona. Objektifnya adalah untuk menggunakan seni bina asal Pesona RISC di dalam platform FPGA dan seterusnya menguji dan memastikan keberkesanan seni binanya dengan menggunakan Xilinx Virtex II FPGA. Seni bina pemproses Pesona ini direka bentuk dengan menggunakan perisian Verilog HDL. Di akhir projek ini, satu seni bina pemproses yang mengemulasi operasi pemproses Pesona telah dibangunkan. Oleh kerana seni bina Pesona dibangunkan dengan menggunakan bahasa pengaturcaraan, banyak ruang untuk penambahbaikan boleh ditambah pada masa hadapan di dalam reka bentuk pemproses.

ix TABLE OF CONTENTS CHAPTER TITLE PAGE PROJECT TITLE REPORT AUTHORIZATION FORM STUDENT S DECLARATION SUPERVISOR S DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK TABLE OF CONTENTS LIST OF TABLES TABLE OF FIGURES LIST OF ABBREVIATIONS i ii iii iv v vi vii viii ix xii xiii xv I INTRODUCTION... 1 1.1 Overview... 1 1.2 Objectives... 2 1.3 Problem Statement... 2 1.4 Scope... 2 1.5 Report Structure 3

II LITERATURE REVIEW... 4 x 2.1 Pesona Microprocessor... 4 2.2 Processor in Field Programmable Gate Array (FPGA)... 7 2.3 Harvard Architecture 11 III METHODOLOGY... 12 3.1 Introduction... 12 3.2 Overview... 12 3.3 Methodology... 13 3.4 Project Activities... 15 3.4.1 Fetch Instruction Module... 15 3.4.2 Decode Instruction Module... 15 3.4.3 Execute Instruction Module... 18 3.4.4 Module Testing... 21 3.4.5 Behavioral Simulation... 21 3.4.6 Debugging... 22 3.4.7 Synthesize... 22 3.4.8 Result Analysis... 22 3.4.9 Test Code... 22 IV RESULT AND DISCUSSION... 24 4.1 Pesona architecture... 24 4.2 Sources for implementation... 26 4.2.1 Top Module... 27

xi 4.2.2 Control Processing Unit (CPU) Module... 27 4.2.3 Arithmetic Logic Unit (ALU) Module... 27 4.2.4 Instruction Decoder (IDEC) Module... 28 4.2.5 Clock Divider Module... 28 4.2.6 Programmable Read-Only Memory (PROM) Module 28 4.2.7 Dynamic Random Access Memory (DRAM) Module 29 4.3 Waveform Simulation Diagram... 30 4.4 RTL Schematic... 33 4.5 Discussion... 37 4.5.1 Test Code... 38 V CONCLUSION AND RECOMMENDATION 46 5.1 Conclusion... 46 5.2 Future Recommendation... 47 REFERENCES 49

xii LIST OF TABLES NO. TITLE PAGES Table 2-1 Instruction Set Summary... 6 Table 3-1 Pesona Instruction Set... 16 Table 3-2 Modified Pesona Instruction Sets... 17 Table 4-1 Information for test code... 39

xiii TABLE OF FIGURES NO. TITLE PAGES Figure 2-1 The 4-Stages Super-Pipeline of Pesona... 5 Figure 2-2 MicroBlaze FPGA Board... 8 Figure 2-3 Altera Nois II FPGA Board... 9 Figure 2-4 Actel CoreMP7 FPGA Board... 10 Figure 3-1 Pesona Architecture... 13 Figure 3-2 Flow Chart of Project Methodology... 14 Figure 3-3 Instruction Register Model... 18 Figure 3-4 Register Programming Model... 19 Figure 3-5 Data Space Memory Map... 20 Figure 3-6 Sources for Behavioral Simulation... 21 Figure 3-7 Test Code... 23 Figure 4-1 Pesona System Diagram... 25 Figure 4-2 Sources for implementation... 26 Figure 4-3 PROM Module... 29 Figure 4-4 DRAM Module... 30 Figure 4-5 Checking on Processes... 31 Figure 4-6 Output Waveform... 32 Figure 4-7 Sources of simulation... 33 Figure 4-8 Process of synthesize for RTL Schematic... 34 Figure 4-9 Input Output Block Diagram... 34 Figure 4-10 Inside Top Block Diagram... 35

xiv Figure 4-11 Component in the processor... 36 Figure 4-12 Test Code Instruction... 38 Figure 4-13 Test program in COE file... 40 Figure 4-14 Instruction Set Architecture... 41 Figure 4-15 The mlo Operation... 42 Figure 4-16 The mhi Operation... 43 Figure 4-17 The add Operation... 44 Figure 4-18 The jmp Operation... 45

xv LIST OF ABBREVIATIONS FPGA - Field Programmable Gate Array RISC - Reduced Instruction Sets Computer ASIC - Application-Specific Integrated Circuit HDL - Hardware Description Language SCADA - Supervisory Control and Data Acquisition ALU - Arithmetic Logic Unit LUTs - Lookup Tables RAM - Random Access Memory AXI - Advanced Extensible Interface MMU - Memory Management Unit FPU - Floating Point Unit ARM - Advanced RISC Machine PC - Program Counter RTL - Register Transfer Level P16 - Pesona 16 IC - Integrated Circuit COE - Xilinx Coefficient MUX - Multiplexer CPU - Central Processing Unit IDEC - Instruction Decoder DRAM - Dynamic Random Access Memory PROM - Programmable Read-Only Memory SBUS - Source Bus DBUS - Destination Bus VHDL - Verilog Hardware Description Language

xvi IR ASCII IP DMIPS JTAG MMU MPU MSB LSB - Instruction Register - American Standard Code for Information Interchange - Intellectual Property - Dhrystone Million Instructions per Second - Joint Test Action Group - Memory Management Unit - Memory Protection Unit - Most Significant Bit - Least Significant Bit

CHAPTER I INTRODUCTION 1.1 Overview Pesona is a 16-bit Reduced Instruction Set Computer (RISC) Microprocessor fabricated by Mimos Semiconductor which was previously designed in Applicationspecific integrated circuit (ASIC) environment. Since 1996, it has never been further developed for undisclosed reason. As the first RISC processor designed by a Malaysian company, the rejuvenation of Pesona would motivate processor designer to further developed Malaysia s own processor. The purpose of this project is to develop the Pesona RISC Microprocessor architecture in Field Programmable Gate Array (FPGA). The development involves the emulation of Pesona RISC architecture using Verilog HDL in Xilinx ISE environment. The entire original architecture of Pesona such as ALU, stack memory, register array and instruction sets are maintained as originally designed.

2 1.2 Objectives The objectives of this project are as follows: i. To emulate the original Pesona RISC architecture in Hardware Description Language. ii. To test and verify the architecture using Xilinx Virtex-II FPGA. 1.3 Problem Statement Since the production of Pesona in late 90 s, there were no attempts or development in upgrading or continuing the Pesona Reduced Instruction Set Computer (RISC) Microprocessor. This could be due to the lack of technological advancement in IC design technology during that particular time and also the competition from the major companies that are already established in this field. Furthermore, the prototype production cost is high and it was not economical to continue the production of this microprocessor especially during the economic recession in the late 90's. With the emergence of the Field Programmable Gate Array (FPGA), it opens new opportunities to implement and enhance the performance of the original Pesona architecture. Specifically, Field Programmable Gate Array (FPGA) design could significantly reduce the resource utilization and also improve the clock cycle of the instruction execution time 1.4 Scope The scope of this project is to develop a microprocessor in Field Programmable Gate Array (FPGA) by following the original architecture of Pesona Microprocessor. In this project, the reference design based on the 16-bit Reduced Instruction Set Computer (RISC) Pesona original architecture and designed using Verilog HDL. The implementation of the architecture was on Xilinx Virtex-II FPGA.

3 1.5 Report Structure project. Chapter I briefs about the objectives, scope and problem statement of this Chapter II presents in detail the architecture and characteristics of the Pesona Microprocessor. The basic architecture and its origin specification were discussed. It also includes the studies on development and implementation tool in order to implement it in FPGA. Chapter II also contains information regarding the development of microprocessor in FPGA and some examples. Chapter III gives the methodology requirement on completing the task. All necessary information is included and is supported by flow chart to summarize the method used. Chapter IV presents the result for this project. All information regarding the results obtained was discussed. Chapter V concludes all the gathered information and the project itself. Future recommendation for the project is also included.

4 CHAPTER II LITERATURE REVIEW 2.1 Pesona Microprocessor Pesona Microprocessor also known as PI6 is a 16-bit Reduced Instruction Set Computer (RISC) that was designed for high performance with simpler hardware resulting in a high efficient performance. The P16 is targeted towards embedded applications ranging from controls to communications system including Supervisory Control and Data Acquisition (SCADA), remote monitoring, industrial robotics, home security, appliances, switching equipment and digital set-top boxes [1]. With the RISC architecture, the Pesona Microprocessor operates at 5V DC with maximum clock speed of 20 MHz. The internal architecture is based on Harvard architecture that has 16-bits wide internal data and address buses. Its executes single clock cycle instructions using 4-stages super-pipeline architecture which are fetch, decode, execute and write back as in Figure 2-1.

5 Figure 2-1 The 4-Stages Super-Pipeline of Pesona Refer to figure before, the 4-Stages Super-Pipeline of Pesona which consist of fetch, decode, execute and write back is needed to increase the speed of processing instruction. All the decomposition of the instruction processing as below; Fetch Read the next expected instruction Decode Determine the opcode and the operand Execute Perform the operation and stored in specific destination Write Back Store the result in memory Pesona Microprocessor has 26 instructions set that support two addressing modes i.e. direct addressing and indirect addressing. The instructions set are divided into five groups like data movement, program and system control, integer and logical arithmetic and data shifting as shown on Table 2-1.

6 Table 2-1 Instruction Set Summary Table 2-1 bundle the instruction by type which can create more understanding on the instruction set of Pesona. All mnemonic of the instruction set are clearly explained on the description such as MHI which the instruction to move high bit data into register. PI6 is suitable for used in microcomputer system development with minimum configuration; it is easier to develop and gives more choice to designer for peripherals selection and choosing from different processor family [2].

7 2.2 Processor in Field Programmable Gate Array (FPGA) Field Programmable Gate Array (FPGA) is an integrated circuit that has been designed to be configured by user. The configuration of it is exclusively done by using the Hardware Description Language (HDL). The Field Programmable Gate Array (FPGA) is a programmable digital logical chip that can be programmed to do almost any digital function. The processor consist of a collection of a logic cells called lookup tables (LUTs) that act as a small Random Access Memory(RAM) which can implement any logic function. Each other logic cell can be connected with each other through interconnection resources. They are two types of FPGA processors which are soft core processor and hard core processor. Soft core processors are implemented or programmed into the FPGA fabric while the hard core one is implemented similar to any integrated circuit as a structure in the FPGA fabric. In this case, a soft core processor have been implemented through instruction sets, arithmetic-logic units, register files, and other features specifically tailored to efficiently use FPGA resources. A soft core processor can be changed and the code can be modified simply by reprogramming the physical FPGA device with a modified hardware design or upgrading the embedded code in it. So, it could lead to a true field upgradeable hardware and software. There are a few examples of soft core processor that have been developed such as shown in Figure 2-2, Figure 2-3 and Figure 2-4:-

8 MicroBlaze Figure 2-2 MicroBlaze FPGA Board This soft core processor in Figure 2-2 is based on Xilinx FPGA which uses a 32-bit of Harvard architecture soft processor. Advanced architecture like AXI interface, Memory Management Unit (MMU), instruction and data-side cache, configurable pipeline depth and Floating-Point unit (FPU) are supported by this processor. MicroBlaze contains over 70 user-configurable options, enabling virtually any processor use case from a very small footprint state machine or microcontroller to a high performance compute-intensive microprocessor-based system running Linux, operating in either 3-stage pipeline mode to optimize size, or 5-stage pipeline mode to optimize speed delivering faster Dhrystone Million Instructions Per Second (DMIPS) performance than any other FPGA-based soft-processing solution.