Patent EP0299264A2 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0299264A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

A byte queing/dequeuing apparatus for handling variable-length data words/instructions in a single clock cycle

Assignee: Advanced Micro Devices Inc
•
Filing: 1988-06-27
•
Granted: —
•
Expires: 2008-06-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A byte queueing/dequeueing apparatus for handling variable-length data words/instructions in a single clock cycle is described, comprising four FIFO's, an input rotator and an output rotator. Variable-length data words/instructions are stored in the FIFO's after being transferred through the input rotator and rotated by a number of places, depending upon the number of bytes previously queued in the FIFO's. Similarly, the bytes transferred through the output rotator are rotated by a number of places, depending upon the number of bytes previously dequeued. Control signals selectively enable the FIFO's and point to the rows having the next available storage space for queuing and the next available byte for dequeuing.

Inventors

  • 👤 Timothy A. Olson
  • 👤 Dhaval Ajmera

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-27 10:00
CPC Classifications
G; G06; G06F; G06F5/00; G06F5/06; G06F5/16

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 329 words
A byte queuing/dequeuing apparatus for handling variable-length data words/instructions in a single clock cycle comprising: an input data bus; means for placing successive sets of a predetermined number of bytes of data on said input data bus; an output data bus; a plurality of FIFO's equal in number to said predetermined number of bytes, each of said FIFO's being capable of handling one of said predetermined number of bytes at any one time; an input rotator coupled between said input data bus and said FIFO's; an output rotator coupled between said FIFO's and said output data bus; means responsive to the number of said bytes previously queued in said FIFO's for generating a control signal to said input rotator for rotating the bytes received by said input rotator from said input data bus according to the formula X MOD A = y where X = number of bytes previously queued in said FIFO's A = number of FIFO's in said apparatus y = number of places the bytes in said input rotator are rotated in a first direction before being stored in said FIFO's means responsive to a control signal corresponding to the number of bytes currently being queued for enabling the next available FIFO's as required for storing said predetermined number of bytes; means responsive to the number of said bytes previously dequeued from said FIFO's for generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD A = Z where W = number of bytes previously dequeued from said FIFO's A = number of FIFO's in said apparatus Z = number of places the bytes in said output rotator are rotated in a second direction before being placed on said output data bus; and means responsive to a control signal corresponding to the number of bytes currently being dequeued for pointing to the next FIFO's having bytes available to be dequeued.
Claim 2
Dependent Claim 329 words
A byte queuing/dequeuing apparatus for handling variable-length data words/instructions in a single clock cycle comprising: an input data bus; means for placing successive sets of a predetermined number of bytes of data on said input data bus; an output data bus; a plurality of FIFO's equal in number to said predetermined number of bytes, each of said FIFO's being capable of handling one of said predetermined number of bytes at any one time; an input rotator coupled between said input data bus and said FIFO's; an output rotator coupled between said FIFO's and said output data bus; means responsive to the number of said bytes previously queued in said FIFO's for generating a control signal to said input rotator for rotating the bytes received by said input rotator from said input data bus according to the formula X MOD A = y where X = number of bytes previously queued in said FIFO's A = number of FIFO's in said apparatus y = number of places the bytes in said input rotator are rotated in a first direction before being stored in said FIFO's means responsive to a control signal corresponding to the number of bytes currently being queued for enabling the next available FIFO's as required for storing said predetermined number of bytes; means responsive to the number of said bytes previously dequeued from said FIFO's for generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD A = Z where W = number of bytes previously dequeued from said FIFO's A = number of FIFO's in said apparatus Z = number of places the bytes in said output rotator are rotated in a second direction before being placed on said output data bus; and means responsive to a control signal corresponding to the number of bytes currently being dequeued for pointing to the next FIFO's having bytes available to be dequeued.
Claim 3
Dependent Claim 34 words
An apparatus according to claim 1 wherein said input and output data buses are each capable of handling four bytes of data at one time and said predetermined number of bytes comprises four bytes.
Claim 4
Dependent Claim 22 words
An apparatus according to claim 1 wherein said first direction is to the left and said second direction is to the right.
Claim 5
Dependent Claim 299 words
A byte queuing/dequeuing apparatus for handling variable-length data words/instructions comprising: an input data bus; means for placing successive sets of four bytes of data on said input data bus; an output data bus; a plurality of four FIFO's, each of said FIFO's being capable of handling one of said bytes at any one time; an input rotator coupled between said input data bus and said FIFO's; an output rotator coupled between said FIFO's and said output data bus; means responsive to the number of said bytes previously queued in said FIFO's for generating a control signal to said input rotator for rotating the bytes received by said input rotator from said input data bus according to the formula X MOD 4 = y where X = number of bytes previously queued in said FIFO's y = number of places the bytes in said input rotator are rotated to the left before being stored in said FIFO's; means responsive to a control signal corresponding to the number of bytes currently being queued for enabling the next available FIFO's as required for storing up to four bytes of data on said input data bus; means responsive to the number of said bytes previously dequeued from said FIFO's for generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD 4 = Z where W = number of bytes previously dequeued from said FIFO's Z = number of places the bytes in said output rotator are rotated to the right before being placed on said output data bus; and means responsive to a control signal corresponding to the number of bytes currently being dequeued for pointing to the next four FIFO's having bytes available to be dequeued.
Claim 6
Dependent Claim 299 words
A byte queuing/dequeuing apparatus for handling variable-length data words/instructions comprising: an input data bus; means for placing successive sets of four bytes of data on said input data bus; an output data bus; a plurality of four FIFO's, each of said FIFO's being capable of handling one of said bytes at any one time; an input rotator coupled between said input data bus and said FIFO's; an output rotator coupled between said FIFO's and said output data bus; means responsive to the number of said bytes previously queued in said FIFO's for generating a control signal to said input rotator for rotating the bytes received by said input rotator from said input data bus according to the formula X MOD 4 = y where X = number of bytes previously queued in said FIFO's y = number of places the bytes in said input rotator are rotated to the left before being stored in said FIFO's; means responsive to a control signal corresponding to the number of bytes currently being queued for enabling the next available FIFO's as required for storing up to four bytes of data on said input data bus; means responsive to the number of said bytes previously dequeued from said FIFO's for generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD 4 = Z where W = number of bytes previously dequeued from said FIFO's Z = number of places the bytes in said output rotator are rotated to the right before being placed on said output data bus; and means responsive to a control signal corresponding to the number of bytes currently being dequeued for pointing to the next four FIFO's having bytes available to be dequeued.
Claim 7
Independent Claim 274 words
A method of handling variable-length data words/instructions in an apparatus having an input data bus, an output data bus, an input rotator, an output rotator and a plurality of FIFO's, comprising the steps of: placing successive sets of a predetermined number of bytes of data on said input data bus; transferring said predetermined number of bytes from said input data bus to said input rotator for storage in said FIFO's; rotating the bytes received by said input rotator from said input data bus according to the formula X MOD A = y where X = number of bytes previously queued in said FIFO's A = number of FIFO's in said apparatus y = number of places the bytes in said input rotator are rotated in a first direction before being stored in said FIFO's generating a control signal corresponding to the number of bytes currently being queued; enabling the next available FIFO's as required for storing said bytes currently being queued; transferring said predetermined number of bytes from said FIFO's to said output rotator; generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD A = Z where W = number of bytes previously dequeued from said FIFO's A = number of FIFO's in said apparatus Z = number of places the bytes in said output rotator are rotated in a second direction before being placed on said output data bus; generating a control signal corresponding to the number of bytes currently being dequeued; and pointing to the FIFO's next in order having bytes available to be dequeued.
Claim 8
Independent Claim 274 words
A method of handling variable-length data words/instructions in an apparatus having an input data bus, an output data bus, an input rotator, an output rotator and a plurality of FIFO's, comprising the steps of: placing successive sets of a predetermined number of bytes of data on said input data bus; transferring said predetermined number of bytes from said input data bus to said input rotator for storage in said FIFO's; rotating the bytes received by said input rotator from said input data bus according to the formula X MOD A = y where X = number of bytes previously queued in said FIFO's A = number of FIFO's in said apparatus y = number of places the bytes in said input rotator are rotated in a first direction before being stored in said FIFO's generating a control signal corresponding to the number of bytes currently being queued; enabling the next available FIFO's as required for storing said bytes currently being queued; transferring said predetermined number of bytes from said FIFO's to said output rotator; generating a control signal to said output rotator for rotating the bytes received by said output rotator from said FIFO's according to the formula W MOD A = Z where W = number of bytes previously dequeued from said FIFO's A = number of FIFO's in said apparatus Z = number of places the bytes in said output rotator are rotated in a second direction before being placed on said output data bus; generating a control signal corresponding to the number of bytes currently being dequeued; and pointing to the FIFO's next in order having bytes available to be dequeued.
Claim 9
Dependent Claim 34 words
A method according to claim 5 wherein said input and output data buses are each capable of handling four bytes of data at one time and said predetermined number of bytes comprises four bytes.
Claim 10
Dependent Claim 22 words
A method according to claim 5 wherein said first direction is to the left and said second direction is to the right.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag