← Back to Patent Explorer
US5774745A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for writing and reading entries in an event status queue of a host memory

Assignee: Cirrus Logic Inc
•
Filing: 1995-03-31
•
Granted: 1998-06-30
•
Expires: 2015-03-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system that has a bus is provided with a host memory coupled to the bus, this host memory having an event status queue in which events are stored. A peripheral controller is coupled to the bus and writes a termination marker in a first block in the memory and events occurring in the computer system in blocks in the event status queue in a first direction beginning with a block adjacent to the first block. A host processor is also coupled to the bus. The host processor reads the written events in a second direction opposite to the first direction beginning with a last block in which an event was written by the peripheral controller. The host processor terminates the reading of events when the first block in which the termination marker is reached. The use of a termination marker allows both the hardware of the peripheral controller and the software run by the host processor to operate in the event status queue at the same time, with no danger of running over each other.

Inventors

  • 👤 Peter Ecclesine

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 16:40
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/16; G06F13/1605; G06F13/1642

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 119 words
A method of writing and reading entries of events occurring in a computer system in an event status queue divided into blocks, the method comprising the steps of: identifying a block of the event status queue as a termination block; writing a first set of event entries in a first direction in the event status queue in blocks starting from a block that is adjacent to the termination block; reading the first set of event entries in the blocks of the event status queue in a second direction opposite to the first direction beginning with a previous location at which a termination block was written; and terminating the reading of the event entries when the termination block is reached.
Claim 2
Independent Claim 119 words
A method of writing and reading entries of events occurring in a computer system in an event status queue divided into blocks, the method comprising the steps of: identifying a block of the event status queue as a termination block; writing a first set of event entries in a first direction in the event status queue in blocks starting from a block that is adjacent to the termination block; reading the first set of event entries in the blocks of the event status queue in a second direction opposite to the first direction beginning with a previous location at which a termination block was written; and terminating the reading of the event entries when the termination block is reached.
Claim 3
Dependent Claim 44 words
The method of claim 1, further comprising writing a second set of event entries in the event status queue in the first direction, wherein a last one of the event entries in the second set of event entries is written in the termination block.
Claim 4
Dependent Claim 30 words
The method of claim 2, further comprising writing a termination marker in a first block in the second set of event entries that is written in the event status queue.
Claim 5
Dependent Claim 39 words
The method of claim 3, further comprising reading the second set of event entries in the second direction, with the first block that is read containing the last one of the event entries written in the event status queue.
Claim 6
Dependent Claim 129 words
A computer system comprising: a bus; a host memory coupled to the bus and having an event status queue in which events are stored; a peripheral controller coupled to the bus, the peripheral controller writing a termination marker in a first block in the memory and writing events in blocks in the event status queue in a first direction beginning with a block adjacent to the first block; a host processor coupled to the bus, the host processor reading written events in the event status queue in a second direction opposite to the first direction beginning with an oldest unread block in which an event was written by the peripheral controller and terminating the reading of events when the first block in which a termination marker exsists is reached.
Claim 7
Dependent Claim 129 words
A computer system comprising: a bus; a host memory coupled to the bus and having an event status queue in which events are stored; a peripheral controller coupled to the bus, the peripheral controller writing a termination marker in a first block in the memory and writing events in blocks in the event status queue in a first direction beginning with a block adjacent to the first block; a host processor coupled to the bus, the host processor reading written events in the event status queue in a second direction opposite to the first direction beginning with an oldest unread block in which an event was written by the peripheral controller and terminating the reading of events when the first block in which a termination marker exsists is reached.
Claim 8
Dependent Claim 16 words
The computer system of claim 5, wherein the bus is a peripheral component interconnect (PCI) bus.
Claim 9
Dependent Claim 29 words
The computer system of claim 6, wherein the host processor includes means for parsing the events that are read by the host processor and responding to the parsed events.
Claim 10
Dependent Claim 44 words
The computer system of claim 5, wherein a first one of the events written in the event status queue is a most recent event in the computer system, and a last one of the events written is an oldest event in the computer system.
Claim 11
Dependent Claim 58 words
The computer system of claim 8, wherein a first one of the events read from the event status queue is the last one of the events written in the event status queue, and a last one of the events read from the event status queue is the first one of the events written in the event status queue.
Claim 12
Dependent Claim 32 words
The computer system of claim 8, wherein the peripheral controller includes means for writing an event in a block which contains a previous termination marker to thereby overwrite the previous termination marker.
Claim 13
Dependent Claim 88 words
A computer system comprising: a bus; a host memory coupled to the bus and having a transmit queue in which command information regarding data is stored in the transmit queue; and a peripheral controller coupled to the bus, the peripheral controller assembling blocks of data according to the command information in the transmit queue and transmitting the assembled blocks of information over the bus to a specified destination; wherein the command information includes specific bits which indicate how the data is to be assembled by the peripheral controller.
Claim 14
Dependent Claim 88 words
A computer system comprising: a bus; a host memory coupled to the bus and having a transmit queue in which command information regarding data is stored in the transmit queue; and a peripheral controller coupled to the bus, the peripheral controller assembling blocks of data according to the command information in the transmit queue and transmitting the assembled blocks of information over the bus to a specified destination; wherein the command information includes specific bits which indicate how the data is to be assembled by the peripheral controller.
Claim 15
Dependent Claim 17 words
The computer system of claim 11, wherein data is to be assembled in a circular queue structure.
Claim 16
Dependent Claim 16 words
The computer system of claim 12, wherein data is to be assembled is a linked-list structure.
Claim 17
Dependent Claim 17 words
The computer system of claim 13, wherein data is to be assembled is a gathered data structure.
Claim 18
Dependent Claim 41 words
The computer system of claim 11, wherein the command information is encoded as three bits of a command structure stored in individual blocks in the event status queue, the transmit structures being formed from the blocks in the event status queue.
Claim 19
Dependent Claim 75 words
The computer system of claim 15, wherein one of the bits is one of (1) an end bit which indicates whether an end of data in a block represents an end of a frame, (2) a branch chain pointer bit which indicates whether the block contains a branch pointer to another block, and (3) an additional data pointer which indicates whether the block contains a data pointer to another block where additional data is located.
Claim 20
Dependent Claim 165 words
A memory for storing data written into the memory by a controller for access by software being executed by a host processor in a computer system, comprising: a data structure stored in said memory, said data structure including information regarding events occurring in the computer system, the data structure including: a plurality of blocks for containing the information, each block having a capacity to contain the information for a different one of the events wherein the blocks are addressable in an incrementing manner by the controller and by the software; a termination marker written by the controller in one of the blocks, with successive blocks containing the information for the events that are written by the controller in a first direction away from the block containing the termination marker, these successive blocks being accessed by the software in a second direction opposite to the first direction beginning with a previous location of a termination marker until the software detects a block containing the termination marker.
Claim 21
Dependent Claim 165 words
A memory for storing data written into the memory by a controller for access by software being executed by a host processor in a computer system, comprising: a data structure stored in said memory, said data structure including information regarding events occurring in the computer system, the data structure including: a plurality of blocks for containing the information, each block having a capacity to contain the information for a different one of the events wherein the blocks are addressable in an incrementing manner by the controller and by the software; a termination marker written by the controller in one of the blocks, with successive blocks containing the information for the events that are written by the controller in a first direction away from the block containing the termination marker, these successive blocks being accessed by the software in a second direction opposite to the first direction beginning with a previous location of a termination marker until the software detects a block containing the termination marker.
Claim 22
Dependent Claim 66 words
The memory of claim 17, wherein a second termination marker is contained in one of the blocks, and information regarding additional events are contained in the blocks written in the first direction until the software detects a block containing the first termination marker is reached, the block containing the first termination marker being overwritten by the controller with the information regarding one of the additional events.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-29 2001-12-29 2002-06-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-29 2005-12-29 2006-06-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-29 2009-12-29 2010-06-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag