Dual phase arbitration on a bus

Electrical computers and digital data processing systems: input/ – Access arbitrating

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C370S462000, C370S419000, C710S241000, C710S242000, C710S243000, C710S244000, C710S200000, C710S220000

Reexamination Certificate

active

06529984

ABSTRACT:

CROSS-REFERENCE TO RELATED APPLICATIONS
Not applicable.
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT
Not applicable.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to arbitration on a digital bus. More particularly, the invention relates to an improved arbitration on an IEEE 1394 bus. More particularly still, the invention relates to an improved dual phase arbitration scheme on an IEEE 1394 bus.
2. Background of the Invention
A “bus” is a collection of signals interconnecting two or more electrical devices that permits one device to transmit information to one or more other devices. There are many different types of busses used in computers and computer-related products. Examples include the Peripheral Component Interconnect (“PCI”) bus, the Industry Standard Architecture (“ISA”) bus and Universal Serial Bus (“USB”), to name a few. The operation of a bus usually defined by a standard which specifies various concerns such as the electrical characteristics of the bus, how data is to be transmitted over the bus, how requests for data are acknowledged, and the like. Using a bus to perform an activity, such as transmitting data, requesting data, etc., is generally called running a “cycle.” Standardizing a bus protocol helps to ensure effective communication between devices connected to the bus, even if such devices are made by different manufacturers. Any company wishing to make and sell a device to be used on a particular bus, provides that device with an interface unique to the bus to which the device will connect. Designing a device to particular bus standard ensures that device will be able to communicate properly with all other devices connected to the same bus, even if such other devices are made by different manufacturers. Thus, for example, an internal fax/modem (ie., internal to a personal computer) designed for operation on a PCI bus will be able to transmit and receive data to and from other devices on the PCI bus, even if each device on the PCI bus is made by a different manufacturer.
According to most bus protocols, a device that needs to run a cycle on the bus must first gain control of the bus. Once the sending device has control of the bus, that device then can run its desired cycle, which may entail transmitting data to a receiving bus device. Often, more than one bus device may concurrently need to initiate a cycle on the bus. Bus protocols in which multiple devices may request control of the bus to run cycles usually implement some form of “arbitration” to efficiently decide which device to grant control of the bus among multiple devices requesting control. The prior art is replete with many types of arbitration schemes.
Currently, there is a market push to incorporate various types of consumer electronic equipment with a bus interface that permits such equipment to be connected to other equipment with a corresponding bus interface. For example, digital cameras, digital video recorders, digital video disks (“DVDs”), printers are becoming available with an IEEE 1394 bus interface. The IEEE (“Institute of Electrical and Electronics Engineers”) 1394 bus, for example, permits a digital camera to be connected to a printer or computer so that an image acquired by the camera can be printed on the printer or stored electronically in the computer. Further, digital televisions can be coupled to a computer or computer network via an IEEE 1394 bus.
The present invention provides an improvement to arbitration on the IEEE 1394 bus, although the principles of the present invention may extend to other bus protocols, certainly other bus protocols experiencing a similar arbitration problem to that described below. To understand the nature of the problem solved by the present invention, the general structure and operation of an IEEE 1394 bus and arbitration scheme will now be provided. Referring to
FIG. 1
, an IEEE 1394 network
50
comprises one or more “nodes,” node
1
-node
7
. A node represents an electronic device(s) with an IEEE 1394 bus interface. A node device may comprise a computer, a digital camera, a digital video recorder, a DVD player, or another type of device having a suitable bus interface. Each node couples to at least one other node. As shown in the exemplary architecture of
FIG. 1
, node
1
couples both to nodes
2
and
3
. Node
3
, in turn, couples to nodes
4
, and
5
and node
5
also couples to nodes
6
and
7
. In general, each node can transmit data to any other node in the network. For example, node
7
can transmit data to node
2
, but the transmitted data will pass from node
7
to node
5
to node
3
to node
1
and then, to node
2
.
The IEEE 1394 standard has undergone modification from the initial release of the bus standard referred to as “IEEE 1395-1995” to the current approved standard called “IEEE 1394a.” The changes from IEEE 1395-1995 to IEEE 1394a are beyond the scope of relevance of the present invention and thus are not discussed in this disclosure. Currently, modification of the IEEE 1394a standard to a new version known as IEEE 1494b is underway. The proposed IEEE 1394b protocol includes a rework of the way in which arbitration works on the bus. The proposed IEEE 1394b arbitration will now be described with continued reference to FIG.
1
.
In accordance with the IEEE 1394b standard, one of the nodes is selected to be the Bus Owner/Supervisor/Selector (“BOSS”). For a node to be a BOSS node means that node has control over the bus. For a node to transmit its data to another node or send a data request to another node, the sending node must become the BOSS. Thus, any node in the network can potentially become the BOSS and, in fact, must become the BOSS to transmit data or send a request for data to another node. Under normal operation, there is always a node that is the BOSS at any given time. One of the tasks that a BOSS node performs is to select another node to act as the next BOSS. Thus, in contrast to various other types of busses that have fixed logic that makes the arbitration decisions, each current BOSS node makes the arbitration decision, then grants ownership of the bus to the new BOSS node.
The IEEE 1394b proposal uses a “dual phase” pipelined arbitration scheme. In this arbitration scheme, there are two phases: an “odd” phase and an “even” phase. The bus is in either the odd phase or the even phase at any one point in time. Arbitration decisions are made based on the current state of the bus and the types of arbitration requests being received by the BOSS node. Each node is aware of the current phase of the bus and issues requests to be the BOSS based on the current phase. Once all of the current requests related to the current phase have been granted and completed, the bus phase switched to the opposite phase. Switching the phase of the bus is accomplished by the BOSS issuing an arbitration reset message.
The types of requests that the nodes can issue, in order of arbitration priority from highest priority to lowest priority, include:
1. Cycle_start_req_a request to be BOSS so that the period and cycle start packet can be sent
2. Border_High_a request to be BOSS so that the gap timing of an attached 1394a bus can be preserved
3. Next_odd_a request to be a BOSS when the bus, currently in the even phase, switches to the odd phase; if the bus is currently in the odd phase, then the priority level of Next_odd becomes 5 and the level of Next_even becomes 3
4. Current_request to be a BOSS in the current phase of the bus
5. Next_even_a request to be a BOSS when the bus, currently in the odd phase, switches to the even phase
6. Border_Low_used to keep the beta side of a border node from advancing to a new fairness cycle
Thus, for example, a request from a node that issues a Cycle start req is given higher priority than a node that issues a Next_odd request.
With the arbitration scheme proposed above for the IEEE 1394b bus protocol, a “race” condition can occur that can degrade the performance of the bus. The following example, which focuses on nodes
1
,
2
,

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Dual phase arbitration on a bus does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Dual phase arbitration on a bus, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Dual phase arbitration on a bus will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3016774

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.