Reconfigurable fpga with 16 x 16 bit analog input, 8 x 16 bit analog output and 32 digital i/o (95 pages)
Summary of Contents for Tews Technologies TPMC851
Page 1
The Embedded I/O Company TPMC851 Multifunction I/O (16 bit ADC/DAC, TTL I/O, Counter) Version 2.1 User Manual Issue 2.1.0 May 2024 TEWS TECHNOLOGIES GmbH Eggerstedter Weg 14, 25421 Pinneberg, Germany Phone: +49 (0) 4101 4058 0 info@tews.com www.tews.com...
Page 2
However TEWS Technologies GmbH reserves the right to change the product described in this document at any time without notice. TEWS Technologies GmbH is not liable for any damage arising out of the application or use of the device described herein.
Page 3
"PCI Base Address 2 for Local Address Space 0" initial value 1.0.9 September 2014 corrected in Table "PCI9030 Header" 2.0.0 User Manual Update for TPMC851 V2.0. September 2022 2.1.0 User Manual Update for TPMC851 V2.1. May 2024 TPMC851 User Manual Issue 2.1.0...
1 Product Description The TPMC851 combines 32 single ended / 16 differential channels of 16 bit multiplexed analog input, 8 channels of 16 bit analog output, 16 digital I/O lines and 2 32 bit multi-purpose counters on a standard single-width PMC module.
The TPMC851 offers 2x 32 bit multi-purpose counters. Each counter includes a 32 bit preload register and a 32 bit compare register. The 32 bit counters can be fed with an internal clock or with an external signal supplied by the digital inputs.
16 bit Conversion Time 10µs max. Accuracy ±1 LSB @ 25°C with correction Linearity ±2 LSB @ 25°C with correction DAC INL/DNL Error ±4/±3 LSB Capacitive Load Up to 10 000pF TPMC851 User Manual Issue 2.1.0 Page 9 of 65...
If FIT rates are not available, MIL-HDBK-217F and MIL-HDBK-217F Notice 2 formulas are used for FIT rate calculation. Humidity 5 – 95 % non-condensing Weight 75.4 g Table 2-1 : Technical Specification TPMC851 User Manual Issue 2.1.0 Page 10 of 65...
3 Handling and operation Instructions This PMC module is sensitive to static electricity. Packing, unpacking and all other module handling has to be done with appropriate care. TPMC851 User Manual Issue 2.1.0 Page 11 of 65...
Space 0x14 Little Local Register Address 2 (0x18) Space 3 (0x1C) Sequencer Data RAM ADC/DAC 4 (0x20) Correction Data ROM 5 (0x24) Not Used Table 4-2 : PCI Address Space Overview TPMC851 User Manual Issue 2.1.0 Page 12 of 65...
General Purpose I/O Control 0x026D_B6D2 0x70 Hidden1 Register for Power Management Data Select 0x0000_0000 0x74 Hidden 2 Register for Power Management Data Scale 0x0000_0000 Table 4-4 : PCI Controller Configuration Register Map TPMC851 User Manual Issue 2.1.0 Page 14 of 65...
Input Voltage Range ±10V GAIN [1:0] ±5V ±2.5V ±1.25V Single/Differential Mode Control 0 = Single-ended mode SE/DIFF 32 single-ended input channels available 1 = Differential mode 16 differential input channels available TPMC851 User Manual Issue 2.1.0 Page 17 of 65...
(ADCSTAT). Conversions initiated by the sequencer will have no effect to this register. Reset Symbol Description Access Value Reserved 31:16 Write: don't care Read: always reads as '0' 15:0 Stores the converted 16 bit data value. Table 4-7 : ADC Data Register TPMC851 User Manual Issue 2.1.0 Page 18 of 65...
This is based on the chip design of the ADC device. Software should ignore the data of the first two ADC conversions after power-up. The software drivers from TEWS Technologies already include these two dummy conversions. TPMC851 User Manual Issue 2.1.0...
Register as '0' or wait for a Settling Time Interrupt before the conversion is started. The ADC_BUSY bit in the ADC Status Register indicates if the conversion data in the ADC Data Register is valid (ADC_BUSY bit = '0'). TPMC851 User Manual Issue 2.1.0 Page 20 of 65...
If ADC_OUT in the Line Direction Register LINEDIR is set to ‘1’, the trigger signal for the sequencer is available for external use on Dig I/O Line 0. Do not use the External Signal as Sequencer Trigger Source if ADC_OUT is enabled. This will cause the sequencer to lock. TPMC851 User Manual Issue 2.1.0 Page 21 of 65...
If a channel is configured as differential channel, the instruction of the associated channel is ignored (see following chart or chapter ‘Pin Assignment – I/O Connector’ for the associated channels). Within a sequence mixed single-ended and differential modes are possible. TPMC851 User Manual Issue 2.1.0 Page 23 of 65...
Page 24
If a sequence is started with an empty instruction RAM, an I-RAM error is issued. The Sequencer Instruction RAM is accessible only while the sequencer is not running (SEQ_ON = 0). TPMC851 User Manual Issue 2.1.0 Page 24 of 65...
Interrupts are generated only if the Master Interrupt Enable (MIE) is enabled in the Interrupt Control Register ICR. If DAC_OUT in the Line Direction Register LINEDIR is set to ‘1’, the trigger signal for the sequencer is available for external use on Dig I/O Line 1. TPMC851 User Manual Issue 2.1.0 Page 26 of 65...
Sequencer Timer Register when a sequence is started. In sequencer timer mode the start of the next sequence is delayed for: Register Value * 100µs. The time base for the sequencer timer is derived from an on board 40 MHz oscillator. TPMC851 User Manual Issue 2.1.0 Page 27 of 65...
I/O Line 13 0 = TTL I/O line as Input LINEDIR12 I/O Line 12 1 = TTL I/O line as Output LINEDIR11 I/O Line 11 LINEDIR10 I/O Line 10 LINEDIR9 I/O Line 9 TPMC851 User Manual Issue 2.1.0 Page 28 of 65...
Line Debounce Time Register LINEDBT. The digital input signal must have duration greater than the programmed debounce duration in order to be recognized as a valid input signal. The disabled I/O lines will not be filtered. TPMC851 User Manual Issue 2.1.0 Page 29 of 65...
1 = TTL I/O line logic high LINEIN5 I/O Line 5 LINEIN4 I/O Line 4 LINEIN3 I/O Line 3 LINEIN2 I/O Line 2 LINEIN1 I/O Line 1 LINEIN0 I/O Line 0 Table 4-24 : Line Input Register TPMC851 User Manual Issue 2.1.0 Page 30 of 65...
An interrupt will be generated when the input line LINEIENP13 I/O Line 13 changes from 0 to 1. LINEIENP12 I/O Line 12 For pending interrupts and interrupt acknowledge see the Line Interrupt Status Register LINEIST. LINEIENP11 I/O Line 11 TPMC851 User Manual Issue 2.1.0 Page 31 of 65...
I/O Line 9 Write access: LINEISTP8 I/O Line 8 1 : clear pending interrupt request LINEISTP7 I/O Line 7 LINEISTP6 I/O Line 6 LINEISTP5 I/O Line 5 LINEISTP4 I/O Line 4 TPMC851 User Manual Issue 2.1.0 Page 32 of 65...
LINEISTP3 I/O Line 3 LINEISTP2 I/O Line 2 LINEISTP1 I/O Line 1 LINEISTP0 I/O Line 0 Table 4-27 : Line Interrupt Status Register TPMC851 User Manual Issue 2.1.0 Page 33 of 65...
Byte or word accesses on this register are not supported and will fail. 4.3.4.4 Counter 1 Control Register CNTCONT (Offset 0x012C) Reset Symbol Description Access Value Reserved 31:15 Write: don't care Read: always reads as '0' TPMC851 User Manual Issue 2.1.0 Page 34 of 65...
Page 35
The Count Mode determines the behavior of the counter. Count Mode Cycling Counter Divide-by-N Single Cycle See chapter ‘Count Modes’ for details. Internal Clock Prescaler CLKDIV Prescaler Clock frequency 40 MHz CLKDIV 20 MHz 10 MHz 5 MHz TPMC851 User Manual Issue 2.1.0 Page 35 of 65...
In the 'Direction Count' mode this bit corresponds to the Y- input. Sign The Sign bit is set to '1' when the counter overflows, and set to '0' when the counter underflows. TPMC851 User Manual Issue 2.1.0 Page 36 of 65...
CNTPRL. This bit is cleared immediately after a write access. Reset Counter RCNT Write ‘1’ to reset the counter. This bit is cleared immediately after a write access. Table 4-33 : Counter 1 Command Register TPMC851 User Manual Issue 2.1.0 Page 37 of 65...
The interrupt flags in this register are informational only. All interrupts must be acknowledged in their associated registers. Interrupts are generated only if the Master Interrupt Enable (MIE) is enabled in the Interrupt Control Register ICR. TPMC851 User Manual Issue 2.1.0 Page 38 of 65...
Data Register Latch is active, the OVFL_EXT bit in Counter 2 Status Register will be set to indicate that data was lost. To avoid data inconsistencies this register is developed for a long word (32 bit) read/write access. Byte or word accesses on this register are not supported and will fail. TPMC851 User Manual Issue 2.1.0 Page 39 of 65...
Page 40
The Count Mode determines the behavior of the counter. Count Mode Cycling Counter SCM_EXT Divide-by-N Single Cycle See chapter ‘Count Modes’ for details. Internal Clock Prescaler CLKDIV Prescaler Clock frequency 40 MHz CLKDIV_EXT 20 MHz 10 MHz 5 MHz TPMC851 User Manual Issue 2.1.0 Page 40 of 65...
See chapter ‘Input Modes’ for details. Table 4-38 : Counter 2 Control Register Interrupts are generated only if the Master Interrupt Enable (MIE) is enabled in the Interrupt Control Register ICR. TPMC851 User Manual Issue 2.1.0 Page 41 of 65...
This bit is set to '1' when the counter changes from 0x00000000 to 0xFFFFFFFF. This bit must be reset by writing a '1' to this bit. Table 4-39 : Counter 2 Status Register TPMC851 User Manual Issue 2.1.0 Page 42 of 65...
Value of 1 issues a reset to the local logic. The local logic remains in this reset condition until the PCI Host clears the bit. The contents of the PCI Controller Configuration Registers are not reset. TPMC851 User Manual Issue 2.1.0 Page 46 of 65...
The data correction values are obtained during the factory acceptance test and are stored in the Correction Data ROM. Please use the total 16 bit data register value for the ADC correction formula. The basic formula for correcting any ADC reading for the TPMC851 (bipolar input voltage range) is: ...
Floating point arithmetic or scaled integer arithmetic must be used to avoid rounding errors in computing above formula. The ADC part of the TPMC851 can operate in two modes: the Manual Mode, with little or none support through automation, and the Sequencer Mode, with large support through automation.
(TIMER_ERROR) is not active. A new external trigger is accepted only after a sequence has completed. An external trigger while the sequencer runs is ignored. The update rate depends on the number of enabled channels: Update Rate = 16µs ∙ number of enabled channels TPMC851 User Manual Issue 2.1.0 Page 49 of 65...
If the Sequence Timer Register is set to 0x0000 (Sequencer Continuous Mode) the sequencer ignores the data overflow. The Data Overflow Error Flag is always read as ‘0’ in this mode. TPMC851 User Manual Issue 2.1.0 Page 50 of 65...
When the IRQ after Settling Time is issued, the channel is ready for conversion. Write to the ADC Conversion Start Register ADCCONV and acknowledge the Interrupt in the ADC Status Register ADCSTAT (SETTL_IRQ = '1') TPMC851 User Manual Issue 2.1.0 Page 51 of 65...
Figure 6-2 : Flow: Fastest conversion of a specific single channel Conversion time is approx 1.25µs, as long as neither the channel nor the gain is changed (ADC throughput rate up to 250ksps). TPMC851 User Manual Issue 2.1.0 Page 52 of 65...
Acknowledge the Interrupt and clear the DATA_AV flag in the ADC Sequencer Status Register ADCSEQSTAT (SEQ_IRQ = '1') and read the Sequencer Data RAM Figure 6-3 : Flow: Periodic conversion of multiple channels TPMC851 User Manual Issue 2.1.0 Page 53 of 65...
Set the Sequencer Timer Register ADCSEQTIMER to 0x0000 Start the Sequencer in the Sequencer Control Register ADCSEQCONT Read the data from the Sequencer Data RAM as needed. Figure 6-4 : Flow: Continuous conversion of multiple channels TPMC851 User Manual Issue 2.1.0 Page 54 of 65...
The DAC part of the TPMC851 can operate in two modes – Immediate Update or Simultaneous Update. These modes are configured with the Load Mode Select (LOADSEL) bits in the DAC Control Register DACCONT. LOADSEL[1:0] Load Mode Immediate Update Immediate Update:...
Note that some digital inputs are internally used in the other parts of the TPMC851: TTL I/O line 0 as ADC sequencer trigger input/output TTL I/O line 1 as DAC sequencer trigger input/output TTL I/O lines 2,3,5 and 6 as inputs for the counters...
The general purpose counters of the TPMC851 offer 4 Input Modes, 3 Count Modes and 4 Control Modes. The Input Mode determines the input source for the counters and how the counters interpret these input signals: Input Mode I/O Line 2...
With the exception of the Gate Mode, all modes react on a level change on I/O Lines 4/7. Note that if the digital debounce filter is applied, a change in the input level is only detected when the input line is stable for duration greater than the programmed debounce duration. TPMC851 User Manual Issue 2.1.0 Page 58 of 65...
If the 'Single Cycle' mode is active, the event on I/O Lines 4/7 starts the counters. The counters can also be reset by writing '1' to the Reset Counter (RCNT/RCNT_EXT) bit in the Channel Command Registers. TPMC851 User Manual Issue 2.1.0 Page 59 of 65...
Counter 2 Status Register MIRQ_EXT Counter match interrupt 2 CNTCONT_EXT CNTSTAT_EXT Table 6-8 : Interrupt sources The Interrupt Control Register can give a quick overview which interrupt source caused an interrupt. TPMC851 User Manual Issue 2.1.0 Page 61 of 65...
7 Installation The TPMC851 provides 32 single-ended or 16 differential multiplexed analog inputs. The desired input channel and the mode (single-ended or differential) are selected by programming the input multiplexer. A software programmable gain amplifier with gain settings of 1, 2, 4 and 8 allows a direct connection of a wide range of sensors and instrumentation.
Figure 7-2 : DAC Output Wiring In total, 16 TTL I/O lines are available on the standard TPMC851. These I/O lines are utilized with an input and output buffer with a 4.7kΩ pull up resistor for the tri-state output function and an array for ESD protection. See the following figure for more information.
If the sequencer is to be used, these two dummy conversions are absolutely necessary. If a TEWS Technologies software drivers is used, these two dummy conversions are already included. Unused Multiplexer inputs can pick up stray signals which are injected into the device’s substrate. This turns on spurious substrate devices which badly degrade the performance of the whole multiplexer device.
Need help?
Do you have a question about the TPMC851 and is the answer not in the manual?
Questions and answers