Browse Prior Art Database

# Implementation of Selection Functions for Data Encryption Standard

IP.com Disclosure Number: IPCOM000035698D
Original Publication Date: 1989-Aug-01
Included in the Prior Art Database: 2005-Jan-28
Document File: 2 page(s) / 41K

IBM

## Related People

Weinberger, A: AUTHOR

## Abstract

Each Selection Function of the Data Encryption Standard (DES) algorithm consists of a logic function generator of 4 functions of 6 variables. It is implemented in 2 CSEF (Current Switch Emitter Follower) stages of delay.

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 73% of the total text.

Page 1 of 2

Implementation of Selection Functions for Data Encryption Standard

Each Selection Function of the Data Encryption Standard (DES) algorithm consists of a logic function generator of 4 functions of 6 variables. It is implemented in 2 CSEF (Current Switch Emitter Follower) stages of delay.

Fig. 1 shows the functions (F1, F2, F3, and F4) of the 6 variables (labeled A1, A6, A2, A3, A4, and A5, in the order described in the standard) for the first Selection Function, S1. The 4 functions are complex, each comprised of 32 minterms.

The logic implementation makes use of the fact that all possible useful functions of 2 variables, A and B, consist of A, B, A-B-, A-B, AB-, AB, and AxorB, and their complements. The 6 variables are, therefore, (arbitrarily) divided into a 4-bit and a 2-bit group. The 4-bit group is decoded to select one of the specified 16 subfunctions of the remaining 2 variables for each of the 4 functions. The equations are shown in Fig. 2 for both the true and the complement functions. The complement functions use the same decode outputs but with complement subfunctions.

Fig. 3 shows the implementation using current switch gates 4, with NOR outputs 5, OR outputs 6, collector dotting 7, and emitter dotting 8. The first stage partially decodes the 4-bit group as two 2-bit decoders whose output combinations provide the final decode. At the same time, the 2-bit group generates the various functions of 2 variables. Note that only 8 signals need to be generated,...