General Commands Reference Guide T

Total Page:16

File Type:pdf, Size:1020Kb

General Commands Reference Guide T General Commands Reference Guide T TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents ...................................................................................................................... General Commands ...................................................................................................................... General Commands Reference Guide T ................................................................................... 1 History ...................................................................................................................................... 14 TargetSystem ........................................................................................................................... 15 TargetSystem TRACE32 PowerView instances 15 TargetSystem.NewInstance Start new TRACE32 PowerView instance 16 TargetSystem.state Show overview of multicore system 18 TASK ......................................................................................................................................... 23 TASK OS Awareness for TRACE32 23 Overview TASK 23 TASK.ACCESS Control memory access 28 TASK.ATTACH Attach to a running process 28 TASK.Break Stop the execution of a single task or thread 28 TASK.CACHEFLUSH Reread task list 29 TASK.CONFIG Configure OS Awareness 29 TASK.COPYDOWN Copy file from host into target 30 TASK.COPYUP Copy file from target into host 31 TASK.CreateExtraID Create a virtual task 31 TASK.CreateID Create virtual task 31 TASK.DELete Delete file from target 32 TASK.DeleteID Delete virtual task 32 TASK.DETACH Detach from task 32 TASK.Go Start the execution of a single task or thread 33 TASK.INSTALL Deprecated 33 TASK.KILL End task 33 TASK.List Information about tasks 34 TASK.List.MACHINES List machines 34 TASK.List.SPACES List MMU spaces 35 TASK.List.tasks List all running tasks 36 TASK.List.TREE Display tasks in a tree structure 38 TASK.ListID List virtual tasks 39 TASK.NAME Translation of task magic number to task name 40 TASK.NAME.DELete Delete a task name table entry 40 ©1989-2021 Lauterbach GmbH General Commands Reference Guide T 1 TASK.NAME.RESet Reset task name table 40 TASK.NAME.Set Set a task name table entry 41 TASK.NAME.view Show task name translation table 41 TASK.ORTI AUTOSAR/OSEK support 42 TASK.ORTI.CPU Set OSEK SMP CPU number 42 TASK.ORTI.load Configure OS Awareness for OSEK/ORTI 42 TASK.ORTI.NOSTACK Exclude an ORTI task from stack evaluation 43 TASK.ORTI.SPLITSTACK Split stack analysis of idle ORTI task to cores 44 TASK.RESet Reset OS Awareness 45 TASK.RUN Load task 45 TASK.select Display context of specified task 46 TASK.SETDIR Set the awareness directory 47 TASK.STacK Stack usage coverage 48 TASK.STacK.ADD Add stack space coverage 48 TASK.STacK.DIRection Define stack growth direction 50 TASK.STacK.Init Initialize unused stack space 50 TASK.STacK.PATtern Define stack check pattern 51 TASK.STacK.PATternGAP Define check pattern gap 52 TASK.STacK.ReMove Remove stack space coverage 52 TASK.STacK.RESet Reset stack coverage 53 TASK.STacK.view Open stack space coverage 54 TCB ........................................................................................................................................... 56 TCB Trace control block 56 TCB.AllBranches Broadcast all branches 57 TCB.CPU Broadcast information for specified CPU only 57 TCB.CycleAccurate Cycle accurate tracing 58 TCB.DataTrace Broadcast specified address and data information 59 TCB.EX Broadcast exception level information 60 TCB.FCR Broadcast function call-return information 60 TCB.IM Broadcast instruction cache miss information 60 TCB.InstructionCompletionSizeBits Specify size of completion message 61 TCB.KE Broadcast kernel mode information 61 TCB.LSM Broadcast load store data cache information 62 TCB.OFF Switch TCB off 62 TCB.ON Switch TCB on 62 TCB.PCTrace Broadcast program counter trace 63 TCB.PortMode Specify trace clock ratio 64 TCB.PortWidth Specify trace port width 64 TCB.Register Display TCB control register 65 TCB.RESet Reset TCB setup to default 66 TCB.SourceSizeBits Specify number of bit for core information in trace 66 TCB.SRC Control selective trace 66 TCB.STALL Stall CPU for complete trace 67 ©1989-2021 Lauterbach GmbH General Commands Reference Guide T 2 TCB.state Display TCB setup 67 TCB.SV Broadcast supervisor mode information 68 TCB.SyncPeriod Specify TCB sync period 68 TCB.TC Broadcast information for specified HW thread 69 TCB.ThreadSizeBits Specify number of bit for thread information in trace 69 TCB.Type Specify TCB type 70 TCB.UM Broadcast user mode information 70 TCB.Version Specify trace cell version 71 TERM ........................................................................................................................................ 72 TERM Terminal emulation 72 Overview TERM 72 Interface Routines 72 Interface Routines (EPROM Simulator) 73 Interface Routines (Single Character Modes) 74 Interface Routines (Buffered Modes) 74 Interface Routines (Serial Line Debugger) 74 Interface Routines (Special Hardware, JTAG) 74 Functions 75 Fast Data Write 75 Interface Routines 75 TERM.CLEAR Clear terminal window 76 TERM.CLOSE Close files 76 TERM.CMDLINE Specify a command line 76 TERM.GATE Terminal with virtual hosting 77 TERM.HARDCOPY Print terminal window contents 77 TERM.HEAPINFO Define memory heap parameters 78 TERM.LocalEcho Enables/disables local echo for new terminal windows 78 TERM.METHOD Select terminal protocol 79 TERM.METHOD2 Select additional terminal protocol 82 TERM.Mode Define terminal type 84 TERM.Out Send data to virtual terminal 85 TERM.OutBREAK Send serial break 85 TERM.PIPE Connect terminal to named pipe 86 TERM.PipeREAD Connect terminal input to named pipe 86 TERM.PipeWRITE Connect terminal output to named pipe 86 TERM.Protocol Select terminal protocol 87 TERM.PULSE Enable pulse generator for transfers 87 TERM.Rate Define polling rate 87 TERM.READ Get terminal input from file 88 TERM.RESet Reset terminal parameters 88 TERM.SCROLL Enable automatic scrolling for terminal window 88 TERM.SIZE Define size of terminal window 89 TERM.STDIN Get terminal input from file 89 ©1989-2021 Lauterbach GmbH General Commands Reference Guide T 3 TERM.TCP Route terminal input/output to TCP port 90 TERM.TELNET Open TELNET terminal window 90 TERM.TRIGGER Trigger on string in terminal window 91 TERM.Vector Define interrupt vectors 92 TERM.view Terminal display 93 TERM.WRITE Write terminal output to file 94 TPIU .......................................................................................................................................... 95 TPIU Trace Port Interface Unit (TPIU) 95 Overview TPIU 95 TPIU.CLEAR Re-write the TPIU registers 96 TPIU.IGNOREZEROS Workaround for a special chip 96 TPIU.NOFLUSH Workaround for a chip bug affecting TPIU flush 96 TPIU.PortClock Inform debugger about HSSTP trace frequency 97 TPIU.PortMode Select the operation mode of the TPIU 98 TPIU.PortSize Select interface type and port size of the TPIU 99 TPIU.RefClock Set up reference clock for HSSTP 100 TPIU.Register Display TPIU registers 101 TPIU.RESet Reset TPIU settings 101 TPIU.state Display TPIU configuration window 102 TPIU.SWVPrescaler Set up SWV prescaler 102 TPIU.SWVZEROS Workaround for a chip bug 103 TPIU.SyncPeriod Set period of sync packet injection 104 TPU ........................................................................................................................................... 105 TPU.BASE Base address 105 TPU.Break Break TPU 105 TPU.Dump Memory display 105 TPU.Go Start TPU 105 TPU.List View microcode 105 TPU.ListEntry Table display 105 TPU.Register.ALL Register operation mode 105 TPU.Register.NEWSTEP New debugging mode 106 TPU.Register.Set Register modification 106 TPU.Register.view Register display 106 TPU.RESet Disable TPU debugger 106 TPU.SCAN Scanning TPU 106 TPU.SELect Select TPU for debugging 106 TPU.Step Single step TPU 106 TPU.view View TPU channels 106 Trace ......................................................................................................................................... 107 Trace Trace configuration and display 107 Overview Trace 108 About the Command Placeholder <trace> 109 ©1989-2021 Lauterbach GmbH General Commands Reference Guide T 4 What to know about the TRACE32 default settings for Trace.METHOD 109 Types of Replacements for <trace> 111 Replacing <trace> with a Trace Method - Examples 111 Replacing <trace> with a Trace Evaluation - Example 112 Replacing <trace> with RTS for Real-time Profiling - Example 113 Replacing <trace> with Trace Source and Trace Method - Examples 114 How to access the trace sources in TRACE32 116 List of <trace> Command Groups consisting of <trace_source><trace_method> 117 Related Trace Command Groups 120 <trace>.ACCESS Define access path to program code for trace decoding 121 <trace>.Arm Arm the trace 123 <trace>.AutoArm Arm automatically 124 <trace>.AutoFocus Calibrate AUTOFOCUS preprocessor 124 Preprocessor with AUTOFOCUS Technology 127 <trace>.AutoInit Automatic initialization 129 <trace>.AutoStart Automatic start 129 <trace>.AutoTEST Continuous measurement 130 <trace>.BookMark Set a bookmark in trace listing 130 <trace>.BookMarkToggle Toggles a single trace bookmark 132 <trace>.Chart Display trace contents graphically 133 Parameters 133 Options 134 Drag and Drop 137 <trace>.Chart.Address Time between program events as a chart 142 <trace>.Chart.AddressGROUP Address group time chart 144 <trace>.Chart.ChildTREE Display callee context of a function as chart 145 <trace>.Chart.DatasYmbol
Recommended publications
  • AMD Athlon™ Processor X86 Code Optimization Guide
    AMD AthlonTM Processor x86 Code Optimization Guide © 2000 Advanced Micro Devices, Inc. All rights reserved. The contents of this document are provided in connection with Advanced Micro Devices, Inc. (“AMD”) products. AMD makes no representations or warranties with respect to the accuracy or completeness of the contents of this publication and reserves the right to make changes to specifications and product descriptions at any time without notice. No license, whether express, implied, arising by estoppel or otherwise, to any intellectual property rights is granted by this publication. Except as set forth in AMD’s Standard Terms and Conditions of Sale, AMD assumes no liability whatsoever, and disclaims any express or implied warranty, relating to its products including, but not limited to, the implied warranty of merchantability, fitness for a particular purpose, or infringement of any intellectual property right. AMD’s products are not designed, intended, authorized or warranted for use as components in systems intended for surgical implant into the body, or in other applications intended to support or sustain life, or in any other applica- tion in which the failure of AMD’s product could create a situation where per- sonal injury, death, or severe property or environmental damage may occur. AMD reserves the right to discontinue or make changes to its products at any time without notice. Trademarks AMD, the AMD logo, AMD Athlon, K6, 3DNow!, and combinations thereof, AMD-751, K86, and Super7 are trademarks, and AMD-K6 is a registered trademark of Advanced Micro Devices, Inc. Microsoft, Windows, and Windows NT are registered trademarks of Microsoft Corporation.
    [Show full text]
  • Microcode Revision Guidance August 31, 2019 MCU Recommendations
    microcode revision guidance August 31, 2019 MCU Recommendations Section 1 – Planned microcode updates • Provides details on Intel microcode updates currently planned or available and corresponding to Intel-SA-00233 published June 18, 2019. • Changes from prior revision(s) will be highlighted in yellow. Section 2 – No planned microcode updates • Products for which Intel does not plan to release microcode updates. This includes products previously identified as such. LEGEND: Production Status: • Planned – Intel is planning on releasing a MCU at a future date. • Beta – Intel has released this production signed MCU under NDA for all customers to validate. • Production – Intel has completed all validation and is authorizing customers to use this MCU in a production environment.
    [Show full text]
  • Stackwalkerapi Programmer's Guide
    Paradyn Parallel Performance Tools StackwalkerAPI Programmer’s Guide 9.2 Release June 2016 Computer Sciences Department University of Wisconsin–Madison Madison, WI 53706 Computer Science Department University of Maryland College Park, MD 20742 Email [email protected] Web www.dyninst.org Contents 1 Introduction 3 2 Abstractions 4 2.1 Stackwalking Interface . .5 2.2 Callback Interface . .5 3 API Reference 6 3.1 Definitions and Basic Types . .6 3.1.1 Definitions . .6 3.1.2 Basic Types . .9 3.2 Namespace StackwalkerAPI . 10 3.3 Stackwalking Interface . 10 3.3.1 Class Walker . 10 3.3.2 Class Frame . 14 3.4 Accessing Local Variables . 18 3.5 Callback Interface . 19 3.5.1 Default Implementations . 19 3.5.2 Class FrameStepper . 19 3.5.3 Class StepperGroup . 22 3.5.4 Class ProcessState . 24 3.5.5 Class SymbolLookup . 27 4 Callback Interface Default Implementations 27 4.1 Debugger Interface . 28 4.1.1 Class ProcDebug . 29 4.2 FrameSteppers . 31 4.2.1 Class FrameFuncStepper . 31 4.2.2 Class SigHandlerStepper . 32 4.2.3 Class DebugStepper . 33 1 4.2.4 Class AnalysisStepper . 33 4.2.5 Class StepperWanderer . 33 4.2.6 Class BottomOfStackStepper . 33 2 1 Introduction This document describes StackwalkerAPI, an API and library for walking a call stack. The call stack (also known as the run-time stack) is a stack found in a process that contains the currently active stack frames. Each stack frame is a record of an executing function (or function-like object such as a signal handler or system call).
    [Show full text]
  • Procedures & the Stack
    Procedures & The Stack Spring 2016 Procedures & The Stack Announcements ¢ Lab 1 graded § Late days § Extra credit ¢ HW 2 out ¢ Lab 2 prep in section tomorrow § Bring laptops! ¢ Slides HTTP://XKCD.COM/1270/ 1 Procedures & The Stack Spring 2016 Memory & data Roadmap Integers & floats C: Java: Machine code & C x86 assembly car *c = malloc(sizeof(car)); Car c = new Car(); Procedures & stacks c->miles = 100; c.setMiles(100); Arrays & structs c->gals = 17; c.setGals(17); float mpg = get_mpg(c); float mpg = Memory & caches free(c); c.getMPG(); Processes Virtual memory Assembly get_mpg: Memory allocation pushq %rbp Java vs. C language: movq %rsp, %rbp ... popq %rbp ret OS: Machine 0111010000011000 100011010000010000000010 code: 1000100111000010 110000011111101000011111 Computer system: 2 Procedures & The Stack Spring 2016 Mechanisms required for procedures ¢ Passing control P(…) { § To beginning oF procedure code • • § Back to return point y = Q(x); print(y) ¢ Passing data • § Procedure arguments } § Return value ¢ Memory management int Q(int i) § Allocate during procedure execution { § Deallocate upon return int t = 3*i; int v[10]; ¢ All implemented with machine • instructions • § An x86-64 procedure uses only those return v[t]; mechanisms required For that procedure } 3 Procedures & The Stack Spring 2016 Questions to answer about procedures ¢ How do I pass arguments to a procedure? ¢ How do I get a return value from a procedure? ¢ Where do I put local variables? ¢ When a function returns, how does it know where to return? ¢ To answer some of
    [Show full text]
  • MIPS Calling Convention
    MIPS Calling Convention CS 64: Computer Organization and Design Logic Lecture #9 Fall 2018 Ziad Matni, Ph.D. Dept. of Computer Science, UCSB Administrative • Lab #5 this week – due on Friday • Grades will be up on GauchoSpace today by noon! – If you want to review your exams, see your TAs: LAST NAMES A thru Q See Bay-Yuan (Th. 12:30 – 2:30 pm) LAST NAMES R thru Z See Harmeet (Th. 9:30 – 11:30 am) • Mid-quarter evaluations for T.As – Links on the last slide and will put up on Piazza too – Optional to do, but very appreciated by us all! 11/5/2018 Matni, CS64, Fa18 2 CS 64, Fall 18, Midterm Exam Average = 86.9% Median = 87% 26 22 8 5 3 11/5/2018 Matni, CS64, Fa18 3 Lecture Outline • MIPS Calling Convention – Functions calling functions – Recursive functions 11/5/2018 Matni, CS64, Fa18 4 Function Calls Within Functions… Given what we’ve said so far… • What about this code makes our previously discussed setup break? – You would need multiple copies of $ra • You’d have to copy the value of $ra to another register (or to mem) before calling another function • Danger: You could run out of registers! 11/5/2018 Matni, CS64, Fa18 5 Another Example… What about this code makes this setup break? • Can’t fit all variables in registers at the same time! • How do I know which registers are even usable without looking at the code? 11/5/2018 Matni, CS64, Fa18 6 Solution??!! • Store certain information in memory only at certain times • Ultimately, this is where the call stack comes from • So what (registers/memory) save what??? 11/5/2018 Matni, CS64, Fa18
    [Show full text]
  • A PROGRAMMABLE COMPUTER INTERFACE for CAMAC F by Robert W
    NASA TECHNICAL NOTE NASA TN D-7148 A PROGRAMMABLE COMPUTER INTERFACE FOR CAMAC f by Robert W. Bercaw, Theodore E. Fessler, \ and Jeffrey M. Arnold Lewis Research Center Cleveland, Ohio 44135 NATIONAL AERONAUTICS AND SPACE ADMINISTRATION • WASHINGTON, D. C. • MARCH 1973 1. Report No. 2. Government Accession No. 3. Recipient's Catalog No. NASA TN D-7148 4. Title and Subtitle 5. Report Date March 1973 A PROGRAMMABLE COMPUTER INTERFACE FOR CAMAC 6. Performing Organization Code 7. Author(s) 8. Performing Organization Report No. Robert W. Bercaw, Theodore E. Fessler, and Jeffrey M. Arnold E-6957 10. Work Unit No. 9. Performing Organization Name and Address 503-10 Lewis Research Center 11. Contract or Grant No. National Aeronautics and Space Administration Cleveland, Ohio 44135 13. Type of Report and Period Covered 12. Sponsoring Agency Name and Address Technical Note National Aeronautics and Space Administration 14. Sponsoring Agency Code Washington, B.C. 20546 15. Supplementary Notes 16. Abstract An interface has been developed for CAMAC instrumentation systems that implements data transfers controlled either by the computer CPU or by an autonomous (data-channel) processor in the interface unit. The data channel processor executes programs stored in the computer memory. These programs consist of standard CAMAC module commands plus special control characters and commands for the processor itself. The interface was built for the PDP-15 computer, which has an 18-bit word structure, but both 18- and 24-bit data transfers can be made. A software system has been written that exploits the many features of the processor. 17. Key Words (Suggested by Author(s)) 18.
    [Show full text]
  • UNDERSTANDING STACK ALIGNMENT in 64-BIT CALLING CONVENTIONS for X86-64 Assembly Programmers
    UNDERSTANDING STACK ALIGNMENT IN 64-BIT CALLING CONVENTIONS For x86-64 Assembly Programmers This article is part of CPU2.0 presentation Soffian Abdul Rasad Date : Oct 2nd, 2017 Updated: 2019 Note: This article is released in conjunction with CPU2.0 to enable users to use CPU2.0 correctly in regards to stack alignment. It does not present full stack programming materials. MS 64-bit Application Binary Interface (ABI) defines an x86_64 software calling convention known as the fastcall. System V also introduces similar software calling convention known as AMD64 calling convention. These calling conventions specify the standards and the requirements of the 64-bit APIs to enable codes to access and use them in a standardized and uniform fashion. This is the standard convention being employed by Win64 APIs and Linux64 respectively. While the two are radically different, they share similar stack alignment policy – the stack must be well-aligned to 16-byte boundaries prior to calling a 64-bit API. A memory address is said to be aligned to 16 if it is evenly divisible by 16, or if the last digit is 0, in hexadecimal notation. Please note that to simplify discussions, we ignore the requirement for shadow space or red zone when calling the 64-bit APIs for now. But still with or without the shadow space, the discussion below applies. Also note that the CPU honors no calling convention. Align 16 Ecosystem This requirement specifies that for the 64-bit APIs to function correctly it must work in an ecosystem or runtime environment in which the stack memory is always aligned to 16-byte boundaries.
    [Show full text]
  • Application Note Saving Data During a Power Failure Using the Dataflash® E-Series Family
    Saving Data During a Power Failure Using the DataFlash® E-Series Family Application Note Saving Data During a Power Failure Using the DataFlash® E-Series Family Abstract This application note is intended to provide readers with information on how to save critical data to the Flash memory of DataFlash E-Series devices in the event of a power failure. The power failure is simulated by removing power to the devices. This document does not discuss how the power failure is detected, how the microcontroller may respond to the failure, or how the power rail is controlled for both the DataFlash device and the microcontroller. Product Highlights • Single 3V Read/Write Operation (1.65V - 3.6V Supply Range) • SPI Mode 0 and Mode 3 Compatible • Fast Read Access Times: 85 MHz Maximum Clock Frequency • Individual Hardware and Software Sector Protection • Security: 128-byte Register • JEDEC Standard Manufacturer and Device ID Read • Endurance: 100,000 Program/Erase Cycles per Page Minimum • Data Retention: 20 Years • Packaging Options: SOIC, DFN, WLCSP, Die/Wafer • Green (Pb/Halide-free) Packaging Options Application Note 114 11-Dec-2020 AN114 1 of 13 © 2020 Dialog Semiconductor Saving Data During a Power Failure Using the DataFlash® E-Series Family Revision History Revision Date Description A0 11-Dec-2020 Initial Release Application Note 114 11-Dec-2020 AN114 2 of 13 © 2020 Dialog Semiconductor Saving Data During a Power Failure Using the DataFlash® E-Series Family 1 Introduction The DataFlash E-series family of Flash memory devices are often used in applications such as server configuration, data logging, event counters and failure/error/status loggers.
    [Show full text]
  • 14-/12-Bit, 250MSPS, Ultralow-Power ADC with Analog Buffers Check for Samples: ADS41B29, ADS41B49
    ADS41B29 ADS41B49 www.ti.com SBAS486E – NOVEMBER 2009–REVISED JULY 2012 14-/12-Bit, 250MSPS, Ultralow-Power ADC with Analog Buffers Check for Samples: ADS41B29, ADS41B49 1FEATURES DESCRIPTION The ADS41B29/B49 are members of the ultralow- 23• ADS41B49: 14-Bit, 250MSPS ADS41B29: 12-Bit, 250MSPS power ADS4xxx analog-to-digital converter (ADC) family, featuring integrated analog input buffers. • Integrated High-Impedance These devices use innovative design techniques to Analog Input Buffer: achieve high dynamic performance, while consuming – Input Capacitance: 2pF extremely low power. The analog input pins have – 200MHz Input Resistance: 3kΩ buffers, with benefits of constant performance and input impedance across a wide frequency range. The • Maximum Sample Rate: 250MSPS devices are well-suited for multi-carrier, wide • Ultralow Power: bandwidth communications applications such as PA – 1.8V Analog Power: 180mW linearization. – 3.3V Buffer Power: 96mW The ADS41B49/29 have features such as digital gain – I/O Power: 135mW (DDR LVDS) and offset correction. The gain option can be used to improve SFDR performance at lower full-scale input • High Dynamic Performance: ranges, especially at high input frequencies. The – SNR: 69dBFS at 170MHz integrated dc offset correction loop can be used to – SFDR: 82.5dBc at 170MHz estimate and cancel the ADC offset. At lower sampling rates, the ADC automatically operates at • Output Interface: scaled-down power with no loss in performance. – Double Data Rate (DDR) LVDS with Programmable Swing and Strength: The devices support both double data rate (DDR) low-voltage differential signaling (LVDS) and parallel – Standard Swing: 350mV CMOS digital output interfaces. The low data rate of – Low Swing: 200mV the DDR LVDS interface (maximum 500MBPS) – Default Strength: 100Ω Termination makes it possible to use low-cost field-programmable gate array (FPGA)-based receivers.
    [Show full text]
  • The Central Processor Unit
    Systems Architecture The Central Processing Unit The Central Processing Unit – p. 1/11 The Computer System Application High-level Language Operating System Assembly Language Machine level Microprogram Digital logic Hardware / Software Interface The Central Processing Unit – p. 2/11 CPU Structure External Memory MAR: Memory MBR: Memory Address Register Buffer Register Address Incrementer R15 / PC R11 R7 R3 R14 / LR R10 R6 R2 R13 / SP R9 R5 R1 R12 R8 R4 R0 User Registers Booth’s Multiplier Barrel IR Shifter Control Unit CPSR 32-Bit ALU The Central Processing Unit – p. 3/11 CPU Registers Internal Registers Condition Flags PC Program Counter C Carry IR Instruction Register Z Zero MAR Memory Address Register N Negative MBR Memory Buffer Register V Overflow CPSR Current Processor Status Register Internal Devices User Registers ALU Arithmetic Logic Unit Rn Register n CU Control Unit n = 0 . 15 M Memory Store SP Stack Pointer MMU Mem Management Unit LR Link Register Note that each CPU has a different set of User Registers The Central Processing Unit – p. 4/11 Current Process Status Register • Holds a number of status flags: N True if result of last operation is Negative Z True if result of last operation was Zero or equal C True if an unsigned borrow (Carry over) occurred Value of last bit shifted V True if a signed borrow (oVerflow) occurred • Current execution mode: User Normal “user” program execution mode System Privileged operating system tasks Some operations can only be preformed in a System mode The Central Processing Unit – p. 5/11 Register Transfer Language NAME Value of register or unit ← Transfer of data MAR ← PC x: Guard, only if x true hcci: MAR ← PC (field) Specific field of unit ALU(C) ← 1 (name), bit (n) or range (n:m) R0 ← MBR(0:7) Rn User Register n R0 ← MBR num Decimal number R0 ← 128 2_num Binary number R1 ← 2_0100 0001 0xnum Hexadecimal number R2 ← 0x40 M(addr) Memory Access (addr) MBR ← M(MAR) IR(field) Specified field of IR CU ← IR(op-code) ALU(field) Specified field of the ALU(C) ← 1 Arithmetic and Logic Unit The Central Processing Unit – p.
    [Show full text]
  • Real-Time Operating System (RTOS)
    Real-Time Operating System ELC 4438 – Spring 2016 Liang Dong Baylor University RTOS – Basic Kernel Services Task Management • Scheduling is the method by which threads, processes or data flows are given access to system resources (e.g. processor time, communication bandwidth). • The need for a scheduling algorithm arises from the requirement for most modern systems to perform multitasking (executing more than one process at a time) and multiplexing (transmit multiple data streams simultaneously across a single physical channel). Task Management • Polled loops; Synchronized polled loops • Cyclic Executives (round-robin) • State-driven and co-routines • Interrupt-driven systems – Interrupt service routines – Context switching void main(void) { init(); Interrupt-driven while(true); } Systems void int1(void) { save(context); task1(); restore(context); } void int2(void) { save(context); task2(); restore(context); } Task scheduling • Most RTOSs do their scheduling of tasks using a scheme called "priority-based preemptive scheduling." • Each task in a software application must be assigned a priority, with higher priority values representing the need for quicker responsiveness. • Very quick responsiveness is made possible by the "preemptive" nature of the task scheduling. "Preemptive" means that the scheduler is allowed to stop any task at any point in its execution, if it determines that another task needs to run immediately. Hybrid Systems • A hybrid system is a combination of round- robin and preemptive-priority systems. – Tasks of higher priority can preempt those of lower priority. – If two or more tasks of the same priority are ready to run simultaneously, they run in round-robin fashion. Thread Scheduling ThreadPriority.Highest ThreadPriority.AboveNormal A B ThreadPriority.Normal C ThreadPriority.BelowNormal D E F ThreadPriority.Lowest Default priority is Normal.
    [Show full text]
  • Parallelization Hardware Architecture Type to Enter Text
    Parallelization Hardware architecture Type to enter text Delft University of Technology Challenge the future Contents • Introduction • Classification of systems • Topology • Clusters and Grid • Fun Hardware 2 hybrid parallel vector superscalar scalar 3 Why Parallel Computing Primary reasons: • Save time • Solve larger problems • Provide concurrency (do multiple things at the same time) Classification of HPC hardware • Architecture • Memory organization 5 1st Classification: Architecture • There are several different methods used to classify computers • No single taxonomy fits all designs • Flynn's taxonomy uses the relationship of program instructions to program data • SISD - Single Instruction, Single Data Stream • SIMD - Single Instruction, Multiple Data Stream • MISD - Multiple Instruction, Single Data Stream • MIMD - Multiple Instruction, Multiple Data Stream 6 Flynn’s Taxonomy • SISD: single instruction and single data stream: uniprocessor • SIMD: vector architectures: lower flexibility • MISD: no commercial multiprocessor: imagine data going through a pipeline of execution engines • MIMD: most multiprocessors today: easy to construct with off-the-shelf computers, most flexibility 7 SISD • One instruction stream • One data stream • One instruction issued on each clock cycle • One instruction executed on single element(s) of data (scalar) at a time • Traditional ‘von Neumann’ architecture (remember from introduction) 8 SIMD • Also von Neumann architectures but more powerful instructions • Each instruction may operate on more than one data element • Usually intermediate host executes program logic and broadcasts instructions to other processors • Synchronous (lockstep) • Rating how fast these machines can issue instructions is not a good measure of their performance • Two major types: • Vector SIMD • Parallel SIMD 9 Vector SIMD • Single instruction results in multiple operands being updated • Scalar processing operates on single data elements.
    [Show full text]