SNAS407H August   2007  – April 2015 DAC128S085

PRODUCTION DATA.  

  1. Features
  2. Applications
  3. Description
  4. Revision History
  5. Description (continued)
  6. Pin Configuration and Functions
  7. Specifications
    1. 7.1 Absolute Maximum Ratings
    2. 7.2 ESD Ratings
    3. 7.3 Recommended Operating Conditions
    4. 7.4 Thermal Information
    5. 7.5 Electrical Characteristics
    6. 7.6 AC and Timing Characteristics
    7. 7.7 Typical Characteristics
  8. Detailed Description
    1. 8.1 Overview
    2. 8.2 Functional Block Diagram
    3. 8.3 Feature Description
      1. 8.3.1 DAC Architecture
      2. 8.3.2 Output Amplifiers
      3. 8.3.3 Reference Voltage
      4. 8.3.4 Serial Interface
      5. 8.3.5 Daisy-Chain Operation
      6. 8.3.6 DAC Input Data Update Mechanism
      7. 8.3.7 Power-On Reset
      8. 8.3.8 Transfer Characteristic
    4. 8.4 Device Functional Modes
      1. 8.4.1 Power-Down Modes
    5. 8.5 Programming
      1. 8.5.1 Programming the DAC128S085
        1. 8.5.1.1 Updating DAC Outputs Simultaneously
        2. 8.5.1.2 Updating DAC Outputs Independently
  9. Application and Implementation
    1. 9.1 Application Information
      1. 9.1.1 Using References as Power Supplies
    2. 9.2 Typical Application
      1. 9.2.1 Design Requirements
      2. 9.2.2 Detailed Design Procedure
      3. 9.2.3 Application Curve
  10. 10Power Supply Recommendations
  11. 11Layout
    1. 11.1 Layout Guidelines
    2. 11.2 Layout Example
  12. 12Device and Documentation Support
    1. 12.1 Device Support
      1. 12.1.1 Specification Definitions
    2. 12.2 Documentation Support
      1. 12.2.1 Related Documentation
    3. 12.3 Trademarks
    4. 12.4 Electrostatic Discharge Caution
    5. 12.5 Glossary
  13. 13Mechanical, Packaging, and Orderable Information

8 Detailed Description

8.1 Overview

The DAC128S085 is fabricated on a CMOS process with an architecture that consists of switches and resistor strings followed by an output buffer. The reference voltages are externally applied at VREF1 for DAC channels A through D, and VREF2 for DAC channels E through H.

8.2 Functional Block Diagram

DAC128S085 30016903.gif

8.3 Feature Description

8.3.1 DAC Architecture

For simplicity, a single resistor string is shown in Figure 26. This string consists of 4096 equal valued resistors with a switch at each junction of two resistors, plus a switch to ground. The code loaded into the DAC register determines which switch is closed, connecting the proper node to the amplifier. The input coding is straight binary with an ideal output voltage of:

Equation 1. VOUTA,B,C,D = VREF1 × (D / 4096)

where

  • D is the decimal equivalent of the binary code that is loaded into the DAC register.
Equation 2. VOUTE,F,G,H = VREF2 × (D / 4096)

D can take on any value between 0 and 4095. This configuration ensures that the DAC is monotonic.

DAC128S085 30016907.gifFigure 26. DAC Resistor String

Because all eight DAC channels of the DAC128S085 can be controlled independently, each channel consists of a DAC register and a 12-bit DAC. Figure 27 is a simple block diagram of an individual channel in the DAC128S085. Depending on the mode of operation, data written into a DAC register causes the 12-bit DAC output to be updated, or an additional command is required to update the DAC output. Further description of the modes of operation can be found in Serial Interface.

DAC128S085 30016969.gifFigure 27. Single-Channel Block Diagram

8.3.2 Output Amplifiers

The output amplifiers are rail-to-rail, providing an output voltage range of 0 V to VA when the reference is VA. All amplifiers, including rail-to-rail types, exhibit a loss of linearity as the output approaches the supply rails (0 V and VA, in this case). For this reason, linearity is specified over less than the full output range of the DAC. However, if the reference is less than VA, only the lowest codes experience a loss in linearity.

The output amplifiers can drive a load of 2 kΩ in parallel with 1500 pF to ground or to VA. The zero-code and full-scale outputs for given load currents are available in the Electrical Characteristics.

8.3.3 Reference Voltage

The DAC128S085 uses dual external references, VREF1 and VREF2, which are shared by channels A, B, C, D and channels E, F, G, H, respectively. The reference pins are not buffered and have an input impedance of 30 kΩ. TI recommends driving VREF1 and VREF2 by voltage sources with low output impedance. The reference voltage range is 0.5 V to VA, providing the widest possible output dynamic range.

