图书介绍

PCI-X系统的体系结构PDF|Epub|txt|kindle电子书版本下载

PCI-X系统的体系结构
  • Tom Shanley著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7900643346
  • 出版时间:2002
  • 标注页数:688页
  • 文件大小:75MB
  • 文件页数:732页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

PCI-X系统的体系结构PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

About This Book1

The MindShare Architecture Series1

Cautionary Note2

This Book Assumes PCI Background Knowledge3

Specifications This Book Is Based On3

Organization of This Book3

Who This Book Is For4

Prerequisite Knowledge4

Documentation Conventions5

Hexadecimal Notation5

Binary Notation5

Decimal Notation5

Bits Versus Bytes Notation5

Bit Fields(Logical Groups of Bits or Signals)6

Timing Diagram Drawing Convention6

Clock-by-Clock Timing Diagram Description8

Signal Polarity8

Visit Our Web Site8

We Want Your Feedback9

Part 1:Basic Concepts13

Chapter 1:PCI Needed Improvement13

Wait States Yield Poor Performance13

Relatively Slow Clock Speed14

Transfer Size Unknown14

PCI Delayed Transactions Are Inefficient15

Initiator Retries Use Up Valuable Bus Time15

Initiator Doesn′t Supply Transfer Count15

Delayed Completion16

Initiator′s Transaction ID Is Sketchy at Best16

Snoops Hurt Performance16

Host/PCIX Bridge Knows AGP′s Area of Memory Is Non-Cacheable16

Memory Used by PCI Masters May or May Not Be Cached17

Snoops Slow Down PCI Accesses to Main Memory17

Snoop Traffic on Processor Bus Can Hurt Processor(s)17

Main Memory Less Available to Processor(s)17

Latency Timer Use Not Optimized in PCI19

Min_Gnt Register:Timeslice Request19

Latency Timer:“Timeslice”Register19

Insufficient Info to Select a Good Value20

Data Phase Parity Error Recovery Usually Not Possible21

PCI Data Parity Error Recovery21

Important Note Regarding Chipsets That Monitor PERR22

No Indication of Device Width22

MSI Feature Optional in PCI Environment22

Introduction22

Advantages of MSI Interrupts23

Power Management Optional23

Legacy PCI Devices—No Standard PM Method23

Device Support for PCI PM Optional23

Discovering Function′s PM Capability23

Configuration Software Constrained by 32-Bit Memory BARs26

Stepping Yields Poor Performance27

Chapter 2:PCI-X Improves on PCI29

PCI-X Is Backward-Compatible With PCI29

PCI-X Is More System-Centric Than PCI30

Higher Clock Speeds Possible31

Wait States Eliminated31

Data Transferred in Blocks31

In PCI,Data Transferred as a Series of Data Items31

In PCI-X,Data Transferred as a Series of Blocks32

Master Cannot Delay Transfer of First Data Block32

Target Can Only Delay Transfer of First Block32

Master and Target Can Only Disconnect on Block Boundaries32

But…There Are Two Exceptions32

Disconnecting on Block Boundaries33

Master Disconnection of a Transfer33

Target Disconnection of a Transfer33

Latency Timer Usage33

Requester and Completer34

Transfer Size Specified34

Requester ID and Transaction ID Are Specified34

Split Transactions Replace Delayed Transactions35

Target Cannot Transfer Data Within 16 Clocks From FRAME# Assertion35

Long-Latency Access Handling in PCI35

Long-Latency Access Handling in PCI-X35

Split Transactions More Efficient Than Delayed36

Example:Requester and Completer on Same Bus37

Example:Requester and Completer on Different Buses38

Dynamic Traffic Analysis and Load Tuning40

Data Phase Parity Error Recovery41

General41

Recovery Usually Not Possible in PCI41

PCI-X Chipset Does Not Monitor PERR42

What the PCI-X Spec Says42

Requester Hardware Doesn′t Handle Error Itself42

With Appropriate Master and Device Driver Design,Recovery Possible42

Device Driver With No Recovery Capability=SERR43

If Bus in PCI Mode,Bridge Monitors PERR43

64-Bit Connection Indication44

MSI Feature Mandatory44

Power Management Mandatory for Add-In Devices44

Snoops Can Be Eliminated44

Memory BARS Must Be 64-Bit Width45

Bus Masters That Access Memory Must Support DAC Command45

Stepping Eliminated45

Fast Back-to-Back Transactions Eliminated46

Chapter 3:Lowest Common Denominator Defines Mode48

Bus Protocol/Speed=Lowest Common Denominator48

Discovering a PCI-X Bus48

Discovering PCI Devices on a PCI-X Bus49

Some Example Systems49

System With No Connectors on PCI-X Bus49

Single Bus System With Connectors49

Systems Supporting Both PCI-X and PCI Environments52

Introduction52

System With Single Host/PCIX Bridge52

Dual Host/PCIX Bridge System54

Chapter 4:Device Types and Bus Initialization56

All Devices Support 33MHz PCI56

General56

133MHz PCI-X Device Must Support 33MHz and 66MHz PCI56

When M66EN Is Grounded on a Card56

Effect of Grounded M66EN on a PCI Source Bridge56

Effect of Grounded M66EN on a PCI-X Source Bridge56

M66EN Usage on a 66MHz PCI Card or a PCI-X Card57

All PCI-X Devices Support 66MHz PCI-X Mode57

PCIXCAP Indicates Protocol/Frequency Required58

General58

PCIXCAP Indicates Capabilities of Card′s First Device61

Device Not Permitted to Use PCIXCAP as Input or Output61

Bridge′s Interpretation of M66EN and PCIXCAP61

Maximum Reliable Speed Verified by Design and Testing63

Supplying PCI-X Devices With Protocol and Speed64

General64

Host/PCIX Bridge Pattern Delivery Sequence64

PCIX-to-PCIX Bridge Pattern Delivery Sequence65

The Sequence65

But First65

Why Bus Must Be Idle When Init Pattern Driven67

Upon Receipt of Pattern,Device Initializes Itself67

Init Pattern Setup and Hold Time67

General67

Relationship With Trhff68

Reassertion of RST# Necessitates Redelivery of Pattern68

General68

Secondary Bus RST# Follows RST# on Primary Side68

Secondary Bus RST# Under Software Control69

Bridge Must Support Interfaces in Different Modes70

Hot-Plug PCI-X Bus Initialization71

Some Systems Permit Hot-Plug of PCI-X Cards71

For Background on PCI Hot-Plug71

Problems Associated With PCI-X Hot-Plug71

Determination of Card Capabilities72

General72

Determining the Presence of a PCI Card73

Unacceptable Method73

Acceptable Method73

Determining the Presence of a 66MHz PCI Card74

Determining the Presence of a 66MHz-Capable PCI-X Card74

Determining the Presence of a 133MHz-Capable PCI-X Card75

Hot-Install of Card With PCIX-to-PCIX Bridge on It75

Description75

How to Avoid Bus Renumbering During Run-Time76

Hot-Install of Card With PCI-to-PCI Bridge on It77

Checking PCIXCAP Without Power Applied to Card78

Changing Secondary Bus Number Configuration Register78

Conservation of Address Space78

General78

Requesting Memory Space79

Requesting IO Space80

Early Configuration Access to Newly-Installed Device80

Possible Adjustment of Max Memory Read Byte Count Values80

Placing Device in Low-Power Mode Requires Quiesce81

Chapter 5:PCI-X Is a Registered Bus83

PCI-X Is a Low-Voltage Swing(LVS)Bus83

Introduction to the Registered Nature of the Bus84

Address/Command Decode Example85

Data Read Example86

Chapter 6:Intro to Commands89

Commands Fall Into Three Categories89

Command Encoding90

Dword Commands92

General92

IO Read and Write Commands92

Memory Read Dword Command92

Configuration Read and Write Commands93

Interrupt Acknowledge Command93

Special Cycle Command95

Burst Commands95

All Burst-Oriented Commands Are Memory Transfers95

Start Address Is Byte-Aligned95

Transfer Length95

Linear Addressing Is Implied96

Memory Read Block Command96

Alias To Memory Read Block Command96

Memory Write Block Command97

Alias To Memory Write Block Command97

Memory Write Command97

Split Completion Command97

Dual-Address Cycle(DAC)Command98

Chapter 7:Intro to Transaction Phases100

The PCI Transaction Phases100

The PCI-X Transaction Phases100

Address Phase100

Attribute Phase100

Response Phase101

Data Phase(s)101

Chapter 8:Intro to Transaction Termination103

Introduction103

Initiator Termination of Transaction104

Byte Count Satisfaction104

Initiator Approaching Buffer Full or Dry Condition104

Connection Timeout105

Early Target Termination of Transaction106

General106

Target Abort107

Reasons for a Target Abort107

Target Abort Always Ends a Transaction107

Retry107

Reasons for Issuing a Retry107

Initiator′s Response to a Retry108

Response to a Retry in PCI108

Response to a Retry in PCI-X108

Detailed Description of Retry108

Single Data Phase Disconnect108

DiSconnect At Next ADB109

Split Response109

Definition109

Commands That Will Not Receive a Split Response110

Bridge Handling of Memory Writes110

Bridge Handling of Transactions Other Than Memory Writes110

Addressing a Location Within the Bridge111

Addressing a Location on the Opposite Side of Bridge111

Chapter 9:Intro to Split and Immediate Transactions114

Definition of Requester and Completer114

Definition of a Sequence114

Definition of Requester ID,Tag,and Sequence ID114

How Does a Device Know Its Requester ID?114

Immediate Transaction116

Definition of an Immediate Transaction116

Immediate Completion Completes the Sequence116

…Unless It′s a Memory Write or Memory Write Block116

…Or Unless First Data Phase of Memory Write Receives Retry117

Memory Writes Are Posted117

General117

Can Be Initiated Before All Write Data Is Ready117

Split Transactions118

What Problem Do Split Transactions Solve?118

Split Completion Uses Sequence ID as the Address118

Requester and Completer May Reside on the Same Bus119

Example119

Split Completion May Contain a Message119

Memory Read May Result in Multiple Split Completion Transactions120

Completer Has All Data Buffered Up:One Split Completion120

Some Data Buffered Up:Multiple Split Completions120

Requester and Completer May Reside on Different Buses121

Example121

Case One:Completer Issues a Split Response122

Case Two:Completer Transfers Data Immediately122

Requester Buffer Space Management124

Allocate Buffer to Hold All of the Data,Then Arbitrate124

On Split Response,Requester Must Commit Buffer Space125

On Immediate Response,Requester Can Release Buffer Space125

Bridge Can Retry or Disconnect Split Completion125

Requesters Must Implement a Split Request Timeout125

Part 2:Transaction Protocol129

Chapter 10:Bus Arbitration129

Stepping Not Permitted129

Request and Grant Signals Are Registered129

Example Arbitration130

Device Design Rules133

No Fast Back-to-Back133

REQ# Can Be Asserted or Deasserted at Any Time134

Issuig REQ# and Then Changing Your Mind134

After REQ# Is Asserted,Assert FRAME# or Deassert REQ134

Initiator Can Start Transaction Two Clocks After GNT# Is Asserted134

GNT# Removal in Clock Prior to FRAME# Too Late to Stop Initiation135

Single Idle Clock Between Transactions135

Multiple Idle Clocks Between Transactions137

Back-to-Back Transactions by Same Initiator138

Device Containing Multiple Initiators138

Arbiter Design Rules138

No GNT# Asserted and REQ# Detected138

Must Allow opportunity to Start Configuration Transaction139

When Bus Not Idle,GNT# Can Be Deasserted Sooner140

If Transaction Not Started,Arbiter May Ignore Master140

Removing GNT# From One Initiator and Giving It to Another141

Parking Recommendation141

Bus Parking141

Floating Bus Causes Power Drain141

Bus Parking Prevents Bus Float141

Rules Associated with Bus Parking142

HOW the Initiator Deals With Preemption143

The Basics143

After Timeslice Exhaustion and Preemption,How Soon Must It Yield?144

What Is the Recommended LT Value?144

How Much Data Can Be Transferred During Default Timeslice?144

Chapter 11:Detailed Command Description147

Dword Commands147

General147

Command Encoding148

Illegal to Assert REQ64# in Dword Transactions148

IO Read and Write Commands149

Basic Description149

Start Address and Byte Enable Format149

Start Address Is Byte-Aligned149

Byte Enable Usage149

IO Transaction With No Byte Enables Asserted149

Target Response to an IO Access151

General151

Completer Handling of an IO Access151

When Bridge Acts as Target of IO Access151

Memory Read Dword Command152

Start Address and Byte Enable Format152

Start Address Is Byte-Aligned152

Byte Enable Usage152

Transaction With No Byte Enables Asserted152

Target Response to a Memory Read Dword Access152

General152

Completer Handling of a Memory Read Dword Access152

Bridge Acts as Target of Memory Read Dword Access153

Configuration Read and Write Commands153

Interrupt Acknowledge Command154

General154

Background154

Host/PCLX Bridge Handling of Interrupt Acknowledge155

System Using APIC Bus to Deliver Interrupts To Processors157

Non-Intel System Implementation159

Special Cycle Command159

General159

Basic Description159

Address Phase160

Attribute Phase160

Data Phase160

In PCI-X Special Cycle Transaction,No Wait States Permitted160

No Target Is Permitted to Respond160

Ending the Transaction161

The Message Types162

Devices That May Initiate a Special Cycle Transaction163

Software-Initiated Special Cycle Transactions163

Burst Commands163

All Burst-Oriented Commands Are Memory Transfers163

Burst Command Encoding163

Start Address Is Byte Aligned165

PCI Memory Addressing165

PCI-X Memory Addressing165

Linear Addressing Is Implied166

Transfer Length166

In PCI,Transfer Length Is Unknown166

In PCI-X,Byte Transfer Count Defines End Address167

Memory Read Block Command167

Basic Description167

Can Be Purely Speculative167

Target Response to Memory Read Block Access167

Must Commit Buffer Space Before Initiating169

Alias To Memory Read Block Command169

Memory Write Block Command169

Basic Description169

If Disconnected,Must Resume With Same Sequence ID170

If Requester Cannot Complete Memory Write170

Technically,a Write Can Be Purely Speculative,But171

Target Never Permitted to Split a Memory Write171

Target Response to Memory Write Block Transaction171

Doesn′t Need All of the Write Data Ready Before Initiating172

Emulating the PCI Memory Write and Invalidate Command172

Alias To Memorg Write Block Command174

Memory Write Command174

Basic Description174

Can Be Purely Speculative175

Target Never Permitted to Split a Memory Write175

Target Response to Memory Write Transaction175

Doesn′t Need All of the Write Data Ready Before Initiating175

Split Completion Command176

Basic Description176

At Minimum,Completer Must Handle One Split Transaction176

Can Be Initiated Even If Bus Master Bit Is Off176

Split Transactions Never Associated With Memory Writes177

One or More Split Completions to Fulfill One Request177

Separate Requests May Be Fulfilled out of Order177

The Address Phase178

The Attribute Phase178

Claiming a Split Completion Transaction180

Requester and Completer Are on the Same Bus180

Requester and Completer Are on Different Buses181

Master Abort or Target Abort on a Split Completion182

Treatment of Byte Enables182

Requester Must Accept the Split Completion Data182

When Bridge Is Target of Completion,Can Retry or Disconnect182

Initiator of Split Completion Can Disconnect183

After Disconnect,Pick Up Where You Left Off183

Split Completion Messages183

To Disconnect First Split Completion at Imminent ADB184

Disconnecting First Split Completion Is Problematic184

The Problem184

The Solution185

Bridge Buffer Space Problem Due to Corrupted Split Completion186

Dual-Address Cycle(DAC)Command187

Chapter 12:Latency Rules189

Initiator Latency Rules189

Don′t Start Transfer If You′re Not Ready189

No Initiator Wait States Permitted…Ever190

Behavior When Preempted191

Target Latency Rules191

Target Response Time During Initialization Period191

What′s Going on During Initialization Time?191

Definition of Initialization Period in PCI191

Definition of Initialization Period in PCI-X192

Initialization Period and Hot-Plug192

Target Can Ignore 16-Clock Rule During ROM Shadowing192

Target Response Time Limit During Run-Time192

Response Time Limit When No Data Transferred192

Response Time Limit When Data Transferred193

Host/PCIX Bridge Must Obey 16-Clock Rule193

In PCI193

In PCI-X193

Subsequent Data Phase Target Latency Rule193

Maximum Completion Time193

In PCI193

How PCI-X Is Different194

How Can You Prevent Violation of This Time Limit?195

Chapter 13:The Address,Attribute and Response Phases198

All Transactions Begin With Address and Attribute Phases198

Memory Transaction May Have Two Address Phases199

Attributes Always Delivered on Lower Half of Bus200

Address/Attribute Format Depends on Command Type200

Memory Burst Format200

Description200

No Snoop Attribute Bit201

Background201

Bridge Knows AGP′s Area of Memory Is Non-Cacheable201

Memory Used by PCI Masters May or May Not Be Cached202

Snoops Slow Down PCI Accesses to Main Memory202

Snoop Traffic on Processor Bus Can Hurt Processor(s)202

Main Memory Less Available to Processors202

PCI-X Driver Can Make Requester′s Buffer Uncacheable202

Only Host/PCIX Bridge Pays Attention to NS Bit203

When NS Is Set and CPU Has a Lock in Force203

NS Must Be 0 in Some Transactions203

Dword Command(other than Config)Format205

Memory Read Dword and Io Format205

Special Cycle and Interrupt Acknowledge Format206

Configuration Command Format206

Two Types of Configuration Transactions206

Type 0 Configuration Access207

TYPe 1 Configuration Access207

Type 0 Configuration Access Format207

TYPe 1 Configuration Access Format208

Split Completion Command Format209

The Response Phase:Connecting With the Target210

Chapter 14:Dword Transactions216

General216

General Format of Timing Diagram Descriptions216

IO Read and Memory Read Dword216

Example One216

Example Two220

IO Write224

Example One224

Example Two227

Example Three230

Configuration Read and Write Transactions234

Interrupt Acknowledge Command234

Special Cycle Command235

Chapter 15:Burst Transactions240

Introduction240

Short Transfer Within a Block240

Long Transfer,But Disconnect on First Block Boundary240

General Format of Timing Diagram Descriptions240

Memory Read Block Transaction241

Memory Read Block:Detailed Example241

Memory Read Block:Variation One245

Memory Read Block:Variation Two246

Memory Read Block:Variation Three247

Memory Read Block:Variation Four248

Memory Read Block:Variation Five249

Memory Read Block:Variation Six250

Memory Read Block:Variation Seven251

Memory Read Block:Variation Eight252

Memory Write Block Transaction253

Memory Write Block:Detailed Example253

On Burst Writes,Insert Wait States in Pairs257

Memory Write Transaction260

Memory Write:Detailed Example261

Memory Write:Variation One265

Memory Write:Variation Two266

Memory Write:Variation Three267

Memory Write:Variation Four268

Memory Write:Variation Five269

Memory Write:Variation Six270

Memory Write:Variation Seven271

Memory Write:Variation Eight272

Memory Write:Variation Nine273

Split Completion Transaction274

Split Completion Returning Block of Read Data275

Returning a Split Completion Error Message276

Alias To Memory Block Commands277

Chapter 16:Transaction Terminations279

General Format of Timing Diagram Descriptions279

Termination by the Initiator280

General280

Byte Count Satisfaction280

Introduction280

Ending Transaction of Four or More Data Phases281

Ending Transaction of Less Than Four Data Phases282

Introduction282

Three-Data-Phase Transaction282

Two-Data-Phase Transaction284

One-Data-Phase Transaction286

Initiator Issues Disconnect at Next ADB289

Initiator Termination Due to Connection Timeout290

Termination By the Target290

Target Abort290

Target Abort Is Always Fatal290

Some Reasons Target Issues Target Abort290

Broken Target290

IO Addressing Error290

Address Phase Parity Error290

Initiator′s and Target′s Response to Target Abort290

Example Target Abort Issued in First Data Phase291

Example Target Abort Issued in Subsequent Data Phase293

Target Issues a Retry294

Target Issues Single Data Phase Disconnect297

General297

Special Case Scenario299

Target Issues Disconnect At Next ADB299

Disconnect Issued Four Or More Data Phases From ADB300

Target Issues Disconnect Too Close to Block Boundary301

To Disconnect When Start Address Very Close to ADB302

Start Address Three Data Phases From Block Boundary303

Start Address Two Data Phases From Block Boundary304

Start Address One Data Phase From Block Boundary306

Target Issues a Split Response308

Split Response for a Read308

Split Response for an IO or Configuration Write310

Chapter 17:Split Completion Messages313

Purpose of Split Completion Messages313

SCM Always Terminates a Sequence315

Upon Receipt of Error Message,Set Status Bit315

Message Format316

Address Phase Format316

Attribute Phase Format316

Data Phase Message Format317

Write Completion Indication322

Good Completion of Split IO or Configuration Write322

Bad Completion of a Split IO or Configuration Write323

Read Completion Indication323

Good Completion of a Split Dword Read323

Good Completion of a Split Burst Memory Read323

Bad Completion of a Split Dword Read324

Bad Completion of a Split Burst Memory Read324

General324

Remaining Byte Count and Remaining Lower Address Fields324

Device-Specific Error Handling325

Chapter 18:64-Bit Transactions327

General Format of Timing Diagram Descriptions327

64-Bit Data Transfers and 64-Bit Addressing:Separate Capabilities328

64-Bit Extension Signals328

REQ64# and ACK64# Have Same Timing as FRAME# and DEVSEL329

In Attribute Phase,Upper Bus Reserved and Driven High330

Block Length Remains the Same330

Bursts Cannot Cross 264 Boundary330

REQ64# Not Permitted in Dword Transactions330

General330

…Unless It′s a Split Completion331

MSI Write Always Writes a Single 32-Bit Data Value331

Bridge Must Support DAC on Both Interfaces331

Width of Function′s Connection to Bus332

General332

Add-In Card With a Bridge334

Determining the Width of a Bridge′s Interfaces334

64-Bit Cards in 32-Bit Add-In Connectors335

Pullups Prevent 64-Bit Extension From Floating When Not in Use336

Problem:A 64-Bit Card in a 32-Bit PCI Connector336

How 64-Bit Card Determines Type of Slot Its Installed In338

64-Bit Data Transfer Capability339

64-Bit Transfers:Only Burst Memory Operations340

Start Address Byte-Aligned340

64-Bit Target′s Interpretation of Address341

32-Bit Target′s Interpretation of Address341

64-Bit Memory Read Block With 64-Bit Target341

64-Bit Write Block or Split Completion With 64-Bit Target347

64-Bit Memory Write With 64-Bit Target352

Start Address Alignment Defines Data Path Usage354

Introduction354

64-Bit to 64-Bit Connection354

64-Bit to 32-Bit Connection354

64-Bit Memory Reads From 32-Bit Targets359

Starting on Even Dword359

Starting on Odd Dword365

64-bit Memory Writes to 32-Bit Targets366

Starting on Even Dword366

Starting on Odd Dword368

Example One368

EXample Two369

Example Three370

Example Four371

Example Five372

Addressing Memory Above 4GB Boundary372

Introduction372

Introduction to the DAC Command373

DAC Support Mandatory for All Initiators373

Memory Targets Must Support Wide BARs and DAC374

Use of DAC Command Changes DEVSEL# and Master Abort Timing375

Example 32-Bit Transaction Using DAC Command375

Example 64-Bit Transaction Using DAC Command377

DEVSEL# Must Not Be Asserted Too Soon378

Add-In Card Trace Length379

Parity Generation and Checking382

Chapter 19:Parity Generation and Checking383

General Discussion of Parity Generation383

Parity Generation Is Mandatory383

In Data Phases of Writes and Split Completions384

Initiator Must Generate Correct Data Phase Parity384

Toggle Data and Parity When Target Inserts Wait State Pairs384

In Reads,the Target Sources Data and Parity384

First Data Phase Data and Parity Can Be Delayed384

Subsequent Data Phase Data and Parity Never Delayed384

General Discussion of Parity Checking384

Checking Required in Address and Attribute Phases384

Parity Checking Is Generally Required In Data Phases385

Target Data Parity Checking During Write or Split Completion385

Initiator Parity Checking During Reads385

Parity Not Checked During First Data Phase Wait States385

Parity Checked one Clock After Each Subsequent Data Phase385

In Any Phase,Agent Driving AD Bus Supplies Parity385

As in PCI,Even Parity Is Used386

No Parity in Response Phase386

Address Phase Parity387

Address Phase Parity Checking Required387

When DAC Is Used,Check Both Packets387

On Error,SERR# Required387

Error Detected Before Transaction Claimed387

Error Detected After Transaction Claimed388

Parity Error in Split Completion Address Phase388

Attribute Phase Parity389

Means Sequence ID and/or Byte Count Corrupted389

When Attributes Corrupted and Split Response Issued389

Data Phase Parity389

Parity Always Covers Full Width of Data Bus389

Parity Driven One Clock After Information Presented390

Similar to PCI,But Different(due to registered bus)390

Parity-Related Initiator Responsibilities390

Initiator May Be a Requester,a Bridge,or a Completer390

Requester′s Parity-Related Responsibilities During a Write390

Drive Data,Byte Enables and the Parity391

Requester Checks PERR391

Requester Actions When PERR# Asserted by Target391

Requester′s Actions on PERR# and Split Response391

Bridge′s Parity-Related Responsibilities During a Write391

Drive Data,Byte Enables and the Parity392

Bridge Checks PERR392

Bridge Actions When PERR# Asserted by Target392

Initiator′s Parity-Related Responsibilities During a Split Completion394

Who Initiates Split Completion Transactions?394

Initiator Drives Data,Byte Enables and Parity394

Initiator Does Not Monitor PERR394

Initiator′s Parity-Related Responsibilities During a Read395

General395

First Read Data Item and Parity Can Be Delayed by Target395

Subsequent Data Phases of a Read395

Parity Checking by Initiator During a Read395

Split Response Dummy Data Corrupted396

Requester′s Parity-Related Responsibilities During a Read396

Read Error and Data Parity Error Recovery Enable Bit=1397

Read Error and Data Parity Error Recovery Enable Bit=0397

Bridge′s Parity-Related Responsibilities During a Read397

General397

Bridge Handling of Parity Error in Immediate Read397

Parity-Related Target Responsibilities398

Target May Be a Completer,a Requester,or a Bridge398

Target′s Responsibilities During a Write398

When Completer Acts as the Target of the Write399

When a Bridge Acts as the Target of the Write399

Target′s Responsibilities During a Split Completion399

When Requester Acts as the Target of a Split Completion399

When a Bridge Acts as the Target of a Split Completion400

Target′s Responsibilities During a Read400

Data Parity Generation/Checking in PCI-X401

General Format of Timing Diagram Descriptions401

Parity in Memory Write Block(or Alias)or Split Completion401

Parity in a Memory Write Transaction406

Parity in Memory Read Block(or Alias)Transaction406

Parity in Memory Read Dword or IO Read Transaction411

Parity in Configuration Read415

Parity in IO Write Transaction416

Parity in Configuration Write420

Part3:Device Configuration425

Chapter 20:Configuration Transactions425

Configuration Software Mechanism Same as PCI425

Configuration Transactions Can Only Flow Downstream426

Special Cycle Request Can Flow Upstream or Downstream426

Type 0:Access Registers in Function on This Bus426

Device Selection426

Bus/Device Auto-Updated by Each Type 0 Config Write430

General430

Host/PCIX Bridge Device Number Assignment430

Type 1:Access Registers in Function on Bus Farther out in Hierarchy430

General Description430

Some Example Scenarios433

Example One433

Example Two433

Example Three433

Example Four434

Type 0 Configuration Transactions435

Action Taken on Master Abort435

IDSELs Routed Over Upper AD Lines436

IDSEL Output Pins/Traces Allowed on Host/PCIX Bridge437

Description437

Type 0 Access by a Tool438

Resistive Coupling Requires Address Pre-Drive438

Bridge With IDSEL Pins Also Requires Address Pre-Drive439

Type 0 Configuration Read439

Type 0 Configuration Write443

Type 1 Configuration Transactions447

Although Not Necessary,Address Pre-Drive Used447

Type 1 Configuration Access Address Format447

Target Bus′s Source Bridge Converts Type 1 to Type 0 Access448

Type 1 Transaction Examples448

Arbiter′s Treatment of Configuration Access449

Generation of Special Cycle Under Software Control450

General450

PCIX-to-PCIX Bridges Pass Special Cycle Request to Target Bus451

Special Cycle by Device Other Than Host/PCIX Bridge452

Chapter 21:Non-Bridge Configuration Registers453

Detecting a PCI-X Capable Bridge453

Detecting Presence of PCI-X Capable Bridge/Bus453

Detecting Width of Bridge′s Interfaces457

Detecting Frequency Support of Bridge′s Interfaces458

Frequency Support of Bridge′s Primary Interface458

Frequency Support on Bridge′s Secondary Interface458

Checking Current Frequency/Protocol of Secondary Bus459

Detecting Capabilities of Functions on Bus459

Format of Non-Bridge Function′s PCI-X Capability Registers459

Detecting PCI Functions461

Detecting Width of PCI-X Functions461

Detecting Frequency Support of PCI-X Functions462

Most PCI Configuration Registers Remain Unchanged462

Some PCI Config Registers Affected by Protocol Mode463

Some Register Default Values Affected463

Implementation of Some Registers Affected463

Usage of Some Registers Affected464

Base Address Registers(BARs)464

Memory Base Address Registers464

PCI and Memory BARs464

Must Be Implemented as 64-bit Decoders464

Definition of Prefetchable Memory464

Minimum Memory Range465

Diminishes Overall Number of BARs465

IO Base Address Registers467

Command Register Bits Affected by Protocol Mode467

Introduction467

Fast Back-to-Back Enable Bit468

Stepping Control Bit468

Memory Write and Invalidate Bit468

Bus Master Bit468

Status Register Bits Affected by Protocol Mode469

Latency Timer Default Affected by Protocol Mode469

Cache Line Size Configuration Register470

Capabilities Pointer Register470

Function′s PCI-X Capability Register Set470

Register Set Format470

Background on Load Tuning471

Adjusting Requester′s Split Transaction Queue Size471

Problem471

Solution471

Adjusting Requester′s Memory Read Transaction Size471

Problem471

Solution472

PCI-X Command Register472

Max Outstanding Split Transaction Field473

Max Memory Read Byte Count Field474

Enable Relaxed Ordering474

RO Command Bit Enables/Disables Use of RO Attribute Bit474

General Description475

Usage in Memory Read475

Usage in Memory Write475

After Disconnect,Be Consistent476

Restrictions on Use476

For Additional Information476

Data Parity Error Recover Enable476

PCI-X Status Register476

Bus,Device and Function Number Fields477

Why They Are Necessary477

Function Number Is Hardwired477

Bus/Device Auto-Updated by Type 0 Configuration Write477

Note for PCI-X Tool Designer478

64-Bit Device Status Bit479

133MHz-Capable Status Bit479

Split Completion Discarded(this is not a good thing!)480

Unexpected Split Completion(this is also not a good thing!)480

Device Complexity481

General481

What Use Is This Bit?481

Definition of a Simple Device481

Rules Governing Behavior of a Simple Device481

Designed Max Memory Read Byte Count484

Designed Max Outstanding Split Transactions484

Designed Max Cumulative Read Size484

Chapter 22:Bridge Configuration Registers487

Discovering a PCIX-to-PCIX Bridge487

Many Bridge PCI Configuration Registers Unchanged487

Some Bridge PCI Configuration Registers Affected by Mode488

Command Register Affected490

Status Register Affected490

Capability Pointer Register Affected490

Secondary Status Register Affected490

General490

Fast Back-to-Back Capable Bit Affected491

Master Data Parity Error/Detected Parity Error Bits Affected491

DEVSEL# Timing Bit Field491

Cache Line Size Register Affected491

Both Latency Timer Registers Affected492

Base Address Registers(BARs)Affected492

Secondary Bus Number Register Affected493

In PCI Mode,No Change493

In PCI-X Mode,Secondary Requesters May Have Pending Split Accesses493

Hot-Plug Event May Cause Bus Renumbering494

RST# Causes Functions to Forget Bus/Device Numbers494

Prefetchable Base/Limit Registers Affected495

Prefetchable Base/Limit Extension Registers Affected495

Bridge Control Register Affected496

Bridge′s PCI-X Capability Register Set497

PCI-X Capability Register Set Format497

PCI-X Secondary Status Register498

64-Bit Device Status Bit499

133MHz Capable Status Bit499

Split Completion Discarded Bit499

Unexpected Split Completion Bit500

PCI Master Addresses PCI-X Target on Secondary500

Problem:Bridge′s Requester ID,but Bad Tag500

Error Handling500

Bridge Secondary Interface Efficiency Status Bits501

Background on Efficiency Status Bits501

Split Completion Overrun Bit501

Split Request Delayed Bit502

Secondary Clock Frequency Bit Field502

PCI-X Bridge(Primary Interface)Status Register503

64-Bit Device Status Bit503

133MHz Capable Status Bit503

Split Completion Discarded Bit504

Unexpected Split Completion Bit504

PCI Master Addresses PCI-X Target on Primary504

Problem:Bridge′s Requester ID,but Bad Tag505

Error Handling505

Bridge Primary Interface Efficiency Status Bits505

Background on Efficiency Bits505

Split Completion Overrun Bit505

Split Request Delayed Bit506

Bus/Device/Function Number Fields506

Split Transaction Control Registers506

Basic Register Format506

The Bridge′s Split Completion Data Buffers507

Controlling Bridge′s Use of Its Split Completion Data Buffers507

Capacity Value Indicates Size of Respective Data Buffer507

Limit Value Controls Bridge′s Perception of Buffer Size508

Allocation Mode508

Virtual Buffer Space Mode509

