3
JOSEPH A. O'BRIEN NONMEMBER AlEE Cyclic Decimal Codes for Analogue to Digital Converters C YCLIC decimal codes may be used in arialogue to digital converters of the reading type. Decimal number output is easily obtained for display to human operators or processing by decimal cal- culators.t-v" Decimal numbers, of course, are more generally used than binary and more frequently in simple computations. For definiteness, this paper is limited to a discussion of an encoder in which each measurable angular position of an input shaft is represented by a unique com- bination of conducting and nonconducting segments. These segments may be on a flat disk having many concentric tracks, as in Fig. 1, or segments may be on a cylinder having many adjacent tracks about the same axis, as in Fig. 2. All con- ducting segments are connected to a common voltage source. The remarks of this paper are equally applicable, how- ever, to other analogue to digital con- verters which assign to a physical position a unique code group which may be easily converted to a decimal number form. A brush in contact with a particular track may be either conducting or non- conducting at a particular time depend- ing on whether it is on a conducting or nonconducting portion of its track. The brushes are then used as 2-state or binary elements. N independent binary ele- ments can assume 2 n different combina- tions of states. Since 2 3=8 and 2 4= 16 at least 4 independent binary must be used to represent the 10 decimal digits 0 to 9. Four tracks and their associated brushes are used to assume, in sequence, 10 different combinations of binary states. A particular combination of states is con- sistently used to represent a particular decimal digit in equipment associated with the encoder. Since the 10 digits could be arbitrarily represented by any Paper 56-21, recommended by the AlEE Comput- ing Devices Committee and approved by the AlEE Committee on Technical Operations for presenta- tion at the AlEE Winter General Meeting, New York, N. Y .. January 3Q-February 3, 1956. Manu- script submitted June 23, 1955; made available for printing November 15, 1955. JOSEPH A. 0' BRIEN is with the Bell Telephone Laboratories, Inc., WhippanyJ N .. J. This study was conducted under the sponsorship of the Evans Signal Laboratory, Fort Monmouth N. J., on Contract ' 10 and the 16 possible combinations of states of 4 binary elements, 16!/6!ormore than 29 billion binary decimal codes are possible. 4 The present discussion is a systematic investigation of codes which will opti- mize the following parameters: Readout error. Number of encoder brushes. Average brush current. Number of translator components. Cyclic Number Sequence and Cyclic Digit Code Fig. 3 shows an array of conventional decimal numbers with a line passing through successive numbers. When the line moves from left to right, successive numbers differ in only one digit. When the line moves from right to left to connect successive numbers, these numbers differ in more than 1 digit. Fig. 4 shows a cyclic number sequence. The line con- necting successive numbers moves from left to right or right to left making a change of only one digit between succes- sive numbers. A cyclic number sequence is defined as a sequence of numbers in which pairs of successive numbers differ in only one digit. The digits which differ are successive digits such as 0 and 1, 1 and 2, 8 and 9, or 9 and O. Readout error and the number of brushes may be minimized by using a cyclic number sequence and a cyclic digit code. If a conducting brush is repre- sented by 1 and a nonconducting brush is represented by 0, the states of four brushes at a particular time may be represented by a 4-digit binary number which in turn represents a decimal digit. A cyclic decimal code is defined as a set of 10 words, each containing four binary digits, in which successive words includ- ing the first word and the last word differ in only one binary digit. An angular position encoder which uses both a cyclic number sequence and a cyclic digit code, will have only one brush change from conducting to nonconducting or the reverse in going from one sector to the next. In one complete revolution of the input shaft all consecutive pairs of words read from the brushes differ in only one binary digit. In this respect the code is similar to the reflected binary code and only one set of brushes lying on a radial line is required. Encoders using a conventional number sequence require at least two brushes per track to prevent errors in readout that might occur at shaft positions where the output number changes in many. digits at one time. Brushes, in general, will not lie on radial lines. Map Method of Code Analysis The It> combinations of states of four binary elements may be represented by the map shown in Fig. 5. 5 ,6 The four successive values of both the horizontal and vertical co-ordinates are 00 01 11 and 10. If the vertical termed ab, and the horizontal co-ordinate is termed cd, the co-ordinates of a square abed, are a 4-binary digit number. Each square on the map represents a unique 4- digit binary number or word. The decimal number within the square is equal to the binary number expressed by the co-ordinates of that square. Squares that are geometrically adjacent differ in only one binary digit. Two squares at opposite edges of the map, in the same horizontal row or in the same vertical column, differ in only one binary digit. Squares located symmetrically about a horizontal (or vertical) centerline also differ in only one binary digit. These conditions are defined as "adjacent." Designing a cyclic decimal code is then a simple geometry problem. A progressive sequence of 10 squares must be chosen so that successive squares, including the 1Oth square and the first square are adjacent. Two pairs of consecutive digits, 4 and 5, and 9 and 10, are also 9's complement pairs. Each of these four digits must be adjacent on the map to its 9's complement. If the six additional digits are also chosen so that any digit and its complement differ in one particular binary digit, 9's comple- menting is easily mechanized. The complementing of 9's is required to convert from cyclic to conventional Fig. 1. Angular position disk encoder 120 O'Brien-Cyclic Decimal Codesfor Analogue Converters MAY 1956

