AMD Switch 445 User Manual

AMD SimNow™ Simulator  
4.4.5  
User’s Manual  
Revision  
Date  
2.01  
November 2008  
Advanced Micro Devices, Inc.  
One AMD Place  
Sunnyvale, CA 94088  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Contents  
Figures................................................................................................................................ ix  
Tables................................................................................................................................. xi  
1
2
Overview..................................................................................................................... 1  
Installation................................................................................................................... 3  
2.1  
System Requirements.......................................................................................... 3  
Installation Procedure ......................................................................................... 3  
Directory Structure and Executable.................................................................... 4  
Setting up Linux for the Simulator ..................................................................... 4  
Configuration File............................................................................................... 5  
Updates and Questions........................................................................................ 6  
2.2  
2.3  
2.4  
2.5  
2.6  
3
Graphical User Interface............................................................................................. 7  
3.1  
3.2  
3.2.1  
3.2.2  
3.2.2.1  
3.2.2.2  
Tool Bar Buttons................................................................................................. 7  
Device Window .................................................................................................. 9  
Add a New Device.................................................................................... 10  
Workspace Popup Menu........................................................................... 10  
Add Connection.............................................................................. 11  
Configure Device............................................................................ 12  
Disconnect Device ......................................................................... 12  
Delete Device.................................................................................. 13  
Example Computer Description................................................................ 13  
Device Window Quick Reference ......................................................... 15  
Device Groups .................................................................................................. 15  
Terms ........................................................................................................ 16  
Concept Diagrams..................................................................................... 17  
Working with Device Groups................................................................... 18  
Shell Automation Commands for Device Groups .................................... 19  
3.2.2.3  
3.2.2.4  
3.2.3  
3.2.4  
3.3  
3.3.1  
3.3.2  
3.3.3  
3.3.4  
3.3.4.1  
3.3.4.2  
3.3.5  
3.3.5.1  
Device Tree..................................................................................... 19  
Enabled vs. Disabled vs. Mixed................................................... 20  
Device Group Examples ........................................................................... 21  
Example: 1GB DDR2 memory..................................................... 21  
Example: Quad-Core Node .......................................................... 22  
Example: SuperIO device ............................................................. 24  
Creating a Device Group (GUI)................................................................ 24  
Creating a Device Group (Automation Commands) ................................ 27  
Ungrouping a created device group .......................................................... 29  
Main Window ................................................................................................... 29  
SimStats and Diagnostic Ports.................................................................. 29  
CPU-Statistics Graphs .............................................................................. 30  
3.3.5.2  
3.3.5.3  
3.3.6  
3.3.7  
3.3.8  
3.4  
3.4.1  
3.4.2  
3.4.2.1  
3.4.2.2  
3.4.2.3  
3.4.2.4  
Translation Graph........................................................................... 30  
Real MIPS Graph........................................................................... 30  
Invalidation Rate Graph ................................................................ 31  
Exception Rate Graph................................................................... 31  
Contents  
iii  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
3.4.2.5  
3.4.2.6  
3.4.3  
3.4.4  
3.4.5  
3.4.6  
3.4.7  
PIO Rate Graph.............................................................................. 31  
MMIO Rate Graph.......................................................................... 32  
Simulated Video........................................................................................ 32  
Hard Disk and Floppy Display ................................................................. 32  
Using Hard Drive, DVD-/CD-ROM and Floppy Images......................... 33  
Registry Window ...................................................................................... 33  
Help, Problems and Bug Reports.............................................................. 34  
4
5
Disk Images .............................................................................................................. 35  
4.1  
Creating A Blank Hard-Drive Image................................................................ 35  
Running the Simulator.............................................................................................. 39  
5.1  
5.1.1  
5.2  
Command-Line Arguments .............................................................................. 39  
Open a Simulation Definition File............................................................ 40  
Installing an Operating System......................................................................... 42  
Assigning Disk-Images............................................................................. 42  
Run The Simulation.................................................................................. 44  
Interaction with the Simulated Machine................................................... 45  
Simulation Reset....................................................................................... 45  
Multi-Machine Support..................................................................................... 45  
5.2.1  
5.2.2  
5.2.3  
5.2.4  
5.3  
6
7
Create a Simulated Computer ................................................................................... 49  
6.1  
BSD Files.......................................................................................................... 49  
Device Placement.............................................................................................. 49  
Solo.bsd Device Configuration......................................................................... 51  
Save and Run .................................................................................................... 52  
6.2  
6.3  
6.4  
Device Configuration................................................................................................ 53  
7.1  
AweSim Processor Device................................................................................ 55  
Debugger Device .............................................................................................. 58  
DIMM Device................................................................................................... 59  
Emerald Graphics Device ................................................................................. 65  
Matrox MGA-G400 PCI/AGP.......................................................................... 69  
Super IO Devices: Winbond W83627HF SIO / ITE 8712 SIO........................ 78  
Memory Device ................................................................................................ 81  
PCA9548 SMB Device..................................................................................... 84  
PCA9556 SMB Device..................................................................................... 85  
7.2  
7.3  
7.4  
7.5  
7.6  
7.7  
7.8  
7.9  
7.10 AMD 8th Generation Integrated Northbridge Device ...................................... 86  
7.11 AMD-8111™ Southbridge Devices – IO Hubs................................................ 90  
7.12 PCI BUS Device ............................................................................................... 96  
7.13 AMD-8131™ PCI-X® Controller..................................................................... 98  
7.14 AMD-8132™ PCI-X® Controller..................................................................... 99  
7.15 PCI-X Test Device.......................................................................................... 101  
7.16 AMD-8151™ AGP Bridge Device................................................................. 102  
7.17 Raid Device: Compaq SmartArray 5304 ........................................................ 104  
7.18 SMB Hub Device............................................................................................ 105  
7.19 AT24C Device ................................................................................................ 107  
7.20 EXDI Server Device ....................................................................................... 108  
7.21 USB Keyboard and USB Mouse Devices....................................................... 109  
7.22 XTR Device .................................................................................................... 110  
iv  
Contents  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.22.1  
Using XTR.............................................................................................. 111  
7.22.1.1 Recoding XTR Trace................................................................... 111  
7.22.1.2 Stop XTR Record......................................................................... 111  
7.22.1.3 XTR Playback............................................................................... 111  
7.22.1.4 Stop XTR Playback...................................................................... 112  
7.22.2  
XTR Structure......................................................................................... 114  
7.22.2.1 XML Structure............................................................................... 114  
7.22.2.2 XTR Binary File Contents ........................................................... 116  
7.22.3  
7.22.4  
7.22.5  
ModeFlags............................................................................................... 116  
Limitations.............................................................................................. 117  
Example XTR XML File ........................................................................ 117  
7.23 JumpDrive Device .......................................................................................... 123  
7.24 E1000 Network Adapter Device..................................................................... 124  
7.24.1  
7.24.2  
7.24.3  
7.24.4  
Simulated Link Negotiation.................................................................... 125  
The Mediator Daemon ............................................................................ 126  
MAC Addresses for use with the Adapter .............................................. 127  
Example Configurations ......................................................................... 127  
7.24.4.1 Absolute NIC................................................................................. 127  
7.24.4.2 Client-Server simulated network................................................ 128  
7.24.4.3 Isolated Client-Server simulated network (Same process) ... 128  
7.24.5  
Visibility Diagram .................................................................................. 129  
7.25 Plug and Play Monitor Device........................................................................ 130  
7.26 ATI SB400/SB600/SB700 Southbridge Devices............................................ 132  
7.27 ATI RS480/RS780/RD790/RD890 Northbridge Devices .............................. 134  
7.28 AMD “Istanbul” Device ................................................................................. 135  
7.29 AMD “Sao Paulo” Device .............................................................................. 136  
7.30 AMD “Magny-Cours” Device........................................................................ 137  
PCI Configuration Viewer ...................................................................................... 139  
8
9
8.1  
8.2  
Scanning PCI Buses........................................................................................ 140  
Modifying the PCI Configuration contents..................................................... 140  
Logging................................................................................................................... 141  
9.1  
9.2  
9.3  
Message Log................................................................................................... 141  
Error Log......................................................................................................... 143  
I/O Logging..................................................................................................... 144  
CPU Debugger.................................................................................................... 147  
10  
10.1 Using the CPU Debugger................................................................................ 147  
10.1.1  
10.1.2  
10.1.3  
10.1.4  
10.1.5  
10.1.6  
10.1.7  
10.1.8  
Setting a Breakpoint................................................................................ 147  
Single Stepping the Simulation............................................................... 148  
Stepping Over an Instruction .................................................................. 148  
Skipping an Instruction........................................................................... 149  
Viewing a Memory Region..................................................................... 149  
Reading PCI Configuration Registers..................................................... 150  
Reading CPU MSR Contents.................................................................. 150  
Find Pattern in Memory.......................................................................... 151  
10.2 Debugger Command Reference...................................................................... 151  
Debug Interface................................................................................................... 155  
11  
Contents  
v
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
11.1 Kernel Debugger............................................................................................. 155  
11.2 GDB Interface................................................................................................. 156  
11.2.1  
11.2.2  
11.2.3  
11.2.4  
Simple Approach .................................................................................... 156  
Alternate Approach................................................................................. 157  
Using Another Port on the Same Machine ............................................. 157  
Using Two Separate Machines ............................................................... 157  
11.3 Linux Host Serial Port Communication.......................................................... 157  
Command API .................................................................................................... 159  
DiskTool ............................................................................................................. 161  
13.1 Command-Line Mode..................................................................................... 161  
13.2 GUI Mode....................................................................................................... 162  
BIOS Developer‟s Quick Start Guide................................................................. 167  
14.1 Loading a BIOS Image ................................................................................... 167  
14.2 Changing DRAM Size.................................................................................... 167  
14.3 Changing SPD Data ........................................................................................ 168  
14.4 Clearing CMOS .............................................................................................. 169  
14.5 Logging PCI Configuration Cycles ................................................................ 169  
14.6 Logging CPU Cycles ...................................................................................... 170  
14.7 Creating a Floppy-Disk Image........................................................................ 171  
Frequently Asked Questions (FAQ) ................................................................... 173  
Appendix................................................................................................................. 177  
12  
13  
14  
15  
A
A.1  
A.2  
Format of Floppy and Hard-Drive Images...................................................... 177  
Bill of Material................................................................................................ 178  
A.2.1  
A.2.2  
A.2.3  
A.2.4  
Computer Platform Files (BSD) ............................................................. 178  
Device Files (*.BSL) .............................................................................. 178  
Product Files (*.ID) ................................................................................ 179  
Image Files (*.HDD, *.FDD, *.ROM, *.SPD, *.BIN) ........................... 179  
A.2.4.1 Hard-Disk Image Files........................................................................ 179  
A.2.4.2 Memory SPD Files.............................................................................. 180  
Supported Guest Operating Systems .............................................................. 181  
CPUID............................................................................................................. 182  
A.3  
A.4  
A.4.1  
A.4.2  
A.5  
A.5.1  
A.5.2  
CPUID Standard Feature Support (Standard Function 0x01)................. 182  
CPUID AMD Feature Support (Extended Function 0x80000001)......... 183  
Known Issues.................................................................................................. 184  
FSAVE/FRSTOR and FSTENV/FLDENV............................................ 184  
Triple Faulting ........................................................................................ 184  
Performance-Monitoring Counter Extensions........................................ 184  
Microcode Patching ................................................................................ 184  
Instruction Coherency............................................................................. 184  
A.5.3  
A.5.4  
A.5.5  
A.6  
Instruction Reference...................................................................................... 186  
A.6.1  
Notation................................................................................................... 186  
A.6.1.1 Mnemonic Syntax ............................................................................... 186  
A.6.1.2 Opcode Syntax.................................................................................... 188  
A.6.2  
A.6.3  
General Purpose Instructions.................................................................. 189  
System Instructions................................................................................. 220  
A.6.3.1 INT Interrupt to Vector.................................................................... 222  
vi  
Contents  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
A.6.3.2 IRET Return from Interrupt............................................................. 223  
A.6.4  
Virtualization Instruction Reference....................................................... 223  
64-Bit Media Instruction Reference........................................................ 223  
3DNow!™ Instruction Set ...................................................................... 224  
Extension to the 3DNow! Instruction Set ............................................... 225  
Prescott New Instructions ....................................................................... 225  
A.6.5  
A.6.6  
A.6.7  
A.6.8  
A.6.8.1 MONITOR Setup Monitor Address................................................. 226  
A.6.8.2 MWAIT Monitor Wait..................................................................... 226  
Automation Commands .................................................................................. 227  
A.7  
A.7.1  
A.7.2  
Shell ........................................................................................................ 228  
IDE.......................................................................................................... 232  
USB......................................................................................................... 233  
CMOS ..................................................................................................... 234  
ACPI ....................................................................................................... 234  
Floppy ..................................................................................................... 234  
Debug...................................................................................................... 234  
AMD-8151™ AGP Bridge..................................................................... 235  
VGA........................................................................................................ 235  
A.7.3  
A.7.4  
A.7.5  
A.7.6  
A.7.7  
A.7.8  
A.7.9  
A.7.10 Serial ....................................................................................................... 235  
A.7.11 HyperTransport™ Technology Configuration ....................................... 237  
A.7.12 8th Generation Northbridge ..................................................................... 238  
A.7.13 DBC ........................................................................................................ 238  
A.7.14 AMD-8111™ Device.............................................................................. 238  
A.7.15 EHC......................................................................................................... 239  
A.7.16 Journal..................................................................................................... 239  
A.7.17 CPU......................................................................................................... 239  
A.7.17.1  
A.7.17.2  
Profiling in SimNow™ Technology............................................... 239  
CPU Code Generator Commands................................................... 241  
A.7.18 Emerald Graphics.................................................................................... 241  
A.7.19 Matrox MGA-G400 Graphics................................................................. 242  
A.7.20 PCI Bus ................................................................................................... 242  
A.7.21 SIO.......................................................................................................... 242  
A.7.22 Memory Device ...................................................................................... 243  
A.7.23 Raid......................................................................................................... 244  
A.7.24 DIMM ..................................................................................................... 245  
A.7.25 Keyboard and Mouse .............................................................................. 246  
A.7.26 JumpDrive............................................................................................... 247  
A.7.27 E1000...................................................................................................... 250  
A.7.28 XTR......................................................................................................... 250  
A.7.29 ATI SB400/SB600/SB700...................................................................... 251  
A.7.30 ATI RS480.............................................................................................. 251  
A.7.31 ATI RS780.............................................................................................. 252  
A.7.32 ATI RD790/RD780/RX780.................................................................... 252  
A.7.33 ATI RD890S/RD890/RD780S/RX880................................................... 252  
Index ............................................................................................................................... 254  
Contents  
vii  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
viii  
Contents  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Figures  
Figures  
ix  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
x
Figures  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Tables  
Tables  
xi  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
xii  
Figures  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
1 Overview  
The AMD SimNowsimulator is an AMD64 technology-compatible x86 platform  
simulator for AMD's family of processors. It is designed to provide an accurate model of  
a computer system from the program, OS, and programmer's point of view. It allows fast  
simulation of an entire computer system, plus standard debugging features such as break-  
pointing, memory-viewing, and single-stepping. The simulator allows such work as BIOS  
and OS development, memory-parameter tuning, and multi-processor system simulation.  
Section 2.1, “System Requirements, on page 3 describes supported host Operating  
Systems. Section A.3, “Supported Guest Operating Systems, on page 180 describes  
supported guest Operating Systems.  
The simulator has between a 10:1 and 100:1 slowdown rate from the host CPU,  
depending on whether the workload is in the CPU core or accessing simulated devices  
intensively.  
The simulator is designed to create an accurate model of a system from the program‟s  
view. Device models contain all the program-visible state but the actual functionality is  
abstracted. In many cases only the functionality needed to satisfy the software is  
implemented. Software may be run on the simulator in an unmodified form. This includes  
BIOS, drivers, O/S, and applications.  
The simulator has a concept of time, but it is not a cycle-accurate simulator. The basic  
timing mechanism is an instruction; all instructions execute in the same amount of time  
and are one tick in length. This "tick" time is scaled and used by the rest of the system.  
Long-latency events, like disk or floppy access, have some minimum latency built in  
because we found legacy software that relied on the physical latency of these peripherals.  
The simulator contains all the classic pieces of a PC system (CPU, memory, Northbridge,  
Southbridge, display, IDE drives, floppy, keyboard, and mouse support). Images (hard  
disk, DVD/CD-ROM, and floppy) can be created in custom sizes with the DiskTool  
program (Section 13, DiskTool, on page 161) that is provided with the simulator. A  
simulation can be saved at any point in the simulation to a media file, from which the  
simulation can be re-run at a later time.  
A simple diagnostic port model (known as "Port80" device) displays values written by  
the BIOS in a pane of the simulator's main window. Other panes display guest (simulated  
machine) and simulator host processor times. The simulator requires several files to be  
specified. Binary files containing the BIOS and disk images are stored in the images  
directory. The simulator home directory stores *.bsd” files which contain the  
configuration of the system (how models are connected together and their settings) and  
the logical state of all the devices in the simulator. When starting a simulation from reset,  
the “*.bsd” file is rather small and only contains the configuration information. When the  
simulation starts, the simulated memory is allocated. When the simulation is halted and  
Chapter 1: Overview  
1
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
saved, the “*.bsd” file will have grown significantly, slightly larger than the size of  
simulated memory.  
The graphics device supplied with the simulator is a 2D and 3D graphics card with linear  
frame buffer and DirectX 6 support. AMD currently plans to provide a graphics model  
with the simulator which will also have modern 3D hardware acceleration, including  
Microsoft® DirectX 9/10 support.  
The simulator is available in two versions: Public Release and Full Release. Table 1-1  
shows the detailed feature matrix:  
Feature  
Public Release  
Full Release  
Limited  
DIMM configuration  
No 4 Gb limitation of simulated memory  
Available devices  
Limited  
Limited  
Available platform definition files (BSDs)  
Devices can be added and removed from platform definition files  
Connecting and disconnecting devices  
Ships with a variety of different CPU cores (Product Files)  
Full product support  
Limited  
Analyzer support  
Support of simulated multi-processor systems (up to 16 CPUs)  
1
Table 1-1: Feature Overview Public Release versus Full Release  
To get more information about how to obtain the full release version of the simulator  
please send an email to [email protected].  
1 Support of up to two cores.  
2
Chapter 1: Overview  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
2 Installation  
2.1 System Requirements  
The AMD SimNowsimulator runs on both Linux 64 for AMD systems and  
Windows® for 64-bit AMD systems.  
The requirements for each system are as follows:  
Windows® XP 64Bit Edition for  
Linux 64 for AMD64  
AMD64  
Any of the following 64-Bit Windows XP x64 Edition or  
Linux distributions for AMD64.  
Windows Server 2003 x64  
Edition for AMD64.  
SuSE 9 Pro and newer  
RedHat 64Bit Enterprise 3  
and above  
OS Distribution  
Fedora Core 2 and newer.  
SuSE 9.1 or newer for AMD64.  
Approx. 64MB of memory, plus  
Recommended  
Build 1218 or newer.  
Memory  
Approx. 150 MB of memory for each simulated processor, plus the  
amount of simulated RAM.  
Processor  
AMD Athlon™ 64 or AMD Opteron™.  
1 Gigabyte of free hard disk space for the simulator and devices  
plus 3 Gigabytes free space for disk file images.  
3.5-inch, 1.44-MB floppy drive.  
Hard Disk Space  
Other Hardware  
CD-ROM Drive.  
Table 2-1: Software and Hardware Requirements  
Running the simulator on a Linux kernel prior to version 2.6.10 may cause the simulator  
to malfunction. The bug is in the 64-bit path only, and the symptom is in signals that are  
not associated with "system calls" still being treated as "system calls" as they go back to  
user space, i.e. in certain cases it tries to restart the "system call" even when it did not  
come from a "system call". Updating the Linux kernel to kernel version 2.6.10 or later  
resolves this problem.  
The simulator may stress the system more than most applications, including the base  
operating system. AMD has received reports that the simulator has caused some systems  
to crash, and in general this has been traced to unstable hardware. Hardware instability  
can also crash applications or operating systems inside the simulator.  
2.2 Installation Procedure  
Insert the CD-ROM into your system's CD-ROM drive, or download the simulator  
program and its data files from http://developer.amd.com/simnow.aspx. Browse to the  
root directory of the CD or to the path where the downloaded simulator is stored, and  
Chapter 2: Installation  
3
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
begin the installation, as follows. To install under Windows, double-click on the self-  
extracting executable. To install under Linux, extract the zipped tar file as shown below:  
tar xzf Simnow-Linux64-<version>.tar.gz  
2.3 Directory Structure and Executable  
After the opening screen and license agreement are displayed, you will be prompted to  
choose an installation directory. When you select this, the install program will copy the  
executable files and device models to the selected directory and setup the registry entries  
necessary to run the simulator.  
The install program will create the following subdirectories under the install directory:  
Contains the simulator’s executable, DiskTool, libraries, and BSD files.  
analyzers  
devices  
doc  
Contains CPU analyzers.  
Contains the simulator's device models.1  
Contains the latest versions of the simulator documentation.  
Contains the simulator’s help files.  
help  
icons  
Contains icons used by the simulator’s GUI components.  
Contains image files.  
images  
productfile  
reg  
Contains processor-id files.  
Contains register script files used to register simulator components.  
Contains the Emerald BIOS changes and analyzer header files.  
Contains utilities used to prepare images and register components for the simulation.  
devel  
tools  
1 Under Windows each model is a Windows DLL. Under Linux each model is a Linux library. Each model has a ".bsl"  
extension.  
2.4 Setting up Linux for the Simulator  
Make a file: "/etc/sysctl.conf" (or add to the existing one)  
# This is here to make sure we get enough "mmap"able virtual address  
# space, in 4K pages. It defaults to 65536, which is generally  
# too small.  
vm.max_map_count = 1048576  
# This line doesn't need to be here for newer Linux kernels, but some  
# early AMD64 Linux kernels would log SEGVs even if a process had a  
# handler for them, which is what SimNow does.  
debug.exception-trace = 0  
Example 2-1: Setting up Linux for the Simulator  
Then run "sysctl -p", or make sure the boot sequence does this if you don't want to run it  
at each reboot.  
Newer Linux distributions may set a per-process memory limit by default. SimNow  
allocates a large amount of memory that is never touched. This untouched memory will  
not be backed by DRAM or swap, but Linux counts it against SimNows process memory  
limit when it comes to resource limits.  
4
Chapter 2: Installation  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
You can unset the per-process memory limits by running the following commands as  
root.  
ulimit -m unlimited  
ulimit -v unlimited  
2.5 Configuration File  
The simulator's configuration file is a text file that may be edited and that is stored in  
different locations depending on which host OS you are using.  
If you are using Windows as host operating system the configuration file is located in:  
C:\Documents and Settings\All Users\Application Data\simnowrc  
If you are using Linux as host operating system the configuration file is located in:  
$HOME/.qt/simnowrc  
Here is an example of the contents of this file, with an explanation:  
[General]  
[UserKeys]  
CTL-ESC=Sends a CTL-ESC to the application,1D 01 81 9D  
ALT-F4=Sends an ALT-F4 to the application,38 3e be b8  
[UserBottons]  
BUTTON0=”MyIconPath\MyIcon.png”,“cpu.name”  
The configuration file is divided into sections, with each section title enclosed in square  
brackets. This particular example includes three sections, named [General], [UserKeys]  
and [UserBottons].  
All user key definitions are stored in the [UserKeys] section. Each user key definition is  
defined by a single line. This example defines two user keys. The string to the left of the  
equal sign is the string that will be placed in the menu. To the right of the equal sign are  
two strings, separated by a comma. The first string is the text that is displayed when the  
user clicks on the "What's This" help button, and the second string is the list of scan codes  
that are sent when this menu item is selected.  
The two examples shown can also be generated by the “Generate Key Codesmenu item  
on the “Special Keyboard” menu, see Section 5.2.3, “Interaction with the Simulated  
All user button definitions are stored in the [UserButtons] section. Each user button  
definition is defined by a single line. This example defines one user button (BUTTON0).  
The string to the left of the equal sign is the path including the file name of the icon that  
will be placed in the toolbar menu. To the right of the equal sign is the string that  
Chapter 2: Installation  
5
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
represents the automation command (please refer to Section A.7, “Automation  
Commands, on page 227) that will be executes when the user clicks on the defined user  
button.  
Note that minimal parsing of the text is done, so it is important that no spaces exist  
around the separating comma.  
2.6 Updates and Questions  
Please refer to the Release Notes located at "SimNow\docs" to obtain the latest  
information about the simulator. If you have any question regarding the simulator please  
refer to Section 15, Frequently Asked Questions (FAQ)”, on page 173 or contact your  
AMD account representative.  
Appendixes are provided that describe:  
6
Chapter 2: Installation  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
3 Graphical User Interface  
The simulator has a cross-platform GUI that uses the Qt toolkit. We welcome bug reports  
and usability feedback on the simulator.  
Numeric Display  
Components  
Menu Bar  
Tool Bar  
Main Window  
Simulator status  
Simulation Display  
Area  
2D Engine  
Color Space  
Figure 3-1: Main Window (In Simulation)  
3.1 Tool Bar Buttons  
The Tool Bar shown in Figure 3-1 contains up to eleven control buttons.  
The simulation can be started by clicking on the “Play” button ( ).  
The simulation can be stopped by clicking on the “Stopbutton ( ). To reset the entire  
simulator, stop the simulation first by clicking on the “Stop” button and then click on the  
Reset” button ( ).  
Chapter 3: Graphical User Interface  
7
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
The power-management Soft Power” button ( ) and “Soft Sleep” button ( ) are  
available only on simulated systems that have an Advanced Configuration and Power  
Interface (ACPI) BIOS.  
Clicking on the “Soft Power” button puts the simulated system in a very low power  
consumption mode. The working context can be restored if it is stored on nonvolatile  
media. The simulated system appears to be off.  
Clicking on the “Soft Sleep” button simulates a power-consumption reduction. The power  
consumption is reduced to one of several levels, depending on how the system is to be  
used. The lower the level of power consumption, the more time it takes the system to  
return to the working state.  
To close a previously loaded system simulation definition file click on the “Close BSD”  
button ( ). This button is only enabled when a system definition file has been loaded or  
created earlier. Please make sure you save any changes that you make to the system  
configuration before clicking on the “Close BSD” button ( ) to close the system  
definition file. Otherwise all changes will be lost.  
The “Save BSD” button ( ) is only enabled/active when a system definition (BSD file)  
has been loaded or created. To save your current system definition click on the “Save  
BSD” button ( ) or click on the "File" menu item and select "Save BSD".  
To open a system definition file (BSD file) click on the “Open BSD” button ( ) and  
select the desired BSD file from the Open File Dialog Window. The "Open BSD" button  
is only enabled/active when no other system definition file has been open yet.  
To create a blank or new system definition file click on the “New BSD” button ( ). This  
button is disabled when a system definition file has been loaded or created earlier. In this  
case you must close your current system definition file, click on the “Close BSD” button  
( ) or click on the "File" menu item and select "Close BSD". Please make sure you save  
any changes that have been made to the system definition file before you click on the  
Close BSD” button ( ). Note, when closing the BSD file all changes will be lost.  
If you want to modify the current system definition use the “Show Device Window”  
button ( ) to display the current system configuration. The “Show Device Window”  
button is disabled when the simulation is currently running. To stop the simulation click  
on the “Stop Simulation” button ( ).  
To open the simulator's integrated debugger click on the “Show Debuggerbutton ( ).  
The Show Debugger” button is disabled when the simulation is currently running. To  
stop the simulation click on the “Stop Simulation” button ( ).  
8
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Click on the “Best Fit To Window” button ( ) to reduce or enlarge the size of the  
simulated display area so that the entire simulated display area will fit into the simulators  
main window. If you hold down the CTRL key when clicking on the “best fit” button, it  
“locks” into a state where the simulated display area is resized whenever the simulated  
graphics display resolution changes. To clear this locked condition, click on the best fit”  
button again.  
3.2 Device Window  
The Devices Window, shown in Figure 3-2, is opened by selecting “ViewShow  
Devicesor clicking on the  
button. In this window, you can create a simulated  
computer and modify its properties, BIOS images, memory characteristics, and attached  
components.  
This section describes the main components of the Device Window and shows how to  
build up and configure a simulated computer. It explains the interface using some of the  
most-often used simulation components. Please also see the walkthrough of building a  
single-processor system in Section 6, Create a Simulated Computer, on page 49.  
Device  
Window  
Represents  
Message Routing  
System  
Configuration  
Workspace  
Device List  
Figure 3-2: Device Window  
Chapter 3: Graphical User Interface  
9
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
The Device Window, shown in Figure 3-2 with the “cheetah1_p.bsd” computer  
simulation loaded, graphically depicts a simulated computer system. In the simulator, a  
computer system is defined as a collection of device models that communicate with each  
other by exchanging messages. The icons in the workspace represent device models; the  
lines connecting the icons represent message routing. You can set up and alter the  
simulated computer system by using the workspace popup menu (shown in Figure 3-3).  
To open the workspace popup menu, right-click on any icon in the workspace area.  
The Device List, located on the left side of the Device Window, describes all devices  
available in the simulator along with their configuration options. For further information  
please refer to Section 7, Device Configuration, on page 53.  
The Show Deprecated Devices checkbox is not checked by default. This checkbox gives  
the user the opportunity to show or hide deprecated devices. It is not recommended to use  
deprecated devices in simulation. To show deprecated devices this checkbox must be  
checked. The Show Deprecated Devices checkbox does not disable the ability to connect  
or create deprecated devices. Also the automation interface of deprecated devices and  
loading BSDs which contain deprecated devices are both unaffected.  
3.2.1 Add a New Device  
You can add devices to the workspace by dragging a new device from the Device List on  
the left side of the workspace window to an appropriate location within the workspace on  
the right side. Please note that this feature is not supported by the public release version  
of the simulator.  
Some devices produce additional windows or dialogs when you add them to the  
workspace. These windows provide an interface to the device during simulation. For  
example, adding the Winbond WB83627HF SIO device (see Section 7.5 on page 69) to  
the workspace adds the floppy byte counts numeric window to the Main Window screen.  
When you add a device to the workspace, the shell sends a reset message to all of the  
devices in the workspace. The global reset is equivalent to power-cycling the simulated  
computer system.  
3.2.2 Workspace Popup Menu  
Changing the system configuration of the simulated system can make the simulation  
nonfunctional.  
Right-clicking on any icon in the workspace produces a popup menu as shown in Figure  
10  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Please note that these  
features are not supported  
by the public release  
version of the simulator.  
Figure 3-3: Workspace Popup Menu  
3.2.2.1 Add Connection  
Please note that this feature is not supported by the public release version of the  
simulator. You can connect a device to another device by holding Shift, left-click, and  
drag from one device to the other. You will draw a line from the first device to the  
second. Release the mouse button to create the connection. You can also right-click one  
device, select "Add Connection", and then click on the device to connect to. Then click  
Finish. The connection enables simulator-level message exchanges between the  
connected devices. All connections enable bidirectional message transfers.  
Some devices contain more than one interface to which a connection can be made. A  
multi-interface device routes messages out different interfaces, based on the type of  
message being sent. When you make a connection with a multi-interface device, an  
interface list dialog appears which enables you to select the appropriate interface. You  
must choose an interface on either device, even if one or both of the devices has only one  
interface type.  
Generally, you shouldn't connect different types of interfaces. For example, interface  
Type A of Device 1 should only be connected to interface Type A of Device 2.  
Chapter 3: Graphical User Interface  
11  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 3-4: Add Connection Dialog of Device Properties Window  
A device's connection appears in the “Connections” tab of the Device Properties window  
for each device, as shown in Figure 3-4.  
When you add a connection, the simulator shell sends a reset message to all of the  
devices in the workspace. The global reset is equivalent to power-cycling the simulated  
computer system.  
3.2.2.2 Configure Device  
Most devices provide configuration options. Selecting Configure Devicefrom the  
workspace popup menu produces a dialog window containing options for the specified  
device.  
Selecting the Connectionstab in the Device Properties window will display a list of all  
connections between the specified device and any other devices in the workspace.  
3.2.2.3 Disconnect Device  
Please note that this feature is not supported by the public release version of the  
simulator. Selecting Disconnect Devicefrom the workspace popup menu removes all  
connections to the specified device.  
12  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
3.2.2.4 Delete Device  
Please note that this feature is not supported by the public release version of the  
simulator. Selecting Delete Device from the workspace popup menu removes all  
connections to the specified device, and removes the device from the workspace.  
3.2.3 Example Computer Description  
In this section we describe the major components of the computer simulation contained in  
the cheetah_1p.bsdfile.  
Figure 3-5: Computer Simulation in cheetah_1p.bsdFile  
This computer is a single-processor AMD 8th Generation machine with 256 MB of  
memory, a Southbridge that supports two IDE chains, VGA output, and a SuperIO that  
supports a keyboard, mouse, and floppy drive. This computer also comes with a USB  
JumpDrive and NIC device.  
Right-clicking on any icon brings up a Workspace Popup menu (Figure 3-3) that allows  
access to the Device Property window, which includes a list of all components that the  
selected component is connected to. An example Device Property window is shown in  
Figure 3-4. The right-click Workspace Popup menu also allows you to delete or  
Chapter 3: Graphical User Interface  
13  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
disconnect the selected device from all its connections. Please note that this feature is not  
supported by the public release version of the simulator.  
Table 3-1 lists each component in the “cheetah_1p.bsd” computer. For more information  
about devices and possible device configuration, please refer to Section 7, Device  
Symbol Device  
AMD Debugger  
Short Description  
Standard debugging support.  
AweSim Processor  
DIMM Bank  
Simulated Processor.  
DIMM Memory Modules.  
AMD 8th Generation Integrated Integrated Northbridge treated as a  
Northbridge  
separate device in simulation.  
Southbridge supporting Hard drives,  
DVD-/CD-ROM drives, Floppy drives,  
USB ports, CMOS, and POST ports.  
The AMD-8132 PCI-X Controller is a  
HyperTransport tunnel that provides  
two PCI-X buses and two IOAPICs.  
These PCI-X buses may or may not be  
AMD-8111™ Southbridge  
AMD-8132PCI-X  
Controller  
configured  
as  
hot-plug-capable,  
depending on the platform.  
Emerald Graphics Device  
Simulated VGA device.  
Matrox G400 Graphics Device Simulated VGA/SVGA device.  
Simulated PCI Bus which can connect  
PCI Bus  
multiple PCI devices (such as bridges  
and PCI VGA).  
SuperIO Chip with keyboard, mouse  
and floppy.  
Device that contains a configurable  
BIOS ROM image.  
Winbond W83627HF SIO  
Memory Device  
The SMB hub device is used to connect  
one SMBus to any of four SMBus  
branches.  
SMB Hub Device  
The PCA9548 is an 8-channel System  
Management Bus (SMB) switch.  
PCA9548 Device  
AT24C Device  
The AT24C device is  
EEPROM device.  
a
Serial  
14  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Symbol Device  
Short Description  
The JumpDrive device allows easy  
import and export of data between a  
USB JumpDrive  
host system and  
environment.  
a
simulation  
The network adapter device models an  
Intel Pro/1000 MT Desktop Network  
Adapter.  
Desktop Network Adapter  
Table 3-1: Cheetah_1p.bsd Devices  
3.2.4 Device Window Quick Reference  
Table 3-2 lists common tasks that may be done in the Device Window and describes how  
to complete them.  
Task  
Where to Find the Properties  
Enter the “AweSim properties page→Processor” tab and  
select a CPU type. For more information, please refer to  
Change CPU Type  
Please refer to Section 14.2, “Changing DRAM Size”, on  
Change Memory type or size  
Go to the Simulation Display Window “File→Set IDE  
{Primary, Secondary} {Master, Slave} Image, as shown in  
Change a hard drive or DVD-  
/CD-ROM image  
Or  
Go to the “Southbridge Properties page→HDD {Primary,  
Secondary} Channel”. If using a DVD-/CD-ROM image,  
check the DVD-ROM checkbox, as shown in Figure 7-22,  
on page 93.  
Go to the Main Window File Menu→Set Floppy Image”  
Or  
Go to the “SIO properties page→Super IOtab (see Figure  
7-13 on page 79).  
Go to the “System BIOS Properties pageMemory  
Configuration” tab (see Figure 7-14, on page 82). Change  
the Init File entry.  
Change a floppy drive image  
Change a BIOS image  
Table 3-2: Device Window - Quick Reference  
3.3 Device Groups  
A platform (*.bsd) consists of devices, and each device is an instance of either a device  
library (*.bsl or *.so) or a device group (*.bsg). A device group is an aggregation of  
devices into a single composite device that has some customized aspects (includes its  
name, icon, ports, initial and default state).  
Device groups are a particular class of devices. They have the same properties and  
characteristics as traditional devices, but also allow the user to extend and tailor specific  
Chapter 3: Graphical User Interface  
15  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
device(s) to meet a particular hardware implementation or configuration. Device groups  
provide a method that allows the user to group or collect one or more devices, libraries or  
groups into one composite device. To the user, the composite device will look and feel no  
different than a normal device library and, for the most part, the two should be  
indistinguishable.  
A device group can consist of one or more child devices, with some optional initialization  
state associated with each child device, and those devices can optionally be connected to  
each other. It may be helpful to think of a device group as a BSD within a BSD.  
However, a device group also has its own identity as a device, and it can support external  
connection ports that allow it be connected to other devices in the same manner as a  
traditional device library.  
3.3.1 Terms  
If any of the language and wording used in these Device Groups sections is unclear, it  
may help to refer to this list of terms.  
Device: A device library or device group (also, a known device or created device).  
Device Library: Contains binary implementation of device functionality; has no child  
devices; associated with a *.bslWindows or *.bslLinux file.  
Device Group: Grouping of one or more devices (libraries and groups) into a single  
device; gets its functionality through aggregation of its children, and from its group-  
specific properties/aspects; associated with a *.bsgfile.  
Known Device: A device that the shell knows about (i.e., the shell has all the necessary  
information to create an instance of this device). Known devices appear in the left hand  
pane of the Device Viewer window; and on the console using shell.KnownDevices.  
Created Device: An instantiation of a known device. All devices in a BSD are created  
devices. Created devices appear in the right hand pane of the Device Viewer window; and  
on the console using shell.CreatedDevices.  
Device grouping tree node relationships: Because of device grouping, created devices  
in a BSD are nodes in a tree, with parents and children, siblings, and end/root tree node  
relationships.  
Device connection relationships: Because of device connections, a sibling device can be  
connected to another sibling device at a connection port of each device.  
Machine Device Group: Just a device group, but it is special since it is the root node of  
a machine tree (it has no parent, it can't be deleted, it has no ports, and it has no sibling  
devices); each machine in a BSD has a single machine created device group.  
16  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Archive Data or Device State: A known device group has archive data for its child  
devices, which specifies the default and initial state for when a known device group is  
instantiated as a created device. A known device library also has default and initial state  
for when it is instantiated as a created device. When a BSD is saved, each device's current  
state (archive data) (which may be different than the original known device's archive  
data) is saved to the *.bsdfile.  
Internal Connection: A connection between two children of a device group  
External Connection: A connection between a device's parent group and a sibling of the  
parent group. Under-the-hood, a connection to a device group is routed to one of its  
children, via an internal-to-external port mapping between the child device's port and the  
parent device's port.  
3.3.2 Concept Diagrams  
A device group is a device with its own identity (name, description, icon, help file, etc).  
But it is also like a BSD; in fact, every BSD has a single created device group called the  
Machine device. Tthe default user‟s view into SimNow is from the context of looking  
inside the Machine device. This encapsulation of devices inside device group‟s results in  
a hierarchy tree, with a Machine device group as the root node. In this way, a device  
group tree is like a folder/directory tree (folder is to device group as file is to device  
library), as demonstrated in Figure 3-6.  
Machine  
Group  
Group  
Library  
Library  
Library  
Library  
Library  
Group  
Library  
Figure 3-6: Device group: BSD with one machine group and three child devices  
Any device can also connect to its sibling devices (Figure 3-6 does not depict any port  
connections). Figure 3-7 depicts the same example device tree, but with a different  
conceptual view - devices are inside groups; arrows represent possible port connections  
between sibling devices:  
Chapter 3: Graphical User Interface  
17  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Machine  
Group  
Group  
Library  
Group  
Library  
Library  
Library  
Library  
Library  
Figure 3-7: Device group (different conceptual view devices are inside groups)  
The previous diagrams show child devices inside device groups. On the standard top  
level view (the context of inside the machine device), we would more simply just see  
three devices, see Figure 3-8 (arrows represent possible port connections between the  
devices).  
Machine  
Device  
Device  
Device  
Figure 3-8: Device Group (2 group devices 1 library device)  
3.3.3 Working with Device Groups  
From the main SimNow window, ViewShow Devices", opens a device viewer GUI  
window for the machine device group. We can also open a device viewer GUI window  
that views any device group's children. Right-click the device icon and select "Modify  
Group (Show Devices)" from the popup menu. If "Modify Group (Show Devices)" is not  
present, then the device the user has clicked on is not a group.  
Figure 3-9: Modify Group  
18  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
       
