EP0655680A1

Arithmetic logic unit having plural independent sections and register storing resultant indicator bit from every section.

Abstract

An arithmetic logic unit (230) may be divided into a plurality of sections (301, 302, 303, 340), each of which forms an output of respective subsets of the input inputs. A status detector generates a single bit status signal from the output of each section that is stored in a flags register (211). These status signals may indicate a zero output or a carry output. The flags register (211) preferably includes more bits than the maximum number of sections of the arithmetic logic unit (230). New status signals may overwrite the previous status signals or the flags register may rotate the stored bits and store the new status signals. A status register (210) stores a size indicator that determines the a number of sections of the arithmetic logic unit (230). The flags register (211) stores a number of status signals corresponding to the number of sections. The status detector has a zero detector (321, 322, 323, 324) for each elementary section (301, 302, 303, 304) of the arithmetic logic unit (230). When there are fewer than the maximum number of sections, these zero signals are ANDed (331, 332, 341) for plural elementary sections. A multiplexer (311, 312, 313, 314) between a carry-out of each elementary section (301, 302, 303, 304) and a carry-in of an adjacent elementary section (301, 302, 303, 304) couples the carry-out to the carry-in or not depending on the selected number of sections. The status detector supplies carry outs from each elementary section (301, 302, 303, 304) not coupled to an adjacent elementary (301, 302, 303, 304) section via a corresponding multiplexer (311, 312, 313, 314) to the flags register (211). Status signals stored in the flags register (211) influence the combination of inputs formed by the arithmetic logic unit (230) within corresponding sections. Selected bits of flags register (211) are expanded via an expand circuit (238) to form a third input to a three input arithmetic logic unit (230). Preferably the arithmetic logic unit (230) and the flags register (235) are embodied in at least one digital image/graphics processor (71) as a part of a multiprocessor (100) formed in a single integrated circuit used in image processing.

EP0655680A1, drawing sheet 1
Sheet 1 of 88

Term

Term ended

Projected expiry passed 30 November 2014, 11.8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

35 claims: 15 independent, 20 dependent

  1. 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 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, and storing single bit status signals.
  2. 7
    The data processing apparatus of any preceding claim, wherein:said flags register being further connected to said arithmetic logic unit, selected status signals of said flags register determines said combination of inputs formed by said arithmetic logic unit within respective sections.
  3. 9
    A data processing apparatus as claimed in any preceding claim and wherein said flags register receives a rotation indication.
  4. 11
    A data processing apparatus as claimed in any preceding claim and wherein said flags register is connected to said status detector.
  5. 12
    A data processing apparatus as claimed in any preceding claim and wherein said flags register:rotates 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 stores said status signals by overwriting prior bits if said rotation indication indicates non rotation of said flags register.
  6. 13
    14. The data processing apparatus of any preceding claim, 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.
  7. 14
    15. A data processing apparatus as claimed in any preceding claim and including a status register storing a size indicator indicating a number of sections selected from a plurality of possible number of sections and said arithmetic logic unit divided into a number of sections corresponding to said size indicator.
  8. 15
    16. The data processing apparatus of claim 15, 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 status signals for plural elementary sections.
  9. 16
    17. The data processing apparatus of claim 16, 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.
  10. 17
    18. A data processing apparatus as claimed in any of claims 15 to 17 said 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;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 a corresponding section of said arithmetic logic unit.
  11. 18
    19. A data processing arrangement comprising:a 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 system as claimed in any preceding claim connected to said data system bus.
  12. 19
    20. The data processing system of any of claims 15 to 17, 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.
  13. 20
    21. The data processing arrangement of claim 20, wherein:said data processor system further includes a plurality of data memories connected to said digital processor system, an instruction memory supplying instructions to said digital processor system, 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.
  14. 21
    22. The data processing arrangement of claim 21, wherein:said data processor system further includes at least one additional digital processor system identical to said digital processor system, a plurality of additional data memories connected to each additional digital processor system, an additional instruction memory supplying instructions to each additional digital processor system, 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.
  15. 22
    23. The data processing arrangement of claim 22, wherein:said data processor system including said data memories, said instruction memories, each of said additional digital processor systems, each of said additional data memories, each additional instruction memory and said transfer controller are formed on a single integrated circuit.
  16. 23
    24. The data processing arrangement of any of claims 22 to 23, wherein:said data processor system 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.
  17. 24
    25. The data processing arrangement of claim 24, wherein:said data processor system 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.
  18. 25
    26. The data processor arrangement of any of claims 21 to 25, wherein:said system memory consists of an image memory storing image data in a plurality of pixels.
  19. 26
    27. A data processor arrangement as claimed in claim 26; said data processor arrangement 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.
  20. 27
    28. The data processor arrangement of claim 27, 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 system further includes a frame controller connected to said palette controlling said palette transformation of pixels into video signals.
  21. 28
    29. The data processor arrangement of claim 28, wherein: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.
  22. 29
    30. The data processor arrangement of claim 29, wherein:said printer is a color printer.
  23. 31
    32. The data processor arrangement of any of claims 21 to 26, 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.
  24. 32
    33. The data processor arrangement of claim 32, 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.
  25. 33
    34. The data processor arrangement of any of claims 21 to 33, further comprising:a modem connected to said data system bus and to a communications line.
  26. 34
    35. The data processor arrangement of any of claims 21 to 34, further comprising:a host processing system connected to said data system bus.
  27. 35
    36. The data processor arrangement of claim 35, 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.
Independent claims27