HP IA-64, Ski Simulator manual Overview, Introduction, What You Need to Know to Use This Manual

Page 31

Ski IA-64 Simulator Reference Manual 1.0L

2

Overview

 

 

 

 

2.1Introduction

The Ski simulator is a software package designed to functionally simulate the IA-64 processor architecture at the instruc- tion level. Ski offers an informative, screen-oriented machine state display and a friendly, powerful command interface. Programs may be loaded from disk in executable format; they may be run from start to finish, single-stepped, and break- pointed. Translation lookaside buffers may be simulated. Certain Linux and MS-DOS operating system functions (system calls) are provided for simulation of application programs. These capabilities are complemented by screen-oriented sym- bolic debugging to provide a view into the simulated IA-64 processor.

2.1.1Ski’s Strengths

Ski is particularly well-suited for:

IA-64 application development:

Ski can simulate IA-64 programs in a Linux environment and IA-32 programs in an MS-DOS environment. Ski provides a user interface that looks very much like a typical debugger– but the processor you are debugging on is virtual, simulated by Ski. Ski has successfully executed the SPEC-92 and SPEC-95 benchmark suites.

IA-64 compiler tuning:

Ski provides performance statistics that can help you tune IA-64 compiler code generators. Ski can help you improve your compiler’s use of IA-64 architectural enhancements for parallelism.

IA-64 operating system and firmware development:

Ski can simulate a “raw” IA-64 processor, with no operating system provided. Because of this, you can use Ski to simulate an IA-64 operating system running IA-64 and IA-32 programs. For example, Ski has been used successfully to develop the IA-64 version of the Linux kernel.

IA-64 processor functional hardware verification:

Ski is a true implementation of the IA-64 architecture. You can compare the behavior of code simulated with Ski to the same code running on other IA-64 implementations. This helps you verify the correctness of those implementations.

2.1.2Ski’s Scope

Many different kinds of simulators can be created: device simulators that function at the semiconductor quantum physics level, circuit simulators that model the behavior of small numbers of transistors and other circuit elements, gate simulators that model digital circuits at the boolean logic level, and so on. Ski is an instruction simulator, which makes it very fast. Ski doesn’t model any particular physical IA-64 implementation. Instead, it models an architecturally-compliant IA-64 processor with extensive compute resources.

2.2What You Need to Know to Use This Manual

This manual describes the user interface of Ski in detail. In reading this manual, you will learn how to use Ski to simulate your IA-64 and IA-32 programs. To understand this manual, you should already be familiar with the IA-64 architecture. IA-64 abbreviations such as ip, psr, and eax are used without explanation.

2.3Defects and Defect Reporting

Ski is provided "as is", without any guarantees or warranties. However, a mailing list has been created for reporting Ski defects and for general Ski discussions. See the release notes for details on the mailing list address and how to subscribe.

Copyright © 2000 Hewlett-Packard Co.

Overview

2-1

