Claims
- 1. A data processing apparatus comprising:
- an arithmetic logic unit having data inputs for a plurality of multibit digital signals representing corresponding inputs, said arithmetic logic unit divided into a plurality of equally sized independent sections, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections, and said arithmetic logic unit including a status detector generating a plurality of single bit status signals, each single bit status signal indicative of said digital resultant signal of a corresponding section of said arithmetic logic unit; and
- a flags register connected to said status detector having a number of bit storage locations greater than the number of sections of said arithmetic logic unit, said flags register rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said plurality of single bit status signals into places within said flags register vacated by said rotating.
- 2. The data processing apparatus of claim 1, wherein:
- said status detector generates said single bit status signals indicating whether respective digital resultant signals are zero.
- 3. The data processing apparatus of claim 1, wherein:
- said status detector generates said single bit status signals indicating whether said combination of inputs yielding respective digital resultant signals generates a carry from a most significant bit said corresponding section of said arithmetic logic unit.
- 4. The data processing apparatus of claim 1, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said plurality of data registers to said flags register.
- 5. The data processing apparatus of claim 1, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 6. A data processing apparatus comprising:
- an arithmetic logic unit having data inputs for a plurality of multibit digital signals representing corresponding inputs, said arithmetic logic unit divided into a plurality of equally sized independent sections, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections, and said arithmetic logic unit including a status detector generating a plurality of single bit status signals, each single bit status signal indicative of said digital resultant signal of a corresponding section of said arithmetic logic unit;
- a flags register receiving a rotation indication, said flags register having a number of bit storage locations greater than the number of sections of said arithmetic logic unit, said flags register
- rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said plurality of single bit status signals into places within said flags register vacated by said rotating if said rotation indication indicates rotation of said flags register, and
- storing said plurality of single bit status signals by overwriting prior bits in predetermined places within said flags register if said rotation indication indicates non-rotation of said flags register.
- 7. The data processing apparatus of claim 6, further comprising:
- a status register connected to said flags register for storing said rotation indication.
- 8. The data processing apparatus of claim 6, wherein:
- said flags register further receives a clearance indication, said flags register
- clearing all bits stored therein prior to storing said single bit status signals if said clearance indication indicates clearing said flags register, and
- not clearing all bits stored therein prior to storing said single bit status signals bits if said clearance indication indicates non-clearing said flags register.
- 9. The data processing apparatus of claim 6, wherein:
- said status detector generates said single bit status signals indicating whether respective digital resultant signals are zero.
- 10. The data processing apparatus of claim 6, wherein:
- said status detector generates said single bit status signals indicating whether said combination of inputs yielding respective digital resultant signals generates a carry from a most significant bit said corresponding section of said arithmetic logic unit.
- 11. The data processing apparatus of claim 6, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said data registers to said flags register.
- 12. The data processing apparatus of claim 6, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 13. A data processing apparatus comprising:
- a status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- an arithmetic logic unit connected to said status register having data inputs for a plurality of multibit digital signals representing corresponding inputs, said arithmetic logic unit having a maximum number of elementary sections into which it may be divided and divided into a plurality of equally sized independent sections corresponding to said size indicator, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections, and said arithmetic logic unit including a status detector generating a plurality of single bit zero signals equal in number to said plurality of sections corresponding to said size indicator, each single bit zero signal indicative of whether said digital resultant signal of a corresponding section of said arithmetic logic unit equals zero, said status detector having a zero detector for each of said elementary sections of said arithmetic logic unit, said status detector generating said zero signal for each section when said arithmetic logic unit is divided into less than said maximum number of sections by ANDing said zero signals for each elementary section included within that section;
- a flags register connected to said status register and said status detector having a number of bit storage locations greater than a greatest possible number of sections of said arithmetic logic unit, said flags register for storing said plurality of single bit zero signals equal in number to said size indicator stored in said status register.
- 14. The data processing apparatus of claim 13, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said data registers to said flags register.
- 15. The data processing apparatus of claim 13, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming
- said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 16. A data processing apparatus comprising:
- a status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- an arithmetic logic unit connected to said status register having first, second and third data inputs for respective first, second and third multibit digital signals representing corresponding inputs, said arithmetic logic unit divided into a number of equally sized independent sections corresponding to said size indicator, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections;
- a first data source supplying said first multibit digital signal to said arithmetic logic unit;
- a second data source supplying said second multibit digital signal to said arithmetic logic unit;
- a flags register storing therein a plurality of single bit status signals; and
- an expansion circuit connected to said status register and said flags register for supplying said third multibit signal to said arithmetic logic unit by selecting a number of consecutive bits of said flags register equal to said number of sections of said size indicator, each selected bit replicated a number of times to fill each place of a corresponding section of said arithmetic logic unit.
- 17. The data processing apparatus of claim 16, wherein:
- said arithmetic logic unit further includes a status detector generating a single bit status signal indicative of said digital resultant signal of a corresponding section of said arithmetic logic unit; and
- said flags register is connected to said status detector and has a number of bit storage locations greater than the number of sections of said arithmetic logic unit, said flags register storing said plurality of single bit status signals.
- 18. The data processing apparatus of claim 17, wherein:
- said status detector generates said single bit status signals indicating whether respective digital resultant signals are zero.
- 19. The data processing apparatus of claim 17, wherein:
- said status detector generates said single bit status signals indicating whether said combination of inputs yielding respective digital resultant signals generates a carry from a most significant bit said corresponding section of said arithmetic logic unit.
- 20. The data processing apparatus of claim 17, wherein:
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said status detector having a zero detector for each of said elementary sections of said arithmetic logic unit, said status detector generating said status signal for each section when said arithmetic logic unit is divided into less than said maximum number of sections by ANDing said zero signals for each elementary section included within that section.
- 21. The data processing apparatus of claim 17, wherein:
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or not coupling said carry-out to said carry-in depending upon said size indicator, said status detector supplying to said flags register said carry-outs from each elementary section not coupled to said adjacent section via a corresponding multiplexer.
- 22. The data processing apparatus of claim 17, wherein:
- said flags register rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said single bit status signals into places within said flags register vacated by said rotating.
- 23. The data processing apparatus of claim 17, wherein:
- said flags register receiving a rotation indication, said flags register
- rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said status signals if said rotation indication indicates rotation of said flags register, and
- storing said status signals by overwriting prior bits if said rotation indication indicates non-rotation of said flags register.
- 24. The data processing apparatus of claim 23, further comprising:
- said status register being connected to said flags register and storing said rotation indication.
- 25. The data processing apparatus of claim 17, wherein:
- said flags register further receives a clearance indication, said flags register
- clearing all bits stored therein prior to storing said single bit status signals if said clearance indication indicates clearing said flags register, and
- not clearing all bits stored therein prior to storing said single bit status signals bits if said clearance indication indicates non-clearing said flags register.
- 26. The data processing apparatus of claim 16, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said data registers to said flags register.
- 27. The data processing apparatus of claim 16, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 28. An data processing system comprising:
- an data system bus transferring data and addresses;
- an system memory connected to said data system bus, said system memory storing data and transferring data via said data system bus;
- an data processor circuit connected to said data system bus, said data processor circuit including
- a status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- an arithmetic logic unit connected to said status register having first, second and third data inputs for respective first, second and third multibit digital signals representing corresponding inputs, said arithmetic logic unit divided into a number of equally sized independent sections corresponding to said size indicator, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections;
- a first data source supplying said first multibit digital signal to said arithmetic logic unit;
- a second data source supplying said second multibit digital signal to said arithmetic logic unit;
- a flags register storing therein a plurality of single bit status signals; and
- an expansion circuit connected to said status register and said flags register for supplying said third multibit signal to said arithmetic logic unit by selecting a number of consecutive bits of said flags register equal to said number of sections of said size indicator, each selected bit replicated a number of times to fill each place of a corresponding section of said arithmetic logic unit.
- 29. The data processing system of claim 28, wherein:
- said data processor circuit wherein
- said arithmetic logic unit further includes a status detector generating a single bit status signal indicative of said digital resultant signal of a corresponding section of said arithmetic logic unit; and
- said flags register is connected to said status detector and has a number of bit storage locations greater than the number of sections of said arithmetic logic unit, said flags register storing said plurality of single bit status signals.
- 30. The data processing system of claim 29, wherein:
- said data processor circuit wherein
- said status detector generates said single bit status signals indicating whether respective digital resultant signals are zero.
- 31. The data processing apparatus of claim 29, wherein:
- said data processor circuit wherein
- said status detector generates said single bit status signals indicating whether said combination of inputs yielding respective digital resultant signals generates a carry from a most significant bit said corresponding section of said arithmetic logic unit.
- 32. The data processing system of claim 29, wherein:
- said data processor circuit wherein
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said status detector having a zero detector for each of said elementary sections of said arithmetic logic unit, said status detector generating said status signal for each section when said arithmetic logic unit is divided into less than said maximum number of sections by ANDing said zero signals for each elementary section included within that section.
- 33. The data processing system of claim 29, wherein:
- said data processor circuit wherein
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or not coupling said carry-out to said carry-in depending upon said size indicator, said status detector supplying to said flags register said carry-outs from each elementary section not coupled to said adjacent section via a corresponding multiplexer.
- 34. The data processing system of claim 29, wherein:
- said data processor circuit wherein
- said flags register rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said single bit status signals into places within said flags register vacated by said rotating.
- 35. The data processing system of claim 29, wherein:
- said data processing circuit wherein
- said flags register receiving a rotation indication, said flags register
- rotating bits stored therein a number of places equal to the number of sections of said arithmetic logic unit prior to storing said status signals if said rotation indication indicates rotation of said flags register, and
- storing said status signals by overwriting prior bits if said rotation indication indicates non-rotation of said flags register.
- 36. The data processing system of claim 35, wherein:
- said data processor circuit wherein
- said status register being connected to said flags register and storing said rotation indication.
- 37. The data processing system of claim 29, wherein:
- said data processor circuit wherein
- said flags register further receives a clearance indication, said flags register
- clearing all bits stored therein prior to storing said single bit status signals if said clearance indication indicates clearing said flags register, and
- not clearing all bits stored therein prior to storing said single bit status signals bits if said clearance indication indicates non-clearing said flags register.
- 38. The data processing system of claim 28, wherein:
- said data processor circuit wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said data registers to said flags register.
- 39. The data processing system of claim 28, wherein:
- said data processor circuit wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 40. The data processing system of claim 28, wherein:
- said data processing system wherein
- each section of said arithmetic logic unit generating said digital resultant signal representing a mixed arithmetic and Boolean combination of respective subsets of said multibit digital signals of said inputs.
- 41. The data processing system of claim 28, wherein:
- said data processor circuit further includes
- a plurality of data memories connected to said digital processor circuit,
- an instruction memory supplying instructions to said digital processor circuit, and
- a transfer controller connected to said data system bus, each of said data memories and said instruction memory controlling data transfer between said system memory and said plurality of data memories and between said system memory and said instruction memory.
- 42. The data processing system of claim 41, wherein:
- said data processor circuit further includes
- at least one additional digital processor circuit identical to said digital processor circuit,
- a plurality of additional data memories connected to each additional digital processor circuit,
- an additional instruction memory supplying instructions to each additional digital processor circuit, and
- said transfer controller is further connected to each of said additional data memories and each said additional instruction memory controlling data transfer between said system memory and said each of said additional data memories and between said system memory and each said additional instruction memory.
- 43. The data processing system of claim 42, wherein:
- said data processor circuit including said data memories, said instruction memories, each of said additional digital processor circuits, each of said additional data memories, each additional instruction memory and said transfer controller are formed on a single integrated circuit.
- 44. The data processing system of claim 41, wherein:
- said data processor circuit further includes
- a master data processor,
- a plurality of master data memories connected to said master data processor,
- at least one master instruction memory supplying instructions to said master data processor, and
- said transfer controller is further connected to each of said master data memories and each said master instruction memory controlling data transfer between said system memory and said each of said master data memories and between said system memory and each said master instruction memory.
- 45. The data processing system of claim 44, wherein:
- said data processor circuit including said data memories, said instruction memories, said master data processor, each of said master data memories, each master instruction memory and said transfer controller are formed on a single integrated circuit.
- 46. The data processor system of claim 28, wherein:
- said system memory consists of an image memory storing image data in a plurality of pixels; and
- said data processor system further comprising:
- an image display unit connected to said image memory generating a visually perceivable output of an image consisting of a plurality of pixels stored in said image memory.
- 47. The data processor system of claim 46, further comprising:
- a palette forming a connection between said image memory and said image display unit, said palette transforming pixels recalled from said image memory into video signals driving said image display unit;
- and wherein said data processor circuit further includes
- a frame controller connected to said palette controlling said palette transformation of pixels into video signals.
- 48. The data processor system of claim 28, wherein:
- said system memory consists of an image memory storing image data in a plurality of pixels; and
- said data processor system further comprising:
- a printer connected to said image memory generating a printed output of an image consisting of a plurality of pixels stored in said image memory.
- 49. The data processor system of claim 48, wherein:
- said printer is a color printer.
- 50. The data processor system of claim 48, further comprising:
- a printer controller forming a connection between said image memory and said printer, said printer controller transforming pixels recalled from said image memory into print signals driving said printer;
- and wherein said data processor circuit further includes
- a frame controller connected to said print controller controlling said print controller transformation of pixels into print signals.
- 51. The data processor system of claim 28, wherein:
- said system memory consists of an image memory storing image data in a plurality of pixels; and
- said data processor system further comprising:
- an imaging device connected to said image memory generating an image signal input.
- 52. The data processor system of claim 51, further comprising:
- an image capture controller forming a connection between said imaging device and said image memory, said image capture controller transforming said image signal into pixels supplied for storage in said image memory;
- and wherein said data processor circuit further includes
- a frame controller connected to said image capture controller controlling said image capture controller transformation of said image signal into pixels.
- 53. The data processor system of claim 28, further comprising:
- a modem connected to said data system bus and to a communications line.
- 54. The data processor system of claim 28, further comprising:
- a host processing system connected to said data system bus.
- 55. The data processor system of claim 54, further comprising:
- a host system bus connected to said host processing system transferring data and addresses; and
- at least one host peripheral connected to said host system bus.
- 56. The data processing system of claim 16, wherein:
- each section of said arithmetic logic unit generating said digital resultant signal representing a mixed arithmetic and Boolean combination of respective subsets of said multibit digital signals of said inputs.
- 57. The data processing apparatus of claim 1, further comprising:
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section and connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said adjacent elementary section depending upon the number of independent sections of said arithmetic logic unit.
- 58. The data processing apparatus of claim 6, further comprising:
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section and connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said adjacent elementary section depending upon the number of independent sections of said arithmetic logic unit.
- 59. The data processing apparatus of claim 13, further comprising:
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section and connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said adjacent elementary section depending upon the number of independent sections of said arithmetic logic unit.
- 60. The data processing apparatus of claim 16, further comprising:
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section and connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said adjacent elementary section depending upon the number of independent sections of said arithmetic logic unit.
- 61. The data processing system of claim 28, wherein:
- said data processor circuit further includes
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said arithmetic logic unit has a maximum number of elementary sections into which it may be divided, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of an adjacent elementary section and connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said adjacent elementary section depending upon the number of independent sections of said arithmetic logic unit.
- 62. The data processing apparatus of claim 1, further comprising:
- a status register connected to said arithmetic logic unit and said flags register, said status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- said arithmetic logic unit having a maximum number of elementary sections into which it may be divided and divided into a number of sections corresponding to said size indicator of said status register; and
- said flags register storing a number of status signals corresponding to said size indicator of said status register.
- 63. The data processing apparatus of claim 62, wherein:
- said status detector having a zero detector for each of said elementary sections of said arithmetic logic unit, said status detector generating said status signal for each section when said arithmetic logic unit is divided into less than said maximum number of sections by ANDing said status signals for each elementary section included within that section.
- 64. The data processing apparatus of claim 62, wherein:
- said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of a next most significant adjacent elementary section, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said next most significant adjacent elementary section or not coupling said carry-out to said carry-in of said next most significant adjacent elementary section depending upon said size indicator, said status detector supplying to said flags register said carry-outs from each elementary section not coupled to said adjacent section via a corresponding multiplexer.
- 65. The data processing apparatus of claim 1, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
- 66. The data processing apparatus of claim 6, further comprising:
- a status register connected to said arithmetic logic unit and said flags register, said status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- said arithmetic logic unit having a maximum number of elementary sections into which it may be divided and divided into a number of sections corresponding to said size indicator of said status register; and
- said flags register storing a number of status signals corresponding to said size indicator of said status register.
- 67. The data processing apparatus of claim 66, wherein:
- said status detector having a zero detector for each of said elementary sections of said arithmetic logic unit, said status detector generating said status signal for each section when said arithmetic logic unit is divided into less than said maximum number of sections by ANDing said status signals for each elementary section included within that section.
- 68. The data processing apparatus of claim 66, wherein:
- said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of a next most significant adjacent elementary section, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said next most significant adjacent elementary section or not coupling said carry-out to said carry-in of said next most significant adjacent elementary section depending upon said size indicator, said status detector supplying to said flags register said carry-outs from each elementary section not coupled to said adjacent section via a corresponding multiplexer.
- 69. The data processing apparatus of claim 6, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
- 70. The data processing apparatus of claim 13, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
- 71. The data processing apparatus of claim 16, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
- 72. The data processing apparatus of claim 28, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
- 73. A data processing apparatus comprising:
- a status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections;
- an arithmetic logic unit connected to said status register having data inputs for a plurality of multibit digital signals representing corresponding inputs, said arithmetic logic unit having a maximum number of elementary sections into which it may be divided and divided into a plurality of equally sized independent sections corresponding to said size indicator, each section generating at a corresponding output a digital resultant signal representing a combination of respective subsets of said multibit digital signals of said inputs independent of respective subsets of said multibit digital signals of said inputs to other sections, said arithmetic logic unit further including a multiplexer between a carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of a next most significant adjacent elementary section, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said next most significant adjacent elementary section or not coupling said carry-out to said carry-in of said next most significant adjacent elementary section depending upon said size indicator, and said arithmetic logic unit further including a status detector supplying a status signal corresponding to each section of said arithmetic logic unit consisting of said carry-outs from each elementary section not coupled to said next most significant adjacent section via a corresponding multiplexer; and
- a flags register connected to said status detector for storing a number of said status signals corresponding to said size indicator of said status register.
- 74. The data processing apparatus of claim 73, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from a selected one of said data registers to said flags register.
- 75. The data processing apparatus of claim 73, wherein:
- said arithmetic logic unit includes a first data input for receiving a first multibit digital signal, a second data input for receiving a second multibit digital signal and an output supplying said digital resultant signal;
- said data processing apparatus further comprising a data register file connected to said arithmetic logic unit including
- a plurality of data registers for storing data,
- a first output bus connected to said first data input of said arithmetic logic unit for recalling from a first specified data register data stored therein, thereby supplying said first multibit digital signal,
- a second output bus connected to said second data input of said arithmetic logic unit for recalling form a second specified data register data stored therein, thereby forming said second multibit digital signal,
- an input bus connected to said output of said arithmetic logic unit for storing said digital resultant signal in a third specified data register; and
- a data bus between said data register file and said flags register permitting data transfer from said flags register to a selected one of said data registers.
- 76. The data processing apparatus of claim 73, further comprising:
- a carry-in generator connected to said arithmetic logic unit independently generating a carry-in signal for each of said sections of said arithmetic logic unit; and
- said multiplexer between said carry-out of a most significant bit of each elementary section and a carry-in of a least significant bit of said next most significant adjacent elementary section connected to said carry-in generator, each said multiplexer coupling said carry-out of an elementary section to said carry-in of said next most significant adjacent elementary section or coupling said corresponding independently generated carry-in signal from said carry-in generator to said carry-in of said next most significant adjacent elementary section depending upon said size indicator of said status register.
- 77. The data processing apparatus of claim 73, wherein:
- said data inputs to said arithmetic logic unit each consist of N bits; and
- said flags register consists of N bit storage locations.
CROSS REFERENCE TO RELATED APPLICATIONS
This application relates to improvements in the inventions disclosed in the following copending U.S. patent applications, all of which are assigned to Texas Instruments:
U.S. patent application Ser. No. 08/263,501, filed Jun. 21, 1994 entitled "MULTI-PROCESSOR WITH CROSSBAR LINK OF PROCESSORS AND MEMORIES AND METHOD OF OPERATION", a continuation of U.S. patent application Ser. No. 08/135,754, filed Oct. 12, 1993, and now abandoned, a continuation of U.S. patent application Ser. No. 07/933,865, filed Aug. 21, 1993, and now abandoned, a continuation of U.S. patent application Ser. No. 435,591 filed Nov. 17, 1989 and now abandoned;
U.S. Pat. No. 5,212,777, issued May 18, 1993, filed Nov. 17, 1989 and entitled "SIMD/MIMD RECONFIGURABLE MULTI-PROCESSOR AND METHOD OF OPERATION";
U.S. patent application Ser. No. 08/264,111 filed Jun. 22, 1994, entitled "RECONFIGURABLE COMMUNICATIONS FOR MULTI-PROCESSOR AND METHOD OF OPERATION," a continuation of U.S. patent application Ser. No. 07/895,565, filed Jun. 5, 1992, and now abandoned, a continuation of U.S. patent application Ser. No. 07/437,856, filed Nov. 17, 1989 and now abandoned;
U.S. patent application Ser. No. 08/264,582, filed Jun. 22, 1994, entitled "REDUCED AREA OF CROSSBAR AND METHOD OF OPERATION", a continuation of U.S. patent application Ser. No. 07/437,852, filed Nov. 17, 1989, and now abandoned;
U.S. patent application Ser. No. 08/032,530 filed Mar. 15, 1993 entitled "SYNCHRONIZED MIMD MULTI-PROCESSING SYSTEM AND METHOD OF OPERATION," a continuation of U.S. patent application Ser. No. 07/437,853 filed Nov. 17, 1989 and now abandoned;
U.S. Pat. No. 5,197,140 issued Mar. 23, 1993 filed Nov. 17, 1989 and entitled "SLICED ADDRESSING MULTI-PROCESSOR AND METHOD OF OPERATION";
U.S. Pat. No. 5,339,447, issued Aug. 16, 1994, filed Nov. 17, 1989 entitled "ONES COUNTING CIRCUIT, UTILIZING A MATRIX OF INTERCONNECTED HALF-ADDERS, FOR COUNTING THE NUMBER OF ONES IN A BINARY STRING OF IMAGE DATA;
U.S. Pat. No. 5,239,654 issued Aug. 24, 1993 filed Nov. 17, 1989 and entitled "DUAL MODE SIMD/MIND PROCESSOR PROVIDING REUSE OF MIMD INSTRUCTION MEMORIES AS DATA MEMORIES WHEN OPERATING IN SAID MODE";
U.S. Pat. No. 5,410,649, filed Jun. 29, 1992 entitled "IMAGING COMPUTER AND METHOD OF OPERATION", a continuation of U.S. patent application Ser. No. 07/437,854, filed Nov. 17, 1989 and now abandoned; and
U.S. Pat. No. 5,226,125 issued Jul. 6, 1993 filed Nov. 17, 1989 and entitled "SWITCH MATRIX HAVING INTEGRATED CROSSPOINT LOGIC AND METHOD OF OPERATION".
This application is also related to the following concurrently filed U.S. patent applications, which include the same disclosure:
U.S. Pat. No. 5,490,828, "THREE INPUT ARITHMETIC LOGIC UNIT WITH BARREL ROTATOR";
U.S. patent application Ser. No. 08/160,118, "MEMORY STORE FROM A REGISTER PAIR CONDITIONAL" and now pending;
U.S. Pat. No. 5,442,581, "ITERATIVE DIVISION APPARATUS, SYSTEM AND METHOD FORMING PLURAL QUOTIENT BITS PER ITERATION", a continuation of U.S. patent application Ser. No. 08/160,115, concurrently filed with this application and now abandoned;
U.S. patent application Ser. No. 08/158,285, "THREE INPUT ARITHMETIC LOGIC UNIT FORMING MIXED ARITHMETIC AND BOOLEAN COMBINATIONS", and now pending;
U.S. patent application Ser. No. 08/160,119, "METHOD, APPARATUS AND SYSTEM FORMING THE SUM OF DATA IN PLURAL EQUAL SECTIONS OF A SINGLE DATA WORD", and now pending;
U.S. Pat. No. 5,512,896, "HUFFMAN ENCODING METHOD, CIRCUITS AND SYSTEM EMPLOYING MOST SIGNIFICANT BIT CHANGE FOR SIZE DETECTION";
U.S. Pat. No. 5,479,166, "HUFFMAN DECODING METHOD, CIRCUIT AND SYSTEM EMPLOYING CONDITIONAL SUBTRACTION FOR CONVERSION OF NEGATIVE NUMBERS";
U.S. patent application Ser. No. 08/160,112, "METHOD, APPARATUS AND SYSTEM FOR SUM OF PLURAL ABSOLUTE DIFFERENCES", and now pending;
U.S. patent application Ser. No. 08/160,120, "ITERATIVE DIVISION APPARATUS, SYSTEM AND METHOD EMPLOYING LEFT MOST ONE'S DETECTION AND LEFT MOST ONE'S DETECTION WITH EXCLUSIVE OR", and now pending;
U.S. patent application Ser. No. 08/160,114, "ADDRESS GENERATOR EMPLOYING SELECTIVE MERGE OF TWO INDEPENDENT ADDRESSES", and now pending;
U.S. Pat. No. 5,420,809, "METHOD, APPARATUS AND SYSTEM METHOD FOR CORRELATION";
U.S. Pat. No. 5,509,129, "LONG INSTRUCTION WORD CONTROLLING PLURAL INDEPENDENT PROCESSOR OPERATIONS";
U.S. patent application Ser. No. 08/159,346, "ROTATION REGISTER FOR ORTHOGONAL DATA TRANSFORMATION"; and now pending;
U.S. patent application Ser. No. 08/159,652, "MEDIAN FILTER METHOD, CIRCUIT AND SYSTEM", and now pending;
U.S. patent application Ser. No. 08/159,344, "ARITHMETIC LOGIC UNIT WITH CONDITIONAL REGISTER SOURCE SELECTION and now pending;
U.S. patent application Ser. No. 08/160,301, "APPARATUS, SYSTEM AND METHOD FOR DIVISION BY ITERATION", and now pending;
U.S. patent application Ser. No. 08/159,650, "MULTIPLY ROUNDING USING REDUNDANT CODED MULTIPLY RESULT", and now pending;
U.S. Pat. No. 5,446,651, "SPLIT MULTIPLY OPERATION";
U.S. patent application Ser. No. 08,482,697, filed Jun. 7, 1995, "MIXED CONDITION TEST CONDITIONAL AND BRANCH OPERATIONS INCLUDING CONDITIONAL TEST FOR ZERO", a continuation of U.S. patent application Ser. No. 08/158,741, concurrently filed with this application and now abandoned;
U.S. patent application Ser. No. 08/160,302, "PACKED WORD PAIR MULTIPLY OPERATION", and now abandoned;
U.S. patent application Ser. No. 08/160,573, "THREE INPUT ARITHMETIC LOGIC UNIT WITH SHIFTER", and now pending;
U.S. patent application Ser. No. 08/159,282, "THREE INPUT ARITHMETIC LOGIC UNIT WITH MASK GENERATOR", and now pending;
U.S. patent application Ser. No. 08/160,111, "THREE INPUT ARITHMETIC LOGIC UNIT WITH BARREL ROTATOR AND MASK GENERATOR", and now pending;
U.S. patent application Ser. No. 08/160,298, "THREE INPUT ARITHMETIC LOGIC UNIT WITH SHIFTER AND MASK GENERATOR", and now pending;
U.S. Pat. No. 5,485,411, "THREE INPUT ARITHMETIC LOGIC UNIT FORMING THE SUM OF A FIRST INPUT ADDED WITH A FIRST BOOLEAN COMBINATION OF A SECOND INPUT AND THIRD INPUT PLUS A SECOND BOOLEAN COMBINATION OF THE SECOND AND THIRD INPUTS";
U.S. Pat. No. 5,465,224, "THREE INPUT ARITHMETIC LOGIC UNIT FORMING THE SUM OF FIRST BOOLEAN COMBINATION OF FIRST, SECOND AND THIRD INPUTS PLUS A SECOND BOOLEAN COMBINATION OF FIRST, SECOND AND THIRD INPUTS";
U.S. Pat. No. 5,493,524, "THREE INPUT ARITHMETIC LOGIC UNIT EMPLOYING CARRY PROPAGATE LOGIC", a continuation of U.S. patent application Ser. No. 08/159,640, filed concurrently with this application and now abandoned; and
U.S. patent application Ser. No. 08/160,300, "DATA PROCESSING APPARATUS, SYSTEM AND METHOD FOR IF, THEN, ELSE OPERATION USING WRITE PRIORITY", and now pending.
US Referenced Citations (35)
Foreign Referenced Citations (1)
Number |
Date |
Country |
2228652 |
Oct 1993 |
GBX |
Non-Patent Literature Citations (1)
Entry |
Microprocessor Report--Slater, Michael, "IIT Ships Programmable Video Processor", vol. 5, No. 20, Oct. 30, 1991 pp. 1, 6-7, 13. |