A Novel Approach to Pci Simulation Using Scriptsim Kevin R
Total Page:16
File Type:pdf, Size:1020Kb
University of Massachusetts Amherst ScholarWorks@UMass Amherst Masters Theses 1911 - February 2014 January 2008 A Novel Approach to Pci Simulation Using ScriptSim Kevin R. Andryc University of Massachusetts Amherst Follow this and additional works at: https://scholarworks.umass.edu/theses Andryc, Kevin R., "A Novel Approach to Pci Simulation Using ScriptSim" (2008). Masters Theses 1911 - February 2014. 129. Retrieved from https://scholarworks.umass.edu/theses/129 This thesis is brought to you for free and open access by ScholarWorks@UMass Amherst. It has been accepted for inclusion in Masters Theses 1911 - February 2014 by an authorized administrator of ScholarWorks@UMass Amherst. For more information, please contact [email protected]. A NOVEL APPROACH TO PCI SIMULATION USING SCRIPTSIM A Thesis Presented by KEVIN R. ANDRYC Submitted to the Graduate School of the University of Massachusetts Amherst in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE IN ELECTRICAL AND COMPUTER ENGINEERING May 2008 Electrical and Computer Engineering © Copyright by Kevin R. Andryc 2008 All Rights Reserved A NOVEL APPROACH TO PCI SIMULATION USING SCRIPTSIM A Thesis Presented by KEVIN R. ANDRYC Approved as to style and content by: __________________________________________ Russell G. Tessier, Chair __________________________________________ Patrick A. Kelly, Member __________________________________________ Eric Polizzi, Member ________________________________________ C. V. Hollot, Department Head Electrical & Computer Engineering ABSTRACT A NOVEL APPROACH TO PCI SIMULATION USING SCRIPTSIM MAY 2008 KEVIN ANDRYC, B.S., UNIVERISTY OF MASSACHUSETTS M.S.E.C.E., UNIVERISTY OF MASSACHUSETTS Directed by: Professor Russell G. Tessier In recent years, the Peripheral Component Interconnect (PCI) has become one of the most widely used bus architectures in modern computers. Simulation of the PCI bus, however, has been limited in both research and development. Current commercial PCI simulation software is designed towards compliance and verification testing rather than accurately mimicking PCI bus systems. In addition, most PCI simulation software is inflexible and offers no graphical user interface, instead relying on text files for configuration. This paper presents a novel approach to PCI simulation using ScriptSim, an open- source PCI simulation tool that supports all the features offered by the PCI Local Specification Version 2.2. In addition to extending ScriptSim to include PCI-X functionality and a web-based graphical interface, we introduce techniques that allow us to accurately simulate real-world systems. iv TABLE OF CONTENTS Page ABSTRACT ..................................................................................................................... iv LIST OF TABLES ........................................................................................................... ix LIST OF FIGURES ......................................................................................................... xi CHAPTER 1. INTRODUCTION ........................................................................................................ 1 1.1 Motivation ...................................................................................................... 1 1.2 Contributions ................................................................................................. 5 1.3 Synopsys ......................................................................................................... 6 2. CURRENT BUS SYSTEMS ........................................................................................ 7 2.1 Bus Systems ................................................................................................... 8 2.1.1 Industry Standard Architecture Bus ............................................... 9 2.1.2 VersaModule Eurocard Bus ......................................................... 10 2.1.3 FutureBus / FutureBus+ ............................................................... 11 2.1.4 InfiniBand Architecture ................................................................ 12 2.1.5 Universal Serial Bus ..................................................................... 13 2.1.6 IEEE-1394 Serial Bus / FireWire ................................................. 15 2.1.7 Accelerated Graphics Port ............................................................ 16 2.1.8 Peripheral Component Interface Express ..................................... 18 3. RELATED WORK ..................................................................................................... 21 3.1 Using PCI-Bus Systems in Real-Time Environments .................................. 21 3.1.1 Simplified PCI-Bus Model ........................................................... 21 3.1.2 Model for Identical Devices ......................................................... 23 3.1.3 Model for Arbitrary Devices ........................................................ 26 3.1.4 Concluding Remarks .................................................................... 31 3.2 Simulation Software ..................................................................................... 31 3.2.1 JSIM: A Java-Based Simulation and Animation Environment ................................................................................ 31 3.2.2 Building a Web-Based Federated Simulation System with Jini and XML .............................................................................. 32 v 3.2.3 Design and Implementation of PCI Bus Based Systems .............. 34 4. PERIPHERAL COMPONENT INTERFACE ........................................................... 44 4.1 PCI Bus Characteristics ................................................................................ 44 4.2 Used Terms and Conventions ...................................................................... 46 4.2.1 Used Terms ................................................................................... 46 4.2.2 Document Conventions ................................................................ 48 4.3 PCI Bus Signal Descriptions ........................................................................ 49 4.3.1 Signal Types ................................................................................. 49 4.3.2 Signal Groups ............................................................................... 50 4.4 PCI Bus Commands ..................................................................................... 59 4.5 PCI Address Structure .................................................................................. 62 4.5.1 Memory Address Space ................................................................ 63 4.5.2 I/O Address Space ........................................................................ 64 4.5.3 Configuration Address Space ....................................................... 64 4.6 PCI Configuration ........................................................................................ 66 4.6.1 Configuration Header ................................................................... 66 4.7 PCI Bus Transactions ................................................................................... 77 4.7.1 Read Transaction .......................................................................... 78 4.7.2 Write Transaction ......................................................................... 79 4.8 PCI Bus Arbitration ...................................................................................... 81 5. PERIPHERAL COMPONENT INTERCONNECT EXTENDED ............................ 83 5.1 PCI-X Bus Commands ................................................................................. 84 5.2 PCI-X Bus Transactions ............................................................................... 84 5.2.1 Write Transaction ......................................................................... 85 5.3 Burst and DWORD Transactions ................................................................. 86 5.4 Allowable Disconnect Boundaries ............................................................... 87 5.5 Attributes and the Attribute Phase ............................................................... 87 5.6 Split Transactions ......................................................................................... 89 5.6.1 Split Response .............................................................................. 90 vi 5.6.2 Split Completion ........................................................................... 90 5.7 Configuration and Initialization ................................................................... 93 5.7.1 Configuration Transaction Timing ............................................... 95 5.7.2 Configuration Address ................................................................. 94 5.7.3 Configuration Attributes............................................................... 96 5.7.4 Configuration Header ................................................................... 97 5.7.5 PCI-X Capabilities List Item ........................................................ 98 6. SCRIPTSIM ............................................................................................................. 103 6.1 PCI Functional Bus Model ......................................................................... 104 6.2 PCI Bus Model Architecture ...................................................................... 104 6.3 PCI Bus Simulation...................................................................................