Gnu Assembler

Total Page:16

File Type:pdf, Size:1020Kb

Gnu Assembler Using as The gnu Assembler (Sourcery G++ Lite 2010q1-188) Version 2.19.51 The Free Software Foundation Inc. thanks The Nice Computer Company of Australia for loaning Dean Elsner to write the first (Vax) version of as for Project gnu. The proprietors, management and staff of TNCCA thank FSF for distracting the boss while they gotsome work done. Dean Elsner, Jay Fenlason & friends Using as Edited by Cygnus Support Copyright c 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License". i Table of Contents 1 Overview :::::::::::::::::::::::::::::::::::::::: 1 1.1 Structure of this Manual :::::::::::::::::::::::::::::::::::::: 14 1.2 The GNU Assembler :::::::::::::::::::::::::::::::::::::::::: 15 1.3 Object File Formats::::::::::::::::::::::::::::::::::::::::::: 15 1.4 Command Line ::::::::::::::::::::::::::::::::::::::::::::::: 15 1.5 Input Files :::::::::::::::::::::::::::::::::::::::::::::::::::: 16 1.6 Output (Object) File:::::::::::::::::::::::::::::::::::::::::: 16 1.7 Error and Warning Messages :::::::::::::::::::::::::::::::::: 16 2 Command-Line Options::::::::::::::::::::::: 19 2.1 Enable Listings: `-a[cdghlns]' ::::::::::::::::::::::::::::::: 19 2.2 `--alternate' :::::::::::::::::::::::::::::::::::::::::::::::: 19 2.3 `-D' ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20 2.4 Work Faster: `-f' ::::::::::::::::::::::::::::::::::::::::::::: 20 2.5 .include Search Path: `-I' path :::::::::::::::::::::::::::::: 20 2.6 Difference Tables:-K ` ' :::::::::::::::::::::::::::::::::::::::: 20 2.7 Include Local Symbols: `-L' ::::::::::::::::::::::::::::::::::: 20 2.8 Configuring listing output:--listing ` ' ::::::::::::::::::::::: 20 2.9 Assemble in MRI Compatibility Mode: `-M':::::::::::::::::::: 21 2.10 Dependency Tracking: `--MD'::::::::::::::::::::::::::::::::: 23 2.11 Name the Object File: `-o' ::::::::::::::::::::::::::::::::::: 23 2.12 Join Data and Text Sections: `-R' :::::::::::::::::::::::::::: 23 2.13 Display Assembly Statistics: `--statistics' ::::::::::::::::: 23 2.14 Compatible Output: `--traditional-format':::::::::::::::: 23 2.15 Announce Version: `-v' :::::::::::::::::::::::::::::::::::::: 23 2.16 Control Warnings: `-W', `--warn', `--no-warn', `--fatal-warnings' ::::::::::::::::::::::::::::::::::::::::::: 24 2.17 Generate Object File in Spite of Errors: `-Z':::::::::::::::::: 24 3 Syntax:::::::::::::::::::::::::::::::::::::::::: 25 3.1 Preprocessing ::::::::::::::::::::::::::::::::::::::::::::::::: 25 3.2 Whitespace ::::::::::::::::::::::::::::::::::::::::::::::::::: 25 3.3 Comments :::::::::::::::::::::::::::::::::::::::::::::::::::: 25 3.4 Symbols :::::::::::::::::::::::::::::::::::::::::::::::::::::: 26 3.5 Statements:::::::::::::::::::::::::::::::::::::::::::::::::::: 26 3.6 Constants::::::::::::::::::::::::::::::::::::::::::::::::::::: 27 3.6.1 Character Constants ::::::::::::::::::::::::::::::::::::: 27 3.6.1.1 Strings :::::::::::::::::::::::::::::::::::::::::::::: 27 3.6.1.2 Characters :::::::::::::::::::::::::::::::::::::::::: 28 3.6.2 Number Constants ::::::::::::::::::::::::::::::::::::::: 28 3.6.2.1 Integers ::::::::::::::::::::::::::::::::::::::::::::: 28 3.6.2.2 Bignums :::::::::::::::::::::::::::::::::::::::::::: 29 3.6.2.3 Flonums :::::::::::::::::::::::::::::::::::::::::::: 29 ii Using as 4 Sections and Relocation::::::::::::::::::::::: 31 4.1 Background ::::::::::::::::::::::::::::::::::::::::::::::::::: 31 4.2 Linker Sections ::::::::::::::::::::::::::::::::::::::::::::::: 32 4.3 Assembler Internal Sections ::::::::::::::::::::::::::::::::::: 33 4.4 Sub-Sections :::::::::::::::::::::::::::::::::::::::::::::::::: 33 4.5 bss Section:::::::::::::::::::::::::::::::::::::::::::::::::::: 34 5 Symbols :::::::::::::::::::::::::::::::::::::::: 37 5.1 Labels :::::::::::::::::::::::::::::::::::::::::::::::::::::::: 37 5.2 Giving Symbols Other Values ::::::::::::::::::::::::::::::::: 37 5.3 Symbol Names :::::::::::::::::::::::::::::::::::::::::::::::: 37 5.4 The Special Dot Symbol :::::::::::::::::::::::::::::::::::::: 39 5.5 Symbol Attributes :::::::::::::::::::::::::::::::::::::::::::: 39 5.5.1 Value :::::::::::::::::::::::::::::::::::::::::::::::::::: 39 5.5.2 Type::::::::::::::::::::::::::::::::::::::::::::::::::::: 39 5.5.3 Symbol Attributes: a.out :::::::::::::::::::::::::::::::: 39 5.5.3.1 Descriptor::::::::::::::::::::::::::::::::::::::::::: 40 5.5.3.2 Other ::::::::::::::::::::::::::::::::::::::::::::::: 40 5.5.4 Symbol Attributes for COFF ::::::::::::::::::::::::::::: 40 5.5.4.1 Primary Attributes :::::::::::::::::::::::::::::::::: 40 5.5.4.2 Auxiliary Attributes ::::::::::::::::::::::::::::::::: 40 5.5.5 Symbol Attributes for SOM :::::::::::::::::::::::::::::: 40 6 Expressions :::::::::::::::::::::::::::::::::::: 41 6.1 Empty Expressions:::::::::::::::::::::::::::::::::::::::::::: 41 6.2 Integer Expressions ::::::::::::::::::::::::::::::::::::::::::: 41 6.2.1 Arguments ::::::::::::::::::::::::::::::::::::::::::::::: 41 6.2.2 Operators :::::::::::::::::::::::::::::::::::::::::::::::: 41 6.2.3 Prefix Operator :::::::::::::::::::::::::::::::::::::::::: 41 6.2.4 Infix Operators::::::::::::::::::::::::::::::::::::::::::: 42 7 Assembler Directives :::::::::::::::::::::::::: 45 7.1 .abort ::::::::::::::::::::::::::::::::::::::::::::::::::::::: 45 7.2 .ABORT (COFF)::::::::::::::::::::::::::::::::::::::::::::::: 45 7.3 .align abs-expr, abs-expr, abs-expr :::::::::::::::::::::: 45 7.4 .altmacro :::::::::::::::::::::::::::::::::::::::::::::::::::: 46 7.5 .ascii "string"... :::::::::::::::::::::::::::::::::::::::::: 46 7.6 .asciz "string"... :::::::::::::::::::::::::::::::::::::::::: 46 7.7 .balign[wl] abs-expr, abs-expr, abs-expr :::::::::::::::: 46 7.8 .byte expressions ::::::::::::::::::::::::::::::::::::::::::: 47 7.9 .cfi_sections section_list :::::::::::::::::::::::::::::::: 47 7.10 .cfi_startproc [simple]::::::::::::::::::::::::::::::::::: 47 7.11 .cfi_endproc ::::::::::::::::::::::::::::::::::::::::::::::: 47 7.12 .cfi_personality encoding [, exp] ::::::::::::::::::::::: 47 7.13 .cfi_lsda encoding [, exp] ::::::::::::::::::::::::::::::: 47 7.14 .cfi_def_cfa register, offset :::::::::::::::::::::::::::: 48 7.15 .cfi_def_cfa_register register :::::::::::::::::::::::::: 48 iii 7.16 .cfi_def_cfa_offset offset ::::::::::::::::::::::::::::::: 48 7.17 .cfi_adjust_cfa_offset offset ::::::::::::::::::::::::::: 48 7.18 .cfi_offset register, offset ::::::::::::::::::::::::::::: 48 7.19 .cfi_rel_offset register, offset :::::::::::::::::::::::: 48 7.20 .cfi_register register1, register2 :::::::::::::::::::::: 48 7.21 .cfi_restore register ::::::::::::::::::::::::::::::::::::: 48 7.22 .cfi_undefined register :::::::::::::::::::::::::::::::::: 48 7.23 .cfi_same_value register ::::::::::::::::::::::::::::::::: 48 7.24 .cfi_remember_state, :::::::::::::::::::::::::::::::::::::: 48 7.25 .cfi_return_column register :::::::::::::::::::::::::::::: 49 7.26 .cfi_signal_frame ::::::::::::::::::::::::::::::::::::::::: 49 7.27 .cfi_window_save::::::::::::::::::::::::::::::::::::::::::: 49 7.28 .cfi_escape expression[, . .]:::::::::::::::::::::::::::::::: 49 7.29 .cfi_val_encoded_addr register, encoding, label :::::: 49 7.30 .comm symbol , length ::::::::::::::::::::::::::::::::::::: 49 7.31 .data subsection ::::::::::::::::::::::::::::::::::::::::::: 50 7.32 .def name ::::::::::::::::::::::::::::::::::::::::::::::::::: 50 7.33 .desc symbol, abs-expression ::::::::::::::::::::::::::::: 50 7.34 .dim::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 50 7.35 .double flonums :::::::::::::::::::::::::::::::::::::::::::: 50 7.36 .eject :::::::::::::::::::::::::::::::::::::::::::::::::::::: 50 7.37 .else:::::::::::::::::::::::::::::::::::::::::::::::::::::::: 50 7.38 .elseif ::::::::::::::::::::::::::::::::::::::::::::::::::::: 50 7.39 .end::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 51 7.40 .endef :::::::::::::::::::::::::::::::::::::::::::::::::::::: 51 7.41 .endfunc :::::::::::::::::::::::::::::::::::::::::::::::::::: 51 7.42 .endif :::::::::::::::::::::::::::::::::::::::::::::::::::::: 51 7.43 .equ symbol, expression ::::::::::::::::::::::::::::::::::: 51 7.44 .equiv symbol, expression :::::::::::::::::::::::::::::::: 51 7.45 .eqv symbol, expression ::::::::::::::::::::::::::::::::::: 51 7.46 .err::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 51 7.47 .error "string" :::::::::::::::::::::::::::::::::::::::::::: 52 7.48 .exitm :::::::::::::::::::::::::::::::::::::::::::::::::::::: 52 7.49 .extern ::::::::::::::::::::::::::::::::::::::::::::::::::::: 52 7.50 .fail expression ::::::::::::::::::::::::::::::::::::::::::: 52 7.51 .file:::::::::::::::::::::::::::::::::::::::::::::::::::::::: 52 7.52 .fill repeat , size , value ::::::::::::::::::::::::::::::: 53 7.53 .float flonums ::::::::::::::::::::::::::::::::::::::::::::: 53 7.54 .func name[,label] :::::::::::::::::::::::::::::::::::::::: 53 7.55 .global symbol, .globl symbol :::::::::::::::::::::::::::: 53 7.56 .gnu_attribute tag,value ::::::::::::::::::::::::::::::::: 53 7.57 .hidden names :::::::::::::::::::::::::::::::::::::::::::::: 53 7.58 .hword expressions :::::::::::::::::::::::::::::::::::::::: 54 7.59 .ident
Recommended publications
  • Field Programmable Gate Arrays with Hardwired Networks on Chip
    Field Programmable Gate Arrays with Hardwired Networks on Chip PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Technische Universiteit Delft, op gezag van de Rector Magnificus prof. ir. K.C.A.M. Luyben, voorzitter van het College voor Promoties, in het openbaar te verdedigen op dinsdag 6 november 2012 om 15:00 uur door MUHAMMAD AQEEL WAHLAH Master of Science in Information Technology Pakistan Institute of Engineering and Applied Sciences (PIEAS) geboren te Lahore, Pakistan. Dit proefschrift is goedgekeurd door de promotor: Prof. dr. K.G.W. Goossens Copromotor: Dr. ir. J.S.S.M. Wong Samenstelling promotiecommissie: Rector Magnificus voorzitter Prof. dr. K.G.W. Goossens Technische Universiteit Eindhoven, promotor Dr. ir. J.S.S.M. Wong Technische Universiteit Delft, copromotor Prof. dr. S. Pillement Technical University of Nantes, France Prof. dr.-Ing. M. Hubner Ruhr-Universitat-Bochum, Germany Prof. dr. D. Stroobandt University of Gent, Belgium Prof. dr. K.L.M. Bertels Technische Universiteit Delft Prof. dr.ir. A.J. van der Veen Technische Universiteit Delft, reservelid ISBN: 978-94-6186-066-8 Keywords: Field Programmable Gate Arrays, Hardwired, Networks on Chip Copyright ⃝c 2012 Muhammad Aqeel Wahlah All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without permission of the author. Printed in The Netherlands Acknowledgments oday when I look back, I find it a very interesting journey filled with different emotions, i.e., joy and frustration, hope and despair, and T laughter and sadness.
    [Show full text]
  • The GNU Linker
    The GNU linker ld (GNU Binutils) Version 2.37 Steve Chamberlain Ian Lance Taylor Red Hat Inc [email protected], [email protected] The GNU linker Edited by Jeffrey Osier ([email protected]) Copyright c 1991-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License". i Table of Contents 1 Overview :::::::::::::::::::::::::::::::::::::::: 1 2 Invocation ::::::::::::::::::::::::::::::::::::::: 3 2.1 Command-line Options ::::::::::::::::::::::::::::::::::::::::: 3 2.1.1 Options Specific to i386 PE Targets :::::::::::::::::::::: 40 2.1.2 Options specific to C6X uClinux targets :::::::::::::::::: 47 2.1.3 Options specific to C-SKY targets :::::::::::::::::::::::: 48 2.1.4 Options specific to Motorola 68HC11 and 68HC12 targets :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 48 2.1.5 Options specific to Motorola 68K target :::::::::::::::::: 48 2.1.6 Options specific to MIPS targets ::::::::::::::::::::::::: 49 2.1.7 Options specific to PDP11 targets :::::::::::::::::::::::: 49 2.2 Environment Variables :::::::::::::::::::::::::::::::::::::::: 50 3 Linker Scripts:::::::::::::::::::::::::::::::::: 51 3.1 Basic Linker Script Concepts :::::::::::::::::::::::::::::::::: 51 3.2 Linker Script
    [Show full text]
  • The “Stabs” Debug Format
    The \stabs" debug format Julia Menapace, Jim Kingdon, David MacKenzie Cygnus Support Cygnus Support Revision TEXinfo 2017-08-23.19 Copyright c 1992{2021 Free Software Foundation, Inc. Contributed by Cygnus Support. Written by Julia Menapace, Jim Kingdon, and David MacKenzie. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License". i Table of Contents 1 Overview of Stabs ::::::::::::::::::::::::::::::: 1 1.1 Overview of Debugging Information Flow ::::::::::::::::::::::: 1 1.2 Overview of Stab Format ::::::::::::::::::::::::::::::::::::::: 1 1.3 The String Field :::::::::::::::::::::::::::::::::::::::::::::::: 2 1.4 A Simple Example in C Source ::::::::::::::::::::::::::::::::: 3 1.5 The Simple Example at the Assembly Level ::::::::::::::::::::: 4 2 Encoding the Structure of the Program ::::::: 7 2.1 Main Program :::::::::::::::::::::::::::::::::::::::::::::::::: 7 2.2 Paths and Names of the Source Files :::::::::::::::::::::::::::: 7 2.3 Names of Include Files:::::::::::::::::::::::::::::::::::::::::: 8 2.4 Line Numbers :::::::::::::::::::::::::::::::::::::::::::::::::: 9 2.5 Procedures ::::::::::::::::::::::::::::::::::::::::::::::::::::: 9 2.6 Nested Procedures::::::::::::::::::::::::::::::::::::::::::::: 11 2.7 Block Structure
    [Show full text]
  • Branch-Directed and Pointer-Based Data Cache Prefetching
    Branch-directed and Pointer-based Data Cache Prefetching Yue Liu Mona Dimitri David R. Kaeli Department of Electrical and Computer Engineering Northeastern University Boston, MA Abstract The design of the on-chip cache memory and branch prediction logic has become an integral part of a microprocessor implementation. Branch predictors reduce the effects of control hazards on pipeline performance. Branch prediction implementations have been proposed which eliminate a majority of the pipeline stalls associated with branches. Caches are commonly used to reduce the performance gap between microprocessor and memory technology. Caches can only provide this benefit if the requested address is in the cache when requested. To increase the probability that addresses are present when requested, prefetching can be employed. Prefetching attempts to prime the cache with instructions and data which will be accessed in the near future. The work presented here describes two new prefetching algorithms. The first ties data cache prefetching to branches in the instruction stream. History of the data stream is incorporated into a Branch Target Buffer (BTB). Since branch behavior determines program control flow, data access patterns are also dependent upon this behavior. Results indicate that combining this strategy with tagged prefetching can significantly improve cache hit ratios. While improving cache hit rates is important, the resulting memory bus traffic introduced can be an issue. Our prefetching technique can also significantly reduce the overall memory bus traffic. The second prefetching scheme dynamically identifies pointer-based data references in the data stream, and records these references in order to successfully prime the cache with the next element in the linked data structure in advance of its access.
    [Show full text]
  • 1 Assembly Language Programming Status Flags the Status Flags Reflect the Outcomes of Arithmetic and Logical Operations Performe
    Assembly Language Programming Status Flags The status flags reflect the outcomes of arithmetic and logical operations performed by the CPU. • The carry flag (CF) is set when the result of an unsigned arithmetic operation is too large to fit into the destination. • The overflow flag (OF) is set when the result of a signed arithmetic operation is too large or too small to fit into the destination. • The sign flag (SF) is set when the result of an arithmetic or logical operation generates a negative result. • The zero flag (ZF) is set when the result of an arithmetic or logical operation generates a result of zero. Assembly Programs We are going to run assembly programs from (http://www.kipirvine.com/asm/) using Visual Studio. I have downloaded all of the example programs and placed them in CS430 Pub. Copy them onto your local machine and start up Visual Studio. The first program we are going to run is below. Copy this into the Project_Sample project in the examples folder. Run the program. Let’s talk about what this program does. TITLE Add and Subtract ; This program ; Last update: 06/01/2006 INCLUDE Irvine32.inc .code main PROC mov eax,10000h add eax,40000h sub eax,20000h call DumpRegs exit main ENDP END main 1 What’s the difference between the previous program and this one: TITLE Add and Subtract, Version 2 (AddSub2.asm) ; This program adds and subtracts 32-bit integers ; and stores the sum in a variable. ; Last update: 06/01/2006 INCLUDE Irvine32.inc .data val1 dword 10000h val2 dword 40000h val3 dword 20000h finalVal dword ? .code main PROC mov eax,val1 ; start with 10000h add eax,val2 ; add 40000h sub eax,val3 ; subtract 20000h mov finalVal,eax ; store the result (30000h) call DumpRegs ; display the registers exit main ENDP END main Data Transfer Instructions The MOV instruction copies from a source operand to a destination operand.
    [Show full text]
  • ARM Instruction Set
    4 ARM Instruction Set This chapter describes the ARM instruction set. 4.1 Instruction Set Summary 4-2 4.2 The Condition Field 4-5 4.3 Branch and Exchange (BX) 4-6 4.4 Branch and Branch with Link (B, BL) 4-8 4.5 Data Processing 4-10 4.6 PSR Transfer (MRS, MSR) 4-17 4.7 Multiply and Multiply-Accumulate (MUL, MLA) 4-22 4.8 Multiply Long and Multiply-Accumulate Long (MULL,MLAL) 4-24 4.9 Single Data Transfer (LDR, STR) 4-26 4.10 Halfword and Signed Data Transfer 4-32 4.11 Block Data Transfer (LDM, STM) 4-37 4.12 Single Data Swap (SWP) 4-43 4.13 Software Interrupt (SWI) 4-45 4.14 Coprocessor Data Operations (CDP) 4-47 4.15 Coprocessor Data Transfers (LDC, STC) 4-49 4.16 Coprocessor Register Transfers (MRC, MCR) 4-53 4.17 Undefined Instruction 4-55 4.18 Instruction Set Examples 4-56 ARM7TDMI-S Data Sheet 4-1 ARM DDI 0084D Final - Open Access ARM Instruction Set 4.1 Instruction Set Summary 4.1.1 Format summary The ARM instruction set formats are shown below. 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 9876543210 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 Cond 0 0 I Opcode S Rn Rd Operand 2 Data Processing / PSR Transfer Cond 0 0 0 0 0 0 A S Rd Rn Rs 1 0 0 1 Rm Multiply Cond 0 0 0 0 1 U A S RdHi RdLo Rn 1 0 0 1 Rm Multiply Long Cond 0 0 0 1 0 B 0 0 Rn Rd 0 0 0 0 1 0 0 1 Rm Single Data Swap Cond 0 0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 Rn Branch and Exchange Cond 0 0 0 P U 0 W L Rn Rd 0 0 0 0 1 S H 1 Rm Halfword Data Transfer: register offset Cond 0 0 0 P U 1 W L Rn Rd Offset 1 S H 1 Offset Halfword Data Transfer: immediate offset Cond 0
    [Show full text]
  • ARM Architecture
    ARM Architecture Comppgzuter Organization and Assembly ygg Languages Yung-Yu Chuang with slides by Peng-Sheng Chen, Ville Pietikainen ARM history • 1983 developed by Acorn computers – To replace 6502 in BBC computers – 4-man VLSI design team – Its simp lic ity comes from the inexper ience team – Match the needs for generalized SoC for reasonable power, performance and die size – The first commercial RISC implemenation • 1990 ARM (Advanced RISC Mac hine ), owned by Acorn, Apple and VLSI ARM Ltd Design and license ARM core design but not fabricate Why ARM? • One of the most licensed and thus widespread processor cores in the world – Used in PDA, cell phones, multimedia players, handheld game console, digital TV and cameras – ARM7: GBA, iPod – ARM9: NDS, PSP, Sony Ericsson, BenQ – ARM11: Apple iPhone, Nokia N93, N800 – 90% of 32-bit embedded RISC processors till 2009 • Used especially in portable devices due to its low power consumption and reasonable performance ARM powered products ARM processors • A simple but powerful design • A whlhole filfamily of didesigns shiharing siilimilar didesign principles and a common instruction set Naming ARM •ARMxyzTDMIEJFS – x: series – y: MMU – z: cache – T: Thumb – D: debugger – M: Multiplier – I: EmbeddedICE (built-in debugger hardware) – E: Enhanced instruction – J: Jazell e (JVM) – F: Floating-point – S: SthiiblSynthesizible version (source code version for EDA tools) Popular ARM architectures •ARM7TDMI – 3 pipe line stages (ft(fetc h/deco de /execu te ) – High code density/low power consumption – One of the most used ARM-version (for low-end systems) – All ARM cores after ARM7TDMI include TDMI even if they do not include TDMI in their labels • ARM9TDMI – Compatible with ARM7 – 5 stages (fe tc h/deco de /execu te /memory /wr ite ) – Separate instruction and data cache •ARM11 ARM family comparison year 1995 1997 1999 2003 ARM is a RISC • RISC: simple but powerful instructions that execute within a single cycle at high clock speed.
    [Show full text]
  • RTEMS CPU Supplement Documentation Release 4.11.3 ©Copyright 2016, RTEMS Project (Built 15Th February 2018)
    RTEMS CPU Supplement Documentation Release 4.11.3 ©Copyright 2016, RTEMS Project (built 15th February 2018) CONTENTS I RTEMS CPU Architecture Supplement1 1 Preface 5 2 Port Specific Information7 2.1 CPU Model Dependent Features...........................8 2.1.1 CPU Model Name...............................8 2.1.2 Floating Point Unit..............................8 2.2 Multilibs........................................9 2.3 Calling Conventions.................................. 10 2.3.1 Calling Mechanism.............................. 10 2.3.2 Register Usage................................. 10 2.3.3 Parameter Passing............................... 10 2.3.4 User-Provided Routines............................ 10 2.4 Memory Model..................................... 11 2.4.1 Flat Memory Model.............................. 11 2.5 Interrupt Processing.................................. 12 2.5.1 Vectoring of an Interrupt Handler...................... 12 2.5.2 Interrupt Levels................................ 12 2.5.3 Disabling of Interrupts by RTEMS...................... 12 2.6 Default Fatal Error Processing............................. 14 2.7 Symmetric Multiprocessing.............................. 15 2.8 Thread-Local Storage................................. 16 2.9 CPU counter...................................... 17 2.10 Interrupt Profiling................................... 18 2.11 Board Support Packages................................ 19 2.11.1 System Reset................................. 19 3 ARM Specific Information 21 3.1 CPU Model Dependent Features..........................
    [Show full text]
  • Intel® Processor Graphics: Architecture & Programming
    Intel® Processor Graphics: Architecture & Programming Jason Ross – Principal Engineer, GPU Architect Ken Lueh – Sr. Principal Engineer, Compiler Architect Subramaniam Maiyuran – Sr. Principal Engineer, GPU Architect Agenda 1. Introduction (Jason) 2. Compute Architecture Evolution (Jason) 3. Chip Level Architecture (Jason) Subslices, slices, products 4. Gen Compute Architecture (Maiyuran) Execution units 5. Instruction Set Architecture (Ken) 6. Memory Sharing Architecture (Jason) 7. Mapping Programming Models to Architecture (Jason) 8. Summary 2 Compute Applications * “The Intel® Iris™ Pro graphics and the Intel® Core™ i7 processor are … allowing me to do all of this while the graphics and video * never stopping” Dave Helmly, Solution Consulting Pro Video/Audio, Adobe Adobe Premiere Pro demonstration: http://www.youtube.com/watch?v=u0J57J6Hppg “We are very pleased that Intel is fully supporting OpenCL. DirectX11.2 We think there is a bright future for this technology.” Michael Compute Shader Bryant, Director of Marketing, Sony Creative Software Vegas* Software Family by Sony* * Optimized with OpenCL and Intel® Processor Graphics http://www.youtube.com/watch?v=_KHVOCwTdno * “Implementing [OpenCL] in our award-winning video editor, * PowerDirector, has created tremendous value for our customers by enabling big gains in video processing speed and, consequently, a significant reduction in total video editing time.” Louis Chen, Assistant Vice President, CyberLink Corp. * "Capture One Pro introduces …optimizations for Haswell, enabling remarkably
    [Show full text]
  • Linux Boot Loaders Compared
    Linux Boot Loaders Compared L.C. Benschop May 29, 2003 Copyright c 2002, 2003, L.C. Benschop, Eindhoven, The Netherlands. Per- mission is granted to make verbatim copies of this document. This is version 1.1 which has some minor corrections. Contents 1 introduction 2 2 How Boot Loaders Work 3 2.1 What BIOS does for us . 3 2.2 Parts of a boot loader . 6 2.2.1 boot sector program . 6 2.2.2 second stage of boot loader . 7 2.2.3 Boot loader installer . 8 2.3 Loading the operating system . 8 2.3.1 Loading the Linux kernel . 8 2.3.2 Chain loading . 10 2.4 Configuring the boot loader . 10 3 Example Installations 11 3.1 Example root file system and kernel . 11 3.2 Linux Boot Sector . 11 3.3 LILO . 14 3.4 GNU GRUB . 15 3.5 SYSLINUX . 18 3.6 LOADLIN . 19 3.7 Where Can Boot Loaders Live . 21 1 4 RAM Disks 22 4.1 Living without a RAM disk . 22 4.2 RAM disk devices . 23 4.3 Loading a RAM disk at boot time . 24 4.4 The initial RAM disk . 24 5 Making Diskette Images without Diskettes 25 6 Hard Disk Installation 26 7 CD-ROM Installation 29 8 Conclusions 31 1 introduction If you use Linux on a production system, you will only see it a few times a year. If you are a hobbyist who compiles many kernels or who uses many operating systems, you may see it several times per day.
    [Show full text]
  • MIPS Architecture • MIPS (Microprocessor Without Interlocked Pipeline Stages) • MIPS Computer Systems Inc
    Spring 2011 Prof. Hyesoon Kim MIPS Architecture • MIPS (Microprocessor without interlocked pipeline stages) • MIPS Computer Systems Inc. • Developed from Stanford • MIPS architecture usages • 1990’s – R2000, R3000, R4000, Motorola 68000 family • Playstation, Playstation 2, Sony PSP handheld, Nintendo 64 console • Android • Shift to SOC http://en.wikipedia.org/wiki/MIPS_architecture • MIPS R4000 CPU core • Floating point and vector floating point co-processors • 3D-CG extended instruction sets • Graphics – 3D curved surface and other 3D functionality – Hardware clipping, compressed texture handling • R4300 (embedded version) – Nintendo-64 http://www.digitaltrends.com/gaming/sony- announces-playstation-portable-specs/ Not Yet out • Google TV: an Android-based software service that lets users switch between their TV content and Web applications such as Netflix and Amazon Video on Demand • GoogleTV : search capabilities. • High stream data? • Internet accesses? • Multi-threading, SMP design • High graphics processors • Several CODEC – Hardware vs. Software • Displaying frame buffer e.g) 1080p resolution: 1920 (H) x 1080 (V) color depth: 4 bytes/pixel 4*1920*1080 ~= 8.3MB 8.3MB * 60Hz=498MB/sec • Started from 32-bit • Later 64-bit • microMIPS: 16-bit compression version (similar to ARM thumb) • SIMD additions-64 bit floating points • User Defined Instructions (UDIs) coprocessors • All self-modified code • Allow unaligned accesses http://www.spiritus-temporis.com/mips-architecture/ • 32 64-bit general purpose registers (GPRs) • A pair of special-purpose registers to hold the results of integer multiply, divide, and multiply-accumulate operations (HI and LO) – HI—Multiply and Divide register higher result – LO—Multiply and Divide register lower result • a special-purpose program counter (PC), • A MIPS64 processor always produces a 64-bit result • 32 floating point registers (FPRs).
    [Show full text]
  • Escuela Politécnica Superior De Jaén
    UNIVERSIDAD DE JAÉN ESCUELA POLITÉCNICA SUPERIOR DE JAÉN Trabajo Fin de Grado DATALOGGER CON ENLACE BLUETOOTH A SISTEMA ANDROID Alumno: Juan Miguel Bejarano Bueno Tutor: Prof. D. Luis Miguel Nieto Nieto Dpto: Ingeniería Electrónica y Automática Escuela Politécnica Superior Jaén de Area: Tecnología Electrónica Septiembre, 2015 Juan Miguel Bejarano Bueno Datalogger con enlace Bluetooth a aplicación Android. Universidad de Jaén Escuela Politécnica Superior de Jaén Departamento de Electrónica y Automática Don LUIS MIGUEL NIETO NIETO, tutor del Trabajo Fin de Grado titulado: DATALOGGER CON ENLACE BLUETOOTH A ANDROID, que presenta JUAN MIGUEL BEJARANO BUENO, autoriza su presentación para defensa y evaluación en la Escuela Politécnica Superior de Jaén. Jaén, SEPTIEMBRE de 2015 El alumno: El tutor: JUAN MIGUEL BEJARANO BUENO LUIS MIGUEL NIETO NIETO 1 Escuela Politécnica Superior de Jaén Juan Miguel Bejarano Bueno Datalogger con enlace Bluetooth a aplicación Android. RESUMEN Este Trabajo de Fin de Grado consiste en el desarrollo de dos sistemas. En primer lugar, se dispondrá de un sistema de registro de datos por eventos o datalogger. El sistema está basado en un microcontrolador Microchip y dispondrá de una interfaz de comunicaciones Bluetooth. Este dispositivo será capaz de realizar mediciones con una duración mínima configurable. En segundo lugar y de manera simultánea, se ha diseñado una aplicación Android capaz de gestionar la comunicación con el dispositivo de una manera gráfica. El sistema se ha diseñado siempre teniendo en cuenta el ahorro económico, dispondrá de una alimentación autónoma y el mantenimiento será prácticamente nulo. Se pretende así obtener un datalogger funcional, económico e intuitivo para el manejo del mismo por cualquier tipo de usuario.
    [Show full text]