lunes, 25 de enero de 2021

SL6259 QFN chip on Macbook Pro logic board

 

ISL6259

 



Este tutorial sirve para ISL6259/A y tambien para ISL6258/A.

Pero ojo, los dos chips no se pueden intercambiar en una placa base.

No hay datasheet disponible para ninguno de los dos.

Aun asi, parte de sus pines corresponden a las especificaciones del datasheet de ISL6257.

En gran parte del tutorial, usare el nombre de ISL6259, como generico.

 

Desde 2015 Apple empezo a usar ISL9239 y recien ISL9240,en capsulas BGA.

ISL95530 es una version aun mas "chunga"; tiene firmware y no puede ser sustituido por un chip nuevo.

 

ISL6259 se encarga de generar la tension principal/madre (PPBUS_G3H) de una placa base y de cargar la bateria.

Hay que dar las gracias a Apple que uso el mismo chip en tantas placas; eso aligera mucho la reparacion.

Hay que distinguir entre dos tipos de circuitos de entrada DC, segun los dibujos de abajo.

 





-------------------------------------------------------------------------------------------------------------------


 

El tipo A es el mas usado por los fabricantes de otras placas; mas conocidas como normales, para Windows.

En este caso la tension principal del sistema tendria un valor alto, 12-20V; segun el tipo de cargador que usa.

Cuando el equipo queda solo con bateria, la tension cae mucho, habitualmente 6.5-14.4V; segun tipo de bateria y nivel de carga.

Los equipos mas nuevos han pasado ya al tipo B de circuito.

 

En caso de Apple, ISL6259 se usa solo con tipo B.

Ese circuito tiene la ventaja que tanto con cargador, o con bateria sola, la tension principal tiene una menor variacion.

Con el cargador sin bateria, o bateria cargada a tope (100%), PPBUS_G3H tendria un valor de 8.5V, o 12.5V.

Si quitamos el cargador, bateria sola podria entregar casi 8V, o 12V si esta a tope, cayendo hasta 6.5V de minimo.

Por debajo de 6.5V el funcionamiento de la fuente sistema 3/5V es incierto; ya que lleva unos reguladores LDO para VREG3/5.

Capaz que podria llegar a funcionar casi hasta 6V, pero las tolerancias de fabricacion no aseguran eso.

Otra gran ventaja es que en caso de que CPU, o GPU requeriran unos picos de corrientes muy altos, es muy facil desconectar el circuito de entrada y dejar que la bateria alimente el sistema; solo para esos picos.

Tengan en cuenta que la bateria puede entregar una corriente mucho superior al cargador.

De hecho, las fuentes secundarias (buck converters) de la placa, nunca se alimentan directamente del cargador, tampoco de la bateria.

El cargador y la bateria se usan para recargar los "reservores de energia" de esas fuentes; que en algunos casos requieren altos picos de corriente.

 

 

ISL6259 tiene unos pines especificos para deteccion del cargador, numero de celdas de la bateria, la corriente que entra en la placa, como la que carga bateria y se entrega al resto de la placa tambien.

Tiene ademas un bus I2C (lineas SCL/SDA), por cual comunica con el SMC y la bateria.

Incluye tambien un driver para los transistores MOSFETs que  generan PPBUS_G3H.

Intentare explicar el funcionamiento, sin entrar en detalles.

Con el tiempo, en el foro descubriran toda la informacion necesaria.

Hablare sobre un esquema de bloques, segun el siguiente dibujo.

 



 

ISL6259 se alimenta por el pin 2/DCIN.

La tension de entrada tiene practicamente mismo nivel que la tension entregada por el cargador, 14.5-18.5V (segun el tipo).

 

Un regulador interno tipo LDO genera una tension de 5V, disonible al pin 19/VDD.

Aqui se conecta un capacitor de filtraje y la misma tension se reintroduce por el pin 20/VDDP; otro capacitor presente alli tambien.

Desde aqui se alimenta el driver para el low-side MOSFET.

 

ISL6259 goza de un bloque digital, que usa el protocolo I2C para comunicar con SMC y el procesador integrado en la bateria.

Las lineas SCL/SDA (pines 11/10) tienen unos resistores pull-up externos, que establecen un nivel inicial de 3.3V.

