Main
AMD SimNow Simulator 4.4.4
Users Manual
Advanced Micro Devices, Inc. One AMD Place Sunnyvale, CA 94088 simnow@amd.com
Page
Contents
Page
Page
Page
Page
Page
Figures
Page
Tables
Page
1 Overview
Page
2 Installation
2.1 System Requirements
2.2 Installation Procedure
2.3 Directory Structure and Executable
2.4 Setting up Linux for the Simulator
2.5 Configuration File
2.6 Updates and Questions
3 Graphical User Interface
3.1 Tool Bar Buttons
Page
3.2 Device Window
3.2.1 Add a New Device
3.2.2 Workspace Popup Menu
Page
Page
3.2.3 Example Computer Description
Page
3.2.4 Device Window Quick Reference
3.3 Device Groups
3.3.1 Terms
3.3.2 Concept Diagrams
3.3.3 Working with Device Groups
3.3.4 Shell Automation Commands for Device Groups
3.3.5 Device Group Examples
Page
Page
Page
3.3.6 Creating a Device Group
3.4 Main Window
3.4.1 SimStats and Diagnostic Ports
3.4.2 CPU-Statistics Graphs
Page
3.4.3 Simulated Video
3.4.4 Hard Disk and Floppy Display
3.4.5 Using Hard Drive, DVD-/CD-ROM and Floppy Images
3.4.6 Registry Window
3.4.7 Help, Problems and Bug Reports
Page
4 Disk Images
4.1 Creating A Blank Hard-Drive Image
Page
Page
Page
5 Running the Simulator
5.1 Command-Line Arguments
5.1.1 Open a Simulation Definition File
Page
5.2 Installing an Operating System
5.2.1 Assigning Disk-Images
Page
5.2.2 Run The Simulation
5.2.3 Interaction with the Simulated Machine
5.2.4 Simulation Reset
5.3 Multi-Machine Support
Page
Page
Page
6 Create a Simulated Computer
6.1 BSD Files
6.2 Device Placement
Page
6.3 Solo.bsd Device Configuration
6.4 Save and Run
AMD Confidential User Manual September 12th, 2008
Chapter 7: Device Configuration 49
7 Device Configuration
AMD Confidential User Manual September 12h, 2008
50 Chapter 7: Device Configuration
7.1 AweSim Processor Device
Page
Page
7.2 Debugger Device
7.3 DIMM Device
Page
Page
Page
Page
Page
7.4 Emerald Graphics Device
Page
Page
AMD Confidential User Manual September 12h, 2008
64 Chapter 7: Device Configuration
7.5 Matrox MGA-G400 PCI/AGP
Page
Page
Page
Page
Page
AMD Confidential User Manual September 12th, 2008
Chapter 7: Device Configuration 71
Page
Page
7.6 Super IO Devices: Winbond W83627HF SIO / ITE 8712 SIO
Page
Page
7.7 Memory Device
Page
Page
7.8 PCA9548 SMB Device
7.9 PCA9556 SMB Device
7.10 AMD 8th Generation Integrated Northbridge Device
Page
Page
Page
7.11 AMD-8111 Southbridge Devices IO Hubs
Page
Page
Page
Page
Page
7.12 PCI BUS Device
Page
7.13 AMD-8131 PCI-X Controller
7.14 AMD-8132 PCI-X Controller
Page
7.15 PCI-X Test Device
7.16 AMD-8151 AGP Bridge Device
Page
7.17 Raid Device: Compaq SmartArray 5304
7.18 SMB Hub Device
Page
7.19 AT24C Device
7.20 EXDI Server Device
7.21 USB Keyboard and USB Mouse Devices
7.22 XTR Device
7.22.1 Using XTR
Page
Page
7.22.2 XTR Structure
Page
7.22.3 ModeFlags
AMD Confidential User Manual September 12th, 2008
Chapter 7: Device Configuration 113
7.22.4 Limitations
7.22.5 Example XTR XML File
AMD Confidential User Manual September 12h, 2008
114 Chapter 7: Device Configuration
AMD Confidential User Manual September 12th, 2008
Chapter 7: Device Configuration 115
AMD Confidential User Manual September 12h, 2008
116 Chapter 7: Device Configuration
AMD Confidential User Manual September 12th, 2008
Chapter 7: Device Configuration 117
AMD Confidential User Manual September 12h, 2008
118 Chapter 7: Device Configuration
7.23 JumpDrive Device
7.24 E1000 Network Adapter Device
7.24.1 Simulated Link Negotiation
Simulator Process
7.24.2 The Mediator Daemon
7.24.3 MAC Addresses for use with the Adapter
7.24.4 Example Configurations
Page
7.24.5 Visibility Diagram
7.25 Plug and Play Monitor Device
Page
7.26 ATI SB400/SB600/SB700 Southbridge Devices
Page
7.27 ATI RS480/RS780/RD790/RD890 Northbridge Devices
7.28 AMD Istanbul Device
7.29 AMD Sao Paulo Device
7.30 AMD Magny-Cours Device
Page
AMD Confidential User Manual September 12th, 2008
Chapter 8: PCI Configuration Viewer 135
8 PCI Configuration Viewer
Figure 8-1: PCI Configuration Viewer
8.1 Scanning PCI Buses
8.2 Modifying the PCI Configuration contents
9 Logging
9.1 Message Log
Page
9.2 Error Log
9.3 I/O Logging
Page
Page
10 CPU Debugger
10.1 Using the CPU Debugger
10.1.1 Setting a Breakpoint
10.1.2 Single Stepping the Simulation
10.1.3 Stepping Over an Instruction
10.1.4 Skipping an Instruction
10.1.5 Viewing a Memory Region
10.1.6 Reading PCI Configuration Registers
10.1.7 Reading CPU MSR Contents
10.1.8 Find Pattern in Memory
10.2 Debugger Command Reference
Page
Page
Page
11 Debug Interface
11.1 Kernel Debugger
11.2 GDB Interface
11.2.1 Simple Approach
11.2.2 Alternate Approach
11.2.3 Using Another Port on the Same Machine
11.2.4 Using Two Separate Machines
11.3 Linux Host Serial Port Communication
Page
12 Command API
AMD Confidential User Manual September 12h, 2008
156 Chapter 12: Command API
13 DiskTool
13.1 Command-Line Mode
13.2 GUI Mode
Page
Page
Page
Page
14 BIOS Developers Quick Start Guide
14.1 Loading a BIOS Image
14.2 Changing DRAM Size
14.3 Changing SPD Data
14.4 Clearing CMOS
14.5 Logging PCI Configuration Cycles
14.6 Logging CPU Cycles
14.7 Creating a Floppy-Disk Image
Page
15 Frequently Asked Questions (FAQ)
15.1.1 Terms
15.1.2 Concept Diagrams
15.1.3 Working with Device Groups
15.1.4 Shell Automation Commands for Device Groups
Page
15.1.5 Device Group Examples
Page
Page
15.1.6 Creating a Device Group
Page
Page
Page
A Appendix
A.1 Format of Floppy and Hard-Drive Images
AMD Confidential User Manual September 12h, 2008
182 Appendix A
A.2 Bill of Material
A.2.1 Computer Platform Files (BSD)
Table 15-1: Computer Platform Files (BSD)
A.2.2 Device Files (*.BSL)
AMD Confidential User Manual September 12th, 2008
A.2.4.1 Hard-Disk Image Files
AMD Confidential User Manual September 12h, 2008
184 Appendix A
A.2.4.2 Memory SPD Files
A.3 Supported Guest Operating Systems
AMD Confidential User Manual September 12h, 2008
186 Appendix A
A.4 CPUID
A.4.1 CPUID Standard Feature Support (Standard Function 0x01)
AMD Confidential User Manual September 12th, 2008
Appendix A 187
A.4.2 CPUID AMD Feature Support (Extended Function 0x80000001)
A.5 Known Issues
A.5.1 FSAVE/FRSTOR and FSTENV/FLDENV
A.5.2 Triple Faulting
A.5.3 Performance-Monitoring Counter Extensions
A.5.4 Microcode Patching
Page
A.6 Instruction Reference
A.6.1 Notation
A.6.1.1 Mnemonic Syntax
Page
A.6.1.2 Opcode Syntax
AMD Confidential User Manual September 12th, 2008
Appendix A 193
A.6.2 General Purpose Instructions
AMD Confidential User Manual September 12h, 2008
194 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 195
AMD Confidential User Manual September 12h, 2008
196 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 197
AMD Confidential User Manual September 12h, 2008
198 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 199
AMD Confidential User Manual September 12h, 2008
200 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 201
AMD Confidential User Manual September 12h, 2008
202 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 203
AMD Confidential User Manual September 12h, 2008
204 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 205
AMD Confidential User Manual September 12h, 2008
206 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 207
AMD Confidential User Manual September 12h, 2008
208 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 209
AMD Confidential User Manual September 12h, 2008
210 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 211
AMD Confidential User Manual September 12h, 2008
212 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 213
AMD Confidential User Manual September 12h, 2008
214 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 215
AMD Confidential User Manual September 12h, 2008
216 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 217
AMD Confidential User Manual September 12h, 2008
218 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 219
AMD Confidential User Manual September 12h, 2008
220 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 221
A.6.3 System Instructions
AMD Confidential User Manual September 12h, 2008
222 Appendix A
AMD Confidential User Manual September 12th, 2008
Appendix A 223
A.6.3.1 INT Interrupt to Vector
Interrupt to Debug Vector.
Description
Instruction
Opcode
A.6.4 Virtualization Instru ction Reference
A.6.5 64-Bit Media Instruction Reference
A.6.6 3DNow! Instruction Set
AMD Confidential User Manual September 12th, 2008
Appendix A 225
A.6.7 Extension to the 3DNow! Instruction Set
This section describes the five new DSP instructions added to the 3DNow! Instruction set.
Table 15-11: Extension to 3DNow! Instruction Reference
A.6.8 Prescott New Instructions
A.6.8.1 MONITOR Setup Monitor Address
MONITOR
A.6.8.2 MWAIT Monitor Wait
A.7 Automation Commands
A.7.1 Shell
Page
Page
Page
A.7.2 IDE
A.7.3 USB
A.7.4 CMOS
A.7.5 ACPI
A.7.6 Floppy
A.7.7 Debug
A.7.8 AMD-8151 AGP Bridge
A.7.9 VGA
A.7.10 Serial
Page
A.7.11 HyperTransport Technology Configuration
A.7.12 8th Generation Northbridge
A.7.13 DBC
A.7.14 AMD-8111 Device
A.7.15 EHC
A.7.16 Journal
A.7.17.1 Profiling in SimNow Technology
Page
A.7.17.2 CPU Code Generator Commands
A.7.18 Emerald Graphics
A.7.19 Matrox MGA-G400 Graphics
A.7.20 PCI Bus
A.7.21 SIO
A.7.22 Memory Device
A.7.23 Raid
A.7.24 DIMM
Automation Command
Description
ResetPDL sets all 16 PDL response ranges to their maximum range (0 - 255).
Description
A.7.25 Keyboard and Mouse
Table 15-14 shows the currently defined prefix sequences:
Action
Prefix
A.7.26 JumpDrive
Description
Automation Command
Automation Command
Description
To initialize the JumpDrive, and copy data to it:
Page
A.7.27 E1000
Description
Automation Command
Description
Automation Command
A.7.29 ATI SB400/SB600/SB700
A.7.30 ATI RS480
A.7.31 ATI RS780
A.7.32 ATI RD790/RD780/RX780
A.7.33 ATI RD890S/RD890/RD780S/RX880
Page
AMD Confidential User Manual September 12th, 2008
Index 255
Index
AMD Confidential User Manual September 12h, 2008
256 Index