EP0187762A4 - Method and apparatus for a bit field instruction. - Google Patents
Method and apparatus for a bit field instruction.Info
- Publication number
- EP0187762A4 EP0187762A4 EP19850902326 EP85902326A EP0187762A4 EP 0187762 A4 EP0187762 A4 EP 0187762A4 EP 19850902326 EP19850902326 EP 19850902326 EP 85902326 A EP85902326 A EP 85902326A EP 0187762 A4 EP0187762 A4 EP 0187762A4
- Authority
- EP
- European Patent Office
- Prior art keywords
- register
- bit field
- bit
- bus
- bits
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title description 10
- 238000003780 insertion Methods 0.000 claims description 7
- 230000037431 insertion Effects 0.000 claims description 7
- 238000012546 transfer Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000006467 substitution reaction Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000010977 unit operation Methods 0.000 description 3
- 101000599568 Mamestra brassicae Antennal odorant-binding protein Proteins 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 102100032303 26S proteasome non-ATPase regulatory subunit 2 Human genes 0.000 description 1
- 101100041125 Arabidopsis thaliana RST1 gene Proteins 0.000 description 1
- VOVIALXJUBGFJZ-KWVAZRHASA-N Budesonide Chemical compound C1CC2=CC(=O)C=C[C@]2(C)[C@@H]2[C@@H]1[C@@H]1C[C@H]3OC(CCC)O[C@@]3(C(=O)CO)[C@@]1(C)C[C@@H]2O VOVIALXJUBGFJZ-KWVAZRHASA-N 0.000 description 1
- 101100328886 Caenorhabditis elegans col-2 gene Proteins 0.000 description 1
- 101100328884 Caenorhabditis elegans sqt-3 gene Proteins 0.000 description 1
- 102100028043 Fibroblast growth factor 3 Human genes 0.000 description 1
- 101000590272 Homo sapiens 26S proteasome non-ATPase regulatory subunit 2 Proteins 0.000 description 1
- 108050002021 Integrator complex subunit 2 Proteins 0.000 description 1
- 101100496105 Mus musculus Clec2e gene Proteins 0.000 description 1
- 240000007320 Pinus strobus Species 0.000 description 1
- 101100443250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DIG1 gene Proteins 0.000 description 1
- 101100443251 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DIG2 gene Proteins 0.000 description 1
- 101100041128 Schizosaccharomyces pombe (strain 972 / ATCC 24843) rst2 gene Proteins 0.000 description 1
- 102000003563 TRPV Human genes 0.000 description 1
- 108060008564 TRPV Proteins 0.000 description 1
- 101100108191 Vibrio parahaemolyticus serotype O3:K6 (strain RIMD 2210633) add gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string instructions
Definitions
- FIG. 5 is a block diagram of a control circuit for implementing the invention.
- FIG. 6 is a portion of memory containing a bit field at a stage in a bit field instruction according to a preferred embodiment of the invention.
- FIG. 7 is a portion of the bit field at a stage in the bit field instruction according to a preferred embodiment of the invention.
- FIG. 10 is a portion of the bit field at a stage in the bit field instruction according to a preferred embodiment 9of the invention.
- FIG.s 12A and 12B comprise a micro-control flow diagram for showing a bit field extract instruction according to preferred embodiment of the invention
- FIG.s 13A and 13B comprise a micro-control flow diagram for showing a bit field clear instruction according to preferred embodiment of the invention.
- memory 20 In response to a particular range of physical addresses (PADDR), memory 20 will cooperate with an error detection and correction circuit (EDAC) 22 to exchange data (DATA) with DP 12 in synchronization with the physical access control signals (PCNTL) on PBUS 16.
- EDAC error detection and correction circuit
- PCNTL physical access control signals
- EDAC 22 Upon detecting an error in the data, EDAC 22 will either signal a bus error (BERR) or request DP 12 to retry (RETRY) the exchange, depending upon the type of error.
- BERR bus error
- RETRY request DP 12 to retry
- mass storage interface 24 In response to a different physical address, mass storage interface 24 will cooperate with MP 12 to transfer data to or from mass storage 26. If an error occurs during the transfer, interface 24 may signal a bus error (BERR) or, if appropriate, request a retry (RETRY).
- BERR bus error
- RETRY request a retry
- operation of DP 12 may be externally controlled by judicious use of a HALT signal.
- DP 12 In response to the activation of only the HALT input thereof via OR gate 32, DP 12 will halt at the end of the current bus cycle, and will resume operation only upon the termination of the HALT signal.
- the last instruction thereof will return control of DP 12 to the aborted program.
- the additional stacked information is retrieved and loaded into the appropriate portions of DP 12 to restore the state which existed at the time the bus error occurred.
- each microinstruction comprises a microword which controls microinstruction sequencing and function code generation, and a corresponding nanoword which controls the actual routing of information between functional units and the actuation of special function units within DP 12.
- bus controller 44 will provide appropriate data strobes (some of the LCNTL signals) to activate memory 20.
- bus controller 44 enables instruction register capture (IRC) 50 to input the first word of the next instruction from PBUS 16.
- IRC instruction register capture
- another microinstruction will be executed to transfer the first word of the next instruction from IRC 50 into instruction register (IR) 52, and to load the next word from memory 20 into IRC 50.
- the word in IRC 50 may be immediate data, the address of an operand, or the first word of a subsequent instruction. Details of the instruction set and the microinstruction sequences thereof are setforth fully in U.S. Patent No. 4,325,121 entitled "Two Level Control Store for Microprogrammed Data Processor” issued 13 April 1982 to Gunter et al, and which is hereby incorporated by reference.
- address 1 decoder 54 begins decoding certain control fields in the instruction to determine the micro address of the first microinstruction in the initial microsequence of the particular instruction in IR 52.
- illegal instruction decoder 56 will begin examining the format of the instruction in IR 52. If the format is determined to be incorrect, illegal instruction decoder 56 will provide the micro address of the first microinstruction of an illegal instruction micro-sequence. In response to the format error, exception logic 58 will force multiplexor 60 to substitute the micro address provided by illegal instruction decoder 56 for the micro address provide by address 1 decoder 54.
- the microword portion thereof may enable multiplexor 60 to provide to an appropriate micro address to micro address latch 62, while the nanoword portion thereof enables instruction register decoder (IRD) 64 to load the first word of the next instruction from IR 52.
- instruction register decoder ILD
- micro ROM 34 Upon the selected micro address being loaded into micro address latch 62, micro ROM 34 will output a respective microword to micro ROM output latch 36 and nano ROM 40 will output a corresponding nanoword to nano ROM output latch 42.
- micro ROM output latch 36 specifies the micro address of the next microinstruction to be executed, while another portion determines which of the alternative micro addresses will be selected by multiplexor 60 for input to micro address latch 62.
- more than one microsequence must be executed to accomplish the specified operation. These tasks, such as indirect address resolution, are generally specified using additional control fields within the instruction.
- the micro addresses of the first microinstructions for these additional microsequences are developed by address 2/3 decoder 66 using control information in IR 52.
- the first microsequence will typically perform some preparatory task and then enable multiplexor 60 to select the micro address of the microsequence which will perform the actual operation as developed by the address 3 portion of address 2/3 decoder 66.
- the first microsequence will perform the first preparatory task and then will enable multiplexor 60 to select the micro address of the next preparatory microsequence as developed by the address 2 portion of address 2/3 decoder 66.
- the second microsequence Upon performing this additional preparatory task, the second microsequence then enables multiplexor 60 to select the micro address of the microsequence which will perform the actual operation as developed by the address 3 portion of address 2/3 decoder
- the nanowords which are loaded into nano ROM output latch 42 indirectly control the routing of operands into and, if necessary, between the several registers in the execution unit 46 by exercising control over register control (high) 68 and register control (low and data) 70.
- the nanoword enables field translation unit 72 to extract particular bit fields from the instruction in IRD 64 for input to the execution unit 46.
- the nanowords also indirectly control effective address calculations and actual operand calculations within the execution unit 46 by exercising control over AU control 74 and ALU control 76.
- ALU control 76 to store into status register (SR) 78 the condition codes which result from each operand calculation by execution unit 46.
- SR status register
- FIG. 3 Shown in FIG. 3 is a data processor 300 which comprises DP12, a shifter circuit 400, and a control circuit 500 for performing a bit field instruction according to a preferred embodiment of the invention.
- Shifter control 400 comprises a register A, a switch 401, a barrel shifter 402, a register B, a start register 403, an end register 404, a shift count register 405, and a fill register 406.
- Register A is coupled to switch 401 by a 32 bit bus 407.
- Register A is similarly coupled to a DB bus 407 and an AB bus 408 which are each 32 bit buses.
- Register B is also coupled to DB bus 408 and AB bus 409.
- Register B is also coupled to barrel shifter 402 by a 32 bit bus 411.
- Barrel shifter 402 is coupled to switch 401 by a 32 bit bus 412.
- the MSB of the transferred bits is the bit indicated by end register 404.
- the X fill option is for putting some selectable bit into all of the untransferred bit locations. Of course zero fill means putting zeros in the untransferred bit locations.
- Barrel shifter 402 rotates 32 bits by the amount indicated by shift count register 405.
- the bits loaded into shift count register 405 are decoded by a decoder PLA 413 which in turn provides the direct control of barrel shifter 402. If the transfer is from register A to register B, the rotate by barrel shifter 402 is to the right by the amount indicated by shift count register 405. If the transfer is from register B to register A, the rotate is to the left by the amount indicated by shift count register 405.
- a register A to register B transfer effects a complete rewrite of register B. For every transfer, or shifter control instruction, from register A to register B or register B to register A, start, end, and shift count registers 403, 404, and 405 are loaded with selected values.
- bit field 601 Shown in FIG. 6 is a portion of a memory 600 comprising 7 bytes 1-7.
- bit field 601 In a cross-hatched area in bytes 3-7 is a bit field 601 of width W.
- bit field 601 is less than 32 bits, it is located in five different bytes.
- MSB most significant bit
- LSB least significant bit
- the object is for all of bit field 601 to be formatted, in this case right justified, so that it can be placed on a 32 bit bus with bit 603 in the 0 position of the 32 bit bus and all of the bits in excess of width W being sign extended.
- bit field 601 cannot be accessed with a single address. Consequently several steps are required to format bit field 601 into the desired form.
- An offset OS indicates how many bits the beginning of bit field 601 is away from a byte boundary 605 which is at the byte boundary of byte 1.
- a long word is 32 bits. Consequently, DP12 is configured for performing operations with operands which can be as large as a long word. A bit fold which overlaps 5 bytes is thus present in two operands in memory as viewed by DP12.
- Bytes 3-6 are loaded into register A.
- Start register 403 is loaded with a value of zero and end register 404 is loaded with a value equal to the number of bits, which are in bytes 3 to 6 that are part of bit field 601, minus 1.
- the "minus 1" is due to the manner that the bit positions are designated. For example, if the width is 28, the value loaded into end register 404 should be 27. This will cause 28 bits to pass.
- Fill register 406 is set for sign extend. The sign extended bits are the same as the amount of an offset OS3 from a byte boundary 604 at the left of byte 3. Offset OS3 is comprised of the 3 least significant bits of offset OS.
- the contents of register A as adjusted by switch 401 are then received by barrel shifter 402.
- Barrel shifter 402 receives bytes 3-6 except that the non-bit field bits are sign extended for a sign extend extract instruction. This is shown in FIG. 7 with the sign extended bits shown with upper left to lower right cross-hatching. Zero extend is another alternative, but not shown for the current example. In this condition a left rotate of an amount equal to the number of bits E which extend into byte seven is desired. A rotate left is not available from register A to register B, but the desired result can be achieved by a rotate right. To obtain a left rotate of E, a right rotate of 32 minus E can be used. Accordingly, a value of 32-E is placed in shift count register 405. The result after this shift, shown in FIG. 8, is loaded into register B. The result in register B is loaded into register A and byte 7 is loaded into register B. Byte 7 of FIG. 6 as loaded into register B is shown in FIG. 9.
- register B The contents of register B need to be shifted to the right by an amount equal to 8 minus E and inserted into the contents of register A. Because in a transfer from register B to register A only a left rotate is available, the contents of register B must be rotated to the left by an amount equivalent to a right rotate of 8-E. Equivalent rotate is 32 minus the desired right rotate which is 32-(8-E) which equals 24+E. Accordingly, a value of 24+E is loaded into shift count register 405. The result of this rotate performed by barrel shifter 402 is shown in FIG. 10. In order to insert the bit field portion of the contents of register B into register A, switch 401 must also be properly set. Start register 403 is loaded with zero, and end register 404 is loaded with value E minus 1.
- Bit field 601 is thus in the desired format for placing to be usable as a single operand on a 32 bit bus such as DB bus 408 or AB bus 409.
- DP 12 is thus able to use bit field 601 as it would any other operand in support of some desired operation.
- a bit field which overlaps 5 bytes can, by using the above described technique, thus be brought onto a 32 bit bus in proper format, it should be done in an efficient manner. Otherwise, the value of doing such an instruction is substantially diminished. Consequently, it is highly desirable that the calculation of the values to be inserted into start register 403, end register 404, and shift count register 405 be done as efficiently as possible.
- the offset value is the value OS shown in FIG. 6 from byte 1 to the MSB 602 of bit field 601 and the 5 least significant bits are loaded into an offset register.
- the value OS3 is the three least significant bits of OS.
- the width W is loaded into a width register. All of the values to be inserted into the start, end, and shift count registers 403, 404, and 405 must be derived from OS and W.
- start register 403 is loaded with a zero. This of course does not require a special calculation.
- End register 404 is loaded with the value equal to the number of bits in bit field 602 contained in bytes 3 to 6. This a achieved by concatenating the bits 11 with the inverse of OS3. This is equivalent to adding 24 to the result of substracting OSR from 8. Since OSR is known to have 3 bits, concatenating the bits 11 thereto is the equivalent of adding 24 thereto. As an example, assume that offset OS has a value of 22 so that its bit designation is 10110, and that width W has a value of 28 so that its bit designation is 11100.
- OS3 has a value of 6 with a bit designation of 110.
- the inverse then of OS3 is 001.
- Concatenating 11 with 001 results in 11001, which is a value of 25 loaded into end register 404.
- bits between bit positions 0 and 25 inclusive, a total of 26 bits, will be transferred by switch 401.
- the desired rotate is 2 bits to the left, which is equivalent to a rotate of 32-2, or 30, to the right.
- the values for loading start, end, and shift count registers 403, 404, and 405 for obtaining the result shown in FIG. 11 are calculated somewhat differently.
- the value loaded into start register 403 is still zero.
- the value loaded into end register 404 is to be one, with a bit designation of 00001. There are only two bits that are part of bit field 601 which are in the fifth byte which in this case is byte 7 of FIG. 6. These values for registers 403 and 404 will allow the two desired bits to be inserted into the rest of bit field 601 which is already present in register A.
- This value for end register 404 is obtained by concatenating the bits 00 with the sum of OS3 and width W minus one. As before, to sum OS3 with W-1 is to sum 110 with 011, which results in 001.
- the technique for performing an extract of a bit field which overlaps 5 bytes in memory does require 2 shifter control instructions after the bit field has been addressed. If the addressed bit field is contained in 4 bytes or less, only one shifter control instruction is required. Consequently, the extra felexibility of being able to handle bit field overlapping 5 bytes, does not slow down the previously available capability of handling 4-byte bit fields. If the bit field is contained in 4 bytes of memory or less, the whole bit field is loaded into register A. Start register 403 is loaded with 00 concatenated with the inverse of the sum of the three least significant bits of the offset and the width minus one. The value for the end register 404 is also efficiently calculated.
- the sum of the three least significant bits of the offset and the width minus one, which is calculated for start register 403, is used. Instead of using only the three least significant bits, however, the fourth and fifth bits are used. The fourth and fifth bits of this sum are concatenated with the inverse of the three least significant bits of the offset to obtain the value loaded into end register 404. The value loaded into shift count register 405 is the same as that loaded into start register 403. The properly formatted result will then appear in register B.
- Inserting a bit field which, when inserted into memory, overlaps 5 bytes is similar to that for extracting a bit field which overlaps 5 bytes. There is a different consideration, however, that is important.
- the bits in the 2 bytes which are only partially filled with bit field, but which are not part of the bit field, must not be changed during the insertion of the bit field.
- bit field 601 in FIG. 6 as an example, bytes 3 and 7 contain bits which are not part of bit field 601 and which cannot be altered by the insertion of a bit field. Because the memory is byte addressable, any writing into memory will result in writing into an entire byte.
- bit field 601 as shown in FIG. 11 is to be written into a portion of memory 600 as shown in FIG. 6, more is required than simply reversing the procedure for extracting a bit field.
- the primary difference in procedure is consecutively loading the contents of bytes 3-6 and byte 7 into register A while inserting selected portions of bit field 601 which is loaded into register B.
- Register A is loaded with bytes 3-6 and register B is loaded with bit field 601 as shown in FIG. 11.
- the value loaded into start register 403 is zero.
- the value loaded into end register 404 is obtained by concatenating the bits 11 with the inverse of the three least significant bits of the offset.
- the value loaded into shift count register 405 is obtained by concatenating the bits 11 with the inverse of the sum of the three least significnat bits of the offset and the width minus 1. These values are the same as for the first shifter control instruction for extracting a bit field.
- the contents of register A after a shift from register B to register A via switch 401 and barrel shifter 402 is then loaded in memory as bytes 3-6.
- Register A is then loaded with the contents of byte 7 and 3 bytes following byte 7 if desired.
- Register B still contains bit field 601.
- Start register 403 is loaded with the bits 00 concatenated with the inverse of the sum of the three least significant bits of the offset and the width minus 1.
- End register 404 is loaded with the value 7.
- condition codes for use by processor DP12.
- the condition codes are for informing DP12 of the status of various operations.
- a portion of the condition codes are set by the contents of registers 403, 404, and register A.
- Switch 401 has 3 outputs, AllZEROS, AllONES, and END, for providing information for setting condition codes.
- This aspect of setting condition codes can be used for other bit field operations than extracting a bit field from memory. Merely loading information into registers 403, 404, and A, concerning a bit field may generate sufficient information via the condition codes. This may be sufficient, for example, for a test of the bit field.
- the shifter circuit 400 is advantageously put to another use.
- the offset there are three bits which indicate which bit in the byte contains the first bit in the bit field. These are the three bits which comprise OS3. These three bits, however, are not useful for addressing memory. Since a bit offset can be large and since memory is byte-addressable, it is necessary to be able to convert this bit offset into a byte offset when the bit field is an operand in memory. Byte offset is then added to a base address to form the byte address of the operand. Consequently, the three bits which comprise 0S3 must be removed. This is achieved by loading the bit address into register A, and setting start register 403 to 3, end register to 31, and shift count register 405 to 3.
- Transferring the contents of register A to register B via switch 401 and barrel shifter 402 has the effect of loading register B with a byte offset.
- the byte offset is then added to a base address to form a byte address of the bit field.
- the first bytes which contain the bit field can then be addressed and loaded into register A to begin an extract operation on the bit field as described for bit field 601. This can also be done in other situations. Any time the address is a bit address, but a byte address is desired, this can be used.
- FIG.s 12A and 12B Shown in FIG.s 12A and 12B, configured top to bottom, is a micro-control flow diagram which illustrates the preferred implementation of the bit field extract instruction.
- FIGoS 13A and 13B Shown in FIGoS 13A and 13B, configured top to bottom, is a micro-control flow diagram which illustrates a preferred implementation of a bit field clear instruction.
- a bit field clear instruction writes all zeros into the bit field space.
- a bit field set instruction is the same as the bit field clear instruction except that all ones are written into the bit field space instead of all zeros.
- Another instruction is the bit field complement which complements the contents in the bit field. This is similar to an insert.
- the clear, set, insert, and complement bit field instructions are all very similar.
- the microcode for achieving the various bit field instructions is shown in appendices I and II. APPENDIX I
- the latch in which this value is held has the following encoding
- 3- LDCR load the control register from regb.
- the register is selected by the value in ar[l:0], this can be gated onto the rx bus.
- 4- DPSW load the psw with the value in regb. Either the ccr or the psw is loaded depending upon size. If size a byte then only load the ccr portion.
- 14- CLRFP clear the f-trace pending latch.
- 17- LDSH2 load the contents of the shifter control registers from regb. These include wr,osr,count.
- 19- LDSWB load the internal bus register from regb. This is composed of bus controller state information which must be accessed by the user in fault situations.
- 21- LDSWI load the first word of sswi (internal status word) from regb. This is composed of tpend, fpend1, fpend2, ar latch 23- LDSH1 load the contents of the shifter control registers from regb. These include st,en,sc. 25- LDUPC load micro pc into A4 from regb and check validity of rev #.
- the output is then gated onto the BC bus where it is sign extended to an 8-bit value. It does not hurt anytning in the BFFFO case to load the other latch (i.e. BFFFO can load the AR latch). For BFFFO it does not matter if a bit is cleared.
- 34- STCR store the control register in regb. The register is selected by the value in ar[1:0], this can be gated onto the rx bus.
- Tpend and Fpend are cleared.
- the whole psw is stored in regb.
- 39- 1PSWS store the psw in regb then set the supervisor bit and clear both trace bits in the psw.
- the whole psw is stored in regb.
- 40- STINST store IRD decoded information onto the BC bus and into regb. This data can be latched from the BC bus into other latches (i.e. wr & osr) by other control.
- 41- STIRD store the ird in regb.
- 43- STINL store the new interrupt level in pswi and regb. The three bits are loaded into the corresponding pswi bits.
- 50- STSWB store the internal bus register in regb. composed of bus contro ller State information which must be accessed by the user in fault situations.
- 52- STSWI store sswi (internal, status word) in regb, The sswi is composed of tpend, ar latch, fpendl, fpend2
- 54- STSHl store the contents of the shifter control registers into regb. These include st,en,sc.
- 56- STUPC store the micro pc in regb.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US62506384A | 1984-06-27 | 1984-06-27 | |
US625063 | 1984-06-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0187762A1 EP0187762A1 (en) | 1986-07-23 |
EP0187762A4 true EP0187762A4 (en) | 1987-10-19 |
Family
ID=24504422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19850902326 Withdrawn EP0187762A4 (en) | 1984-06-27 | 1985-04-22 | Method and apparatus for a bit field instruction. |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0187762A4 (en) |
JP (1) | JPS61502566A (en) |
KR (1) | KR860700163A (en) |
WO (1) | WO1986000433A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2045705A1 (en) * | 1990-06-29 | 1991-12-30 | Richard Lee Sites | In-register data manipulation in reduced instruction set processor |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0075893A2 (en) * | 1981-09-30 | 1983-04-06 | Siemens Aktiengesellschaft | Memory operand alignment circuit arrangement for decimal and logical instructions |
EP0099620A2 (en) * | 1982-04-21 | 1984-02-01 | Digital Equipment Corporation | Memory controller with data rotation arrangement |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3916388A (en) * | 1974-05-30 | 1975-10-28 | Ibm | Shifting apparatus for automatic data alignment |
US4103329A (en) * | 1976-12-28 | 1978-07-25 | International Business Machines Corporation | Data processing system with improved bit field handling |
US4135242A (en) * | 1977-11-07 | 1979-01-16 | Ncr Corporation | Method and processor having bit-addressable scratch pad memory |
US4189772A (en) * | 1978-03-16 | 1980-02-19 | International Business Machines Corporation | Operand alignment controls for VFL instructions |
US4219874A (en) * | 1978-03-17 | 1980-08-26 | Gusev Valery | Data processing device for variable length multibyte data fields |
US4520439A (en) * | 1981-01-05 | 1985-05-28 | Sperry Corporation | Variable field partial write data merge |
-
1985
- 1985-04-22 EP EP19850902326 patent/EP0187762A4/en not_active Withdrawn
- 1985-04-22 JP JP60501965A patent/JPS61502566A/en active Pending
- 1985-04-22 WO PCT/US1985/000719 patent/WO1986000433A1/en not_active Application Discontinuation
-
1986
- 1986-02-26 KR KR1019860700118A patent/KR860700163A/en not_active Application Discontinuation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0075893A2 (en) * | 1981-09-30 | 1983-04-06 | Siemens Aktiengesellschaft | Memory operand alignment circuit arrangement for decimal and logical instructions |
EP0099620A2 (en) * | 1982-04-21 | 1984-02-01 | Digital Equipment Corporation | Memory controller with data rotation arrangement |
Non-Patent Citations (1)
Title |
---|
See also references of WO8600433A1 * |
Also Published As
Publication number | Publication date |
---|---|
KR860700163A (en) | 1986-03-31 |
EP0187762A1 (en) | 1986-07-23 |
WO1986000433A1 (en) | 1986-01-16 |
JPS61502566A (en) | 1986-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO1986000434A1 (en) | Method and apparatus for a compare and swap instruction | |
US4648034A (en) | Busy signal interface between master and slave processors in a computer system | |
JP2796590B2 (en) | Memory device and data processing device using the same | |
EP0375950B1 (en) | Method and hardware implementation of complex data transfer instructions | |
US4591972A (en) | Data processing system with unique microcode control | |
AU632324B2 (en) | Multiple instruction preprocessing system with data dependency resolution | |
JP2539199B2 (en) | Digital processor controller | |
US4569018A (en) | Digital data processing system having dual-purpose scratchpad and address translation memory | |
US5347636A (en) | Data processor which efficiently accesses main memory and input/output devices | |
EP0248436B1 (en) | Method of and apparatus for processing data | |
JPH05173837A (en) | Data processing system wherein static masking and dynamic masking of information in operand are both provided | |
US4584666A (en) | Method and apparatus for signed and unsigned bounds check | |
US4597041A (en) | Method and apparatus for enhancing the operation of a data processing system | |
JPS61114353A (en) | Access collation structural body for digital data processingsystem having demand time paging memory | |
WO1981000631A1 (en) | Microcomputer arranged for direct memory access | |
US5179671A (en) | Apparatus for generating first and second selection signals for aligning words of an operand and bytes within these words respectively | |
EP0377431A2 (en) | Apparatus and method for address translation of non-aligned double word virtual addresses | |
US4737908A (en) | Buffer memory control system | |
EP0187762A4 (en) | Method and apparatus for a bit field instruction. | |
US6108761A (en) | Method of and apparatus for saving time performing certain transfer instructions | |
EP0177712B1 (en) | Masked data fetch and modifying device | |
EP0110613B1 (en) | Digital data processing system | |
EP0312183A2 (en) | Digital data processing system | |
EP0229253A2 (en) | Data processor with virtual memory management | |
CA1204216A (en) | Digital data processing system with vertical and horizontal microcode control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 19860124 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): DE FR GB IT NL |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: ZOLNOWSKY, JOHN Inventor name: TRISSEL, DAVID, W. Inventor name: MACGREGOR, DOUGLAS, B. |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 19871019 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 19870502 |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: ZOLNOWSKY, JOHN Inventor name: TRISSEL, DAVID, W. Inventor name: MACGREGOR, DOUGLAS, B. |