ARM Software Development Toolkit Version 2.11 User Guide

Total Page:16

File Type:pdf, Size:1020Kb

ARM Software Development Toolkit Version 2.11 User Guide 211ug.book : SDT_UG_Front_cover.fm Page i Sunday, June 1, 1997 12:21 PM ARM Software Development Toolkit Version 2.11 User Guide Document number: ARM DUI 0040C Issued: May 1997 Copyright Advanced RISC Machines Ltd (ARM) 1996 Beta Draft Beta ENGLAND GERMANY Advanced RISC Machines Limited Advanced RISC Machines Limited Fulbourn Road Otto-Hahn Str. 13b Cherry Hinton 85521 Ottobrunn-Riemerling Cambridge CB1 4JN Munich UK Germany Telephone: +44 1223 400400 Telephone: +49 89 608 75545 Facsimile: +44 1223 400410 Facsimile: +49 89 608 75599 Email: [email protected] Email: [email protected] JAPAN USA Advanced RISC Machines K.K. ARM USA Incorporated KSP West Bldg, 3F 300D, 3-2-1 Sakado Suite 5 Takatsu-ku, Kawasaki-shi 985 University Avenue Kanagawa Los Gatos 213 Japan CA 95030 USA Telephone: +81 44 850 1301 Telephone: +1 408 399 5199 Facsimile: +81 44 850 1308 Facsimile: +1 408 399 8854 Email: [email protected] Email: [email protected] World Wide Web address: http://www.arm.com Partner Confidential - Final Draft 211ug.book : SDT_UG_Front_cover.fm Page ii Sunday, June 1, 1997 12:21 PM Proprietary Notice ARM, the ARM Powered logo and EmbeddedICE are trademarks of Advanced RISC Machines Ltd. Neither the whole nor any part of the information contained in, or the product described in, this manual may be adapted or reproduced in any material form except with the prior written permission of the copyright holder. The product described in this manual is subject to continuous developments and improvements. All particulars of the product and its use contained in this manual are given by ARM in good faith. However, all warranties implied or expressed, including but not limited to implied warranties or merchantability, or fitness for purpose, are excluded. This manual is intended only to assist the reader in the use of the product. ARM Ltd shall not be liable for any loss or damage arising from the use of any information in this manual, or any error or omission in such information, or any incorrect use of the product. Change Log Issue Date By Change A-xx November 1996 JS Updated for Beta Test A December 1996 Doc Group Final draft B January 1997 JS Review comments added C May 1997 paw general update Beta Draft ii User Guide ARM DUI 0040C 211ug.book : Preface.fm Page 1 Sunday, June 1, 1997 12:21 PM Preface About This Manual Preface-2 Feedback Preface-3 User Guide Preface-1 ARM DUI 0040C 211ug.book : Preface.fm Page 2 Sunday, June 1, 1997 12:21 PM Preface About This Manual Overview This manual describes the ARM Software Development Toolkit (SDT), a suite of applications which, together with supporting documentation and examples, enables you to write and debug applications for the ARM family of RISC processors. Typographical Conventions The following typographical conventions are used in this book: typewriter denotes text that may be entered at the keyboard: commands, file and program names, and C source typewriter-italic shows text that must be submitted with user-supplied information: this is most often used in syntax descriptions italic highlights important notes and ARM-specific terminology bold signal names and menu selections bold internal cross-references Preface-2 User Guide ARM DUI 0040C 211ug.book : Preface.fm Page 3 Sunday, June 1, 1997 12:21 PM Preface Feedback Feedback on this manual If you have any comments or suggestions about this document, please contact your supplier giving: • the document title • the document number • the page number(s) to which your comments refer • a concise explanation of your comments Feedback on the Software Development Toolkit If you have any problems with the Software Development Toolkit, please contact your supplier including the following information: • details of the version of tools you are using, and the host system • a small sample code fragment that reproduces the problem • a clear explanation of what you expected to happen, and what actually happened User Guide Preface-3 ARM DUI 0040C 211ug.book : Preface.fm Page 4 Sunday, June 1, 1997 12:21 PM Preface Preface-4 User Guide ARM DUI 0040C 211ug.book : 211ugTOC.fm Page 1 Sunday, June 1, 1997 12:21 PM Contents 1 Introduction 1-1 1.1 Introduction to the ARM Software Development Toolkit 1-2 1.2 Components of the SDT 1-3 1.3 What’s New 1-5 2 ARM Project Manager 2-1 2.1 Introduction 2-2 2.2 APM Concepts 2-3 2.3 The APM Desktop 2-9 2.4 Getting Started 2-13 2.5 Additional APM Functions 2-20 2.6 Project Manager Configuration 2-26 2.7 Working with Source Files 2-28 2.8 Viewing Object and Executable Files 2-31 2.9 Working with Project Templates 2-33 2.10 Build Step Patterns 2-41 3 ARM Debugger for Windows 3-1 3.1 Introduction 3-2 User Guide Contents-1 ARM DUI 0040C 211ug.book : 211ugTOC.fm Page 2 Sunday, June 1, 1997 12:21 PM Contents 3.2 Debugging an ARM Application 3-3 3.3 Debugging Systems 3-3 3.4 ADW Concepts 3-6 3.5 The ADW Desktop 3-11 3.6 Getting Started 3-21 3.7 Debugger Configuration 3-28 3.8 Displaying Image Information 3-34 3.9 Setting and Editing Complex Breakpoints and Watchpoints 3-39 3.10 Other Debugging Functions 3-42 4 Command-Line Development 4-1 4.1 Introduction 4-2 4.2 The Hello World Example 4-2 4.3 armsd 4-7 5 The ARMulator 5-1 5.1 What is the ARMulator? 5-2 5.2 Models 5-2 5.3 Rebuilding the ARMulator 5-4 5.4 ARMulator facilities 5-6 5.5 Supplied Models: Angel 5-9 5.6 Supplied Models: Dummy MMU 5-11 5.7 Supplied Models: Profiler 5-12 5.8 Supplied Models: Tracer 5-13 5.9 Supplied Models: Watchpoints 5-15 5.10 Supplied Models: Windows Hourglass 5-15 5.11 Supplied Models: Page Table Manager 5-15 5.12 An Example Memory Model 5-17 6 Angel 6-1 6.1 Introduction 6-2 6.2 Overview of Developing Applications with Angel 6-4 6.3 Inside Angel 6-9 6.4 Angel System Features 6-12 6.5 Debuggers 6-16 6.6 Minimal Angel 6-17 6.7 Porting Angel to New Hardware 6-18 6.8 Downloading a Debug Agent 6-21 6.9 Adding a Channel 6-22 6.10 Using Angel on the ARM PID7T board 6-23 6.11 Using Angel on the ARM60 PIE Board or ARM7 PIE Board6-26 6.12 The Debug Comms Channel, Angel, and EmbeddedICE 6-27 6.13 Notes for Demon Users 6-29 6.14 Example of an Application Device using Angel (UNIX only) 6-31 Contents-2 User Guide ARM DUI 0040C 211ug.book : 211ugTOC.fm Page 3 Sunday, June 1, 1997 12:21 PM Contents 7 EmbeddedICE 7-1 7.1 What is EmbeddedICE? 7-2 7.2 The Effect of EmbeddedICE on the Debuggee 7-5 7.3 Connecting and Powering Up 7-6 7.4 Configuring EmbeddedICE to Match your Target Core 7-7 7.5 Configuring the Debugger 7-9 7.6 Watchpoints and Breakpoints 7-13 7.7 Vector Breakpoints and Exceptions 7-15 7.8 Semihosting 7-17 7.9 Reset and JTAG Signal Connection 7-20 7.10 Debugging Applications in ROM 7-24 7.11 Accessing the EmbeddedICE Macrocell Directly 7-28 7.12 EmbeddedICE and Target Board Memory Layout 7-30 7.13 Timer Accuracy 7-32 7.14 Floating-Point and Other Coprocessors 7-39 8 Benchmarking, Performance Analysis and Profiling 8-1 8.1 Introduction 8-2 8.2 Measuring Code and Data Size 8-3 8.3 Performance Benchmarking 8-6 8.4 Improving Performance and Code Size 8-14 8.5 Profiling 8-19 9 Basic Assembly Language Programming 9-1 9.1 Introduction 9-2 9.2 Structure of an ARM Assembler Module 9-5 9.3 Assembler Subroutines 9-7 9.4 Structure of a Thumb Assembler Module 9-8 9.5 Loading Constants into Registers 9-10 9.6 Conditional Execution 9-14 9.7 Loading Addresses into Registers 9-19 9.8 Calling Assembler from C 9-25 9.9 Load and Store Multiple Registers Instructions 9-27 10 Using the Procedure Call Standards 10-1 10.1 Introduction 10-2 10.2 Using APCS 10-3 10.3 Using the Thumb Procedure Call Standard 10-9 10.4 Passing and Returning Structures 10-11 11 Exception Handling 11-1 11.1 Overview 11-2 11.2 Entering and Leaving an Exception 11-5 11.3 The Return Address and Return Instruction 11-6 User Guide Contents-3 ARM DUI 0040C 211ug.book : 211ugTOC.fm Page 4 Sunday, June 1, 1997 12:21 PM Contents 11.4 Installing an Exception Handler 11-8 11.5 SWI Handlers 11-12 11.6 Interrupt Handlers 11-19 11.7 Reset Handlers 11-25 11.8 Undefined Instruction Handlers 11-26 11.9 Prefetch Abort Handler 11-27 11.10 Data Abort Handler 11-28 11.11 Chaining Exception Handlers 11-29 11.12 Additional Considerations on Thumb-Aware Processors 11-31 11.13 System Mode 11-35 12 Interworking ARM and Thumb 12-1 12.1 Introduction 12-2 12.2 Basic Assembler Interworking 12-4 12.3 C Interworking and Veneers 12-10 12.4 Assembler Interworking Using Veneers 12-18 12.5 Interworking and the ARM Project Manager 12-21 12.6 Using the Thumb-ARM Interworking Image Project 12-22 12.7 Modifying Project to Support Interworking 12-24 12.8 Library usage and the ARM Project Manager 12-25 13 Writing code for ROM 13-1 13.1 Introduction 13-2 13.2 Application Startup 13-3 13.3 The Embedded C Library 13-16 13.4 Troubleshooting Hints and Tips 13-24 14 Placing Code and Data in Memory 14-1 14.1 Introduction 14-2 14.2 Scatter Loading 14-3 14.3 Overlays 14-15 14.4 Overlays using Scatter Loading 14-28 15 Floating-Point Support 15-1 15.1 Introduction 15-2 15.2 The ARM Floating-point Library 15-3 15.3 Floating-Point Instructions 15-8 15.4 Linking the FPE into an Application 15-13 15.5 Configuring the FPA Support Code/FPE for a New Environment 15-14 15.6 Controlling Floating-Point Exceptions 15-15 Contents-4 User Guide ARM DUI 0040C 211ug.book : 01_overview.fm Page 1 Sunday, June 1, 1997 12:21 PM 1 Introduction 1.1 Introduction to the ARM Software Development Toolkit 1-2 1.2 Components of the SDT 1-3 1.3.2 What was new in SDT 2.10 1-5 User Guide 1-1 ARM DUI 0040C 211ug.book : 01_overview.fm Page 2 Sunday, June 1, 1997 12:21 PM Introduction 1.1 Introduction to the ARM Software Development Toolkit The ARM Software Development Toolkit (SDT) consists of a suite of applications, together with supporting documentation and examples, that enable you to write and debug applications for ‘the’ ARM family of RISC cores.
Recommended publications
  • ARM Command Line Workbook
    ARM Command Line Workbook CS160 Computer Organization Version 1.1 October 27th, 2002 Revised Fall 2005 ARM University Program Version 1.0 January 14, 1997 ARM Command Line Workbook Introduction Aim This workbook provides the student with a basic understanding of the facilities provided by the ARM Toolkit for command line users. Note: For all of the command line tools provided with the toolkit it is possible to get on- line help on the command line parameters by specifying the toolname followed by -help. Prerequisites Before getting started, you will need to add the ARM tools to your command path. Make the following change to the ~/.zsh_files/.zshrc file: • export PATH="$PATH:/pkgs/arm202u/bin" Next, you will need to add an environment variable so that the ARM compiler knows where to find the appropriate libraries. Make the following change to the ~/.zshrc file: • export ARMLIB="/pkgs/arm202u/lib" Ask the GTAs for help if you don’t know how to do this. When done, issue the commands: source ~/.zshrc ~cs160/bin/armsetup.pl The latter will create a hierarchy of subdirectories and files in a directory called arm within your cs160 directory. The reference /cmdline/hello.c thus should be read as ~/arm/cmdline/hello.c Compiler The ‘Hello World’ example program is a simple C program which calls a subroutine. This program file can be found as /cmdline/hello.c #include <stdio.h> /* Declare subroutine before used by main */ void subroutine (void); int main() { printf("Hello World from main\n"); subroutine(); printf("And Goodbye from main\n"); return 0; } /* Define subroutine */ void subroutine() { printf("Hello from subroutine\n"); } 2 ARM Command Line Workbook Exercise 1.1 Compile this program with the ARM C compiler type armcc -g hello.c The C compiler automatically invokes the linker to produce an executable with the same name as the C module but with no file extension.
    [Show full text]
  • Updated Virtualrpc Components for RISC OS 6
    ne of the main things that keeps me using my Risc PC is the versatility of the operating system - mainly due to it’s universal draw file format. For Oinstance I construct the centre pages in Artworks as this now has excellent PDF export facilities. However for proofing the magazine before it gets sent to the printers I like to do a printout to see if everything works properly. Because Artworks now can deal with multiple pages it is very easy to save each page either as an Artworks file or Draw file directly into the magazine’s Ovation Pro file by dragging and dropping. A two second job! Other computer platforms don’t generally have this facility of moving files directly into open application windows. Generally to move a file to another application you have to use the dreaded ‘save as’ filer window - choose a suitable format - navigate to where you need to save the file - save it - go to the other application - open a filer window - navigate to the saved file - open it in the new application. If you need to transfer a different file type you generally have to go through all that palaver again. Two seconds on RISC OS, thirty seconds on OS X or Windows. Draw is a great program with no real equivalent on a PC or Mac. For instance it can be put to good use in music for constructing objects the original program can’t do. I use the Sibelius music setting program on both RISC OS and Windows. The RISC OS still has one or two advantages over the PC version, one of which is it’s ability to export to Draw.
    [Show full text]
  • Chapter 13 ARM Image Format
    Chapter 13 ARM Image Format This chapter describes the ARM Image Format (AIF). It contains the following sections: • Overview of the ARM Image Format on page 13-2 • AIF variants on page 13-3 • The layout of AIF on page 13-4. ARM DUI 0041C Copyright © 1997 and 1998 ARM Limited. All rights reserved. 13-1 ARM Image Format 13.1 Overview of the ARM Image Format ARM Image Format (AIF) is a simple format for ARM executable images, consisting of: • a 128-byte header • the image code • the image initialized static data. An AIF image is capable of self-relocation if it is created with the appropriate linker options. The image can be loaded anywhere and it will execute where it is loaded. After an AIF image has been relocated, it can create its own zero-initialized area. Finally, the image is entered at the unique entry point. 13-2 Copyright © 1997 and 1998 ARM Limited. All rights reserved. ARM DUI 0041C ARM Image Format 13.2 AIF variants There are three variants of AIF: Executable AIF Executable AIF can be loaded at its load address and entered at the same point (at the first word of the AIF header). It prepares itself for execution by relocating itself if required and setting to zero its own zero-initialized data. The header is part of the image itself. Code in the header ensures that the image is properly prepared for execution before being entered at its entry address. The fourth word of an executable AIF header is: BL entrypoint The most significant byte of this word (in the target byte order) is 0xeb.
    [Show full text]
  • ARM Developer Suite Version 1.0.1
    ARM Developer Suite Version 1.0.1 Tools Guide Copyright © 1999,2000 ARM Limited. All rights reserved. ARM DUI 0067B Copyright © 1999 and 2000 ARM Limited. All rights reserved. Release Information The following changes have been made to this book. Change History Date Issue Change October 1999 A Release 1.0 March 2000 B Release 1.0.1 Proprietary Notice ARM, the ARM Powered logo, Thumb, and StrongARM are registered trademarks of ARM Limited. The ARM logo, AMBA, Angel, ARMulator, EmbeddedICE, ModelGen, Multi-ICE, PrimeCell, ARM7TDMI, ARM7TDMI-S, ARM9TDMI, ARM9E-S, ETM7, ETM9, TDMI, STRONG, are trademarks of ARM Limited. All other products or services mentioned herein may be trademarks of their respective owners. Neither the whole nor any part of the information contained in, or the product described in, this document may be adapted or reproduced in any material form except with the prior written permission of the copyright holder. The product described in this document is subject to continuous developments and improvements. All particulars of the product and its use contained in this document are given by ARM in good faith. However, all warranties implied or expressed, including but not limited to implied warranties of merchantability, or fitness for purpose, are excluded. This document is intended only to assist the reader in the use of the product. ARM Limited shall not be liable for any loss or damage arising from the use of any information in this document, or any error or omission in such information, or any incorrect use of the product. ii Copyright © 1999,2000 ARM Limited.
    [Show full text]
  • AMX 4-ARM Tool Guide KADAK I Copyright © 1997-2007 by KADAK Products Ltd
    ® AMX™ 4-ARM Tool Guide First Printing: August 1, 1997 Last Printing: November 1, 2007 Copyright © 1997 - 2007 KADAK Products Ltd. 206 - 1847 West Broadway Avenue Vancouver, BC, Canada, V6J 1Y5 Phone: (604) 734-2796 Fax: (604) 734-8114 TECHNICAL SUPPORT KADAK Products Ltd. is committed to technical support for its software products. Our programs are designed to be easily incorporated in your systems and every effort has been made to eliminate errors. Engineering Change Notices (ECNs) are provided periodically to repair faults or to improve performance. You will automatically receive these updates during the product's initial support period. For technical support beyond the initial period, you must purchase a Technical Support Subscription. Contact KADAK for details. Please keep us informed of the primary user in your company to whom update notices and other pertinent information should be directed. Should you require direct technical assistance in your use of this KADAK software product, engineering support is available by telephone, fax or e-mail. KADAK reserves the right to charge for technical support services which it deems to be beyond the normal scope of technical support. We would be pleased to receive your comments and suggestions concerning this product and its documentation. Your feedback helps in the continuing product evolution. KADAK Products Ltd. 206 - 1847 West Broadway Avenue Vancouver, BC, Canada, V6J 1Y5 Phone: (604) 734-2796 Fax: (604) 734-8114 e-mail: [email protected] AMX 4-ARM Tool Guide KADAK i Copyright © 1997-2007 by KADAK Products Ltd. All rights reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means, electronic, mechanical, magnetic, optical, chemical, manual or otherwise, without the prior written permission of KADAK Products Ltd., Vancouver, B.C., CANADA.
    [Show full text]
  • Developers' Newsletter No 36 December 1994
    Developers' Newsletter No 36 December 1994 Contents: General News Greetings Order form Voicemail 1995 Subscriptions Product Directory BETT From our Australian Office Licences for Replay decompression software Training for Developers Technical News Aquarius Beta Use of the Territory Manager OS_SpriteOp 52 Put Sprite Grey Scaled Wimp_TextOp SWI Cache_Flush Printer HileCore Task shutdown protocol Risc PC Make Modes Application Notes PRM Errors and Omissions Developers' Disc 36 contents News from other sources Hrom Iota Software Aspex Software Enclosures Developers' disc 36 customers and that reflects badly on the whole Acorn General News community. Greetings For those of you with access to Impression Style, on Developers' Disc 36 you will find a copy of the Product We send you greetings from all of us at Acorn Developer Directory Information sheet (both sides) so that you can Support at the end of 1994. We wish you a successful print one whenever you need to. Please use this version 1995. rather than any earlier ones. Order form A Drawfile of the Registered Developers' Order Form is on BETT Developers' Disc 36. Please print out the form and complete Don't forget the BETT Show, the major Educational one each time you make an order and do not include either technology show in the UK, which is to be held at Olympia Special Offers or items supplied directly Developer Support in London from 11-14th January 1995. on the same order form. Don't forget to send payment with your order which should be clearly marked on the outside of From our Australian Office the envelope 'FAO Developer Support'.
    [Show full text]
  • Arm System-On-Chip Architecture.Pdf
    Preface Aims This book introduces the concepts and methodologies employed in designing a system-on-chip (SoC) based around a microprocessor core and in designing the microprocessor core itself. The principles of microprocessor design are made con- crete by extensive illustrations based upon the ARM. The aim of the book is to assist the reader in understanding how SoCs and micro- processors are designed and used, and why a modern processor is designed the way that it is. The reader who wishes to know only the general principles should find that the ARM illustrations add substance to issues which can otherwise appear somewhat ethereal; the reader who wishes to understand the design of the ARM should find that the general principles illuminate the rationale for the ARM being as it is. Other microprocessor architectures are not described in this book. The reader who wishes to make a comparative study of architectures will find the required informa- tion on the ARM here but must look elsewhere for information on other designs. Audience The book is intended to be of use to two distinct groups of readers: • Professional hardware and software engineers who are tasked with designing an SoC product which incorporates an ARM processor, or who are evaluating the ARM for a product, should find the book helpful in their duties. Although there is considerable overlap with ARM technical publications, this book provides a broader context with more background. It is not a substitute for the manufac turer's data, since much detail has had to be omitted, but it should be useful as an introductory overview and adjunct to that data.
    [Show full text]
  • ARM Developer Suite Getting Started
    ARM® Developer Suite Version 1.2 Getting Started Copyright © 1999-2001 ARM Limited. All rights reserved. ARM DUI 0064D ARM Developer Suite Getting Started Copyright © 1999-2001 ARM Limited. All rights reserved. Release Information The following changes have been made to this book. Change History Date Issue Change October 1999 A Release 1.0 March 2000 B Release 1.0.1 October 2000 C Release 1.1 November 2001 D Release 1.2 Proprietary Notice Words and logos marked with ® or ™ are registered trademarks or trademarks owned by ARM Limited. Other brands and names mentioned herein may be the trademarks of their respective owners. Neither the whole nor any part of the information contained in, or the product described in, this document may be adapted or reproduced in any material form except with the prior written permission of the copyright holder. The product described in this document is subject to continuous developments and improvements. All particulars of the product and its use contained in this document are given by ARM in good faith. However, all warranties implied or expressed, including but not limited to implied warranties of merchantability, or fitness for purpose, are excluded. This document is intended only to assist the reader in the use of the product. ARM Limited shall not be liable for any loss or damage arising from the use of any information in this document, or any error or omission in such information, or any incorrect use of the product. ii Copyright © 1999-2001 ARM Limited. All rights reserved. ARM DUI 0064D Contents ARM Developer Suite Getting Started Preface About this book .............................................................................................
    [Show full text]
  • Adobe PDF Version
    A time to change... Autumn 2004 Issue 22 =C0 Index: [ #22, 2004/10/18 20:45 CET ] Page 2 . Index Page 3 . Editor’s Notes Page 4 . Why Lua is not BASIC by Gavin Wraith Page 8r . The Frobnicate Quiz The cover picture is of the European Page 9 . Life in France “Soho” satellite’s view of the sun in ultraviolet. What Page 10 . The spArchive you can see are three superimposed images to capture the Page 11 . Playing with I2C (part 3) behaviour and characteristics of the sun’s surface. This picture was screengrabbed from a book/CD-ROM Page 15 . Qu’est-ce que c’est, ça? pack called “BIG B@NG l’Espace”. Page 17 . Reader Survey results Page 19 . The RISC OS Wars (Whose licence is it anyway?) Page 21 . What made BASIC sucky? Page 24 . Diary of a hacker... Page 25 . A Matter of Language Page 26 . Go figure! Page 30 . But I’m glad I was there when it happened by David Page 32 . Installing a satellite dish by Ewen Cathcart \Norris Page 35 . Twin Peaks Page 36 . The wrap party... Credits: Designed, written, and created by Richard Murray. “Why Lua is not BASIC” written by Gavin Wraith. “But I’m glad I was there when it happened” written by David Norris. “Installing a satellite dish” written by Ewen Cathcart. A Hissing Spinach production Images that are not my own have attribution. © 2004 Rick Murray a. You may print this document provided it is unaltered. b. This document may be freely distributed in an unaltered form.
    [Show full text]
  • ARM Processor Core and Instruction Sets
    Chapter 2 ARM Processor Core and Instruction Sets C. W. Jen 任建葳 [email protected] Outline Institute of Electronics, • Processor programming model • 32-bit instruction set • 16-bit instruction set • ARM processor core National Chiao TungUniversity Chiao National • Software development 1/213 Institute of Electronics, Processor Programming Model National Chiao TungUniversity Chiao National 2/213 ARM Ltd Institute of Electronics, • ARM was originally developed at Acron Computer Limited of Cambridge, England between 1983 and 1985 – 1980, RISC concept at Stanford and Berkeley universities – first RISC processor for commercial use • 1990 Nov, ARM Ltd was founded • ARM cores National Chiao TungUniversity Chiao National licensed to partners who fabricate and sell to customers • Technologies assist to design in the ARM application – Software tools, boards, debug hardware, application software, bus architectures, peripherals etc… 3/213 ARM Architecture vs. Berkeley RISC Institute of Electronics, • Features used – load/store architecture – fixed-length 32-bit instructions – 3-address instruction formats • Features unused – register windows ⇒ costly National Chiao TungUniversity Chiao National use shadow registers in ARM – delayed branch ⇒ not well to superscalar badly with branch prediction – single-cycle execution of all instructions most single-cycle – memory access multiple cycles when no separate data and instruction memory support auto-indexing addressing modes 4/213 Data Size and Instruction set Institute of Electronics, • ARM processor
    [Show full text]
  • Adobe PDF Version
    # Hi Honey, I’m home! # Summer 2004 Issue 21 =C0 Index: [ #21, 2004/06/15 22:25 CET ] Page 2 . Index Page 3 . Editor’s Notes Page 5 . More on ‘decoding’ Page 7 . Life in France Page 8 . Playing with I2C (part 2) Page 11 . Qu’est-ce que c’est, ça? Page 12 . Politics (in Frobnicate) Page 14b . The Frobnicate Quiz Page 15 . Reader Survey Page 18 . Sky Digibox Page 20 . Et pourquoi pas? Page 21 . The RISC OS Wars (Petty Bickering and How do YOU feel?) Page 23r . Spotlight Page 24 . The wrap party... Credits: Designed, written, and created by Richard Murray. Images that are not my own have attribution. a. You may print this document provided it is unaltered. b. This document may be freely distributed in an unaltered form. (if you wish to convert this document to a different format, please contact me first) c. You may not charge any fee for passing on copies of this document (in electronic or printed form) except for “reasonable” media/printing/postage fees (which total no more than 5 euro; approximately £3.50 sterling or $6.40 US dollars). Please note that nobody is ‘authorised’ to provide printed versions of Frobnicate, so obviously we are unable to control the quality of any such prints made. Frobnicate incorporates colour images/logos. Don’t settle for black & white unless it’s very cheap! d. The contents of this document are Copyright © 2004 Rick Murray, unless otherwise noted. e. All reasonable care is taken in the production of this document, but we will not be legally liable for errors, or any loss arising from those errors.
    [Show full text]
  • ARM Processor Architecture
    ARMARM ProcessorProcessor ArchitectureArchitecture Some Slides are Adopted from NCTU IP Core Design Some Slides are Adopted from NTU Digital SIP Design Project SOC Consortium Course Material Outline ARM Core Family ARM Processor Core Introduction to Several ARM processors Memory Hierarchy Software Development Summary SOC Consortium Course Material 2 ARM Core Family SOC Consortium Course Material 3 ARM Core Family Application Cores Embedded Cores Secure Cores ARM Cortex-A8 ARM Cortex-M3 SecurCore SC100 ARM1020E ARM1026EJ-S SecurCore SC110 ARM1022E ARM1156T2(F)-S SecurCore SC200 ARM1026EJ-S ARM7EJ-S SecurCore SC210 ARM11 MPCore ARM7TDMI ARM1136J(F)-S ARM7TDMI-S ARM1176JZ(F)-S ARM946E-S ARM720T ARM966E-S ARM920T ARM968E-S ARM922T ARM996HS ARM926EJ-S SOC Consortium Course Material 4 Product Code Demystified T: Thumb D: On-chip Debug support M: Enhanced Multiplier I: Embedded ICE hardware T2: Thumb-2 S: synthesizable code E: Enhanced DSP instruction set J: JAVA support, Jazelle Z: Should be TrustZone? F: Floating point unit H: Handshake, clockless design for synchronous or asynchronous design SOC Consortium Course Material 5 ARM Processor Cores (1/4) ARM processor core + cache + MMU → ARM CPU cores ARM6 → ARM7 – 3-stage pipeline – Keep its instructions and data in the same memory system – Thumb 16-bit compressed instruction set – on-chip Debug support, enabling the processor to halt in response to a debug request – enhanced Multiplier, 64-bit result – Embedded ICE hardware, give on-chip breakpoint and watchpoint support SOC Consortium Course Material 6 ARM Processor Cores (2/4) ARM8 → ARM9 → ARM10 ARM9 – 5-stage pipeline (130 MHz or 200MHz) – Using separate instruction and data memory ports ARM 10 (1998.
    [Show full text]