Cyclic decimal codes for analogue to digital converters

Embed Size (px)

Citation preview

Page 1: Cyclic decimal codes for analogue to digital converters

JOSEPH A. O'BRIENNONMEMBER AlEE

Cyclic Decimal Codes for Analogue to

Digital Converters

CYCLIC decimal codes may be used inarialogue to digital converters of the

reading type. Decimal number output iseasily obtained for display to humanoperators or processing by decimal cal­culators.t-v" Decimal numbers, of course,are more generally used than binary andmore frequently in simple computations.

For definiteness, this paper is limited toa discussion of an encoder in which eachmeasurable angular position of an inputshaft is represented by a unique com­bination of conducting and nonconductingsegments. These segments may be on aflat disk having many concentric tracks,as in Fig. 1, or segments may be on acylinder having many adjacent tracksabout the same axis, as in Fig. 2. All con­ducting segments are connected to acommon voltage source. The remarks ofthis paper are equally applicable, how­ever, to other analogue to digital con­verters which assign to a physical positiona unique code group which may be easilyconverted to a decimal number form.

A brush in contact with a particulartrack may be either conducting or non­conducting at a particular time depend­ing on whether it is on a conducting ornonconducting portion of its track. Thebrushes are then used as 2-state or binaryelements. N independent binary ele­ments can assume 2n different combina­tions of states. Since 23=8 and 24= 16at least 4 independent binary element~must be used to represent the 10 decimaldigits 0 to 9.

Four tracks and their associatedbrushes are used to assume, in sequence,10 different combinations of binary states.A particular combination of states is con­sistently used to represent a particulardecimal digit in equipment associatedwith the encoder. Since the 10 digitscould be arbitrarily represented by any

Paper 56-21, recommended by the AlEE Comput­ing Devices Committee and approved by the AlEECommittee on Technical Operations for presenta­tion at the AlEE Winter General Meeting, NewYork, N. Y .. January 3Q-February 3, 1956. Manu­script submitted June 23, 1955; made available forprinting November 15, 1955.

JOSEPH A. 0'BRIEN is with the Bell TelephoneLaboratories, Inc., Whippany J N .. J.

This study was conducted under the sponsorship ofthe Evans Signal Laboratory, Fort MonmouthN. J., on Contract ·NOa(s)55-86~. '

10 and the 16 possible combinations ofstates of 4 binary elements, 16!/6!ormorethan 29 billion binary decimal codes arepossible. 4

The present discussion is a systematicinvestigation of codes which will opti­mize the following parameters:

Readout error.Number of encoder brushes.Average brush current.Number of translator components.

Cyclic Number Sequence andCyclic Digit Code

Fig. 3 shows an array of conventionaldecimal numbers with a line passingthrough successive numbers. When theline moves from left to right, successivenumbers differ in only one digit. Whenthe line moves from right to left to connectsuccessive numbers, these numbers differin more than 1 digit. Fig. 4 shows acyclic number sequence. The line con­necting successive numbers moves fromleft to right or right to left making achange of only one digit between succes­sive numbers. A cyclic number sequenceis defined as a sequence of numbers inwhich pairs of successive numbers differin only one digit. The digits which differare successive digits such as 0 and 1, 1 and2, 8 and 9, or 9 and O.

Readout error and the number ofbrushes may be minimized by using acyclic number sequence and a cyclic digitcode. If a conducting brush is repre­sented by 1 and a nonconducting brushis represented by 0, the states of fourbrushes at a particular time may berepresented by a 4-digit binary numberwhich in turn represents a decimal digit.A cyclic decimal code is defined as a setof 10 words, each containing four binarydigits, in which successive words includ­ing the first word and the last word differin only one binary digit.

An angular position encoder which usesboth a cyclic number sequence and acyclic digit code, will have only one brushchange from conducting to nonconductingor the reverse in going from one sector tothe next. In one complete revolution ofthe input shaft all consecutive pairs ofwords read from the brushes differ in only

one binary digit. In this respect the codeis similar to the reflected binary code andonly one set of brushes lying on a radialline is required.

Encoders using a conventional numbersequence require at least two brushes pertrack to prevent errors in readout thatmight occur at shaft positions where theoutput number changes in many. digits atone time. Brushes, in general, will notlie on radial lines.

Map Method of Code Analysis

The It> combinations of states of fourbinary elements may be represented bythe map shown in Fig. 5.5,6 The foursuccessive values of both the horizontaland vertical co-ordinates are 00 01 11and 10. If the vertical co-ordina~e'i~termed ab, and the horizontal co-ordinateis termed cd, the co-ordinates of a squareabed, are a 4-binary digit number. Eachsquare on the map represents a unique 4­digit binary number or word. Thedecimal number within the square is equalto the binary number expressed by theco-ordinates of that square.

Squares that are geometrically adjacentdiffer in only one binary digit. Twosquares at opposite edges of the map, inthe same horizontal row or in the samevertical column, differ in only one binarydigit. Squares located symmetricallyabout a horizontal (or vertical) centerlinealso differ in only one binary digit. Theseconditions are defined as "adjacent."Designing a cyclic decimal code is then asimple geometry problem. A progressivesequence of 10 squares must be chosen sothat successive squares, including the 1Othsquare and the first square are adjacent.

Two pairs of consecutive digits, 4 and5, and 9 and 10, are also 9's complementpairs. Each of these four digits must beadjacent on the map to its 9's complement.If the six additional digits are also chosenso that any digit and its complement differin one particular binary digit, 9's comple­menting is easily mechanized. Thecomplementing of 9's is required toconvert from cyclic to conventional

Fig. 1. Angular position disk encoder

120 O'Brien-Cyclic Decimal Codesfor Analogue Converters MAY 1956

Page 2: Cyclic decimal codes for analogue to digital converters

1~6"CD fig. S (left). &t£±j tilitB00 01 II :0 Decimal map00 0 3 ~

X X

5 I 7 I 6 ICLASS I CLASS 2A

01 4

II 12 -I~~~ tB:1Hj10 8 9 II 10J X X

CLASS 2B

tIffiE tfttj- Fig. 6 (right). x x x xBasic half maps CLASS 2C CLASS 2D

Fig. 2. Angular position drum encoder

-=-\0--II--12--13--14--IS--16--17--18--19-+-

)\B\(:D

;roo 01 II 10---~-T------'

00 0 _I 2l-~ I01 I 2 3 2

Fig. 7. Deci- II 2 3 4 3mal symmetry

10 I 2 3 2map-------------099=--~090-----

--=IOO-----------------------~

ular half-map would list the three emptysquares with the use of the decimal digitsfound in the squares of Fig. 5. Thus themap listed in Fig. 6 as class 1 might becalled code 567.

Fig. 7 shows a decimal symmetry map,i.e., the number within a square is thesum of the number of l's in the co­ordinates of that square. Since a 1corresponds to a conducting brush, thismap is very useful in choosing codes thathave words containing the smallestnumber of l 's.? In choosing a binarydecimal code to use minimum brush cur­rent, it would be desirable to use the fol­lowing conditions: one word containingfour zeros, four words each containingone 1, and five words each containingtwo 1'so That is, no more than twobrushes are ever conducting at the sametime. This would give a sum of 14 con­ducting brushes for the 10 decimal digits.Unfortunately, this code is not cyclic.Fig. 8 shows the code in each class con­taining the smallest sum of l 's of the co­ordinates of the occupied squares.Classes 1, 2a, and 2c (codes 567, 347, and357) are the only codes having sums of 15.Classes 2b and 2d (codes 347 and 167)have sums of 17, as do seven additionalmaps not shown.

Since cyclic codes cannot be easilymechanized for addition or other arith­metic operations, it is desirable to trans­late to a constant posit.ive weight code.A cyclic decimal code is desirable thatcan be translated to the I, 2, 4, 8 codewith the minimum number of components.The map of the translator output code isshown in Fig. 9; Capital letters A, B, C,and D are used to represent the outputlines. If translator input lines are labeledwith lower case letters a, b, c, and d, the

Fig. 4. Cyclic num­bersequence

Fig.:3. Conventionalnumber.t sequence

08 -09~

18-19

71/512 t) do not contain the word "0000."Of the 35 selections, 30 meet the require­ment of a cyclic decimal code which pro­duces 9's complement by complementingone particular binary digit. Of the 21selections, 18 form cyclic decimal codes.

Permutation of a code corresponds torelabelling the brushes in a differentorder or shifting the relative positions offour tracks radially without changingthe identifications of the brushes. Com­plementation of a code corresponds tointerchanging conducting and noncon­ducting segments in a particular track.Complementation of any of the 48 codesproduces another code which is a memberof the set of 48. Analysis of 48 half-mapsthen, is a rigorous investigation of alldesirable possibilities.

A systematic way of specifying a partie-

-00-01

-.....900---------------------999=-

-=CX)()-----------------------1~

number sequence. Code analysis issimplified if a digit and its 9's comple­ment occupy squares on the map sym­metrical about a horizontal centerline.(Identical results would be obtainedfrom symmetry about a vertical cen­terline.)

Initial investigation proceeds usinghalf-maps of eight squares, five of whichare occupied by digits. Fig. 6 shows thehalf-maps in which five squares may beconnected by a line lying entirely withinthe map. This classification is ratherarbitrary, but gives an illustrative ex­ample from the set of 48 maps that mustbe investigated. Five squares may bechosen from a group of eight squares in5C8= 8!/ 5131= 56 ways. Of these, 4C7=7!/4131 = 35 selections contain the word"0000." Twenty-one selections (sC7 =

(120 -

110-------------.-----------119JC: ~

MAY 1956 O'Brien-Cyclic Decimal Codes [or Analogue Converters 121

Page 3: Cyclic decimal codes for analogue to digital converters

00 01 II 1000 X X X X

01 X

II X

10 X X X X

CLASS IS = 15

00 01 II 10

00 X X X

01 X X

II X X

10 X X X

CLASS 2cS =15

00 01 II 10

00 X X X

01 X X

II X X

10 X X X

CLASS 2bS =17

00 01 II 10

00 X X X

01 X X

II X X

10 X X X

CLASS 2aS = 15

00 01 II 10

00 X X X

01 X X

II X X

10 X X X

CLASS 20S = 17

Fig. 11 (right). Optimumdrum code mop: 21 springs

A=ac'8 =c(d+b)C=b'cD= d'(c'd+b'cd ')+a(b+

c'd/-l-cd)$=17

IbL

0 I 2 34

59 8 7 6

Fig. 8. Minimum brush current codes

.1X X X x J8,9f- a I 2 3 4 5 6 7 8 9 9 8 7 6 5 4 3 2 0L X X X X

rdJ (A)4,5,6,7

EX xX X

X X1)3,5,7,9

lA

JLc--.J

axX X

X X

X XLc--.J

2)3)6)7

I D,0 I 3 2r 4 5 7 6

8

L8 9

Fig. 9. Binary coded decimal translator output maps (B)

Fig. 12. Code patterns

A-Drum encoder pattern B-Disk encoder pattern

Fig. 10. Optimum disk code map: 23 springs

A=dCB=c'd'+dc'C=c'dD= a(b'c' -l-d')+d'd(b+c)S=19

6. A CHART METHOD FOR SIMPLIFYING TRUTHFUNCTIONS, E. W. Veitch. Proceedings, Associ­ation for Computing Machinery) Pittsburgh, Pa.,May 1952.

7. THE RECOGNITION AND IDENTIFICATION OPSYMMETRIC SWITCHING FUNCTIONS, S. H. Caldwell.AlEE Transactions, vol. 73, pt. I, May 1954, pp.142-47.

2. INTERCONVERSION OF AN ALOG AND DIGITALDATA IN SYSTEM FOR MEASUREMENT AND CONTROL,B. L. Lippe!. ius., 1952.

3. A HIGH-PRECISION ANALOG-TO-DIGITAL CON­VERTER, B. L. Lippel. tus., 1951.

4. SYNTHESIS OF ELECTRONIC COMPUTING ANDCONTROL CIRCUITS (book). Harvard ComputationLaboratory Series, Harvard University Press,Cambridge, Mass., vol. 27, 1951) chap. XI.

5. THE MAP METHOD FOR SYNTH'ESIS OF COM­BINATIONAL LOGIC CIRCUITS, M. Karnaugh.AlEE Transactions, vol. 72, pt. I, Nov. 1953, pp.593-99.

1. CRITERIA FOR THE SELECTION OF ANALOG TODIGITAL CONVERTERS, G. L. Hollander. Proceed­ings, National Electronics Conference, Chicago, 111.,1953.

Referencessquares in which digits of a cyclic codeshould be chosen are indicated in theremaining maps.

Figs. 10 and 11 show maps of theoptimum codes for coded disk elementsand coded drum elements respectively.Since a minimum brush current codewill not also result in minimum numberof translator relay springs and the re­verse, the "optimum" codes are the bestcompromise between these two conflict­ing requirements.

Here, a disk code is defined as acode that does not use the word "0000,"and a drum code does use the word' '0000"Fig. 12(A) and (B) show the, patternsthese codes will fonn on the coded ele­ments. In Fig. 12(B) a permutationof the code in Fig. 11 is used to obtain themost desirable placement of tracks.

Ia

~Lc~

2 I 04 3

5 67 8 9

,­bL

122 0'Brien-Cyclic Decimal Codesfor A nalogue Converters MAY 1956