LPTX BOARD DRIVER:


INTRODUCTION:

This driver supports four different configurations, all using a basic LPT printer port instead of a conventional ADC board or sound card.

A standard LPT printer port actually consists of 3 separate port addresses: data output, status input, and control. The configurations or board "Models" are named for the way in which the data output is utilized. They are discussed below in order of increasing circuit construction requirements: DigOut, DAC, SAR, and MUX.

Complete printed circuit board layouts for the MUX board are provided for standard printers. This board can easily be modified if only the simpler models are desired.

DIGOUT MODEL:

The DigOut model uses the data port to provide digital output support for the STIM3 module's DigOut option. It also allows four digital input channels instead of an analog input as on a true ADC board. These channels may be selected individually, or combined in a weighted fashion for display as 16 possible input levels.

Because digital data can be sampled very quickly compared to a conventional ADC, this configuration can support sample rates over 90 kHz on a 12 MHz 286 CPU, up to 170 kHz on a 200 MHz Pentium. With a single digital input channel, this simple system can monitor the output of neural spike discriminators or other digital events. With a weighted input of four channels, it can monitor four separate events at full sample rate.

By making use of the DigOut stimulus option, this can become the basis of a simple "signature analyzer" to monitor the responses of a system or subject to complex input patterns. Using a weighted combination of four inputs, the shape of the response waveform becomes a "signature" that allows quick detection of missing, spurious, or misaligned input pulses. It is thus easy to compare the responses of a "known good" system to those of a system under test.

An analog signal can be sampled with a single digital input via waveform averaging if an external trigger is available and there is enough noise present to provide a dither effect. The noise can be created by the built-in Noise option and added to the signal, if needed.

The basic DigOut configuration requires no actual circuit construction other than wiring up the inputs and outputs to a printer port connector.

The weighted input option could also be used with external circuitry to build a simple 4-bit high-speed "flash" ADC converter for educational purposes.


DAC MODEL:

The 8 bits of the LPT data port are combined via a simple resistor network to form a Digital to Analog Converter (DAC), which can be be used with the STIM3 module to produce analog stimuli such as tone bursts. The inputs are the same as for the DigOut configuration: Four bits, digital only, with a weighted combination option.

Although 8-bit analog output capability is not normally regarded as "high fidelity", it turns out to be surprisingly good for many research and test applications. One reason for this is that the shortcomings of 8-bit audio are most evident only at low levels, where less than 8 bits are actually contributing to the waveform. However, for many stimulus generation purposes the waveform can be created at full scale, then reduced via an external attenuator to any desired working level.

Sine waves produced this way can have distortion specs typical of standard laboratory "function generator" oscillators, yet have the advantages of programmability and synchronization to the test system. Note that for continuous sine wave output you will need to use RTime mode so that screen updates will be interwoven with data samples. Also, some display adaptors may cause noise bursts during screen updates, in which case you may need to toggle trace View off.

For high frequency work, either the DAC or DigOut model can utilize the STIM3 Stimulus Factor option to produce outputs with a higher sample rate than that used to observe the input data.

Special options allow still more flexibility than provided by STIM3 alone. You can create high quality broadband random noise, or slow triangle or ramp stimuli. You can produce DC levels that stay constant during each sweep, then change between sweeps in a staircase or random fashion with full control over limits, direction, and resolution.

The DAC and DigOut models are effectively the same except for the assumptions made by STIM3. There is nothing to prevent you from specifying the DAC model, yet actually connecting it to digital circuits if you have need for a digital sine wave for educational purposes or special tests. Conversely, you could specify DigOut but use the DAC to get the weighted sum of 8 digital bits, allowing complex stepped pulse trains.

The DAC output can be used for a dramatic demonstration of the dither effect if triggering can be provided to allow waveform averaging. The DAC can provide either noise or stepped DC which is externally added to the signal. Even with just a single-bit input, the signal can be recovered completely to 8-bit resolution in only 256 sweeps using simple DC dither.

For some systems, an external buffer chip may be needed for uniform output drive to the DAC network. Although such chips typically require a 5 Volt power source, you can often omit this and still obtain many benefits of the buffer!


SAR MODEL:

This uses the DAC resistor network as the basis for a classic Successive Approximation Register (SAR) to provide true ADC capability. Although the resolution is only 8 bits, this is not really much of a handicap in many applications, especially if you are looking at really noisy data that needs waveform averaging anyway. The miracle of dither provides an effective extra bit of resolution for every doubling of the number of sweeps averaged, so if you average only 16 sweeps you will get about the same result as a full 12-bit board. 256 sweeps gives you an effective 16-bit board... and there are plenty of experiments that are noisy enough to require more than 256 sweeps anyway.

Since the data output is in use for the SAR, no DigOut or DAC stimulus generation is available, either via the STIM3 module or the special LPTX output modes. However, the Trigger Pulse option is still available to create a digital output once per Sequential sweep. This can be used as-is to provide a click stimulus, or can be used to drive or synchronize other external stimulus sources.

The basic passive SAR model can be created as a simple modification to the passive DAC model. As with the DAC model, some systems require external buffer chips to give linear performance without "glitches", or to insure identical calibration if the unit must be moved among different LPT ports.


MUX MODEL:

"MUX" is short for "Multiplex", and refers to the fact that this configuration uses the LPT output port for both the DAC output and the ADC input, rapidly switching as needed to allow "simultaneous" operation: You can thus produce tone stimuli with STIM3 while analyzing responses with the ADC.

On each sample, the output of the DAC network is first connected in the SAR configuration to acquire the current ADC input value. Then the DAC output is switched to a simple sample-and-hold (S/H) circuit while the STIM3 or other data is converted to an output voltage. The DAC maintains that output value until the start of the next sample, when it is disconnected from the S/H and reconnected to the SAR. The S/H maintains the value until the SAR is done and the DAC is reconnected.

There is also a special "Echo" mode available that sends the ADC input data back out to the DAC after a selectable delay. By externally mixing a small portion of the DAC output with the incoming signal, you can create a simple reverberation effect. Other connections allow flanging or chorus / doubling effects. Not exactly high-fi, but fun nonetheless!

This circuit is more complex than the other models, and requires good construction techniques, but provides the widest options for use. With this circuit you can still specify DAC or SAR instead of MUX, and the multiplexer will switch to the indicated model mode.


TYPICAL PERFORMANCE:

Maximum sample rates in kHz:
           CPU:   8088   286   286   386   486   586
   Speed (MHz):   4.77    6    12    40    33    200

Digital input alone, DigOut or DAC models:
   Sequential..... 29    79    99    99    99    170
   Rtime..........  7    25    47    91    99    238

With Noise output:
   Sequential..... 13    47    91    99    91    170
   Rtime..........  5    19    34    74    79    170

With STIM3 DigOut or DAC output:
   Sequential..... 12    32    56    74    85    170
   RTime..........  5    20    38    74    85    170

STIM3 DAC oversampling output rate with input rate at 20 kHz:
   Sequential..... --    80   180   240   120    240
   RTime.......... --    20    38    80    80    240

SAR ADC input:
   Sequential.....  5    14    26    35    31     39
   RTime..........  3.6  10    20    30    28     39

MUX with simultaneous ADC input and STIM3 DAC output:
   Sequential.....  4.7  14    23    31    28     34
   RTime..........  3     9    16    27    25     34


GO:

Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
INTERSTELLAR RESEARCH: Over 20 Years of Innovative Instrumentation
© Copyright 1999 - 2001 by Interstellar Research - tech@daqarta.com