Sistema Mínimo con CPU 68008 (Bootloader)

Saludos a todos y espero que se encuentren bien de salud ya acercándonos a culminar este año, aquí otra vez yo presente para continuar con estos Proyectos descabellados de Retro-Microprocesadores rompecabezas , quién de nosotros no tiene por allí en su almacén de chips clásicos además de un Z80 o un 6502 tambien algun poderoso intruso como es esta joyita del MC68000 de 32 bits?, es un chip bien notorio por su enorme presentación DIP de 64 pines no? , Pues en esta ocasión iniciaremos otra aventura embarcandonos en otro proyecto de Sistema Mínimo esta vez para el MC68000 (No es PC ordenador personal, osea no esperes de resultado una Commodore o una Macintosh con teclado y pantalla).

Como es sabido el MC68000 es una CPU de 32 bits internos recorriendo por sus venas pero hacia el exterior se comunica por un bus de datos de 16 bits y puede direccionar hasta 16 Mbytes, lo cual haría que diseñar un hardware para este chip, armarlo y programarlo nos complicaría un poco la cosa , si es posible hacerlo pero en su lugar hemos optado por usar su versión recortada de bus de 8 bits que es el flamante MC68008 DIP48 que direcciona 1 Mbyte, en cuanto al software o firmware es casi el mismo para ambos CPUs osea no requeriría casi cambios entre si, la diferencia sólo sería notoria en cuanto a la disposición del hardware de 16 a 8 bits y en la velocidad resultante, obviamente le tomará más tiempo al MC68008 acceder a la memoria para obtener las instrucciones o datos porque tardará el doble de tiempo en leer o escribir datos a la memoria, pero usar el MC68008 nos simplificará bastante en cuanto al diseño de las tarjetas modulares, el que desea aventurarse a construirlo en su versión pura de 16 bits MC68000 también puede hacerlo si lo desea a la par.

En la imagen adjunta se muestra el Circuito Propuesto para este Sistema Mínimo con el MC68008, tenemos los componentes básicos indispensables para hacerlo funcionar , como son CPU, ROM, RAM, Puerto Serie y Puerto Paralelo , en otros diseños en internet suelen obviar o prescindir del PPI puerto paralelo cosa que a mi parecer es dejar al modulo medio incompleto como quien dice sin extremidades, pues el Sistema tiene que comunicarse con el exterior no solo por un solitario puerto serie hacia la PC sino que también de forma paralela interactuar para enviar y recibir señales digitales de 8 bits desde/hacia otros circuitos como un ADC por ejemplo o manejar indicadores ,pantallas, relays etc.

En este Sistema Mínimo tenemos la posibilidad de usar las memorias E2prom , Flash y Ram de la capacidad que tengamos a la mano ya sean desde unos modestos 8K de Eprom hasta unos 512 Kbytes (RAM en un solo chip), El circuito propuesto de la imagen lo diseñe recopilando datos variados, otros no me quedaron muy claros y por ello primero lo armare en protoboard para hacer pruebas, descartes y comprobar si la lógica propuesta esta bien antes de preparar sus respectivas Boards modulares sobre todo la que alojara a la CPU con los circuitos lógicos de apoyo como son las compuertas lógicas, incluso puede ser que se requiera sobre la marcha algún agregado más de componentes.

En El circuito de proteus que pueden descargar se puede distinguir dos circuitos lógicos en la parte de abajo que vienen a ser el circuito de /DTACK y /VPA, el circuito /Dtack es necesario agregarlo en caso de que nuestras Memorias a usar sean algo lentas para el MC68008P10 que es de 10 Mhz , aunque también podemos usar otro CPU como el MC68008P8 de 8 Mhz o si trabajamos con reloj de 4 Mhz podría prescindiese del circuito /Dtack y conectar esa señal directamente a GND para que funcione sin estados de espera, el /Dtack es casi equivalente al /Wait o Ready de otros microprocesadores.

Por otra parte el circuito usado para /VPA esta preparada para utilizar chips síncronos Periféricos del antiguo MC6800, debido a que estamos empleando un ACiA MC68B50 este requiere manejar la señal /VPA para sincronizarse con la CPU la lectura/escritura y la generación del autovector en caso de requerir interrupciones sino no necesitaríamos usar /VPA y la dejaríamos conectada a Vcc.

Según también se lee en datos del MC68008 que se advierte de que si vas a usar Periféricos antiguos por consiguiente /VPA se debe evitar que coincidan /Dtack y /VPA a la vez en estado bajo porque el resultado podría ser imprevisible y confundir a la CPU dejandola a la deriva o colgarla.

En un diseño posterior agregare un periférico que si esta hecho especialmente para el MC68008 que es el MC68681P (que espero conseguir de China) este incluye dos puertos Uart, pines de input/output, manejo de interrupciones vectoriales y un temporizador, todo en un solo chip de 40 pines, una maravilla y ojala hubiera uno que incluyera ADC, I2C , SPI pero eso ya era mucho pedir para aquellos tiempos.

Bueno entonces esto sería el inicio de este hilo y espero poder ir avanzando gradualmente hasta llegar a tener disponible las tarjetas Board completas y el programa Bootloader operativo que permitiría recibir los archivos .HEX o .BIN enviados desde la PC. Sera hasta la próxima publicación...
MC68008.jpg
 

Adjuntos

  • MC68008.rar
    34.3 KB · Visitas: 0
Última edición:
Atrás
Arriba