SlideShare a Scribd company logo
IOSR Journal of Mechanical and Civil Engineering (IOSR-JMCE)
e-ISSN: 2278-1684,p-ISSN: 2320-334X, Volume 9, Issue 3 (Sep. - Oct. 2013), PP 49-57
www.iosrjournals.org
www.iosrjournals.org 49 | Page
Design & Simulation of RISC Processor using Hyper
Pipelining Technique
SimranRana, Rajesh Mehra
Assistant Professor in HIET (ECE) Shahpur, Distt.-Kangra H.P, INDIA
Associate Professor in NITTTR Chd. (ECE) Sec.-26, INDIA
Abstract: This Hyper pipelining technique is different to the pipelining of instruction decoding known from
RISC processors. The point is that we can use hyper pipelining on top of any sequential logic, for example a
RISC processor, independent of its underlying functionality. The RISC processor with pipelined instruction set
decoding can automatically be hyper pipelined to generate CMF individual RISC processors. Hyper pipelining
implements additional register and can use register balancing for fine grain timing optimizations. The method
hyper pipelining is also called “C-slow Retiming”. The main benefit is the multiplication of the core's
functionality by only implementing registers. This is a great advantage for ASICs but obviously very attractive
for FPGAs with their already existing registers.
Keywords: RISC Processor, Decomposition of Sequential Circuits, Hyper Pipelining, Retiming, C-Slow
Retiming.
I. Introduction [1]
Now a day’s developments are taking place at a very rapid rate. Market is becoming more and more
customer driven. Customer wants system designed tailor made to suit his needs. This is putting great pressure on
the embedded system designer. After finding appropriate processor its development and debugging tools and the
associated learning curve becomes time consuming. Looking into this factor and looking at the advancements in
the field Of VLSI design, the days are no longer that people will start implementing their own processor
supporting desired instructions only along with associated peripherals. Due to the need to meet increasingly
challenging objectives of increasing performance, reducing power consumption and reducing size, synchronous
processor core designs have been increasing significantly in complexity for some time now. This applies to even
those designs originally based on the RISC principle of reducing complexity in order to improve instruction
throughput and the performance of the design. Not only does the methodology of this paper provide a
standardized approach for describing that it generates can be used as a basis for the formal verification of the
design; and thus facilitate solutions to the problems that increasing complexity poses for traditional validation.
II. Role Of VVLSI In Designing The Processor
For designing the system various methods are available like traditional method of designing,
microprocessor and
Microcontroller based design etc and now a day’s VLSI design method is mostly preferred because of
its no. of advantages, such as Small size, Low power dissipation,
Operate at high speed, Security up to 20 years, Reprogramming is possible for more than 20,000 times,
Fast concurrent programming, It is having internet reconfigurable logic, Remote load programming is possible,
Time to market is small, Cost to performance ratio is high, Easy up gradations to new specifications. The main
factor for preferring VLSI design is a single chip solution, which is supporting to create our own processor.
VLSI has made possible to have digital hardware implementation, which can be changed as per customer
requirement. Different descriptive languages are available with different types of design entry such as VHDL
[Very high speed integrated circuit Hardware Description Language], Verilog and ABEL
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 50 | Page
III. System Architecture With Pipeline [2]
Fig 1: Five-Stage pipelined structure of RISC (super pipelining)
The instruction fetch stage is also responsible for reading the instruction memory and sending the current
instruction to the next stage in the pipeline, or a stall if a branch has been detected in order to avoid incorrect
execution. The instruction fetch unit contains the following logic elements that are implemented in VHDL: 8-bit
program counter (PC) register, an adder to increment the PC by four, the instruction memory, a multiplexor, and
an AND gate used to select the value of the next PC. Program counter and instruction memory are the two
important blocks of Instructions Fetch Unit
3.1 Program counters (PC)
It is an 32 bit device that is connected to the data bus and the address bus. It will hold its value unless
told to do something. If the I/P is kept high the device will count, i.e. it will increment by 4.
3.1.1 Instruction memory (IM)
The Instruction memory on these machines had a latency of one cycle. During the Instruction Fetch
stage, a 32-bit instruction is fetched from the memory.
The PC predictor sends the Program Counter (PC) to the Instruction memory to read the current
Instruction. At the same time, the PC predictor predicts the address of the next instruction by incrementing the
PC by 4.
3.1.2 Instruction registers (IR)
An instruction register (IR) is the part of control unit that stores the instruction currently being
executed or decoded. In simple processors each instruction to be executed is loaded into the instruction register
which holds it while it is decoded, prepared and ultimately executed, which can take several steps. RISC
processors use a pipeline of instruction registers where each stage of the pipeline does part Of the decoding,
preparation or execution and then passes it to the next stage for its step. Modern processors can even do some of
the steps of out of order as decoding on several instructions is done in parallel. Decoding the opcode in the
instruction register includes determining the instruction, where its operands are in memory, retrieving the
operands from memory, allocating processor resources to execute the command. The output of IR is available to
control circuits which generate the timing signals that controls the various processing elements involved in
executing the instruction.
3.2 Instruction Decode Unit
The Instruction Decode stage is the second stage in the pipeline. Branch targets will be calculated here
and the Register File, the dual-port memory containing the register values, resides in this stage. The forwarding
units, solving the data hazards in The pipeline, reside here. Their function is to detect if the register to be fetched
in this stage is written to in a later stage. In that case the data is forward to
This stage and the data hazard is solved. This stage is where the control unit determines what values the
control lines must be set to depending on the instruction. In addition, hazard detection is implemented in this
stage, and all necessary values are fetched from the register banks. The Decode Stage is the stage of the CPU's
pipeline where the fetched instruction is decoded, and values are fetched from the register bank. It is responsible
for mapping the different sections of the instruction into their proper representations (based on R or I type
instructions). The Decode stage consists of the Control unit, the Hazard Detection Unit, the Sign Extender, and
the Register bank, and is responsible for connecting all of these components together.
It splits the instruction into its various parts and feeds them to the corresponding components. Registers
Rs and RT are fed to the register bank, the immediate section is fed to the sign extender, and the ALU opcode
and function codes are sent to the control unit. The outputs of these corresponding components are then clocked
and stored for the next stage The Control unit takes the given Opcode, as well as the function code from the
instruction, and translates it to the individual instruction control lines needed by the three remaining stages. This
is accomplished via a large case statement.
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 51 | Page
3.2.1 Control unit
The control unit of the MIPS single-cycle processor examines the instruction opcode bits [31 – 26] and
decodes the instruction to generate nine control signals to be used in the additional modules. The RegDst control
signal determines which register is written to the register file. The Jump control signal selects the jump address
to be sent to the PC. The Branch control signal is used to select the branch address to be sent to the PC. The
MemRead control signal is asserted during a load instruction when the data memory is read to load a register
with its memory contents. The MemtoReg control signal determines if the ALU result or the data memory
output is written to the register file. The ALUOp control signals determine the function the ALU performs. (E.g.
and, or, add, sbu, slt) The MemWrite control signal is asserted when during a store instruction when a registers
value is stored in the data memory.
The ALUSrc control signal determines if the ALU second operand comes from the register file or the
sign extend. The RegWrite control signal is asserted when the register file needs to be written.
3.2.2 Register files (RF)
During the decode stage, the two register Rs&Rt are identified within the instruction, and the two
registers are read from the register file. In the MIPS design, the register file had 32 entries. At the same time the
register file was read, instruction issue logic in this stage determined if the pipeline was ready to execute the
instruction in this stage. If not, the issue logic would cause both the Instruction Fetch stage and the Decode stage
to stall. If the instruction decoded was a branch or jump, the target address of the branch or jump was computed
in parallel with reading the register file.
The branch condition is computed after the register file is read, and if the branch is taken or if the
instruction is a jump; the PC predictor in the first stage is assigned the branch target, rather than the incremented
PC that has been computed.
3.3 Execution Unit
The third stage in the pipeline is where the arithmetic- and logic-instructions will be executed. All
instructions are executed with 32-bit operands and the result is a 32-bit word. An overflow event handler was
not included in this project. The execution unit of the MIPS processor contains the arithmetic logic unit (ALU)
which performs the operation determined by the ALUop signal. The branch address is calculated by adding the
PC+4 to the sign extended immediate field shifted left 2 bits by a separate adder. The logic elements to be
implemented in VHDL include a
3.3.1 ALU unit
The arithmetic/logic unit (ALU) executes all arithmetic and logical operations. The arithmetic/logic
unit can perform four kinds of arithmetic operations, or mathematical calculations: addition, subtraction,
multiplication, and division. As its name implies, the arithmetic/logic unit also performs logical operations. A
logical operation is usually a comparison. The unit can compare numbers, letters, or special characters. The
computer can then take action based on the result of the comparison. This is a very important capability
3.4Memory Access unit
The memory access stage is the fourth stage of pipeline. This is where load and store instructions Will
access data memory. During this stage, single cycle latency instructions simply have their results forwarded to
the next stage. This forwarding ensures that both single and two cycle instructions always write their results in
the same stage of the pipeline, so that just one write port to the register file can be used, and it is always
Available. If the instruction is a load, the data is read from the data memory
3.4.1 Data Memory Unit (DM)
The data memory unit is only accessed by the load and store instructions. The load instruction asserts
the MemRead signal and uses the ALU Result value as an address to index the data memory. The read output
data is then subsequently written into the register file. A store instruction asserts the MemWrite signal and
writes the data value previously read from a register into the computedmemory address. The VHDL
implementation of the data memory was described earlier.
3.5 Write back unit
During this stage, both single cycle and two cycle instructions write their results into the register file.
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 52 | Page
IV. Decomposition Of Sequential Circuit (Reference With Clock)
The problem of assigning binary state modes to the states of a sequential machine in order to realize it
by a sequential circuit has been an important object in switching circuit theory. The complexity of the circuit as
well as its structural properties is strongly dependent upon the binary state codes chosen. The Asynchronous
sequential machines, most of the results obtained so far have been concerned with the problem of critical race
free assignments with the minimum number of state variables.
4.1 Hyper pipelining [4]
In this paper, a method is discussed that how the functionality of a core can be multiplied by adding
registers to the core. It does not only provide the less area usage compared to its individual instantiations, but it
can also provide impact on the system performance as a whole. This method is called “hyper pipelining” here
the hyper pipelined complex RISC core (OR1200 from Open Cores) is discussed. Hyper pipelining is a
technique where the Core Multiplier multiplies the functionality of cores, bus-systems or complete sub designs.
It implements registers (called pipes) in the design to create CMF independent designs, whereas CMF can be
any number greater than 1. Since only registers are inserted, the resulting area is much less than duplicating the
complete design. The result is a much smaller than ASIC or lesser than FPGA size. The applied method is also
called "C-slow Retiming"
.
Fig 2: Comparison of combined 4 single RISC core with hyper pipelined RISC core with CMF=4(Core
Multiplication Factor) [4]
Figure 3 shows the simplified structure of sequential logic. Inputs and sequential elements clocked by clk1 drive
the combinational logic. The combinational logic drives the outputs and the data inputs of the registers. In
Figure4 each sequential element is duplicated with an intermediate register clocked by a second clock clk2. If
clk2 is synchronous to clk1, but not edge-aligned, and if the timing is right (no setup or hold time violation
between clk1 and clk2 registers), the behavior of the sequential logic doesn't change. Registers), the behavior
of the sequential logic doesn't change.
Fig 3: Simplified Sequential logic [5]
Figu4: Sequential logic with inter-logic mediate register clocked by clk2 [5]
4.1.1 Hyper Pipelined OR1200 RISC Core [7]
In this section hyper pipelining of the OR1200 core is described. The original code is taken from Open
Cores' OR1200 project. This project only takes care regarding the verification of the hyper pipelining aspects.
i) Introduction to OR1200 RISC Core: - Open RISC 1200
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 53 | Page
Fig 5: OR1200 Core’s Architecture [7]
The OR1200 is a 32-bit scalar RISC with Harvard micro architecture, 5 stage integer pipeline, virtual memory
support (MMU) and basic DSP capabilities. Default caches are 1-way direct-mapped 8KB data cache and 1-way
direct-mapped 8KB instruction cache, each with 16-byte line size. Both caches are physically tagged. By default
MMUs are implemented and they are constructed of 64-entry hash based 1- way direct-mpped data TLB and 64-
entry hash based 1-way direct-mapped instruction TLB. Supplemental facilities include debug unit for real-time
debugging, high resolution tick timer, programmable interrupt controller and power management support. When
implemented in a typical 0.18u 6LM process it should provide over 300 dhrystone 2.1 MIPS at 300MHz and
300 DSP MAC 32x32 operations, at least 20% more than any other competitor in this class. OR1200 in default
configuration has about 1 M transistor. OR1200 is intended for embedded, portable and networking
applications. It can successfully compete with latest scalar 32-bit RISC processors in his class and can
efficiently run any modern operating system. Competitors include ARM10, ARC and Tensilica RISC
processors.
V. Design Methodology
In order to meet these objectives, there are many steps which are used for Design & Implementation of
RISC Processor using Hyper Pipelining technique
5.1 Wishbone Bus Interface [8]
The WISHBONE interconnect is intended as a general purpose interface. It always defines the standard
data exchange between IP core modules. It does not attempt to regulate the application specific functions of the
IP core. The WISHBONE architects were strongly influenced by three factors. First, there was a need for a
good, reliable System-on-Chip integration solution. Second, there was a need for a common interface
specification to facilitate structured design methodologies on large project teams. Third, they were impressed by
the traditional system integration solutions afforded by microcomputer buses such as PCI bus and VME bus.
Basically there are three bus interfaces to the OR1200 RISC Core
1. Wishbone Instruction Bus Interface
2. Wishbone Data Bus Interface
3. Debug Interface
Wishbone Bus is a low performance & easy accessibility bus as comparison to the ARM-AMBA Bus which is a
high performance bus. The Wishbone Instruction bus is used for sending address and instructions on the bus
which are generated randomly through the Random Instructions Code Generator and also acting as a slave. In
this thesis the Wishbone Bus is used as the interface between the OR1200 RISC Core & Random Instructions
Code Generator. Here the OR1200 RISC Core is acting as the Master whereas the Random Instruction Code
Generator is used as the Slave.
Main signals which are generated by the OR1200 RISC Core (Master) are
1. CYC-Cycle
2. STB-Strobe
3. WE-Write Enable
4. SEL- Select Signal
5. RST- Reset (Reset is a active high signal).
Main signals which are generated by the Random Instruction Code Generators (Slave) are
1. ACK- Acknowledge the randomly generated instructions.
2 ERR-Error Signal is send if no instruction is generated randomly.
VI. Results And Validation
6.1 Introduction
ModelSim is used for ASIC and FPGA design. Mentor Graphics was the first to combine single kernel
simulator (SKS) technology with a unified debug environment for Verilog, VHDL, and System C. The
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 54 | Page
combination of industry-leading, native SKS performance with the best integrated debug and analysis
environment make ModelSim the simulator of choice for both ASIC and FPGA designs. The best standards and
platform support in the industry make it easy to adopt in the majority of process and tool flows.
6.2 Database for Compilation & Simulation: -
ModelSimcombines simulation performance and capacity with the code coverage and debugging
capabilities required to simulate multiple blocks and systems and attain ASIC gate-level sign-off.
Comprehensive support of Verilog, SystemVerilog for Design, VHDL, and SystemC provide a solid foundation
for single and multi-language design verification environments. ModelSim’s easy to use and unified debug and
simulation environment provide today’s FPGA designers both the advanced capabilities that they are growing to
need and the environment that makes their work productive.
6.2.1Different steps for Compiling a Design
1. Code Your Design
2. Start ModelSim
3. Set the Working Directory
4. Create a Work library
5. Compile a Design
6.2.2 Different steps for Simulating a Design
1. Code the Testbench
2. Compile the Testbench
3. Load the Testbench
4. Display Waveforms
5. Run the Simulation
6. Recompiling and Rerunning a Simulation
6.3 Different Waveforms for different Signals: -For the command window
1. Run the run_me_first file which will set the environment variables for the code. Then in the OR1200-bin-
Scripts, compdesign is created which is used for compilation, whereas to show the total files bin-design-
complist path is used.
Fig 6: Comp Design for Compilation
2. Then to do the compilation write Comp_Design top on the command Window which is used to make work
file. To see the work file we go for the command cd vercomp_work.
Then cd vercomp_work>vlog is the command used for compilation.After that for simulation the command is cd
vercomp_work>vsim
or1200_testbench_cm2
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 55 | Page
Fig 7: Execution of 200 Instruction Cycles by theprocessor
Here in figure 7 executions of 200 Instruction Cycles by the processor is shown. In this figure data is which is
entered for the different main signal is given below for OR1200 Testbench
Cnt(cycle count)=200
System CLK=1
RST=0
Clk_i=0
Clk _i_cmls_i=0
Cmls=0
Then through the Wishbone debug Interface the data will be received on the through wishbone databus to
system data bus.
Fig 8: Execution of 24000-Simulation Cycle by the Processor-Halted, Resetted and then Started again
In figure 4.2 here the execution of the 24000 cycles is shown with the condition is that first the processor is
Halted, Resetted and then again started depending on the Logic Low and Logic High condition on the Reset
Control signal. When the processor is started again the address will be shown on the interface of Wishbone bus
select line & the data will be received on the interference of wishbone date bus.
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 56 | Page
Fig 9: First Data is received by the Processor
Here in figure 9 the processor execution is carried out for twenty cycles. In this timing waveform it is shown
that when the reset is deactivated and system clock is activated the first data is received which is received from
the memory and the memory address is generated randomly through Random Instruction Generator
Figure 10:First Instruction fetches operation Started
In figure 10 the processor execution is carried out for nineteen cycles. In this the timing waveform it is shown
that when the reset is deactivated and system clock is activated the first data is fetched from the memory and the
memory address is generated randomly through Random Instruction Generator.
Fig 11: Reset is De-asserted; the Instruction bus is showing no address
Design & Simulation of RISC Processor using Hyper Pipelining Technique
www.iosrjournals.org 57 | Page
In figure 11 the processor execution is carried out for nineteen cycles. In this the timing waveform it is shown
that firstly logic high is given to the reset signal. Here system clock (clk) & clk_i are inverted to each other.
VII. Conclusion & Future Work
7.1 Conclusion
The concept of hyper pipelining for RISC open cores 1200 HP was drawn from the Hyper Pipelined
Technology used for Pentium series processors to increase the speed. By multiplying the clock frequency, the
performance of the design is the same as the sum of the individual implementations. It is important to notice,
that each "new" core works totally independent of the others. In many cases, FPGAs work in conjunction with a
conventional DSP as integrating pre and post processing functions, along with high performance signal
processing. There is a constant requirement for efficient use of FPGA resources where occupying less hardware
for a given system that can yield significant cost-related benefits. The expected outcome of this thesis work will
be the development of RISC processor (reduced instruction set computer) i.e. a low power embedded processor
-Enhance speed, Area saving as comparison to the actual area if implemented individuallyUsing hyper
pipelining technique based on the open cores or core multipliers or core multiplication factor.
7.2 Future Scope
The scope of this work is mainly in the area of low power high performance embedded processors. The
proposed work will improve speed and area consumption by using Hyper Pipelined Open Core RISC Processor.
The hyper pipelining is based on automatic RTL modifications. This allows further manual modifications by the
designer after the automatic hyper pipelining task as well. The hyper pipelined OR1200 core can be enhanced in
a way, that the individual functional cores share the same instruction cache or even more useful the same data
cache. For this the designer might only need to change a few lines in the RTL, where the data cache is
instantiated and adopt the software for the access definition. It is also not always necessary, that all processors in
a hyper pipelined core have the same Instruction or Data cache sizes. Each processor knows its processor index
in the hyper pipelined scenario, so that an individual configuration of Instruction and Data cache is possible, if
the RTL code is manually enhanced by the designer, this would also certainly improve the performance of the
multi core scenario. Another idea is to add special function registers (SFR) for mail-boxing, etc. to the original
RTL code.
Acknowledgments
This paper work is made possible through the help and support from everyone, including: parents,
teachers, friends, and in essence, all sentient beings. Especially, please allow me to dedicate my
acknowledgment of gratitude toward the following significant advisors and contributors: First and foremost, I
would like to deeply thank to my supervisor Er. Rajesh Mehra, Associate Professor, Department of Electronics
and Communication Engineering, NITTTR, Chandigarh for guiding and correcting at various stages of my
thesis work with attention and care.I thank to all my friends who help me at many stages in this work.
References
[1] Reduced instruction set computing - Wikipedia, the free encyclopediaen.wikipedia.org/ wiki/Reduced_instruction_set_computing.
[2] Sharda P. Katke, G.P. Jain “Design and Implementation of 5 Stages Pipelined Architecture in 32 Bit RISC Processor”,
International Journal of Emerging Technology and Advanced Engineering , Vol. 2, Issue No.4, pp. 340-346, April 2012.
[3] Introduction to RISC Processors by ni logic Pvt.Ltd, pp. 1-42
[4] Tobias Strauch, “Hyper Pipelined OR1200 Core Specification”, OpenCores Hyper Pipelined OR1200 Core, pp.-1-19, 2010
[5] Tobias Strauch “Hyper Pipelining of Multicores and SoC Interconnects”, pp. 1-16, October 2010
[6] Hyper Pipelined Open RISC OR1200 Core, opencores.com/project, OR1200_hp, (Verilog) Hyper Pipelined AVR Core,
opencores.com/project,avr_hp,
[7] DamjanLampret “Open RISC 1200 IP Core Specification”, Preliminary Draft Rev.-0.7, pp.-1-63, 2001
[8] Mohandeep Sharma1, Dilip Kumar “Design and Synthesis of Wishbone Bus Dataflow Interface Architecture for SoC Integration”,
India Conference (INDICON), 2012 Annual IEEE, pp.-813-818, 2012
Ad

