Sie sind auf Seite 1von 4

Introduction

Our group have decided to choose ARM and IA-64 (Intel Itanium) processor for this project.
We are expected to use GCC (for Linux platform) orMinGW (for Windows platform) for the
compilation process and compare the assembly code between these two processor. The
application that we have chosen were Paint Fun Application and Tic Tac Toe Game.The
analysis includes the differences of assembly code between these processor for basic
compilation mode and advanced compilation mode, which processor is better after
evaluating the generated assemble code for both compilation process, and how compiler
affect assembly code generation for both processor.

Objectives

The main aim for this project is to compare and contrast the compilation process between
these two processor (ARM and IA-64). Specifically, the project is conducted to fulfil the
following objectives:

i. To generate assembly code for the two processor.


ii. To discuss the differences of assembly code between these two processor for
basic and advanced compilation mode.
iii. To determine which processor is better after evaluating the generated assemble
code for both compilation process.
iv. To describe how the compiler optimization option affect assembly code
generation for both processor.

Applications

i. Paint Fun Application

Paint Application is it is a simple program that will have some function like
drawing line, circle, rectangle, coloring an selected area, erasing and so on. The
user can easily create a shape by clicking and dragging the mouse, the same
way that objects are selected in windows explorer. This application is similar to
the Paint in every computer in the world. However, it might has several different
that because it is built by using C++ program. Other differences also will be
discover later, during the building of application process. The reasons for
choosing this application are due to the our group member ability as a beginner
and still in learning process, this application is a simple application of C++
program to be built. It forsakes coding style and elegance for simplicity and
clarity. All of the state that is required for this program is stored in global
variables. There is a maximum of 5 shapes that can be created because they are
stored in a statically allocated array. If more than five shapes are created, then
the oldest existing shape will be replaced with the new shape.

ii. Tic Tac Toe Game


This Tic Tac Toe Game (or Noughts and crosses, Xs and Os) is a paper-and-
pencil game for two players, X and O, who take turns marking the spaces in a
33 grid. The player who succeeds in placing three respective marks in a
horizontal, vertical, or diagonal row wins the game. However, for this assignment
purpose we are going to build this version of game by using C++ program. The
player can play this game in two options which are single game or human vs
computer. The reason why this application has been choose as our group project
is because we want to explore how a game was produced by using C++ program.
Besides, it might be a n interesting learning process because it is a process of
building and constructing a game application.

Processor Architecture

i. ARM Architecture

As software requirements become increasingly demanding, processors are encountered in


many forms of electronic consumers. Most familiar to many are notebook and desktop
computers as well as mobile devices such as smart phones and tablets. ARM architecture is
one of the widely used processors in the market. ARM processor architecture is similar to
Reduced Instruction Set Computer (RISC) as it incorporate these typical RISC architecture
features which are, a uniform register file load or store architecture, where data processing
operates only on register contents and not directly on memory content. It uses simple
addressing modes with all load or store addresses determined from register contents and
instruction fields only.

The reason why we choose ARM architecture is because ARM is well-known for the design
of mobile, power efficient processor designs. In recent years, it has seen its technology used
in the product of many prominent electronic companies such as Apple, Samsung,
NvidiaTegra and Texas Instrument. There are a few cache types of ARM comprising of virtual
cache (ARM9), physical cache (ARM11) and multi-level cache. In ARM cache write policy,
the cache and memory are updated at the same time in the write through process. On the
other hand, to write back process, cache is updated first, then the dirty bit is set. Memory will
be updated when cache line required eviction. Another aspect that we will be looking at is
the pipelining. With a minimum of 3 stages of pipelining in ARM7TDMI processor and
maximum 14 stages of pipelining in ARM Cortex-A8 processor, it shows that ARM products
are targeting to increase the speed of the flow of instructions to the processor.

ii. IA-64

IA-64 provided full 64-bit address space, large directly accessible register files, enough
instruction bits to communicate information from the compiler to the hardware and the ability
to express arbitrarily large amount of ILP. IA-64 handles two operating system environments
within a single architecture, which are, the IA-64 environment that support 32 bit operating
systems and IA-64 (native) environment that support 64 bit operating systems.

For Software Pipelining,Performance can be improve by using this technique.Which the loop
is unrooled(high overhead and consumes a large number of registers) and can be pipelined
into processing execution unit.This possible due to predication to define pipeline stages.

Level of cache

L1 Caches

Data caches,4-way,32 byte cache lines


Instruction cache, 4-way,32 byte cache lines

L2 cache

Unified instruction & data cache ,6-way,64 byte cache lines

L3 cache
Full speed unified,2/4 Mbytes,4-way,64 byte cache lines

Memory

Frontside Bus ,2.1 GBytes/sec.

The reason why we choose this IA-64 processor because it outstanding performance,it can
remove performance bottlenecks(high parallelism,predication,pipelining).Its 64-bit that allow
bigger address space and can run 32-bit applications.Besides that,it have many benefits for
user which large file system and data file,fast security processing,higher troughput and more
service.

References

1. ARM Ltd. Copyright. ARM Processor Architecture.


www.arm.com/products/processors/instruction-set-architectures/index.php
[27/03/2015]
2. Jerry Huck, Dale Morris, etc. Introducing The IA-64 Architecture.
http://www.ece.cmu.edu/~ece740/f10/lib/exe.fetch.php?
media=introducingia64.pdf [27/03/2015]
3. KarthikSwaminathan. Overview of the IA-64 Architecture.
http://courses.cs.washington.edu/courses/cse585/00wi/project/itanium.pdf
[27/03/2015]
4. RF Wireless World. ARM cache basics.
http://www.rfwireless-world.com/Tutorials/ARM-tutorial-P6.html [27/03/2015]

Das könnte Ihnen auch gefallen