Cover image
Title page
Copyright
Foreword
Acknowledgments
Chapter 1. Introduction
Virtual Platforms
Simulation and the System Development Lifecycle
Model-Driven Development
Book Outline
Trademark Information
Chapter 2. Simics fundamentals
Simics† Architecture and Terminology
Running Real Software Stacks
Interacting with Simics
Configurations and the Simics Object Model
Components
Time in Simics
Abstraction Levels
Event-Based Simulation
Memory Maps
Memory Images
,Checkpointing
Determinism and Repeatability
Simics Performance Technology
Models and Extensions
Chapter 3. Develop and debug software on Simics
Development Means Testing
Agent-Based Debugger
Debugging Using Simics
Performance Analysis
Inspecting the Hardware State
Fault-Injection and Boundary Conditions
Using Checkpoints
Loading Software
Continuous Integration
Shortcuts in the Software Stack
Chapter 4. System configuration in Simics
Simics Component System
Setup Scripts
Automating Target Configuration and Boot
Chapter 5. Networking
Network Simulation in Simics
Simulated Network Nodes
Traffic Inspection and Modification
, Scaling Up the Network Size
Connecting the Real World
Ethernet Real-Network Variants
Programming New Networks
Chapter 6. Building virtual platforms
The Purpose of the Model
Virtual Platforms in Simics
Device Modeling Language
Reusing Existing Information
DML Features
Creating Device Models
Completing the Device Model
Reserved Registers and Missed Accesses
Creating Models in Other Languages
Chapter 7. DMA: A concrete modeling example
DMA Device Description
Implementing the Basic DMA Device Model
Creating a PCI Express (PCIe) Model
Creating a Component for the DMA Model
Creating a Device Driver
Chapter 8. Simulator extensions
Introduction
Implementing Extensions