More Related Content

What's hot (20)

Architectural support for High Level Language
Architectural support for High Level LanguageArchitectural support for High Level Language
Architectural support for High Level Language
Sudhanshu Janwadkar
 
ARM Cortex-M3 Training
ARM Cortex-M3 TrainingARM Cortex-M3 Training
ARM Cortex-M3 Training
Raghav Nayak
 
ARM- Programmer's Model
ARM- Programmer's ModelARM- Programmer's Model
ARM- Programmer's Model
Ravikumar Tiwari
 
ARM7-ARCHITECTURE
ARM7-ARCHITECTURE ARM7-ARCHITECTURE
ARM7-ARCHITECTURE
Dr.YNM
 
Applications - embedded systems
Applications - embedded systemsApplications - embedded systems
Applications - embedded systems
Dr.YNM
 
Arm programmer's model
Arm programmer's modelArm programmer's model
Arm programmer's model
v Kalairajan
 
Module 2 ARM CORTEX M3 Instruction Set and Programming
Module 2 ARM CORTEX M3 Instruction Set and ProgrammingModule 2 ARM CORTEX M3 Instruction Set and Programming
Module 2 ARM CORTEX M3 Instruction Set and Programming
Amogha Bandrikalli
 
Embedded systems class notes
Embedded systems  class notes Embedded systems  class notes
Embedded systems class notes
Dr.YNM
 
Unit vi (2)
Unit vi (2)Unit vi (2)
Unit vi (2)
Siva Nageswararao
 
EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
 EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj... EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
D Y PATIL COLLEGE OF ENGINEERING PUNE
 
ARM architcture
ARM architcture ARM architcture
ARM architcture
Hossam Adel
 
Unit II Arm7 Thumb Instruction
Unit II Arm7 Thumb InstructionUnit II Arm7 Thumb Instruction
Unit II Arm7 Thumb Instruction
Dr. Pankaj Zope
 
ARM CORTEX M3 PPT
ARM CORTEX M3 PPTARM CORTEX M3 PPT
ARM CORTEX M3 PPT
Gaurav Verma
 
Lpc1768
Lpc1768Lpc1768
Lpc1768
Krishnamoorthy Upadhya
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
vamsi krishna
 
Arm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_modelArm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_model
Ganesh Naik
 
Embedded Systems Introdution
Embedded Systems IntrodutionEmbedded Systems Introdution
Embedded Systems Introdution
Sheikh Ismail
 
ARM - Advance RISC Machine
ARM - Advance RISC MachineARM - Advance RISC Machine
ARM - Advance RISC Machine
EdutechLearners
 
ARM Microcontrollers and Embedded Systems-Module 1_VTU
ARM Microcontrollers and Embedded Systems-Module 1_VTUARM Microcontrollers and Embedded Systems-Module 1_VTU
ARM Microcontrollers and Embedded Systems-Module 1_VTU
Girish M
 
