ARM Processor Architecture

Total Page:16

File Type:pdf, Size:1020Kb

ARM Processor Architecture ARMARM ProcessorProcessor ArchitectureArchitecture Jin-Fu Li Department of Electrical Engineering National Central University Adopted from National Chiao-Tung University IP Core Design SOC Consortium Course Material Outline ARM Processor Core Memory Hierarchy Software Development Summary SOC Consortium Course Material 2 ARM Processor Core SOC Consortium Course Material 3 3-Stage Pipeline ARM Organization A[31:0] control Register Bank address register – 2 read ports, 1 write ports, P access any register incrementer C – 1 additional read port, 1 PC additional write port for r15 (PC) register bank Barrel Shifter instruction decode – Shift or rotate the operand by A multiply & any number of bits L register U control A B b ALU u b b s u u s barrel s shifter Address register and incrementer ALU Data Registers – Hold data passing to and from memory data out register data in register Instruction Decoder and D[31:0] Control SOC Consortium Course Material 4 3-Stage Pipeline (1/2) Fetch – The instruction is fetched from memory and placed in the instruction pipeline Decode – The instruction is decoded and the datapath control signals prepared for the next cycle Execute – The register bank is read, an operand shifted, the ALU result generated and written back into destination register SOC Consortium Course Material 5 3-Stage Pipeline (2/2) At any time slice, 3 different instructions may occupy each of these stages, so the hardware in each stage has to be capable of independent operations When the processor is executing data processing instructions , the latency = 3 cycles and the throughput = 1 instruction/cycle SOC Consortium Course Material 6 Multi-cycle Instruction Memory access (fetch, data transfer) in every cycle Datapath used in every cycle (execute, address calculation, data transfer) Decode logic generates the control signals for the data path use in next cycle (decode, address calculation) SOC Consortium Course Material 7 Data Processing Instruction address register address register increment increment Rd PC Rd PC registers registers Rn Rm Rn mult mult as ins. as ins. as instruction as instruction [7:0] data out data in i. pipe data out data in i. pipe (a) register - register operations (b) register - immediate operations All operations take place in a single clock cycle SOC Consortium Course Material 8 Data Transfer Instructions address register address register increment increment PC Rn PC registers registers Rn Rd mult mult lsl #0 shifter = A / A + B / A - B = A + B / A - B [11:0] data out data in i. pipe byte? data in i. pipe (a) 1st cycle - compute address (b) 2nd cycle - store data & auto-index Computes a memory address similar to a data processing instruction Load instruction follow a similar pattern except that the data from memory only gets as far as the ‘data in’ register on the 2nd cycle and a 3rd cycle is needed to transfer the data from there to the destination register SOC Consortium Course Material 9 Branch Instructions address register address register increment increment R14 registers registers PC PC mult mult lsl #2 shifter = A + B = A [23:0] data out data in i. pipe data out data in i. pipe (a) 1st cycle - compute branch target (b) 2nd cycle - save return address The third cycle, which is required to complete the pipeline refilling, is also used to mark the small correction to the value stored in the link register in order that is points directly at the instruction which follows the branch SOC Consortium Course Material 10 Branch Pipeline Example Breaking the pipeline Note that the core is executing in the ARM state SOC Consortium Course Material 11 5-Stage Pipeline ARM Organization Tprog = Ninst * CPI / fclk –Tprog: the time that execute a given program –Ninst: the number of ARM instructions executed in the program => compiler dependent – CPI: average number of clock cycles per instructions => hazard causes pipeline stalls –fclk: frequency Separate instruction and data memories => 5 stage pipeline Used in ARM9TDMI SOC Consortium Course Material 12 5-Stage Pipeline Organization (1/2) next pc +4 Fetch I-cache fetch pc + 4 – The instruction is fetched from memory and placed in the instruction pc + 8 I decode pipeline r15 instruction decode register read Decode immediate fields – The instruction is decoded and mul register operands read from the LDM/ STM post - +4 in dex reg register files. There are 3 operand shift shift pre-index read ports in the register file so most execute ALU forwarding ARM instructions can source all their mux pa ths B, B L operands in one cycle MOV pc SUBS pc byte repl. Execute D-cache buffer/ – An operand is shifted and the ALU load/store data address result generated. If the instruction is rot/sgn ex a load or store, the memory address LDR pc is computed in the ALU register write write-back SOC Consortium Course Material 13 5-Stage Pipeline Organization (2/2) next pc +4 Buffer/Data I-cache fetch pc + 4 – Data memory is accessed if required. Otherwise the ALU result is simply pc + 8 I decode buffered for one cycle r15 instruction decode register read Write back immediate fields – The result generated by the mul instruction are written back to the LDM/ STM post - +4 in dex reg register file, including any data shift shift pre-index loaded from memory execute ALU forwarding mux pa ths B, B L MOV pc SUBS pc byte repl. buffer/ load/store D-cache address data rot/sgn ex LDR pc register write write-back SOC Consortium Course Material 14 Pipeline Hazards There are situations, called hazards, that prevent the next instruction in the instruction stream from being executing during its designated clock cycle. Hazards reduce the performance from the ideal speedup gained by pipelining. There are three classes of hazards: – Structural Hazards: They arise from resource conflicts when the hardware cannot support all possible combinations of instructions in simultaneous overlapped execution. – Data Hazards: They arise when an instruction depends on the result of a previous instruction in a way that is exposed by the overlapping of instructions in the pipeline. – Control Hazards: They arise from the pipelining of branches and other instructions that change the PC SOC Consortium Course Material 15 Structural Hazards When a machine is pipelined, the overlapped execution of instructions requires pipelining of functional units and duplication of resources to allow all possible combinations of instructions in the pipeline. If some combination of instructions cannot be accommodated because of a resource conflict, the machine is said to have a structural hazard. SOC Consortium Course Material 16 Example A machine has shared a single-memory pipeline for data and instructions. As a result, when an instruction contains a data-memory reference (load), it will conflict with the instruction reference for a later instruction (instr 3): Clock cycle number instr 1 2 3 4 5 6 7 8 load IF ID EX MEM WB Instr 1 IF ID EX MEM WB Instr 2 IF ID EX MEM WB Instr 3 IF ID EX MEM WB SOC Consortium Course Material 17 Solution (1/2) To resolve this, we stall the pipeline for one clock cycle when a data-memory access occurs. The effect of the stall is actually to occupy the resources for that instruction slot. The following table shows how the stalls are actually implemented. Clock cycle number instr 1 2 3 4 5 6 7 8 9 load IF ID EX MEM WB Instr 1 IF ID EX MEM WB Instr 2 IF ID EX MEM WB Instr 3 stall IF ID EX MEM WB SOC Consortium Course Material 18 Solution (2/2) Another solution is to use separate instruction and data memories. ARM is use Harvard architecture, so we do not have this hazard SOC Consortium Course Material 19 Data Hazards Data hazards occur when the pipeline changes the order of read/write accesses to operands so that the order differs from the order seen by sequentially executing instructions on the unpipelined machine. Clock cycle number 1 2 3 4 5 6 7 8 9 ADD R1,R2,R3 IF ID EX MEM WB SUB R4,R5,R1 IF IDsub EX MEM WB AND R6,R1,R7 IF IDand EX MEM WB OR R8,R1,R9 IF IDor EX MEM WB XOR R10,R1,R11 IF IDxor EX MEM WB SOC Consortium Course Material 20 Forwarding The problem with data hazards, introduced by this sequence of instructions can be solved with a simple hardware technique called forwarding. Clock cycle number 1 2 3 4 5 6 7 ADD R1,R2,R3 IF ID EX MEM WB SUB R4,R5,R1 IF IDsub EX MEM WB AND R6,R1,R7 IF IDand EX MEM WB SOC Consortium Course Material 21 Forwarding Architecture next pc +4 I-cache fetch Forwarding works as pc + 4 follows: pc + 8 I decode – The ALU result from the r15 instruction EX/MEM register is always fed decode register read back to the ALU input latches. immediate fields – If the forwarding hardware mul LDM/ detects that the previous ALU STM post - +4 in dex reg operation has written the shift shift pre-index execute register corresponding to the ALU forwarding mux pa ths source for the current ALU B, B L MOV pc operation, control logic selects SUBS pc byte repl. the forwarded result as the ALU input rather than the value read buffer/ load/store D-cache address data from the register file. rot/sgn ex LDR pc forwarding paths register write write-back SOC Consortium Course Material 22 Forward Data Clock cycle number 1 2 3 4 5 6 7 ADD R1,R2,R3 IF ID EXadd MEMadd WB SUB R4,R5,R1 IF ID EXsub MEM WB AND R6,R1,R7 IF ID EXand MEM WB The first forwarding is for value of R1 from EXadd to EXsub.
Recommended publications
  • Arm Cortex-R52
    Arm Cortex-R52 Product Brief Benefits Overview 1. Software Separation The Cortex-R52 is the most advanced processor in the Cortex-R family delivering real-time Robust hardware-enforced software performance for functional safety. As the first Armv8-R processor, Cortex-R52 introduces separation provides confidence that support for a hypervisor, simplifying software integration with robust separation to protect software functions can’t interfere with safety-critical code, while maintaining real-time deterministic operation required in high each other. For safety-related tasks, dependable control systems. this can mean less code needs to be certified, saving time, cost and effort. Cortex-R52 addresses a range of applications such as high performance domain controllers for vehicle powertrain and chassis systems or as a safety island providing 2. Multiple OS upportS protection in complex ADAS and Autonomous Drive systems. Virtualization support gives developers flexibility, readily allowing consolidation Safety Ready of applications using multiple operating systems within a single CPU. This eases Arm Cortex-R52 is part of Arm’s Safety Ready portfolio, a collection of Arm IP that the addition of functionality without have been through various and rigorous levels of functional safety systematic flows growing the number of electronic and development. control units. Learn more at www.arm.com/safety 3. Real-Time Performance High-performance multicore clusters of Cortex-R52 CPUs deliver real-time responsiveness for deterministic systems with the lowest Cortex-R latency. 1 Specifications Architecture Armv8-R Arm and Thumb-2. Supports DSP instructions and a configurable Floating-Point Unit either with Instruction Set single-precision or double precision and Neon.
    [Show full text]
  • Computer Organization and Architecture Designing for Performance Ninth Edition
    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION William Stallings Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montréal Toronto Delhi Mexico City São Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo Editorial Director: Marcia Horton Designer: Bruce Kenselaar Executive Editor: Tracy Dunkelberger Manager, Visual Research: Karen Sanatar Associate Editor: Carole Snyder Manager, Rights and Permissions: Mike Joyce Director of Marketing: Patrice Jones Text Permission Coordinator: Jen Roach Marketing Manager: Yez Alayan Cover Art: Charles Bowman/Robert Harding Marketing Coordinator: Kathryn Ferranti Lead Media Project Manager: Daniel Sandin Marketing Assistant: Emma Snider Full-Service Project Management: Shiny Rajesh/ Director of Production: Vince O’Brien Integra Software Services Pvt. Ltd. Managing Editor: Jeff Holcomb Composition: Integra Software Services Pvt. Ltd. Production Project Manager: Kayla Smith-Tarbox Printer/Binder: Edward Brothers Production Editor: Pat Brown Cover Printer: Lehigh-Phoenix Color/Hagerstown Manufacturing Buyer: Pat Brown Text Font: Times Ten-Roman Creative Director: Jayne Conte Credits: Figure 2.14: reprinted with permission from The Computer Language Company, Inc. Figure 17.10: Buyya, Rajkumar, High-Performance Cluster Computing: Architectures and Systems, Vol I, 1st edition, ©1999. Reprinted and Electronically reproduced by permission of Pearson Education, Inc. Upper Saddle River, New Jersey, Figure 17.11: Reprinted with permission from Ethernet Alliance. Credits and acknowledgments borrowed from other sources and reproduced, with permission, in this textbook appear on the appropriate page within text. Copyright © 2013, 2010, 2006 by Pearson Education, Inc., publishing as Prentice Hall. All rights reserved. Manufactured in the United States of America.
    [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]
  • OMAP-L138 DSP+ARM9™ Development Kit Low-Cost Development Kit to Jump-Start Real-Time Signal Processing Innovation
    OMAP-L138 DSP+ARM9™ Development Kit Low-cost development kit to jump-start real-time signal processing innovation Texas Instruments’ OMAP-L138 development kit is a new, robust low-cost development board designed to spark innovative designs based on the OMAP-L138 processor. Along with TI’s new included Linux™ Software Development Kit (SDK), the OMAP-L138 development kit is ideal for power- optimized, networked applications including industrial control, medical diagnostics and communications. It includes the OMAP-L138 baseboard, SD cards with a Linux demo, DSP/BIOS™ kernel and SDK, and Code Composer Studio™ (CCStudio) Integrated Development Environment (IDE), a power supply and cord, VGA cable and USB cable. Technical details • SATA port (3 Gbps) Key features and benefi ts The OMAP-L138 development kit is based • VGA port (15-pin D-SUB) • OMAP-L138 DSP+ARM9 software and on the OMAP-L138 DSP+ARM9 processor, a • LCD port (Beagleboard-XM connectors) development kit to jump-start real-time low-power applications processor based on • 3 audio ports signal processing innovation an ARM926EJ-S and a TMS320C674x DSP • Reduces design work with downloadable core. It provides signifi cantly lower power • 1 line in and duplicable board schematics and than other members of the TMS320C6000™ • 1 line out design fi les platform of DSPs. The OMAP-L138 processor • 1 MIC in • Fast and easy development of applica- enables developers to quickly design and • Composite in (RCA jack) tions requiring fi ngerprint recognition and develop devices featuring robust operating • Leopard Imaging camera sensor input (32- face detection with embedded analytics systems support and rich user interfaces with pin ZIP connector) • Low-power OMAP-L138 DSP+ a fully integrated mixed-processor solution.
    [Show full text]
  • Μc/OS-II™ Real-Time Operating System
    μC/OS-II™ Real-Time Operating System DESCRIPTION APPLICATIONS μC/OS-II is a portable, ROMable, scalable, preemptive, real-time ■ Avionics deterministic multitasking kernel for microprocessors, ■ Medical equipment/devices microcontrollers and DSPs. Offering unprecedented ease-of-use, ■ Data communications equipment μC/OS-II is delivered with complete 100% ANSI C source code and in-depth documentation. μC/OS-II runs on the largest number of ■ White goods (appliances) processor architectures, with ports available for download from the ■ Mobile Phones, PDAs, MIDs Micrium Web site. ■ Industrial controls μC/OS-II manages up to 250 application tasks. μC/OS-II includes: ■ Consumer electronics semaphores; event flags; mutual-exclusion semaphores that eliminate ■ Automotive unbounded priority inversions; message mailboxes and queues; task, time and timer management; and fixed sized memory block ■ A wide-range of embedded applications management. FEATURES μC/OS-II’s footprint can be scaled (between 5 Kbytes to 24 Kbytes) to only contain the features required for a specific application. The ■ Unprecedented ease-of-use combined with an extremely short execution time for most services provided by μC/OS-II is both learning curve enables rapid time-to-market advantage. constant and deterministic; execution times do not depend on the number of tasks running in the application. ■ Runs on the largest number of processor architectures with ports easily downloaded. A validation suite provides all documentation necessary to support the use of μC/OS-II in safety-critical systems. Specifically, μC/OS-II is ■ Scalability – Between 5 Kbytes to 24 Kbytes currently implemented in a wide array of high level of safety-critical ■ Max interrupt disable time: 200 clock cycles (typical devices, including: configuration, ARM9, no wait states).
    [Show full text]
  • SEGGER — the Embedded Experts It Simply Works!
    SEGGER — The Embedded Experts It simply works! Buyout licensing for Embedded Studio No license server, no hardware dongle Monheim, Germany – November 26 th, 2018 It only takes two minutes to install: With unlimited evaluaton and the freedom to use the sofware at no cost for non-commercial purposes, SEGGER has always made it easy to use Embedded Studio. In additon to this and by popular demand from developers in larger corporatons, SEGGER introduces a buyout licensing opton that makes things even easier. The new buyout opton allows usage by an unlimited number of users, without copy protecton, making it very easy to install and use the sofware anywhere: In the ofce, on the road, at customer's site or at home. No license server, no hardware dongle. Developers can fully concentrate on what they do and like best and what they are paid for: Develop sofware rather than deal with copy protecton issues. Being available for Windows, macOS and Linux, it reduces the dependencies on any third party. It is the perfect choice for mid-size to large corporatons with strict licensing policies. In additon to that, Embedded Studio's source code is available. "We are seeing more and more companies adoptng Embedded Studio as their Development Environment of choice throughout their entre organizaton. Listening to our customers, we found that this new opton helps to make Embedded Studio even more atractve. Easier is beter", says Rolf Segger, Founder of SEGGER. Get more informaton on the new SEGGER Embedded Studio at: www.segger.com/embedded-studio.html ### About Embedded Studio SEGGER — The Embedded Experts It simply works! Embedded Studio is a leading Integrated Development Environment (IDE) made by and for embedded sofware developers.
    [Show full text]
  • ARM Roadmap Spring 2017
    ARM Roadmap Spring 2017 Robert Boys [email protected] Version 9.0 Agenda . Roadmap . Architectures ARM1™ die . Issues . What is NEW ! . big.LITTLE™ . 64 Bit . Cortex®-A15 . 64 BIT . DynamIQ 3 © ARM 2017 In the Beginning… . 1985 32 years ago in a barn.... 12 engineers . Cash from Apple and VLSI . IP from Acorn Computers . Proof of concept . No patents, no independent customers, product not ready for mass market. A barn, some energy, experience and belief: “We’re going to be the Global Standard” 4 © ARM 2017 The Cortex Processor Roadmap in 2008 Application Real-time Microcontroller Cortex-A9 Cortex-A8 ARM11 Cortex-R4F ARM9 Cortex-R4 ARM7TDMI ARM7 Cortex-M3 SC300 Cortex-M1 5 © ARM 2017 5 Cortex-A73 ARM 2017 Processor Roadmap Cortex-A35 Cortex-A32 Cortex-A72 Cortex-A57 ARM 7, 9, 11 Cortex-A17 Application Cortex-A53 Cortex-A15 Real-time Not to scale to Not Cortex-A9 (Dual) Microcontroller Cortex-A9 (MPCore) Cortex-A8 Cortex-A7 ARM11(MP) Cortex-A5 MMU ARM926EJ-S Cortex-R52 No MMU Cortex-R8 200+ MHz Cortex-R7 ARM9 Cortex-R5 Cortex-R4 Cortex-M7 200+ MHz Cortex-M33 ARM7TDM 72 – 150 + MHz Cortex-M4 Cortex-M3 ARM7I SC300 Cortex-M23 DesignStart™ Cortex-M1 SC000 Cortex-M0+ Cortex-M0 6 © ARM 2017 6 Versions, cores and architectures ? Family Architecture Cores ARM7TDMI ARMv4T ARM7TDMI(S) ARM9 ARM9E ARMv5TE ARM926EJ-S, ARM966E-S ARM11 ARMv6 (T2) ARM1136(F), 1156T2(F)-S, 1176JZ(F), ARM11 MPCore™ Cortex-A ARMv7-A Cortex-A5, A7, A8, A9, A12, A15, A17 Cortex-R ARMv7-R Cortex-R4(F), Cortex-R5, R7, R8 … Cortex-M ARMv7-M Cortex-M3, M4, M7 (M7 is ARMv7-ME) ARMv6-M Cortex-M1, M0, M0+ NEW ! ARMv8-A 64 Bit: Cortex-A35/A53/57/A72 Cortex-A73 Cortex-A32 NEW ! ARMv8-R 32 Bit: Cortex-R52 NEW ! ARMv8-M 32 Bit: Cortex-M23 & M33 TrustZone® 7 © ARM 2017 What is New ? DynamIQ ! .
    [Show full text]
  • J-Flash User Guide of the Stand-Alone Flash Programming Software
    J-Flash User guide of the stand-alone flash programming software Document: UM08003 Software Version: 7.50 Date: July 1, 2021 A product of SEGGER Microcontroller GmbH www.segger.com 2 Disclaimer Specifications written in this document are believed to be accurate, but are not guaranteed to be entirely free of error. The information in this manual is subject to change for functional or performance improvements without notice. Please make sure your manual is the latest edition. While the information herein is assumed to be accurate, SEGGER Microcontroller GmbH (SEG- GER) assumes no responsibility for any errors or omissions. SEGGER makes and you receive no warranties or conditions, express, implied, statutory or in any communication with you. SEGGER specifically disclaims any implied warranty of merchantability or fitness for a particular purpose. Copyright notice You may not extract portions of this manual or modify the PDF file in any way without the prior written permission of SEGGER. The software described in this document is furnished under a license and may only be used or copied in accordance with the terms of such a license. © 2004-2018 SEGGER Microcontroller GmbH, Monheim am Rhein / Germany Trademarks Names mentioned in this manual may be trademarks of their respective companies. Brand and product names are trademarks or registered trademarks of their respective holders. Contact address SEGGER Microcontroller GmbH Ecolab-Allee 5 D-40789 Monheim am Rhein Germany Tel. +49-2173-99312-0 Fax. +49-2173-99312-28 E-mail: [email protected] Internet: www.segger.com J-Flash User Guide (UM08003) © 2004-2018 SEGGER Microcontroller GmbH 3 Manual versions This manual describes the current software version.
    [Show full text]
  • Overview of 15-740
    Memory Hierarchy 15-740 SPRING’18 NATHAN BECKMANN Topics Memories Caches L3 Reading Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers Famous paper; won “Test of Time Award” Norm Jouppi • DEC, Hewlett-Packard, Google (TPUs) • Winner of Eckert-Mauchly Award • “The Nobel Prize of Computer Architecture” Early computer system Processor interrupts Memory-I/O bus I/O I/O I/O controller controller Memory controller diskDisk diskDisk Display Network Recall: Processor-memory gap Ideal memory We want a large, fast memory …But technology doesn’t let us have this! Key observation: Locality ◦ All data are not equal ◦ Some data are accessed more often than others Architects solution: Caches Memory hierarchy Modern computer system Processor interrupts Cache Memory-I/O bus I/O I/O I/O controller controller Memory controller diskDisk diskDisk Display Network Technological tradeoffs in accessing data Memory Technology Physical size affects latency CPU CPU Small Memory Big Memory ▪ Signals have further to travel ▪ Fan out to more locations 12 Why is bigger slower? •Physics slows us down •Racing the speed of light? ◦ take recent Intel chip (Haswell-E 8C) ◦ how far can I go in a clock cycle @ 3 GHz? (3.0x10^8 m/s) / (3x10^9 cycles/s) = 0.1m/cycle ◦ for comparison: Haswell-E 8C is about 19mm = .019m across ◦ speed of light doesn’t directly limit speed, but its in ballpark •Capacitance: ◦ long wires have more capacitance ◦ either more powerful (bigger) transistors required, or slower ◦ signal propagation speed proportional to capacitance ◦ going “off chip” has an order of magnitude more capacitance Single-transistor (1T) DRAM cell (one bit) 1-T DRAM Cell word access transistor TiN top electrode (VREF) V REF Ta2O5 dielectric bit Storage capacitor (FET gate, trench, stack) poly W bottom word electrode line access transistor 14 Modern “3D” DRAM structure [Samsung, sub-70nm DRAM, 2004] 15 DRAM architecture bit lines Col.
    [Show full text]
  • Nexus Based Multi-Core Debug
    Nexus Based Multi-Core Debug Dr. Neal Stollon MIPS Technologies / First Silicon Solutions [email protected] Rich Collins Freescale Semiconductor [email protected] Impact of Debug Strategy Copyright © 2003 Novas Software, Inc. Yes! but. half of what??? Copyright © 2003 Novas Software, Inc. Prototype silicon to production Debug cost can get even bigger for new sets release is 6-9 months. of debug problems for multi-core designs Much of cost of debug driven by architecture limitations and debug learning curve But what if SoC internals are more visible, accessible? Debug implementations become standardized ? SoC Debug Evolution ICE BDM JTAG Embedded Multi-Core Embedded (Scan, BIST Processor / System Debug Run Control) Logic Trace 50K Platform SoC (Multi-Core) 20K SoC Debug- (RISC+IP Nexus +RAM) Difficulty 8K ASICS System FPGA Domain (gates/pins) (PLD+RISC IP) Embedded 2.5K Systems Single FPGAs 1K processor 1980s 1990s 2000s The New Frontier Embedded Debug Complexity keeps increasing • Gates increase geometrically - Pins increase linearly • Significant debug difficulties for leading architectures • More complex debug needs better Instrumentation What is Nexus? • Nexus is a standard for industry level instrumentation with real time interface for embedded system debug • “Nexus” is synonymous with the IEEE-ISTO 5001 std. • Supported by over 20 Member Companies • Specification freely available at http://www.nexus5001.org • Nexus is a toolbox of defined ways for processor debug: • Defines JTAG and Auxiliary bus debug interfaces • Defines simple
    [Show full text]
  • Chapter 1 Microcontrollers
    Chapter 1 Microcontrollers: Yesterday, Today, and Tomorrow 1.1 Defining Microcontrollers It is said that from the definition everything true about the con- cept follows. Therefore, at the outset let us take a brief review of how the all-pervasive microcontroller has been defined by various technical sources. A microcontroller (or MCU) is a computer-on-a-chip used to con- trol electronic devices. It is a type of microprocessor emphasizing self-sufficiency and cost-effectiveness, in contrast to a general-purpose microprocessor (the kind used in a PC). A typical microcontroller con- tains all the memory and interfaces needed for a simple application, whereas a general purpose microprocessor requires additional chips to provide these functions. .(Wikipedia [1]) A highly integrated chip that contains all the components compris- ing a controller. Typically this includes a CPU, RAM, some form of ROM, I/O ports, and timers. Unlike a general-purpose computer, which also includes all of these components, a microcontroller is designed for a very specific task – to control a particular system. As a result, the parts can be simplified and reduced, which cuts down on production costs. (Webopedia [2]) A {microprocessor} on a single {integrated circuit} intended to ope- rate as an {embedded} system. As well as a {CPU}, a microcontroller typically includes small amounts of {RAM} and {PROM} and timers and I/O ports. .(Define That [3]) A single chip that contains the processor (the CPU), non-volatile memory for the program (ROM or flash), volatile memory for input and output (RAM), a clock and an I/O control unit.
    [Show full text]
  • ARM Microcontrollers for Space Applications
    ARM Microcontrollers for Space Applications Emre Ozer, R&D Nov 4, 2010 1 Outline .What does ARM do? .ARM CPU Portfolio .ARM Embedded CPUs and Microcontrollers .ARM in Space/Aerospace 2 What does ARM do? . Designs and Licenses IP Software 3 The ARM Business Model . Global leader in the development of semiconductor IP . R&D outsourcing for semiconductor companies . Innovative business model yields high margins . Upfront license fee – flexible licensing models . Ongoing royalties – typically based on a percentage of chip price . Technology reused across multiple applications . Long-term, scalable growth markets Base of over 660 licenses Grows by 60-90 every year More than 220 potential royalty payers ~4 billion ARM technology based chips each year 4 ARM Connected Community – 700+ Connect, Collaborate, Create – accelerating innovation 5 ARM Classic CPU Portfolio . Classic, market-proven processor technology . 220+ partners ARMv6 x1-4 ARM11™ MPCore™ . 660+ licenses ARM1176JZ(F)-S™ ARM1156T2(F)-S™ . 18Bu+ shipped ARM1136J(F)-S™ ARMv5 ARM968E-S™ ARM926EJ-S™ ARM946E-S™ ARM7EJ-S™ ARMv4 ARM922T™ SC100™ ARM7TDMI(S)™ 6 ARM Cortex Advanced Processors Architectural innovation, compatibility across diverse application spectrum . ARM Cortex-A family: x1-4 Cortex-A9 . Applications processors for smartphone, ...2GHz mobile computing, infrastructure, consumer Cortex-A8 electronics, netbooks and servers x1-4 Cortex-A5 ARM Cortex-R family: . Cortex-R4(F) . Embedded processors for real-time signal processing, hard drives and Cortex-M4 SC300™ mission-critical
    [Show full text]