Patent US5748515A successfully refreshed from Google Patents.
US5748515A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Data processing condition code flags
Assignee: ARM Ltd
•
Filing: 1996-10-08
•
Granted: 1998-05-05
•
Expires: 2016-10-08
Abstract
Abstract A data processing system incorporating an arithmetic logic unit 20, 22, 24 having an N-bit data pathway and supporting parallel operation program instruction words in which to independent arithmetic operations are carried out in parallel by the arithmetic logic unit upon (N/2)-bit input operand words. Two sets of condition code flags N, Z, C V, SN, SZ, SC, SV responsive to the separate arithmetic logic operations are provided.
Inventors
- 👤 Simon James Glass
- 👤 David Vivian Jaggar
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-08 15:57
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30003; G06F9/30007; G06F9/3001; G06F9/30014; G06F9/30036; G06F9/30038; G06F9/30094; G06F9/30098; G06F9/30105; G06F9/30109; G06F9/30145; G06F9/3016; G06F9/30167; G06F9/38; G06F9/3836; G06F9/3842; G06F9/3885; G06F9/3893
Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
246 words
Apparatus for data processing, said apparatus comprising: (i) a plurality of registers for storing data words to be manipulated, each of said registers having at least an N-bit capacity; and (ii) an arithmetic logic unit having an N-bit datapath and responsive program instruction words to perform arithmetic logic operations specified by said program instruction words; wherein (iii) said arithmetic logic unit is responsive to at least one parallel operation program instruction word that separately performs a first arithmetic logic operation upon a first (N/2)-bit input operand data word and a second arithmetic logic operation upon a second (N/2)-bit input operand data word; and (iv) said arithmetic logic unit sets a first set of condition code flags in dependence upon said first arithmetic logic operation and sets a second set of condition code flags in dependence upon said second arithmetic logic operation, wherein said arithmetic logic unit is responsive to a conditional select instruction that moves one of a first (N/2)-bit input operand data word stored in a first source register and a first (N/2)-bit input operand data word stored in a second source register to a destination register of said plurality of registers in dependence upon said first set of condition flags and moves one of a second (N/2)-bit input operand data word stored in a first source register and a second (N/2)-bit input operand data word stored in a second source register to said destination register in dependence upon said second set of condition flags.
Claim 2
Dependent Claim
246 words
Apparatus for data processing, said apparatus comprising: (i) a plurality of registers for storing data words to be manipulated, each of said registers having at least an N-bit capacity; and (ii) an arithmetic logic unit having an N-bit datapath and responsive program instruction words to perform arithmetic logic operations specified by said program instruction words; wherein (iii) said arithmetic logic unit is responsive to at least one parallel operation program instruction word that separately performs a first arithmetic logic operation upon a first (N/2)-bit input operand data word and a second arithmetic logic operation upon a second (N/2)-bit input operand data word; and (iv) said arithmetic logic unit sets a first set of condition code flags in dependence upon said first arithmetic logic operation and sets a second set of condition code flags in dependence upon said second arithmetic logic operation, wherein said arithmetic logic unit is responsive to a conditional select instruction that moves one of a first (N/2)-bit input operand data word stored in a first source register and a first (N/2)-bit input operand data word stored in a second source register to a destination register of said plurality of registers in dependence upon said first set of condition flags and moves one of a second (N/2)-bit input operand data word stored in a first source register and a second (N/2)-bit input operand data word stored in a second source register to said destination register in dependence upon said second set of condition flags.
Claim 3
Dependent Claim
57 words
Apparatus as claimed in claim 1, wherein said parallel operation program instruction word specifies a source register from among said plurality of registers with said first (N/2)-bit input operand being stored in high order bit positions of said source register and said second (N/2)-bit input operand being stored in low order bit positions of said source register.
Claim 4
Dependent Claim
58 words
Apparatus as claimed in claim 1, wherein said arithmetic logic unit has a signal path that functions as a carry chain between bit positions in arithmetic logic operations and, when executing a parallel operation program instruction word said signal path is broken between said first (N/2)-bit input operand data word and said second (N/2)-bit input operand data word.
Claim 5
Dependent Claim
102 words
Apparatus as claimed in claim 1, wherein said parallel operation program instruction word performs the arithmetic logic operation of one of: (i) a parallel add in which two parallel (N/2)-bit additions are performed; (ii) a parallel subtract in which two parallel (N/2)-bit subtractions are performed; (iii) a parallel shift in which two parallel (N/2)-bit shift operations are performed; (iv) a parallel add/subtract in which an (N/2)-bit add and an (N/2)-bit subtraction are performed in parallel; (v) a parallel min/max in which two parallel (N/2)-bit min/max operations are performed; and (vi) a parallel scale in which two parallel (N/2)-bit scale operation are performed.
Claim 6
Dependent Claim
57 words
Apparatus as claimed in claim 1, wherein said first set of condition code flags and said second set of condition code flags include at least one of flags indicating that an immediately preceding operation: (i) produced a result that was zero; (ii) produced a result that was negative; (iii) produced an overflow; and (iv) produced a carry.
Claim 7
Dependent Claim
26 words
Apparatus as claimed in claim 1, wherein arithmetic logic unit performs one of a convolution operation, a filter operation, a correlation operation and a transform operation.
Claim 8
Independent Claim
246 words
A method of processing data, said method comprising the steps of: (i) storing data words to be manipulated in a plurality of registers, each of said registers having at least an N-bit capacity; and (ii) in response to program instruction words, performing, with an arithmetic logic unit having an N-bit datapath, arithmetic logic operations specified by said program instruction words; wherein (iii) in response to at least one parallel operation program instruction word separately performing a first arithmetic logic operation upon a first (N/2)-bit input operand data word and a second arithmetic logic operation upon a second (N/2)-bit input operand data word; (iv) setting a first set of condition code flags in dependence upon said first arithmetic logic operation; and (v) setting a second set of condition code flags in dependence upon said second arithmetic logic operation wherein said arithmetic logic unit is responsive to a conditional select instruction that moves one of said first N/2)-bit input operand data words stored in a first source register and one of said first (N/2)-bit input operand data word stored in a second source register to a destination register of said plurality of registers in dependence upon said first set of condition flags and moves one of said second (N/2)-bit input operand data words stored in a first source register and one of said second (N/2)-bit input operand data words stored in a second source register to said destination register in dependence upon said second set of condition flags.
Claim 9
Independent Claim
246 words
A method of processing data, said method comprising the steps of: (i) storing data words to be manipulated in a plurality of registers, each of said registers having at least an N-bit capacity; and (ii) in response to program instruction words, performing, with an arithmetic logic unit having an N-bit datapath, arithmetic logic operations specified by said program instruction words; wherein (iii) in response to at least one parallel operation program instruction word separately performing a first arithmetic logic operation upon a first (N/2)-bit input operand data word and a second arithmetic logic operation upon a second (N/2)-bit input operand data word; (iv) setting a first set of condition code flags in dependence upon said first arithmetic logic operation; and (v) setting a second set of condition code flags in dependence upon said second arithmetic logic operation wherein said arithmetic logic unit is responsive to a conditional select instruction that moves one of said first N/2)-bit input operand data words stored in a first source register and one of said first (N/2)-bit input operand data word stored in a second source register to a destination register of said plurality of registers in dependence upon said first set of condition flags and moves one of said second (N/2)-bit input operand data words stored in a first source register and one of said second (N/2)-bit input operand data words stored in a second source register to said destination register in dependence upon said second set of condition flags.
References Cited (Backward Citations)
US4707800A
Cited
US4768160A
Cited
US5189636A
Cited
GB2224376A
Cited
EP0395348A2
Cited
US5479365A
Cited
US5327369A
Cited
US5390135A
Cited
US5640578A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-05-04 | 2001-11-03 | 2002-05-05 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-05-04 | 2005-11-03 | 2006-05-05 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-05-04 | 2009-11-03 | 2010-05-05 | $7700.00 | Window Closed / Lapsed |