Performance Comparison Between x86 and ARM Assembly
Performance Comparison Between x86 and ARM AssemblyPerformance Comparison Between x86 and ARM Assembly
Performance Comparison Between x86 and ARM Assembly
Manasa K
 
Architectural support for High Level Language
Architectural support for High Level LanguageArchitectural support for High Level Language
Architectural support for High Level Language
Sudhanshu Janwadkar
 
ARM Cortex-M3 Training
ARM Cortex-M3 TrainingARM Cortex-M3 Training
ARM Cortex-M3 Training
Raghav Nayak
 
ARM7-ARCHITECTURE
ARM7-ARCHITECTURE ARM7-ARCHITECTURE
ARM7-ARCHITECTURE
Dr.YNM
 
Applications - embedded systems
Applications - embedded systemsApplications - embedded systems
Applications - embedded systems
Dr.YNM
 
Arm programmer's model
Arm programmer's modelArm programmer's model
Arm programmer's model
v Kalairajan
 
Module 2 ARM CORTEX M3 Instruction Set and Programming
Module 2 ARM CORTEX M3 Instruction Set and ProgrammingModule 2 ARM CORTEX M3 Instruction Set and Programming
Module 2 ARM CORTEX M3 Instruction Set and Programming
Amogha Bandrikalli
 
Embedded systems class notes
Embedded systems  class notes Embedded systems  class notes
Embedded systems class notes
Dr.YNM
 
EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
 EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj... EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
EMBEDDED SYSTEM DESIGN ARM architecture support for operating system by sanj...
D Y PATIL COLLEGE OF ENGINEERING PUNE
 
ARM architcture
ARM architcture ARM architcture
ARM architcture
Hossam Adel
 
Unit II Arm7 Thumb Instruction
Unit II Arm7 Thumb InstructionUnit II Arm7 Thumb Instruction
Unit II Arm7 Thumb Instruction
Dr. Pankaj Zope
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
vamsi krishna
 
Arm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_modelArm cm3 architecture_and_programmer_model
Arm cm3 architecture_and_programmer_model
Ganesh Naik
 
Embedded Systems Introdution
Embedded Systems IntrodutionEmbedded Systems Introdution
Embedded Systems Introdution
Sheikh Ismail
 
ARM - Advance RISC Machine
ARM - Advance RISC MachineARM - Advance RISC Machine
ARM - Advance RISC Machine
EdutechLearners
 
ARM Microcontrollers and Embedded Systems-Module 1_VTU
ARM Microcontrollers and Embedded Systems-Module 1_VTUARM Microcontrollers and Embedded Systems-Module 1_VTU
ARM Microcontrollers and Embedded Systems-Module 1_VTU
Girish M
 
Performance Comparison Between x86 and ARM Assembly
Performance Comparison Between x86 and ARM AssemblyPerformance Comparison Between x86 and ARM Assembly
Performance Comparison Between x86 and ARM Assembly
Manasa K
 

Viewers also liked (20)

8 bit single cycle processor
8 bit single cycle processor8 bit single cycle processor
8 bit single cycle processor
Dhaval Kaneria
 
Indian Telecom Sector – Witnessing a Revolution
Indian Telecom Sector – Witnessing a RevolutionIndian Telecom Sector – Witnessing a Revolution
Indian Telecom Sector – Witnessing a Revolution
IOSR Journals
 
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
IOSR Journals
 
Digital Roots and Their Properties
Digital Roots and Their PropertiesDigital Roots and Their Properties
Digital Roots and Their Properties
IOSR Journals
 
Bluetooth Based Automatic Hotel Service System Using Python
Bluetooth Based Automatic Hotel Service System Using PythonBluetooth Based Automatic Hotel Service System Using Python
Bluetooth Based Automatic Hotel Service System Using Python
IOSR Journals
 
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
IOSR Journals
 
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
IOSR Journals
 
Survey on Job Schedulers in Hadoop Cluster
Survey on Job Schedulers in Hadoop ClusterSurvey on Job Schedulers in Hadoop Cluster
Survey on Job Schedulers in Hadoop Cluster
IOSR Journals
 
Experimental study on strength and flexural behaviour of reinforced concrete ...
Experimental study on strength and flexural behaviour of reinforced concrete ...Experimental study on strength and flexural behaviour of reinforced concrete ...
Experimental study on strength and flexural behaviour of reinforced concrete ...
IOSR Journals
 
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
IOSR Journals
 
Abrasive water jet review and parameter selection by AHP method.
Abrasive water jet review and parameter selection by AHP method.Abrasive water jet review and parameter selection by AHP method.
Abrasive water jet review and parameter selection by AHP method.
IOSR Journals
 
Analysis of Headway in Traffic Streams on the Minor Leg of an Intersection
Analysis of Headway in Traffic Streams on the Minor Leg of an IntersectionAnalysis of Headway in Traffic Streams on the Minor Leg of an Intersection
Analysis of Headway in Traffic Streams on the Minor Leg of an Intersection
IOSR Journals
 
Action Trajectory Reconstruction for Controlling of Vehicle Using Sensors
Action Trajectory Reconstruction for Controlling of Vehicle Using SensorsAction Trajectory Reconstruction for Controlling of Vehicle Using Sensors
Action Trajectory Reconstruction for Controlling of Vehicle Using Sensors
IOSR Journals
 
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
IOSR Journals
 
Durability of Bricks Cast With Industrial Sludge
Durability of Bricks Cast With Industrial SludgeDurability of Bricks Cast With Industrial Sludge
Durability of Bricks Cast With Industrial Sludge
IOSR Journals
 
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
IOSR Journals
 
Modeling & Analysis of Centrifugal Blower using Composite Material
Modeling & Analysis of Centrifugal Blower using Composite MaterialModeling & Analysis of Centrifugal Blower using Composite Material
Modeling & Analysis of Centrifugal Blower using Composite Material
IOSR Journals
 
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference SystemEnhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
IOSR Journals
 
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
IOSR Journals
 
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
IOSR Journals
 
8 bit single cycle processor
8 bit single cycle processor8 bit single cycle processor
8 bit single cycle processor
Dhaval Kaneria
 
Indian Telecom Sector – Witnessing a Revolution
Indian Telecom Sector – Witnessing a RevolutionIndian Telecom Sector – Witnessing a Revolution
Indian Telecom Sector – Witnessing a Revolution
IOSR Journals
 
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
The Effects of CD20 inhibitors therapy in comparison to TNF α inhibitors ther...
IOSR Journals
 
Digital Roots and Their Properties
Digital Roots and Their PropertiesDigital Roots and Their Properties
Digital Roots and Their Properties
IOSR Journals
 
Bluetooth Based Automatic Hotel Service System Using Python
Bluetooth Based Automatic Hotel Service System Using PythonBluetooth Based Automatic Hotel Service System Using Python
Bluetooth Based Automatic Hotel Service System Using Python
IOSR Journals
 
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
Effect of Aerobic Training on Percentage of Body Fat, Total Cholesterol and H...
IOSR Journals
 
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
Failure Mode Superposition Approach To Structural Appraisal of a Building dur...
IOSR Journals
 
Survey on Job Schedulers in Hadoop Cluster
Survey on Job Schedulers in Hadoop ClusterSurvey on Job Schedulers in Hadoop Cluster
Survey on Job Schedulers in Hadoop Cluster
IOSR Journals
 
Experimental study on strength and flexural behaviour of reinforced concrete ...
Experimental study on strength and flexural behaviour of reinforced concrete ...Experimental study on strength and flexural behaviour of reinforced concrete ...
Experimental study on strength and flexural behaviour of reinforced concrete ...
IOSR Journals
 
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
Thermal Oxidation of Copper for Favorable Formation of Cupric Oxide (CuO) Sem...
IOSR Journals
 
Abrasive water jet review and parameter selection by AHP method.
Abrasive water jet review and parameter selection by AHP method.Abrasive water jet review and parameter selection by AHP method.
Abrasive water jet review and parameter selection by AHP method.
IOSR Journals
 
Analysis of Headway in Traffic Streams on the Minor Leg of an Intersection
Analysis of Headway in Traffic Streams on the Minor Leg of an IntersectionAnalysis of Headway in Traffic Streams on the Minor Leg of an Intersection
Analysis of Headway in Traffic Streams on the Minor Leg of an Intersection
IOSR Journals
 
