US4788640A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Priority logic system
Assignee: Intel Corp
•
Filing: 1986-01-17
•
Granted: 1988-11-29
•
Expires: 2006-01-17
Abstract
Abstract An improved priority logic scheme for setting priority values determining priority of interrupts. Multi-level priority allows for varied priority values for single word and multiple-word block segment transfers. Registers allow for programmable priority values which can modify priority values during operation. Simplicity of the invention provides for priority circuitry which does not depend on clock cycles. Flexiblity of the circuitry allows for additional devices to be implemented within the scheme. The invention is described as developed in a single semiconductor chip with other processors to provide a single graphics chip capability.
Inventors
- 👤 Richard B. Hansen
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 21:39
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/20; G06F13/32; G06F13/34; G06F13/16; G06F13/18
Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
357 words
In a data processing system, a priority logic apparatus for determining a priority order of accessing a memory, comprising: a plurality of memory request lines coupled to a plurality of memory accessing devices for receiving memory request signals from those said memory accessing devices which require access of said memory; a plurality of request acknowledge lines coupled to said plurality of memory accessing devices for providing a request acknowledge signal to a corresponding memory accessing device selected; a first set of registers for storing a first set of priority values which are selected for a single word transfer, each of said memory accessing devices having been assigned at least one of said first set of registers to store one of said first set of priority values corresponding to it; a second set of registers for storing a second set of priority values which are selected for a multiple-word block segment transfer, each of said memory accessing devices capable of said multiple-word block segment transfer having been assigned at least one of said second set of registers to store one of said second set of priority values corresponding to it; circuit means coupled to said memory request lines, said acknowledge lines, and said first and second set of registers for comparing priority values assigned to those said memory accessing devices initiating said memory request signals, such that for each requesting memory accessing device a first priority value is selected if a request is for said single word transfer and a second priority value is selected if said request is for said multiple-word transfer; said circuit means for selecting a highest priority value from comparison of said selected first and second priority values and generating a request acknowledge signal to a memory accessing device corresponding to said highest priority value selected, which request acknowledge signal controls access of memory by said selected memory accessing device; wherein said single word transfer is achieved when said memory accessing device requesting said single word transfer achieves highest priority, and said multipleword block segment transfer is achieved as long as said memory accessing device requesting said multiple-word block segment transfer retains highest priority.
Claim 2
Dependent Claim
357 words
In a data processing system, a priority logic apparatus for determining a priority order of accessing a memory, comprising: a plurality of memory request lines coupled to a plurality of memory accessing devices for receiving memory request signals from those said memory accessing devices which require access of said memory; a plurality of request acknowledge lines coupled to said plurality of memory accessing devices for providing a request acknowledge signal to a corresponding memory accessing device selected; a first set of registers for storing a first set of priority values which are selected for a single word transfer, each of said memory accessing devices having been assigned at least one of said first set of registers to store one of said first set of priority values corresponding to it; a second set of registers for storing a second set of priority values which are selected for a multiple-word block segment transfer, each of said memory accessing devices capable of said multiple-word block segment transfer having been assigned at least one of said second set of registers to store one of said second set of priority values corresponding to it; circuit means coupled to said memory request lines, said acknowledge lines, and said first and second set of registers for comparing priority values assigned to those said memory accessing devices initiating said memory request signals, such that for each requesting memory accessing device a first priority value is selected if a request is for said single word transfer and a second priority value is selected if said request is for said multiple-word transfer; said circuit means for selecting a highest priority value from comparison of said selected first and second priority values and generating a request acknowledge signal to a memory accessing device corresponding to said highest priority value selected, which request acknowledge signal controls access of memory by said selected memory accessing device; wherein said single word transfer is achieved when said memory accessing device requesting said single word transfer achieves highest priority, and said multipleword block segment transfer is achieved as long as said memory accessing device requesting said multiple-word block segment transfer retains highest priority.
Claim 3
Dependent Claim
31 words
The apparatus as defined in claim 1, wherein said circuit means further includes a detection means for detecting a request for said single word transfer and said multiple-word block segment transfer.
Claim 4
Dependent Claim
17 words
The apparatus as defined in claim 2, wherein said first and second set of registers are programmable.
Claim 5
Dependent Claim
36 words
The apparatus as defined in claim 3, wherein said circuit means further includes switching means to select between said first set of registers and said second set of registers depending on type of transfer being requested.
Claim 6
Dependent Claim
40 words
The apparatus as defined in claim 4, wherein each of said first and second set of priority values are represented by three bits and said highest priority value is determined as a highest binary value represented by said three bits.
Claim 7
Dependent Claim
359 words
In a data processing system, a priority logic apparatus for determining a priority order of accessing a memory by a plurality of memory accessing devices, comprising: a plurality of memory request lines, each coupled to its corresponding memory accessing device for receiving a memory request signal from its corresponding memory accessing device; a plurality of request acknowledge lines, each coupled to its corresponding memory accessing device for providing a request acknowledge signal to its corresponding memory accessing device; a first set of registers for storing priority values, wherein each of said memory accessing devices is assigned one of said first set of registers for storing one of said priority values; a second set of registers for storing said priority values, wherein memory accessing devices performing multipleword block segment transfers are each assigned one of said second set of registers for storing one of said priority values; switching means coupled to select between said first and second registers associated with said memory accessing devices performing block segment transfers; circuit means coupled to said memory request lines, said acknowledge lines, said first and second set of registers and said switching means, said circuit means for: (a) determining the a presence of said memory request signal when present on each of said memory request lines; (b) determining if each said memory request signal is a request for said block segment transfers; (c) causing said switching means to select said first set of registers as a default register for said corresponding memory accessing device, but to select said second set registers if said request is for said block segment transfers; (d) comparing priority values stored in selected registers for each of said memory request lines having said memory request signal present; (e) selecting a highest priority value from said comparison of said priority values stored in a selected registers; (f) identifying which memory accessing device is associated with said highest priority value selected; and (g) generating an acknowledge signal on a respective request acknowledge line of a respective memory accessing device associated with said highest priority value; wherein a second priority value is assigned during block segment transfers for said memory accessing devices.
Claim 8
Dependent Claim
359 words
In a data processing system, a priority logic apparatus for determining a priority order of accessing a memory by a plurality of memory accessing devices, comprising: a plurality of memory request lines, each coupled to its corresponding memory accessing device for receiving a memory request signal from its corresponding memory accessing device; a plurality of request acknowledge lines, each coupled to its corresponding memory accessing device for providing a request acknowledge signal to its corresponding memory accessing device; a first set of registers for storing priority values, wherein each of said memory accessing devices is assigned one of said first set of registers for storing one of said priority values; a second set of registers for storing said priority values, wherein memory accessing devices performing multipleword block segment transfers are each assigned one of said second set of registers for storing one of said priority values; switching means coupled to select between said first and second registers associated with said memory accessing devices performing block segment transfers; circuit means coupled to said memory request lines, said acknowledge lines, said first and second set of registers and said switching means, said circuit means for: (a) determining the a presence of said memory request signal when present on each of said memory request lines; (b) determining if each said memory request signal is a request for said block segment transfers; (c) causing said switching means to select said first set of registers as a default register for said corresponding memory accessing device, but to select said second set registers if said request is for said block segment transfers; (d) comparing priority values stored in selected registers for each of said memory request lines having said memory request signal present; (e) selecting a highest priority value from said comparison of said priority values stored in a selected registers; (f) identifying which memory accessing device is associated with said highest priority value selected; and (g) generating an acknowledge signal on a respective request acknowledge line of a respective memory accessing device associated with said highest priority value; wherein a second priority value is assigned during block segment transfers for said memory accessing devices.
Claim 9
Dependent Claim
34 words
The apparatus as defined in claim 6, wherein said first set of registers is selected during a single word transfer and said second set of registers is selected during said multiple-word block segment transfers.
Claim 10
Dependent Claim
24 words
The apparatus as defined in claim 7, wherein said first and second set of registers are programmable such that priority values can be changed.
Claim 11
Dependent Claim
44 words
The apparatus as defined in claim 8, wherein said circuit means further includes a positional priority circuit for selecting a single memory accessing device when said comparison of said priority values results in more than one memory accessing device having said highest priority value.
Claim 12
Dependent Claim
19 words
The apparatus as defined in claim 9, wherein request acknowledge signals are not generated during a memory refresh cycle.
Claim 13
Dependent Claim
14 words
The apparatus as defined in claim 10 is integrated within a single semiconductor device.
Claim 14
Dependent Claim
384 words
In a semiconductor integrated circuit (IC) used in a computerized system, said IC coupled to a memory, wherein a priority logic circuit within said IC is for determining a priority order of accessing said memory by processors coupled to said memory comprises: a plurality of memory request lines for providing memory request signals, a corresponding memory request line being coupled to each said processor and each processor generating its request signal when memory access is required; a plurality of request acknowledge lines for providing request acknowledge signals, a corresponding request acknowledge line being coupled to each said processor and each said processor receiving its request acknowledge signal when memory access is granted; a plurality of registers for storing a first and second set of priority values, wherein said first set of priority values are stored as most significant bits and said second set of priority values are stored as lower significant bits; each said processor having its associated register for storing priority values, such that each said processor has its first priority value which is used as its default priority, but its second priority value is used only when multiple-word block segment data transfer is required; a plurality of multiplexers, one coupled to each of said registers for selecting between said first priority value and said second priority value for each of said processors; a state logic circuit coupled to said memory request lines, said request acknowledge lines, said registers and said multiplexers, said state logic circuit for: (a) determining a presence of said memory request signals on each of said memory request lines when present; (b) determining if each request is an initial request from its respective processor and if so, selecting said first priority value from its processor's associated register, but if not an initial request, interpreting such a continuous request as a block transfer request and selecting said second priority value from its associated register; (c) comparing each selected first and second priority values of each said memory request lines having said memory request signals present; (d) selecting a highest priority value from said comparison of selected first and second priority values; (e) generating a request acknowledge signal on a respective request acknowledge line of a respective processor winning priority; wherein a second priority value is assigned during block segment transfers.
Claim 15
Dependent Claim
384 words
In a semiconductor integrated circuit (IC) used in a computerized system, said IC coupled to a memory, wherein a priority logic circuit within said IC is for determining a priority order of accessing said memory by processors coupled to said memory comprises: a plurality of memory request lines for providing memory request signals, a corresponding memory request line being coupled to each said processor and each processor generating its request signal when memory access is required; a plurality of request acknowledge lines for providing request acknowledge signals, a corresponding request acknowledge line being coupled to each said processor and each said processor receiving its request acknowledge signal when memory access is granted; a plurality of registers for storing a first and second set of priority values, wherein said first set of priority values are stored as most significant bits and said second set of priority values are stored as lower significant bits; each said processor having its associated register for storing priority values, such that each said processor has its first priority value which is used as its default priority, but its second priority value is used only when multiple-word block segment data transfer is required; a plurality of multiplexers, one coupled to each of said registers for selecting between said first priority value and said second priority value for each of said processors; a state logic circuit coupled to said memory request lines, said request acknowledge lines, said registers and said multiplexers, said state logic circuit for: (a) determining a presence of said memory request signals on each of said memory request lines when present; (b) determining if each request is an initial request from its respective processor and if so, selecting said first priority value from its processor's associated register, but if not an initial request, interpreting such a continuous request as a block transfer request and selecting said second priority value from its associated register; (c) comparing each selected first and second priority values of each said memory request lines having said memory request signals present; (d) selecting a highest priority value from said comparison of selected first and second priority values; (e) generating a request acknowledge signal on a respective request acknowledge line of a respective processor winning priority; wherein a second priority value is assigned during block segment transfers.
Claim 16
Dependent Claim
24 words
The priority logic circuit as defined in claim 12, wherein said state logic circuit further includes delay means for providing said comparison in (c).
Claim 17
Dependent Claim
38 words
The priority logic circuit as defined in claim 13, wherein each of said memory request lines uses its first priority value during a single word transfer and uses its second priority value during a multiple-word block segment transfer.
Claim 18
Dependent Claim
14 words
The priority logic circuit as defined in claim 14, wherein said registers are programmable.
Claim 19
Dependent Claim
36 words
The priority logic circuit as defined in claim 15, further includes a positional priority circuit for selecting a single processor when said comparison in (c) results in more than one processor having said highest priority value.
Claim 20
Dependent Claim
22 words
The priority logic circuit as defined in claim 16, wherein said request acknowledge signals are not generated during a memory refresh cycle.
Claim 21
Dependent Claim
30 words
The priority logic circuit as defined in claim 17, wherein said first priority values are represented by three bits and said second priority values are also represented by three bits.
Claim 22
Dependent Claim
30 words
The priority logic circuit as defined in claims 12 or 18, wherein said processors comprise a graphics processor and a display processor for generating video images on a viewing screen.
Claim 23
Dependent Claim
31 words
The priority logic circuit as defined in claim 19, wherein each word of said single word transfer and each word of said multiple word block segment transfer is a 32-bit word.
Claim 24
Dependent Claim
27 words
The priority logic circuit as defined in claim 20, wherein said first set of priority values are higher in priority than said second set of priority values.
References Cited (Backward Citations)
US3444525A
Cited
US3706974A
Cited
US3905025A
Cited
US3925766A
Cited
US3921150A
Cited
US4271466A
Cited
US4006466A
Cited
US4400771A
Cited
US4035780A
Cited
US4099234A
Cited
US4091455A
Cited
US4126893A
Cited
US4558412A
Cited
US4323967A
Cited
US4385350A
Cited
US4454575A
Cited
US4488218A
Cited
EP0097499A2
Cited
US4493036A
Cited
US4644467A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1991-11-29 | 1992-05-30 | 1992-11-29 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1995-11-29 | 1996-05-30 | 1996-11-29 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1999-11-29 | 2000-05-30 | 2000-11-29 | $7700.00 | Window Closed / Lapsed |