Browse Prior Art Database

Multisequencing A Single Instruction Stream Incremental Virtualization during the E-Mode

IP.com Disclosure Number: IPCOM000104549D
Original Publication Date: 1993-May-01
Included in the Prior Art Database: 2005-Mar-19
Document File: 4 page(s) / 136K

Publishing Venue

IBM

Related People

Ekanadham, K: AUTHOR [+3]

Abstract

MSIS is a uniprocessor organization in which a set of processing elements (PE) working in concert execute Segments of the instruction stream. The Segments are either P-Segments, normal uniprocessor instruction stream portions, that are processed in the E-MODE of MSIS and produce Z-Segments, or the Z-Segments that are processed in Z-Mode by MSIS. The main difference between E-MODE and Z-MODE is that during E-MODE each PE sees all instructions in the Segment and executes the ones that are assigned to it, but during Z-Mode, a PE only sees the instructions assigned to it.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 39% of the total text.

Multisequencing A Single Instruction Stream Incremental Virtualization during the E-Mode

      MSIS is a uniprocessor organization in which a set of
processing elements (PE) working in concert execute Segments of the
instruction stream.  The Segments are either P-Segments, normal
uniprocessor instruction stream portions, that are processed in the
E-MODE of MSIS and produce Z-Segments, or the Z-Segments that are
processed in Z-Mode by MSIS.  The main difference between E-MODE and
Z-MODE is that during E-MODE each PE sees all instructions in the
Segment and executes the ones that are assigned to it, but during
Z-Mode, a PE only sees the instructions assigned to it.

      As all PE's see all instructions in E-MODE, each PE can create
the Z-CODE it will require to re-execute the Segment as a Z-Segment,
the Z-CODE being stored in the Z-CACHE, and associated with
instructions in the Z-CODE are S-LISTS and D-LISTS as appropriate.
An S-LIST instructions the PE, the Z-MODE, that one or more of the
source registers in an instruction assigned to it is set by another
instruction that is executed on another PE, and S-LIST is a receiving
obligation.  The D-LIST instructs the PE in the Z-MODE as to the
names of PE's that require the values of the register(s) that are
being set by an instruction that is assigned to it.  A D-LIST entry
is a sending obligation.

      The set of instructions assigned to a single PE, can be further
delineated as THREADS.  A THREAD is a sequence of instructions in the
original conceptual order and a Thread is associated with a register
file which is either real or virtual.  There are no sending or
receiving obligations between instructions within a THREAD and the
THREAD is the smallest unit of aggregation of instructions from a
SEGMENT.

      The sequence of instructions that comprise a THREAD are in
conceptual sequence but THREADS can be interdigitated to form DECODER
STREAMS - the sequence of instructions that are issued by a single
DECODER.  Such a Z-CODE is called Out-Of-Sequence (OOS) Z-CODE.

      INCREMENTAL VIRTUALIZATION DURING THE E-MODE - The operation of
OCCUPANCY ASSIGNMENT ALGORITHM (OAA)s to schedule the decode of a
single instruction stream based on the earliest available decode slot
time that is consistent with the availability of its inputs.  There
are several aspects of the use of the OAA that relate to the total
incremental aspect of the assignment of instructions to labelled
THREADS.  There are three aspects of assignment that relate to OOS
Z-CODE.  These are:

o   The assignment of the PE.

          It is clear that the point of assignment is the point of
    control over the number of THREADS used by the OOS Z-CODE.  That
    is, the assignment of an instruction to a PE is the sole source
    of change in the eventual number of THREADS required by the
    design.  That change, if made is irrevocable.
o   The assignment of the THREAD

       ...