Action Trajectory Reconstruction for Controlling of Vehicle Using Sensors
Action Trajectory Reconstruction for Controlling of Vehicle Using SensorsAction Trajectory Reconstruction for Controlling of Vehicle Using Sensors
Action Trajectory Reconstruction for Controlling of Vehicle Using Sensors
IOSR Journals
 
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
Performance of the Boiler and To Improving the Boiler Efficiency Using Cfd Mo...
IOSR Journals
 
Durability of Bricks Cast With Industrial Sludge
Durability of Bricks Cast With Industrial SludgeDurability of Bricks Cast With Industrial Sludge
Durability of Bricks Cast With Industrial Sludge
IOSR Journals
 
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
Evaluation of Structural Implication of Incorporating Base Isolator as Earthq...
IOSR Journals
 
Modeling & Analysis of Centrifugal Blower using Composite Material
Modeling & Analysis of Centrifugal Blower using Composite MaterialModeling & Analysis of Centrifugal Blower using Composite Material
Modeling & Analysis of Centrifugal Blower using Composite Material
IOSR Journals
 
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference SystemEnhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
Enhancement of New Channel Equalizer Using Adaptive Neuro Fuzzy Inference System
IOSR Journals
 
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
Structural analysis of the magnetic poles of the 20 MeV Injector Microtron.
IOSR Journals
 
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
Developing Organic Processed Food Entrepreneurial Intention: Study On Women F...
IOSR Journals
 
Ad

Similar to Design & Simulation of RISC Processor using Hyper Pipelining Technique (20)

20120140502007 2-3
20120140502007 2-320120140502007 2-3
20120140502007 2-3
IAEME Publication
 
Design and development of a 5-stage Pipelined RISC processor based on MIPS
Design and development of a 5-stage Pipelined RISC processor based on MIPSDesign and development of a 5-stage Pipelined RISC processor based on MIPS
Design and development of a 5-stage Pipelined RISC processor based on MIPS
IRJET Journal
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
Realization of high performance run time loadable mips soft-core processor
Realization of high performance run time loadable mips soft-core processorRealization of high performance run time loadable mips soft-core processor
Realization of high performance run time loadable mips soft-core processor
eSAT Publishing House
 
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORSA REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
IRJET Journal
 
Presentation on risc pipeline
Presentation on risc pipelinePresentation on risc pipeline
Presentation on risc pipeline
Arijit Chakraborty
 
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
IRJET Journal
 
UNIT 2_ESD.pdf
UNIT 2_ESD.pdfUNIT 2_ESD.pdf
UNIT 2_ESD.pdf
SaralaT3
 
Various type of register
Various type of registerVarious type of register
Various type of register
Muhammad Taqi Hassan Bukhari
 
Hg3612911294
Hg3612911294Hg3612911294
Hg3612911294
IJERA Editor
 
Design of a low power processor for Embedded system applications
Design of a low power processor for Embedded system applicationsDesign of a low power processor for Embedded system applications
Design of a low power processor for Embedded system applications
ROHIT89352
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc ProcessorDesign and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
VLSICS Design
 
W04505116121
W04505116121W04505116121
W04505116121
IJERA Editor
 
Bc0040
Bc0040Bc0040
Bc0040
hayerpa
 
A novel reduced instruction set computer-communication processor design usin...
A novel reduced instruction set computer-communication  processor design usin...A novel reduced instruction set computer-communication  processor design usin...
A novel reduced instruction set computer-communication processor design usin...
International Journal of Reconfigurable and Embedded Systems
 
arm-cortex-a8
arm-cortex-a8arm-cortex-a8
arm-cortex-a8
Andrew Daws
 
unit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptxunit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptx
KandavelEee
 
embeddeed real time systems 2 mark questions and answers
embeddeed real time systems 2 mark questions and answersembeddeed real time systems 2 mark questions and answers
embeddeed real time systems 2 mark questions and answers
rubini Rubini
 
Design and development of a 5-stage Pipelined RISC processor based on MIPS
Design and development of a 5-stage Pipelined RISC processor based on MIPSDesign and development of a 5-stage Pipelined RISC processor based on MIPS
Design and development of a 5-stage Pipelined RISC processor based on MIPS
IRJET Journal
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
Realization of high performance run time loadable mips soft-core processor
Realization of high performance run time loadable mips soft-core processorRealization of high performance run time loadable mips soft-core processor
Realization of high performance run time loadable mips soft-core processor
eSAT Publishing House
 
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORSA REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
A REVIEW ON ANALYSIS OF 32-BIT AND 64-BIT RISC PROCESSORS
IRJET Journal
 
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
Design and Implementation of Pipelined 8-Bit RISC Processor using Verilog HDL...
IRJET Journal
 
UNIT 2_ESD.pdf
UNIT 2_ESD.pdfUNIT 2_ESD.pdf
UNIT 2_ESD.pdf
SaralaT3
 
Design of a low power processor for Embedded system applications
Design of a low power processor for Embedded system applicationsDesign of a low power processor for Embedded system applications
Design of a low power processor for Embedded system applications
ROHIT89352
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc ProcessorDesign and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
VLSICS Design
 
unit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptxunit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptx
KandavelEee
 
embeddeed real time systems 2 mark questions and answers
embeddeed real time systems 2 mark questions and answersembeddeed real time systems 2 mark questions and answers
embeddeed real time systems 2 mark questions and answers
rubini Rubini
 
Ad

More from IOSR Journals (20)

A011140104
A011140104A011140104
A011140104
IOSR Journals
 
M0111397100
M0111397100M0111397100
M0111397100
IOSR Journals
 
L011138596
L011138596L011138596
L011138596
IOSR Journals
 
K011138084
K011138084K011138084
K011138084
IOSR Journals
 
J011137479
J011137479J011137479
J011137479
IOSR Journals
 
I011136673
I011136673I011136673
I011136673
IOSR Journals
 
G011134454
G011134454G011134454
G011134454
IOSR Journals
 
H011135565
H011135565H011135565
H011135565
IOSR Journals
 
F011134043
F011134043F011134043
F011134043
IOSR Journals
 
E011133639
E011133639E011133639
E011133639
IOSR Journals
 
D011132635
D011132635D011132635
D011132635
IOSR Journals
 
C011131925
C011131925C011131925
C011131925
IOSR Journals
 
B011130918
B011130918B011130918
B011130918
IOSR Journals
 
A011130108
A011130108A011130108
A011130108
IOSR Journals
 
I011125160
I011125160I011125160
I011125160
IOSR Journals
 
H011124050
H011124050H011124050
H011124050
IOSR Journals
 
G011123539
G011123539G011123539
G011123539
IOSR Journals
 
F011123134
F011123134F011123134
F011123134
IOSR Journals
 
E011122530
E011122530E011122530
E011122530
IOSR Journals
 
D011121524
D011121524D011121524
D011121524
IOSR Journals
 

Recently uploaded (20)

SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
Slide share PPT of NOx control technologies.pptx
Slide share PPT of  NOx control technologies.pptxSlide share PPT of  NOx control technologies.pptx
Slide share PPT of NOx control technologies.pptx
vvsasane
 
Jacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia - Excels In Optimizing Software ApplicationsJacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Physical and Physic-Chemical Based Optimization Methods: A Review
Physical and Physic-Chemical Based Optimization Methods: A ReviewPhysical and Physic-Chemical Based Optimization Methods: A Review
Physical and Physic-Chemical Based Optimization Methods: A Review
Journal of Soft Computing in Civil Engineering
 
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
Reflections on Morality, Philosophy, and History
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
Design of Variable Depth Single-Span Post.pdf
Design of Variable Depth Single-Span Post.pdfDesign of Variable Depth Single-Span Post.pdf
Design of Variable Depth Single-Span Post.pdf
Kamel Farid
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
introduction technology technology tec.pptx
introduction technology technology tec.pptxintroduction technology technology tec.pptx
introduction technology technology tec.pptx
Iftikhar70
 
Deepfake Phishing: A New Frontier in Cyber Threats
Deepfake Phishing: A New Frontier in Cyber ThreatsDeepfake Phishing: A New Frontier in Cyber Threats
Deepfake Phishing: A New Frontier in Cyber Threats
RaviKumar256934
 
twin tower attack 2001 new york city
twin  tower  attack  2001 new  york citytwin  tower  attack  2001 new  york city
twin tower attack 2001 new york city
harishreemavs
 
