`{11] Patent Number:
`114
`United States Patent
`Janney et al.
`(45) Date of Patent:
`Apr. 23, 1991
`
`
`[54] DATA LOGGING APPARATUS
`[75]
`Inventors: Mark A, Janney, Temple; Roger
`Newey, Scottsdale; Irwin J.
`Robinson, III, Mesa, all of Ariz.
`[73] Assignee: Marconi Instruments, Inc.,
`Scottsdale, Ariz.
`
`(21] Appl. No.: 297,690
`[22] Filed:
`Jan. 17, 1989
`[51]
`Uante C45 coscccsssssscsssssccessscssscsscesessseee Go4F 10/00
`[52] U.S. CR,sessssssscssneesessesesssssseee 377/20; 364/569,
`
`368/118
`[58] Field of Search .......sccsssssseccee 377/20; 364/569;
`368/118
`
`{56}
`
`References Cited
`U.S. PATENT DOCUMENTS
`4,166,360 9/1979 Yamaguchi -..scscsensssssnee 377/20
`
`9/1979 Eichelbergeretal.............. 364/900
`4,168,531
`4,195,220 3/1980 Bristol et al.eee 377/20
`
`4,598,375 7/ions Hiramatsu et al. wes 364/569
`....nccscscecssssscsssessee 364/569
`4,677,580
`6/1987
`Suluski
`
`8/1987 Whitaker oo... 377/20
`4,685,061
`4,712,072 12/1987 Kawanabe oo... 377/20
`Primary Examiner—John S. Heyman
`Attorney, Agent, or Firm—Kirschstein, Ottinger, Israel
`& Schiffmiller
`
`ABSTRACT
`[57]
`In data logging applications an apparatus for real-time
`Stamping data includes a reference time base, a short
`Stopwatch circuit operative for generating a short-time
`stamp, and along stopwatch circuit operative for gener-
`atingatintervals a long-time stamp. Data to be logged
`With the short-time stamp is combined therewith and
`stored. A controller circuit controls the storage of the
`data and of the long-time and the short-time stamps.
`The controller circuit stores the long-time stamp at
`predeterminedintervals.
`
`5 Claims, 4 Drawing Sheets
`
`
`REFERENCE
`TIMEBASE
`
`
`
`SHORT STOPWATCH
`
`LONG STOPWATCH
`
`CONTROLLER
`
`
`
`DATA TO BE
`
`
`
`LOGGED
`
`
`
`
`
` DATA OR
`FLAG
`SHORT TIME STAMP
`
`33
`
`MULTIPLEXER
`
`
`
`LONG TIME STAMP
`
`STORE
`
`13)
`
`3
`
`1
`
`APPLE 1121
`Apple v. Logan Tree
`IPR2022-00037
`
`APPLE 1121
`Apple v. Logan Tree
`IPR2022-00037
`
`1
`
`
`
`U.S. Patent
`
`Apr. 23, 1991
`
`Sheet 1 of 4
`
`5,010,560
`
`Fig. 1 Peyor Art
`
`REFERENCE
`
`TIMEBASE
`
`DATA AND TIME STORE
`
`Fig.2.
`
`9-BIT TIME
`123
`500
`488
`476
`464
`
`DATA
`000A
`000B
`000C
`0000
`QOO00E
`
`FULL - TIME
`0123
`0500
`1000
`1500
`~ 2000
`
`Fig.3.
`
`MODULO - 9-BIT TIME
`123
`500
`488
`478
`
`476
`
`464
`464
`
`DATA
`000A
`000B
`000C
`0000
`
`[0003]
`
`000E
`[0008]
`
`FULL-TIME
`0123
`0500
`1000
`1500
`
`2012 | INTERVAL=2548
`
`4048
`4560
`
`{
`
`J INDICATE LONG TIME STAMPS
`
`2
`
`2
`
`
`
`U.S. Patent
`
`Apr. 23, 1991
`
`Sheet 2 of 4
`
`5,010,560
`
` DATA TO BE
`LOGGED
`
` CONTROLLER
`
`33
`
`
`
`
`FLAG©SHORT TIME STAMP DATA OR
`LONG TIME STAMP|2!ORE
`
`13/
`13
`
`3
`
`
`
`U.S. Patent
`
`Apr. 23, 1991
`
`Sheet 3 of 4
`
`5,010,560
`
` CARRY
`
`SYNCHRONOUS
`
`
`
`COUNTER 50
`/= NEGATED INPUT
`OPBIWEND~~
`
`
`NOT SAFE
`
`8 7 6 5 4 3 2 1 0
`
`65
`
`tflag
`
`|
`
`a b
`
`NOT SAFE
`
`4
`
`
`
`U.S. Patent
`
`Apr. 23, 1991
`
`Sheet 4 of 4
`
`5,010,560
`
`JLLCN™_)STOCOL,oSLON
`LFLSEFLPLUrFLseurLrlw»
`
`
`aee|aasen|)
`L901$8774'$O02E4;42614tHILVMdOLS
`—————}4-—_-___+——-}+—
`dWVLS3WILONOTY(S9)9019
`
`
`
`
`dWVLS3WILONOT¢(161)9019
`
`
`
`
`99874OZEZ6L"9
`
`ZOlf
`
`
`
`
`LYOHS
`
`Y3A0TIOUNF
`
`geOly
`
`
`
`Bo1J4
`
`5
`
`
`
`1
`
`DATA LOGGING APPARATUS
`
`BACKGROUNDOF THE INVENTION
`
`1. Field of the Invention
`The present invention concerns data handling sys-
`tems and in particular systems where items of data have
`to be tagged with real-time information.
`2. Description of Related Art
`Thus data logging applications sometimes require the
`inclusion of real-time information with each data sam-
`ple. This is particularly so when data samples are re-
`ceived by the data loggerat irregular timeintervals e.g.
`in logic analysis systems. Real-time information can be
`appended to the data by simply increasing the width of !5
`the data store and storing the value of a stopwatch
`alongside the data. Stopwatch is a term used in the
`specification to denote a timing device which accumu-
`lates the time elapsed since the beginning of operation. 20
`This process is known as Time Stamping.
`This is a simple form of time stamping but one which
`has notable disadvantages. In order for the timekeeper
`or stopwatch to possess a large dynamic range it must
`be manybits in width. It may perhaps be even wider
`than the data word. This consumes a considerable
`amountofthe total store. Also, the stopwatch must be
`able to count time at the maximum data logging rate.
`This rate could be considerable and maytherefore pre-
`clude the use ofrelatively simple but slow, ripple type
`counters. It may also preclude the use of slower less
`expensive technologies.
`OBJECTS OF THE INVENTION
`
`25
`
`30
`
`One object of the present invention is to provide
`apparatus for adding real-time information to data sam-
`ples which reduces the total amount of memory re-
`quired to store the time-stamped data samples.
`Another object is to reduce the required operating
`frequency of the time stamp counters. A still further
`object of the invention is to permit the use of slower,
`less expensive and lower power consumption time
`stamp counters.
`
`35
`
`40
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`45
`
`In order that the invention may be more readily un-
`derstood an embodimentthereof will now be described
`with reference to the accompanying drawings,
`in
`which:
`FIG.1 is a functional block diagram of a known data
`time stamping circuit according to the prior art;
`FIG.2 is a table illustrating a short time stamp;
`FIG.3 is a tableillustrating a long time stamp;
`FIG.4 is a functional block diagram of a data time
`stamping circuit according to the present invention;
`FIG. 5 is a block diagram ofpart of the circuit of 55
`FIG.4;
`FIG.6 is a block diagram of another part ofthecir-
`cuit of FIG.4;
`FIG.7 is a timing diagram of the operation of the
`circuit of FIG. 5; and
`:
`FIG.8 is a diagram illustrating intervals at which the
`long time stamping occurs.
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`65
`
`Referring now to the accompanying drawings, FIG.
`1 shows a known apparatus for time stamping data
`samples. Thus a reference timebase 10 provides a clock
`
`5,010,560
`
`2
`signal to a time-keeper or stopwatch circuit 11. Data
`samples to be logged and stored are transmitted on lines
`12 and the apparatus is arranged such that when a data
`sample is to be stored the time as established by the time
`keeper circuit is appended to the data sample and the
`two items of data are stored alongside one another in a
`store 13.
`The disadvantages of this time-stamping procedure
`havealready beenset out. In order to avoid these disad-
`vantages the present invention proposes that the full
`time should not be stored with each data sample. In-
`stead the time stamping apparatus stores only a small
`number“n”of the least significant bits of the stopwatch.
`Hereinafter this will be referred to as the “short time
`stamp”. The use of the short time stamp enables the
`width of the store required for the time stamp to be
`reduced significantly. So long as data is stored more
`frequently than the ful! duration of the counter which
`acts as the time keeper (2 to the power of n) then no
`time information will be lost. In the example shownin
`the table of FIG. 2 the value of “‘n”is 9.
`In this example the full duration of the counteris 2 to
`the power of 9 which equals 512. Each of the data sam-
`ples is known to be no more than 512 time units distant
`from the previous data sample. If a short time-stampis
`less than or equal to the previous short time stamp, then
`the short counter overflowed, rolling-over from 511
`back to 0. In this case 512 must be added to compensate
`for the roll over. Consider the following examples:
`
`Time of data 000OB =
`
`Example !
`
`{500 — 123|
`;
`
`Time of Data 000A + Wotcllover
`
`Time of data 000C =
`
`Example 2
`
`Time of Data OOOB + 488 ~
`
`[500 + 512]
`Roll-over
`
`= 1000
`
`This method is sufficient if data is stored at intervals
`less than or equal to 512 time units. Howeverif data
`storage is less frequent, then significant bits of time
`information will be lost. The loss of time information
`can be avoided by storing the full value of the stop-
`watch before the time interval between samples is al-
`lowed to exceed 512. This is known as the ‘full time-
`stamp’ and is demonstrated in FIG. 3. Whentheinterval
`between samples becomes equal to 512, a sample con-
`taining only time information (no data) is stored. The
`short time-stampis stored in the normal manner,and the
`space which is normally reserved for data is used to
`store the remainder of the stopwatch (the moresignifi-
`cant bits) or the ‘long time-stamp’. The short time stamp
`and the long time stamp taken together constitute the
`full time stamp.
`In FIG.3, the digits within the square brackets are in
`fact long time-stamps rather than data. In order to dis-
`tinguish long time stamps from data it is necessary to
`add one morebit to the width of the store. This bit can
`then be used as a flag to indicate whether this item is
`data or long time-stamp.
`The full time for any data sample can now be com-
`puted by working backwards from thefirst full time-
`stamp—to follow. Consider the following examples
`from FIG.3.
`
`Full time-stamp following data OOOD =
`
`Example 3
`
`6
`
`
`
`3
`continued
`
`5,010,560
`
`@ X 512) + 476 = 2012
`
`Time of data 000D =
`
`]}476 + 476 — 512]
`.
`(ull time-stamp) —ola = 1500
`
`Time of data O0OOC =
`
`Example 4
`
`|476 + 488 — 512|
`.
`(Time of data 000D) — ———<——---———. = 1000
`Roll-over
`
`Notice also that once a full time-stamp has been stored,
`it is not necessary to store morefull time-stamps evenif
`the interval to the next data sample is many times 512.
`The time value in the long stopwatch changes infre-
`quently (every 512 time intervals. When the short stop-
`watch rolls over from 511 back to 0). It is accordingly
`desirable to implementit using relatively slow and inex-
`pensive components. For this reason the time stamper
`never attempts to store a full time-stamp during one of
`these changes.
`It is not necessary to store the full time stamp when
`the interval exactly equals 512 as shownin FIG.3.It is
`sufficient to store the full time-stamp at any time before
`then. This gives some flexibility in the decision as to
`whento store a full time-stamp. This flexibility is used
`to avoid storing a full time-stamp in proximity to the
`time when the long time-stamp increments.
`Referring now to FIG. 4 of the accompanying draw-
`ings the data logging apparatus shownin this figure
`shares certain features in common with the knownar-
`rangement shown in FIG. 1. Features which are com-
`monto the two embodiments have been given the same
`reference numerals. However in the FIG. 4 embodi-
`ment the output of the reference tire base 10 is firstly
`taken to a short stopwatch circuit 30 which is in turn
`connected to a long stopwatchcircuit 31 by a carry line
`32.
`The short stopwatch circuit gives shortened time
`signals of the kind shownin the first column of FIG. 2
`to a controller circuit 33. The controller 33 is responsi-
`ble for deciding when to store the long time stamp
`which is output by the long stopwatch circuit 31.
`The input “log” to the controller circuit 33 signifies
`that data is present for logging—the controller circuit
`33 monitors the “log” input and the short stopwatch 30
`and determines the optimum times at which to store
`long time stamps from the long stopwatch 31.
`When a long stopwatchis to be stored in the store 13
`the controller 33 switches a multiplexer 34 to pass the
`long stopwatch to the store 13.
`The controller circuit 33 simultaneously generates a
`flag whichis stored at 13’ in store 13 to indicate thatit
`is not data which is being stored in store 13 but a long
`time stamp. When the long time stamp has been stored
`the controller circuit 33 switches the multiplexer 34 to
`pass data to the store 13 and also removes theflag.
`The controller is comprised of the circuits which
`appear in FIGS. § and 6. The circuit shown in FIG. 5
`comprises a synchronous counter 50 having outputs 0-8
`providing the short stopwatch. A signal CK is the mas-
`ter clock input and acts as the reference time base. Sig-
`nal r is a reset signal which is pulsed 1 at the counter
`beginning of our operation and clears the stopwatch
`counter to 0. A Nand-gate 51 is connected to the out-
`puts 0-6 of counter 50 so as to produce a 0 output at the
`four count values 63, 191, 319 and 447. The output of
`
`40
`
`45
`
`55
`
`65
`
`4
`Nand-gate 51 is connected to a flip-flop 52 so that the
`signal “not safe” results in ¢ at the four points 64, 192,
`320 and 448. These are the ‘‘safe store” points. Other-
`wise the outputofflip-flop 52 is 1.
`The most significant bit (output 8) of the counter 50is
`taken to an inverter 53 to provide the “carry” signal.
`This occurs when the counter 50 rolls over from 511 to
`0 and as shownin FIG.4 the carry signal is supplied to
`the long stopwatch.
`FIG.6 shows a “safe counter ” circuit which counts
`the occurrence of“safe store points”. This circuit com-
`prises an OR-gate 60 to which the not safe signal and
`the clock signal CK are both applied, the output of gate
`60 being taken to the C inputs of a pair of linked flip-
`flops 61, 62.
`Thereset signal r and the log signal are applied to the
`inputs of an OR-gate 63 the output of whichis taken to
`the R-inputs of flip-flops 61, 62. The Q outputofflip-
`flop 61 is connected to one input of an OR-gate 64 the
`other input of which is the Q output offlip-flop 62, the
`output of OR-gate 64 being taken to the D input of
`flip-flop 62. The QN outputofflip-flop 62 is taken to the
`D inputof flip-flop 61 and provides a signal b whilst the
`QNoutputofflip-flop 61 provides a signal a. These two
`signals are taken to a NOR-gate 65 along with the not-
`safe signal and the output of gate 65 is the signal tflag.
`The “safe-counter” circuit of FIG. 6 operates to
`count the occurrences of “safe-store points”. On the
`third occurrence of a “safe-store-point” it generates the
`tflag signal which switches the multiplexer and causes a
`long time stampto be stored in store.
`This operationis illustrated in the timing diagram of
`FIG. 7. Whenthe control signal “log”is 1 this indicates
`that a data sample is to be stored. Any occurrence of
`“log” equal to 1 will reset the safe-counter. Thus for a
`long time stamp to be stored there must occur three
`“safe-store-points” in succession whilst ‘log’=0. This
`represents an interval between 257 and 383, as can be
`seen in FIG. 8. This is less than 512 and so meets the
`objectives which have already been set out.
`Weclaim:
`1. Apparatus for real-time stamping data in data log-
`ging applications, the apparatus comprising:
`a) a reference time base;
`b) short stopwatch means for generating from the
`reference time base a short-time stamp;
`c) means for combining data to be logged with said
`short-time stamp;
`d) means for storing the data and the short-time
`stamp;
`e) a long stopwatch means connected to said short
`stopwatch means for generating at intervals a long-
`time stamp; and
`f) a controller circuit for controlling the storage of
`the data and of the long-time and short-time
`stamps, the controller circuit being operative to
`store said long-time stamp at predetermined inter-
`vals.
`2. Apparatus as claimed in claim 1, and further com-
`prising a multiplexer to which said data and said long-
`time stamp are supplied, the controller circuit causing
`the long-time stamp to be stored in the place of data.
`3. Apparatus for real-time stamping data in data log-
`ging applications and comprising:
`a) synchronous counter for counting to a predeter-
`mined value in response to a reference time base;
`
`7
`
`
`
`5
`b) short stopwatch circuit means responsive to a se-
`lected numberoftheleast significant outputbits of
`said synchronous counter to generate a short stop-
`watch time;
`c) long stopwatch circuit means connected to said
`short stopwatch circuit means by a carry line to
`generate a long stopwatch time;
`d) control means for detecting when the interval
`between data to be stored is greater than the capac-
`ity of said counter; and
`
`6
`e) meansfor storing the long stopwatch time in re-
`sponse to said control means.
`4. Apparatus as claimed in claim 3, including means
`for generating a flag when said long stopwatch timeis
`stored.
`5. Apparatus as claimed in claim 3, wherein said con-
`trol meansincludes safe counter meansfor ensuring that
`said long stopwatch time is not stored during change-
`over of said counter.
`*
`¢
`&
`e
`
`5,010,560
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`8
`
`€
`