Vector Instruction Format in Vector Processors

Different Instruction formats are used by different vector processors. Vector instructions are generally specified by some fields. The main fields that are used in vector instruction set are given below:

  1. Operations Code (Opcode) –
    The operation code must be specified to select the functional unit or to reconfigure a multi-functional unit to perform the specified operation dictated by this field. Usually, microcode control is used to set up the required resources.

    For example:
    Opcode – 0001 mnemonic – ADD operation – add the content of memory to the content of accumulator
    Opcode – 0010 mnemonic – SUB operation – subtract the content of memory to the content of accumulator
    Opcode – 1111 mnemonic – HLT operation – stop processing

  2. Base addresses –
    For a memory reference instruction, the base addresses are needed for both source operands and result vectors. The designated vector registers must be specified in the instruction, if the operands and results are located in the vector register file, i.e., collection of registers.

    For example:

    ADD R1, R2 

    Here, R1 and R2 are the addresses of the register.

  3. Offset (or Displacement) –
    This field is required to get the effective memory address of operand vector. The address offset relative to the base address should be specified. Using the base address and the offset (positive or negative), the effective address is calculated.

  4. Address Increment –
    The address increment between the scalar elements of vector operand must be specified. Some computers, i.e., the increment is always 1. Some other computers, like TI-ASC, can have a variable increment, which offers higher flexibility in application.

    For example:

    R1 <- 400 

    Auto incr-R1 is incremented the value of R1 by 1.

    R1 = 399 
  5. Vector length –
    The vector length (positive integer) is needed to determine the termination of a vector instruction.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.