8.3.4 Serial Interface

The three-wire interface is compatible with SPI, QSPI, and MICROWIRE, as well as most DSPs, and operates at clock rates up to 40 MHz. A valid serial frame contains 16 falling edges of SCLK. See Table 1 for information on a write sequence.

A write sequence begins by bringing the SYNC line low. Once SYNC is low, the data on the DIN line is clocked into the 16-bit serial input register on the falling edges of SCLK. To avoid mis-clocking data into the shift register, it is critical that SYNC not be brought low on a falling edge of SCLK (see minimum and maximum setup times for SYNC in AC and Timing Characteristics and Figure 28). On the 16th falling edge of SCLK, the last data bit is clocked into the register. The write sequence is concluded by bringing the SYNC line high. Once SYNC is high, the programmed function (a change in the DAC channel address, mode of operation, or register contents) is executed. To avoid mis-clocking data into the shift register, it is critical that SYNC be brought high between the 16th and 17th falling edges of SCLK (see minimum and maximum hold times for SYNC in AC and Timing Characteristics and Figure 28).

DAC128S085 30016965.gifFigure 28. CS Setup and Hold Times

If SYNC is brought high before the 15th falling edge of SCLK, the write sequence is aborted and the data that has been shifted into the input register is discarded. If SYNC is held low beyond the 17th falling edge of SCLK, the serial data presented at DIN will begin to be output on DOUT. More information on this mode of operation can be found in Daisy-Chain Operation. In either case, SYNC must be brought high for the minimum specified time before the next write sequence is initiated with a falling edge of SYNC.

Since the DIN buffer draws more current when it is high, it should be idled low between write sequences to minimize power consumption. On the other hand, SYNC should be idled high to avoid the activation of daisy chain operation where DOUT is active.

8.3.5 Daisy-Chain Operation

Daisy-chain operation allows communication with any number of DAC128S085s using a single serial interface. As long as the correct number of data bits are input in a write sequence (multiple of sixteen bits), a rising edge of SYNC will properly update all DACs in the system.

To support multiple devices in a daisy chain configuration, SCLK and SYNC are shared across all DAC128S085s and DOUT of the first DAC in the chain is connected to DIN of the second. Figure 29 shows three DAC128S085s connected in daisy chain fashion. Similar to a single channel write sequence, the conversion for a daisy chain operation begins on a falling edge of SYNC and ends on a rising edge of SYNC. A valid write sequence for n devices in a chain requires n times 16 falling edges to shift the entire input data stream through the chain. Daisy chain operation is ensured for a maximum SCLK speed of 30 MHz.

DAC128S085 30016967.gifFigure 29. Daisy-Chain Configuration

The serial data output pin, DOUT, is available on the DAC128S085 to allow daisy-chaining of multiple DAC128S085 devices in a system. In a write sequence, DOUT remains low for the first 14 falling edges of SCLK before going high on the 15th falling edge. Subsequently, the next 16 falling edges of SCLK will output the first 16 data bits entered into DIN. Figure 30 shows the timing of 3 DAC128S085s in Figure 29. In this instance, It takes 48 falling edges of SCLK followed by a rising edge of SYNC to load all three DAC128S085s with the appropriate register data. On the rising edge of SYNC, the programmed function is executed in each DAC128S085 simultaneously.

When connecting multiple devices in a daisy-chain configuration, it is important to note that the DAC128S085 will update the DOUT signal on the falling edge of SCLK, and this will be sampled by the next DAC in the daisy chain on the next falling edge of the clock. Ensure that the timing requirements are met for proper operation. Specifically, pay attention to the data hold time after the SCLK falling (tDH) requirement. Improper layout or loading may delay the clock signal between devices. If delayed to the point that data changes prior to meeting the hold time requirement, incorrect data can be sampled. If the clock delay cannot be resolved, an alternative solution is to add a delay between the DOUT of one device and DIN of the following device in the daisy chain. This increases the hold time margin and allows for correct sampling. Be aware though, that the tradeoff with this fix is that too much delay eventually impacts the setup time.

DAC128S085 30016968.gifFigure 30. Daisy Chain Timing Diagram

8.3.6 DAC Input Data Update Mechanism

The DAC128S085 has two modes of operation, plus a few special command operations. The two modes of operation are Write Register Mode (WRM) and Write Through Mode (WTM). For the rest of this document, these modes will be referred to as WRM and WTM. The special command operations are separate from WRM and WTM because they can be called upon regardless of the current mode of operation. The mode of operation is controlled by the first four bits of the control register, DB15 through DB12. See Table 1 for a detailed summary.

