SLOS719F August 2011 – January 2016 DRV8301
The DRV8301 is a 6-V to 60-V gate driver IC for three-phase motor drive applications. This device reduces external component count by integrating three half-bridge drivers, two current shunt amplifiers, and a switching buck converter. The DRV8301 provides overcurrent, overtemperature, and undervoltage protection. Fault conditions are indicated through the nFAULT and nOCTW pins in addition to the SPI registers.
Adjustable dead time control and peak gate drive current allows for finely tuning the switching of the external MOSFETs. Internal hand-shaking is used to prevent flow of current.
VDS sensing of the external MOSFETs allows for the DRV8301 to detect overcurrent conditions and respond appropriately. Individual MOSFET overcurrent conditions are reported through the SPI status registers.
The highly configurable buck converter can support a wide range of output options. This allows the DRV8301 to provide a power supply rail for the controller and lower voltage components.
The half-bridge drivers use a bootstrap configuration with a trickle charge pump to support 100% duty cycle operation. Each half-bridge is configured to drive two N-channel MOSFETs, one for the high-side and one for the low-side. The half-bridge drivers can be used in combination to drive a 3-phase motor or separately to drive various other loads.
The peak gate drive current and internal dead times are adjustable to accommodate a variety of external MOSFETs and applications. The peak gate drive current is set through a register setting and the dead time is adjusted with an external resistor on the DTC pin. Shorting the DTC pin to ground will provide the minimum dead time (50ns). There is an internal hand shake between the high side and low side MOSFETs during switching transitions to prevent current shoot through.
The three-phase gate driver can provide up to 30mA of average gate drive current. This will support switching frequencies up to 200 kHz when the MOSFET Qg = 25nC.
Each MOSFET gate driver has a VDS sensing circuit for overcurrent protection. The sense circuit measures the voltage from the drain to the source of the external MOSFETs while the MOSFET is enabled. This voltage is compared against the programmed trip point to determine if an overcurrent event has occurred. The high-side sense is between the PVDD1 and SH_X pins. The low-side sense is between the SH_X and SL_X pins. Ensuring a differential, low impedance connection to the external MOSFETs for these lines will help provide accurate VDS sensing.
The DRV8301 allows for both 6-PWM and 3-PWM control through a register setting.
|NAME||PIN 1||PIN 2||RECOMMENDED|
|RnOCTW||nOCTW||VCC (1)||≥10 kΩ|
|RnFAULT||nFAULT||VCC (1)||≥10 kΩ|
|RDTC||DTC||GND (PowerPAD)||0 to 150 kΩ (50 ns to 500 ns)|
|CGVDD||GVDD||GND (PowerPAD)||2.2 µF (20%) ceramic, ≥ 16 V|
|CCP||CP1||CP2||0.022 µF (20%) ceramic, rated for PVDD1|
|CDVDD||DVDD||AGND||1 µF (20%) ceramic, ≥ 6.3 V|
|CAVDD||AVDD||AGND||1 µF (20%) ceramic, ≥ 10 V|
|CPVDD1||PVDD1||GND (PowerPAD)||≥4.7 µF (20%) ceramic, rated for PVDD1|
|CBST_X||BST_X||SH_X||0.1 µF (20%) ceramic, ≥ 16 V|
The DRV8301 includes two high-performance current shunt amplifiers to accurate low-side, inline current measurement.
The current shunt amplifiers have four programmable GAIN settings through the SPI registers. These are 10, 20, 40, and 80 V/V.
The current shunt amplifiers provide output offset up to 3V to support bidirectional current sensing. The offset is set to half the voltage on the reference pin (REF).
To minimize DC offset and drift overtemperature, a calibration method is provided through either the DC_CAL pin or SPI register. When DC calibration is enabled, the device will short the input of the current shunt amplifier and disconnect the load. DC calibration can be done at any time, even during MOSFET switching, because the load is disconnected. For the best results, perform the DC calibration during the switching OFF period, when no load is present, to reduce the potential noise impact to the amplifier.
The output of the current shunt amplifier can be calculated as:
Figure 6 shows the current shunt amplifier simplified block diagram.
|NAME||PIN 1||PIN 2||RECOMMENDED|
|RRT_CLK||RT_CLK||GND (PowerPAD)||See Buck Converter|
|CCOMP||COMP||GND (PowerPAD)||See Buck Converter|
|RCCOMP||COMP||GND (PowerPAD)||See Buck Converter|
|RVSENSE1||PH (Filtered)||VSENSE||See Buck Converter|
|RVSENSE2||VSENSE||GND (PowerPAD)||See Buck Converter|
|RPWRGD||PWRGD||VCC (1)||≥ 10 kΩ|
|LPH||PH||PH (Filtered)||See Buck Converter|
|DPH||PH||GND (PowerPAD)||See Buck Converter|
|CPH||PH (Filtered)||GND (PowerPAD)||See Buck Converter|
|CBST_BK||BST_BK||PH||See Buck Converter|
|CPVDD2||PVDD2||GND (PowerPAD)||≥4.7 µF (20%) ceramic, rated for PVDD2|
|CSS_TR||SS_TR||GND (PowerPAD)||See Buck Converter|
To protect the power stage from damage due to excessive currents, VDS sensing circuitry is implemented in the DRV8301. Based on the RDS(on) of the external MOSFETs and the maximum allowed IDS, a voltage threshold can be determined to trigger the overcurrent protection features when exceeded. The voltage threshold is programmed through the SPI registers. Overcurrent protection should be used as a protection scheme only; it is not intended as a precise current regulation scheme. There can be up to a 20% tolerance across channels for the VDS trip point.
The VDS sense circuit measures the voltage from the drain to the source of the external MOSFET while the MOSFET is enabled. The high-side sense is between the PVDD1 and SH_X pins. The low-side sense is between the SH_X and SL_X pins. Ensuring a differential, low impedance connection to the external MOSFETs for these lines will help provide accurate VDS sensing.
Four different overcurrent modes (OC_MODE) can be set through the SPI registers. The OC status bits operate in latched mode. When an overcurrent condition occurs the corresponding OC status bit will latch in the DRV8301 registers until the next SPI read command. After the read command the OC status bit will clear from the register until another overcurrent condition occurs.
In current limit mode the device uses current limiting instead of device shutdown during an overcurrent event. In this mode the device reports overcurrent events through the nOCTW pin. The nOCTW pin will be held low for a maximum 64-µs period (internal timer) or until the next PWM cycle. If another overcurrent event is triggered from another MOSFET, during a previous overcurrent event, the reporting will continue for another 64-µs period (internal timer will restart) or until both PWM signals cycle. The associated status bit will be asserted for the MOSFET in which the overcurrent was detected.
There are two current control settings in current limit mode. These are set by one bit in the SPI registers. The default mode is cycle by cycle (CBC).
When an overcurrent event occurs, both the high-side and low-side MOSFETs will be disabled in the corresponding half-bridge. The nFAULT pin and nFAULT status bits will be asserted along with the associated status bit for the MOSFET in which the overcurrent was detected. The OC status bit will latch until the next SPI read command. The nFAULT pin and nFAULT status bit will latch until a reset is received through the GATE_RESET bit or a quick EN_GATE reset pulse.
No protective action will be taken in this mode when an overcurrent event occurs. The overcurrent event will be reported through the nOCTW pin (64-µs pulse) and SPI status register. The external MCU should take action based on its own control algorithm.
The device will ignore and not report all overcurrent detections.
To protect the power output stage during start-up, shutdown, and other possible undervoltage conditions, the DRV8301 provides undervoltage protection by driving the gate drive outputs (GH_X, GL_X) low whenever PVDD or GVDD are below their undervoltage thresholds (PVDD_UV/GVDD_UV). This will put the external MOSFETs in a high impedance state. When the device is in PVDD_UV it will not respond to SPI commands and the SPI registers will revert to their default settings.
A specific PVDD1 undervoltage transient brownout from 13 µs to 15 µs can cause the DRV8301 to become unresponsive to external inputs until a full power cycle. The transient condition consists of having PVDD1 greater than the PVDD_UV level and then PVDD1 dropping below the PVDD_UV level for a specific period of 13 µs to 15 µs. Transients shorter or longer than 13 to 15 µs will not affect the normal operation of the undervoltage protection. Additional bulk capacitance can be added to PVDD1 to reduce undervoltage transients.
The device will shut down both the gate driver and charge pump if the GVDD voltage exceeds the GVDD_OV threshold to prevent potential issues related to the GVDD pin or the charge pump (e.g. short of external GVDD cap or charge pump). The fault is a latched fault and can only be reset through a reset transition on the EN_GATE pin.
A two-level overtemperature detection circuit is implemented:
SPI operation is still available and register settings will be remaining in the device during OTSD operation as long as PVDD1 is within the defined operation range.
The nFAULT pin indicates when a shutdown event has occurred. These events include overcurrent, overtemperature, overvoltage, or undervoltage. Note that nFAULT is an open-drain signal. nFAULT will go high when the gate driver is ready for PWM inputs during start-up.
The nOCTW pin indicates when a overcurrent event or over temperature event has occurred. These events are not necessary related to a shutdown.
Table 5 provides a summary of all the protection features and their reporting structure.
|REPORTING IN SPI
|External FETs Hi-Z;
Weak pulldown of all gate
|External FETs Hi-Z;
Weak pulldown of all gate
driver output; When recovering,
reset all status registers
|External FETs Hi-Z;
Weak pulldown of all gate
|External FETs Hi-Z;
Weak pull down of all gate driver output
Shut down the charge pump
Won’t recover and reset through
SPI reset command or
quick EN_GATE toggling
|OTW||None||N||N||Y (in default setting)||Y|
|OTSD_GATE||Gate driver latched shut down.
Weak pulldown of all gate driver output
to force external FETs Hi-Z
Shut down the charge pump
|OTSD_BUCK||OTSD of Buck||Y||N||N||N|
|UVLO_BUCK: auto-restart||N||Y (PWRGD pin)||N||N|
|Buck overload||Buck current limiting
(Hi-Z high side until current reaches
zero and then auto-recovering)
overload – current limit mode
|External FETs current Limiting
(only OC detected FET)
overload – Latch mode
|Weak pulldown of gate driver
output and PWM logic “0” of
LS and HS in the same phase.
External FETs Hi-Z
overload – reporting only mode
During power up all gate drive outputs are held low. Normal operation of gate driver and current shunt amplifiers can be initiated by toggling EN_GATE from a low state to a high state. If no errors are present, the DRV8301 is ready to accept PWM inputs. Gate driver always has control of the power FETs even in gate disable mode as long as PVDD is within functional region.
There is an internal diode from SDO to VDD_SPI, so VDD_SPI is required to be powered to the same power level as other SPI devices (if there is any SDO signal from other devices) all the time. VDD_SPI supply should be powered up first before any signal appears at SDO pin and powered down after completing all communications at SDO pin.
EN_GATE low is used to put gate driver, charge pump, current shunt amplifier, and internal regulator blocks into a low-power consumption mode to save energy. SPI communication is not supported during this state and the SPI registers will revert to their default settings after a full EN_GATE reset. The device will put the MOSFET output stage to high-impedance mode as long as PVDD is still present.
When the EN_GATE pin goes low to high, it will go through a power-up sequence, and enable gate driver, current amplifiers, charge pump, internal regulator, and so forth and reset all latched faults related to gate driver block. The EN_GATE will also reset status registers in the SPI table. All latched faults can be reset when EN_GATE is toggled after an error event unless the fault is still present.
When EN_GATE goes from high to low, it will shut down gate driver block immediately, so gate output can put external FETs in high impedance mode. It will then wait for 10 µs before completely shutting down the rest of the blocks. A quick fault reset mode can be done by toggling EN_GATE pin for a very short period (less than 10 µs). This will prevent the device from shutting down the other functional blocks such as charge pump and internal regulators and bring a quicker and simple fault recovery. SPI will still function with such a quick EN_GATE reset mode. To perform a full reset, EN_GATE should be toggled for longer than 20 µs. This allows for all of the blocks to completely shut down and reach known states.
An EN_GATE reset pulse (high → low → high) from 10 to 20 µs should not be applied to the EN_GATE pin. The DRV8301 has a transition area from the quick to full reset modes that can cause the device to become unresponsive to external inputs until a full power cycle. An RC filter can be added externally to the pin if reset pulses with this period are expected to occur on the EN_GATE pin.
The other way to reset all of the faults is to use SPI command (RESET_GATE), which will only reset gate driver block and all the SPI status registers without shutting down the other functional blocks.
One exception is to reset a GVDD_OV fault. A quick EN_GATE quick fault reset or SPI command reset will not work with GVDD_OV fault. A complete EN_GATE with low level holding longer than 20 µs is required to reset GVDD_OV fault. TI highly recommends to inspect the system and board when GVDD_OV occurs.
Dead time can be programmed through DTC pin. A resistor should be connected from DTC to ground to control the dead time. Dead time control range is from 50 ns to 500 ns. Short DTC pin to ground will provide minimum dead time (50 ns). Resistor range is 0 to 150 kΩ. Dead time is linearly set over this resistor range.
Current shoot through prevention protection will be enabled in the device all time independent of dead time setting and input mode setting.
VDD_SPI is the power supply to power SDO pin. It has to be connected to the same power supply (3.3 V or 5 V) that MCU uses for its SPI operation.
During power up or down transient, VDD_SPI pin could be zero voltage shortly. During this period, no SDO signal should be present at SDO pin from any other devices in the system because it causes a parasitic diode in the DRV8301 conducting from SDO to VDD_SPI pin as a short. This should be considered and prevented from system power sequence design.
The DRV8301 SPI operates as a slave. The SPI input (SDI) data format consists of a 16 bit word with 1 read/write bit, 4 address bits, and 11 data bits. The SPI output (SDO) data format consists of a 16 bit word with 1 frame fault bit, 4 address bits, and 11 data bits. When a frame is not valid, frame fault bit will set to 1 and the remaining bits will shift out as 0.
A valid frame must meet following conditions:
When nSCS is asserted high, any signals at the SCLK and SDI pins are ignored and SDO is forced into a high impedance state. When nSCS transitions from HIGH to LOW, SDO is enabled and the SDO response word loads into the shift register based on the previous SPI input word.
The SCLK pin must be low when nSCS transitions low. While nSCS is low, at each rising edge of the clock the response word is serially shifted out on the SDO pin with the MSB shifted out first.
While SCS is low, at each falling edge of the clock the new input word is sampled on the SDI pin. The SPI input word is decoded to determine the register address and access type (read or write). The MSB will be shifted in first. Any amount of time may pass between bits, as long as nSCS stays active low. This allows two 8-bit words to be used. If the input word sent to SDI is less than 16 bits or more than 16 bits, it is considered a frame error. If it is a write command, the data will be ignored. The fault bit in the next SDO response word will then report 1. After the 16th clock cycle or when nSCS transitions from LOW to HIGH, the SDI shift register data is transferred into a latch where the input word is decoded.
For a READ command (Nth cycle) sent to SDI, SDO will respond with the data at the specified address in the next cycle. (N+1)
For a WRITE command (Nth cycle) sent to SDI, SDO will respond with the data in Status Register 1 (0x00) in the next cycle (N+1). This feature is intended to maximize SPI communication efficiency when having multiple write commands.
The SDI input data word is 16 bits long and consists of:
The SDO output data word is 16 bits long and consists of:
The SDO output word (Nth cycle) is in response to the previous SDI input word (N-1 cycle).
Therefore each SPI Query/Response pair requires two full 16 bit shift cycles to complete.
The MSB bit of the SDI input word (W0) is a read/write bit. When W0 = 0, the input word is a write command. When W0 = 1, input word is a read command.
|REGISTER TYPE||ADDRESS [A3..A0]||REGISTER NAME||DESCRIPTION||READ AND WRITE ACCESS|
|Status Register||0||0||0||0||Status Register 1||Status register for device faults||R|
|0||0||0||1||Status Register 2||Status register for device faults and ID||R|
|Control Register||0||0||1||0||Control Register 1||R/W|
|0||0||1||1||Control Register 2||R/W|
|0x00||Status Register 1||FAULT||GVDD_UV||PVDD_UV||OTSD||OTW||FETHA_OC||FETLA_OC||FETHB_OC||FETLB_OC||FETHC_OC||FETLC_OC|
|0x01||Status Register 2||GVDD_OV||Device ID ||Device ID ||Device ID ||Device ID |
|0x02||GATE_CURRENT||Gate drive peak current 1.7 A||0(1)||0(1)|
|Gate drive peak current 0.7 A||0||1|
|Gate drive peak current 0.25 A||1||0|
|Reset gate driver latched faults (reverts to 0)||1|
|PWM_MODE||6 PWM inputs (see Table 1)||0(1)|
|3 PWM inputs (see Table 2)||1|
|OC latch shut down||0||1|
|OC_ADJ_SET||See OC_ADJ_SET table||X||X||X||X||X|
|0x03||OCTW_MODE||Report both OT and OC at nOCTW pin||0(1)||0(1)|
|Report OT only||0||1|
|Report OC only||1||0|
|Report OC only (reserved)||1||1|
|GAIN||Gain of shunt amplifier: 10 V/V||0(1)||0(1)|
|Gain of shunt amplifier: 20 V/V||0||1|
|Gain of shunt amplifier: 40 V/V||1||0|
|Gain of shunt amplifier: 80 V/V||1||1|
|DC_CAL_CH1||Shunt amplifier 1 connects to load through input pins||0(1)|
|Shunt amplifier 1 shorts input pins and disconnects from load for external calibration||1|
|DC_CAL_CH2||Shunt amplifier 2 connects to load through input pins||0(1)|
|Shunt amplifier 2 shorts input pins and disconnects from load for external calibration||1|
|OC_TOFF||Cycle by cycle||0(1)|
|Control Bit (D6–D10) (0xH)||0||1||2||3||4||5||6||7|
|Control Bit (D6–D10) (0xH)||8||9||10||11||12||13||14||15|
|Control Bit (D6–D10) (0xH)||16||17||18||19||20||21||22||23|
|Code Number (0xH)||24||25||26||27||28||29||30||31|