US5859987A - Method and apparatus for providing multiple configuration reset modes for an intelligent bridge - Google Patents

Method and apparatus for providing multiple configuration reset modes for an intelligent bridge Download PDF

Info

Publication number
US5859987A
US5859987A US08/536,156 US53615695A US5859987A US 5859987 A US5859987 A US 5859987A US 53615695 A US53615695 A US 53615695A US 5859987 A US5859987 A US 5859987A
Authority
US
United States
Prior art keywords
reset
local processor
retry
signal
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
US08/536,156
Inventor
Byron Gillespie
Barry Davis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to US08/536,156 priority Critical patent/US5859987A/en
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DAVIS, BARRY, GILLESPIE, BYRON
Application granted granted Critical
Publication of US5859987A publication Critical patent/US5859987A/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges

Definitions

  • This invention relates to computer systems, and, in particular, to a method and apparatus for providing multiple configuration modes to an intelligent PCI to PCI bridge.
  • a host processor of the computer system begins an initialization process. This initialization process includes initializing the values of registers to a predetermined value and also initializing the state machines to a known state. Once a host processor completes its initialization sequence, the host processor proceeds to configure the various other devices connected in the computer system.
  • the host processor configures each PCI compliant device by reading and writing the configuration registers in that device. First, the host processor reads the configuration space of each PCI compliant device to gather information concerning the device. The host then proceeds to assign the device a device number, a bus number, a portion of PCI address space, and interrupt lines.
  • FIG. 1 illustrates a prior art PCI compliant Intelligent Computer Add-in Card 3.
  • This Computer Card 3 is coupled to a PCI bus slot 5 that is disposed on a backplane or a motherboard.
  • This Computer Card 3 includes a PCI to Processor Bus Bridge that interfaces a PCI bus 9 to a Local Processor bus 11.
  • the PCI to Local Processor Bus Bridge 7 may be implemented by the PLX 9060 chip or the V39XPCI chip.
  • a processor 13 is coupled to the Local Processor Bus 11. This processor 13 is referred to as a "local processor" to distinguish it from the main system processor or "host processor.”
  • the Local Processor Bus 11 is also coupled to Dynamic Random Access Memory (DRAMs) and a Read Only Memory (ROM) 17 via a Memory Controller 21.
  • the Memory Controller 21 controls accesses to the RAM 15 and the ROM 17.
  • the Local Processor Bus 11 is also coupled to one or more input/output (I/O) devices 23 that are compliant to the protocol of the Local Processor Bus
  • the Computer Card 3 Upon system reset, the Computer Card 3 receives a P_RST# signal 25 from the host processor 27.
  • the PCI to Local Processor Bus Bridge 7 translates the P_RST# signal 25 into a RST# signal to reset the local processor 13.
  • each PCI bus compliant device have a configuration space.
  • This configuration space must include a predetermined header containing predetermined fields of information (i.e., registers that include specific information, such as, device type, vendor ID) so that the host processor, when configuring the computer system, can easily identify the PCI device and also identify its memory requirements and its processing needs.
  • serial EEPROM 31 that contains the configuration information required by the PCI bus protocol.
  • the configuration information stored in a serial EEPROM 31 is sent to a plurality of Configuration Registers 33 that are implemented as part of the PCI to Local Processor Bus Bridge 7.
  • the local processor 13 Upon receiving the RST# signal 29, the local processor 13 begins to execute initialization software that initializes the internal registers of the local processor 13, the Memory Controller 21, Local Processor Bridge 7, and other devices in the Computer Card 3.
  • the P-RST# signal 25 also initializes the state machines in the Computer Card 3 into a known state.
  • Another disadvantage of the prior art is that additional board space and increased system costs for providing a serial EEPROM component 31 are incurred. This additional overhead is compounded when a computer system is configured with the components of the Computer Card 3, disposed on the baseboard or motherboard. Accordingly, a method and apparatus for guaranteeing synchronization of a reset sequence without a serial EEPROM component 31 is desirable.
  • Another disadvantage of the prior art is the uncertainty of synchronizing a reset sequence by streamlining the initialization software executed by the local processor 13.
  • the prior art approach merely optimizes the initialization code that is executed by the Local Processor 13 so as to increase the probability that the local processor initialization completes before the host processor reads the configuration space of the computer card 3.
  • this current approach to the synchronization problem is not a guarantee that the local processor 13 will complete its own initialization before a Host Processor 27 completes its initialization sequence.
  • this prior art method is unpredictable and dependent on the time that the host processor requires for its initialization sequence before reading the PCI configuration registers of the Computer Card 3.
  • streamlining the initialization software that executes on local processor 13, so that the local processor 13 can initialize the PCI Configuration Space 33 prior to a Host Processor 27 reading the Configuration Registers is inadequate and unpredictable since this solution is dependent on the time required by the host processor to finish its initialization sequence.
  • the solution of providing a serial EEPROM 31 to download information into the PCI configuration space 33 of the PCI to Local Processor Bus Bridge 7 is also inadequate and non-optimal in that the solution is still unpredictable and dependent on the initialization sequence time required by the host processor to complete initialization. This approach also incurs additional system costs and also board space.
  • a method and apparatus for providing multiple-configuration reset modes to an intelligent bridge is described herein.
  • the present invention provides these multiple-configuration reset modes so that an architectural system designer has the flexibility to initialize an intelligent I/O subsystem by using an intelligent bridge.
  • An intelligent I/O subsystem employing an intelligent bridge, includes an embedded microprocessor, memory, PCI devices or subsystems, and a PCI interface that contains a PCI configuration space.
  • This PCI configuration space includes registers that are used to identify the PCI device or subsystem.
  • the host processor reads these configuration registers to notify the host processor of the system configuration.
  • the present invention enables this configuration space to be initialized by the intelligent bridge prior to the host processor reading the configuration registers, so that the intelligent I/O subsystem takes the appearance of any PCI device or subsystem when the host processor reads the registers.
  • the present invention allows an embedded system to contain Random Access Memory (RAM) only.
  • RAM Random Access Memory
  • the present invention obviates the need for a Read Only Memory (ROM) by allowing the host processor to initialize the embedded system and also to download code from a host memory to the embedded RAM in the subsystem.
  • ROM Read Only Memory
  • the present invention controls the reset sequence of the intelligent I/O subsystem on the intelligent bridge.
  • the present invention also guarantees the synchronization of the initialization sequence between the integrated processor in the intelligent bridge and the host processor.
  • FIG. 1 illustrates a prior art computer system.
  • FIG. 2 illustrates a computer system in which the present invention may be implemented.
  • FIG. 3 illustrates further details of the present invention in block diagram form, as implemented in a multi-function intelligent bridge.
  • FIG. 4 illustrates a flowchart of the processing steps carried out by a retry circuit.
  • FIG. 5 illustrates a state diagram for the retry circuitry.
  • FIG. 6 illustrates a flowchart of how the various configuration reset modes of the intelligent bridge are selectively activated.
  • FIG. 7 illustrates a flowchart of the sequence of events in the download mode (Mode 0).
  • FIG. 8 illustrates a flowchart of the sequence of events in the user define/external master mode (Mode 1).
  • FIG. 9 illustrates a flowchart of the sequence of events for reset configuration mode 2.
  • FIG. 10 illustrates a flowchart of the sequence of events in the configuration mode (Mode 3).
  • FIG. 11 illustrates a preferred embodiment of the present invention in an intelligent bridge, configured in an Intel Architecture.
  • each block within the flowcharts represents both a method step and an apparatus element for performing the method step.
  • the corresponding apparatus element may be configured in hardware, software, firmware or combinations thereof.
  • FIG. 2 illustrates a computer system in which the present invention may be implemented.
  • the circuit components illustrated in FIG. 2 may be implemented on a computer card 41 or on the motherboard or baseboard (not shown).
  • This computer system 41 includes an intelligent bridge 43 having an integrated processor 44.
  • the intelligent bridge 43 performs the following functions. First, the intelligent bridge 43 interfaces the primary PCI bus 9 with a secondary PCI bus 45. For example, the intelligent bridge 43 translates primary PCI bus cycles into corresponding secondary PCI bus cycles and vice-versa.
  • the secondary PCI bus 45 may have a plurality of I/O devices 47 that are PCI-compliant coupled to it.
  • the integrated processor 44 is coupled to a local processor bus 7.
  • a memory (e.g., Random Access Memory) 15 and a ROM (Read Only Memory) 17 are coupled to the intelligent bridge 43 through the local processor bus 7.
  • the intelligent bridge 43 also includes the required configuration space 49, as defined by the PCI bus protocol.
  • This configuration space 49 includes a plurality of configuration registers that include information which defines the functions provided by the intelligent bridge 43.
  • the present invention allows for configuration information stored in the ROM 17 to be downloaded into the configuration registers 49 by processor 44.
  • ROM 117 may include boot code that is executed by the integrated processor 44 after the local processor's reset initialization sequence.
  • FIG. 3 illustrates a block diagram of the present invention implemented in an exemplary computer system.
  • a host processor 27 is coupled to a host processor bus-PCI bus bridge 57.
  • This bridge 57 provides an interface between the host processor bus and a primary PCI bus 9.
  • the bridge 57 also controls accesses to the main memory and a cache of the computer system (not shown).
  • the intelligent bridge 43 includes a PCI to PCI bridge 62 having a plurality of control registers 64.
  • the PCI to PCI bridge 62 translates the primary PCI bus cycles into secondary PCI bus cycles and vice versa.
  • the intelligent bridge 43 also includes an address translation unit (ATU) 63 that translates primary PCI bus cycles into local processor bus cycles and vice versa.
  • a local processor 44 is coupled to the ATU 63 via the local processor bus 7.
  • the present invention includes two key components.
  • a Retry circuitry 59 is coupled to the primary PCI bus 9, the ATU 63, and the PCI to PCI bridge 62.
  • the Retry circuitry 59 includes an input for receiving a Retry signal 61.
  • the Retry circuitry 59 In response to an asserted Retry signal 61, the Retry circuitry 59 generates a Retry cycle on the primary PCI bus 9. This PCI Retry cycle notifies the host processor 27 to repeat the current instruction at a later time.
  • the present invention includes a reset circuit 65, coupled to the local processor 44. This reset circuit includes an input for receiving the P_RST signal 67 (i.e., Primary PCI Reset signal), a hardware reset signal 69, and a software reset signal 71.
  • the reset circuit 65 In response to receiving any one of an asserted P_RST# signal 67, and an asserted software reset signal 71, the reset circuit 65 resets the intelligent bridge and optionally continues to hold the local processor 44 in a reset state. If none of the inputs provided to the reset circuitry 65 are asserted, the local processor 44 is brought out of the reset state.
  • FIG. 4 illustrates a flowchart of the processing steps followed by the Retry circuitry 59 of FIG. 3.
  • a determination is made whether both the IDSEL signal and a C/BE# (Command/Byte Enable) signal are asserted (decision block 81)
  • An asserted IDSEL signal indicates that the intelligent bridge 43 is the selected device, and the asserted C/BE# indicates that a configuration cycle is detected on the primary PCI bus. If not, continue checking the IDSEL signal and the C/BE# signal. If yes, the Retry circuitry 59 determines if a Configuration Cycle Retry Bit is asserted (decision block 85). If yes, the Retry circuit 59 asserts a STOP# signal on the primary PCI bus 9.
  • Asserting the STOP# signal indicates to the requesting processor that the intelligent bridge 43 is not ready and to retry at a later time. If no, the Retry circuitry 59 asserts TRDY# and accepts data for a write instruction and provides data for a read instruction. An asserted TRDY# signal (i.e., a Target Ready signal) indicates to the requesting processor that the intelligent bridge 43 is ready to process the current request.
  • the Configuration Cycle Retry Bit may be a bit in a control register 64, residing in the PCI-to-PCI bridge 62.
  • FIG. 5 illustrates a state diagram for the Retry circuitry of FIG. 3.
  • the Retry circuitry 69 transitions from an Idle state 97 into a Configuration Cycle Detected state 101 when the IDSEL signal is asserted and the C/BE# signal is asserted.
  • the output of the Retry circuitry STOP# is not asserted in the Configuration Cycle Detected state.
  • the Retry circuitry 59 transitions from the Configuration Cycle Detected state 101 into the accepted state 107 when the Configuration Cycle Retry Bit (CCRB) is not asserted.
  • CCRB Configuration Cycle Retry Bit
  • the Accepted state 107 data to be written from the PCI bus is latched and appropriate data is returned in response to a read instruction. Data can be written to the configuration registers, through the bridge, or to local memory.
  • the TRDY# signal is asserted, and the STOP# signal is never asserted.
  • the Retry circuitry 59 transitions from the Accepted state 107 back to the Idle state 107.
  • the Configuration Cycle Detected state 101 transitions to the Retry state 103 if the CCRB is asserted.
  • the Retry circuitry 59 asserts a STOP# signal. Furthermore, a STOP# signal is asserted, and the TRDY# signal is never asserted.
  • the Retry circuitry 59 transitions from the Retry state 103 back to the Idle state 97 when the CCRB is de-asserted.
  • FIG. 6 illustrates how the different configuration reset modes of the intelligent bridge 43 are selectively determined.
  • the intelligent bridge 43 includes several units that require initialization before system operation. The order in which these units are initialized is important and is dependent on the system design. There is no one single initialization process for the intelligent bridge 43.
  • the present invention provides several options that are determined and controlled by the system designer.
  • the PCI-to-PCI bridge 62, the ATU 63, the local processor 44 all require initialization before system operation.
  • the order in which these units are initialized is dependent on how the intelligent bridge 43 is being used in the system.
  • Four initialization options are provided by the present invention. The initialization options will be described hereinafter.
  • the initialization process begins when the Primary PCI Bus Reset signal (P_RST#) is asserted.
  • P_RST# Primary PCI Bus Reset signal
  • the initialization process is generally controlled through either the host processor 27 or the local processor 44.
  • the present invention provides four initialization modes (also referred to herein as configuration reset modes). These modes are denoted Modes 0-3. The particular mode is determined by the value of two signal pins: RST_MODE# and RETRY.
  • the RST_MODE# signal pin is sampled when P_RST# is de-asserted, i.e., on the rising edge. The inverse value of this signal is then written to the 80960 Processor Reset bit in the Extended Bridge Control Register (EBCR). If RST_MODE# is active when P_RST# is de-asserted, then the 80960 JF processor will be held in reset until the 80960 Processor Reset bit in the EBCR is cleared. If the RST_MODE# is inactive when P_RST# is de-asserted, the 80960 JF processor is reset and then begins its normal initialization sequence when P_RST# is de-asserted.
  • EBCR Extended Bridge Control Register
  • the RETRY signal pin is also sampled when P_RST# is de-asserted. The value of this signal is written to the Configuration Cycle Disable Bit in the EBCR. If RETRY is active when P_RST# is de-asserted, the Retry circuitry 59 signals a retry on all PCI cycles it receives on the primary PCI bus. If RETRY is inactive when P_RST# is asserted, the Retry circuitry 59 accepts PCI cycles on the primary PCI bus.
  • Table 1 describes the relationship between the RST_MODE# and RETRY values and the initialization modes.
  • Mode 1 allows an external agent (e.g., a second processor downstream of the intelligent bridge) to initialize the intelligent bridge 43.
  • the local processor 44 is again held in reset, and the host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9.
  • the external agent clears the reset condition of the local processor 44 or enables the PCI transactions on the primary PCI bus 9.
  • Mode 2 allows PCI transactions on the primary PCI interface, which is disposed in the PCI to PCI bridge 62, at any time and allows the local processor 44 to initialize after receiving the P_RST# signal.
  • Mode 3 allows the local processor 44 to initialize and then to control the intelligent bridge 43 and initialization process before a host processor 27 is allowed to configure the intelligent bridge 43.
  • the host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9 until the local processor 44 initializes and clears the Configuration Cycle Disable bit in the EBCR.
  • a system designer must provide an initialization ROM (Read Only Memory) that stores initialization code to be executed by the local processor 44. This initialization software also downloads the appropriate configuration information into the configuration registers of the intelligent bridge 43.
  • initialization ROM Read Only Memory
  • FIG. 6 illustrates in greater detail each of the configuration reset modes.
  • Steps 117-127 illustrate the sequence of events in Mode 0 or the download mode.
  • Mode 0 allows a host processor 27 to configure the intelligent bridge 43 while the processor 44 is held in reset.
  • the host processor 27 configures the PCI-to-PCI bridge 62 by assigning bus numbers, allocating PCI address space, and assigning interrupt request numbers (IRQ numbers).
  • the memory controller (not shown) and the ATU 63 can be initialized also by the host processor 27.
  • the program code i.e., boot code or initialization software
  • the program code may be downloaded into local memory (not shown) from the host processor 27.
  • This local memory is coupled to the local processor bus 7 via a memory controller.
  • the program code may be downloaded from the main memory (not shown) to the local memory, which is coupled to the intelligent bridge 43.
  • the host processor 27 clears the local processor 44 reset by clearing the Local Processor Reset in the EBCR. This de-asserts the reset signal, provided to the local processor 44, and the local processor 44 begins its initialization process.
  • This initialization mode i.e., the download mode
  • Ser. No. 08/490,775 entitled “Method and Apparatus for Enabling Intelligent I/O Subsystems Using PCI I/O Devices", assigned to the same assignee as the present invention.
  • Steps 131 and 133 of FIG. 6 illustrate the sequence of events in a mode 1 configuration reset mode.
  • Mode 1 allows an external agent to initialize the intelligent bridge 43 when P_RST# 25 is asserted, the local processor 44 is held in reset, and the host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9 by the Retry circuitry 59.
  • an external agent has the opportunity to initialize the intelligent bridge 43.
  • the external agent may either clear the reset condition on the local processor 44 by clearing the Local Processor Reset Bit in the EBCR or enable the intelligent processor 43 to begin receiving configuration cycles by clearing the Configuration Cycle Disable bit in the EBCR.
  • Mode 2 (steps 137, 139) allows each unit of the intelligent bridge 43 to be initialized in its own manner. All units are reset when the P-RST# signal 25 is asserted. Each unit returns to its default state. This mode is similar to the prior art approaches in that a reset sequence is not guaranteed. In other words race conditions may exist between the local processor 44 operation after reset and a PCI configuration cycle, initiated by the host processor 27.
  • Steps 141-151 of FIG. 6 illustrate the sequence of events for the configuration mode (mode 3).
  • Mode 3 allows the local processor 44 to initialize and control the initialization process before the host processor 27 is allowed to configure the intelligent bridge 43.
  • the 80960 JF processor For additional details concerning the initialization process for the 80960 JF processor, please refer to the i960 Jx Microprocessor User's Manual.
  • Mode 3 is available only if the 80960 JF processor Initial Memory Image (IMI) is properly loaded into memory at a correct predetermined location.
  • IMI Initial Memory Image
  • the host processor 27 is prevented from initializing the intelligent bridge 43 by the Retry circuit 59. During this time, the Retry circuitry 59 signals a Retry on all PCI cycles it receives until the local processor 44 has cleared the Configuration Cycle Disable Bit in the EBCR.
  • PCI configuration registers By allowing the local processor 44 to control the initialization process, it is possible to initialize the PCI configuration registers to values other than the default power-up values. Certain PCI configuration registers that are read only through PCI configuration cycle are read/write from the local processor. This allows a programmer to customize the way the intelligent bridge 43 appears to the PCI configuration software (e.g., appearing as a networking device).
  • FIG. 7 illustrates in further detail the sequence of events for the download mode.
  • FIG. 8 illustrates additional details of the sequence of events in the user defined/external master mode.
  • FIG. 9 illustrates additional details concerning the sequence of events in a default mode.
  • FIG. 10 illustrates additional details of the sequence of events in the configuration mode.
  • FIG. 11 illustrates an exemplary implementation of the present invention in Intel Architecture (IA).
  • FIG. 11 illustrates the functional units of the 80960 JF processor (herein referred to as a "80960 RP").
  • the Retry circuitry 59 is integrated into the 80960 RP.
  • the Retry circuitry 59 may be implemented as part of the ATU 63 or the PCI-to-PCI bridge unit 62.
  • the Extended Bridge Control Register (EBCR) may be disposed in the PCI-to-PCI bridge unit 62.
  • the Retry circuitry 65 is coupled to the local processor (i.e., the 80960 JF Core) 44.
  • the Retry circuitry is provided a Core Processor Reset Bit (EBCR 1), the P_RST# signal 67, and a software controlled Reset Local Processor Reset Bit (EBCR-bit 5).
  • the Retry circuitry 59 is also provided a Configuration Cycle Retry Bit (EBCR 2! 61.
  • the reset circuitry 65 provides a signal to the JF Core 44 that places the local processor 44 into reset.
  • the P_RST# signal 67 is also provided to a Secondary PCI Reset Generator 326 for generating a Secondary PCI Reset signal (S_RST#) 327.
  • the Secondary PCI Reset Generator 326 is also provided a Secondary Bus Reset Bit (BCR 6!) 325.
  • FIG. 11 Other functional blocks such as a memory controller 313, the APIC unit 315, a local bus arbitration unit 317, I 2 C interface unit 319, first and second DMA units (311 and 321), and a secondary address translation unit 323 are illustrated in FIG. 11. However, these units are not particularly relevant to the present invention.
  • a memory controller 313, the APIC unit 315, a local bus arbitration unit 317, I 2 C interface unit 319, first and second DMA units (311 and 321), and a secondary address translation unit 323 are illustrated in FIG. 11.
  • these units are not particularly relevant to the present invention.
  • FIG. 11 For further details concerning the architecture of the 80960 RP chip, please see pending application, entitled “Architecture for an I/O Processor that Integrates a PCI to PCI Bridge" Ser. No. 08/490,654, assigned to the same assignee as this application.

Abstract

An integrated circuit for providing multiple configuration modes in a multi-funtion intelligent bridge that includes an integrated processor. A first circuit, coupled to a first external bus, for selectively generating retry cycles onto the first external bus in response to a retry signal is provided. A second circuit, coupled to a local processor, for selectively resetting a local processor that is integrated in the intelligent bridge in response to a reset signal is provided. The first and second circuit, in conjunction with the retry signal and the reset signal, selectively provides one of a multiple number of configuration reset modes for the multi-function intelligent bridge.

Description

BACKGROUND OF THE INVENTION
(1) Field of the Invention
This invention relates to computer systems, and, in particular, to a method and apparatus for providing multiple configuration modes to an intelligent PCI to PCI bridge.
(2) Prior Art
When a computer system is reset, a host processor of the computer system begins an initialization process. This initialization process includes initializing the values of registers to a predetermined value and also initializing the state machines to a known state. Once a host processor completes its initialization sequence, the host processor proceeds to configure the various other devices connected in the computer system.
For example, in a computer system employing a bus having a protocol, as defined by PCI Bus Protocol, the host processor configures each PCI compliant device by reading and writing the configuration registers in that device. First, the host processor reads the configuration space of each PCI compliant device to gather information concerning the device. The host then proceeds to assign the device a device number, a bus number, a portion of PCI address space, and interrupt lines.
FIG. 1 illustrates a prior art PCI compliant Intelligent Computer Add-in Card 3. This Computer Card 3 is coupled to a PCI bus slot 5 that is disposed on a backplane or a motherboard. This Computer Card 3 includes a PCI to Processor Bus Bridge that interfaces a PCI bus 9 to a Local Processor bus 11. The PCI to Local Processor Bus Bridge 7 may be implemented by the PLX 9060 chip or the V39XPCI chip. A processor 13 is coupled to the Local Processor Bus 11. This processor 13 is referred to as a "local processor" to distinguish it from the main system processor or "host processor." The Local Processor Bus 11 is also coupled to Dynamic Random Access Memory (DRAMs) and a Read Only Memory (ROM) 17 via a Memory Controller 21. The Memory Controller 21 controls accesses to the RAM 15 and the ROM 17. The Local Processor Bus 11 is also coupled to one or more input/output (I/O) devices 23 that are compliant to the protocol of the Local Processor Bus 11.
Upon system reset, the Computer Card 3 receives a P_RST# signal 25 from the host processor 27. The PCI to Local Processor Bus Bridge 7 translates the P_RST# signal 25 into a RST# signal to reset the local processor 13.
A requirement of the PCI bus protocol is that each PCI bus compliant device have a configuration space. This configuration space must include a predetermined header containing predetermined fields of information (i.e., registers that include specific information, such as, device type, vendor ID) so that the host processor, when configuring the computer system, can easily identify the PCI device and also identify its memory requirements and its processing needs.
To fulfill this requirement, the prior art includes a serial EEPROM 31 that contains the configuration information required by the PCI bus protocol. Upon receipt of the P_RST# signal 25, the configuration information stored in a serial EEPROM 31 is sent to a plurality of Configuration Registers 33 that are implemented as part of the PCI to Local Processor Bus Bridge 7.
Upon receiving the RST# signal 29, the local processor 13 begins to execute initialization software that initializes the internal registers of the local processor 13, the Memory Controller 21, Local Processor Bridge 7, and other devices in the Computer Card 3. The P-RST# signal 25 also initializes the state machines in the Computer Card 3 into a known state.
Since there are two concurrent initialization sequences occurring upon reset (i.e., the initialization for the host processor and the initialization for the local processor), a synchronization issue arises. For example, if the host processor completes its initialization sequence and begins a PCI configuration cycle before the serial EEPROM 31 downloads the pertinent information into the Configuration Registers 33 in the PCI to Local Processor Bus Bridge 7, Computer Card 3 would not be recognized by the host processor. In fact, in the prior art, there is no mechanism to guarantee that the Configuration Registers 33 are written with the appropriate information before a host processor attempts to configure the Computer Card 3. Accordingly, there is a need for a method and apparatus to guarantee that the PCI configuration space, as implemented with the Configuration Registers 33, are loaded with the appropriate information before a host processor reads these Configuration Registers 33.
Another disadvantage of the prior art is that additional board space and increased system costs for providing a serial EEPROM component 31 are incurred. This additional overhead is compounded when a computer system is configured with the components of the Computer Card 3, disposed on the baseboard or motherboard. Accordingly, a method and apparatus for guaranteeing synchronization of a reset sequence without a serial EEPROM component 31 is desirable.
Another disadvantage of the prior art is the uncertainty of synchronizing a reset sequence by streamlining the initialization software executed by the local processor 13. In other words, the prior art approach merely optimizes the initialization code that is executed by the Local Processor 13 so as to increase the probability that the local processor initialization completes before the host processor reads the configuration space of the computer card 3. As noted previously, this current approach to the synchronization problem is not a guarantee that the local processor 13 will complete its own initialization before a Host Processor 27 completes its initialization sequence. Thus, this prior art method is unpredictable and dependent on the time that the host processor requires for its initialization sequence before reading the PCI configuration registers of the Computer Card 3.
In summary, streamlining the initialization software that executes on local processor 13, so that the local processor 13 can initialize the PCI Configuration Space 33 prior to a Host Processor 27 reading the Configuration Registers, is inadequate and unpredictable since this solution is dependent on the time required by the host processor to finish its initialization sequence. Additionally, the solution of providing a serial EEPROM 31 to download information into the PCI configuration space 33 of the PCI to Local Processor Bus Bridge 7 is also inadequate and non-optimal in that the solution is still unpredictable and dependent on the initialization sequence time required by the host processor to complete initialization. This approach also incurs additional system costs and also board space.
Accordingly, there is a need for a method and apparatus for providing multi-configuration modes to an intelligent multi-function bridge.
BRIEF SUMMARY OF THE INVENTION
A method and apparatus for providing multiple-configuration reset modes to an intelligent bridge is described herein. The present invention provides these multiple-configuration reset modes so that an architectural system designer has the flexibility to initialize an intelligent I/O subsystem by using an intelligent bridge. An intelligent I/O subsystem, employing an intelligent bridge, includes an embedded microprocessor, memory, PCI devices or subsystems, and a PCI interface that contains a PCI configuration space. This PCI configuration space includes registers that are used to identify the PCI device or subsystem. During system initialization, the host processor reads these configuration registers to notify the host processor of the system configuration. The present invention enables this configuration space to be initialized by the intelligent bridge prior to the host processor reading the configuration registers, so that the intelligent I/O subsystem takes the appearance of any PCI device or subsystem when the host processor reads the registers.
Furthermore, the present invention allows an embedded system to contain Random Access Memory (RAM) only. The present invention obviates the need for a Read Only Memory (ROM) by allowing the host processor to initialize the embedded system and also to download code from a host memory to the embedded RAM in the subsystem.
Moreover, the present invention controls the reset sequence of the intelligent I/O subsystem on the intelligent bridge. The present invention also guarantees the synchronization of the initialization sequence between the integrated processor in the intelligent bridge and the host processor.
BRIEF DESCRIPTION OF THE DRAWINGS
The objects, features and advantages of the present invention will be apparent to one skilled in the art in light of the following detailed description in which:
FIG. 1 illustrates a prior art computer system.
FIG. 2 illustrates a computer system in which the present invention may be implemented.
FIG. 3 illustrates further details of the present invention in block diagram form, as implemented in a multi-function intelligent bridge.
FIG. 4 illustrates a flowchart of the processing steps carried out by a retry circuit.
FIG. 5 illustrates a state diagram for the retry circuitry.
FIG. 6 illustrates a flowchart of how the various configuration reset modes of the intelligent bridge are selectively activated.
FIG. 7 illustrates a flowchart of the sequence of events in the download mode (Mode 0).
FIG. 8 illustrates a flowchart of the sequence of events in the user define/external master mode (Mode 1).
FIG. 9 illustrates a flowchart of the sequence of events for reset configuration mode 2.
FIG. 10 illustrates a flowchart of the sequence of events in the configuration mode (Mode 3).
FIG. 11 illustrates a preferred embodiment of the present invention in an intelligent bridge, configured in an Intel Architecture.
DETAILED DESCRIPTION OF THE INVENTION
Referring to the figures, exemplary embodiments of the invention will now be described. The exemplary embodiments are provided to illustrate the aspects of the invention and should not be construed as limiting the scope of the invention. The exemplary embodiments are primarily described with reference to block diagrams or flowcharts. As to the flowcharts, each block within the flowcharts represents both a method step and an apparatus element for performing the method step. Depending upon the implementation, the corresponding apparatus element may be configured in hardware, software, firmware or combinations thereof.
FIG. 2 illustrates a computer system in which the present invention may be implemented. The circuit components illustrated in FIG. 2 may be implemented on a computer card 41 or on the motherboard or baseboard (not shown). This computer system 41 includes an intelligent bridge 43 having an integrated processor 44. The intelligent bridge 43 performs the following functions. First, the intelligent bridge 43 interfaces the primary PCI bus 9 with a secondary PCI bus 45. For example, the intelligent bridge 43 translates primary PCI bus cycles into corresponding secondary PCI bus cycles and vice-versa. The secondary PCI bus 45 may have a plurality of I/O devices 47 that are PCI-compliant coupled to it.
The integrated processor 44 is coupled to a local processor bus 7. A memory (e.g., Random Access Memory) 15 and a ROM (Read Only Memory) 17 are coupled to the intelligent bridge 43 through the local processor bus 7.
The intelligent bridge 43 also includes the required configuration space 49, as defined by the PCI bus protocol. This configuration space 49 includes a plurality of configuration registers that include information which defines the functions provided by the intelligent bridge 43. The present invention allows for configuration information stored in the ROM 17 to be downloaded into the configuration registers 49 by processor 44. Moreover, ROM 117 may include boot code that is executed by the integrated processor 44 after the local processor's reset initialization sequence.
FIG. 3 illustrates a block diagram of the present invention implemented in an exemplary computer system. A host processor 27 is coupled to a host processor bus-PCI bus bridge 57. This bridge 57 provides an interface between the host processor bus and a primary PCI bus 9. The bridge 57 also controls accesses to the main memory and a cache of the computer system (not shown).
As noted previously, the present invention may be implemented in the intelligent bridge 43. The intelligent bridge 43 includes a PCI to PCI bridge 62 having a plurality of control registers 64. The PCI to PCI bridge 62 translates the primary PCI bus cycles into secondary PCI bus cycles and vice versa. The intelligent bridge 43 also includes an address translation unit (ATU) 63 that translates primary PCI bus cycles into local processor bus cycles and vice versa. A local processor 44 is coupled to the ATU 63 via the local processor bus 7.
The present invention includes two key components. First, a Retry circuitry 59 is coupled to the primary PCI bus 9, the ATU 63, and the PCI to PCI bridge 62. The Retry circuitry 59 includes an input for receiving a Retry signal 61. In response to an asserted Retry signal 61, the Retry circuitry 59 generates a Retry cycle on the primary PCI bus 9. This PCI Retry cycle notifies the host processor 27 to repeat the current instruction at a later time. Second, the present invention includes a reset circuit 65, coupled to the local processor 44. This reset circuit includes an input for receiving the P_RST signal 67 (i.e., Primary PCI Reset signal), a hardware reset signal 69, and a software reset signal 71. In response to receiving any one of an asserted P_RST# signal 67, and an asserted software reset signal 71, the reset circuit 65 resets the intelligent bridge and optionally continues to hold the local processor 44 in a reset state. If none of the inputs provided to the reset circuitry 65 are asserted, the local processor 44 is brought out of the reset state.
FIG. 4 illustrates a flowchart of the processing steps followed by the Retry circuitry 59 of FIG. 3. First, a determination is made whether both the IDSEL signal and a C/BE# (Command/Byte Enable) signal are asserted (decision block 81) An asserted IDSEL signal indicates that the intelligent bridge 43 is the selected device, and the asserted C/BE# indicates that a configuration cycle is detected on the primary PCI bus. If not, continue checking the IDSEL signal and the C/BE# signal. If yes, the Retry circuitry 59 determines if a Configuration Cycle Retry Bit is asserted (decision block 85). If yes, the Retry circuit 59 asserts a STOP# signal on the primary PCI bus 9. Asserting the STOP# signal indicates to the requesting processor that the intelligent bridge 43 is not ready and to retry at a later time. If no, the Retry circuitry 59 asserts TRDY# and accepts data for a write instruction and provides data for a read instruction. An asserted TRDY# signal (i.e., a Target Ready signal) indicates to the requesting processor that the intelligent bridge 43 is ready to process the current request. The Configuration Cycle Retry Bit, as will be described hereinafter, may be a bit in a control register 64, residing in the PCI-to-PCI bridge 62.
FIG. 5 illustrates a state diagram for the Retry circuitry of FIG. 3. The Retry circuitry 69 transitions from an Idle state 97 into a Configuration Cycle Detected state 101 when the IDSEL signal is asserted and the C/BE# signal is asserted. The output of the Retry circuitry STOP# is not asserted in the Configuration Cycle Detected state.
The Retry circuitry 59 transitions from the Configuration Cycle Detected state 101 into the accepted state 107 when the Configuration Cycle Retry Bit (CCRB) is not asserted. In the Accepted state 107, data to be written from the PCI bus is latched and appropriate data is returned in response to a read instruction. Data can be written to the configuration registers, through the bridge, or to local memory. In the Accepted state 107, the TRDY# signal is asserted, and the STOP# signal is never asserted. After the configuration cycle is completed, the Retry circuitry 59 transitions from the Accepted state 107 back to the Idle state 107.
The Configuration Cycle Detected state 101 transitions to the Retry state 103 if the CCRB is asserted. In the Retry state 103, the Retry circuitry 59 asserts a STOP# signal. Furthermore, a STOP# signal is asserted, and the TRDY# signal is never asserted. The Retry circuitry 59 transitions from the Retry state 103 back to the Idle state 97 when the CCRB is de-asserted.
FIG. 6 illustrates how the different configuration reset modes of the intelligent bridge 43 are selectively determined. The intelligent bridge 43 includes several units that require initialization before system operation. The order in which these units are initialized is important and is dependent on the system design. There is no one single initialization process for the intelligent bridge 43. The present invention provides several options that are determined and controlled by the system designer.
As noted previously, several units in the intelligent bridge 43 need to be initialized before system operation. For example, the PCI-to-PCI bridge 62, the ATU 63, the local processor 44 all require initialization before system operation. The order in which these units are initialized is dependent on how the intelligent bridge 43 is being used in the system. Four initialization options are provided by the present invention. The initialization options will be described hereinafter.
The initialization process begins when the Primary PCI Bus Reset signal (P_RST#) is asserted. The initialization process is generally controlled through either the host processor 27 or the local processor 44. The present invention provides four initialization modes (also referred to herein as configuration reset modes). These modes are denoted Modes 0-3. The particular mode is determined by the value of two signal pins: RST_MODE# and RETRY.
The RST_MODE# signal pin is sampled when P_RST# is de-asserted, i.e., on the rising edge. The inverse value of this signal is then written to the 80960 Processor Reset bit in the Extended Bridge Control Register (EBCR). If RST_MODE# is active when P_RST# is de-asserted, then the 80960 JF processor will be held in reset until the 80960 Processor Reset bit in the EBCR is cleared. If the RST_MODE# is inactive when P_RST# is de-asserted, the 80960 JF processor is reset and then begins its normal initialization sequence when P_RST# is de-asserted.
The RETRY signal pin is also sampled when P_RST# is de-asserted. The value of this signal is written to the Configuration Cycle Disable Bit in the EBCR. If RETRY is active when P_RST# is de-asserted, the Retry circuitry 59 signals a retry on all PCI cycles it receives on the primary PCI bus. If RETRY is inactive when P_RST# is asserted, the Retry circuitry 59 accepts PCI cycles on the primary PCI bus.
Table 1 describes the relationship between the RST_MODE# and RETRY values and the initialization modes.
              TABLE 1
______________________________________
                 Initialization
                           Primary PCI
                                    80960 JF
RST.sub.-- MODE #
         RETRY   Mode      Interface
                                    Processor
______________________________________
0        0       Mode 0    Accepts  Held in Reset
                           transactions
0        1       Mode 1    Retry all
                                    Held in Reset
                           configuration
                           transactions
1        0       Mode 2    Accepts  Initializes
                           transactions
1        1       Mode 3    Retry all
                                    Initializes
                           configuration
                           transactions
______________________________________
Each of these modes will now be briefly described. Mode 0 allows a host processor 27 to configure the intelligent bridge 43 through the primary PCI bus 9, while the local processor 44 is held in reset. The host processor 27 initializes and configures the intelligent bridge 43, downloads any code required by the local processor 44, and then clears the reset condition of the local processor 44. The local processor 44 then initializes and begins operation.
Mode 1 allows an external agent (e.g., a second processor downstream of the intelligent bridge) to initialize the intelligent bridge 43. The local processor 44 is again held in reset, and the host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9. In Mode 1, the external agent clears the reset condition of the local processor 44 or enables the PCI transactions on the primary PCI bus 9.
Mode 2 allows PCI transactions on the primary PCI interface, which is disposed in the PCI to PCI bridge 62, at any time and allows the local processor 44 to initialize after receiving the P_RST# signal.
Mode 3 allows the local processor 44 to initialize and then to control the intelligent bridge 43 and initialization process before a host processor 27 is allowed to configure the intelligent bridge 43. The host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9 until the local processor 44 initializes and clears the Configuration Cycle Disable bit in the EBCR. In Mode 3, a system designer must provide an initialization ROM (Read Only Memory) that stores initialization code to be executed by the local processor 44. This initialization software also downloads the appropriate configuration information into the configuration registers of the intelligent bridge 43.
FIG. 6 illustrates in greater detail each of the configuration reset modes.
(Mode 0 Download Mode)
Steps 117-127 illustrate the sequence of events in Mode 0 or the download mode. Mode 0 allows a host processor 27 to configure the intelligent bridge 43 while the processor 44 is held in reset. The host processor 27 configures the PCI-to-PCI bridge 62 by assigning bus numbers, allocating PCI address space, and assigning interrupt request numbers (IRQ numbers). The memory controller (not shown) and the ATU 63 can be initialized also by the host processor 27. The program code (i.e., boot code or initialization software) for the local processor 44 may be downloaded into local memory (not shown) from the host processor 27. This local memory is coupled to the local processor bus 7 via a memory controller. For example, the program code may be downloaded from the main memory (not shown) to the local memory, which is coupled to the intelligent bridge 43.
The host processor 27 clears the local processor 44 reset by clearing the Local Processor Reset in the EBCR. This de-asserts the reset signal, provided to the local processor 44, and the local processor 44 begins its initialization process. This initialization mode (i.e., the download mode), does not allow private PCI devices on the secondary PCI bus 45 without custom firmware since private devices on the secondary PCI bus 45 require that the ATU 63 and the PCI-to-PCI Bridge 62 be initialized with a special configuration before the system BIOS configures the secondary PCI bus. For additional information concerning private devices, please refer to pending application, Ser. No. 08/490,775, entitled "Method and Apparatus for Enabling Intelligent I/O Subsystems Using PCI I/O Devices", assigned to the same assignee as the present invention.
Mode 1 (User Defined External Master Mode
Steps 131 and 133 of FIG. 6 illustrate the sequence of events in a mode 1 configuration reset mode.
Mode 1 allows an external agent to initialize the intelligent bridge 43 when P_RST# 25 is asserted, the local processor 44 is held in reset, and the host processor 27 is prevented from initializing the intelligent bridge 43 through the primary PCI bus 9 by the Retry circuitry 59.
In this mode, an external agent has the opportunity to initialize the intelligent bridge 43. The external agent may either clear the reset condition on the local processor 44 by clearing the Local Processor Reset Bit in the EBCR or enable the intelligent processor 43 to begin receiving configuration cycles by clearing the Configuration Cycle Disable bit in the EBCR.
Mode 2 (Default Mode)
Mode 2 (steps 137, 139) allows each unit of the intelligent bridge 43 to be initialized in its own manner. All units are reset when the P-RST# signal 25 is asserted. Each unit returns to its default state. This mode is similar to the prior art approaches in that a reset sequence is not guaranteed. In other words race conditions may exist between the local processor 44 operation after reset and a PCI configuration cycle, initiated by the host processor 27.
Mode 3 (Configuration Mode)
Steps 141-151 of FIG. 6 illustrate the sequence of events for the configuration mode (mode 3). Mode 3 allows the local processor 44 to initialize and control the initialization process before the host processor 27 is allowed to configure the intelligent bridge 43. For additional details concerning the initialization process for the 80960 JF processor, please refer to the i960 Jx Microprocessor User's Manual. As an implementation note, Mode 3 is available only if the 80960 JF processor Initial Memory Image (IMI) is properly loaded into memory at a correct predetermined location.
The host processor 27 is prevented from initializing the intelligent bridge 43 by the Retry circuit 59. During this time, the Retry circuitry 59 signals a Retry on all PCI cycles it receives until the local processor 44 has cleared the Configuration Cycle Disable Bit in the EBCR.
By allowing the local processor 44 to control the initialization process, it is possible to initialize the PCI configuration registers to values other than the default power-up values. Certain PCI configuration registers that are read only through PCI configuration cycle are read/write from the local processor. This allows a programmer to customize the way the intelligent bridge 43 appears to the PCI configuration software (e.g., appearing as a networking device).
FIG. 7 illustrates in further detail the sequence of events for the download mode.
FIG. 8 illustrates additional details of the sequence of events in the user defined/external master mode.
FIG. 9 illustrates additional details concerning the sequence of events in a default mode.
FIG. 10 illustrates additional details of the sequence of events in the configuration mode.
FIG. 11 illustrates an exemplary implementation of the present invention in Intel Architecture (IA). FIG. 11 illustrates the functional units of the 80960 JF processor (herein referred to as a "80960 RP"). The Retry circuitry 59 is integrated into the 80960 RP. The Retry circuitry 59 may be implemented as part of the ATU 63 or the PCI-to-PCI bridge unit 62. The Extended Bridge Control Register (EBCR) may be disposed in the PCI-to-PCI bridge unit 62. The Retry circuitry 65 is coupled to the local processor (i.e., the 80960 JF Core) 44. The Retry circuitry is provided a Core Processor Reset Bit (EBCR 1), the P_RST# signal 67, and a software controlled Reset Local Processor Reset Bit (EBCR-bit 5). The Retry circuitry 59 is also provided a Configuration Cycle Retry Bit (EBCR 2!) 61. The reset circuitry 65 provides a signal to the JF Core 44 that places the local processor 44 into reset.
The P_RST# signal 67 is also provided to a Secondary PCI Reset Generator 326 for generating a Secondary PCI Reset signal (S_RST#) 327. The Secondary PCI Reset Generator 326 is also provided a Secondary Bus Reset Bit (BCR 6!) 325.
Other functional blocks such as a memory controller 313, the APIC unit 315, a local bus arbitration unit 317, I2 C interface unit 319, first and second DMA units (311 and 321), and a secondary address translation unit 323 are illustrated in FIG. 11. However, these units are not particularly relevant to the present invention. For further details concerning the architecture of the 80960 RP chip, please see pending application, entitled "Architecture for an I/O Processor that Integrates a PCI to PCI Bridge" Ser. No. 08/490,654, assigned to the same assignee as this application.
A variety of hardware and software functions have been described herein. Depending upon the implementation, many of the hardware functions may be emulated using software. Likewise, software functions may be performed using hardware components having hardwired circuitry configured to perform the functions. In other implementations, some of the hardware or software functions may be configured using firmware or other computer system implementation technologies.
The exemplary embodiments described herein are provided merely to illustrate the principles of the invention and should not be construed as limiting the scope of the invention. Rather, the principles of the invention may be applied to a wide range of systems to achieve the advantages described herein and to achieve other advantages or to satisfy other objectives as well.

Claims (13)

It is claimed:
1. An intelligent bridge comprising:
a) a retry circuit coupled to a first external bus for receiving a retry signal, and responsive thereto, generating retry cycles onto the first external bus; and
b) a reset circuit, coupled to a local processor, for receiving a reset signal, and responsive thereto, resetting the local processor, said reset circuit performs one of bringing the local processor into reset and keeping the local processor in reset, when the reset signal is asserted and bringing the local processor out of reset when the reset signal is not asserted;
wherein the retry circuit and the reset circuit provide multiple configuration modes for the intelligent bridge.
2. The intelligent bridge as set forth in claim 1 wherein the retry circuit accepts configuration cycles from a host processor when a Retry signal is not asserted and generates Retry cycles onto the first external bus and blocks configuration cycles when the Retry signal is asserted.
3. The intelligent bridge as set forth in claim 1 wherein the Retry signal is a first bit in a command register having a plurality of bits.
4. The intelligent bridge of claim 1 wherein the reset signal is a second bit in the command register.
5. The intelligent bridge of claim 1 wherein the first external bus is compliant to a PCI bus protocol.
6. The intelligent bridge of claim 1 wherein the reset circuit is further provided with a PCI reset signal, and the reset circuit in response to an asserted PCI reset signal resets the local processor.
7. The intelligent bridge of claim 1 wherein the reset circuit is further provided with a software controlled reset signal and the reset circuit in response to an asserted controlled reset signal resets the local processor.
8. The intelligent bridge of claim 1 wherein the reset circuit is an OR gate provided with the PCI reset signal, the software controlled reset signal, and the reset signal as inputs and generating a reset signal as an output.
9. A method comprising the steps of:
(a) receiving a reset signal;
(b) receiving a retry signal;
(c) determining if said reset signal is active;
(d) if yes, determining if the retry signal is active,
(i) if yes, holding a local processor in reset mode and allowing configuration cycles of the host processor to configure an intelligent bridge;
(ii) if no, blocking configuration cycles of a host processor and allowing an external agent to configure the intelligent bridge;
(e) if no, determining whether the retry signal is active,
(i) if yes, allowing the host processor to access the intelligent bridge;
(ii) if no, blocking configuration cycles of the host processor and allowing the local processor to configure the intelligent bridge.
10. The method in claim 9 further comprising the steps of:
(a) configuring a memory controller;
(b) configuring an address translation unit;
(c) downloading a program code for said local processor; and
(d) releasing said local processor from said reset mode.
11. The method in claim 9 wherein the step of if no, blocking configuration cycles of a host processor and allowing an external agent to configure the intelligent bridge further comprises the steps of:
(a) allowing said external agent to configure a memory controller;
(b) allowing said external agent to configure an address translation unit;
(c) allowing said external agent to download a program code for said local processor; and
(d) allowing said external agent to release said local processor from said reset mode.
12. The method in claim 9 further comprising the steps of configuring a memory controller and an address translation unit.
13. The method in claim 9 wherein the step of if no, blocking configuration cycles of the host processor and allowing the local processor to configure the intelligent bridge further comprises the steps of:
(a) allowing said local processor to configure a memory controller;
(b) allowing said local processor to configure an address translation unit;
(c) allowing said local processor to download a program code for said local processor; and
(d) allowing said local processor to disable retry mode signal.
US08/536,156 1995-09-29 1995-09-29 Method and apparatus for providing multiple configuration reset modes for an intelligent bridge Expired - Fee Related US5859987A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08/536,156 US5859987A (en) 1995-09-29 1995-09-29 Method and apparatus for providing multiple configuration reset modes for an intelligent bridge

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/536,156 US5859987A (en) 1995-09-29 1995-09-29 Method and apparatus for providing multiple configuration reset modes for an intelligent bridge

Publications (1)

Publication Number Publication Date
US5859987A true US5859987A (en) 1999-01-12

Family

ID=24137388

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/536,156 Expired - Fee Related US5859987A (en) 1995-09-29 1995-09-29 Method and apparatus for providing multiple configuration reset modes for an intelligent bridge

Country Status (1)

Country Link
US (1) US5859987A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5996038A (en) * 1998-01-26 1999-11-30 Intel Corporation Individually resettable bus expander bridge mechanism
US6035346A (en) * 1997-11-03 2000-03-07 Compaq Computer Corporation Method and apparatus to reprogram flash ROM without proxy code
US6119191A (en) * 1998-09-01 2000-09-12 International Business Machines Corporation Performing PCI access cycles through PCI bridge hub routing
US6195749B1 (en) * 2000-02-10 2001-02-27 Advanced Micro Devices, Inc. Computer system including a memory access controller for using non-system memory storage resources during system boot time
US6266770B1 (en) 1998-04-14 2001-07-24 Micron Technology, Inc. Method for autonomous configuration of peer devices
US6360289B2 (en) * 1998-04-14 2002-03-19 Micron Technology, Inc. System for autonomous configuration of peer devices
US6584538B2 (en) * 1993-02-11 2003-06-24 Hitachi, Ltd. Information processing system
US20030120910A1 (en) * 2001-12-26 2003-06-26 Schmisseur Mark A. System and method of remotely initializing a local processor
US20030154341A1 (en) * 2002-02-12 2003-08-14 Antonio Asaro Method and apparatus for a data bridge in a computer system
US20030159027A1 (en) * 2002-02-15 2003-08-21 Katsurou Sekiya Microcomputer for apparatus control and vehicle-mounted electronic control unit incorporating microcomputer
US6629157B1 (en) * 2000-01-04 2003-09-30 National Semiconductor Corporation System and method for virtualizing the configuration space of PCI devices in a processing system
US20050251640A1 (en) * 2004-05-05 2005-11-10 Wheeler Andrew R System and method for configuring a computer system
US20110002448A1 (en) * 1998-12-15 2011-01-06 Sbc Properties, L.P. Emergency Telephone Call Notification Service System and Method
CN105354167A (en) * 2015-11-17 2016-02-24 无锡江南计算技术研究所 Buffer emptying method for resetting secondary bus of PCI bridge
GB2589656A (en) * 2019-08-09 2021-06-09 Fujitsu Client Computing Ltd Information processing system, relay device and computer-readable program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548730A (en) * 1994-09-20 1996-08-20 Intel Corporation Intelligent bus bridge for input/output subsystems in a computer system
US5568619A (en) * 1995-01-05 1996-10-22 International Business Machines Corporation Method and apparatus for configuring a bus-to-bus bridge
US5608876A (en) * 1995-05-22 1997-03-04 International Business Machines Corporation Add-in board with enable-disable expansion ROM for PCI bus computers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548730A (en) * 1994-09-20 1996-08-20 Intel Corporation Intelligent bus bridge for input/output subsystems in a computer system
US5568619A (en) * 1995-01-05 1996-10-22 International Business Machines Corporation Method and apparatus for configuring a bus-to-bus bridge
US5608876A (en) * 1995-05-22 1997-03-04 International Business Machines Corporation Add-in board with enable-disable expansion ROM for PCI bus computers

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6584538B2 (en) * 1993-02-11 2003-06-24 Hitachi, Ltd. Information processing system
US6035346A (en) * 1997-11-03 2000-03-07 Compaq Computer Corporation Method and apparatus to reprogram flash ROM without proxy code
US5996038A (en) * 1998-01-26 1999-11-30 Intel Corporation Individually resettable bus expander bridge mechanism
US6266770B1 (en) 1998-04-14 2001-07-24 Micron Technology, Inc. Method for autonomous configuration of peer devices
US6360289B2 (en) * 1998-04-14 2002-03-19 Micron Technology, Inc. System for autonomous configuration of peer devices
US6119191A (en) * 1998-09-01 2000-09-12 International Business Machines Corporation Performing PCI access cycles through PCI bridge hub routing
US20110002448A1 (en) * 1998-12-15 2011-01-06 Sbc Properties, L.P. Emergency Telephone Call Notification Service System and Method
US6629157B1 (en) * 2000-01-04 2003-09-30 National Semiconductor Corporation System and method for virtualizing the configuration space of PCI devices in a processing system
US6195749B1 (en) * 2000-02-10 2001-02-27 Advanced Micro Devices, Inc. Computer system including a memory access controller for using non-system memory storage resources during system boot time
US7290127B2 (en) * 2001-12-26 2007-10-30 Intel Corporation System and method of remotely initializing a local processor
US20030120910A1 (en) * 2001-12-26 2003-06-26 Schmisseur Mark A. System and method of remotely initializing a local processor
US20030154341A1 (en) * 2002-02-12 2003-08-14 Antonio Asaro Method and apparatus for a data bridge in a computer system
US8219736B2 (en) * 2002-02-12 2012-07-10 Ati Technologies Ulc Method and apparatus for a data bridge in a computer system
US20030159027A1 (en) * 2002-02-15 2003-08-21 Katsurou Sekiya Microcomputer for apparatus control and vehicle-mounted electronic control unit incorporating microcomputer
US7162622B2 (en) * 2002-02-15 2007-01-09 Denso Corporation Microcomputer for apparatus control and vehicle-mounted electronic control unit incorporating microcomputer
US20050251640A1 (en) * 2004-05-05 2005-11-10 Wheeler Andrew R System and method for configuring a computer system
US7519802B2 (en) * 2004-05-05 2009-04-14 Hewlett-Packard Development Company, L.P. System and method for configuring a computer system
CN105354167A (en) * 2015-11-17 2016-02-24 无锡江南计算技术研究所 Buffer emptying method for resetting secondary bus of PCI bridge
CN105354167B (en) * 2015-11-17 2018-01-19 无锡江南计算技术研究所 The buffering purging method that a kind of PCI Bridge secondary bus resets
GB2589656A (en) * 2019-08-09 2021-06-09 Fujitsu Client Computing Ltd Information processing system, relay device and computer-readable program

Similar Documents

Publication Publication Date Title
KR100262677B1 (en) ADD-IN Board With Enable/Disable Expansion ROM for PCI BUS Computer
US5675794A (en) Method and apparatus for configuring multiple agents in a computer system
JP2573566B2 (en) Bus converter
US5859987A (en) Method and apparatus for providing multiple configuration reset modes for an intelligent bridge
US6338107B1 (en) Method and system for providing hot plug of adapter cards in an expanded slot environment
US6272582B1 (en) PCI-PCI bridge allowing controlling of a plurality of PCI agents including a VGA device
US5220651A (en) Cpu-bus controller for accomplishing transfer operations between a controller and devices coupled to an input/output bus
KR100742718B1 (en) Transparent bridges connected between the first and second buses of a computer system, systems comprising the same and methods of bridging the first and second buses of a computer system
US5826093A (en) Dual function disk drive integrated circuit for master mode and slave mode operations
US20010018721A1 (en) Upgrade card for a computer system
US5784599A (en) Method and apparatus for establishing host bus clock frequency and processor core clock ratios in a multi-processor computer system
US5774681A (en) Method and apparatus for controlling a response timing of a target ready signal on a PCI bridge
US6611912B1 (en) Method and apparatus having a system BIOS write configuration data of a riser card to a controller configuration space when connecting the riser card to a motherboard
KR20010080515A (en) A direct memory access engine for supporting multiple virtual direct memory access channels
US6021483A (en) PCI-to-PCI bridges with a timer register for storing a delayed transaction latency
US6457137B1 (en) Method for configuring clock ratios in a microprocessor
US5933613A (en) Computer system and inter-bus control circuit
EP0784278B1 (en) Interface architecture for connection to a peripheral component interconnect bus
US6195723B1 (en) Method and system for providing peer-to-peer control in an expanded slot environment using a bridge as an agent for controlling peripheral device
US6076128A (en) Data transfer method between buses, bridge devices for interconnecting buses, and data processing system including multiple buses
JPH03196225A (en) Programmable interrupt controller
US5960180A (en) Host adapter integrated circuit having autoaccess pause
KR20010108428A (en) Data transaction access system and method
JP4359618B2 (en) Configuration register access method, setting method, integrated circuit parts, computer system, product
JPH03290751A (en) Micro-computer peripheral equipment controller

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GILLESPIE, BYRON;DAVIS, BARRY;REEL/FRAME:007791/0650

Effective date: 19951001

FPAY Fee payment

Year of fee payment: 4

REMI Maintenance fee reminder mailed
FPAY Fee payment

Year of fee payment: 8

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20110112