Flood Mode509

Regaining Control After Operating in Flood Mode509

For More Information on Load Tuning511

Optional Bridge Registers511

Part4:Load Tuning515

Chapter 23:Load Tuning Mechanisms515

Introduction to Load Tuning515

Non-Bridge Function Tuning516

Information Fields516

Adjustable Fields/Registers516

Bridge Tuning519

Adjusting Usage of Split Completion Buffers519

Introduction519

Interpreting the Efficiency Bits519

Additional Spec Comments519

Adjusting Bridge′s Timeslice Values524

Bridge Is Surrogate for Initiators on Both Sides of Bridge524

Software Must Assign Bridge Two Timeslices525

Load-Tuning Software Can Choose Timeslice Other Than 64d525

Part 5:PCI-X Bridges532

Chapter 24:PCIX-to-PCIX Bridges532

Performs Same Function as a PCI-to-PCI Bridge532

Support for DAC Command532

Downstream Movement of DAC optional for PCI Bridge532

PCI-X Bridge Must Support Downstream DAC Movement533

Bus Width534

Memory Writes Crossing Bridge Are Always Posted534

Other Transactions Crossing Bridge Are Always Split534

How the Bridge Claims Split Completions534

When Bridge Can Use Retry or Disconnect At Next ADB535

When Bridge Can Issue a Retry535

When Bridge Can Issue a Disconnect At Next ADB536

Interfaces Can Be in Different Modes/Speeds536

Translating PCI to PCI-X536

General536

Writes Are Posted537

All Others Treated as PCI Delayed Transaction537

On PCI Side,Bridge Follows PCI Ordering Rules538

Translating the Transaction Type538

Creating the Attributes541

Attribute Bits541

Requester ID542

Transaction Tag542

Byte Transfer Count542

Target May Treat as Immediate or as Split Transaction543

Translating PCI-X to PCI543

General543

Writes Are Posted544

All Others Treated as Split Transactions544

Translating the Transaction Type544

PCI Target May Treat as Immediate or Delayed Transaction547

Bridge Creation of a Split Completion548

Effect of Relaxed Ordering Attribute Bit549

Error Handling549

Bridge Error Class SCMs549

Error Handling Defined by Mode of Originating Interface549

Error Handling When the Originating Bus Is in PCI-X Mode550

Scenario 1:Data Parity Error in Immediate Read on Destination Bus550

Scenario 2:Data Parity Error on Split Write551

General551

Scenario 2a551

Scenario 2b552

Scenario 2c553

Scenario 2d554

Scenario 3:Data Parity Error on Split Completion555

Originating Bus Parity Error on Split Completion Read Data555

Originating Bus Parity Error on SCM555

Destination Bus Parity Error on Data or SCM556

Bridge Forwards SCMs Quietly(without getting involved)556

Scenario 4:Data Parity Error on Posted Memory Write556

Scenario 5:Master Abort on Destination Bus557

General557

Master Abort When Forwarding Split Request557

Master Abort on Posted Memory Write558

Master Abort on Split Completion559

Scenario 6:Target Abort on Destination Bus559

Bridge Signals Target Abort559

Bridge Receives A Target Abort on Split Transaction559

Bridge Receives Target Abort on Memory Write560

Bridge Receives Target Abort on Split Completion560

Error Handling When Originating Bus in PCI Mode560

Background560

Bridge Handles Errors Same as PCI Bridge Unless SCM Error561

SCM Error on a Split Read561

SCM on Split Write561

Corrupted Split Completion562

Buffer Size562

Posted Memory Write Buffer Size562

Split Completion Data Buffer Size563

Buffer Space for Memory Read Data564

General564

The Problem564

When Limit=Capacity,This Is Not a Problem564

When a Request Is Bigger Than the Bridge Buffer564

Application Bridge564

Bridge Acceptance Rules567

Ordering and Passing Rules568

Same Rules as PCI Except569

Relaxed Ordering Effect on Transaction Ordering569

Relaxed Ordering Effects on Memory Reads569

Relaxed Ordering Effects on Memory Writes570

Split Transaction Effects on Transaction Ordering571

General571

Same Sequence Split Completions Must Remain in Order571

Relaxed Ordering Can Affect Split Completion Delivery572

The Rules572

Decomposing Split Transactions(sounds morbid!)577

Chapter 25:Locked Transaction Series579

Definition of Downstream and Upstream579

Basics580

Only Host/PCIX Bridge Originates Downstream Locked Series581

PCI-X Bridges only Pass Locked Series Downstream581

Only EISA Bridge Originates Upstream Locked Traffic582

Application Bridge May or May Not Support Locking582

EISA Bridge Supports LOCK# As Input,Not as Output583

Non-Bridge Devices Ignore LOCK583

Sequence of Events583

Split Completion Error Message Terminates Lock586

Upstream Bridge(Initiating Bridge)Rules587

Downstream Bridge(Target Bridge)Rules587

Arbitration588

Starting Locked Transaction Series588

Retry/Target Abort/Master Abort Cancels Lock588

First Access of Series Receives Retry588

General588

If Target Is a PCI-to-PCI Bridge588

If the Target Is a PCIX-to-PCIX Bridge589

First Access of Series Receives Target or Master Abort589

First Transaction Has Immediate Completion589

First Transaction Receives Split Response592

Continuing Locked Transaction Series595

Attempted Access to Bridge by Device Other Than Owner597

Last Transaction in Locked Series598

If Last Transaction Receives Immediate Completion598

If Last Transaction Receives Split Response599

The Unlocking of a Target Bridge599

When Bridge Starts Second Series Immediately After First599

Retry Issued to Owner Not a Problem599

DAC Command Lock Timing600

In the First Access600

In Subsequent Accesses of Locked Series600

Part 6:Error Detection and Handling603

Chapter 26:Error Detection and Handling603

