Claims Analysis
Total Claims: 7
Claim 1
Independent Claim
186 words
Non-locking queueing mechanism for transferring information from a sending unit (100) to a receiving unit (110), through a queueing means (120) containing element areas in which said sending unit enqueues information elements and from which said receiving unit dequeues information elements, said element areas being located in a storage (640) characterized in that it comprises a first pointer register (640) for logging a first pointer (D) identifying the element area in said queueing means (120) where the last dequeued information element, if any, was located a second pointer register (640) for logging a second pointer (E) identifying the element area in said queueing means where the last enqueued information element, if any, was located, a first control block (610) activated by said sending unit (100) to enqueue said information element into said queueing means (120) and for updating said second pointer a second control block (620) activated by said receiving means to dequeue said information element from said queueing means (120) and for updating said first pointer whereby said sending (100) and receiving (110) means can work independently without interlock or any serialism between said units.
Claim 2
Dependent Claim
186 words
Non-locking queueing mechanism for transferring information from a sending unit (100) to a receiving unit (110), through a queueing means (120) containing element areas in which said sending unit enqueues information elements and from which said receiving unit dequeues information elements, said element areas being located in a storage (640) characterized in that it comprises a first pointer register (640) for logging a first pointer (D) identifying the element area in said queueing means (120) where the last dequeued information element, if any, was located a second pointer register (640) for logging a second pointer (E) identifying the element area in said queueing means where the last enqueued information element, if any, was located, a first control block (610) activated by said sending unit (100) to enqueue said information element into said queueing means (120) and for updating said second pointer a second control block (620) activated by said receiving means to dequeue said information element from said queueing means (120) and for updating said first pointer whereby said sending (100) and receiving (110) means can work independently without interlock or any serialism between said units.
Claim 3
Dependent Claim
369 words
A mechanism according to Claim 1 characterized in that said first control block (610) further comprises: - a first incrementing means (734) receiving said second pointer register contents (E) and returning, when activated, a value identifying, in said queue means (120), the element area which follows that identified by said second pointer (E). - a first comparator (730) for comparing the value returned by said first incremented means (734) with said first pointer D. - means (735, 741) for logging the value returned by said first incrementing means into said second pointer register (E) said first control block (610) performs the following steps: - comparing the value returned by said first incrementing means (734) with said first pointer (D) by said first comparator (730) - supplying to said sending unit (100) a signal indicating that said queueing means is full when said first comparator detects an equality when said first comparator detects an unequality: - placing the information element supplied by said sending unit (100) into said queueing means (120) in the element area identified by the value returned by said first incrementing means (734) - logging said incremented returned value into said second pointer register said second control block (620) further comprises - a second comparator (930) for comparing said first and second pointer values - a second incrementing means (934) receiving said first pointer register contents (D) and returning, when activated, a value identifying, in said queueing means (120), the element which follows that identified by said first pointer (D) - means (935, 941) for logging the value returned by said second incrementing means (934) into said first pointer register (D) said second control block (620) performs the step of: - comparing said first and second pointer by said second comparator (930) - supplying a signal to said receiving unit (110) indicating that the queueing means is empty when said second comparator (930) detects an equality when said second comparator (930) detects an unequality: - activating said second incrementing means (934) - providing the information element identified by the value returned by said second incrementing means to said receiving unit (110) - logging the value returned by said second incrementing means into said first pointer register (D).
Claim 4
Dependent Claim
48 words
Mechanism according to Claim 2 characterized in that said first and second control blocks (610) and (620) associated with said storage (650) manage multiple queues between said sending unit (100) and said receiving unit (110) by providing as many pairs of first/second pointers (E,D) as there are queues.
Claim 5
Dependent Claim
85 words
Mechanism according to Claim 2 characterized in that said first and second control block (610) and (620) associated with said storage (650) manages a first (A-B) and second (B-A) queue between said two units (100) (110) providing a full duplex path between said two units (100) (110), said first control block (610) makes enqueues from said first queue (A-B) and dequeues from said second queue (B-A) said second control block (620) makes dequeues from said first queue (A-B) and enqueues from said second queue (B-A).
Claim 6
Dependent Claim
81 words
Mechanism according to Claims 3 or 4 characterized in that said storage (640) is a multiple port memory having at least a first communication bus (650) and a second communication bus (660) said first control block (610) enqueues said information element into said queueing (120) by addressing said storage (640) through said first communication bus (650) said second control block (620) dequeues said information element into said queueing means (120) by addressing said storage (640) through said second communication bus (660)
Claim 7
Dependent Claim
32 words
Mechanism according to any one of Claims 1 to 5 characterized in that it comprises a hysterisis mechanism for avoiding too much swapping of said queueing means from full to non-full states.