Vector Shift and Divide Decimal Instruction for BCD Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional code for performing BCD divide operations is complex and requires lengthy sequences of instructions, failing to provide the full quotient with fraction digits in computing environments.

Innovation Solution

A single architected machine instruction, the Vector Shift and Divide Decimal instruction, shifts and divides a value by a user-defined amount to produce a quotient with integer and fraction digits, replacing the complex sequence with a single operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional code is used for BCD divide operations, then the operation can be performed, but the instruction sequence is lengthy and complex

Engineering Contradiction:
Improveprocessing speedVSAvoidinstruction sequence complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple separate operations (shift operations to align decimal points, division operations, and result formatting) into a single integrated instruction. This single instruction performs the complete scaled BCD division in one atomic operation, eliminating the need for lengthy instruction sequences while maintaining full functionality for computing quotients with fraction digits

Inventive Principle:
Principle #5Merging (Combining)

2Ease of operation

If conventional integer divide is used, then the operation is simple, but the fraction digits are missing

Engineering Contradiction:
Improveoperation simplicityVSAvoidfraction digits
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The instruction performs preliminary actions internally - it automatically shifts the dividend and divisor to align their decimal points based on their scale factors before performing the division. This preliminary alignment ensures that the quotient contains the correct fraction digits without requiring additional操作步骤 from the programmer

Inventive Principle:
Principle #10Preliminary action

3Productivity

If a single instruction is used, then performance improves, but the instruction must handle complex scaled BCD division

Engineering Contradiction:
Improveexecution performanceVSAvoidinstruction functionality
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The single scaled BCD division instruction is designed to handle multiple functions within itself: it determines scale factors from format descriptors, performs alignment shifts, executes the division, and formats the result with appropriate fraction digits. This multi-functional design allows one instruction to replace what would otherwise require several separate instructions

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3519939B1Decimal shift and divide instruction
Publication Date: 2020.03.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • EP3519939B1 patent drawingFigure 1A
  • EP3519939B1 patent drawingFigure 1B
  • EP3519939B1 patent drawingFigure 2A~2B

AI summary

An instruction to perform a shift and divide operation is executed. The executing includes shifting a value in a specified direction by a selected amount to provide a dividend, the selected amount being user-defined. The dividend is divided by a divisor to obtain a quotient. At least a subset of the quotient is selected as a result. The result is to be used in processing within the computing environment.