Diferencia entre revisiones de «ICS (Configuración Reloj Interno) - MC9S08QE128»

De Wikitronica
Saltar a: navegación, buscar
Línea 9: Línea 9:
 
'''¿Para que se utiliza?'''
 
'''¿Para que se utiliza?'''
 
La gran ventaja de este modulo es que permite regular la frecuencia del clock con el que trabaja el MCU. Esto es posible gracias a un circuito que contiene el modulo ICS  llamado ''Frecuency-Locked Loop'' (FLL por su siglas en ingles) el cual permite generar frecuencias estables a partir de la reconversión  frecuencial  de una fuente de clock referencial, bien sea interna o externa al Microcontrolador.
 
La gran ventaja de este modulo es que permite regular la frecuencia del clock con el que trabaja el MCU. Esto es posible gracias a un circuito que contiene el modulo ICS  llamado ''Frecuency-Locked Loop'' (FLL por su siglas en ingles) el cual permite generar frecuencias estables a partir de la reconversión  frecuencial  de una fuente de clock referencial, bien sea interna o externa al Microcontrolador.
 +
  
 
==Características del Módulo==
 
==Características del Módulo==
Línea 26: Línea 27:
 
#Cualquier clock utilizado como fuente del módulo puede ser dividido mediante un selector de 2 bits que permite divisores de frecuencia de potencias de 1, 2,4 y 8.
 
#Cualquier clock utilizado como fuente del módulo puede ser dividido mediante un selector de 2 bits que permite divisores de frecuencia de potencias de 1, 2,4 y 8.
  
 +
==Alcance del Módulo ICS==
 +
'''¿Qué hago con el ICS?'''
 +
El conocimiento y manejo del módulo ICS es de vital importancia puesto que representa una fuente de clock controlable vital para el funcionamiento del MCU y de muchos módulos del microprocesador. en la figura 2 se aprecia que el ICS proporciona el clock del bus común a los módulos y ademas posee salidas especificas cuya frecuencia son totalmente programables.
 +
 +
[[Image:Figura 2.jpg|400px|thumb|right]]
 +
 +
 +
Entre los módulos que requieren de ICS se encuentran
 +
#Real Time Counter [[
 
==Registros del Módulo ICS==
 
==Registros del Módulo ICS==
 
Los registros que permiten configurar y monitorear todas las funciones del módulo ICS son:
 
Los registros que permiten configurar y monitorear todas las funciones del módulo ICS son:

Revisión del 16:17 16 nov 2012

Jesus Grimón 08-11372

A continuación se presenta una descripcion del Módulo de Clock Interno del MC9S08QE128

ICS (Configuración Reloj Interno) - MC9S08QE128

¿Qué es el ICS? El módulo de reloj interno concocido como ICS por sus siglas en inglés (Internal Clock Source) es una fuente de reloj que usa el microcontrolador MC9S08QE128 de la familia HS08 el cual provee al sistema MCU (Microcontroller Unit) de una frecuencia de operación interna.

¿Para que se utiliza? La gran ventaja de este modulo es que permite regular la frecuencia del clock con el que trabaja el MCU. Esto es posible gracias a un circuito que contiene el modulo ICS llamado Frecuency-Locked Loop (FLL por su siglas en ingles) el cual permite generar frecuencias estables a partir de la reconversión frecuencial de una fuente de clock referencial, bien sea interna o externa al Microcontrolador.


Características del Módulo