Cuando un chip quiere comunicar algo, solo tiene que tirar a masa dichas lineas; respetando el protocolo, para ser entendido por los otros chips.

Este bloque digital usa la misma señal de reset que el SMC, pin 13/SMB_RST_N.

Una comunicacion segura, requiere que este bloque se alimente con la misma tension que el SMC, pin 12/VHST desde PP3V42_G3H.

 

El pin 6/CELL informa al ISL6259 sobre tipo de bateria presente en sistema.

Se conecta a masa para 2 celdas, o a VHST (3V42) para 3 celdas.

Si este pin quedaria en aire, ISL6259 supondria que el sistema lleva una bateria de una sola celda.

Asi que ojo al resistor de conexion.

 

En funcionamiento normal (S0) el chip trabaja con una frecuencia fija, variando solo el ancho de los impulsos, el denominado modo PWM (Pulse Width Modulation).

Sin embargo para eliminar cualquier ruido en banda ultrasonica, el chip dispone de un pin (4/VFRQ) que le permite usar una frecuencia variable en modo S3 y S5.

Aunque sobre dicha frecuencia el chip seguira funcionando en modo PWM.

 

Un bloque muy importante es la deteccion del cargador, con la entrada por pin3/ACIN y salida por el pin 14/ACOK.

Al no tener la documentacion del fabricante, desconozco el valor tipico de ACIN.

Pero basta con calcular el divisor resistivo que establece esa tension y comprobar con la tension que medimos en la placa; la diferencia ha de ser minima.

Ya que se activa incluso con un cargador de 45W (14.5V), eso indicaria un nivel minimo de 2.8-3.0V aprox.

La salida ACOK es de tipo open-drain; por esa razon lleva un resistor pull-up hacia 3V42.

Este seria el nivel de tension si el chip detecta correctamente la presencia del cargador.

Es una informacion muy importante para el SMC y misma salida se usa tambien para activar el circuito ONEWIRE de comunicacion entre SMC y el conector MagSafe (1-wire protocol).

 

Los pines 5/ICOMP, 7/VCOMP y 8/VNEG se conectan mediante unos circuitos R/C.

Hagan un vistazo al datasheet de ISL6257 para hacerse una idea de sus funciones.

 

Los pines 1/AGATE y 26/SGATE, controlan los dos MOSFETs de entrada; habitualmente emplazados en una capsula comun.

Siendo de tipo canal P, requieren un nivel bajo en las salidas A/SGATE (0V).

He de mencionar que el segundo MOSFET conduce si o si, por el diodo integrado.

 

Los pines 27/CSIN y 28/CSIP informan al ISL6259 sobre la corriente consumida del sistema desde cargador.

CSIP se conecta en la entrada del resistor Isense y CSIN se conecta en su salida.

La (muy) pequeña caida de tension seria multiplicada dentro del ISL6259 x19.9 y esa informacion seria entregada al SMC.

La salida es por el pin 9/CHGR_AMON.

 

Los pines 17/CSON y 18/CSOP informan sobre la corriente que carga la bateria.

La caida de tension sobre el correspondiente resistor Isense seria tambien multiplicada x19.9 antes de entregarla al SMC.

La salida se hace por el pin 15/CHGR_BMON.

 

El driver para los MOSFETs del buck converter es muy similar al cualquier circuito de misma clase.

Por el pin 21/LGATE se entrega la señal PWM con amplitud de 5V (aprox) con respecto a masa; donde esta conectado el pin Source del low-side MOSFET.

Por el pin 24/UGATE se entrega la señal PWM con amplitud de 5V, esta vez con respecto al pin 23/PHASE; donde esta conectado el pin Source del high-side MOSFET.

Para ese proposito el correspondiente driver requiere una tension de alimentacion muy superior a la tension base de 5V procedente del pin VDDP.

El pin 25/BOOT resuleve el problema.

 

ISL6259 se encarga de entregar las señales PWM desfazados de manera correcta y con suficiente pausa (tiempo muerto) para eliminar un efecto shoot-through; causado si ambos MOSFETs se abren al mismo tiempo.

 

Por ende, pin 16/BGATE activa el MOSFET que permitiria cargar la bateria.

No hay comentarios:

Publicar un comentario

Featured post

Arduino_Curso_Practico_de_Formacion

                                     LINK DESCARGA  Arduino_Curso_Practico_de_Formacion