Texas Instruments | BQ79606 Daisy Chain Communication Robustness and Timing | Application notes | Texas Instruments BQ79606 Daisy Chain Communication Robustness and Timing Application notes

Texas Instruments BQ79606 Daisy Chain Communication Robustness and Timing Application notes
Application Report
SLUA975 – October 2019
BQ79606A-Q1 Daisy Chain Communication Timing
ABSTRACT
This application report discusses vertical interface timing of the BQ79606A-Q1 in detail and explains why
the device has the fastest communication time in the industry. First, it provides an overview on how the
BQ79606A-Q1 can be connected in a daisy chain configuration. Then, it defines all the command and
response types that the device can support. The bit and the byte structures are described and the timing
of each is provided. Finally, the application report dives into the response time of the following:
• Broadcast read
• Broadcast write
• Single read
• Single write commands
This report also explains how to find the time calculation for each command. The calculations are
supported with examples and lab results.
1
2
3
4
5
Contents
Introduction ................................................................................................................... 2
BQ79606A-Q1 in Daisy Chain ............................................................................................ 2
Vertical Communication Interface ......................................................................................... 3
Daisy Chain Response Time .............................................................................................. 5
Summary .................................................................................................................... 10
List of Figures
1
Daisy Chain Configuration .................................................................................................. 2
2
Differential Signal
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
........................................................................................................... 3
Bite and Byte Structure .................................................................................................... 4
Example Scope Plot of a Byte Structure ................................................................................. 4
Single Read Command Frame ............................................................................................ 5
Single Read Command Frame Time ..................................................................................... 5
Single Read Response Frame ............................................................................................ 6
Single Read Response Frame Time ...................................................................................... 6
Broadcast Read Command Frame ....................................................................................... 6
Broadcast Read Command Frame Time ................................................................................ 7
Broadcast Read Response Frame ....................................................................................... 7
Broadcast Read Response Frame Time ................................................................................. 8
Single Write Command Frame ............................................................................................ 8
Single Write Command Frame Time ..................................................................................... 8
Broadcast Write Command Frame ....................................................................................... 9
Broadcast Write Command Frame Time ................................................................................ 9
Lab Set Up ................................................................................................................... 9
Test Results for Broadcast Reading Command ....................................................................... 10
List of Tables
SLUA975 – October 2019
Submit Documentation Feedback
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
1
Introduction
www.ti.com
Trademarks
All trademarks are the property of their respective owners.
1
Introduction
The BQ79606A-Q1 is a voltage monitoring device for large battery stack systems. The device has the
ability to measure single cell voltages as well as the voltage across any connector used to create larger
battery stacks in a module. The BQ79606A-Q1 is designed with low voltage differential daisy chain
communication, allowing for the connection of up to 64 devices (one base and 63 stacks). The vertical
interface allows for fast communication between devices in the stack and the host.
2
BQ79606A-Q1 in Daisy Chain
The BQ79606A-Q1 can be used in multi drop or daisy chain configuration. The focus of this application
report is on the daisy chain configuration. By definition, the device located near the host in daisy chain
configuration is called either a base or a bridge. The address of this base or bridge is usually zero. The
bridge is not monitoring any cells. The only purpose of the bridge is to communicate to the host and
translate to send data to the stack. The base is used to monitor cells as well as communicate with the
host and translate to send data to the stack. The devices following the base or the bridge are stack
devices. The last device in the stack is called Top of Stack (TOS), which can be configured using the
CONFIG register.
CAN Interface
Low Voltage
Boundary
+
Bridge Device
µC
+
+
+
+
+
+
Balance and Filter
Components
UART
+
+
+
Balance and Filter
Components
bq79606
UART
+
+
+
+
+
+
+
+
Balance and Filter
Components
+
+
+
+
Balance and Filter
Components
bq79606
bq79606
UART
bq79606
bq79606
bq79606
bq79606
WAKEUP
COML
Transformer
Transformer
Isolation
Transformer
Transformer
COML
COMH
Cap
Only
COMH
COML
Cap +
Choke
Cap +
Choke
COMH
COML
Cap
Only
COMH
Transformer
Capacitive
Level-shifted
Differential Interface
Optional Ring
Connector
Figure 1. Daisy Chain Configuration
In bridge daisy chain configuration, the bridge device is needed to connect the stack devices to the host
through UART. The bridge device is usually placed on a low voltage boundary and isolation components
(such as a transformer) are used to connect it with stack devices setting on the high voltage as shown in
Figure 1. The BQ79606A-Q1 can be stacked up to 64 devices. The base daisy chain configuration can
also be used. The base device is integrated into the stack. It monitors the bottom cells in the stack and
handles the communication bus with the host through UART. In this configuration, digital isolation is
needed to isolate the base device located in the high voltage boundary with the host located in the low
voltage boundary.
2
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
SLUA975 – October 2019
Submit Documentation Feedback
Vertical Communication Interface
www.ti.com
3
Vertical Communication Interface
3.1
Command and Response Definitions
The BQ79606A-Q1 has six command and responses as listed below:
• Single Device Read: This command is used to read a register or registers from a single device in the
stack.
• Single Device Write: This command is used to write a register or registers to a single device in the
stack.
• Stack Read: This command is used to read a register or registers from the stack devices only (does
not include the base or bridge).
• Stack Write: This command is used to write a register or registers for the stack devices only (does not
include the base or bridge).
• Broadcast Read: This command is used to read a register or registers for all of the devices in the
stack including the base or bridge.
• Broadcast Write: This command is used to write a register or registers for all of the devices in the
stack including the base or bridge.
3.2
Bit Definition and Timing
The BQ79606A-Q1 transmits bits using two communication pins (COM*P and COM*N). The two pins are
driven in opposite directions using a TX driver. A zero is transmitted as a half bit period low followed by a
half bit period high on the COM*P pin and a half bit period high followed by a half bit period low on the
COM*N pin. The COM pins are driven to +5 V when high and to 0 V when low and settles to 2.5 V in idle
state. The differential signal (COM*P – COM*N) settles at 0 V and switches between +5 V and -5 V.
µ1¶
µ0¶
CVDD
COM*P
COM*N
CVSS
2 x tPW_DC
tPW_DC
COM*P ± COMP*N
tPW_DC
Figure 2. Differential Signal
A
•
•
•
•
•
•
byte contains 13 bits:
Half bit for Preamble
Two bits for SYNC
One bit for start of frame
Eight bits for DATA
One bit for byte error
Half bit for Postamble
SLUA975 – October 2019
Submit Documentation Feedback
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
3
Vertical Communication Interface
www.ti.com
A bit period lasts for 500 ns. Nominal time to transmit 13 bits is 6.5 µs plus 0.5 µs for bus short and 1.375
µs for bus idle periods. This adds up to 8.375 µs to transmit a full byte. The BQ79606A-Q1 supports four
baud rates:
• 125 Kbps
• 250 Kbps
• 500 kbps
• 1 Mbps
DATA[7:0]
Postamble (half-bit)
Byte Error (1bit)
SYNC [1:0]
Start-Of-Frame (1bit)
Preamble (half-bit)
Nominal response byte-to-byte delay is fixed by UART baud rate. Estimated delay is around 1.925 µs for 1
Mbps. With this baud rate, it takes 10.3 µs for a full byte to be transmitted. The response byte-to-byte
delay increases as the baud rate decreases. For 500 Kbps, the byte time with the delay is 20.3 µs and
that increases to 81.2 µs for 125 Kbps.
+1
COM*P ± COMP*N
-1
1.375 µs of bus idle
SYNC =
2'b00
D0
D1
D4
D2 D3
6.5µs nominal
Up to 8.375 µs for a byte
D5
D6
D7
0.5 µs of bus short
Up to 8.375 µs for a byte
Byte
Byte
10.3 µs at 1 Mbps, 20.3 µs at 500Kbps, 40.6 µs at 250Kbps,
81.2 µ at 125Kbps
Nominal Response byte to byte delay is fixed by
the UART baud rate register setting
Figure 3. Bite and Byte Structure
Figure 4. Example Scope Plot of a Byte Structure
4
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
SLUA975 – October 2019
Submit Documentation Feedback
Daisy Chain Response Time
www.ti.com
4
Daisy Chain Response Time
The response time of the BQ79606A-Q1 to a command depends on the type of the command itself. This
section discusses the time required for single and broadcast reads and single and broadcast writes. The
stack read and write is similar to broadcast with the exception that the base or bridge does not respond to
read or write. The focus of this application report is the fastest baud rate of 1 Mbps. Once the concept is
understood, similar steps can be used to calculate other baud rates using the timing provided above.
4.1
Single Command Read
4.1.1
Command Frame
A single command as defined earlier is used to read up to 128 bytes from any specified device in the
stack including the base or bridge. The single device read command consists of seven bytes:
1. Command initialization byte
2. Device address byte
3. Two bytes of register address to start reading from
4. Data bytes to specify the number of registers to read
5. Two bytes of CRC
Command Frame
CMD INIT[7:0]
DEV ADR[7:0]
REG ADR[15:8]
REG ADR[7:0]
DATA BYTE[7:0]
CRC[15:8]
CRC[7:0]
Figure 5. Single Read Command Frame
As discussed earlier, the length of each byte for 1 Mbps is 10.3 µs including the response byte to byte
delay. The UART re-clock time for the bridge or base device is 12 µs typical. The re-clock time between
each stack device is 3 µs typical. Based on that, it takes the single command 10.3 µs × 7 (for seven bytes)
+ 12 µs of re-clocking (UART re-clock) to read to reach the base or bridge device. That totals to 84.1 µs.
As the command travels north through the stack devices, it adds the 3 µs re-clocking time for each device
in the stack. An example is a stack of 16 devices + one bridge (total of 17 devices). The command takes
10.3 µs × 7 (7 byte of the command) + 12 µs (UART re-clocking) + 3 × 16 devices = 132.1 µs typical.
132.1 µs
Device 1
12 µs
Device 2
3 µs
Device 3
72.1 µs
3 µs x (17-1) = 48 µs
Device 17
Figure 6. Single Read Command Frame Time
4.1.2
Response Frame
Once the single command read is received, the device that matches the address of the command has to
respond to it. All other devices do not respond to the single read command. The response time depends
on the location of the device in the stack as well as how many registers are requested for read. The baud
rate matters too. In this example, only 1 Mbps is considered. The response frame of a single device read
consists of six bytes plus the data bytes. The response starts with the following:
• One byte of response initialization
SLUA975 – October 2019
Submit Documentation Feedback
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
5
Daisy Chain Response Time
•
•
•
•
www.ti.com
One byte of device address
Two bytes of register address
Data (can be as long as one byte to 128 bytes, depending on the command request)
Two CRC bytes
Response Frame
RESP INIT[7:0]
STRT REG
ADD[15:8]
DEV ADD[7:0]
STRT REG
ADD[7:0]
DATA MSB[7:0]
...
DATA LSB[7:0]
CRC[15:8]
CRC[7:0]
Figure 7. Single Read Response Frame
The response time can be calculated as follows:
1. Calculate the time of the response bytes 6 × 10.3 µs (six bytes) + 10.3 × Data bytes (can be from one
to 128 bytes).
2. Calculate the time it takes for the byte to propagate all the way down to the host.
Again, it takes 3 µs re-clocking from device to device and 12 µs to the host. Following the example above,
for 16 devices plus the bridge and to read two registers from the last device, the byte response is 6 × 10.3
+ 10.3 × 2 = 82.4 µs. It will take 16 × 3 µs for stack re-clocking plus the 12 µs for the UART re-clocking.
This totals to 142.4 µs.
142.4 µs
Device 17
3 µs
Device 16
82.4 µs
3 µs x (17-1) = 48 µs
Device 2
12 µs
Device 1
Figure 8. Single Read Response Frame Time
4.2
4.2.1
Broadcast Command Read
Command Frame
Broadcast command read as defined earlier is used to read up to 128 bytes from all devices in the stack
including the base or bridge. The command consists of six bytes starting with the command initialization
byte followed with two bytes of register address to start reading from, data bytes that specify how many
registers to read, and two bytes of CRC.
Command Frame
CMD INIT[7:0]
REG ADR[15:8]
REG ADR[7:0]
DATA BYTE[7:0]
CRC[15:8]
CRC[7:0]
Figure 9. Broadcast Read Command Frame
6
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
SLUA975 – October 2019
Submit Documentation Feedback
Daisy Chain Response Time
www.ti.com
Similar to the single device read case, the length of each byte for 1 Mbps is 10.3 µs (that includes the
response byte to byte delay). The UART re-clock time for the bridge or base device is 12 µs typical. The
re-clock time between each stack device is 3 µs typical. For the broadcast command read to reach the
base or bridge device takes 10.3 µs × 6 + 12 µs of re-clocking (UART re-clock). As the command travels
north through the stack devices, it adds the 3 µs re-clocking time for each device in the stack. For
example, a stack of 16 devices + one bridge (total of 17 devices). The command takes 10.3 µs × 6 (six
byte of the command) + 12 µs (UART re-clocking) + 3 × 16 devices = 121.8 µs typical.
121.8 µs
Device 1
12 µs
Device 2
3 µs
Device 3
61.8 µs
3µs x (17-1) = 48 µs
Device 17
Figure 10. Broadcast Read Command Frame Time
4.2.2
Response Frame
Once the broadcast command read is sent, every device in the stack waits for the device above it to
respond first before it can forward the received data and its own response. The top of stack device
responds first to the command. The bottom device forwards all the data of all the devices in the stack
before forwarding its data. The response time depends on how many devices in the stack as well as how
many bytes are requested for read. In this example, only 1 Mbps is considered. The response frame of a
broadcast device read consists of six bytes plus the data bytes itself for each device. The response starts
with the following:
• One byte of response initialization
• One byte of device address
• Two bytes of register address
• Data (can be as from one byte to 128 bytes depending on the command request)
• Two CRC bytes
Response Frame
Highest Device Address
Lowest Device Address
RESP INIT[7:0]
(HIGH ADDR)
RESP INIT[7:0]
(LOW ADDR)
DEV ADD[7:0]
STRT REG
ADD[15:8]
STRT REG
ADD[7:0]
DATA MSB[7:0]
...
DATA LSB[7:0]
CRC[15:8]
CRC[7:0]
DEV ADD[7:0]
STRT REG
ADD[15:8]
STRT REG
ADD[7:0]
DATA MSB[7:0]
...
DATA LSB[7:0]
CRC[15:8]
CRC[7:0]
Figure 11. Broadcast Read Response Frame
The response time can be calculated as follows:
1. Calculate the time of the response bytes for each device 6 × 10.3 µs (six bytes) + 10.3 × Data bytes
(can be from 1 to 128 bytes).
2. Multiply that time with the number of response that the device has to forward downstream.
3. Calculate the time it takes for the byte to propagate all the way down to the host.
Again, it takes 3 µs re-clocking from device to device and 12 µs to the host. Following the previous
example, for 16 devices plus bridge and to read two registers from all device, the byte response is 6 ×
10.3 + 10.3 × 2 = 82.4 µs. There is total of 17 devices, so it takes 17 × 82.4 µs or 1400.8 µs. It takes 16 ×
3 µs for stack re-clocking plus the 12 µs for the UART re-clocking. This totals to 1460.8 µs.
SLUA975 – October 2019
Submit Documentation Feedback
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
7
Daisy Chain Response Time
www.ti.com
1460.8 µs
82.4 µs
Device 17
3 µs
Device 16
82.4 µs x 2 = 164.8
82.4 µs x 16 = 1318.4 µs
Device 2
Device 1
12 µs
3us x 16 + 12 µs = 60µs
82.4 µs x 17=1400.8µs
Figure 12. Broadcast Read Response Frame Time
4.3
Single Command Write
Single command write, as defined earlier, is used to write up to eight bytes to any specified device in the
stack including the base or bridge. The single device write command consists of six bytes plus up to eight
bytes of data to write. It starts with command initialization byte followed by the following:
• Device address byte
• Two bytes of register address to start writing to
• Data bytes (up to eight bytes)
• Two bytes of CRC
Command Frame
CMD INIT[7:0]
DEV ADR[7:0]
REG ADR[15:8]
REG ADR[7:0]]
DATA MSB[7:0]
...
DATA LSB[7:0]
CRC[15:8]
CRC[7:0]
Figure 13. Single Write Command Frame
The length of each byte for 1 Mbps is 10.3 µs (that includes the response byte to byte delay). The re-clock
time for the bridge or base device is 12 µs typical. The re-clock time between each stack device is 3 µs
typical. For example, when you write eight bytes to 17 devices, the single write command to reach all 17
devices (a stack of 16 devices plus one bridge) must take 10.3 µs × 6 (six bytes of the command) + 12 µs
(UART re-clocking) + 3 × 16 devices + 10.3 × 8 bytes to write. This totals to = 204.2 µs.
204.2 µs
Device 1
12 µs
Device 2
3 µs
Device 3
144.2 µs
3 µs x (17-1) = 48 µs
Device 17
Figure 14. Single Write Command Frame Time
8
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
SLUA975 – October 2019
Submit Documentation Feedback
Daisy Chain Response Time
www.ti.com
4.4
Broadcast Command Write
Broadcast command write is used to write up to eight bytes to all devices in the stack including the base
or bridge. The command consists offive bytes plus up to eight bytes of data to write. It starts with the
command initialization byte followed two bytes of register address to start writing to and data bytes (up to
eight bytes).
Command Frame
CMD INIT[7:0]
REG ADR[15:8]
REG ADR[7:0]
DATA MSB[7:0]
...
DATA LSB[7:0]
CRC[15:8]
CRC[7:0]
Figure 15. Broadcast Write Command Frame
The length of each byte for 1 Mbps is 10.3 µs (that includes the response byte to byte delay). The re-clock
time for the bridge or base device is 12 µs typical. The re-clock time between each stack device is 3 µs
typical. For example, when you write eight bytes to 17 devices, the broadcast write command to reach all
17 devices (a stack of 16 devices plus one bridge) must take 10.3 µs × 5 (five byte of the command) + 12
µs (UART re-clocking) + 3 × 16 devices + 10.3 × 8 bytes to write. This totals to 193.9 µs.
193.9 µs
Device 1
12 µs
Device 2
3 µs
Device 3
133.9 µs
3 µs x (17-1) = 48 µs
Device 17
Figure 16. Broadcast Write Command Frame Time
4.5
Example
In this example, three devices are stacked up in daisy chain as shown in Figure 17. A broadcast read
command to read all the ADC voltages measurements for all three devices is sent (12 registers for each
device). Every device must respond to the command and send 12 bytes of ADC measurements to the
host.
1
Host
RC
RC
RC
Device 3
Device 2
Device 1
RR
RR
RR
4
3
2
Figure 17. Lab Set Up
Figure 18 shows the lab results for this command. Initially, the host sent the command that is captured in
location 1. After 79.8 µs, device three received the command. None of the devices responded until device
three starts responding to the command by sending 12 bytes of voltage readings. Device two received all
the bytes from device three and forwarded them downstream to device one, including its response (as
shown in location two). Finally, device one forwarded upstream devices data plus 12 bytes of its reading to
the host (as shown in location three). Device-to-device re-clock time is only 3 µs typical. By the end, the
host received all the responses from all three devices. This command takes 79.8 µs to reach all devices
and 574.2 µs for the response to reach the host, so only 654 µs is needed to read all ADC voltages.
SLUA975 – October 2019
Submit Documentation Feedback
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
9
Summary
www.ti.com
Figure 18. Test Results for Broadcast Reading Command
5
Summary
The BQ79606A1-Q1 has the fastest communication time in the industry. It can read 96 cell voltages in
less than 3 ms. This is only possible due to the vertical interface scheme used in this device. Each cell
consists of two bytes of data, which is 192 bytes transferred to the host in record time. The devices are
stacked in daisy chain configuration. A bridge or base is used to communicate to the host using UART.
The daisy chain is bi-directional and half duplex, and therefore, has a transmitter (TX) and receiver (RX)
on both interfaces (COMH and COML). For each direction, it uses two pins that are driven in opposite
direction to generate a differential signal of 500 ns for each bit. Each byte consists of 13 bits and with
delays a byte 10.3 µs. The device uses six commands structure to communicate and provides information
back to the host: single device read and write, broadcast read and write, and stack read and writes.
The communication speed of the BQ79606A-Q1 is important to report information to the host, such as
voltage and temperature measurements, in timely manner. This is useful for synchronization with other
measurements in the system such as current. Time is as important as accuracy when it comes to SOC
and SOH estimations. Fault Tolerate Time Interval (FTTI) is also dependent on how fast the commands
are transmitted and how fast the faults and responses are reported back to the host. With this
communication speed, the BQ79606A-Q1 can achieve 100 ms FTTI time.
10
BQ79606A-Q1 Daisy Chain Communication Robustness and Timing
Copyright © 2019, Texas Instruments Incorporated
SLUA975 – October 2019
Submit Documentation Feedback
IMPORTANT NOTICE AND DISCLAIMER
TI PROVIDES TECHNICAL AND RELIABILITY DATA (INCLUDING DATASHEETS), DESIGN RESOURCES (INCLUDING REFERENCE
DESIGNS), APPLICATION OR OTHER DESIGN ADVICE, WEB TOOLS, SAFETY INFORMATION, AND OTHER RESOURCES “AS IS”
AND WITH ALL FAULTS, AND DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING WITHOUT LIMITATION ANY
IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT OF THIRD
PARTY INTELLECTUAL PROPERTY RIGHTS.
These resources are intended for skilled developers designing with TI products. You are solely responsible for (1) selecting the appropriate
TI products for your application, (2) designing, validating and testing your application, and (3) ensuring your application meets applicable
standards, and any other safety, security, or other requirements. These resources are subject to change without notice. TI grants you
permission to use these resources only for development of an application that uses the TI products described in the resource. Other
reproduction and display of these resources is prohibited. No license is granted to any other TI intellectual property right or to any third
party intellectual property right. TI disclaims responsibility for, and you will fully indemnify TI and its representatives against, any claims,
damages, costs, losses, and liabilities arising out of your use of these resources.
TI’s products are provided subject to TI’s Terms of Sale (www.ti.com/legal/termsofsale.html) or other applicable terms available either on
ti.com or provided in conjunction with such TI products. TI’s provision of these resources does not expand or otherwise alter TI’s applicable
warranties or warranty disclaimers for TI products.
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2019, Texas Instruments Incorporated
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising