WO1999056397A1 - Programmable digitizer - Google Patents

Programmable digitizer Download PDF

Info

Publication number
WO1999056397A1
WO1999056397A1 PCT/US1999/008743 US9908743W WO9956397A1 WO 1999056397 A1 WO1999056397 A1 WO 1999056397A1 US 9908743 W US9908743 W US 9908743W WO 9956397 A1 WO9956397 A1 WO 9956397A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
signal
address
trigger
response
Prior art date
Application number
PCT/US1999/008743
Other languages
French (fr)
Other versions
WO1999056397A8 (en
Inventor
Roman A. Slizynski
David D. Reynolds
Bryan J. Dinteman
Daniel J. Bedell
Original Assignee
Credence Systems Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Credence Systems Corporation filed Critical Credence Systems Corporation
Priority to EP99919942A priority Critical patent/EP1080532A4/en
Priority to JP2000546458A priority patent/JP2002513235A/en
Priority to KR1020007009837A priority patent/KR20010041638A/en
Publication of WO1999056397A1 publication Critical patent/WO1999056397A1/en
Publication of WO1999056397A8 publication Critical patent/WO1999056397A8/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters
    • H03M1/124Sampling or signal conditioning arrangements specially adapted for A/D converters
    • H03M1/1245Details of sampling arrangements or methods

Definitions

  • the present invention relates in general to digitizers and in particular to a digitizer that can be programmed to abruptly alter its sampling rate and triggering modes .
  • a typical digitizer periodically samples the magnitude of an analog signal and produces digital output data representing the sample magnitude.
  • the resulting digital data sequence representing the time-varying behavior of the analog signal, can have many uses.
  • a frequency analyzer can process the data sequence to determine the frequency components of the analog signal using well-known methods. However if the digitizer's sampling rate is less than twice the frequency of the highest frequency component of the analog signal, the frequency analyzer will not be able to detect the high frequency components of the analog signal. On the other hand, if the digitizer's sampling rate is higher than twice the highest frequency component of the analog sequence, the data sequence will be longer than the frequency analyzer needs to accurately determine the analog signal's frequency spectrum. Since a longer data sequence requires more processing time and data storage capacity, it is preferable to set the digitizer sampling rate no higher than necessary.
  • Some analog signals have frequencies that vary over time.
  • a signal controlling electron beams scanning the cathode ray tube (CRT) of a color television has a high frequency burst for controlling the color produced by the electron beams when they traverse the CRT, but conveys low frequency synchronizing data between those bursts when the beams are not traversing the CRT.
  • the digitizer frequency In order to digitize such an analog signal to produce an output data sequence accurately reflecting the nature of the high frequency bursts, we must set the digitizer frequency to a rate that is at least twice the frequency of the high frequency bursts. However if we do so the digitizer will over sample the low frequency portions of the analog signal, thereby generating more data than is necessary to accurately represent the analog signal. It would be helpful if the digitizer could be made to automatically sample each section of the signal at rate that is appropriate to its frequency. It would also be helpful if a digitizer could alter its digitizing rate on-the-fly in response to an input trigger signal.
  • the present invention relates to a digitizer that can be programmed to instantly change its sampling rate in accordance with either a set pattern or in response to externally generated trigger signals or both.
  • the digitizer includes an analog-to-digital (A/D) converter for sampling an analog input signal at a rate determined by the frequency of an input CLOCK signal.
  • a clock signal generator produces the CLOCK signal with a period that is controlled by input PERIOD data.
  • the digitizer also includes an acquisition memory clocked by the CLOCK signal that acquires and stores the output data produced by the A/D converter.
  • an addressable packet memory stores a data packet at each of a set of addressable storage locations and produces a stored data packet as output when addressed.
  • the data packet output of the packet memory includes the PERIOD data controlling the clock signal generator frequency and MODE data applied as input to a control logic circuit addressing the memory.
  • the CLOCK signal and an externally generated trigger signal provide additional inputs to the control logic circuit.
  • the MODE data output of the packet memory tells the control logic circuit when and how to alter the address input to the packet memory so as to cause the packet memory to read out new PERIOD data to the clock signal generator.
  • the MODE data may tell the logic circuit to count CLOCK signal pulses and to change the packet memory address when the CLOCK signal pulse count reaches a predetermined value or may tell the control logic circuit to alter the memory address when the trigger signal is asserted or de-asserted.
  • the MODE data also tells the control logic circuit whether to alter the memory address by incrementing it or by jumping to a branch or subroutine address .
  • control logic circuit also produces CLOCK_EN and ACO EN output signals for enabling the clock signal generator and the acquisition memory, respectively.
  • the MODE data output of the packet memory also tells the control logic circuit when to enable and disable the clock signal generator and the acquisition memory.
  • the MODE data may tell the control logic circuit to enable or disable the clock signal generator or acquisition memory in response to assertion or de-assertion of the trigger signal or when the CLOCK signal pulse count reaches a predetermined value.
  • FIG. 1 illustrates a programmable digitizer in accordance with the present invention in block diagram form
  • FIG. 2 illustrates control logic circuit 20 of FIG. 1 in more detailed block diagram form
  • FIG. 3 illustrates trigger logic circuit 30 of FIG. 2 in more detailed block diagram form.
  • FIG. 1 illustrates in block diagram form a programmable digitizer 10 in accordance with the present invention for digitizing an analog input signal (ANALOG) to produce a data sequence representing the ANALOG signal that it may store in an internal acquisition memory.
  • Digitizer 10 detects several different types of triggering events and can be programmed to respond to any one of those triggering events by carrying out some change in state in its operating mode. Triggering events include a change in state of an externally generated trigger signal (TRIG_IN) , acquisition of a predetermined number of ANALOG signal samples, or the ANALOG signal's crossing of a predetermined voltage level.
  • Digitizer 10 can respond to a triggering event by starting or stopping its acquisition of the digitized data sequence, altering its digitizing frequency, and/or changing the state of an output trigger signal (TRIG_OUT) .
  • the operation of digitizer 10 is organized into a succession of time segments with the mode of digitizer operation during each segment being controlled by one of a set of stored data packets .
  • Each data packet includes PERIOD data for controlling the period or frequency of digitization during a segment and MODE data indicating how the digitizer is to respond to triggering events during the segment.
  • One of the stored data packets is selected for controlling the operation of digitizer 10 at the start of a first segment.
  • the MODE data included in the data packet controlling each segment tells the digitizer which data packet is to be selected for controlling the next segment and which triggering event is to initiate the next segment.
  • digitizer 10 can program it to digitize an ANALOG signal in a highly complex pattern and to change that pattern on-the-fly in response to changes in the TRIG_IN signal or in response to the behavior of the ANALOG signal.
  • Digitizer 10 is also useful for digitizing an analog signal having high frequency bursts when it is desirable to digitize only the bursts or to digitize the bursts at a higher rate than portions of the analog signal between the bursts or when several bursts have differing time requirements but must be digitized in a single, contiguous acquisition, as in equivalent time digitization.
  • Digitizer 10 includes a conventional analog-to-digital (A/D) converter 12 for responding to each pulse of a periodic input CLOCK signal by producing output data (SAMPLE DATA) representing the instantaneous amplitude of the ANALOG signal.
  • a conventional acquisition memory system 14 when enabled by an input enable signal (ACQ_EN) responds to successive CLOCK signal pulses by storing successive SAMPLE DATA outputs of A/D converter 12 as successive addresses of an internal random access memory.
  • a programmable clock generator 16 produces the CLOCK signal.
  • An addressable packet memory 18 (suitably a random access memory or an addressable register file) stores a separate data packet at each address, each data packet including both PERIOD and MODE data.
  • packet memory 18 When addressed by an address output (ADDRESS) of a control logic circuit 20, packet memory 18 reads out an addressed PERIOD and MODE data.
  • the current PERIOD data output of packet memory 18 is supplied to clock generator 16 and controls the CLOCK signal period.
  • Each data packet read out of packet memory 18 also includes LEVEL data applied as input to a digital-to-analog (D/A) converter 26.
  • D/A converter 26 converts the level data to an analog signal applied as input to a comparator 28. Comparator 28 produces and output COMP signal when the magnitude of the ANALOG signal rises above that of the output signal of D/A converter 26.
  • control logic circuit 20 The MODE data output of packet memory 18, the CLOCK signal, the SAMPLE DATA, the COMP signal, and an externally generated trigger signal TRIG_IN all provide inputs to control logic circuit 20.
  • control logic 20 also supplies the ACO EN and CLOCK_EN inputs to clock generator 16 and acquisition memory system 14, respectively, and produces the TRIG_OUT signal.
  • the MODE data input to control logic 20 defines actions control logic 20 carries out in response to state changes in the TRIG_IN or COMP signals or after counting a particular number of CLOCK signal pulses. Possible control logic 20 actions include changing the ADDRESS input to packet memory 18 and asserting or de-asserting the CLOCK_EN, ACQ_EN and TRIG_OUT signals.
  • a host computer 22 programs digitizer 10 by writing a "data packet" into packet memory 18 and by writing control data into addressable registers within control logic 20 via a conventional computer bus 24.
  • Host computer 22 also reads acquired SAMPLE DATA out of acquisition memory 14 via bus 24 and uses bus 24 to send a START command to control logic circuit 20 telling it to start the first digitizing segment.
  • Control logic circuit 20 uses bus 24 to send an END command back to host computer 22 to tell it when it has completed the last digitizing segment.
  • FIG. 2 illustrates control logic circuit 20 of FIG. 1 in more detailed block diagram form.
  • Control logic circuit 20 includes a trigger logic circuit 30, an address generator circuit 32, a bus interface circuit 36 and a pair of counters Cl and C2.
  • Address generator 32 which provides the ADDRESS input to packet memory 18 of FIG. 1, includes arithmetic logic units (ALU) 38 and 39, a set of six address registers 40, and a multiplexer 42.
  • ALU arithmetic logic units
  • Trigger logic circuit 30 tells address generator 32 how and when to change the value of its ADDRESS output.
  • the MODE data input to control logic circuit 20 includes a TRIG_MODE field providing input to a trigger logic circuit 30 and a count limit data (COUNT_LIM) providing input to counters Cl and C2.
  • the TRIG_MODE field defines how trigger logic circuit 30 is to set the state of each of its output signals in response to state changes in its input trigger signals.
  • Those trigger signals include the TRIG_IN and COMP signals, a signal LI from counter Cl, a signal L2 from counter C2 , and a START signal from bus interface circuit 36.
  • Trigger logic circuit 30 output signals include the TRIG_OUT signal, the CLOCK_EN and ACQ_EN signals, a L0AD_C1 signal input to counter Cl, a LOAD_C2 input to counter C2 , a COUNT_C2 signal input to counter C2 , a INC_PC signal input to arithmetic logic unit (ALU) 39, an INC_SUB input to an arithmetic logic unit (ALU) 38, control data input (SEL) to multiplexer 42, and an END signal input to a bus interface circuit 36.
  • ALU arithmetic logic unit
  • SEL control data input
  • END END signal input to a bus interface circuit 36.
  • Host computer 22 of FIG. 1 communicates with control logic circuit 20 via bus 24 and bus interface circuit 36.
  • host computer 22 may load an address into any of the six address registers 40 via bus interface 36.
  • the address content of each register 40, along with the address outputs of ALUs 38 and 39, provide inputs to multiplexer 42.
  • the output ADDRESS of multiplexer 42 is also fed back to inputs of ALUs 38 and 39.
  • Multiplexer 42 responds to the input selection data SEL from trigger logic circuit 30 by delivering one of its inputs as the ADDRESS input to packet memory 18.
  • the MODE data included in the sequence of data packets stored in packet memory 18 acts as a program for controlling successive changes in the mode of operation of digitizer 10.
  • the program may also perform loops and branches, with branches occurring in response to events detected by trigger logic circuit 30.
  • ALU 39 acts as a main program counter providing the packet memory address when digitizer 10 is executing the main program.
  • bus interface circuit 36- sends a START signal to ALU 39 to reset its output address to 0.
  • Trigger logic circuit 30 responds to the START signal by setting multiplexer 42 to select the output of ALU 39, thereby setting the packet memory 18 ADDRESS to zero. This causes packet memory 18 to read out the data packet for the first digitizing segment. Thereafter trigger logic circuit 30 pulses the INC_PC signal to increment the main program address whenever a next digitizing segment of the main program is triggered.
  • Each of the six address registers 40 can store the starting address of a branch or a subroutine.
  • trigger logic circuit 30 switches multiplexer 42 to select the output of a particular one of address registers 40.
  • the TRIG_MODE data tells trigger logic 30 to pulse the INC_SUB signal causing ALU 38 to increment the packet memory ADDRESS output of multiplexer 42.
  • Trigger logic circuit 30 also sets multiplexer 42 to select the output of ALU 38.
  • trigger logic circuit 30 pulses the INC_PC signal to increment the output of ALU 39, and switches multiplexer 42 so that again selects the output of ALU 39.
  • trigger logic circuit 30 switches multiplexer 42 to select the output of a particular one of address registers 40.
  • the TRIG_M0DE data tells trigger logic 30 to pulse a BRANCH signal causing ALU 39 to increment the packet memory ADDRESS output of multiplexer 42.
  • Trigger logic circuit 30 also sets multiplexer 42 to select the output of ALU 39. Thereafter trigger logic circuit 30 resumes pulsing the INC_PC signal to increment the program address .
  • the MODE data input to control logic circuit 20 also includes a field COUNT_LIM applied as a data input to period counter Cl.
  • counter Cl loads the COUNT_LIM data and begins counting down from the value of COUNT_LIM on each pulse of the CLOCK signal. On reaching 0, counter Cl asserts the LI input to trigger logic circuit 30.
  • the Ll signal can be used, for example, to trigger the start of a new segment after a the ANALOG signal has been sampled the number of times indicated by the COUNT_LIM data loaded into period counter Cl .
  • the COUNT_LIM field of the MODE data is applied as a data input to loop counter C2.
  • trigger logic circuit 30 pulses the LOAD_C2 signal
  • counter C2 loads the COUNT_LIM data and begins counting down from the value of COUNT_LIM on each pulse of a COUNT_C2 output of trigger logic circuit 30.
  • counter C2 asserts an L2 input to trigger logic circuit 30.
  • the C2 counter can be used, for example, to indicate when digitizer has completed a predetermined number of program loops or segment repeats.
  • the LI, L2, TRIG_IN, and START trigger signal inputs to trigger logic circuit 30 can be used to initiate several triggerable activities during a segment.
  • the TRIG_MODE input to trigger logic circuit 30 indicates the activity, if any, trigger logic circuit 30 is to carry out during a current segment in response to each trigger signal.
  • the triggerable activities the TRIG_MODE data may reference are listed below.
  • the TRIG_MODE data may reference more than one activity concurrently since trigger logic circuit 30 can respond to more than one trigger signal during a segment.
  • the TRIG_OUT signal may be used to inform external circuits of the occurrence of trigger signal events.
  • the CLOCK_EN signal enables or disables clock generator 16 of FIG. 1.
  • the CL0CK_EN signal can be de-asserted to disable clock generator 16 until triggered by the TRIG_IN pulse.
  • ACQ_EN enables or disables data acquisition system 14.
  • the data acquisition system is disabled when the SAMPLE DATA output of A/D converter 12 is not to be saved. This feature allows A/D converter 12 to operate continuously. The alternative would be to gate the clock signal which would introduce jitter into the samp1e timing .
  • Pulse L0AD_C1 may pulse the L0AD_C1 signal input to load the COUNT_LIM data into period counter Cl . This can be done, for example at the start of a segment when the segment is to continue for a set number of CLOCK signal cycles.
  • Pulse LOAD_C2 Trigger logic circuit 30 may pulse the LOAD_C2 signal input to load the COUNT_LIM data into loop counter C2. This can be done at the start of the program loop to tell counter C2 how may repetitions of the loop are to be performed.
  • Pulse COUNT_C2 Trigger logic circuit 30 pulses the COUNT_C2 signal to decrement loop counter C2 when the program reaches the end of each repetition of a loop.
  • Pulse INC_PC Trigger logic circuit 30 pulses the INC_PC signal input to increment ALU 39 between main program segments.
  • Pulse INC_SUB Trigger logic circuit 30 pulses the INC signal input to ALU 38 to increment the packet address during subroutines.
  • Pulse END Trigger logic circuit 30 pulses the END signal input to bus interface circuit 36 to tell host computer 22 that it has halted its digitizing process .
  • Trigger logic circuit 30 may respond to a trigger event by setting the SEL data to a value indicated by the TRIG_M0DE data to select the output of one of registers 40, ALU 38 or ALU 39 as the packet memory address for the next segment.
  • FIG. 3 illustrates trigger logic circuit 30 of FIG. 2 in more detailed block diagram form.
  • Signals LI, L2 , TRIG_IN and COMP are each connected to a separate one of bus lines 50.
  • a pair of inverters 52 and 54 invert the TRIG_IN and COMP signals to drive an additional pair of bus lines 50.
  • Two additional bus lines 50 are hard wired to logical 1 and 0 sources.
  • Bus lines 50 are connected in parallel to a set of trigger selectors 56-59 that produce the TRIG_OUT, CLOCK_EN, ACQ_EN, L0AD_C1, LOAD_C2 , COUNT_C2 , INC_PC, INC_SUB, END and BRANCH signals.
  • Trigger selector 56 includes a multiplexer 64 and an SR flip-flop 65 producing the TRIG_OUT signal at its Q outp t.
  • a decoder 66 decodes the incoming TRIG_MODE data to produce a control data input to multiplexer 64 telling it to link one of lines 50 to the flip-flop set input (S) and to connect another of lines 50 to the flip-flop's reset input (R) .
  • S flip-flop set input
  • R reset input
  • Other assert/de-assert type trigger selectors 57 similar to trigger selector 56 control the CL0CK_EN, ACQ_EN and END signals.
  • Trigger selector 58 includes a multiplexer 76 driving a one-shot device 78 producing the L0AD_C1 signal at its output. Decoder 66 decodes the incoming TRIG_M0DE data to produce a control data input to multiplexer 76 telling it to link one of trigger lines 50 to one-shot device 78. During the digitizing segment, a rising edge in a trigger signal controlling any selected one of lines 50 tells the one-shot device 78 to pulse the L0AD_C1 signal.
  • a set of six other pulsing type trigger selectors 59 similar to trigger selector 58 control the LOAD_C2 , COUNT_C2 , INC_PC, INC_SUB, and BRANCH signals .
  • Trigger logic circuit 30 also includes a pair of multiplexers 68 and 70 controlled by decoder 66.
  • Multiplexer 68 links a selected one of lines 50 to an input A of a packet address selector 72 while multiplexer 70 links a selected one of line 50 to an input B of selector 72.
  • Selector 72 produces the SEL data that controls address selection multiplexer 42 of FIG. 2.
  • selector 72 When decoding the TRIG_MODE data decoder 66 provides selector 72 with two alternative values (SELA and SELB) that it may supply as the SEL data to address selection multiplexer 42 of FIG. 2 at the start of the next cycle.
  • selector 72 During the current digitizing cycle, if selector 72 receives a pulse at its A input first, it initiates the next digitizing cycle by forwarding the SELA data as the SEL control input to multiplexer 42 of FIG. 2. Conversely, if it receives a pulse at its B input first, selector 72 forwards the SELB data as the SEL control input to multiplexer 42. This enables digitizer 10 to branch its digitizing activities on-the-fly based on whether various triggering events occur.
  • the START signal provides an additional input to decoder 66.
  • the host computer sends a START command to bus interface circuit 36 of FIG. 2 to start the digitization process. Bus interface circuit 36 responds by generating a START signal pulse to set the address output of ALU 39 of FIG. 2 to 0.
  • the START signal output of bus interface circuit 36 also provides an additional input to decoder 66.
  • decoder 66 tells packet address selector to immediately send out SEL data telling multiplexer 42 of FIG. 2 to provide the starting address output of ALU 39 as the first ADDRESS input to the packet memory 18 of FIG. 1.
  • Digitizer 10 is particularly useful for digitizing an analog signal having a frequency that varies over time in some predictable manner.
  • a signal controlling electron beams scanning the cathode ray tube (CRT) of a color television has a high frequency burst for controlling the color produced by the electron beams when they traverse the CRT, but conveys low frequency synchronizing data between those bursts when the beams are not traversing the CRT.
  • a digitizer frequency to a rate that is at least twice the frequency of high frequency bursts.
  • Digitizer 10 permits another approach to digitizing such a signal. Suppose the duration of the high and low frequency portions of the ANALOG signal is fixed and known and that the TRIG_IN signal is synchronized to the first high frequency section to be digitized. To program digitizer 10 host computer 22 can load packets into three packet memory 18 addresses .
  • a packet stored at a first memory address contains MODE data telling control logic 20 to de-assert the ACO EN signal so that acquisition memory system 14 does not initially acquire any SAMPLE DATA.
  • the MODE data at the first memory address also tells control logic circuit 20 to increment the ADDRESS input to packet memory 18 when the TRIG_IN signal is asserted.
  • the alternate SELA and SELB address selection data encoded into the TRIG_MODE data allows digitizer 10 to branch or perform a subroutine depending on which of two trigger signals occurs first during a digitizing segment.
  • This branching capability of digitizer 10 makes it useful, for example, in monitoring an analog output signal of a circuit being tested by an "expert system" diagnostic circuit tester of the type which determines the future course of a test in response to previous results .
  • Digitizer 10 can use the TRIG_OUT signal to communicate detected events to the diagnostic circuit tester in real time and the expert system circuit tester can use the TRIG_IN signal to trigger real time changes in the behavior of digitizer 10 in response to test events detected by other tester components.

Abstract

A digitizer can be programmed to digitize an ANALOG signal with a complex frequency pattern determined in response to a set of trigger signals (TRIGIN, TRIGOUT). The digitizer includes an addressable packet memory (18) storing a set of data packets and produces one of its stored data packets as output when addressed. The output data packet includes both PERIOD and MODE data fields. The digitizer also includes an analog to digital converter (12) for digitizing an ANALOG signal at the frequency controlled by the Period data output of the packet memory. The MODE data output of the packet memory tells a trigger logic circuit (20) how to choose a next packet memory address and selects one of the trigger signals to tell the trigger logic circuit when to change the packet memory address so as to alter the digitizing frequency.

Description

PROGRAMMABLE DIGITIZER
Field of the Invention The present invention relates in general to digitizers and in particular to a digitizer that can be programmed to abruptly alter its sampling rate and triggering modes .
Description of Related Art A typical digitizer periodically samples the magnitude of an analog signal and produces digital output data representing the sample magnitude. The resulting digital data sequence, representing the time-varying behavior of the analog signal, can have many uses. For example a frequency analyzer can process the data sequence to determine the frequency components of the analog signal using well-known methods. However if the digitizer's sampling rate is less than twice the frequency of the highest frequency component of the analog signal, the frequency analyzer will not be able to detect the high frequency components of the analog signal. On the other hand, if the digitizer's sampling rate is higher than twice the highest frequency component of the analog sequence, the data sequence will be longer than the frequency analyzer needs to accurately determine the analog signal's frequency spectrum. Since a longer data sequence requires more processing time and data storage capacity, it is preferable to set the digitizer sampling rate no higher than necessary.
Some analog signals have frequencies that vary over time. For example a signal controlling electron beams scanning the cathode ray tube (CRT) of a color television has a high frequency burst for controlling the color produced by the electron beams when they traverse the CRT, but conveys low frequency synchronizing data between those bursts when the beams are not traversing the CRT. In order to digitize such an analog signal to produce an output data sequence accurately reflecting the nature of the high frequency bursts, we must set the digitizer frequency to a rate that is at least twice the frequency of the high frequency bursts. However if we do so the digitizer will over sample the low frequency portions of the analog signal, thereby generating more data than is necessary to accurately represent the analog signal. It would be helpful if the digitizer could be made to automatically sample each section of the signal at rate that is appropriate to its frequency. It would also be helpful if a digitizer could alter its digitizing rate on-the-fly in response to an input trigger signal.
Summary of the Invention
The present invention relates to a digitizer that can be programmed to instantly change its sampling rate in accordance with either a set pattern or in response to externally generated trigger signals or both. The digitizer includes an analog-to-digital (A/D) converter for sampling an analog input signal at a rate determined by the frequency of an input CLOCK signal. A clock signal generator produces the CLOCK signal with a period that is controlled by input PERIOD data. The digitizer also includes an acquisition memory clocked by the CLOCK signal that acquires and stores the output data produced by the A/D converter.
In accordance with one aspect of the invention, an addressable packet memory stores a data packet at each of a set of addressable storage locations and produces a stored data packet as output when addressed. The data packet output of the packet memory includes the PERIOD data controlling the clock signal generator frequency and MODE data applied as input to a control logic circuit addressing the memory. The CLOCK signal and an externally generated trigger signal provide additional inputs to the control logic circuit.
In accordance with another aspect of the invention, the MODE data output of the packet memory tells the control logic circuit when and how to alter the address input to the packet memory so as to cause the packet memory to read out new PERIOD data to the clock signal generator. For example the MODE data may tell the logic circuit to count CLOCK signal pulses and to change the packet memory address when the CLOCK signal pulse count reaches a predetermined value or may tell the control logic circuit to alter the memory address when the trigger signal is asserted or de-asserted. The MODE data also tells the control logic circuit whether to alter the memory address by incrementing it or by jumping to a branch or subroutine address .
In accordance with a further aspect of the invention, the control logic circuit also produces CLOCK_EN and ACO EN output signals for enabling the clock signal generator and the acquisition memory, respectively. The MODE data output of the packet memory also tells the control logic circuit when to enable and disable the clock signal generator and the acquisition memory. For example the MODE data may tell the control logic circuit to enable or disable the clock signal generator or acquisition memory in response to assertion or de-assertion of the trigger signal or when the CLOCK signal pulse count reaches a predetermined value.
It is accordingly an object of the invention to provide a programmable digitizer that can digitize an input analog signal with a sampling frequency that can changes over time according to a predetermined pattern.
It is another object of the invention that it can digitize an input analog signal with a sampling frequency that can change in response to an input trigger signal . The concluding portion of this specification particularly points out and distinctly claims the subject matter of the present invention. However those skilled in the art will best understand both the organization and method of operation of the invention, together with further advantages and objects thereof, by reading the remaining portions of the specification in view of the accompanying drawing (s) wherein like reference characters refer to like elements .
Brief Description of the Drawing (s) FIG. 1 illustrates a programmable digitizer in accordance with the present invention in block diagram form,
FIG. 2 illustrates control logic circuit 20 of FIG. 1 in more detailed block diagram form, and FIG. 3 illustrates trigger logic circuit 30 of FIG. 2 in more detailed block diagram form.
Description of the Preferred Embodiment ( s ) FIG. 1 illustrates in block diagram form a programmable digitizer 10 in accordance with the present invention for digitizing an analog input signal (ANALOG) to produce a data sequence representing the ANALOG signal that it may store in an internal acquisition memory. Digitizer 10 detects several different types of triggering events and can be programmed to respond to any one of those triggering events by carrying out some change in state in its operating mode. Triggering events include a change in state of an externally generated trigger signal (TRIG_IN) , acquisition of a predetermined number of ANALOG signal samples, or the ANALOG signal's crossing of a predetermined voltage level. Digitizer 10 can respond to a triggering event by starting or stopping its acquisition of the digitized data sequence, altering its digitizing frequency, and/or changing the state of an output trigger signal (TRIG_OUT) .
The operation of digitizer 10 is organized into a succession of time segments with the mode of digitizer operation during each segment being controlled by one of a set of stored data packets . Each data packet includes PERIOD data for controlling the period or frequency of digitization during a segment and MODE data indicating how the digitizer is to respond to triggering events during the segment. One of the stored data packets is selected for controlling the operation of digitizer 10 at the start of a first segment. The MODE data included in the data packet controlling each segment tells the digitizer which data packet is to be selected for controlling the next segment and which triggering event is to initiate the next segment.
As discussed below, a relatively small amount of packet and control data supplied to digitizer 10 can program it to digitize an ANALOG signal in a highly complex pattern and to change that pattern on-the-fly in response to changes in the TRIG_IN signal or in response to the behavior of the ANALOG signal. This makes digitizer 10 useful, for example, as a data input device for a diagnostic tester in which the course of a test can change depending on the behavior of the device being tested. Digitizer 10 is also useful for digitizing an analog signal having high frequency bursts when it is desirable to digitize only the bursts or to digitize the bursts at a higher rate than portions of the analog signal between the bursts or when several bursts have differing time requirements but must be digitized in a single, contiguous acquisition, as in equivalent time digitization.
Digitizer 10 includes a conventional analog-to-digital (A/D) converter 12 for responding to each pulse of a periodic input CLOCK signal by producing output data (SAMPLE DATA) representing the instantaneous amplitude of the ANALOG signal. A conventional acquisition memory system 14, when enabled by an input enable signal (ACQ_EN) responds to successive CLOCK signal pulses by storing successive SAMPLE DATA outputs of A/D converter 12 as successive addresses of an internal random access memory. When enabled by an input enable signal (CLOCK_EN) , a programmable clock generator 16 produces the CLOCK signal. An addressable packet memory 18 (suitably a random access memory or an addressable register file) stores a separate data packet at each address, each data packet including both PERIOD and MODE data. When addressed by an address output (ADDRESS) of a control logic circuit 20, packet memory 18 reads out an addressed PERIOD and MODE data. The current PERIOD data output of packet memory 18 is supplied to clock generator 16 and controls the CLOCK signal period. Each data packet read out of packet memory 18 also includes LEVEL data applied as input to a digital-to-analog (D/A) converter 26. D/A converter 26 converts the level data to an analog signal applied as input to a comparator 28. Comparator 28 produces and output COMP signal when the magnitude of the ANALOG signal rises above that of the output signal of D/A converter 26.
The MODE data output of packet memory 18, the CLOCK signal, the SAMPLE DATA, the COMP signal, and an externally generated trigger signal TRIG_IN all provide inputs to control logic circuit 20. In addition to providing the ADDRESS input to packet memory 18, control logic 20 also supplies the ACO EN and CLOCK_EN inputs to clock generator 16 and acquisition memory system 14, respectively, and produces the TRIG_OUT signal. The MODE data input to control logic 20 defines actions control logic 20 carries out in response to state changes in the TRIG_IN or COMP signals or after counting a particular number of CLOCK signal pulses. Possible control logic 20 actions include changing the ADDRESS input to packet memory 18 and asserting or de-asserting the CLOCK_EN, ACQ_EN and TRIG_OUT signals.
A host computer 22 programs digitizer 10 by writing a "data packet" into packet memory 18 and by writing control data into addressable registers within control logic 20 via a conventional computer bus 24. Host computer 22 also reads acquired SAMPLE DATA out of acquisition memory 14 via bus 24 and uses bus 24 to send a START command to control logic circuit 20 telling it to start the first digitizing segment. Control logic circuit 20 uses bus 24 to send an END command back to host computer 22 to tell it when it has completed the last digitizing segment.
FIG. 2 illustrates control logic circuit 20 of FIG. 1 in more detailed block diagram form. Control logic circuit 20 includes a trigger logic circuit 30, an address generator circuit 32, a bus interface circuit 36 and a pair of counters Cl and C2. Address generator 32, which provides the ADDRESS input to packet memory 18 of FIG. 1, includes arithmetic logic units (ALU) 38 and 39, a set of six address registers 40, and a multiplexer 42.
Trigger logic circuit 30 tells address generator 32 how and when to change the value of its ADDRESS output. The MODE data input to control logic circuit 20 includes a TRIG_MODE field providing input to a trigger logic circuit 30 and a count limit data (COUNT_LIM) providing input to counters Cl and C2. The TRIG_MODE field defines how trigger logic circuit 30 is to set the state of each of its output signals in response to state changes in its input trigger signals. Those trigger signals include the TRIG_IN and COMP signals, a signal LI from counter Cl, a signal L2 from counter C2 , and a START signal from bus interface circuit 36. Trigger logic circuit 30 output signals include the TRIG_OUT signal, the CLOCK_EN and ACQ_EN signals, a L0AD_C1 signal input to counter Cl, a LOAD_C2 input to counter C2 , a COUNT_C2 signal input to counter C2 , a INC_PC signal input to arithmetic logic unit (ALU) 39, an INC_SUB input to an arithmetic logic unit (ALU) 38, control data input (SEL) to multiplexer 42, and an END signal input to a bus interface circuit 36.
Host computer 22 of FIG. 1 communicates with control logic circuit 20 via bus 24 and bus interface circuit 36. To program control logic circuit 20, host computer 22 may load an address into any of the six address registers 40 via bus interface 36. The address content of each register 40, along with the address outputs of ALUs 38 and 39, provide inputs to multiplexer 42. The output ADDRESS of multiplexer 42 is also fed back to inputs of ALUs 38 and 39. Multiplexer 42 responds to the input selection data SEL from trigger logic circuit 30 by delivering one of its inputs as the ADDRESS input to packet memory 18.
The MODE data included in the sequence of data packets stored in packet memory 18 acts as a program for controlling successive changes in the mode of operation of digitizer 10. The program is organized into a main program starting at ADDRESS = 0 that can call up to five subroutines. The program may also perform loops and branches, with branches occurring in response to events detected by trigger logic circuit 30. ALU 39 acts as a main program counter providing the packet memory address when digitizer 10 is executing the main program. When the host sends a START command to bus interface circuit 36 to initiate digitizing operations, bus interface circuit 36- sends a START signal to ALU 39 to reset its output address to 0. Trigger logic circuit 30 responds to the START signal by setting multiplexer 42 to select the output of ALU 39, thereby setting the packet memory 18 ADDRESS to zero. This causes packet memory 18 to read out the data packet for the first digitizing segment. Thereafter trigger logic circuit 30 pulses the INC_PC signal to increment the main program address whenever a next digitizing segment of the main program is triggered.
Each of the six address registers 40 can store the starting address of a branch or a subroutine. When the current TRIG_MODE data tells trigger logic circuit 30 to execute a subroutine, trigger logic circuit 30 switches multiplexer 42 to select the output of a particular one of address registers 40. To initiate each digitizing segment thereafter, the TRIG_MODE data tells trigger logic 30 to pulse the INC_SUB signal causing ALU 38 to increment the packet memory ADDRESS output of multiplexer 42. Trigger logic circuit 30 also sets multiplexer 42 to select the output of ALU 38. When the TRIG_M0DE data tells trigger logic circuit 30 to return to the main program from a subroutine, trigger logic circuit 30 pulses the INC_PC signal to increment the output of ALU 39, and switches multiplexer 42 so that again selects the output of ALU 39.
When the current TRIG_MODE data tells trigger logic circuit 30 to execute a branch or a loop, trigger logic circuit 30 switches multiplexer 42 to select the output of a particular one of address registers 40. To initiate the next digitizing segment thereafter, the TRIG_M0DE data tells trigger logic 30 to pulse a BRANCH signal causing ALU 39 to increment the packet memory ADDRESS output of multiplexer 42. Trigger logic circuit 30 also sets multiplexer 42 to select the output of ALU 39. Thereafter trigger logic circuit 30 resumes pulsing the INC_PC signal to increment the program address . The MODE data input to control logic circuit 20 also includes a field COUNT_LIM applied as a data input to period counter Cl. When trigger logic circuit 30 pulses the L0AD_C1 signal, counter Cl loads the COUNT_LIM data and begins counting down from the value of COUNT_LIM on each pulse of the CLOCK signal. On reaching 0, counter Cl asserts the LI input to trigger logic circuit 30. The Ll signal can be used, for example, to trigger the start of a new segment after a the ANALOG signal has been sampled the number of times indicated by the COUNT_LIM data loaded into period counter Cl .
The COUNT_LIM field of the MODE data is applied as a data input to loop counter C2. When trigger logic circuit 30 pulses the LOAD_C2 signal, counter C2 loads the COUNT_LIM data and begins counting down from the value of COUNT_LIM on each pulse of a COUNT_C2 output of trigger logic circuit 30. On reaching 0 , counter C2 asserts an L2 input to trigger logic circuit 30. The C2 counter can be used, for example, to indicate when digitizer has completed a predetermined number of program loops or segment repeats.
The LI, L2, TRIG_IN, and START trigger signal inputs to trigger logic circuit 30 can be used to initiate several triggerable activities during a segment. The TRIG_MODE input to trigger logic circuit 30 indicates the activity, if any, trigger logic circuit 30 is to carry out during a current segment in response to each trigger signal. The triggerable activities the TRIG_MODE data may reference are listed below. The TRIG_MODE data may reference more than one activity concurrently since trigger logic circuit 30 can respond to more than one trigger signal during a segment.
Assert/De-assert TRIG_OUT: The TRIG_OUT signal may be used to inform external circuits of the occurrence of trigger signal events.
Assert/De-assert CLOCK_EN: The CLOCK_EN signal enables or disables clock generator 16 of FIG. 1. When digitizer 10 is to begin digitizing in response to a TRIG_IN pulse, the CL0CK_EN signal can be de-asserted to disable clock generator 16 until triggered by the TRIG_IN pulse.
Assert/De-assert ACQ_EN: The ACQ_EN signal enables or disables data acquisition system 14. The data acquisition system is disabled when the SAMPLE DATA output of A/D converter 12 is not to be saved. This feature allows A/D converter 12 to operate continuously. The alternative would be to gate the clock signal which would introduce jitter into the samp1e timing .
Pulse L0AD_C1 : Trigger logic circuit 30 may pulse the L0AD_C1 signal input to load the COUNT_LIM data into period counter Cl . This can be done, for example at the start of a segment when the segment is to continue for a set number of CLOCK signal cycles.
Pulse LOAD_C2 : Trigger logic circuit 30 may pulse the LOAD_C2 signal input to load the COUNT_LIM data into loop counter C2. This can be done at the start of the program loop to tell counter C2 how may repetitions of the loop are to be performed.
Pulse COUNT_C2 : Trigger logic circuit 30 pulses the COUNT_C2 signal to decrement loop counter C2 when the program reaches the end of each repetition of a loop.
Pulse INC_PC: Trigger logic circuit 30 pulses the INC_PC signal input to increment ALU 39 between main program segments.
Pulse INC_SUB: Trigger logic circuit 30 pulses the INC signal input to ALU 38 to increment the packet address during subroutines.
Pulse END: Trigger logic circuit 30 pulses the END signal input to bus interface circuit 36 to tell host computer 22 that it has halted its digitizing process .
Change SEL: Trigger logic circuit 30 may respond to a trigger event by setting the SEL data to a value indicated by the TRIG_M0DE data to select the output of one of registers 40, ALU 38 or ALU 39 as the packet memory address for the next segment.
FIG. 3 illustrates trigger logic circuit 30 of FIG. 2 in more detailed block diagram form. Signals LI, L2 , TRIG_IN and COMP are each connected to a separate one of bus lines 50. A pair of inverters 52 and 54 invert the TRIG_IN and COMP signals to drive an additional pair of bus lines 50. Two additional bus lines 50 are hard wired to logical 1 and 0 sources. Bus lines 50 are connected in parallel to a set of trigger selectors 56-59 that produce the TRIG_OUT, CLOCK_EN, ACQ_EN, L0AD_C1, LOAD_C2 , COUNT_C2 , INC_PC, INC_SUB, END and BRANCH signals.
Trigger selector 56 includes a multiplexer 64 and an SR flip-flop 65 producing the TRIG_OUT signal at its Q outp t. A decoder 66 decodes the incoming TRIG_MODE data to produce a control data input to multiplexer 64 telling it to link one of lines 50 to the flip-flop set input (S) and to connect another of lines 50 to the flip-flop's reset input (R) . Thus during the digitizing segment any one of the trigger signals controlling a trigger line 50 can set or reset the TRIG_OUT signal. Other assert/de-assert type trigger selectors 57 similar to trigger selector 56 control the CL0CK_EN, ACQ_EN and END signals.
Trigger selector 58 includes a multiplexer 76 driving a one-shot device 78 producing the L0AD_C1 signal at its output. Decoder 66 decodes the incoming TRIG_M0DE data to produce a control data input to multiplexer 76 telling it to link one of trigger lines 50 to one-shot device 78. During the digitizing segment, a rising edge in a trigger signal controlling any selected one of lines 50 tells the one-shot device 78 to pulse the L0AD_C1 signal. A set of six other pulsing type trigger selectors 59 similar to trigger selector 58 control the LOAD_C2 , COUNT_C2 , INC_PC, INC_SUB, and BRANCH signals . Trigger logic circuit 30 also includes a pair of multiplexers 68 and 70 controlled by decoder 66. Multiplexer 68 links a selected one of lines 50 to an input A of a packet address selector 72 while multiplexer 70 links a selected one of line 50 to an input B of selector 72. Selector 72 produces the SEL data that controls address selection multiplexer 42 of FIG. 2. When decoding the TRIG_MODE data decoder 66 provides selector 72 with two alternative values (SELA and SELB) that it may supply as the SEL data to address selection multiplexer 42 of FIG. 2 at the start of the next cycle. During the current digitizing cycle, if selector 72 receives a pulse at its A input first, it initiates the next digitizing cycle by forwarding the SELA data as the SEL control input to multiplexer 42 of FIG. 2. Conversely, if it receives a pulse at its B input first, selector 72 forwards the SELB data as the SEL control input to multiplexer 42. This enables digitizer 10 to branch its digitizing activities on-the-fly based on whether various triggering events occur. The START signal provides an additional input to decoder 66. The host computer sends a START command to bus interface circuit 36 of FIG. 2 to start the digitization process. Bus interface circuit 36 responds by generating a START signal pulse to set the address output of ALU 39 of FIG. 2 to 0. The START signal output of bus interface circuit 36 also provides an additional input to decoder 66. In response to a START signal pulse, decoder 66 tells packet address selector to immediately send out SEL data telling multiplexer 42 of FIG. 2 to provide the starting address output of ALU 39 as the first ADDRESS input to the packet memory 18 of FIG. 1.
Digitizer 10 is particularly useful for digitizing an analog signal having a frequency that varies over time in some predictable manner. For example a signal controlling electron beams scanning the cathode ray tube (CRT) of a color television has a high frequency burst for controlling the color produced by the electron beams when they traverse the CRT, but conveys low frequency synchronizing data between those bursts when the beams are not traversing the CRT. In order to digitize such an analog signal to produce an output data sequence accurately reflecting the nature of the high frequency bursts, we could set a digitizer frequency to a rate that is at least twice the frequency of high frequency bursts. However in such case the digitizer over-samples the low frequency portions of the analog signal, thereby generating more data than is necessary to accurately represent the analog signal. Also, some digital signal processing coherent test precedures require a specific number of samples evenly distributed across the period of a wave segment, since wave setments can vary in length, a digitizing clock period for one wave segment may not be appropriate for the next . Digitizer 10 permits another approach to digitizing such a signal. Suppose the duration of the high and low frequency portions of the ANALOG signal is fixed and known and that the TRIG_IN signal is synchronized to the first high frequency section to be digitized. To program digitizer 10 host computer 22 can load packets into three packet memory 18 addresses . A packet stored at a first memory address contains MODE data telling control logic 20 to de-assert the ACO EN signal so that acquisition memory system 14 does not initially acquire any SAMPLE DATA. The MODE data at the first memory address also tells control logic circuit 20 to increment the ADDRESS input to packet memory 18 when the TRIG_IN signal is asserted.
The alternate SELA and SELB address selection data encoded into the TRIG_MODE data allows digitizer 10 to branch or perform a subroutine depending on which of two trigger signals occurs first during a digitizing segment. This branching capability of digitizer 10 makes it useful, for example, in monitoring an analog output signal of a circuit being tested by an "expert system" diagnostic circuit tester of the type which determines the future course of a test in response to previous results . Digitizer 10 can use the TRIG_OUT signal to communicate detected events to the diagnostic circuit tester in real time and the expert system circuit tester can use the TRIG_IN signal to trigger real time changes in the behavior of digitizer 10 in response to test events detected by other tester components.
While the forgoing specification has described preferred embodiment ( s ) of the present invention, one skilled in the art may make many modifications to the preferred embodiment without departing from the invention in its broader aspects . The appended claims therefore are intended to cover all such modifications as fall within the true scope and spirit of the invention.

Claims

Claim(s) What is claimed is:
1. A programmable digitizer comprising: an analog-to-digital (A/D) converter for producing output SAMPLE DATA indicating a magnitude of an input ANALOG signal in response to a pulse of an input CLOCK signal; a clock signal generator for producing said CLOCK signal with a period controlled by input PERIOD data; logic means for generating an output ADDRESS of value determined in accordance with input MODE data; and a memory having a plurality of addressable storage locations each storing data packet, said memory being addressed by the output ADDRESS of said logic means and reading out addressed data packet, the read out data packet including said PERIOD data provided as input to said clock signal generator, and said MODE data provided as input to said logic means .
2. The programmable digitizer in accordance with claim 1 wherein said logic means comprises: address generation means for generating said output ADDRESS in response to input address selection data, and trigger logic means, receiving said MODE data and a plurality of trigger signals, for generating said address selection data in response to said MODE data and in response to a edge of one said trigger signals referenced by said MODE data.
3. The programmable digitizer in accordance with claim 2 wherein said logic means further comprises a first counter for counting pulses of said CLOCK signal and generating an edge in one of said trigger signals when a number of counted CLOCK signal pulses reaches a first count limit indicated by first count limit data supplied thereto.
4. The programmable digitizer in accordance with claim
wherein said logic means further comprises a second counter for countering pulses of an input COUNT signal and generating an edge in another of said trigger signals when it reaches a second count limit indicated by second count limit data supplied thereto, and wherein said trigger logic means also generates a pulse of said COUNT signal in response to one of said trigger signals referenced by said MODE data.
5. The programmable digitizer in accordance with claim 3 wherein a portion of said MODE data is supplied to said first counter, and wherein said trigger logic means also generates a first LOAD signal in response to one of said trigger signals referenced by said MODE data, said first LOAD signal causing said first counter to store said portion of said MODE data as said first count limit data.
6. The programmable digitizer in accordance with claim 4 wherein a portion of said MODE data is supplied to said first counter and to said second counter, wherein said trigger logic means also generates a first LOAD signal in response to one of said trigger signals referenced by said MODE data, said first LOAD signal causing said first counter to store said portion of said MODE data as said first count limit data, and wherein said trigger logic means also generates a second LOAD signal in response to one of said trigger signals referenced by said MODE data, said second LOAD signal causing said second counter to store said portion of said MODE data as said second count limit data.
7. The programmable digitizer in accordance with claim 2 wherein said address generation means comprises: a first arithmetic logic unit (ALU) for computing an output first address, means for producing an output second address, and a multiplexer controlled by said address selection data for selectively delivering one of said first and second addresses to said as said ADDRESS input to said memory in response to said address selection data generated by said trigger logic means .
8. The programmable digitizer in accordance with claim 7 wherein said first ALU increments said first address in response to an input INC_PC signal, and wherein said trigger logic circuit generates said INC_PC signal in response to one of said trigger signals referenced by said MODE data.
The programmable digitizer in accordance with claim
wherein said first ALU increases a value of said first address by the amount of the ADDRESS output of said multiplexer in response to an input BRANCH signal, and wherein said trigger logic circuit generates said BRANCH signal in response to one of said trigger signals referenced by said MODE data.
10. The programmable digitizer in accordance with claim 7 wherein said means for producing an output second address comprises a second ALU, wherein said second ALU increments a value of the ADDRESS output of said multiplexer to produce said second address in response to an input INC_SUB signal, and wherein said trigger logic circuit generates said INC_SUB signal in response to one of said trigger signals referenced by said MODE data .
11. The programmable digitizer in accordance with claim 10 further comprising a register storing a third address, wherein said multiplexer also selectively delivers said third address as said as said ADDRESS input to said memory in response to said address selection data generated by said trigger logic means .
12. The programmable digitizer in accordance with claim 7 wherein said means for producing an output second address comprises : a register storing said second address, and means for writing said second address into said register.
13. The programmable digitizer in accordance with claim 1 wherein said clock signal generator produces said CLOCK signal when enabled by an input CLOCK_EN signal, and wherein said trigger logic circuit generates said CLOCK_EN signal in response to one of said trigger signals referenced by said MODE data.
14. The programmable digitizer in accordance with claim
1 further comprising a data acquisition system for storing said SAMPLE data produced by said A/D converter when enabled by an input ACQ_EN signal, and wherein said trigger logic circuit generates said ACQ_EN signal in response to one of said trigger signals referenced by said MODE data.
15. The programmable digitizer in accordance with claim
2 wherein said read out data packet also includes LEVEL data indicating an analog magnitude; and wherein said digitizer further comprises means for receiving said LEVEL data and for generating one of said plurality of trigger signals when said ANALOG signal reaches the analog magnitude indicated by said LEVEL data.
The programmable digitizer in accordance with claim wherein said read out data packet also includes LEVEL data indicating an analog magnitude; and wherein said digitizer further comprises means for receiving said LEVEL data and for generating one of said plurality of trigger signals when said ANALOG signal reaches the analog magnitude indicated by said LEVEL data.
17. A method for digitizing an ANALOG signal comprising the steps of: producing SAMPLE DATA indicating a magnitude of the ANALOG signal in response to a pulse of a CLOCK signal; producing said CLOCK signal with a period controlled by input PERIOD data; generating an ADDRESS determined by MODE data; and addressing a memory having a plurality of addressable storage locations each storing a data packet said ADDRESS such that said memory reads out an addressed data packet, the read out data packet including said PERIOD data and said MODE data.
18. The method in accordance with claim 17 wherein said MODE data references at least one of a plurality of trigger signal, and wherein the step of generating said ADDRESS comprises the substeps of: generating said output ADDRESS in response to input address selection data, and generating said input address selection data in response to said MODE data and in response to an edge of a trigger signal referenced by said MODE data.
19. The method in accordance with claim 18 wherein one trigger signal referenced by said MODE data is produced by counting pulses of said CLOCK signal and generating an edge in said one trigger signal when a number of counted CLOCK signal pulses reaches a predetermined limit.
20. The method in accordance with claim 18 further comprising the steps of counting pulses in a first trigger signal referenced by said MODE data; and generating an edge in a second trigger signal referenced by said MODE data when a number of counted first trigger pulses reaches a predetermined count limit.
21. The method in accordance with claim 18 wherein said read out data packet also includes LEVEL data indicating an analog magnitude and further comprising the step of generating one of said plurality of trigger signals referenced by said MODE data when said ANALOG signal reaches the analog magnitude indicated by said LEVEL data.
PCT/US1999/008743 1998-04-24 1999-04-20 Programmable digitizer WO1999056397A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP99919942A EP1080532A4 (en) 1998-04-24 1999-04-20 Programmable digitilizer
JP2000546458A JP2002513235A (en) 1998-04-24 1999-04-20 Programmable digitizer
KR1020007009837A KR20010041638A (en) 1998-04-24 1999-04-20 Programmable digitizer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/066,036 1998-04-24
US09/066,036 US6031479A (en) 1998-04-24 1998-04-24 Programmable digitizer with adjustable sampling rate and triggering modes

Publications (2)

Publication Number Publication Date
WO1999056397A1 true WO1999056397A1 (en) 1999-11-04
WO1999056397A8 WO1999056397A8 (en) 1999-12-02

Family

ID=22066856

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/008743 WO1999056397A1 (en) 1998-04-24 1999-04-20 Programmable digitizer

Country Status (5)

Country Link
US (1) US6031479A (en)
EP (1) EP1080532A4 (en)
JP (1) JP2002513235A (en)
KR (1) KR20010041638A (en)
WO (1) WO1999056397A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6593937B2 (en) * 1998-06-18 2003-07-15 Sony Corporation Method of and apparatus for handling high bandwidth on-screen-display graphics data over a distributed IEEE 1394 network utilizing an isochronous data transmission format
US20070035668A1 (en) * 2005-08-11 2007-02-15 Sony Corporation Method of routing an audio/video signal from a television's internal tuner to a remote device
US8481872B2 (en) 2008-12-22 2013-07-09 N-Trig Ltd. Digitizer, stylus and method of synchronization therewith
US20210194494A1 (en) * 2018-09-11 2021-06-24 Nalu Scientific, LLC System and method for high-sample rate transient data acquisition with pre-conversion activity detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4283713A (en) * 1979-01-15 1981-08-11 Tektronix, Inc. Waveform acquisition circuit
US4578667A (en) * 1984-03-23 1986-03-25 Tektronix, Inc. Digital acquisition system including a high-speed sampling gate
US4858142A (en) * 1987-08-05 1989-08-15 Tektronix, Inc. Digitizer effective resolution measurement system using sinewave parameter estimation
US5206944A (en) * 1990-06-07 1993-04-27 The United States Of America As Represented By The Secretary Of The Air Force High speed analog to digital converter board for an IBM PC/AT

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4755951A (en) * 1986-03-03 1988-07-05 Tektronix, Inc. Method and apparatus for digitizing a waveform
US4791404A (en) * 1986-03-03 1988-12-13 Tektronix, Inc. Predictive time base control circuit for a waveform system
US4799165A (en) * 1986-03-03 1989-01-17 Tektronix, Inc. Level detecting waveform sampling system
US4827259A (en) * 1986-11-04 1989-05-02 Electric Power Research Institute Circuit for high-frequency sampling and compression of data for high-frequency electrical transient signals superimposed in a low frequency steady-state signal
US4956798A (en) * 1989-08-03 1990-09-11 Tektronix, Inc. Arbitrary waveform generator with adjustable spacing
US5243343A (en) * 1990-12-03 1993-09-07 Zeelan Technology, Inc. Signal acquisition system utilizing ultra-wide time range time base
US5930735A (en) * 1997-04-30 1999-07-27 Credence Systems Corporation Integrated circuit tester including at least one quasi-autonomous test instrument

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4283713A (en) * 1979-01-15 1981-08-11 Tektronix, Inc. Waveform acquisition circuit
US4578667A (en) * 1984-03-23 1986-03-25 Tektronix, Inc. Digital acquisition system including a high-speed sampling gate
US4858142A (en) * 1987-08-05 1989-08-15 Tektronix, Inc. Digitizer effective resolution measurement system using sinewave parameter estimation
US5206944A (en) * 1990-06-07 1993-04-27 The United States Of America As Represented By The Secretary Of The Air Force High speed analog to digital converter board for an IBM PC/AT

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1080532A4 *

Also Published As

Publication number Publication date
EP1080532A1 (en) 2001-03-07
KR20010041638A (en) 2001-05-25
EP1080532A4 (en) 2004-03-31
US6031479A (en) 2000-02-29
WO1999056397A8 (en) 1999-12-02
JP2002513235A (en) 2002-05-08

Similar Documents

Publication Publication Date Title
US6154715A (en) Integrated circuit tester with real time branching
US6415243B1 (en) Performance monitoring and optimization using an adaptive digital circuit
US5526286A (en) Oversampled logic analyzer
US5062109A (en) Memory tester
US4752928A (en) Transaction analyzer
JP3592993B2 (en) Digital peak detector and method for detecting maximum and minimum values
US5521512A (en) Time domain reflectometer using successively delayed test pulses and an interleaved sampling procedure
US6057679A (en) Integrated circuit tester having amorphous logic for real-time data analysis
JPH0635993B2 (en) Data acquisition device
KR20020007325A (en) Integrated circuit testing device with dual purpose analog and digital channels
JPH0623789B2 (en) Signal observation device
US4956798A (en) Arbitrary waveform generator with adjustable spacing
US6031479A (en) Programmable digitizer with adjustable sampling rate and triggering modes
US5414365A (en) Diagnostic apparatus for testing an analog circuit
US6321352B1 (en) Integrated circuit tester having a disk drive per channel
US6378092B1 (en) Integrated circuit testing
EP0224267A2 (en) Data processing apparatus
EP0174150B1 (en) Trigger holdoff system for an oscilloscope
US20030200044A1 (en) Systems and methods for tagging measurement values
USRE34843E (en) Signal controlled waveform recorder
Pieper et al. Fast averaging data acquisition unit for pulse spectrometers
Jones VXIbus beam position monitor module
JPH05273245A (en) Metastable state detection device
JPS60214266A (en) Signal storage device
KR930002026Y1 (en) Resetting circuit for program of i/o device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

AK Designated states

Kind code of ref document: C1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: C1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

CFP Corrected version of a pamphlet front page
CR1 Correction of entry in section i

Free format text: PAT. BUL. 44/99 UNDER (54) THE TITLE IN ENGLISH SHOULD READ "PROGRAMMABLE DIGITIZER"

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1999919942

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020007009837

Country of ref document: KR

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 546458

Kind code of ref document: A

Format of ref document f/p: F

WWP Wipo information: published in national office

Ref document number: 1999919942

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020007009837

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1999919942

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1020007009837

Country of ref document: KR