
View
219
Download
3
Embed Size (px)
Transcript
JOSEPH A. O'BRIENNONMEMBER AlEE
Cyclic Decimal Codes for Analogue to
Digital Converters
CYCLIC decimal codes may be used inarialogue to digital converters of thereading 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
1~6"CD fig. S (left). &tj tilitB00 01 II :0 Decimal map00 0 3 ~ X X5 I 7 I 6 I
CLASS I CLASS 2A01 4
II 12 -I~~~ tB:1Hj10 8 9 II 10J X XCLASS 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