Handling of a Target Abort603

Introduction603

Requester Receives Target Abort604

Completer Receives Target Abort on Split Completion606

When Split Completion Target Abort Is Permissible606

Discard of Completion for a Write or Non-Prefetchable Read607

Discard of Completion for IO,Config,or Prefetchable Memory Read608

Handling of a Master Abort609

Introduction609

Requester Handling of Master Abort609

If Host/PCI Bridge Type 0 Config Transaction609

If Not Host/PCIX Bridge Type 0 Config Transaction610

If Requester Capable of Generating Interrupts610

If Requester Can′t Generate Interrupts610

Completer Handling of Master Abort on a Split Completion610

General610

Discard of Completion for a Write or Non-Prefetchable Read611

Discard of Completion of IO,Config,or Prefetchable Memory Read611

Target Handling of Address or Attribute Phase Parity Error612

Data Phase Parity612

PCI Chipset Typically Murders System on Data Parity Error612

In PCI-X,Chipset Doesn′t Monitor PERR613

General613

Requester′s Data Parity Error Recovery Enable Bit613

Basic Description613

Set by OS or Driver′s Initialization Code at Startup Time614

If Not Set,PCI Compatibility Dictates Murdering System614

Recovery Must Be Performed Under Software Guidance615

Driver Reports Error to OS615

OS Instructs Driver on Action(s)to Take615

OS Vendor Specifies Who Clears Parity Error Status Bits615

Requester Handling of PERR# With Split Response616

Data Error Received With Split Response on Read616

Data Error Received With Split Response on Dword Write618

Requester/Completer Handling of Data Error During SPlit Completion620

Split Read Errors620

General620

Read Data Returned in One or More Split Completions621

Internal Completer Error Can Occur at Any Time622

Receipt of SCM Terminates Read Sequence622

Effect of SCM on a Bridge623

Effect of SCM on the Requester623

Requester Handling of Unexpected Split Completion626

Requester Handling of Split Completion Error Messages627

Handling Completer Byte Count Out-of-Range Error627

Memory Writes Never Split,so SCMs Don′t Apply627

Read Immediate Treated Same as Write at Device Boundary627

Split Read Straddling Device Boundary Causes SCM627

Read Burst Straddling Device Boundary Considered Rare Case628

Handling Completer Split Write Data Parity Error629

Handling Completer Device-Specific Error629

Handling Master Abort on Other Side of a Bridge629

Error Description629

Effect of Master Abort on Bridge630

Bridge Interrupt Acknowledge Master Aborts630

Bridge Special Cycle Master Aborts630

Bridge IO Read Master Aborts630

Bridge IO Write Master Aborts632

Bridge Configuration Read Master Aborts632

Bridge Configuration Write Master Aborts632

Bridge Memory Read Dword Master Aborts632

Bridge Memory Write Master Aborts632

Bridge Memory Read Ends in Master Abort633

Bridge Split Completion Ends in Master Abort633

Effect of Master Abort SCM on Requester635

Requester Interrupt Acknowledge Gets Master Abort SCM635

Requester Special Cycle Gets Master Abort SCM635

Requester IO Read or IO Write Gets Master Abort SCM636

Requester Configuration Read Gets Master Abort SCM636

Requester Configuration Write Gets Master Abort SCM636

Requester Memory Read Dword Gets Master Abort SCM637

Requester Memory Write Gets Master Abort SCM637

Requester Memory Read Gets Master Abort SCM637

Requester Split Completion Gets Master Abort SCM638

Handling Target Abort on Other Side of Bridge638

Error Description638

Effect of Target Abort on Bridge638

Bridge Interrupt Acknowledge Target Aborts639

Bridge Special Cycle Target Aborts639

Bridge IO Read Target Aborts639

Bridge IO Write Target Aborts640

Bridge Configuration Read Target Aborts640

Bridge Configuration Write Target Aborts640

Bridge Memory Read Dword Target Aborts640

Bridge Memory Write Target Aborts640

Bridge Memory Read Block Ends in Target Abort641

Bridge Split Completion Ends in Target Abort641

Effect of Target Abort SCM on Requester642

Requester Interrupt Acknowledge Gets Target Abort SCM642

Requester Special Cycle Gets Target Abort SCM642

Requester IO Read or IO Write Gets Target Abort SCM642

Requester Configuration Read Gets Target Abort SCM643

Requester Configuration Write Gets Target Abort SCM643

Requester Memory Read Dword Gets Target Abort SCM643

Requester Memory Write Gets Target Abort SCM644

Requester Memory Read Gets Target Abort SCM644

Requester Split Completion Gets Target Abort SCM644

Handling Split Write Data Parity Error on Other Side of Bridge644

Error Description644

Bridge May Deliberately Forward a Bad Split Write644

…Or Split Write May Become Corrupted When Bridge Forwards It645

Effect of Split Write Data Parity Error on Bridge645

Effect of Split Write Data Parity Error on Requester645

Usage of SERR646

Part 7: Electrical Issues651

Chapter 27:Electrical Issues651

Introduction651

LVS Bus651

Attention to Detail651

Most Parameters Tighter Than PCI652

Maximum Number of Loads and Connectors on Bus652

Cards Keyed as 3.3 Volt or Universal Cards652

133MHz PCI-X Device Must Support 66MHz PCI652

Add-In Card Trace Lengths652

Initialization Pattern Setup/Hold Time653

General653

Trhff Must Be Taken Into Account653

IDSEL Routing654

General654

IDSEL Series Resistor Value655

Appendix A:Protocol Rules659

Introduction659

General Bus Rules659

Initiator Rules661

Target Rules662

Bus Arbitration Rules663

Configuration Transaction Rules664

Parity Error Rules665

Bus Width Rules665

Split Transaction Rules666

Appendix B:Glossary671

Index683

热门推荐