El modulo ICS presenta las siguientes características:

  1. Un circuito de lazo de frecuencia de enganche o FLL (Frecuency-Locked loop) el cual es programable via software para generar frecuencias.
  2. El FLL puede ser controlado por una referencia de clock interna o externa.
  3. En caso de usar clock externo el modulo proporciona un divisor de frecuencia que controla el rango del oscilador.
  4. Al usar el clock interno como referencia se dispone de 9 bits programables para controlar el rango de frecuencia controlando el período del clock (TRIM).
  5. Clock interno o externo puede ser seleccionado como fuente para el MCU.
  6. El modulo provee bits de control para un oscilador de baja potencia usado como clock externo de referencia. Estos bits son: HGO, RANGE, EREFS, ERCLKEN, EREFSTEN ( serán explicados mas adelante).
  7. Después de un reset el modo de operación es automáticamente configurado para trabajar como FLL Enganged Internal (ver sección de modos de operación).
  8. El modulo tiene tres tipos de DCO (digitally controlled oscillators), es decir, control digital de oscilador, los cuales ofrecen diferentes rangos de frecuencia agrupadas en tres rangos (Baja,Media y Alta frecuencia).
  9. Es posible maximizar la frecuencia de salida para una referencia de clock externa.
  10. El clock para Background Debugged Controller (BDC) es suministrado como una constante dividida por 2 de la salida del oscilador controlado digitalmente en el circuito FLL del módulo (DCO ouput)en el modo bajo rango de frecuencia DCOL(ver figura 1).
  11. Cualquier clock utilizado como fuente del módulo puede ser dividido mediante un selector de 2 bits que permite divisores de frecuencia de potencias de 1, 2,4 y 8.

Alcance del Módulo ICS

¿Qué hago con el ICS? El conocimiento y manejo del módulo ICS es de vital importancia puesto que representa una fuente de clock controlable vital para el funcionamiento del MCU y de muchos módulos del microprocesador. en la figura 2 se aprecia que el ICS proporciona el clock del bus común a los módulos y ademas posee salidas especificas cuya frecuencia son totalmente programables.


Entre los módulos que requieren de ICS se encuentran
  1. Real Time Counter [[

Registros del Módulo ICS

Los registros que permiten configurar y monitorear todas las funciones del módulo ICS son:

(ICSC1) ICS CONTROL REGISTER 1

el registro 1 de control del módulo ICS está compuesto de 8 bits y es un registro de escritura y lectura como se muestra a continuación:


CLKS RDIV IREFS IRCLKEN IREFSTEN

Donde cada campo representa:

1.CLKS(Clock Source Select): está compuesto por dos bits (7:6) cuya combinación codifica la selección del clock que controla el bus de frecuencia, es decir el clock de salida para el MCU . La frecuencia de este bus depende del valor en BDIV bits (será explicado mas adelante)

00	Selecciona como clock la salida del circuito FLL 
01	Selecciona el clock interno como referencia
10     Selecciona el clock externo como referencia
11     Reservado, no se utiliza.

2.RDIV (Reference Divider): está formado por 3 bits ( 5:3) cuya codificación binaria, y en conjunto con los bits de RANGE(ver más adelante), seleccionan el divisor de frecuencia cuando el clock externo es usado como referencia. La frecuencia resultante debería estar en el rango de 31.25Khz-39.0625Khz. A continuación se muestra la combinación que debe tener RDIV y RANGE para seleccionar el factor divisor de frecuencia:

"Tabla 1. Factor divisor de Frecuencia"
RDIV RANGE=0 RANGE=1
0 1 32
1 2 64
2 4 128
3 8 256
4 16 512
5 32 1024
6 64 Reservado
7 128 Reservado

3.IREFS (Internal Reference Select): está compuesto por un bits y selecciona el clock de referencia para el circuito FLL

0 1
Clock Externo seleccionado como referencia para el FLL Clock Interno seleccionado como referencia para el FLL


4.IRCLKEN(Internal Reference Clock Enable) :está compuesto por 1 bits y se encarga de habilitar el clock interno para ser usado como ICSIRCLK (ver diagrama de bloques Figura XX). Es decir, el clock interno es tomado como salida del módulo ICS sin hacerle ninguna modificación

0 1
ICSIRCLK desactivado ICSIRCLK activado

5.IREFSTEN(Internal Reference Stop Enable): este bit controla si el clock de referencia interna permanece habilitado, o no, una vez que el módulo entre en el modo de Stop

0 1
El clock interno es deshabilitado en el modo de stop. El clock de referencia interno permanece habilitado una vez entrado al modo de stop si el bits de IRCLKEN está en uno lógico antes de entrar en dicho módulo.


Nota: los bits de este registro después de un reset están en 0 salvo el bit IREFS que esta en 1.

ICS Control Register 2 (ICSC2)

El registro 2 de control del módulo ICS contiene 8 bits programables de escritura-lectura. El bit mas significativo a la izquierda y el menos significativos a la derecha como sigue:

BDIV (bits 7:6) RANGE (5) HGO (4) LP (3) EREFS(2) ERCLKEN(1) EREFSTEN (0)

1.BDIV(Bus Frecuency Divider): Selecciona la cantidad con la cual se dividirá la frecuencia del clock escogido por los bits de CLK para alimentar el bus de frecuencia del microcotrolador. La codificación de los bits es como sigue:

00 01 10 11
divide la frecuencia del clock escogido como salida por 1. divide la frecuencia del clock por 2 (modo escogido después de un reset.) divide la frecuencia del clock por 4. divide la frecuencia del clock por 8.

2.RANGE (Frecuency Range Select): selecciona el rango de frecuencia para el oscilador externo. Se configura en conjunto con el bit RDIV (ver tabla 1).

0 1
Selecciona el modo de Baja frecuencia para el oscilador externo. Selecciona el modo de Alta frecuencia para el oscilador externo.

3.HGO (High Gain Oscillator Select): selecciona el modo de operación del oscilador externo.

0 1
Configura el oscilador externo para trabajar en modo de baja potencia. Configura el oscilador externo para trabajar en modo de alta ganancia.

4.LP (Low Power Select): este bit determina si el circuito FLL queda desactivado cuando se trabaja en el modo de operación tipo FLL bypass.

0 1
FLL se mantiene activo en el modo de operación FLL bypass. FLL es desactivado en el modo de operación FLL bypass a menos que el BMD esta activo.


5.EREFS (External Reference Select): este bit selecciona el tipo de fuente para la referencia de clock externa.

0 1
Clock Externo requerido como fuente. Oscilador requerido como fuente

6.ERCLKEN (External Reference enable): se encarga de habilitar el clock externo para ser usado como ICSERCLK (ver diagrama de bloques Figura 1). Es decir, el clock externo es tomado como salida del módulo ICS sin hacerle ninguna modificación.

0 1
ICSERCLK desactivado ICSERCLK activado

7.ERFSTEN (External Reference Stop Enable): este bit controla si el clock de referencia externa permanece habilitado, o no, una vez que el módulo entre en el modo de Stop.

0 1
El clock interno es deshabilitado en el modo de stop. El clock de referencia externo permanece habilitado una vez entrado al modo de stop si el bits de ERCLKEN está en uno lógico antes de entrar en dicho modo de operación.

Nota: los bits de este registro después de un reset están en 0 salvo el bit 6 del BDIV que esta en 1.

ICS Trim Register (ICSTRM)

Este registro de 8 bits de escritura-lectura se encarga de controlar la frecuencia del Clock de referencia interna modificando el período del clock, el tipo de cambio se hace de modo binario, es decir, los bits en 1 a 0 y viceversa. Un incremento en el valor binario de este registro , incrementa el período del clock. Un decremento en el valor binario disminuye el período. Exite otro bits usado para el ajuste mas pequeño del Trim el cual se encuentra en el modulo de Status y controlo Register (ICSSC).

TRIM (bits 7:0)

ICS Status and Control Register(ICSSC)

Este es un registro que posee 8 bits donde se encuentran bits de estatus (sólo lectura) y bits de control (escritura-lectura). La distribución de bits es tal que bit más significativo se encuentra a la izquierda y el menos significativo a la derecha como sigue:

DRST(lectrua) / DRS(escritura) (bits 7:6) DMX (5) IREFST(4) CLKST (3:2) OSCINIT(1) FTRIM(0)

1.DRST (DCO Range Status): este campo es de solo lectura e indica que tipo de rango de frecuencia es arrojado por el ciercuito FLL, es decir, el DCOOUT (ver figura 1).Este campo no se actualiza inmediatamente después de una escritura en DRS(en breve será explicado) debido a la sincronización interna entre clocks, por lo que debemos esperar como mínimo un ciclo de reloj para solicitar la lectura del DRST.

DRS( DCO Range Select): el selector del rango de frecuencia del DCO es programable con dos bits de la siguiente manera:

00 01 10 11
Baja frecuencia (Low Range) Frecuencias Medias (Mide Range) Alta frecuencia (High Range) Reservado

¡ATENCION! La escritura de 112 en DRS es ignorada y DRST permanece en la configuración actual. Este espacio es reservado.

¡ATENCION! Escribir en DRS mientras el bit de baja potencia (LP) en ICSC2 esta activo no produce ningún resultado, ¡es ignorado por el CPU!

2.DMX32 (DCO Maximun Frecuency with 32.768Khz reference): este bit de control decide si el rango de frecuencia del DCO es aproximado a su máxima frecuencia con un clock de referencia de 32.768Khz (clock interno).En otras palabras el factor del FLL es máximo y la frecuencia es mayor y muy aproximado a la frecuencia máxima de la configuración. (Ver tabla 2)

0 1
El DCO trabaja en un rango del 25% de la frecuencia de referencia. el DCO es conducido a su máxima frecuencia cuando el clock de referencia es de 32.768Khz

En la Siguiente Tabla se muestra la combinación de los bits de DRS y DXM32 y las frecuencias que ellas generan:

¡CUIDADO! La frecuencia del clock del Bus que conecta otros módulos no debería exceder el máximo valor de frecuencia permitido por el dispositivo.

3.IREFST(Internal Reference Status): es un bit de sólo lectura que indica que tipo de fuente está siendo usada como referencia del clock del circuito FLL. Es útil usar este bit como bandera para que el CPU tome alguna decisión a gusto del programador.

0 1
La fuente usada como referencia para el circuito FLL es un Clock Externo La fuente usada como referencia es un Clock Interno

4.CLKST (Clock Mode Status): este campo contiene 2 bits que indican en qué modo está trabajando el clock. Estos bits son como una bandera que muestran el estatus del campo CLKS en el registro ICSC1. Si se escribe en CLKS, el valor de CLKST no cambia inmediatamente debido a la sincronización de los clocks internos.

00 01 10 11
La salida del FLL está seleccionada como fuente de clock el FLL no está siendo usado (Bypassed), el Clock interno de referencia es usado como fuente de clock. el FLL no está siendo usado (Bypassed), el Clock externo de referencia es usado como fuente de clock. Reservado

5.OSCINIT (OSC Initialization): Si el clock externo es seleccionado por el campo ERCLKEN en el registro ICSC2 o se trabaja en el modo FEE,FBE o FBLEP (ver más adelante), y además el bit EREFS está en uno lógico, entonces el OSCINIT se pone en uno lógico después que la inicialización del clock externo es completado.

En otras palabras, indica si el clock externo ya fue inicializado. Este bit es llevado a cero cuando se deshabilita el uso del clock externo.

6.FTRIM (ICS Fine TRIM): este bit es el más pequeño ajuste del registro TRIM (ver ICSTRIM) , si está en 1 lógico se incrementa el Período del clock interno en la más pequeña cantidad posible; si esta en 0 lógico se decrementa el período en la más pequeña cantidad posible. Visto más fácil: es una extensión del registro ICSTRIM y representa el bit de mayor precisión con el que se puede hacer los cambios más pequeños en la frecuencia del clock interno.

Modos de Operación del Módulo

Existen siete modos de operación del modulo ICS los cuales son: