Autor Tema: características internas de CPU HCS08  (Leído 2945 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
características internas de CPU HCS08
« en: 22 de Diciembre de 2010, 12:24:22 »
Hola,
Pues llevo buscando hace un tiempo algún documento que me hable de una forma mas profunda el diseño que lleva una CPU de los microconroladores freescale HCS08, pero no hay mayor documentación.

Acá hago una pequeña comparación entre MICROCHIP con sus PIC18F y los FREESCALE HCS08, usando simplemente el datasheet del PIC18F47J53 y el MC9S08JM60 como fuente de informacion.



En los PICs 18Fxxx se conoce que:
  • Arquitectura HARVARD
  • Procesador tipo RISC
  • Formato de instrucciones ORTOGONAL
  • Segmentación PIPELINE de 4 niveles

Al ser arquitectura Harvard, cuenta con bus de comunicación independiente entre CPU, RAM, FLASH.

Señales de control entre memoria y CPU:

21 bits para bus de Direccion entre CPU y FLASH
16 bits para bus de Datos entre CPU y FLASH

12 bits para bus de Direccion entre CPU y FLASH
8   bits para bus de Datos entre CPU y FLASH

La segmentacion Pipeline es de 2 niveles. teniendo en cuenta que la intención es buscar y ejecutar una a una las instrucciones, encontramos que:
  • Buscar la instrucción a ejecutar toma 1 ciclo de instrucción (4 ciclos de reloj)
  • Decodificar y ejecutar la instrucción toma otro ciclo de instrucción (4 ciclos de reloj)

Con eso, al tener arquitectura Harvard se puede acceder la memoria FLASH al tiempo que la memoria RAM. Es por esto que cada 4 ciclos de reloj se ejecuta una instrucción pero al tiempo que se ejecuta una instrucción, se esta buscando  la siguiente a ejecutar.

La Ortogonalidad en las instrucciones le permite que estas puedan usar cualquier elemento en su arquitectura como argumento de entrada o destino del resultado.

Casi todas las instrucciones 4 ciclos de reloj para ser ejecutadas, solo las de salto requieren mas. Con esto se puede decir que el Bus Interno opera a una frecuencia de Fcrystal/4.




De Freescale HCS08 tengo que:

  • Arquitectura VON NEUMANN
  • Procesador tipo CISC
  • Formato de instrucciones ?
  • Segmentación PIPELINE ?

Su arquitectura VON NEUMANN indica que el bus de datos, control y dirección es compartido entre la memoria RAM y FLASH, lo que deja claro que solo se puede acceder a la RAM o a la FLASH en un instante de tiempo, lo cual reduce la velocidad de operación pues en su segmentación PIPELINE no se puede acceder a las 2 memorias a tiempo.

Señales de control entre memoria y CPU:
16 bits para bus de Direccion entre CPU - FLASH - RAM
8 bits para bus de Datos entre CPU - FLASH - RAM

Por el tipo de CPU que es CISC, encontramos hasta 254 instrucciones y que resulta complicado exponer cuantos ciclos de reloj usa cada una de ellas pues algunas usan 1 pero también hay que necesiten 2, 3, 4, 5,6 y 9.  

Lo único claro es que el bus interno en estos microcontroladores es de Fcrystal/2, luego se usa esa frecuencia para ejecutar una a una las instrucciones en memoria FLASH.


El documento que encontré fue: HCS08 Reference Manual , pero no da muchas luces sobre esto.


¿Conocen algún otro dato para lograr recopilar la mayor cantidad de información posible?
« Última modificación: 22 de Diciembre de 2010, 12:41:27 por LABmouse »


 

anything