Automatic Quality Assessment for Speech and Beyond
Automatic Quality Assessment for Speech and BeyondAutomatic Quality Assessment for Speech and Beyond
Automatic Quality Assessment for Speech and Beyond
NU_I_TODALAB
 
Control Methods of Noise Pollutions.pptx
Control Methods of Noise Pollutions.pptxControl Methods of Noise Pollutions.pptx
Control Methods of Noise Pollutions.pptx
vvsasane
 
Generative AI & Large Language Models Agents
Generative AI & Large Language Models AgentsGenerative AI & Large Language Models Agents
Generative AI & Large Language Models Agents
aasgharbee22seecs
 
Frontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend EngineersFrontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend Engineers
Michael Hertzberg
 
Environment .................................
Environment .................................Environment .................................
Environment .................................
shadyozq9
 
AI Chatbots & Software Development Teams
AI Chatbots & Software Development TeamsAI Chatbots & Software Development Teams
AI Chatbots & Software Development Teams
Joe Krall
 
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdfML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
rameshwarchintamani
 
SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
Slide share PPT of NOx control technologies.pptx
Slide share PPT of  NOx control technologies.pptxSlide share PPT of  NOx control technologies.pptx
Slide share PPT of NOx control technologies.pptx
vvsasane
 
Jacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia - Excels In Optimizing Software ApplicationsJacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia - Excels In Optimizing Software Applications
Jacob Murphy Australia
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
Design of Variable Depth Single-Span Post.pdf
Design of Variable Depth Single-Span Post.pdfDesign of Variable Depth Single-Span Post.pdf
Design of Variable Depth Single-Span Post.pdf
Kamel Farid
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
introduction technology technology tec.pptx
introduction technology technology tec.pptxintroduction technology technology tec.pptx
introduction technology technology tec.pptx
Iftikhar70
 
Deepfake Phishing: A New Frontier in Cyber Threats
Deepfake Phishing: A New Frontier in Cyber ThreatsDeepfake Phishing: A New Frontier in Cyber Threats
Deepfake Phishing: A New Frontier in Cyber Threats
RaviKumar256934
 
twin tower attack 2001 new york city
twin  tower  attack  2001 new  york citytwin  tower  attack  2001 new  york city
twin tower attack 2001 new york city
harishreemavs
 
Automatic Quality Assessment for Speech and Beyond
Automatic Quality Assessment for Speech and BeyondAutomatic Quality Assessment for Speech and Beyond
Automatic Quality Assessment for Speech and Beyond
NU_I_TODALAB
 
Control Methods of Noise Pollutions.pptx
Control Methods of Noise Pollutions.pptxControl Methods of Noise Pollutions.pptx
Control Methods of Noise Pollutions.pptx
vvsasane
 
Generative AI & Large Language Models Agents
Generative AI & Large Language Models AgentsGenerative AI & Large Language Models Agents
Generative AI & Large Language Models Agents
aasgharbee22seecs
 
Frontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend EngineersFrontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend Engineers
Michael Hertzberg
 
Environment .................................
Environment .................................Environment .................................
Environment .................................
shadyozq9
 
AI Chatbots & Software Development Teams
AI Chatbots & Software Development TeamsAI Chatbots & Software Development Teams
AI Chatbots & Software Development Teams
Joe Krall
 
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdfML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
ML_Unit_V_RDC_ASSOCIATION AND DIMENSIONALITY REDUCTION.pdf
rameshwarchintamani
 

Design & Simulation of RISC Processor using Hyper Pipelining Technique

  • 1. IOSR Journal of Mechanical and Civil Engineering (IOSR-JMCE) e-ISSN: 2278-1684,p-ISSN: 2320-334X, Volume 9, Issue 3 (Sep. - Oct. 2013), PP 49-57 www.iosrjournals.org www.iosrjournals.org 49 | Page Design & Simulation of RISC Processor using Hyper Pipelining Technique SimranRana, Rajesh Mehra Assistant Professor in HIET (ECE) Shahpur, Distt.-Kangra H.P, INDIA Associate Professor in NITTTR Chd. (ECE) Sec.-26, INDIA Abstract: This Hyper pipelining technique is different to the pipelining of instruction decoding known from RISC processors. The point is that we can use hyper pipelining on top of any sequential logic, for example a RISC processor, independent of its underlying functionality. The RISC processor with pipelined instruction set decoding can automatically be hyper pipelined to generate CMF individual RISC processors. Hyper pipelining implements additional register and can use register balancing for fine grain timing optimizations. The method hyper pipelining is also called “C-slow Retiming”. The main benefit is the multiplication of the core's functionality by only implementing registers. This is a great advantage for ASICs but obviously very attractive for FPGAs with their already existing registers. Keywords: RISC Processor, Decomposition of Sequential Circuits, Hyper Pipelining, Retiming, C-Slow Retiming. I. Introduction [1] Now a day’s developments are taking place at a very rapid rate. Market is becoming more and more customer driven. Customer wants system designed tailor made to suit his needs. This is putting great pressure on the embedded system designer. After finding appropriate processor its development and debugging tools and the associated learning curve becomes time consuming. Looking into this factor and looking at the advancements in the field Of VLSI design, the days are no longer that people will start implementing their own processor supporting desired instructions only along with associated peripherals. Due to the need to meet increasingly challenging objectives of increasing performance, reducing power consumption and reducing size, synchronous processor core designs have been increasing significantly in complexity for some time now. This applies to even those designs originally based on the RISC principle of reducing complexity in order to improve instruction throughput and the performance of the design. Not only does the methodology of this paper provide a standardized approach for describing that it generates can be used as a basis for the formal verification of the design; and thus facilitate solutions to the problems that increasing complexity poses for traditional validation. II. Role Of VVLSI In Designing The Processor For designing the system various methods are available like traditional method of designing, microprocessor and Microcontroller based design etc and now a day’s VLSI design method is mostly preferred because of its no. of advantages, such as Small size, Low power dissipation, Operate at high speed, Security up to 20 years, Reprogramming is possible for more than 20,000 times, Fast concurrent programming, It is having internet reconfigurable logic, Remote load programming is possible, Time to market is small, Cost to performance ratio is high, Easy up gradations to new specifications. The main factor for preferring VLSI design is a single chip solution, which is supporting to create our own processor. VLSI has made possible to have digital hardware implementation, which can be changed as per customer requirement. Different descriptive languages are available with different types of design entry such as VHDL [Very high speed integrated circuit Hardware Description Language], Verilog and ABEL
  • 2. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 50 | Page III. System Architecture With Pipeline [2] Fig 1: Five-Stage pipelined structure of RISC (super pipelining) The instruction fetch stage is also responsible for reading the instruction memory and sending the current instruction to the next stage in the pipeline, or a stall if a branch has been detected in order to avoid incorrect execution. The instruction fetch unit contains the following logic elements that are implemented in VHDL: 8-bit program counter (PC) register, an adder to increment the PC by four, the instruction memory, a multiplexor, and an AND gate used to select the value of the next PC. Program counter and instruction memory are the two important blocks of Instructions Fetch Unit 3.1 Program counters (PC) It is an 32 bit device that is connected to the data bus and the address bus. It will hold its value unless told to do something. If the I/P is kept high the device will count, i.e. it will increment by 4. 3.1.1 Instruction memory (IM) The Instruction memory on these machines had a latency of one cycle. During the Instruction Fetch stage, a 32-bit instruction is fetched from the memory. The PC predictor sends the Program Counter (PC) to the Instruction memory to read the current Instruction. At the same time, the PC predictor predicts the address of the next instruction by incrementing the PC by 4. 3.1.2 Instruction registers (IR) An instruction register (IR) is the part of control unit that stores the instruction currently being executed or decoded. In simple processors each instruction to be executed is loaded into the instruction register which holds it while it is decoded, prepared and ultimately executed, which can take several steps. RISC processors use a pipeline of instruction registers where each stage of the pipeline does part Of the decoding, preparation or execution and then passes it to the next stage for its step. Modern processors can even do some of the steps of out of order as decoding on several instructions is done in parallel. Decoding the opcode in the instruction register includes determining the instruction, where its operands are in memory, retrieving the operands from memory, allocating processor resources to execute the command. The output of IR is available to control circuits which generate the timing signals that controls the various processing elements involved in executing the instruction. 3.2 Instruction Decode Unit The Instruction Decode stage is the second stage in the pipeline. Branch targets will be calculated here and the Register File, the dual-port memory containing the register values, resides in this stage. The forwarding units, solving the data hazards in The pipeline, reside here. Their function is to detect if the register to be fetched in this stage is written to in a later stage. In that case the data is forward to This stage and the data hazard is solved. This stage is where the control unit determines what values the control lines must be set to depending on the instruction. In addition, hazard detection is implemented in this stage, and all necessary values are fetched from the register banks. The Decode Stage is the stage of the CPU's pipeline where the fetched instruction is decoded, and values are fetched from the register bank. It is responsible for mapping the different sections of the instruction into their proper representations (based on R or I type instructions). The Decode stage consists of the Control unit, the Hazard Detection Unit, the Sign Extender, and the Register bank, and is responsible for connecting all of these components together. It splits the instruction into its various parts and feeds them to the corresponding components. Registers Rs and RT are fed to the register bank, the immediate section is fed to the sign extender, and the ALU opcode and function codes are sent to the control unit. The outputs of these corresponding components are then clocked and stored for the next stage The Control unit takes the given Opcode, as well as the function code from the instruction, and translates it to the individual instruction control lines needed by the three remaining stages. This is accomplished via a large case statement.
  • 3. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 51 | Page 3.2.1 Control unit The control unit of the MIPS single-cycle processor examines the instruction opcode bits [31 – 26] and decodes the instruction to generate nine control signals to be used in the additional modules. The RegDst control signal determines which register is written to the register file. The Jump control signal selects the jump address to be sent to the PC. The Branch control signal is used to select the branch address to be sent to the PC. The MemRead control signal is asserted during a load instruction when the data memory is read to load a register with its memory contents. The MemtoReg control signal determines if the ALU result or the data memory output is written to the register file. The ALUOp control signals determine the function the ALU performs. (E.g. and, or, add, sbu, slt) The MemWrite control signal is asserted when during a store instruction when a registers value is stored in the data memory. The ALUSrc control signal determines if the ALU second operand comes from the register file or the sign extend. The RegWrite control signal is asserted when the register file needs to be written. 3.2.2 Register files (RF) During the decode stage, the two register Rs&Rt are identified within the instruction, and the two registers are read from the register file. In the MIPS design, the register file had 32 entries. At the same time the register file was read, instruction issue logic in this stage determined if the pipeline was ready to execute the instruction in this stage. If not, the issue logic would cause both the Instruction Fetch stage and the Decode stage to stall. If the instruction decoded was a branch or jump, the target address of the branch or jump was computed in parallel with reading the register file. The branch condition is computed after the register file is read, and if the branch is taken or if the instruction is a jump; the PC predictor in the first stage is assigned the branch target, rather than the incremented PC that has been computed. 3.3 Execution Unit The third stage in the pipeline is where the arithmetic- and logic-instructions will be executed. All instructions are executed with 32-bit operands and the result is a 32-bit word. An overflow event handler was not included in this project. The execution unit of the MIPS processor contains the arithmetic logic unit (ALU) which performs the operation determined by the ALUop signal. The branch address is calculated by adding the PC+4 to the sign extended immediate field shifted left 2 bits by a separate adder. The logic elements to be implemented in VHDL include a 3.3.1 ALU unit The arithmetic/logic unit (ALU) executes all arithmetic and logical operations. The arithmetic/logic unit can perform four kinds of arithmetic operations, or mathematical calculations: addition, subtraction, multiplication, and division. As its name implies, the arithmetic/logic unit also performs logical operations. A logical operation is usually a comparison. The unit can compare numbers, letters, or special characters. The computer can then take action based on the result of the comparison. This is a very important capability 3.4Memory Access unit The memory access stage is the fourth stage of pipeline. This is where load and store instructions Will access data memory. During this stage, single cycle latency instructions simply have their results forwarded to the next stage. This forwarding ensures that both single and two cycle instructions always write their results in the same stage of the pipeline, so that just one write port to the register file can be used, and it is always Available. If the instruction is a load, the data is read from the data memory 3.4.1 Data Memory Unit (DM) The data memory unit is only accessed by the load and store instructions. The load instruction asserts the MemRead signal and uses the ALU Result value as an address to index the data memory. The read output data is then subsequently written into the register file. A store instruction asserts the MemWrite signal and writes the data value previously read from a register into the computedmemory address. The VHDL implementation of the data memory was described earlier. 3.5 Write back unit During this stage, both single cycle and two cycle instructions write their results into the register file.
  • 4. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 52 | Page IV. Decomposition Of Sequential Circuit (Reference With Clock) The problem of assigning binary state modes to the states of a sequential machine in order to realize it by a sequential circuit has been an important object in switching circuit theory. The complexity of the circuit as well as its structural properties is strongly dependent upon the binary state codes chosen. The Asynchronous sequential machines, most of the results obtained so far have been concerned with the problem of critical race free assignments with the minimum number of state variables. 4.1 Hyper pipelining [4] In this paper, a method is discussed that how the functionality of a core can be multiplied by adding registers to the core. It does not only provide the less area usage compared to its individual instantiations, but it can also provide impact on the system performance as a whole. This method is called “hyper pipelining” here the hyper pipelined complex RISC core (OR1200 from Open Cores) is discussed. Hyper pipelining is a technique where the Core Multiplier multiplies the functionality of cores, bus-systems or complete sub designs. It implements registers (called pipes) in the design to create CMF independent designs, whereas CMF can be any number greater than 1. Since only registers are inserted, the resulting area is much less than duplicating the complete design. The result is a much smaller than ASIC or lesser than FPGA size. The applied method is also called "C-slow Retiming" . Fig 2: Comparison of combined 4 single RISC core with hyper pipelined RISC core with CMF=4(Core Multiplication Factor) [4] Figure 3 shows the simplified structure of sequential logic. Inputs and sequential elements clocked by clk1 drive the combinational logic. The combinational logic drives the outputs and the data inputs of the registers. In Figure4 each sequential element is duplicated with an intermediate register clocked by a second clock clk2. If clk2 is synchronous to clk1, but not edge-aligned, and if the timing is right (no setup or hold time violation between clk1 and clk2 registers), the behavior of the sequential logic doesn't change. Registers), the behavior of the sequential logic doesn't change. Fig 3: Simplified Sequential logic [5] Figu4: Sequential logic with inter-logic mediate register clocked by clk2 [5] 4.1.1 Hyper Pipelined OR1200 RISC Core [7] In this section hyper pipelining of the OR1200 core is described. The original code is taken from Open Cores' OR1200 project. This project only takes care regarding the verification of the hyper pipelining aspects. i) Introduction to OR1200 RISC Core: - Open RISC 1200
  • 5. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 53 | Page Fig 5: OR1200 Core’s Architecture [7] The OR1200 is a 32-bit scalar RISC with Harvard micro architecture, 5 stage integer pipeline, virtual memory support (MMU) and basic DSP capabilities. Default caches are 1-way direct-mapped 8KB data cache and 1-way direct-mapped 8KB instruction cache, each with 16-byte line size. Both caches are physically tagged. By default MMUs are implemented and they are constructed of 64-entry hash based 1- way direct-mpped data TLB and 64- entry hash based 1-way direct-mapped instruction TLB. Supplemental facilities include debug unit for real-time debugging, high resolution tick timer, programmable interrupt controller and power management support. When implemented in a typical 0.18u 6LM process it should provide over 300 dhrystone 2.1 MIPS at 300MHz and 300 DSP MAC 32x32 operations, at least 20% more than any other competitor in this class. OR1200 in default configuration has about 1 M transistor. OR1200 is intended for embedded, portable and networking applications. It can successfully compete with latest scalar 32-bit RISC processors in his class and can efficiently run any modern operating system. Competitors include ARM10, ARC and Tensilica RISC processors. V. Design Methodology In order to meet these objectives, there are many steps which are used for Design & Implementation of RISC Processor using Hyper Pipelining technique 5.1 Wishbone Bus Interface [8] The WISHBONE interconnect is intended as a general purpose interface. It always defines the standard data exchange between IP core modules. It does not attempt to regulate the application specific functions of the IP core. The WISHBONE architects were strongly influenced by three factors. First, there was a need for a good, reliable System-on-Chip integration solution. Second, there was a need for a common interface specification to facilitate structured design methodologies on large project teams. Third, they were impressed by the traditional system integration solutions afforded by microcomputer buses such as PCI bus and VME bus. Basically there are three bus interfaces to the OR1200 RISC Core 1. Wishbone Instruction Bus Interface 2. Wishbone Data Bus Interface 3. Debug Interface Wishbone Bus is a low performance & easy accessibility bus as comparison to the ARM-AMBA Bus which is a high performance bus. The Wishbone Instruction bus is used for sending address and instructions on the bus which are generated randomly through the Random Instructions Code Generator and also acting as a slave. In this thesis the Wishbone Bus is used as the interface between the OR1200 RISC Core & Random Instructions Code Generator. Here the OR1200 RISC Core is acting as the Master whereas the Random Instruction Code Generator is used as the Slave. Main signals which are generated by the OR1200 RISC Core (Master) are 1. CYC-Cycle 2. STB-Strobe 3. WE-Write Enable 4. SEL- Select Signal 5. RST- Reset (Reset is a active high signal). Main signals which are generated by the Random Instruction Code Generators (Slave) are 1. ACK- Acknowledge the randomly generated instructions. 2 ERR-Error Signal is send if no instruction is generated randomly. VI. Results And Validation 6.1 Introduction ModelSim is used for ASIC and FPGA design. Mentor Graphics was the first to combine single kernel simulator (SKS) technology with a unified debug environment for Verilog, VHDL, and System C. The
  • 6. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 54 | Page combination of industry-leading, native SKS performance with the best integrated debug and analysis environment make ModelSim the simulator of choice for both ASIC and FPGA designs. The best standards and platform support in the industry make it easy to adopt in the majority of process and tool flows. 6.2 Database for Compilation & Simulation: - ModelSimcombines simulation performance and capacity with the code coverage and debugging capabilities required to simulate multiple blocks and systems and attain ASIC gate-level sign-off. Comprehensive support of Verilog, SystemVerilog for Design, VHDL, and SystemC provide a solid foundation for single and multi-language design verification environments. ModelSim’s easy to use and unified debug and simulation environment provide today’s FPGA designers both the advanced capabilities that they are growing to need and the environment that makes their work productive. 6.2.1Different steps for Compiling a Design 1. Code Your Design 2. Start ModelSim 3. Set the Working Directory 4. Create a Work library 5. Compile a Design 6.2.2 Different steps for Simulating a Design 1. Code the Testbench 2. Compile the Testbench 3. Load the Testbench 4. Display Waveforms 5. Run the Simulation 6. Recompiling and Rerunning a Simulation 6.3 Different Waveforms for different Signals: -For the command window 1. Run the run_me_first file which will set the environment variables for the code. Then in the OR1200-bin- Scripts, compdesign is created which is used for compilation, whereas to show the total files bin-design- complist path is used. Fig 6: Comp Design for Compilation 2. Then to do the compilation write Comp_Design top on the command Window which is used to make work file. To see the work file we go for the command cd vercomp_work. Then cd vercomp_work>vlog is the command used for compilation.After that for simulation the command is cd vercomp_work>vsim or1200_testbench_cm2
  • 7. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 55 | Page Fig 7: Execution of 200 Instruction Cycles by theprocessor Here in figure 7 executions of 200 Instruction Cycles by the processor is shown. In this figure data is which is entered for the different main signal is given below for OR1200 Testbench Cnt(cycle count)=200 System CLK=1 RST=0 Clk_i=0 Clk _i_cmls_i=0 Cmls=0 Then through the Wishbone debug Interface the data will be received on the through wishbone databus to system data bus. Fig 8: Execution of 24000-Simulation Cycle by the Processor-Halted, Resetted and then Started again In figure 4.2 here the execution of the 24000 cycles is shown with the condition is that first the processor is Halted, Resetted and then again started depending on the Logic Low and Logic High condition on the Reset Control signal. When the processor is started again the address will be shown on the interface of Wishbone bus select line & the data will be received on the interference of wishbone date bus.
  • 8. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 56 | Page Fig 9: First Data is received by the Processor Here in figure 9 the processor execution is carried out for twenty cycles. In this timing waveform it is shown that when the reset is deactivated and system clock is activated the first data is received which is received from the memory and the memory address is generated randomly through Random Instruction Generator Figure 10:First Instruction fetches operation Started In figure 10 the processor execution is carried out for nineteen cycles. In this the timing waveform it is shown that when the reset is deactivated and system clock is activated the first data is fetched from the memory and the memory address is generated randomly through Random Instruction Generator. Fig 11: Reset is De-asserted; the Instruction bus is showing no address
  • 9. Design & Simulation of RISC Processor using Hyper Pipelining Technique www.iosrjournals.org 57 | Page In figure 11 the processor execution is carried out for nineteen cycles. In this the timing waveform it is shown that firstly logic high is given to the reset signal. Here system clock (clk) & clk_i are inverted to each other. VII. Conclusion & Future Work 7.1 Conclusion The concept of hyper pipelining for RISC open cores 1200 HP was drawn from the Hyper Pipelined Technology used for Pentium series processors to increase the speed. By multiplying the clock frequency, the performance of the design is the same as the sum of the individual implementations. It is important to notice, that each "new" core works totally independent of the others. In many cases, FPGAs work in conjunction with a conventional DSP as integrating pre and post processing functions, along with high performance signal processing. There is a constant requirement for efficient use of FPGA resources where occupying less hardware for a given system that can yield significant cost-related benefits. The expected outcome of this thesis work will be the development of RISC processor (reduced instruction set computer) i.e. a low power embedded processor -Enhance speed, Area saving as comparison to the actual area if implemented individuallyUsing hyper pipelining technique based on the open cores or core multipliers or core multiplication factor. 7.2 Future Scope The scope of this work is mainly in the area of low power high performance embedded processors. The proposed work will improve speed and area consumption by using Hyper Pipelined Open Core RISC Processor. The hyper pipelining is based on automatic RTL modifications. This allows further manual modifications by the designer after the automatic hyper pipelining task as well. The hyper pipelined OR1200 core can be enhanced in a way, that the individual functional cores share the same instruction cache or even more useful the same data cache. For this the designer might only need to change a few lines in the RTL, where the data cache is instantiated and adopt the software for the access definition. It is also not always necessary, that all processors in a hyper pipelined core have the same Instruction or Data cache sizes. Each processor knows its processor index in the hyper pipelined scenario, so that an individual configuration of Instruction and Data cache is possible, if the RTL code is manually enhanced by the designer, this would also certainly improve the performance of the multi core scenario. Another idea is to add special function registers (SFR) for mail-boxing, etc. to the original RTL code. Acknowledgments This paper work is made possible through the help and support from everyone, including: parents, teachers, friends, and in essence, all sentient beings. Especially, please allow me to dedicate my acknowledgment of gratitude toward the following significant advisors and contributors: First and foremost, I would like to deeply thank to my supervisor Er. Rajesh Mehra, Associate Professor, Department of Electronics and Communication Engineering, NITTTR, Chandigarh for guiding and correcting at various stages of my thesis work with attention and care.I thank to all my friends who help me at many stages in this work. References [1] Reduced instruction set computing - Wikipedia, the free encyclopediaen.wikipedia.org/ wiki/Reduced_instruction_set_computing. [2] Sharda P. Katke, G.P. Jain “Design and Implementation of 5 Stages Pipelined Architecture in 32 Bit RISC Processor”, International Journal of Emerging Technology and Advanced Engineering , Vol. 2, Issue No.4, pp. 340-346, April 2012. [3] Introduction to RISC Processors by ni logic Pvt.Ltd, pp. 1-42 [4] Tobias Strauch, “Hyper Pipelined OR1200 Core Specification”, OpenCores Hyper Pipelined OR1200 Core, pp.-1-19, 2010 [5] Tobias Strauch “Hyper Pipelining of Multicores and SoC Interconnects”, pp. 1-16, October 2010 [6] Hyper Pipelined Open RISC OR1200 Core, opencores.com/project, OR1200_hp, (Verilog) Hyper Pipelined AVR Core, opencores.com/project,avr_hp, [7] DamjanLampret “Open RISC 1200 IP Core Specification”, Preliminary Draft Rev.-0.7, pp.-1-63, 2001 [8] Mohandeep Sharma1, Dilip Kumar “Design and Synthesis of Wishbone Bus Dataflow Interface Architecture for SoC Integration”, India Conference (INDICON), 2012 Annual IEEE, pp.-813-818, 2012
  翻译: