Free Essay

Arm Processer for Computer Architecture

In:

Submitted By suave81
Words 1463
Pages 6
Subject: The use of the ARM processor as an instruction tool for Computer Architecture Class
Journal Article Title: Arms for the Poor: Selecting a Processor for Teaching Computer Architecture
Author: Alan Clements
Site: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5673541

When an individual chooses to become a teacher, professor, or some sort of instructor, he or she will become subject to one of the most primitive questions ever asked in the history of civilization: “Why?” However, generally speaking when a student asks the question “Why?” it is not for a genuine thirst for knowledge or explanation. It is not like a child who wants to know why the sky is blue, or why dogs can’t talk. A students real interpretation of the question why is more like: “Why is this important?”, or “Why do we have to learn this?”, or the big one (according to Algebra teachers), “Will I ever use this again in the real world?” A computer architecture professor is different from other professor (besides obviously being smarter ;) ), when having to answer this question. Unlike Algebra, which is pretty well established and unlikely to change operations in the next 10 years, Computer Architecture is a rapidly evolving industry and has the very good possibility to look completely different in the year 2022. So a computer architecture professor is faced with a difficult answer to the question. One answer could be “Yes you have to learn it, because it appears on the final and I will fail you if you don’t.”, or “Yes you have to learn it but it is strictly theoretical because nobody in the industry really does it this way anymore.”
Each response respectively answers the question, but neither invokes a sense of real learning. The “because I said so” response serves to motivate the student strictly based on grades and crossing off another required course, but leads to a “Brain Dump” at the end of the course. The “hypothetical” response, indirectly limits the “Brain Dumping”, by implying that everyone starts with the same knowledge but then builds upon those initially instructed techniques. However, at the same time de-motivates the student based on the difficulty to absorb the material without something tangible for the student to learn with, and ultimately shows the reason for improvement. When it comes to computer architecture there is a tool that takes the best of both responses and creates one credible answer. That tool is the ARM processor. Computer Architecture is a key component of a degree in Computer Science and itself consists of several core areas of curriculum shown in the two tables below, provided by the joint ACM IEEE Computer Society Computing Curriculum.

Key Components of Computer Architecture Curriculum | Expanded Computer Architecture Curriculum or the Core | Digital logic and computer arithmeticComputer architectureInterfacing and communicationMemory system organization and architectureFunctional organizationMultiprocessing and alternative architecturesPerformance accelerationArchitecture for networks and distributed systemsDevices; New directions in computing | 1. Overview of the history of the digital computer2. Introduction to instruction set architecture, microarchitecture andsystem architecture3. Processor architecture – instruction types, register sets, addressingmodes4. Processor structures – memory-to-register and load/store architectures5. Instruction sequencing, flow-of-control, subroutine call/return6. Structure of machine-level programs7. Limitations of low-level architectures8. Low-level architectural support for high-level languages |

Notice that the no specific computer is specified for instruction and that it is up to the individual teacher to choose the example machine. The most common choices for processor by computer architecture professors are the Motorola 68K, the Intel Pentium 4, or MIPS. The issue with these CPU’s is that they were not designed for instruction (no pun intended) they were made to maximum market penetration and company profits. The alternative to these choices is to design your own machine for learning, but the problem there is that students don’t want to use hypothetical hardware because it seems unrealistic, and if something goes wrong with the implementation the designer is responsible for making it work again, and that itself can be a daunting task. These two reasons are why some professors have started to use the ARM processor. The ARM stands for Advanced RISC Machines Ltd, which was a Ltd. founded in the UK in 1990, but ARM does not manufacture their own microprocessors. ARM is an intellectual property company that makes the designs and gives them to the bigger manufacturers like Intel and TI to make them. ARM microprocessors appear in many of the low-cost applications such as PDAs and cell phones just like other RISC processors, so it stays relevant to the students desire to learn about real world applications. While ARM poses a number of attributes the key features and highlights are in the table below.

ARM Feature | Difference from other processor | Pedagogical advantage | 16 general-purpose register set with PC visible in r15 | Typical RISC processors have 32 registers with PC hidden from user | * PC is visible and able to be modified to perform jumps * Advantages and disadvantages of general purpose registers vs. special purpose registers | RISC Instruction set | Same as RISC processors | * Consistent addressing for instructions | Conventional integer data-processing, but with some special instructions to handle shifting | Has a MLA instruction: MLA r1, r2, r3, r4 r1 = r2*r3+r4 | * Able to introduce audio and video applications for peaking more student interest | Uses both a RISC call/return mechanism and a stack mechanism | Usually these are separate subroutines CISC-stack based, RISC call/return | * Best of both worlds, easy to compare and contrast each mechanism |

There are a number of different highlights from using the ARM processor including the method ARM uses to shift, by combining shifts to other operations, similar to the way the multiplication and divide algorithms were improved. So instead of performing an operation and then shifting, ARM shifts and performs the operation in the same instruction therefore saving cycles. Another similar highlight is the predicated execution of branches and jumps. ARM applies a suffix to an instruction to perform the branch or jump. For example in conventional assembly language uses two conditional tests but in ARM the code is predicted to reduce the number of instructions.

Conventional Assembly Language | ARM predicted code | CMP r1, #0 ;test x in r1BNE exit ;if not 0 exitCMP r2, #5 ;compare y in r2 with 5BGE exit ;if greater than 4 exitADD r3, r3, #1;increment p in r3 Exit | CMP r1, #0 ;test x in r1CMPEQ r2, #5 ;if 0 then test y<5ADDLT r3, r3, #1 ;if y<5 then e=e+1 |

Here Arm save two instructions and executes in 3 clock cycles, and demonstrates an alternative way of implementing a conditional operation as well as providing an introduction to branchless computing. One of the coolest features of the ARM processor is the ability for the ARM to extend itself into other processors. An ARM processor can behave as expected as an ARM processor, or it can mimic other processors like a Pentium by changing its instruction set at run time. This is possible because ARM can dynamically adopt a 16-bit architecture from its normal 32-bit architecture. Meaning that the instructions and external data paths are 16 bits wide but the ARM remains a 32-bit processor with 32-bit registers, and operates similar to a narrow bus. Inevitably computer architecture students must use or learn the system the instructor uses on their own. But with the different options and circumstances of available computers to use by the students, i.e. Mac vs. PC, or Windows XP vs. 7, getting a version of the instructional processor that works on every students computer can be difficult. (As we saw with HASE.) This is another area where ARM has another distinct advantage over other processors. There are several ARM simulators available from either the web or text books (cd’s). Since no downloads or installs are necessary with a simulator, there is a distinct advantage for the student to replicate an example they saw in class to solve a similar assignment or homework question, or just to step through different instruction examples. In summary there are many different processors that are used and available for use as an instruction example. While each tool has advantages and disadvantages, none has been specially designed as an instructional tool. Quite frankly, none are really designed to be analyzed and dissected to be learned from. They are created and implemented to make money. However, the ARM processor could be viable solution for the computer architecture professor to use because of the vestal combination of real-world relevance and easy to understand constructs. These advantages might preempt the “Why we need to learn this?” question from being asked, by providing obvious evidence of working hardware that even the laziest of students can’t ignore.

Similar Documents

Premium Essay

Computer

...INTERNATIONAL (P) LIMITED, PUBLISHERS 4835/24, Ansari Road, Daryaganj, New Delhi - 110002 Visit us at www.newagepublishers.com This page intentionally left blank Table Of Contents PART I (Computer Application Theory) 1 Introduction To Computer .........................................................1 History Of Computer .................................................................................................. 1 Generations Of Computer ........................................................................................... 7 First Generation Computers........................................................................... 7 Second Generation Computers ...................................................................... 7 Third Generation Computers ......................................................................... 8 Fourth Generation Computers ....................................................................... 8 Fifth Generation Computers ......................................................................... 9 Classification Of Computers....................................................................................... 9 Analog Computers ....................................................................................... 10 Digital Computers...

Words: 60713 - Pages: 243

Free Essay

Det Store L

...Inspirationen fra Fremtidens danskfag Inspirationen fra litteraturteorien Inspirationen fra systemteorien Dannelsessyn Utraditionel dannelse Sammenfatning af første del Anden del. Teorier Kapitel 3. Den sociokulturelle udfordring Vygotsky Bakhtin Hvorfor ikke sociokulturalisme? Kapitel 4. Amerikansk litteraturpædagogik Klasserummets dialog Fortolkningens instanser Læsercentrerede teorier – og derudover Kapitel 5. Systemteori Bruner iagttaget af Luhmann 1 1 3 4 6 9 10 13 13 16 21 22 24 28 31 34 36 38 38 39 44 48 50 50 57 61 68 68 Systemteoriens grundlæggende paradoks Kommunikationsbegrebet Meningsbegrebet Systemteoretisk uddannelsesteori Interaktionssystemet undervisning Systemteori og danskundervisning Videns- og læringsformer. Stokastiske processer Systemteoretisk kunstteori Det selvprogrammere(n)de værk Kunstsystemets historie Litteratur og undervisning Kritik af Luhmanns systemteori Kapitel 6. Pædagogisk forskning Klasserumsforskning Litteraturpædagogisk forskning Eksperimentel litteraturforskning Pedagogiska gruppen i Lund Gymnasiekulturer Piger og drenge Litteraturpædagogisk forskning i Danmark Sammenfatning af anden del Tredje del. Metoder Kapitel 7. Design og metoder Undersøgelsens design og genre Udvælgelsesprocedure Udvælgelsen af klasser og lærere Udvælgelsen af tekster Observationsprocedure Elevskrivningerne...

Words: 201508 - Pages: 807