AMD Confidential  
User Manual  
November 21st, 2008  
Click on "Modify Group (Show Devices)". This will open a separate show device viewer  
window.  
Figure 3-10: Device Group  
If any modifications are done to the device group, then they will be saved with the BSD.  
Note that it is possible to modify a device group to a point where its children look  
nothing like the original device.  
3.3.4 Shell Automation Commands for Device Groups  
The shell automation commands that are used for a device also work for a device group.  
For example, shell.KnownDevices lists all known devices (both device libraries and  
device groups). For example, a device group exposes ports and connections, so  
shell.AvailablePortsand shell.Connectetc. work with a device (regardless of  
whether it's a group or a library).  
3.3.4.1 Device Tree  
You can optionally reference a device in the parent and child grouping device tree, using  
the syntax separator " -> " between device parent and child, and "-> Machine #1" as  
the root device. Here are some examples, using a machine and platform that just has two  
"4 core Node" devices...  
1 simnow> shell.createddevices  
"4 core Node #0"  
"4 core Node #1"  
1 simnow> shell.CreatedDevices "-> Machine #1"  
"4 core Node #0"  
"4 core Node #1"  
1 simnow> shell.createddevices "-> Machine #1 -> 4 core Node #0"  
Cpu:0  
"AweSim Processor #0"  
Cpu:1  
Cpu:2  
"AweSim Processor #1"  
"AweSim Processor #2"  
Cpu:3  
"AweSim Processor #3"  
sledgenb:0  
"AMD 8th Generation Integrated Northbridge #4"  
1 simnow> shell.createddevices "-> Machine #1 -> 4 core Node #1"  
Cpu:4  
Cpu:5  
"AweSim Processor #0"  
"AweSim Processor #1"  
Cpu:6  
Cpu:7  
"AweSim Processor #2"  
"AweSim Processor #3"  
sledgenb:1  
"AMD 8th Generation Integrated Northbridge #4"  
Chapter 3: Graphical User Interface  
19  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
1 simnow> shell.modules  
xtrsvc:0  
shell:0  
Cpu:0  
sledgeldt:0  
sledgenb:1  
sledgenb:0  
Cpu:1  
Cpu:2  
Cpu:3  
sledgeldt:1  
Cpu:4  
Cpu:5  
Cpu:6  
Cpu:7  
Notice the shell.moduleslist is flat, but the devices are in a tree structure that allows  
us to have both a "-> Machine #1 -> 4 core Node #0 -> AweSim Processor #0"  
and a "-> Machine #1 -> 4 core Node #1 -> AweSim Processor #0". Also notice that our default  
view ignores the tree, and just shows us two devices: "4 core Node #0" and "4 core  
Node #1".  
3.3.4.2 Enabled vs. Disabled vs. Mixed  
Shell device commands like shell.Locationor shell.AddDevicehave generic  
meanings (regardless of whether the device is a group or library). But some are defined  
from an aggregation of the children. For example, shell.GetFastPathcan return  
Enabled, Disabled, or Mixed(means some children are "Enabled" and some are  
"Disabled").  
1 simnow> shell.GetLogIO "4 core Node #0 -> AweSim Processor #0"  
PCI:  
IO:  
Disabled  
Disabled  
IOfpdis: Enabled  
MEM: Disabled  
MEMfpdis: Enabled  
GETMEMPTR: Disabled  
1 simnow> shell.GetLogIO "4 core Node #0 -> AweSim Processor #1"  
PCI:  
Disabled  
IO:  
Disabled  
IOfpdis: Disabled  
MEM: Disabled  
MEMfpdis: Disabled  
GETMEMPTR: Disabled  
In this example, all other child devices of "4 core Node #0" are "Disabled" for all log  
options.  
1 simnow> shell.GetLogIO "4 core Node #0"  
PCI:  
Disabled  
IO:  
Disabled  
20  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
IOfpdis: Mixed  
MEM: Disabled  
MEMfpdis: Mixed  
GETMEMPTR: Disabled  
1 simnow> shell.GetLogIO "-> Machine #1"  
PCI:  
Disabled  
IO:  
Disabled  
IOfpdis: Mixed  
MEM:  
Disabled  
MEMfpdis: Mixed  
GETMEMPTR: Disabled  
3.3.5 Device Group Examples  
Device groups can be a powerful building block for SimNow users. These next examples  
should help give further understanding about device groups, and demonstrate some  
practical uses.  
3.3.5.1 Example: 1GB DDR2 memory  
When you instantiate a “Dimm Bank” known device into a created device, you get its  
default state of 8 empty dimm‟s with no configuration. You can then configure the  
Dimm Bank”, such as by opening the device‟s GUI configuration properties to specify  
general options (such as max number of dimm‟s), and to configure each dimm (such as  
by importing an SPD). You could configure it, for example, to emulate a dimm bank with  
2 DDR2 dimm‟s (1GB each).  
Device groups offer us a potentially simpler alternative - for the user to instantiate a  
preconfigured device group. For example, we could have a device group “Dimm DDR2  
1GBx2”, which has (inside it) only one child and default archive data (state) for that  
child. The figure below shows that the (theoretical) known device Dimm DDR2 1GBx2”  
has inside it a single child device “Dimm Bank #0” that is configured with two dimm‟s  
(type DDR2, 1GB each).  
Configured as DDR2,  
2 dimm (1GB each)  
Figure 3-11: Example DIMM Device Group  
When the user instantiates this (theoretical) known device “Dimm DDR2 1GBx2” as a  
created device, we get a created device “Dimm DDR2 1GBx2 #0” with a child device  
Dimm Bank #0” that is already configured (as DDR2, 2 dimm, 1GB each). Our resulting  
main device GUI would look like this:  
Chapter 3: Graphical User Interface  
21  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 3-12: Created DIMM Device Group  
The device GUI for the children of “Dimm DDR2 1GBx2 #0” would look like this:  
Figure 3-13: Children of DIMM Device Group  
If we looked at the options and configuration of the device library “-> Machine #1 ->  
Dimm DDR2 1GBx2 #0 -> Dimm Bank #0” (either from the GUI or from the console),  
we would see that it is already configured as DDR2 with 2 dimm slots (1GB each).  
This example demonstrates a broad concept. An existing device that has a more generic  
and abstract definition (such as a non-configured “Dimm Bank”) can be wrapped in a  
device group to give it an identity as a particular hardware implementation (such as an  
already configured “Dimm DDR2 1GBx2”). More generally, any device can be wrapped  
by a device group, to give an alternate default configuration for the device‟s state  
(archive data).  
3.3.5.2 Example: Quad-Core Node  
Next we will consider examples relevant to the ability of a device group to have multiple  
child devices, default archive data for each child device, and connections between the  
child devices. These next examples are based on a quad-core processor node.  
Building a processor node in SimNow has traditionally been a multi-step process. First  
the user would add the "AMD 8th Generation Northbridge Device", and then add one  
"AweSim Processor" device for each processing core in the node. These devices then  
need to be connected together along the respective "CPU Bus" and "Interrupt / IOAPIC"  
22  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
connection ports. Once the devices are connected, a user would then need to load a  
product ID file so that the simulated devices would represent a real and planned piece of  
hardware. In summary, building a Quad-core node in SimNow could take as many as 14  
individual steps, and these steps would need to be repeated each time a processor node is  
to be added.  
A device group can both simplify adding a quad-core node, and present the user with a  
hierarchical view. So we will give some examples with quad-core processor nodes.  
A device group is not required to specify archive data for its child devices. When such a  
known device group is instantiated as a created device, it simply lets its children use their  
own default and initial configuration state. We can create an abstract or generic “4 core  
Node” device group that does not represent a particular hardware implementation (just  
like a non-configured “Dimm Bank” does not represent a particular hardware  
implementation, until it is configured).  
A device group can optionally specify initial and default archive data (device state) for  
each of its child devices. A device group with five children could specify archive data for  
0, 1, 2, 3, 4, or all 5 children. We could have an “AMD 4-core CPU xxxx” that specifies  
archive data for all five of its children (configured with the (theoretical) product ID file  
amd-xxxx.id”).  
Configured with product  
ID file amd-xxxx.id  
Chapter 3: Graphical User Interface  
23  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
This is not the only way we could create a (theoretical) “AMD 4-core CPU xxxx”. A  
cleaner idea would be to reuse the non-configured abstract and generic “4 core Node”.  
Configured with product  
ID file amd-xxxx.id  
This device group would (externally) be functionally the same as our previous “AMD 4-  
core CPU xxxx” example, although it has the additional layer where it cleanly reuses “4  
core Node”. We could also reuse “4 core Node” for other device groups that represent a  
particular hardware implementation of a 4-core node, such as the (theoretical) “AMD 4-  
core CPU yyyy” configured with the (theoretical) product ID file “amd-yyyy.id”. Or a  
DeerHound RevB QuadCore Socket L1” configured with the product ID file  
Family10hDR-L1_B0.id”.  
3.3.5.3 Example: SuperIO device  
For SimNow developers, device groups can be a technique for developing SimNow  
devices in a layered manner, promoting optimal code reuse. Before device groups were  
available, SuperIO devices were written as device libraries. It is cleaner to implement  
SuperIO device models with device groups. Typically, SuperIO devices consist of  
multiple functional blocks such as a UART, LPT, PS2 controller, Floppy controller etc.  
Device groups provide a way to develop each functional block as discrete devices that  
can later be grouped to represent a particular SuperIO controller.  
3.3.6 Creating a Device Group (GUI)  
From the Device Viewer window, select the devices you want to group then Ctrl + left-  
click a device to add or remove it from being selected; left click drag the background for  
a rectangle selection. The devices you select will become the children for the device  
group. An internal connection (see Section 3.3.1, “Terms, on page 16) will be saved  
inside the group. An external connection (see Section 3.3.1, “Terms, on page 16) will be  
maintained as a connection between the created device group and one of its sibling  
devices and result in an internal-to-external port mapping. Next right click one of the  
selected devices and choose "Group Devices", see Figure 3-14.  
Figure 3-14: Group Devices  
24  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
This brings up the device group creation wizard. On the first page, you give the group an  
identity as a device, by specifying device properties for the device (name, description,  
icon file, help file, flags). You specify a file path to save the known device group,  
because the wizard will create both a known device group *.bsg file, and an instance of  
the known device as a created device inside your current BSD (replacing the devices that  
you selected for grouping). The internal preview (left side) shows the child devices inside  
the group; the external preview (right side) shows the group as a device. This preview  
only shows each device icon, name, number, and internal device connections.  
Preview of inside  
the device group  
Preview of outside  
the device group  
Device  
Identity  
Properties  
Figure ?  
In the second step, we specify options relative to each child device. For each child's  
device state, the resulting known device group can either save the child device's current  
state, or it can specify no default device state and thus inherit the default device state for  
the particular child device. For example, if a child device is an "AweSim Processor", we  
can either save the current configuration for that "AweSim Processor" as the default state  
for the known device group we are creating. Or the group's child can just inherit the  
defaults of the "AweSim Processor" known device.  
For each child device, we can specify internal to external port mappings. This maps an  
internal port name to an external port name (a port for the device group). Since existing  
Chapter 3: Graphical User Interface  
25  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
external connections are maintained, we automatically require an internal to external port  
mapping for an existing external connection. To finish, the wizard requires that the  
external port names are unique to the device group, since a device must have unique port  
names.  
Child Device Name  
External Port Names  
Internal  
Port  
Names  
Figure ?  
The "external ports, device state" page shows you all the internal to external port  
mappings which are currently specified for the device group. You can also click the  
"Add/Remove Ports" button for a particular child device, to open a sub-page that allows  
you to add and remove particular port mappings for the child device.  
In a child device sub-page, each checkbox turns a particular port mapping on or off. If a  
checkbox is grayed out, it is because the device has an existing external connection, thus  
requiring the port to be mapped for the device group.  
26  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Turn This Row's Port  
Mapping On/Off  
Internal Port Names  
External Port Names  
Figure ?  
Clicking "OK" causes the "external ports, device state" page to regenerate its list of ports.  
So if you add a port using the checkbox, it will show up on the "external ports, device  
state" page.  
When you are done defining the device group then simply click the "Finish" button. This  
causes the device group to get created. A known device group file is created using the  
*.bsg file you specified for "Export to file", and loaded as a known device. The devices  
you grouped are swapped (deleted and replaced) with a created device instance of your  
new device group. Its internal connections and device state come from the known device.  
External connections from the devices you grouped are recreated as connections to your  
new created device group. All of this is done automatically by the wizard when you click  
"Finish".  
3.3.7 Creating a Device Group (Automation Commands)  
Although it is simpler to create a device group in the GUI, it is also possible to create a  
device group on the console using shell automation commands. First we group a set of  
specified devices into an “Unnamed Group”. Then we can customize our “Unnamed  
Group”, by specifying device group options. Next we export it to a file as a known device  
Chapter 3: Graphical User Interface  
27  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
with a new identity as a device instead of just the generic “Unnamed Group”. Finally, we  
can replace our “Unnamed Group” created device with a created device instance of our  
new known device. Here are the details of these commands:  
You can specify devices to get grouped into an “Unnamed Group” device:  
shell.GroupDevices[devices]  
We can modify an existing created device group‟s options:  
shell. SetDeviceGroupOption [device group] [ExternalPortMap |  
ExportDeviceState] [variable args]  
Specifically, we can add, remove, and rename the internal-to-external port mappings  
between a device child and its parent device group:  
shell.SetDeviceGroupOption [device] ExternalPortMap Add [device  
child] [in] [out]  
shell.SetDeviceGroupOption [device] ExternalPortMap Delete [out]  
shell.SetDeviceGroupOption [device] ExternalPortMap Rename [out]  
[out renamed]  
And we can specify whether or not to use the created device child‟s device state for each  
child device (for if/when the group is exported as a known device):  
shell.SetDeviceGroupOption [device] ExportDeviceState [optional  
child device] [0|1]  
There is also a shell command to get the options (ie to print them to the console/stdout).  
This can print the values for either options (ExternalPortMap or ExportDeviceState):  
shell.GetDeviceGroupOption [device group] [ExternalPortMap |  
ExportDeviceState] [variable args]  
shell.GetDeviceGroupOption [device group] ExternalPortMap  
[optional: child device]  
shell.GetDeviceGroupOption [device group] ExportDeviceState  
[optional: child device]  
We can export a created device group (including the options we set) to a known device  
file. To do this, we also specify values for the known device‟s identity as a device:  
shell.ExportDeviceGroupToFile [device group] [name] [desc] [icon]  
[help] [flags] [bsg file path]  
The previous command only exports the created device group to a file as a known device;  
it does not change our existing created device group. However, after we export our  
created device to a file, we can then replace our created device with an instance of the  
device we exported. By doing this, we give our device a new device identity:  
shell.SwapDevice [created device] [known device]  
28  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
3.3.8 Ungrouping a created device group  
Since a device group is really just a container for its child device's, with its own identity  
as a device, it is simple to ungroup a device group, on either the GUI or the console. In  
the show devices GUI, right-click a device group, click “Ungroup Device”. Or, in the  
console, execute the command:  
shell.UngroupDevice [created device group]  
3.4 Main Window  
The AMD SimNowMain Window, shown in Figure 3-1, is the main application  
window. It contains a Menu Bar with a set of pull down menus, and a Tool Bar, both of  
which control many aspects of the simulation environment. The console window, shown  
in Figure 3-15, provides a textual interface for status information and command-line style  
control, see Section A.7, “Automation Commands, on page 227.  
Figure 3-15: Console Window  
3.4.1 SimStats and Diagnostic Ports  
The SimStats and Diagnostic Ports numeric displays appear in the Main Window when a  
Southbridge device is added to the workspace. The SimStats display shows host and  
simulation elapsed time and a simulation MIPS counter that is updated as the simulation  
runs. The simulator effectively has a built-in POST card output, ports 80h to 87h and e0h  
to e3h. You can see these codes on the right upper part of the Main Window in the  
"Diagnostic Ports" section.  
Chapter 3: Graphical User Interface  
29  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
These three lines of  
four bytes each show  
the values written to the  
diagnostic programmed  
I/O ports. Mostly these  
ports are written by the  
BIOS and low-level  
diagnostic software.  
Host Seconds shows  
the number of user  
and system seconds  
of host CPU time the  
simulator has uses  
since it started.  
Sim Seconds is the  
number of seconds of  
simulated time that  
has past since the  
simulator started.  
MIPS  
are  
the  
instantaneous value of  
the  
simulators  
its  
MIPS are the total  
number of simulated  
instructions executed  
since the simulator  
started, divided by  
the Hosts Seconds.  
performance,  
dimension is millions of  
simulated instruction  
executed per second of  
host user and system  
CPU time.  
Figure 3-16: Progress Meter and Diagnostic Ports  
The simulation counter measures the number of microseconds of simulated time.  
However, it is not a performance or cycle-based simulator, so the simulated time is  
estimated.  
3.4.2 CPU-Statistics Graphs  
There are several graphs that can be displayed on the left side of the Main Window. These  
graphs can be activated by the “View→CPU Graphsmenu selection.  
3.4.2.1 Translation Graph  
The Translation Graph updates once a second. Full vertical scale means the address-  
Translation cache (tcache) is full. Dark color on the bottom of the graph represents  
percent of tcache containing valid translations. Lighter color above the dark color  
represents percent of tcache containing invalidated translations. Black color growing  
from the top represents the meta data that describes the translations.  
Meta Data that  
describes the  
Translations.  
Percent of tcache  
containing  
Invalidated  
Translations.  
Percent of tcache  
containing Valid  
Translations.  
Figure 3-17: CPU Translation Graph  
3.4.2.2 Real MIPS Graph  
The Real MIPS Graph updates once a second. If this value exceeds what can be displayed  
on this graph, the graph line turns red. It shows the instantaneous MIPS, i.e., how many  
millions of instructions per host CPU-second at which the simulator is running. A value  
of zero will appear as a one-pixel-high horizontal line. Full scale represents 100 MIPS.  
30  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
Million of  
Instructions per  
Host CPU second.  
Exceeds 100  
MIPS.  
Figure 3-18: CPU Real MIPS Graph  
3.4.2.3 Invalidation Rate Graph  
The Invalidation Rate Graph updates once a second. If this value exceeds what can be  
displayed on this graph, the graph line turns red. A rate of zero will appear as a horizontal  
line, one pixel high. Full vertical scale represents one invalidatated translation per  
thousand simulated instructions. The lower, darker color represents plain invalidations.  
The upper, lighter color represents range invalidations. This upper, lighter color is a  
minimum of one pixel high, i.e., a value of zero range invalidations still results in a one-  
pixel-high line of the lighter color.  
Plain  
Invalidations  
Range  
Invalidations  
Exceeds what  
can be  
displayed.  
Figure 3-19: CPU Invalidation Graph  
3.4.2.4 Exception Rate Graph  
The Exception Rate Graph updates once a second. If this value exceeds what can be  
displayed on this graph, the graph line turns red. A rate of zero appears as a horizontal  
line one pixel high. Full vertical scale represents a rate of one exception taken by the  
simulator per ten simulated instructions. These exceptions may be internal to the  
simulator and not turn into exceptions in the simulated machine. The lower, darker color  
represents all such exceptions other than segmentation violation (SEGV) exceptions. The  
upper, lighter color represents all the SEGV exceptions. This upper, lighter color is a  
minimum of a one-pixel-high line, i.e., a value of zero SEGV exceptions still shows a  
one-pixel-high line of the lighter color.  
All exceptions other  
than segmentation  
violations (SEGV).  
Exceeded  
what can be  
displayed.  
Segmentation  
violations (SEGV).  
Figure 3-20: CPU Exception Rate Graph  
3.4.2.5 PIO Rate Graph  
The PIO Rate Graph updates once a second. If the port I/O (PIO) rate exceeds what can  
be displayed on this graph, the graph line turns red. A rate of zero will appear as a  
horizontal line one pixel high. Full scale represents one PIO per ten simulated  
Chapter 3: Graphical User Interface  
31  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
instructions. Darker color on the bottom of the graph represents the read PIO's, the lighter  
color represents the write PIO‟s.  
Write PIO’s.  
Exceeded  
what can be  
displayed.  
Read PIO’s.  
Figure 3-21: CPU PIO Rate Graph  
3.4.2.6 MMIO Rate Graph  
The MMIO Rate Graph updates once a second. If the memory-mapped I/O (MMIO) rate  
exceeds what can be displayed on this graph, the graph line turns red. A rate of zero will  
appear as a horizontal line one pixel high. Full vertical scale represents one MMIO per  
ten simulated instructions. Darker color on the bottom of the graph represents the read  
MMIO's, the lighter color represents the write MMIO's.  
Read  
MMIO’s.  
Exceeded  
what can be  
displayed.  
Write  
MMIO’s.  
Figure 3-22: CPU MMIO Rate Graph  
3.4.3 Simulated Video  
The simulated video area of the Main Window depicts the VGA output screen that  
appears when a VGA device is added to the workspace. When the mouse focus is over  
the video area, the simulator captures host keyboard input, enabling you to type most  
keyboard entries on your real keyboard. This is a convenience and may not accurately  
position the mouse or grab all keys correctly. For more accurate mouse and keyboard  
capture, see Grab the mouse and keyboard” in Section 5.2.3, Interaction with the  
You can also allow the simulator to take complete control of the mouse and keyboard by  
selecting “Special Keyboard→Grab Mouse and keyboard”. To return from this mode,  
press and hold Ctrl then Alt, and then release them in reverse order.  
3.4.4 Hard Disk and Floppy Display  
The IDE Primary byte counts, IDE Secondary byte counts, and Floppy disk byte counts  
displays appear when a Southbridge device is added to the workspace.  
32  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 3-23: Primary, Secondary, and Floppy Displays  
When a disk is accessed in simulation, the status information is updated.  
3.4.5 Using Hard Drive, DVD-/CD-ROM and Floppy Images  
Section 4 on page 35 describes how to create disk images. To use a disk image created by  
DiskTool go to the Main Window File Menu and choose one of the “Set […] Image”  
menu items. This brings up an open-file dialog. Select your drive image and click on  
„Ok‟. Standard file extensions for disk images are shown in Table 3-3.  
Image Type  
File Extension  
*.hdd  
*.fdd  
*.iso  
*.img  
Hard Drive Image  
Floppy Drive Image  
DVD-/CD-ROM Image  
Generic Image  
Table 3-3: Image Types  
After an image is selected, any changes to the image are stored in journal form in the  
.BSD” file, unless journaling is disabled in the Southbridge (for hard drive images) or  
SuperIO (for floppy drive images) device. If journaling is disabled, changes are stored to  
the image file, see also Section 5.2.1, Assigning Disk-Image, on page 42.  
3.4.6 Registry Window  
The Registry Window can be viewed by selecting “View→Show Registry”. The registry  
contains information about various simulator configuration items. They are not intended  
to be altered by the user, but some can provide useful information. For example, the  
Instructions per Microsecond and System Bus Frequency both show the frequency values  
the simulator uses for its simulated processors.  
Chapter 3: Graphical User Interface  
33  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 3-24: Registry Window  
3.4.7 Help, Problems and Bug Reports  
The simulator has HTML on-line help and documentation, with "Help" menu entries or  
buttons on the dialogs. In the device view, every device has a context menu (right-click)  
with "Help" documentation links and "What's this" floater text.  
In addition to any other support channel you may have, we encourage feedback on any  
problems encountered. Please send an email to [email protected].  
34  
Chapter 3: Graphical User Interface  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
4 Disk Images  
The simulator uses hard-drive images to provide simulated hard disks to the simulated  
computer. There are several ways to obtain hard drive-images.  
Install your OS onto a hard drive in a real system, then move it to the secondary  
drive in a system and use DiskTool to copy the contents of the drive to an .hdd”  
image file.  
Make a blank hard-drive image and a DVD-/CD-ROM ISO” image, and install a  
fresh operating system onto the hard-drive image. To make the hard drive and  
DVD-/CD-ROM images, refer to Section 4.1, "Creating A Blank Hard-Drive  
To use a physical DVD-/CD-ROM:  
Click on the  
button or select ViewShow Devicesto open the Device  
Window (Figure 3-2, on page 9).  
Open the Southbridge's properties window by double-clicking on it, and  
choose the HDD Secondary Channeltab.  
On a Windows host type \\.\D:” where “D:” is the drive letter for the DVD-  
/CD-ROM, and on a Linux host type “/dev/cdrom” in the Master Drive -  
Image Filenamefield.  
Check the DVD-ROM check box below the Filename field.  
The simulator can access media via the following mechanisms:  
IDE Hard Disk:  
DiskTool IDE hard-disk image, is a flat file consisting of a 512-byte header  
(the IDE probe sector) and a raw image of data from the hard disk (if the raw data  
is cut off before the end of the disk, the disk-image from there on will just read as  
zero).  
IDE DVD-ROM: (The simulator does not simulate DVD-ROM "insert" events)  
DVD-ROM disk image is a flat file of the raw image of a data DVD-/CD-  
ROM. These correspond exactly to ISO file images, for example.  
IDE DVD-ROM direct access  
Floppy Disk:  
Floppy-disk image, a flat file of the raw image of a floppy disk.  
Floppy direct access  
Please refer to Section 13, DiskTool”, on page 161 to find out how to set up a Windows  
or Linux hard-drive image for the simulator.  
4.1 Creating A Blank Hard-Drive Image  
To create a hard-drive image use DiskTool. You can start DiskTool by launching  
"disktool.exe" in your install directory. For convenience, you can create a desktop  
shortcut to launch DiskTool. When you run DiskTool, you will see the DiskTool dialog  
Chapter 4: Disk Images  
35  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
window, as shown in Figure 4-1. It will also open a shell window, as shown in Figure  
4-2, that is used to inform the user about all physical drives which DiskTool has detected.  
Figure 4-1: DiskTool Dialogue Window  
For information about supported options and modes that DiskTool supports, please refer  
Figure 4-2 shows the DiskTool shell window.  
Figure 4-2: DiskTool Shell Window  
36  
Chapter 4: Disk Images  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
To create a blank disk image click on the "Create Blank Disk Image" button on the right  
side of the DiskTool dialog window (see Figure 4-1). A "Save As" dialog will ask you for  
the location and image filename that will be created. Choose the location where you want  
to store the blank image file and then enter the image filename. Click on the "Save"  
button. An additional dialog, see Figure 4-3, is presented that allows you to select how  
large the blank image file should be.  
Figure 4-3: New Image Size  
Before you start creating a new blank disk image make sure that the image will be large  
enough to install Windows or Linux on it. You can enter the image size in MB or in  
number of sectors. We recommend an image size of 4-GB. Increase the value of "Image  
Size (MB)" to 4096 and then click on the "Ok" button to create the image file. A progress  
bar will inform you of the progress being made (see Figure 4-4).  
Figure 4-4: Create Blank Image  
Once the image is created successfully DiskTool will display a message box, as shown in  
Figure 4-5. Click on the "Ok" button.  
Chapter 4: Disk Images  
37  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 4-5: DiskTool Operation Successful  
To exit DiskTool click on the "Exit" button on the right side of the DiskTool dialog  
window (see Figure 4-1).  
38  
Chapter 4: Disk Images  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
5 Running the Simulator  
You can start AMD SimNow™ by launching "SimNow.exe" in your install directory. For  
convenience, you can create a desktop shortcut to launch the simulator. When you run the  
simulator, you will see the simulator's Main Window as shown in Figure 5-1. It will also  
open a console window (shown in Figure 3-15) that is used for text interaction.  
Figure 5-1: Main Window (No BSD Loaded)  
5.1 Command-Line Arguments  
This section describes the command-line arguments supported by the simulator. Table  
5-1 shows the command-line arguments.  
Argument  
Description  
-l <path>  
Directory to load devices from. If used, it  
must be first.  
-f <file>  
-e <file>  
-i <path>  
-m <path>  
Open the .bsd file <file>.  
Execute commands in <file> on startup.  
Image search path for loading image files.  
Mediator connection string for network  
adapters to use.  
Chapter 5: Running the Simulator  
39  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Argument  
-n --novga  
-c --nogui  
-d  
Description  
Disable VGA Window.  
Disable GUI (console mode).  
Disable mouse and keyboard inputs to  
simulator.  
-r --register  
-h --help -?  
Register the simulator with the O/S as an  
automation server.  
Print this help message.  
Table 5-1: Command-Line Arguments  
For instance, to open the cheetah_1p.bsd when starting the simulator you can enter the  
following:  
C:\SimNow\simnow f cheetah_1p.bsd  
5.1.1 Open a Simulation Definition File  
Click on  
and select one of the ".bsd" files located in the “\SimNow” directory. The  
".bsd" files contain pre-configured simulation definitions designed to model a specific  
AMD processor-based computer system. For this example, load the “cheetah_1p.bsd”  
file, from in the SimNow directory. Upon loading the BSD file, the Main Window (shown  
in Figure 5-2) will be filled with three sections. The left column contains informational  
graphs if selected (see Section 3.4.2, CPU-Statistics Graphs, on page 30), the top row  
contains numeric displays of simulation statistics and disk-drive access information, and  
the remainder contains the Simulation Display Area of the simulated machine. The  
Simulation Display Area remains blank until the simulated machine is started.  
40  
Chapter 5: Running the Simulator  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Menu Bar  
Main Window  
Numeric Display  
Components  
Tool Bar  
Simulation Display  
Area  
CPU Graph  
Area  
Simulator status  
Figure 5-2: Main Window (BSD Loaded)  
You can view the configuration of the simulated machine by clicking on . A window  
appears with a graphical representation of the simulated machine, as shown in Figure 5-3.  
Chapter 5: Running the Simulator  
41  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 5-3: Device Window  
5.2 Installing an Operating System  
This section describes the steps that are necessary to install Windows or Linux using the  
simulator. Before you can start installing an operating system make sure you have a blank  
hard-drive image available. To create a blank hard-drive image with DiskTool please  
follow the steps in Section 4.1, "Creating A Blank Hard-Drive Image", on page 35.  
5.2.1 Assigning Disk-Images  
Assign a blank hard-drive image by selecting “File→Set IDE Primary Master Image...”.  
Open the directory that contains your hard-drive images and choose a blank hard-drive  
image that you created earlier (see Section 4.1, "Creating A Blank Hard-Drive Image",  
on page 35) or use one of the hard-disk images which come with the simulator (see  
Section A.2.4.1, "Hard-Disk Image Files", on page 179) and un-check the "Journal"  
check-box (see below "The IDE controller has two important features"), then click on  
"Ok".  
Assign the first OS installation ISO image to the IDE Secondary Master Channel of the  
hard-disk controller by selecting “File→Set IDE Secondary Master Image....  
If you don't have access to any ISO images you have two options:  
42  
Chapter 5: Running the Simulator  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
You can download Linux ISO images from fedora.redhat.com. If you are a  
MSDN Subscription member you can also download Windows ISO images from  
Microsoft's MSDN Subscription Webpage.  
You can assign a physical host DVD-/CD-ROM drive to the simulators IDE  
Secondary Master Channel and use your hosts physical DVD-/CD-ROM drive to  
install from a CD or DVD media. Section 4, "Disk Images", on page 35 describes  
how to assign a physical DVD-/CD-ROM drive  
When the OS installation prompts you, eject the current ISO image using "File→Clear  
IDE Secondary Master" and insert the next ISO image using "File→Set IDE Secondary  
Master". In case you are using a physical DVD/-CD-ROM drive for the OS installation  
eject the media and insert the next media.  
The disk-images are now assigned to the device that is connected to the IDE Primary  
Master and IDE Secondary Master connector of the hard disk controller, as shown in  
The IDE controller has two important features:  
All disk devices (Primary Master, etc.) by default have the disk journaling feature  
turned on, which allows simulations to write to the disk image during normal  
operation and not affect the contents of the real disk image. This is useful for  
being able to kill a simulation in the middle, for multiple copies of the simulator  
running at the same time, etc. Journal contents are saved in BSD checkpoint files  
but lost if you don't save a checkpoint before exiting. To change journal settings  
or commit journal contents to the hard disk image, go to the Device View Window,  
then the AMD-8111™ Southbridge, then the configuration for the hard disk in  
question on either the Primary or Secondary IDE controller. Here you can either  
commit the contents of the journal to the hard-disk image or turn off journaling  
for the hard disk image in question. Turning off journaling is recommended  
during the installation process for an operating system.  
DVD-ROM support is provided through an option in the BSD platform  
checkpoint file. To install a DVD-ROM at any hard disk device location  
(Secondary Master, Primary Slave, etc.), turn on the DVD-ROMcheckbox. By  
default, the Secondary Master in all distributed BSDs has DVD-ROM‟ checked  
and is a DVD-ROM device.  
Copying files into the simulator corresponds to putting data into some media on the Host  
which will be inserted into the simulation. The choices for doing this are:  
Create an ISO image with the data inside it then get it into your guest OS. Use the  
"File→Set IDE Secondary Master Image" item in the Main Window Menu to  
insert it into the DVD-ROM simulation, which is by default on the secondary  
master position in all BSDs. Finally, mount it in your guest OS.  
Chapter 5: Running the Simulator  
43  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Use a raw floppy-disk image in a manner similar to the above. It's a lot smaller  
and a bit more hassle, so we don't recommend it.  
Mount a hard-disk image on the host. (On a Linux host, you can use the  
"loopback device").  
Use the JumpDrive USB device to copy files into the simulator and out of the  
simulator, see. Section A.7.26, “JumpDrive, on page 247.  
Copying files out of the simulator corresponds to putting some data into some media in  
the guest which will then be extracted on the host. To do this, mount a hard-drive image  
on the host after placing the data on it in the guest. (On a Linux host, you can use the  
"loopback device").  
5.2.2 Run The Simulation  
Once the disk-images are assigned, the simulation may be started by clicking on the Play  
button  
on the Main Window‟s Tool Bar.  
Figure 5-4: Installing WindowsXP  
44  
Chapter 5: Running the Simulator  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
5.2.3 Interaction with the Simulated Machine  
The simulator will boot and the simulated output screen appears in the bottom right  
portion of the Main Window, which is the Simulation Display Area. When the focus is on  
this portion of the window, most keystrokes and mouse operations are passed through to  
the simulated machine. When moving the mouse cursor outside of the Simulation Display  
area the Main Window returns the mouse cursor and keyboard control to the host  
machine. Some keystrokes, such as ALT-combinations, must be entered using the Special  
Keyboard Menu. At present we have some predefined keystrokes which can be entered  
by the "Special KeyboardSpecial Keys Generator" as shown in Figure 5-5. The  
simulator superimposes a small square over the screen at the position of the host mouse.  
You can also allow the simulator to take complete control of the mouse and keyboard by  
selecting “Special KeyboardGrab Mouse and Keyboard”. To return from this mode,  
press and hold Ctrl then Alt, and then release them in reverse order.  
Figure 5-5: Special Keys Generator  
5.2.4 Simulation Reset  
To reset the entire simulator, stop the simulation with the "Stop" button ( ), then press  
the "Reset" button ( ), which is to the right of the "Stop" button. At this point, hard-  
drive images may be changed as described in 5.2.1 Assigning Disk-Image on page 42.  
5.3 Multi-Machine Support  
The multiple machine concept allows the simulator to create multiple simulation  
machines within the same process space, and to load and execute these machines  
independently.  
The default shell provided with the simulator includes three new commands that allow  
the user access to the multiple machine functionality.  
The „newmachine‟ command creates a new „emtpy‟ simulation machine. The created new  
machine is in no way related to the current machine. Tou can load BSDs, edit device  
Chapter 5: Running the Simulator  
45  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
configurations, etc., in the new machine, and they are completely independent of any  
other „machine‟ currently loaded.  
The leading number before the prompt identifies which machine is currently the active  
machine. All subsequent automation commands typed into the console window are  
directed to the current machine.  
Table 5-2 describes the arguments provided by the newmachine command.  
Argument  
--nogui  
--gui  
-c  
Description  
Disable Graphical User Interface (GUI).  
Enable Graphical User Interface (GUI).  
Enable console mode.  
--novga  
--vga  
-n  
Disable VGA Window.  
Enable VGA Window.  
Disable VGA Window.  
-d  
Disable mouse and keyboard inputs to  
simulator.  
+d  
Enable mouse and keyboard inputs to  
simulator.  
-i <path>  
-m <path>  
Image search path for loading image files.  
Mediator connection string for network  
adapters to use.  
-l <path>  
Directory to load devices from. If used, it  
must be first.  
Table 5-2: Newmachine Command Arguments  
Usage:  
newmachine[ [--nogui | -c | --gui] [--novga | -n | --vga]  
[-d | +d] [-i <path>] [-m <path>] [-l <path>] ]  
The following command creates a new simulation machine:  
1 simnow> newmachine  
2 simnow>  
The „switchmachine n‟ command switches the console window to the machine identified  
by „n‟. All subsequent automation commands typed into the console window are directed  
to the given machine „n‟.  
2 simnow> switchmachine 1  
1 simnow>  
The „listmachines‟ command lists all machines that currently exist.  
46  
Chapter 5: Running the Simulator  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
* = Specifies current Machine ID.  
2 simnow> listmachines  
*2 -gui -vga +d  
1 -gui -vga +d  
+d: Mouse and Keyboard  
inputs are enabled.  
-d: Mouse and keyboard  
inputs are disabled.  
2 simnow>  
VGA Window is enabled.  
GUI is enabled (console mode).  
See also Section 5.1, “Command-Line Arguments, on page 39 for further information  
regarding available command-line arguments.  
.
To exit a created simulated machine enter „exit‟, as shown in the following example:  
1 simnow> exit  
2 simnow>  
This example exits the simulated machine „1‟.  
Chapter 5: Running the Simulator  
47  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
This page is intentionally blank.  
48  
Chapter 5: Running the Simulator  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
6 Create a Simulated Computer  
This section describes how to create a simulated computer from scratch. We will build a  
computer identical to the “solo.bsd” computer. Please note that this only works if you are  
not using the public release version of the simulator. The public release version of the  
simulator does not support the necessary features which are required to create a  
simulated computer from scratch.  
Figure 6-1 shows the layout of the existing “solo.bsdDevice Window. The device  
position is not important because the connections between devices are completely  
represented by the lines between devices.  
Figure 6-1: Solo.bsd Configuration  
The thickness of the connection between devices represents the number of existing  
connections.  
6.1 BSD Files  
A BSD file contains the configuration of a computer system (how models are connected  
together and their settings), sometimes called a "virtual motherboard description" and a  
checkpoint of the state of all devices in the simulator. BSD files are stored in the  
simulator‟s home directory. For a list of BSD files provided with the simulator, see  
Appendix A.2.1 on page 178.  
6.2 Device Placement  
To place a device into a simulated computer system:  
Chapter 6: Create a Simulated Computer  
49  
Download from Www.Somanuals.com. All Manuals Search And Download.  
     
AMD Confidential  
User Manual  
November 21st, 2008  
1. Open a new simulator instance by launching "SimNow.exe" in your install  
directory.  
2. Select “File→New BSDor click on the  
3. Select “View→Show Devicesor click on the  
Window.  
button to create a new BSD file.  
button to show the blank Device  
4. For each item added, click and drag the icon from the device list on the left side  
into the workspace area on the right side of the window.  
5. Add the Debugger device. This device needs no connections drawn.  
6. Add the AweSim Processor and the AMD 8th Generation Integrated Northbridge.  
When you add the AweSim Processor, CPU Simulation Stats are added to the  
Main Window.  
7. Connect the AweSim Processor and the AMD 8th Generation Integrated  
Northbridge by shift-click-dragging from one to the other. When the  
Connectionstab of Device Properties Window appears (shown in Figure 6-2),  
choose the CPU Bus 0 for both devices, and click on Ok. The connection appears  
as a line between the two devices on the Device Window. Then create an  
additional connection between the two devices using the Interrupt/IOAPIC Bus on  
each device. The Device Window shows only one line for the two connections  
between these devices. You can view the connections for each device by right-  
clicking on the device and looking at the Connectionstab in the Device  
Properties Window.  
Figure 6-2: Connections Tab of Device Properties Window  
8. Add the DIMM Device. Connect it to the AMD 8th Generation Integrated  
Northbridge, using the Northbridge's Memory Bus and the DIMM‟s Generic Bus.  
9. Add the AMD-8151AGP Tunnel. This is a HyperTransporttunnel and AGP  
bridge. Connect it to the Northbridge using each device's HyperTransport Bus 0.  
50  
Chapter 6: Create a Simulated Computer  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
10. Add the Matrox Millenium G400 Graphics Device. This is the simulated video  
device. Connect it to the AMD-8151 AGP Tunnel Device using AMD-8151 AGP  
Tunnel AGP Bus and the Graphics Device's AGP or PCI Bus.  
11. Add the Southbridge Device. Connect it to AMD-8151 AGP Tunnel using AMD-  
8151 AGP Tunnel HyperTransport Bus 1 and HyperTransport Bus 0. Also,  
connect AMD-8111™ to the DIMM device using AMD-8111 System  
Management Bus 0 and DIMM‟s Generic Bus.  
12. Add the Winbond W83627HF SIO device. This is a Super IO device that supports  
keyboard, mouse, and floppy disk. Connect it to Southbridge using Winbond's  
Generic Bus and Southbridge's LPC Bus.  
13. Add the PCI Bus. Connect it to AMD-8111 Southbridge using both devices' PCI  
Bus 0.  
14. Add the Memory Device. This will contain the System BIOS image. Connect it to  
AMD-8111 Southbridge device using AMD-8111 LPC Bus and the Memory  
Device's Generic Bus.  
6.3 Solo.bsd Device Configuration  
To configure each device, right-click on the device and choose Configure Device from  
the workspace popup menu (see also Section 7, Device Configuration, on page 53).  
1. Configure the Matrox Millenium G400 Graphics Device.  
Go to its Configuration tab.  
Choose the BIOS file Images/g400_897-21.bin.  
2. Configure the Memory device.  
Go to its Memory Configuration tab.  
Set the base address to fffc0000.  
Set the Size to 8.  
Set the Init File to Images/ASLA00-3.BIN.  
Check the boxes for Read Only, System BIOS ROM, Memory Address  
Masking, Memory is non-cacheable.  
Clear the boxes for “Initialized unwritten memory.  
3. Configure the PCI device.  
Go to its PCI Bus Configuration tab.  
For the PCI Slot 1, add device ID 4, set Base IRQ Pin to PCIIRQ A, and check  
the Enable Slot box.  
For the next three devices, use Device IDs 5, 6, and 7, with PCIIRQs B, C,  
and D, in that order. Check their “Enable Slot” boxes as well.  
Chapter 6: Create a Simulated Computer  
51  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 6-3: PCI Bus Configuration dialog window  
4. Configure the DIMM Memory device.  
Go to the Dimm 0 tab.  
Click Import SPD.  
Open the SPD file Images/simnow_DDR_256M.spd.  
5. Configure the AweSim CPU device.  
Go to the Processor Type tab.  
Choose the Ahtlon64-754_SH-C0_(800MHz).id product file, as shown in  
6.4 Save and Run  
The created simulated computer is identical to the “solo.bsd” computer. You can close  
the Device Window and save the file from the “FileSave BSDor by clicking on the  
button. All that remains is to set up disk images (see Section 4.1, “Creating A Blank  
and Section 13, “DiskTool, on page 161) and run the simulation.  
52  
Chapter 6: Create a Simulated Computer  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
7 Device Configuration  
Each section in this chapter provides a description of how to configure device models in  
the simulator‟s Device Properties window. These device models include the CPU, CPU  
debugger, Northbridge, DIMM memory modules, AMD graphics device, Southbridge,  
Super IO, memory device, PCA9548- and PCA9556-SMB, PCI bus, AMD-8131™  
PCI-X® device, PCI-X test device, AMD-8132PCI-X2 device, Raid device, SMB Hub  
device, EXDI server and the USB keyboard and mouse devices. These sections should be  
considered as a reference for how to configure a device model and are not intended to  
document how to use the model within the simulator.  
The full release version of the simulator ships with more devices then the public release  
version. Table 7-1 gives an overview of supported devices depending on the simulators  
version.  
Symbol  
Device  
Public Release  
Full Release  
AMD Debugger  
AweSim Processor  
DIMM Bank  
AMD 8th Generation Integrated Northbridge  
AMD-8111™ Southbridge  
AMD-8131™ PCI-X® Controller  
AMD-8132™ PCI-X Controller  
AMD-8151™ AGP Bridge Device  
AMD Graphics Device  
Emerald Graphics Device  
®
Matrox G400/G450 Graphics Device  
PCI Bus  
PCI-X Test Device  
Winbond W83627HF SIO  
Memory Device  
SMB Hub Device  
PCA9548 Device  
PCA9556 Device  
AT24C Device  
USB JumpDrive  
Desktop Network Adapter  
EXDI Server  
Compaq SmartArray 5304  
Chapter 7: Device Configuration  
53  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Symbol  
Device  
Public Release  
Full Release  
USB Keyboard  
USB Mouse  
XTR Device  
ITE 8712 SIO  
ATI SB400/SB600/SB700  
ATI RS480/RD790/RS780/RD890  
AMD “Istanbul/AMD “Sao Paulo/AMD  
Magny-Cours”  
Table 7-1: Supported Devices  
To open a Device Property dialog window, open the Device View window View→Show  
Devicesor click on the button. Then Open the workspace popup menu, right-click on  
a device in the workspace area and select “Configure Device”.  
54  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
7.1 AweSim Processor Device  
The AweSim processor device provides a simulation of an AMD microprocessor.  
Interfaces  
Three interfaces are used in the AweSim device:  
CPU Bus 0. This interface is used to issue memory and I/O read and write requests, as  
well as cache control and input/output signal messages. This interface is generally  
connected to the Northbridge device.  
Interrupt Bus. This interface is used to communicate interrupt request and acknowledge  
messages. This interface is connected to whichever device is used to generate and control  
interrupts - typically the Southbridge device.  
System Messages Interface. This interface is used by the processor device to output  
ASCII and binary log information.  
Initialization and Reset State  
The processor device's state at initialization is equivalent to an industry-standard x86  
processor at initialization. The L1 cache and APIC interfaces are disabled, the debugger  
is off, and the L1 cache is configured as two 2-way, 512-line, and 64-byte caches.  
When the processor device receives a reset, the device resets its internal state in a manner  
consistent with a standard x86 processor. No configuration information is modified.  
Contents of a BSD  
The BSD file contains the current state of all internal processor registers, state variables,  
etc. It also contains all configuration information. Any memory configured locally to the  
processor is saved in the BSD.  
Configuration Options  
The Device Properties Window is used to set various processor identification and  
behavior options. Figure 7-1 shows the Processor Type tab for the AweSim processor  
device. Here you can specify which member of the AMD microprocessor family should  
be simulated. The default is a standard AMD microprocessor. See Section A.2.3, Product  
Note: The public release version of the simulator doesn't contain any product files!  
Chapter 7: Device Configuration  
55  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-1: AweSim Processor-Type Properties  
Figure 7-2 shows the Logging tab for the AweSim processor device. Here you can  
specify the following configuration options:  
Check the Log Disassembly check box to log the disassembly of the instructions executed  
by the processor model.  
Check the Log Register State Changes check box to log all the processor model register  
state changes.  
Check the Log I/O Read/Writes check box to log all real I/O (not memory I/O) generated  
by the processor model.  
Check the Log Linear Memory Accesses check box to log all memory accesses based on  
linear memory. This logs all 'data' memory accesses generated by the processor model.  
This does not log code fetch memory accesses, nor 'physical' memory accesses (for  
example, page table access-and dirty-bit updates).  
Check the Log Exceptions check box to log all exceptions generated by the processor  
model.  
56  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-2: AweSim Processor Logging Properties Dialog  
Log Messages  
This device produces log messages to the Message Log Window as specified by the  
options in the Message Log Windows (see Section 9 Logging”, on page 141).  
Difference from Real Hardware  
While the processor device is a faithful simulation of the software-visible portion of an  
AMD microprocessor, it is not a model of the specific AMD microprocessor hardware.  
Because of this, the processor device is not equivalent in certain areas. Any issues related  
to timing, such as the time to execute a given instruction, will be different. The TLB  
models do not exactly match any particular processor, so any software that depends on  
exact TLB walking behaviors may not function correctly.  
Chapter 7: Device Configuration  
57  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
7.2 Debugger Device  
The debugger allows debugging tasks such as break-pointing, single-stepping, and other  
standard tasks.  
Interfaces  
The debugger has no interfaces; the debugger is present if it is in the Device Window. To  
add the Debugger Device follow these steps:  
1. Select View→Show Devices.  
2. Click and drag the Debugger Device icon from the device list on the left side  
into the workspace area on the right side of the Device Window.  
3. Add an additional debugger for each processor you wish to debug.  
Initialization and Reset State  
The debugger initially is disabled and attached to processor 0.  
Configuration Options  
In the Main Window, select “ViewShow Debugger”. Click the Attach button to  
configure which processor is being debugged.  
To use the CPU Debugger, please refer to Section 10.1, Using the CPU Debugger, on  
page 147.  
Log Messages  
This device does not create log messages.  
58  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.3 DIMM Device  
The DIMM device provides a simulation model of an array of up to four dual-inline-  
memory modules (DIMMs). The model provides RAM storage and serial presence detect  
(SPD) ROM access for each DIMM. Bytes 0, 5, 13, and 31 (zero-based) of the SPD data  
are used to configure the DIMM model. The remaining SPD entries are available for  
BIOS probing, but are not used to configure the DIMM model.  
The RAM array for each DIMM is sized based on parameters contained in the SPD array.  
SPD array bytes 5 and 31 are used to calculate the size of the DIMM's RAM array. If  
byte 0 in the SPD array has a value of zero, then the DIMM device does not respond to  
any SMBUS read attempts on the module. This indicates to the reading device that an  
SPD ROM is not available on the DIMM module. By appropriately setting bytes 5 and  
31, and clearing byte 0, the model simulates a valid DIMM that contains no SPD ROM.  
Dual data rate (DDR) DIMMs use bidirectional data strobe signals to latch data on  
transfers. The Northbridge device contains Programmable Delay Lines (PDLs) that are  
used to delay the Data Qualification Signal (DQS) signals so that the edges are centered  
on the valid data window. BIOS algorithms are used to locate the valid data window and  
adjust the PDLs accordingly.  
Physical DIMMs provide 8 bytes of data per access. On the module, the 8 bytes of data  
are stored across several memory devices. The data width of the memory devices on the  
DIMM (SPD byte 13) determines how many PDLs are used. DIMMs that use 8-bit or 16-  
bit memory devices use one PDL per byte of width (eight total PDLs). DIMMs that use  
4-bit devices use one PDL per nibble (16 total PDLs).  
The memory controller in the AMD Opteronprocessor includes two DDR channels  
that are ganged into a single effective 128-bit interface. Each access to memory hits a pair  
of 64-bit DIMMs, where one DIMM supplies the lower 64 bits while the other DIMM  
supplies the upper 64 bits. Each DIMM must have the same arrangement in size and  
number of banks.  
For each valid access to DRAM, the memory controller will assert one of eight bank-  
select lines (CS7:0). Each bank-select line selects one “virtual bank.” A virtual bank is  
the combination of one bank on the lower DIMM, and the corresponding bank on the  
upper DIMM. Row and column addresses select the data offset within the virtual bank.  
Chapter 7: Device Configuration  
59  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-3: AMD Opteron™ Processor Virtual Bank-Select Line Configuration  
Memory controllers in AMD Athlon64 provide eight bank select lines. However, in  
this case, each bank-select is routed to only one physical DIMM bank, i.e., the banks are  
not ganged.  
Figure 7-4: AMD Athlon64 Processor Bank-Select Line Configuration  
Configuration of the DIMM Device allows the user to specify SPD data for each  
simulated DIMM. The number of DIMMs supported in the DIMM Device model is  
dependent on the type of CPU used in the system. If the CPU type is an AMD Opteron  
processor, then the DIMM Device will assume a 128-bit memory interface and therefore  
allow configuration of up to eight individual DIMMs. If the CPU type is something other  
than AMD Opteron, then the DIMM device assumes a 64-bit memory interface and  
accepts configuration for only four DIMMs. It isn‟t until the simulation is started that the  
DIMM Device can determine what type of CPU is present. For this reason, the DIMM  
Device will initially display configuration tabs for 8 DIMMs even when used with a CPU  
that is not based on the AMD Opteron processor. After the simulation is started, the  
DIMM device will remove and ignore any configuration of DIMMs 4-7 if a processor  
other than the AMD Opteron is detected.  
60  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Once the simulation is started, the DIMM Device allocates memory arrays to hold the  
DRAM data. One array is allocated for each bank or virtual bank. In the case of 64-bit  
memory interfaces, memory arrays are allocated to match the size of the physical banks  
on each DIMM. If the memory interface is 128 bits, then the memory arrays are sized to  
the sum of the physical bank pairs that make up the virtual banks. For example:  
Virtual bank0 is the combination of physical bank0 on DIMM0 and physical bank0 on  
DIMM1. If physical bank0 on each DIMM is 32MB in size, then the array allocated for  
virtual bank0 is sized at 64MB.  
Each virtual bank is handled like it is one large bank, rather than two combined smaller  
banks. The model does not distinguish between addresses that hit in the upper physical  
bank and addresses that hit in the lower physical bank.  
Memory read- and write-messages sent to the DIMM Device use the same structure for  
both 128-bit and 64-bit interfaces. Each message includes a bank select field, an address  
field, and a data size field. The bank select field implements the CS7:0 lines while the  
address field specifies the beginning offset within the bank/virtual bank, and the data size  
field specifies the size of the datum.  
Interfaces  
The DIMM device is implemented as a single-interface device. However, the device  
accepts two distinct classes of messages: RAM read/write messages, and SMBUS reads  
of SPD data. In most system configurations, the DIMM device is connected to a  
Northbridge device's DIMM interface as well as a Southbridge device's SMBUS  
interface.  
Initialization/Reset State  
On creation of the DIMM device, all RAM arrays are set to all ones, and SPD ROM  
arrays are cleared. Reset initializes the RAM arrays to all ones, but does not alter the SPD  
ROM arrays. Configuration options are not affected by reset.  
Contents of a BSD  
The RAM arrays, SPD ROM arrays, and all configuration option settings are saved in the  
BSD.  
Configuration Options  
Chapter 7: Device Configuration  
61  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-5: DIMM-Bank Options Properties Dialog  
Figure 7-5 shows the dialog for configuring DIMM-bank options.  
The PDL Error Simulation Control section specifies the type of error that the DIMM  
device will generate, when a memory read is attempted and when a Northbridge PDL is  
set outside the valid response range. These settings apply to all four simulated DIMMs.  
If Enable PDL Error Simulation is selected, then the DIMM device monitors PDL  
settings for all RAM reads. The 0xFF option specifies that the return data should be  
forced to all ones. The Invert option specifies that the return data should be a bitwise  
inversion of the valid data.  
The SMB Base Address entry selects the 8-bit address that this DIMM device responds to.  
The SMB address is used for the reading of DIMM SPD data  
62  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-6: DIMM Module Properties Dialog  
The two DIMM module configuration dialogs, shown in Figure 7-6, (DIMM0 DIMM1)  
provide module-specific setup options for each simulated DIMM. The two DIMM  
module configuration dialogs share the same format.  
Note: The public release of the simulator does not support any of the options shown in  
Figure 7-6. To change the simulated memory size please use the Memory Configurator,  
Chapter 7: Device Configuration  
63  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
The upper part of the dialog lists some summary information. This information, which is  
derived from the SPD data, gives a quick indication of the type of device being  
simulated.  
The center section of the dialog lists all 256 bytes of data held in the simulated SPD  
ROM. The list box provides a description of each byte index in the ROM. If a description  
is selected, the corresponding data byte is displayed in the text box to the right.  
The Import SPD and Export SPD buttons provide the option of loading and saving SPD  
ROM data. The file format is an unformatted binary image, with an extension of “*.spd”.  
The bottom section of the dialog is used to configure DDR PDL Response ranges for the  
simulated DIMM. PDL response ranges can be individually set for each of 16 PDLs.  
Adjusting the Low and High value modifies the response range for a particular PDL.  
When an appropriate response range is set for one PDL, the same range can be applied to  
all 16 PDLs by clicking on the Match PDLs button. The Reset PDLs button sets all 16  
PDL response ranges to their maximum range (0 - 255).  
Log Messages  
This device does not produce log messages.  
Difference from Real Hardware  
The DIMM device does not simulate timing-related issues except for PDL error  
simulation. The performance of real DIMM hardware is highly dependent on timing and  
loading issues.  
ECC simulation is not provided.  
64  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.4 Emerald Graphics Device  
The Emerald graphics device provides an industry-standard PCI/AGP VGA-compatible  
video device. The device provides a fully functional set of PCI configuration registers.  
The AGP interface is currently somewhat minimal, and is not capable of generating AGP  
cycles nor AGP-specific modes at this time.  
The Emerald graphics device is comprised of a standard VGA and the Emerald Graphics  
sub device. The graphics display engine automatically switches between the Emerald  
Graphics sub device and the VGA as necessary to display the selected video modes, with  
only one being able to display at a time. The VGA sub device provides an industry-  
standard VGA interface used by BIOS and DOS. The Emerald Graphics device provides  
an AGP and PCI graphics device interface controllable either by VESA BIOS extensions  
or a video driver. In addition to the VGA standard modes, Emerald Graphics supports a  
wide range of graphics modes from 320x200 at 16-bit color up to 2048x1536 at 32-bit  
color with either the VESA BIOS extensions or a video driver.  
Interfaces  
The Emerald graphics device has both a PCI slot and an AGP bus connection, only one of  
which can be used at any time to connect to PCI slots or AGP bus ports in other devices.  
Initialization and Reset State  
Upon initial creation, this device initializes the internal registers to VGA standard reset  
state, and creates a display window that acts as the VGA display. The Configuration  
options are initialized to enable both the VGA and Emerald Graphics. The frame-buffer  
size is initialized to 16 Mbytes and the Bios File memory area is initialized to all ones.  
A reset will re-load the default PCI configuration registers and place default values in the  
Chip and FIFO configuration for the Emerald Graphics device.  
Contents of a BSD  
The data saved in the BSD depends on the mode the graphics controller was in when the  
BSD was saved. If the graphics controller was in VGA mode, the BSD file contains the  
contents of all VGA registers, a copy of the 256-Kbyte VGA frame buffer, and all  
configuration information. If the graphics controller was in a high-resolution mode (non-  
VGA in Windows) the frame buffer, Emerald Graphics registers, and PCI configuration  
registers are saved in the BSD. When the BSD file is reloaded, all registers and the frame  
buffer are restored, and a display image is captured and displayed in the display window.  
Configuration Options  
VGA Sub Device Configuration  
Chapter 7: Device Configuration  
65  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-7: Graphics-Device VGA Sub Device Properties Dialog  
In Figure 7-7, the BIOS File option enables you to load different VGA BIOS ROMs into  
the device. The VGA ROM is assumed to be a maximum of 32-Kbytes, and is assigned to  
ISA bus address 0x000C0000 - 0x000C7FFF, which is the industry-standard location.  
This file must be a standard binary file, with the correct header and checksum  
information already incorporated.  
The VGA enabled checkbox enables or disables the VGA registers. If it is not checked,  
the VGA registers are not updated and the display window will not display from the  
VGA frame buffer.  
Frame Buffer Sub Device Configuration  
In Figure 7-8, the Frame Buffer Size (Mbytes) sets the size of the frame-buffer in  
megabytes. The value placed in this option is only read at reset. The frame-buffer size  
can not be dynamically modified.  
The Accelerator Enabled checkbox enables or disables the graphics accelerator. The  
accelerator is enabled by default.  
The VESA BIOS Extensions Enabled checkbox enables or disables the VESA BIOS  
support. The VESA BIOS Extensions are enabled by default.  
66  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-8: Graphics Device Frame Buffer SubDevice Properties  
Difference from Real Hardware  
The Emerald Graphics device currently does not simulate any specific graphics hardware,  
it simulates something functionally “like” a modern graphics adapter, with only 2D  
acceleration implemented at this time. Drivers are Windows only at the moment.  
When the VGA display window has the focus, any keyboard messages and mouse-click  
messages received by the window are routed via a DEVCWINDOWMSG message  
through the simulators I/O subsystem. The keyboard or mouse device accepts these  
messages and simulates key-presses and key-releases to match the keys. While certain  
key combinations do not result in the generation of keyboard messages by the OS, this  
does enable you to use the real keyboard to interact with the simulation in many cases.  
Supported VESA BIOS Graphics Modes  
Only supports flat and linear frame buffer, with 16-bit/64K (5:6:5) colors and 32-  
bit/16.8M (8:8:8:8) colors modes.  
Table 7-2 shows the subset of "standard" VESA mode numbers supported.  
Mode Number  
10Eh  
Resolution  
320x200  
Color depth  
16-bit  
111h  
640x480  
16-bit  
114h  
800x600  
16-bit  
117h  
11Ah  
1024x768  
1280x1024  
16-bit  
16-bit  
Table 7-2: Supported Standard VESA Modes  
Table 7-3 shows the supported custom VESA mode numbers.  
Chapter 7: Device Configuration  
67  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Mode Number  
140h  
141h  
142h  
143h  
144h  
145h  
146h  
147h  
Resolution  
320x200  
640x480  
Color depth  
32-bit  
32-bit  
32-bit  
32-bit  
16-bit  
32-bit  
16-bit  
32-bit  
32-bit  
16-bit  
32-bit  
16-bit  
32-bit  
16-bit  
32-bit  
16-bit  
32-bit  
800x600  
1024x768  
1280x720  
1280x720  
1280x960  
1280x960  
1280x1024  
1600x1200  
1600x1200  
1920x1080  
1920x1080  
1920x1200  
1920x1200  
2048x1536  
2048x1536  
148h  
149h  
14Ah  
14Bh  
14Ch  
14Dh  
14Eh  
14Fh  
150h  
Table 7-3: Supported Custom VESA Modes  
Improve Graphics Performance  
When you run Windows in simulation and you open a menu, list box, tool-tips, or other  
screen element, the object may open very slow. To disable this option, use the following  
steps:  
1. Click Start, point to Settings, and then click Control Panel.  
2. Double-click Display.  
3. Click Effects, clear the Use the following transition effects for menus and  
tooltips check box, click ok, and then close Control Panel.  
68  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
7.5 Matrox MGA-G400 PCI/AGP  
The Matrox G400 graphics device provides a high performance PCI/AGP VGA-  
compatible video device. The device provides a fully functional set of PCI configuration  
registers, and a 2D drawing engine. The AGP interface is currently somewhat minimal,  
and is not capable of generating neither AGP cycles nor AGP-specific modes at this time.  
High performance device drivers are available for most operating systems (Windows,  
Linux, and Solaris). The Matrox G400 supports full acceleration of all GDI and  
DirectDraw functions.  
Figure 7-9 shows the integrated components of the Matrox G400 graphics device.  
Features and components which are currently not supported by the Matrox G400 graphics  
device model have a symbol in the following block diagram.  
High Resolution Color  
Monitor  
Up to 2056 x 1536 at  
32 bpp  
Not Supported!  
C
RAMDAC  
Programmable  
Second CRTC  
VIP/VMI Port  
CODEC Port  
Ultra-pipelined  
Unit  
Floating Point Setup Engine  
MAFC Port  
Primary CRTC  
(CSC)  
Advanced 3D Texturing and  
Rendering Engine  
Video Scaling  
2D Engine  
Color Space  
32bit VGA  
128-bit Frame Buffer Memory  
Interface  
PCI or AGP  
2x/4x Interface  
16- or 32-Mbytes  
SGRAM or SDRAM  
Local Frame Buffer Memory  
Figure 7-9: Matrox G400 Block Diagram  
Chapter 7: Device Configuration  
69  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Interfaces  
The Matrox G400 graphics device has both a PCI bus and an AGP bus connection, only  
one of which can be used at any time to connect to PCI bus or AGP bus ports in other  
devices.  
Initialization and Reset State  
Upon initial creation, this device initializes the internal registers to Matrox G400 standard  
reset state, and creates a display window that acts as the VGA display. The Configuration  
options are initialized to enable both the VGA and Matrox Power Graphics Mode. The  
frame-buffer size is initialized to 32 Mbytes and the Bios File memory area is initialized  
to all ones.  
A reset will re-load the default PCI configuration registers and place default values in the  
Chip and FIFO configuration for the Matrox G400 graphics device.  
Contents of a BSD  
The data saved in the BSD depends on the mode the graphics controller was in when the  
BSD was saved. If the graphics controller was in VGA mode, the BSD file contains the  
contents of all VGA registers, a copy of the 256-Kbyte VGA frame buffer, and all  
configuration information. If the graphics controller was in Matrox Power Graphics  
Mode (non-VGA in Windows) the linear frame buffer, Power Graphics registers, and PCI  
configuration registers are saved in the BSD. When the BSD file is reloaded, all registers  
and the frame buffer are restored, and a display image is captured and displayed in the  
display window.  
Configuration Options  
Figure 7-10 shows the Information tab. The following information describes the active  
configuration of the Matrox G400 graphics device.  
The Graphics Hardware Model can be set to one of the following models:  
Matrox Millennium G400 PCI  
Matrox Millennium G400 AGP  
Currently there is only support for the Matrox G400 chip with SingleHead feature  
support available.  
The Graphics BIOS version is the version of the BIOS that is assigned and used by the  
graphics device. If you flash the BIOS the version number will change. For more  
information about flashing the graphics device BIOS see Figure 7-11.  
The Graphics Memory section shows information about the current memory  
configuration of the graphics device. Currently supported memory configurations are:  
32/16 MB SGRAM with 300 MHz RAMDAC  
32/16 MB SDRAM with 300 MHz RAMDAC  
70  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-10: Matrox G400 Information Property Dialog  
The Configuration tab displays details about the active configuration of the Matrox G400  
graphics device.  
If you want to change the active configuration, click on the Configuration Tab (see  
Chapter 7: Device Configuration  
71  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-11: Matrox G400 Configuration Properties  
The BIOS ROM File input field gives you the ability to load different Matrox G400 BIOS  
ROMs into the device. This is in particular useful if Matrox releases a new BIOS ROM  
file which has improvements or bug fixes.  
To  
check  
for  
new  
Matrox  
BIOS  
ROM  
releases  
go  
to  
The Matrox G400 ROM has a maximum size of 32-Kbytes, and is assigned to ISA bus  
address 0x000C0000 - 0x000C7FFF, which is the industry-standard location.  
The Configuration tab lets you choose from six different Matrox G400 graphics adapters.  
For instance, if you prefer to use a Matrox Millennium G400, SingleHead, 16 Mbytes of  
SDRAM, with a 300 MHz RAMDAC, instead of the default adapter then select this  
adapter from the Millennium G400 Adapters list. To apply the new configuration, click  
on the „Ok‟ button.  
Note if you make any changes in the Configuration tab you must restart or reset your  
simulation before the new configuration will take effect!  
Difference from Real Hardware  
The Matrox G400 graphics device is a faithful simulation of the software-visible portion  
of a Matrox G400 adapter; it is not a model of the specific Matrox G400 hardware.  
Because of this, the graphics device is not equivalent in certain areas. Any issues related  
72  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
to timing, such as the vertical retrace time, will be different. Any software that depends  
on exact timing behavior may not function correctly.  
The following features are only partially implemented. Any software that depends on  
these features may not function correctly.  
Translucency / Full Alpha-Blending  
Full Texture Mapping  
Gouraud Shaded Fills (ALPHA, FOG, STENCIL)  
Trapezoids functions  
Bitblts  
a. Color Patterning 8x8  
b. Expansion (Character Drawing) 1 bpp Planar  
Lines  
a. With Line-style  
b. With Depth  
c. Polyline/Polysegment using Vector Pseudo-DMA Mode  
Image Load (ILOAD)  
a. Linear-Color Expansion (Character Drawing) 1 bpp  
b. Loading the Texture Color Palette  
Loading any accelerator registers through the Pseudo DMA Window  
ZBuffer Direct Access Procedure when ZBuffer is in AGP Space  
Table-Fog  
Video Scaler  
Texture Unit blending  
Texture Staging  
Supported 2D Features  
Bus-Mastering (PCI/AGP)  
Raster Operations: 0, ~(D | S), D & S, D & ~S, ~S, (~D) & S, ~D, D ^ S, ~(D  
& S), D & S, ~(D ^ S), D, D | ~S, S, (~D) | S, D | S, 1  
Hardware Clipping  
Software-/Hardware-Cursor  
a. Three-Color Cursor  
b. XGA Cursor  
c. X-Windows Cursor  
d. 16-Color Palletized Cursor  
Bitblts  
a. Two-Operand  
b. Transparent Two-Operand  
c. With Expansion (Character Drawing) 1bpp  
Image Load (ILOAD)  
a. Two-operand  
b. With Expansion (Character Drawing) 1bpp  
Rectangles  
Chapter 7: Device Configuration  
73  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
a. Patterned Fills  
b. Constant Shaded  
c. Gouraud Shaded (partially)  
d. Texture Mapping (partially)  
Trapezoids  
a. Constant Shaded  
Lines  
a. Auto-Lines (line open/line close)  
b. Solid-Lines (line open/line close)  
8, 15, 16, 24, and 32 Bits Per Pixel video modes  
ILOAD Pseudo- DMA Window Transfers  
Programmable, transparent BLTer  
Linear packed pixel frame buffer  
Supported DirectX 6.1 Features  
Alpha Test0  
Alpha Blending Functions  
a. Normal-Blending  
b. Transparency-Blending  
c. Additive-Blending  
d. Soft-Additive-Blending  
e. Multiplicative-Blending  
Depth Test (Z-Buffer) 15-bit, 16-bit, 24-bit, and 32-bit  
Texel-Width (4-, 8-, 12-, 15-, 16-, and 32-bit  
UV Texture Coordinate support  
DMA-Vertex Engine  
Supported Graphics Modes  
The Matrox G400 provides three different display modes: text (VGA or SVGA), VGA  
graphics, and SVGA graphics. Table 7-4 list all of the display modes which are available  
through BIOS calls.  
Mode Number  
0x00  
Type  
Organization  
Resolution No. of colors  
Supported  
VGA 40x25 Text  
VGA 40x25 Text  
VGA 80x25 Text  
VGA 80x25 Text  
360x400  
360x400  
720x400  
720x400  
320x200  
320x200  
640x200  
720x400  
320x200  
640x200  
640x350  
640x350  
640x480  
640x480  
320x200  
16  
0x01  
0x02  
0x03  
0x04  
0x05  
0x06  
0x07  
0x0D  
0x0E  
0x0F  
0x10  
0x11  
0x12  
0x13  
16  
16  
16  
4
4
2
VGA Packed-pixel 2 bpp  
VGA Packed-pixel 2 bpp  
VGA Packed-pixel 1 bpp  
VGA 80x25 Text  
VGA Multi-plane 4 bpp  
VGA Multi-plane 4 bpp  
VGA Multi-plane 1 bpp  
VGA Multi-plane 4 bpp  
VGA Multi-plane 1 bpp  
VGA Multi-plane 4 bpp  
VGA Packed-pixel 8 bpp  
2
16  
16  
2
16  
2
16  
256  
74  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Mode Number  
Type  
Organization  
Resolution No. of colors  
Supported  
0x0108  
0x0109  
0x010A  
0x010B  
0x010C  
VGA 80x60 Text  
VGA 132x25 Text  
VGA 132x43 Text  
VGA 132x50 Text  
VGA 132x60 Text  
640x480  
1056x400  
1056x350  
1056x400  
1056x480  
640x400  
640x480  
640x480  
640x480  
640x480  
800x600  
800x600  
800x600  
800x600  
800x600  
1024x768  
16  
16  
16  
16  
16  
0x0100 SVGA Packed-pixel 8 bpp  
0x0101 SVGA Packed-pixel 8 bpp  
0x0110 SVGA Packed-pixel 16 bpp  
0x0111 SVGA Packed-pixel 16 bpp  
0x0112 SVGA Packed-pixel 16 bpp  
0x0102 SVGA Multi-plane 4 bpp  
0x0103 SVGA Packed-pixel 8 bpp  
0x0113 SVGA Packed-pixel 16 bpp  
0x0114 SVGA Packed-pixel 16 bpp  
0x0115 SVGA Packed-pixel 32 bpp  
0x0105 SVGA Packed-pixel 8 bpp  
0x0116 SVGA Packed-pixel 16 bpp 1024x768  
0x0117 SVGA Packed-pixel 16 bpp 1024x768  
0x0118 SVGA Packed-pixel 32 bpp 1024x768  
0x0107 SVGA Packed-pixel 8 bpp 1280x1024  
0x0119 SVGA Packed-pixel 16 bpp 1280x1024  
0x011A SVGA Packed-pixel 16 bpp 1280x1024  
0x011B SVGA Packed-pixel 32 bpp 1280x1024  
0x011C SVGA Packed-pixel 8 bpp 1600x1200  
0x011D SVGA Packed-pixel 16 bpp 1600x1200  
0x011E SVGA Packed-pixel 16 bpp 1600x1200  
256  
256  
32K  
64K  
16M  
16  
256  
32K  
64K  
16M  
256  
32K  
64K  
16M  
256  
32K  
64K  
16M  
256  
32K  
64K  
Table 7-4: Matrox G400 VESA Modes  
Memory Interface  
The Matrox G400 supports a total of 32 megabytes of SGRAM/SDRAM memory  
comprised of one or two banks of 8, 16, or 32 Mbytes each.  
In Power Graphics Mode, the resolution depends on the amount of available memory.  
Table 7-5 shows the memory configuration for each standard VESA resolution in pixel  
depth.  
Single Frame Buffer Mode  
No Z  
Resolution 8-bit 16-bit 24-bit 32-bit 8-bit 16-bit 32-bit  
Single Z-Buffer  
Z 16 bits  
Z 32 bits  
16-bit  
8M  
8M  
8M  
8M  
8M  
8M  
16M  
16M  
16M  
16M  
32M  
8-bit  
8M  
8M  
32-bit  
8M  
8M  
8M  
8M  
640x480  
720x480  
800x600  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
16M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
16M  
8M  
16M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
16M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
16M  
8M  
16M  
8M  
8M  
8M  
8M  
1024x768  
1152x864  
1280x1024  
1600x1200  
1920x1080  
1800x1440  
1920x1200  
2048x1536  
8M  
8M  
8M  
8M  
8M  
8M  
8M  
10M  
16M  
16M  
16M  
16M  
32M  
16M  
16M  
16M  
16M  
32M  
16M  
16M  
16M  
16M  
16M  
Table 7-5: Supported Resolutions in Power Graphics Mode  
Chapter 7: Device Configuration  
75  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Supported Guest Operating Systems  
Table 7-6 shows all operating systems which are tested and known to work with the  
Matrox G400 graphics device model:  
Guest Operating System  
Device Driver Version  
N/A  
5.93.009  
5.93.009/1.11.00.114SE  
5.93.009/1.11.00.114SE  
N/A (VESA only)  
Standard MGA Driver  
XF86 MGA Solaris  
Known Issues  
No known issues.  
No known issues.  
No known issues.  
No known issues.  
No known issues.  
No known issues.  
No known issues.  
MS-DOS  
Windows 2000  
Windows XP (32-bit/64-bit)  
Windows Server 2003 (32-bit/64-bit))  
Windows Vista Beta 2 Build 5308 (32-bit/64-bit)  
Linux (32-bit/64-bit), RedHat/SuSE/SuSE Xen  
Solaris 10 for AMD64  
Table 7-6: Supported Guest Operating Systems  
Improve Graphics Performance  
When you run Windows in simulation and you open a menu, list box, tool-tips, or other  
screen element, the object may open slowly. To disable this option, use the following  
steps:  
1. Click Start, point to Settings, and then click Control Panel.  
2. Double-click Display.  
3. Click Effects, clear the Use the following transition effects for menus and tool  
tips check box, click ok, and then close Control Panel.  
Or:  
1. Right click on My Computer and select Properties.  
2. Click on Advanced, Performance, and then on Settings….  
3. Select the Adjust For Best Performance option.  
4. Click on Apply.  
Also make sure you have installed the Matrox G400 graphics device drivers. You can  
download the latest Matrox Millennium G400 graphic device drivers for Windows and  
Enabling Graphics Hardware Acceleration on Windows Server Operating Systems  
Graphics Hardware Acceleration and DirectX are disabled by default on a Windows  
Server configuration to ensure maximum stability and uptime. But if you need to improve  
the graphics performance the following steps will guide you through on how you can  
enable hardware acceleration.  
1. Right-click the desktop, and then click Properties on the menu.  
2. Click the Settings tab, and then click on Advanced.  
3. Click the Troubleshoot tab.  
4. Move the Hardware Acceleration slider across to full (see Figure 7-12).  
5. Click Ok, and then click Close.  
76  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-12: Enable Full Hardware Acceleration on WindowsXP guest  
Enabling Hardware Cursor Support  
Please follow the following steps to enable native hardware cursor support on Windows  
platforms:  
1. Install latest Matrox G400 drivers.  
2. Reboot computer.  
3. Right click on “My Computer” and select “Properties”.  
4. Click on “Advanced‟, “Performance”, and then on “Settings…”.  
5. Uncheck “Show shadows under mouse pointer” checkbox.  
6. Click on “Apply”  
Chapter 7: Device Configuration  
77  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
7.6 Super IO Devices: Winbond W83627HF SIO / ITE 8712 SIO  
Device models of the Super IO device contain the keyboard, PS/2 mouse, floppy, COM1,  
COM2, LPT1, IR, fan, GPIO, MIDI, and joystick devices, as well as PCI support and  
control information. The COM1 and COM2 devices create named-pipes "SimNow.Com1"  
and "SimNow.Com2and send all serial communication through these.  
Interfaces  
The Super IO device model has a single interface connection, and is connected to the  
LPC connection of the Southbridge device.  
Initialization and Reset State  
The following conditions represent the keyboard and/or mouse during initialization and  
reset state:  
A20 and reset released.  
Mouse scaling set to 1.  
Mouse resolution set to 4.  
Stream mode off.  
Mouse sample rate set to 100.  
All sticky keys released.  
Keyboard output port set to 0xDF.  
The floppy is initialized with no drive image present. Reset clears the controller to an idle  
state. If an image is loaded, reset does not unload the image.  
COM1 and COM2 are initialized with 9600 Baud, no parity, 8-bit words, 1 stop bit, and  
interrupts off.  
The parallel port initializes with the data and control ports set to zero. Reset clears these  
ports to their initial values.  
The following devices have no functionality behind them at this time, with the exception  
of their configuration registers. These registers are initialized and reset to the values  
specified in the Super I/O specification:  
IR  
GPIO  
MIDI  
Joystick  
Fan  
Contents of a BSD  
Keyboard and Mouse  
78  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
Floppy  
COM1 and COM2  
LPT1  
IR  
GPIO  
MIDI  
Joystick  
Fan  
All devices store their current state in the BSD files, as well as any data that may be  
buffered at the time of the save. Register content is also saved for all devices.  
Configuration Options  
The Super I/Os have the capability of setting device breakpoints on an event basis. In this  
case, the event is the sequence of writes to access the Super I/O's device configuration  
registers. Selecting the PNP Lock/Unlock Registers option in Figure 7-13 activates the  
breakpoint anytime the lock and unlock sequence is hit. The other option is to set  
breakpoints to trigger whenever any of the device configuration registers are accessed.  
Figure 7-13: Super IO Properties Dialog: Winbond W83627HF  
Chapter 7: Device Configuration  
79  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Floppy Configuration Options  
The floppy is capable of reading disk images of real floppies created with the DiskTool  
Utility, described in Section 13, on page 161. To use an image, first create an image file  
with DiskTool and then specify the floppy image file in the Super I/O configuration  
dialog page.  
Difference from Real Hardware  
Keyboard, Mouse, Floppy, COM1 and COM2 differ from real hardware. Baud rate,  
parity, and stop bits are ignored. Communication is always available. Baud rate timing is  
approximate. Modem status and line status always show the device is ready.  
The default values of the control registers are read-writable or read only as defined by the  
appropriate Super IO specification.  
80  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.7 Memory Device  
The memory device enables you to add memory devices to the system. You can  
configure the memory device for emulation of ROM or dynamic memory. You specify  
the total memory size and the beginning address to which the device should respond.  
The memory device can also be configured as a LPC flash device. It currently models  
2Mb (SST49LF020A), 4Mb (SST49LF040A), 8Mb (SST49LF080A) and 16Mb  
(SST49LF160C) flash memory devices. Note that we support two command sequences  
used generally by flash memory - SST and ATMEL. User should configure the flash  
memory to the appropriate command sequence to get desired results. The SST49LF160C  
device  
uses  
the  
ATMEL  
command  
sequence  
while  
SST49LF020A/SST49LF040A/SST49LF080A use the SST command sequence.  
Interfaces  
The memory device has a general-purpose interface that you can connect to any other  
type of port. No selection is necessary when connecting this memory device to another  
device.  
Initialization and Reset State  
The default state of the device is a RAM memory device that is at a base address of  
0x00000000 and a size of 4 Gigabytes. The memory has no default content. When an  
initialization file is specified, the memory device's contents contain the data from that  
binary file.  
After a reset, the memory device reverts back to the initialization file contents.  
Contents of a BSD  
The contents of memory, as well as all configuration information, are stored in the BSD.  
Configuration Options  
The first field of the Memory Configuration tab, shown in Figure 7-14, is the base  
address of the device in a hexadecimal value.  
The second field is the total size of the memory device, given in decimal value for the  
number of 32-Kbyte blocks you would like created (32-Kbyte blocks are used because  
non-initialized memory is dynamically allocated when addressed in 32-Kbyte chunks).  
The third field is the name of the binary file you use to initialize the memory contents.  
The device initializes memory for the content length of the file. If you specify a 512-  
Kbyte ROM and use a 256-Kbyte image file, the first 256 Kbytes are initialized. The Init  
File selection comes with a browse button for easier selection.  
Selecting the Read-Only option turns the memory device into a ROM. Writes to the  
device are ignored when the Read-Only option is selected.  
Chapter 7: Device Configuration  
81  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Selecting the System BIOS ROM option tells the memory device it is the system BIOS.  
The memory device only responds to memory address ranges accompanied by a chip-  
select that is generated by the Southbridge device.  
Selecting Flash Mode option tells the memory device that it is configured as a flash  
memory device. There are two command sequences supported by our flash memory  
device - SST and ATMEL, which can be selected by the drop down below.  
Selecting the Memory Address Masking option indicates that the address received by the  
memory device is masked by a bit mask with the same number of bits as the size of the  
memory device (e.g., a 256-Kbyte ROM uses an 18-bit mask, or it is masked by  
0x003FFFF). This enables the ROM to be remapped dynamically into different memory  
address ranges in conjunction with the aforementioned chip-select.  
Selecting the Initialized unwritten memory to (hex): option initializes otherwise not  
initialized memory, with a separate field for specifying the byte to use for initialization.  
Selecting the Memory is non-cacheable option tells the system if the memory described  
by the device is non-cacheable.  
Figure 7-14: Memory Configuration Properties Dialog  
82  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Difference from Real Hardware  
The memory device differs in that it is a generic memory model. When configured as a  
BIOS ROM, it does not contain flash-specific information that a modern flash ROM  
contains (for programming information purposes).  
Chapter 7: Device Configuration  
83  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.8 PCA9548 SMB Device  
The PCA9548 is an 8-channel System Management Bus (SMB) switch.  
Interface  
The PCA9548 has one input port and eight output ports, as well as a programmable  
interface that directs the switch which output port to forward messages to.  
Initialization and Reset State  
The PCA9548 has the input value specified in its configuration dialog window.  
Contents of a BSD  
The PCA9548 saves its SMB base address and input pin value.  
Configuration Options  
Figure 7-15: PCA9548 SMB Configuration Properties Dialog  
The PCA9548 allows you to set its SMB base address.  
84  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
7.9 PCA9556 SMB Device  
The PCA9556 is a registered System Management Bus (SMB) interface. When queried  
from its SMB base address, it returns the value of its input pins.  
Interfaces  
The PCA9556 has one output port.  
Initialization and Reset State  
The PCA9556 has the input value specified in its configuration dialog window.  
Contents of a BSD  
The PCA9556 saves its SMB base address and input pin value.  
Configuration Options  
Figure 7-16: PCA9556 SMB Configuration Properties Dialog  
The PCA9556 allows you to set its SMB base address and input pin values.  
Chapter 7: Device Configuration  
85  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
7.10AMD 8th Generation Integrated Northbridge Device  
The AMD 8th Generation Integrated Northbridge device supports the AMD 8th  
generation family of processors - AMD Athlon64 and AMD Opteron™ processors.  
Although the physical processor chip has a Northbridge built in, for simulation purposes,  
the Northbridge is considered as a separate unit. Features include HyperTransport™  
technology (for coherent and non-coherent connections) and a memory controller. The  
integrated debugging functions of the 8th generation processors are not included.  
Interface  
The Northbridge device has several connection points. It has multiple HyperTransport  
bus ports that connects to the other AMD 8th Generation Integrated Northbridge devices,  
or to HyperTransport link-capable devices (e.g., AMD-8131 PCI-X device). These ports  
are mutually exclusive, and should be connected to only one other device. The  
Northbridge also has a memory bus to the DIMM devices. The CPU bus gives connection  
points for the CPU. The final port is a system-message bus port for connection with a  
Log device. A 940-pin 8th generation processor part (AMD Opteron) has three  
HyperTransport ports; a 754-pin 8th generation processor part (AMD Athlon 64) has one  
HyperTransport port.  
Initialization and Reset State  
When first initialized, the Northbridge device is in the default state. This is described in  
detail in the 8th generation processor PCI register specification.  
When reset, the Northbridge device takes on all default register values.  
Contents of a BSD  
The BSD file contains the contents of all Northbridge registers. It also saves the contents  
of any tables and the states of all internal devices (the memory controller,  
HyperTransport table contents, etc.). When the BSD file is read in, all tables are filled  
with past data, and all states are restored to their saved states.  
Configuration Options  
Figure 7-17 and Figure 7-18 show configuration options for the Northbridge.  
86  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-17: Northbridge Logging Capabilities Properties Dialog  
If Log PCI Configuration Cycles is selected, the device will produce log messages  
whenever PCI configuration registers are accessed.  
If Log HyperTransport Message Routing is selected, the device will log HyperTransport  
messages.  
Figure 7-18: Northbridge HT Link Configuration Properties Dialog  
If the DDR DRAM Controller is selected, the device will support DDR DRAM. In order  
to use DDR2 DRAM select the DDR2 DRAM Controller.  
Chapter 7: Device Configuration  
87  
Download from Www.Somanuals.com. All Manuals Search And Download.  
   
AMD Confidential  
User Manual  
November 21st, 2008  
Each HyperTransport link can be enabled separately. Each link can be 8- or 16-bits wide.  
Only the 940-pin AMD Opteron processor can have three links; a 754-pin AMD Athlon  
64 has one HyperTransport port.  
Figure 7-19: Northbridge DDR2 Training Properties Dialog  
When the DDR2 DRAM Controller is selected and DDR2 DRAM is being used you can  
manually modify these values to verify the correctness of the DDR2 training algorithmn.  
The DDR2 Training Properties Dialog contains the lowest and highest values that the  
BIOS can program into these registers. While these registers are programmed out of  
bounds DRAM access will be corrupted.  
Note the DDR2 Training Properties Dialog is only useful for BIOS developer and the  
values should only be modified and used by BIOS developers.  
Log Messages  
If Log PCI Configuration Cycles is selected, the device produces log messages whenever  
the PCI configuration data register (0xCFC) is accessed. Log files can get very large.  
Reads from this I/O-mapped register produce PCI CONFIG READ messages, and writes  
to the register produce PCI CONFIG WRITE messages. The formats of the PCI CONFIG  
READ and PCI CONFIG WRITE messages are as follows:  
PCI CONFIG READ Bus a, Device b, Function c, Register d, Data e  
PCI CONFIG WRITE Bus a, Device b, Function c, Register d, Data e  
where a, b, c, d, and e are all hexadecimal numbers.  
88  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
The data value, e, is always one byte (two hex digits) in width. The device will log  
multiple messages for PCI configuration accesses that are greater than one byte in width.  
For example, a dword read of 0x11223344 from PCI configuration register 0x40 of  
device 7, function 1 on bus 0 would produce the following log messages:  
PCI CONFIG READ Bus 0, Device 7, Function 1, Register 40, Data 44  
PCI CONFIG READ Bus 0, Device 7, Function 1, Register 41, Data 33  
PCI CONFIG READ Bus 0, Device 7, Function 1, Register 42, Data 22  
PCI CONFIG READ Bus 0, Device 7, Function 1, Register 43, Data 11  
Differences from Real Hardware  
The Northbridge device differs from the real hardware in that the simulator does not  
support the debug hardware registers. The device also does not support memory-  
interleaving by node, though this will change in the near future. The device will differ in  
those things that are of a timing-related nature, such as setting of bus speeds. Full probe  
transactions are not modeled. Registers that deal with items outside of the testing of  
transfer protocols at the register level are not functional (buffer count registers, etc.).  
They are present and read/write able, but do not effect the simulation.  
Chapter 7: Device Configuration  
89  
Download from Www.Somanuals.com. All Manuals Search And Download.  
AMD Confidential  
User Manual  
November 21st, 2008  
7.11AMD-8111Southbridge Devices IO Hubs  
The Southbridge devices provide the basic I/O Southbridge functionality of the system.  
Features include a PIO-mode IDE controller, register set for the USB controller(s), an  
LPC/ISA bridge, a system-management bus controller, IOAPIC bus bridge if applicable,  
and legacy AT devices (PIC, PIT, CMOS, timer, and DMA controller). The legacies AT  
devices have the standard behavior and IO addresses unless otherwise noted.  
Interfaces  
The Southbridge devices have several connection points. Possible connection points  
include a PCI bus, a SMB bus, a LPC bus, an INT/IOAPIC bus for interrupt signaling,  
and ISA and HyperTransport ports depending on the device type. The PCI bus acts as a  
host bus (AMD-8111). The SMB connects to devices such as the DIMM or the SMB hub.  
The LPC bus provides connectivity to devices such as Super IO's and BIOS ROMs. A  
HyperTransport port is used for main connectivity for the AMD-8111 device to the reset  
of the system.  
Initialization and Reset State  
When first initialized, the Southbridge devices are in the default state. This is described in  
detail in the respective datasheets. The legacy CMOS sub device initializes to all zeroes.  
When reset, a Southbridge device takes on all default register values as above. The  
exception to this is that the CMOS contents remain the same.  
Contents of a BSD  
The BSD file contains the contents of all registers. It also saves the contents of any  
buffers, and states of all internal devices (HDD controllers, PIT, PIC, etc.). When the  
BSD file is read in, all buffers are filled with past data, and all states are restored to their  
saved states.  
Common Configuration Options  
The USB dialogue window, shown in Figure 7-20, gives the user the ability to enable or  
disable USB ports of the USB controller. USB devices which are connected to disabled  
USB ports won't be identified and detected by an operating system.  
For instance, in Figure 7-20 the USB Port 0 is disabled and USB Port 1 and 2 are  
enabled.  
90  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-20: USB Properties Dialog (AMD-8111Southbridge)  
The CMOS dialogue window, shown in Figure 7-21, gives the user the ability to change  
the contents of CMOS. When first created, the CMOS contains all zeroes to force a  
CMOS checksum error, resulting in the default settings being loaded by BIOS. The  
alternative to this is loading a binary file containing the CMOS desired data. The user can  
create this file by entering changes and using the save feature to create the binary file.  
Chapter 7: Device Configuration  
91  
Download from Www.Somanuals.com. All Manuals Search And Download.  
 
AMD Confidential  
User Manual  
November 21st, 2008  
Figure 7-21: CMOS Properties Dialog (AMD-8111Southbridge)  
The Primary HDD Channel and Secondary HDD Channel tabs, shown in Figure 7-22,  
contain the same information for each hard drive channel. The user has two options for  
drive simulation: an image of a hard drive created with DiskTool (see Section 13 on page  
161), or use of a real hard disk. Using a real drive requires Windows® 2000 and a drive  
that is able to be isolated (locked) from the rest of the system. You cannot use the drive(s)  
that the OS and/or the simulator reside on. To use a drive image, enter a file name in the  
Image Filename field. A browse window is activated by pressing the right-most button.  
All disk devices (Primary Master, etc.) by default have the disk journaling feature turned  
on, which allows simulations to write to the disk image during normal operation and not  
affect the contents of the real disk image. This is useful for being able to kill a simulation  
in the middle, for multiple copies of the simulator running at the same time, etc. Journal  
contents are saved in BSD checkpoint files but lost if you don't save a checkpoint before  
exiting. To change journal settings or commit journal contents to the hard disk image, go  
to the Device View Window, then the AMD-8111 Southbridge, then the configuration for  
the hard disk in question on either the Primary or Secondary IDE controller. Here you can  
either commit the contents of the journal to the hard-disk image or turn off journaling for  
the hard disk image in question.  
92  
Chapter 7: Device Configuration  
Download from Www.Somanuals.com. All Manuals Search And Download.