Modos de ahorro de energía a en los chips CMOS MODOS DE OPERACIÓN N DE AHORRO DE ENERGÍA Para aplicaciones donde el consumo de potencia es crítico las versiones CMOS proporcionan modos de operación de reducción de potencia como un comportamiento estándar. Estos modos de operación no existen en las versiones NMOS Hardware para conseguir estado ocioso o de reducción de potencia
SMOD SMOD BIT PARA DOBLAR EL BAUDAJE. Cuando se pone a 1 y el timer 1 es usado para generar el baudaje y el puerto serial es usado en modo 1,2 ó 3 RESERVADO RESERVADO RESERVADO, GF1 BIT BANDERA DE PROPÓSITO GENERAL. GF0 BIT BANDERA DE PROPÓSITO GENERAL GF1 GF0 PD BIT DE BAJO DE POTENCIA. Poniendo en 1 este bit se activa la operación de bajo consumo de potencia. IDL BIT DE ACTIVACIÓN N DE MODO OCIOSO (IDLE MODE). Poniendo en 1 este bit se activa el modo de operación ocioso IDL PCON (Power( Control Register): Registro de Control de la Potencia MSB SMOD SMOD b6 b5 Si se escriben 1 s1 en PD e IDL, al mismo tiempo, PD tiene preferencia. El valor de reset de PCON es (0XXX0000). b4 b3 GF1 GF1 b2 GF0 GF0 b01 PD PD LSB IDL IDL MODO DE REDUCCIÓN N DE POTENCIA EN CHIPS CMOS En las versiones CMOS se tienen dos modos para la reducción de consumo de potencia del chip: modo ocioso (IDLE) modo Potencia Reducida (POWER DOWN). En el modo ocioso (IDLE) cuando IDL=1, el oscilador continúa corriendo y los bloques de las interrupciones, Puerto serie y Timers continúan con entrada de reloj, pero la señal del reloj del CPU es inhibida. En el modo Potencia reducida ( Power Down) cuando PD = 1, el oscilador es congelado. Para activar los dos modos de ahorro de Potencia se usa el registro PCON. En dispositivos NMOS el registro PCON solamente contiene el bit SMOD. Los otros cuatro bits solo están implementados en las versiones CMOS.
Modo Ocioso (Idle( Mode) La instrucción que active el bit PCON.0, sería la última en ser ejecutada antes de que el chip entre al modo ocioso. La señal interna del reloj del CPU es inhibida pero no las funciones de las Interrupciones, Timers y puerto serial. El status del CPU es preservado plenamente; el Stack Pointer, el Programa Counter, el PSW, el Acumulador y todos los demás registros mantienen sus datos durante el estado ocioso. Las terminales de los puertos retiene sus estados lógicos que tenían en el momento que el estado ocioso fue activado. El ALE y el PSEN se ponen en niveles altos. Formas de salir del estado ocioso: 1.-Con la activación de cualquier de las interrupciones que estén habilitadas, el bit PCON.0 (IDL) se hace 0 por hardware, para terminar así con el estado ocioso. La interrupción será atendida, y la siguiente instrucción en ser ejecutada, después del RETI, será la que seguía de la instrucción que puso al dispositivo en estado ocioso. Los bits banderas GF0 y GF1 se pueden usar para dar una indicación de si una interrupción ocurrió durante una operación normal o durante un estado ocioso. Por ejemplo, una instrucción que activa el estado ocioso, al mismo tiempo, también puede poner en 1 ambos bits banderas. Cuando el estado ocioso es terminado con una interrupción, la rutina de servicio de una interrupción puede examinar los bits banderas.
Formas de salir del estado ocioso: 2.-La otra forma de terminar el modo ocioso es con un RESET. Ya que el reloj se mantiene funcionando, el reset por hardware necesita mantenerse activado solo por dos ciclos de máquina (24 periodos de reloj ) para completar el reset. La señal de la terminal RST limpia el bit IDL directa y asíncronamente. Después de esto, la CPU continúa la ejecución del programa en la instrucción que sigue a la que invocó el Modo ocioso. El Hardware del chip inhibe el acceso a la RAM interna durante este tiempo, pero el acceso a las terminales de los puertos no queda inhibida, tal que, se recomienda la inserción de 3 instrucciones NOP después de la instrucción que invoca el modo ocioso. Para eliminar la posibilidad de salidas inesperadas en las terminales de los puertos, la instrucción siguiente a la que invoca el estado ocioso no debería ser una que escriba a las terminales del puerto o RAM externa de Datos. Modo de potencia reducida (POWER DOWN) La instrucción que active PCON.1 ( PD), será la última en ser ejecutada antes de que entre en modo de potencia reducida (Power Down). En el modo de potencia reducida el oscilador interno del chip es detenido. Con la congelación del reloj, todas las funciones son paradas, el contenido de la RAM interna y de los Registros de Función Especial ( SFR) son mantenidos. Los valores de las terminales de salidas de los puertos sostiene los de sus respectivos SFR s. Las salidas del ALE y el PSEN se mantiene en bajo.
Modo de potencia reducida (POWER DOWN) La única forma de salir del estado de Potencia reducida es con un RESET por hardware. El RESET redefine a todo los SFR s pero no cambia la RAM interna. En modo de potencia reducida, VCC puede ser reducido hasta 2V. Sin embargo se debe tener cuidado de que el valor de VCC no sea reducido antes de que el modo de potencia reducida sea invocado, y que el valor de VCC se restaure a su nivel norma de operación antes de que el modo de potencia reducida sea terminado. El reset que termina el modo de potencia reducida también libera al oscilador. El reset no deberá ser activado antes del que el VCC sea restaurado a su nivel de operación, y debe mantenerse activo tanto tiempo como sea necesario para permitir que el oscilador reinicie y se estabilice (normalmente menos de 10ms). Modo ONCE (On( Circuit Emulation) Este modo facilita la prueba y revisión de los sistemas usando el dispositivo sin tener que quitarlo del circuito. El modo ONCE es invocado al: 1. Poner el ALE en bajo mientras que el dispositivo esté en RESET y el PSEN está alto; 2. Mantener el ALE en bajo cuando RST esté desactivado. Mientras el dispositivo está en modo ONCE, las terminales del puerto 0 se ponen en estado flotado, y las terminales de los otros puertos ALE y PSEN son ligeramente puestos a alto. El circuito oscilador se mantiene activo. Mientras el dispositivo está en este modo, puede ser usado un emulador o CPU de prueba para manejar el circuito. Se regresa a la operación normal después de que se le aplique un RESET normal