Table 1. Write Register and Write Through Modes

DB[15:12] DB[11:0] Description of Mode
1 0 0 0 X X X X X X X X X X X X WRM: The registers of each DAC Channel can be written to without causing their outputs to change.
1 0 0 1 X X X X X X X X X X X X WTM: Writing data to a channel's register causes the DAC output to change.

When the DAC128S085 first powers up, the DAC is in WRM. In WRM, the registers of each individual DAC channel can be written to without updating the DAC outputs. This is accomplished by setting DB15 to 0, specifying the DAC register to be written to in DB[14:12], and entering the new DAC register setting in DB[11:0] (see Table 2). The DAC128S085 remains in WRM until the mode of operation is changed to WTM. The mode of operation is changed from WRM to WTM by setting DB[15:12] to 1001. Once in WTM, writing data to a DAC channel register causes the DAC output to be updated as well. Changing a DAC channel register in WTM is accomplished in the same manner as in WRM. However, in WTM the DAC register and output are updated at the completion of the command (see Table 2). Similarly, the DAC128S085 remains in WTM until the mode of operation is changed to WRM by setting DB[15:12] to 1000.

Table 2. Commands Impacted by WRM and WTM

DB15 DB[14:12] DB[11:0] Description of Mode
0 0 0 0 D11 D10 ... D1 D0 WRM: D[11:0] written to ChA's data register only
WTM: ChA's output is updated by data in D[11:0]
0 0 0 1 D11 D10 ... D1 D0 WRM: D[11:0] written to only the data register of ChB
WTM: ChB's output is updated by data in D[11:0]
0 0 1 0 D11 D10 ... D1 D0 WRM: D[11:0] written to only the data register of ChC
WTM: ChC's output is updated by data in D[11:0]
0 0 1 1 D11 D10 ... D1 D0 WRM: D[11:0] written only the data register of ChD
WTM: ChD's output is updated by data in D[11:0]
0 1 0 0 D11 D10 ... D1 D0 WRM: D[11:0] written only the data register of ChE
WTM: ChE's output is updated by data in D[11:0]
0 1 0 1 D11 D10 ... D1 D0 WRM: D[11:0] written only the data register of ChF
WTM: ChF's output is updated by data in D[11:0]
0 1 1 0 D11 D10 ... D1 D0 WRM: D[11:0] written only the data register of ChG
WTM: ChG's output is updated by data in D[11:0]
0 1 1 1 D11 D10 ... D1 D0 WRM: D[11:0] written only the data register of ChH
WTM: ChH's output is updated by data in D[11:0]

The special command operations can be exercised at any time regardless of the mode of operation. There are three special command operations. The first command is exercised by setting data bits DB[15:12] to 1010. This allows the user to update multiple DAC outputs simultaneously to the values currently loaded in their respective control registers. This command is valuable if the user wants each DAC output to be at a different output voltage, but still have all the DAC outputs changed to their appropriate values simultaneously (see Table 3).

The second special command allows the user to alter the DAC output of channel A with a single write frame. This command is exercised by setting data bits DB[15:12] to 1011 and data bits DB[11:0] to the desired control register value. This command also causes the DAC outputs of the other channels to update to their current control register values. The user may choose to exercise this command to save a write sequence. For example, the user may wish to update several DAC outputs simultaneously, including channel A. To accomplish this task in the minimum number of write frames, the user would alter the control register values of all the DAC channels except channel A while operating in WRM. The last write frame would be used to exercise the special command Channel A Write Mode. In addition to updating the control register of channel A and output to a new value, all of the other channels would be updated as well. At the end of this sequence of write frames, the DAC128S085 would still be operating in WRM (see Table 3).

The third special command allows the user to set all the DAC control registers and outputs to the same level. This command is commonly referred to as "broadcast" mode, as the same data bits are being broadcast to all of the channels simultaneously. This command is exercised by setting data bits DB[15:12] to 1100 and data bits DB[11:0] to the value that the user wishes to broadcast to all the DAC control registers. Once the command is exercised, each DAC output is updated by the new control register value. This command is frequently used to set all the DAC outputs to some known voltage such as 0 V, VREF/2, or Full Scale. A summary of the commands can be found in Table 3.

Table 3. Special Command Operations

DB[15:12] DB[11:0] Description of Mode
1 0 1 0 X X X X H G F E D C B A Update Select: The DAC outputs of the channels selected with a 1 in DB[7:0] are updated simultaneously to the values in their respective control registers.
1 0 1 1 D11 D10 ... D1 D0 Channel A Write: The control register and DAC output of channel A are updated to the data in DB[11:0]. The outputs of the other seven channels are also updated according to their respective control register values.
1 1 0 0 D11 D10 ... D1 D0 Broadcast: The data in DB[11:0] is written to all channel control registers and DAC output simultaneously.

8.3.7 Power-On Reset

The power-on reset circuit controls the output voltages of the eight DACs during power-up. Upon application of power, the DAC registers are filled with zeros and the output voltages are set to 0 V. The outputs remain at 0 V until a valid write sequence is made.

8.3.8 Transfer Characteristic

DAC128S085 30016905.gifFigure 31. Input / Output Transfer Characteristic

8.4 Device Functional Modes

8.4.1 Power-Down Modes

The DAC128S085 has three power-down modes, where different output terminations can be selected (see Table 4). With all channels powered down, the supply current drops to 0.1 µA at 3 V and 0.2 µA at 5 V. By selecting the channels to be powered down in DB[7:0] with a 1, individual channels can be powered down separately, or multiple channels can be powered down simultaneously. The three different output terminations include high output impedance, 100 kΩ to ground, and 2.5 kΩ to ground.

The output amplifiers, resistor strings, and other linear circuitry are all shut down in any of the power-down modes. The bias generator, however, is only shut down if all the channels are placed in power-down mode. The contents of the DAC registers are unaffected when in power-down. Therefore, each DAC register maintains its value prior to the DAC128S085 being powered down unless it is changed during the write sequence that instructed it to recover from power down. Minimum power consumption is achieved in the power-down mode with SYNC idled high, DIN idled low, and SCLK disabled. The time to exit power-down (Wake-Up Time) is typically 3 µsec at 3 V and 20 µsec at 5 V.

Table 4. Power-Down Modes

DB[15:12] DB[11:8] 7 6 5 4 3 2 1 0 Output Impedance
1 1 0 1 X X X X H G F E D C B A Hi-Z outputs
1 1 1 0 X X X X H G F E D C B A 100 kΩ outputs
1 1 1 1 X X X X H G F E D C B A 2.5 kΩ outputs

8.5 Programming

8.5.1 Programming the DAC128S085

This section presents the step-by-step instructions for programming the serial input register.

8.5.1.1 Updating DAC Outputs Simultaneously

When the DAC128S085 is first powered on, the DAC is operating in Write Register Mode (WRM). Operating in WRM allows the user to program the registers of multiple DAC channels without causing the DAC outputs to be updated. For example, below are the steps for setting Channel A to a full scale output, Channel B to three-quarters full scale, Channel C to half-scale, Channel D to one-quarter full scale and having all the DAC outputs update simultaneously.

As stated previously, the DAC128S085 powers up in WRM. If the device was previously operating in Write Through Mode (WTM), an extra step to set the DAC into WRM is required. First, the DAC registers must be programmed to the desired values. To set Channel A to an output of full scale, write 0FFF to the control register. This updates the data register for Channel A without updating the output of Channel A. Second, set Channel B to an output of three-quarters full scale by writing 1C00 to the control register. This updates the data register for Channel B. Once again, the output of Channel B and Channel A are not updated, because the DAC is operating in WRM. Third, set Channel C to half scale by writing 2800 to the control register. Fourth, set Channel D to one-quarter full scale by writing 3400 to the control register. Finally, update all four DAC channels simultaneously by writing A00F to the control register. This procedure allows the user to update four channels simultaneously with five steps.

Because Channel A was one of the DACs to be updated, one command step could have been saved by writing to Channel A last. Do this by writing to Channel B, C, and D first, and using the the special command Channel A Write to update the DAC register and output of Channel A. This special command also updates all DAC outputs while updating Channel A. With this sequence of commands, the user can update four channels simultaneously using four steps. A summary of this command can be found in Table 3.

8.5.1.2 Updating DAC Outputs Independently

If the DAC128S085 is currently operating in WRM, change the mode of operation to WTM by writing 9XXX to the control register. Once the DAC is operating in WTM, any DAC channel can be updated in one step. For example, if a design required Channel G to be set to half scale, the user can write 6800 to the control register to update the data register and DAC output of Channel G. Similarly, write 5FFF to the control register to set the output of Channel F to full scale. Channel A is the only channel that has a special command that allows its DAC output to be updated in one command, regardless of the mode of operation. Write BFFF to the control register to set the DAC output of Channel A to full scale in one step.