Browse Prior Art Database

Exclusive OR Performance Enhancement

IP.com Disclosure Number: IPCOM000053144D
Original Publication Date: 1981-Sep-01
Included in the Prior Art Database: 2005-Feb-12
Document File: 2 page(s) / 54K

Publishing Venue

IBM

Related People

Angiulli, JM: AUTHOR [+2]

Abstract

The IBM System/370 Exclusive-OR (XC) instruction takes the exclusive-OR of the first and second storage operands and places the result in the first operand location. The instruction is often used to zero-out a field, i.e., exclusive-ORing a field with itself.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 66% of the total text.

Page 1 of 2

Exclusive OR Performance Enhancement

The IBM System/370 Exclusive-OR (XC) instruction takes the exclusive-OR of the first and second storage operands and places the result in the first operand location. The instruction is often used to zero-out a field, i.e., exclusive-ORing a field with itself.

This performance enhancement improves the execution time of certain high performance processors in two cases where: 1. Source (SRC) Address (1st Opnd) = Destination (PST) Address (2nd Opnd) This saves one execution cycle.
2. SRC Address = DST Address and the address is on a line boundary with length >/- one line. This saves (N-1) execution cycles, where N is the number of access units (e.g., double words) in a line. Case 1: SRC=DST, Line is Spanned

One cycle is saved for all cases of SRC=DST address except when operand length is </- one-half a line and the address is on a double-word (DW) boundary. This design consists of the addition of a second control store address register (CSAR) starting address for the XC instruction microcode. Zeroes are gated through the bit shifter and into the cache's input registers in the first execution cycle rather than using that cycle solely for branching.

The Instruction Element, with added hardware, does the SRC=DST compare during cycle 2 of instruction decode i.e., B1=D1 and D1=D2 (Fig. 1). Assuming SRC=DST compare, a second microcode entry point is set up which is different from the SRC=DST case. Case 2: SRC=DST, Line Spanned

The Instr...