The present invention relates to a multiple port system. More particularly, the present invention relates to a system and method for controlling a multiple port system including a control register set.
The control register set 14 is accessible over an industry standard interface and is controlled using control signals having a management frame. For example, if an individual port device needs to be reset, a corresponding bit set is written to the registers in order to initiate a reset operation. Similarly, there are other functions such as “power down” that can be controlled by writing to the respective register bit. This conventional method works fine when the control needs to be done on a “per-port” basis. However, there may be situations where all the ports in the device (ASIC or ASSP) need to be reset simultaneously. There are several ways to achieve such a simultaneous or global control.
One way of implementing a global control is to provide a piece of logic such as an AND gate 16 that monitors the reset signal from each of the ports 12, as shown in
Accordingly, it would be desirable to provide a system and method that implement global signals in a multiple-port circuit design in a scalable manner.
A multiple port system includes a plurality of port devices, each port device including a control register set, and a control bus coupled to the plurality of port devices. The control bus provides a control signal to each port device, and the control signal includes port address information and register address information. The control register set includes a set of registers responsive to the control signal if the port address information indicates the corresponding port device, and a designated register responsive to the control signal if the port address information indicates one of the plurality of the port devices and the register address information indicates the designated register.
The accompanying drawings, which are incorporated into and constitute a part of this specification, illustrate one or more embodiments of the present invention and, together with the detailed description, serve to explain the principles and implementations of the invention.
In the drawings:
Embodiments of the present invention are described herein in the context of a multiple port system and a method for controlling the same. Those of ordinary skill in the art will realize that the following detailed description of the present invention is illustrative only and is not intended to be in any way limiting. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure. Reference will now be made in detail to implementations of the present invention as illustrated in the accompanying drawings. The same reference indicators will be used throughout the drawings and the following detailed description to refer to the same or like parts.
In the interest of clarity, not all of the routine features of the implementations described herein are shown and described. It will, of course, be appreciated that in the development of any such actual implementation, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, such as compliance with application- and business-related constraints, and that these specific goals will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.
The multiple port system 30 may be implemented as an ASIC or ASSP and used in a network interface chip, network interface card, and the like. Each port device 32 may be an individual channel core provided in a multiple-channel application of a system-on-chip design. Each port device 32 is also referred to as an instance of the identical port, which is instantiated multiple times in a cycle if the system requires.
The control register set 34 is typically used for configuration and control of the respective port device 32. The control register set 34 is accessible over an industry standard interface and is controlled using control signals supplied via the control bus 36. A control signal includes port address information and register address information, typically in the form of a management frame.
In accordance with one embodiment of the present invention, one of the registers in each of the control register set 34 is designated as a specific “global” register. That is, referring back to
In accordance with one embodiment of the present invention, local (port-specific) control signals and global (inter-port) control signals are implemented using the same control signal scheme without the need of extra logic. A local control signal includes the port address information indicating a specific port, and the register address information indicating one of the non-designated registers. Thus, when the port devices 32 receive a local control signal, only one specific port device 32 responds to the control signal and the control data is written to the addressed register in that port device 32. A global control signal includes the port address information indicating one of the port devices 32, and the register address information indicating the designated register 38. Thus, when the port devices 32 receive the global control signal, all of the port devices 32 respond to the control signal, and the control data is written to the designated register 38 in all of the port devices 32.
Since all of the port devices 32 are in the identical state when the global signal is applied thereto, only one of the port devices 32 (for example, the port device 32a) is coupled to the common logic 39 and sends the information of the global port status thereto. Compared with the conventional design (the multiple port system 10 shown in
It should be noted that since the global control signal has the port address information indicating one of the port devices, that one specific port device responses to the global control signal as if it is a port-specific control signal. However, since the register address information indicates the designated register, the same control data is written to the designated register so as to perform the global operation in the same manner as other port devices.
If the port address information indicates a different port device (126), the port device still examines the register address information, and determines if the register address information indicates the designated register (128). For example, the register address information is compared with a specific register address of the designated register. If the register address information matches the specific register address, an operation (i.e., a global operation) is performed to the designated register (130). If the register address information does not match the specific register address, the control signal may be discard or ignored.
As described above, the global control signals are implemented in such a way that it does not require external logic when the each port device (core) is instantiated multiple times. One of the registers is considered to be a global register. For example, in a normal write cycle to a register of the control register set, each port device monitors the port address and register address of the control signal before it responds to the control signal and perform an operation. The designated register (global register) is an exception. That is, if the port device sees the global register address during the write cycle, then it accepts the write operation even if the port address does not match its own port address. In the case of the reset operation, for example, this implementation eliminates the need of extra logic for monitoring individual reset signals from multiple ports is eliminated, as well as the need to perform a write operation to each port to set the individual reset bits in order to initiate a global reset operation.
While embodiments and applications of this invention have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4797877 | Pope et al. | Jan 1989 | A |
5784003 | Dahlgren | Jul 1998 | A |
5802052 | Venkataraman | Sep 1998 | A |
6011799 | Kerstein et al. | Jan 2000 | A |
6205493 | Dreyer et al. | Mar 2001 | B1 |
6389480 | Kotzur et al. | May 2002 | B1 |
6697887 | Acharya | Feb 2004 | B1 |