Image 31
Contents Copyright 2000 Hewlett-Packard Co Ski IA-64 Simulator Reference ManualTrademarks Printing HistorySyntax Conventions How to Use This ManualPreface Font ConventionsItalic+ Table of Contents Ski IA-64 Simulator Reference Manual Vii Ski IA-64 Simulator Reference Manual Viii Table of Contents List of Figures Ski IA-64 Simulator Reference Manual 1.0L List of Tables Ski IA-64 Simulator Reference Manual 1.0L Xii List of Tables Starting xski How to Run an IA-64 Application ProgramGetting Started a Ski Tutorial Ski SimulatorStarting xski From the Command Line Loading Your Program Exiting SkiLoading the hello Program Xski Data Window Inspecting DataChanging the Data Window Display Data Window Showing argv and envp Strings in Hexadecimal Looking at Code Viewing Data in Ascii12. Jumping the Program Window to the Beginning of main Viewing Source Code Mixed In with Assembly Code14. The Program Window Showing a Breakpoint at main Controlling Breakpoints15. The Breakpoint List Window Running a Program16. The Terminal Window After the hello Program is Run Single-stepping a Program18. The Main Window After Reaching the Breakpoint at main+10 Changing Registers and MemorySki IA-64 Simulator Reference Manual 1.0L 20. The xski Register Window After Changing the ip Register 21. The xski Data Window Widened to Show Ascii Next Steps Getting HelpCopyright 2000 Hewlett-Packard Co Defects and Defect Reporting OverviewIntroduction What You Need to Know to Use This ManualSki Variations Using bski for Batch SimulationsX Window System, Motif-based xski Interface Starting Ski Command Line Flags1.1 Summary of Flags XSki FileQuitting Ski Summary of the Quit CommandQuit expression Ski’s Use of Windows Screen PresentationRegister Window Register Window in xski User Registers PaneFloating Point Registers Pane General Registers PaneIA-32 Registers Pane System Registers PaneRegister Window and ski Resizing Register Window Panes with xski1 IA-64 Instruction Display Program WindowSki IA-64 Simulator Reference Manual 1.0L 2 IA-32 Instruction Display Invalid Code and the Program Window Changing the Range of Locations Shown in the Program Window12. xski’s Program Window Showing Illegal Instructions Data WindowChanging the Range of Locations Shown in the Data Window Invalid Code and the Data Window Command/Main WindowXski Main Window 16. xski’s Main Command Window Ski Command WindowOther Windows 17. ski’s Command Window at Bottom18. xski’s Symbol List Window Copyright 2000 Hewlett-Packard Co Command Sequences, Repetition, and Abbreviation Command LanguageCommand Entry Command ArgumentsExpressions Argument SpecificationNumeric Arguments Numbers and CountsXski Evaluating Expressions Ski Simulator Arithmetic and Logic OperatorsProgram-Defined Symbols Symbolic ArgumentsAddresses Filenames Resolving Ambiguous Symbols and NumbersInternal Variables LabelsSki IA-64 Simulator Reference Manual 1.0L Xski Register Window Commands Screen Manipulation CommandsRegister Window Commands Summary of Register Window CommandsSummary of Program Window Commands Program Window CommandsXski’s Program Window Showing IA-64 Assembly Language Code Pd startingaddress endingaddress filename Xski’s Assembly Language Dump WindowDf count Data Window CommandsSummary of Data Window Commands Dj addressDd startingaddress endingaddress filename Xski Showing Data in Raw Hexadecimal and AsciiSki Support for System-Mode Programs Program SimulationApplication-Mode and System-Mode Simulation Ski Support for Application-Mode ProgramsSystem-Mode TLB Simulation Summary of TLB Display CommandsSystem-Mode IA-64 Programs System-Mode IA-32 ProgramsHow to Load a Program Misaligned Data Access TrapProgram Loading Creating the argc, argv, and envp Parameters Summary of Program Loading CommandsLoad filename args+ Adding Information after LoadingProgram Execution Summary of Program Execution CommandsSki IA-64 Simulator Reference Manual 1.0L Program Simulation Interruptions Linux and MS-DOS ABI EmulationLinux Application Environment Linux System Calls Accepted but Ignored by Ski Linux System Calls Supported by SkiProgram I/O MS-DOS Application EnvironmentMS-DOS System Calls in Hexadecimal Supported by Ski Copyright 2000 Hewlett-Packard Co Debugging Changing Registers and Memory with Assignment CommandsSummary of Assignment Commands Examples of Assignment CommandsOriginal Program Loaded in ski Allocation Bit-encoded RegistersProgram Breakpoints Summary of The eval CommandSetting Program Breakpoints Evaluating Formulas and Formatting DataListing Program Breakpoints Deleting Program BreakpointsUnexpected Breakpoints Summary of Program Breakpoint CommandsBs address Deleting Data Breakpoints Setting Data BreakpointsSummary of Data Breakpoint Commands Data BreakpointsDumping Registers and Memory to a File Symbol Table CommandsSummary of Save and Restore Commands Summary of Symbol CommandsIsyms filename Symlist Output from xskiSki IA-64 Simulator Reference Manual 1.0L Debugging Initialization File Command FilesLabels and Control Flow in Command Files Goto Command and LabelsAn Example Command File Comments in Command FilesIf Command Label Summary of Command File Commandsfilename # commentSki IA-64 Simulator Reference Manual 1.0L Command Files =s address stringwithoutspaces Command ReferenceDbd breakpointnumber Dbs address length rwrwEval expressionwithoutspaces+ Help commandnameRest filename Quit returnvalueforshellStep until expressionwithoutspaces Ski IA-64 Simulator Reference Manual 1.0L IA-64 Registers Register NamesRegister Names Copyright 2000 Hewlett-Packard Co Register Names B-3 Ski IA-64 Simulator Reference Manual 1.0L Copyright 2000 Hewlett-Packard Co Register Names B-5 Ski IA-64 Simulator Reference Manual 1.0L Register Names Internal Variables Internal Variable NamesCopyright 2000 Hewlett-Packard Co All breakpoints deleted Simulator Status and Error MessagesSimulator Status and Error Messages Expression Help Unknown command %s Missing ELF header Not an IA-64 file Stopping at %s due to unimplemented instruction Usage %s options file args