Construcción de un ordenador de 8 bits

afx
Mensajes: 657
Registrado: 25 Nov 2010 23:26
Agradecido : 35 veces
Agradecimiento recibido: 62 veces

Construcción de un ordenador de 8 bits

Mensajepor afx » 22 Oct 2020 23:24

A raíz de los últimos post sobre el AIM65 (viewtopic.php?f=11&t=200034683) me ha venido a la mente una serie de recursos en internet a los que les he ido haciendo un seguimiento hace algún tiempo. Se trata de un tutorial que va explicando paso a paso cómo construir un ordenador de 8 bits totalmente programable a partir de puertas lógicas simples sobre protoboards. El autor del tutorial va construyendo el ordenador a partir de componentes básicos alrededor del microprocesador 6502, explicando muchos conceptos y el funcionamiento de cada componente. He visto también que se apoya en un arduino para monitorizar el funcionamiento de varias partes del proyecto.

Los enlaces que les comento son estos:
https://eater.net/
https://eater.net/6502
https://www.youtube.com/watch?v=LnzuMJLZRdU
https://www.youtube.com/channel/UCS0N5b ... UrhCEo8WlA

Existe cierta mística intelectual acerca de la gente que se dedicaba (y se dedica) a la construcción de ordenadores y siempre he pensado que el diseño/construcción de un ordenador está fuera del alcance de la gente "normal". Pero viendo estos vídeos me da la sensación de que es algo perfectamente asumible construir algo muy básico dedicándole el tiempo y concentración suficiente.

No se si este proyecto ya se ha comentado en el foro, pero saco el tema porque en verdad me parece un proyecto de lo más interesante. Y ... puestos a soñar ... ¿por qué no un kit-retrowiki del tipo "construye un ordenador de 8bits"? (En este foro hay mucha gente perfectamente capaz de liderar un proyecto de este tipo).

Saludos!

Avatar de Usuario
WhatIsAMan
Mensajes: 692
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Agradecido : 219 veces
Agradecimiento recibido: 230 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor WhatIsAMan » 23 Oct 2020 00:17

Buenas noches,

Crear una máquina desde cero tiene el gran inconveniente de que no va a haber software disponible para él hasta bastante tiempo después de haber salido. Esto es una gran pega. -no

Sin embargo, en mi opinión hay veces que diseñar una máquina desde cero es mejor que ampliar una ya existente porque no hay que luchar contra limitaciones del diseño original, lo que da mucha libertad para ser creativo.

Tengo una pregunta. ¿Has escogido el 6502 por alguna razón en concreto? Creo que lo primero sería decidir si usar el bus Intel o el Motorola, entrada/salida mapeada en memoria o espacios separados. Creo que hay más variedad de integrados de soporte (aún en producción) para el bus intel, aunque tal vez me equivoque.

Saludos

afx
Mensajes: 657
Registrado: 25 Nov 2010 23:26
Agradecido : 35 veces
Agradecimiento recibido: 62 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor afx » 23 Oct 2020 00:37

WhatIsAMan escribió:Crear una máquina desde cero tiene el gran inconveniente de que no va a haber software disponible para él hasta bastante tiempo después de haber salido. Esto es una gran pega.

Si, la falta de software es una limitación importante, pero sólo se trataría de construir un prototipo con con el objetivo de aprender los entresijos de un ordenador minimalista. Lo interesante sería construirlo todo desde cero: hardware, un mini sistema operativo, algún mini-lenguaje de programación ... insisto, ... aunque todo sea minimalista. Soy consciente del tiempo y dedicación que debe llevar todo el proceso, seguramente harían faltas varias vidas para completarlo :-( . El objetivo no es construir un ordenador para jugar o para ejecutar programas en concreto, la idea es aprender del proceso de construcción de la máquina (ése es el "juego").

WhatIsAMan escribió:Tengo una pregunta. ¿Has escogido el 6502 por alguna razón en concreto?

La verdad es que no tengo los conocimientos para elegir un microprocesador u otro. Lo del 6502 es por replicar "exactamente" el tutorial de Ben Eater, a partir de ahí supongo que se podrán hacer modificaciones, ampliaciones o distintas variantes.

jltursan
Mensajes: 3147
Registrado: 20 Sep 2011 13:59
Agradecido : 277 veces
Agradecimiento recibido: 789 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor jltursan » 23 Oct 2020 09:46

La verdad es que estaría fenomenal. Yo sin embargo me decantaría por Z80 si se quiere continuar con una arquitectura 8-bits o 68000/8 si se quiere uno meter en el fregao de los 16 bits.
Con un Z80 no sólo puedes disfrutar de modelos actuales a velocidades mucho más altas sino que pensando en el software, adaptar un CP/M no es una tarea titánica y abre un abanico increíble de aplicaciones. Con el 6502 esto se complica un poco más.

En el caso de los estadounidenses es una elección lógica, prácticamente mamaron 6502 o variantes: Apple, Commodore, Atari...

Avatar de Usuario
WhatIsAMan
Mensajes: 692
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Agradecido : 219 veces
Agradecimiento recibido: 230 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor WhatIsAMan » 23 Oct 2020 10:17

Tranquilo, no era mi intención asustar a nadie. Lo del software había que decirlo, es importante considerarlo.

Sobre I/O: mapear los dispositivos en el mapa de memoria tiene la ventaja de poder acceder a ellos como si fueran celdas de la memoria y, al no usar instruciones dedicadas de I/O es más flexible de cara al programador (no sería obligatorio pasar los datos primero por el acumulador, por ejemplo). Tiene dos inconvenientes: el primero es que disminuye la cantidad de memoria disponible; el segundo inconveniente es que complica la lógica de selección al tener que discernir entre memoria e I/O. Por otro lado, usar un espacio de direccionamiento separado para I/O aunque no es tan flexible para su programación separa la memoria de los dispositivos ya por diseño. Tiene las ventajas que no pierdes ni una sola celda de memoria y que añadir nuevos dispositivos es más fácil y requiere menos lógica.

Bus Intel vs bus Motorola: básicamente un señal de control de lectura/escritura (Motorola) o líneas separadas para lectura y escritura (Intel). Procesadores como el 6800, 6809 o 6502 usan el bus de motorola y tienen acceso a las famílias de periféricos 65xx/68xx. Procesadores como el 8080, 8085, 8086, 8088 o Z80 usan el bus Intel y tienen acceso a los periféricos de la serie 82xx, así como a los dispositivos de Zilog. demás, la memoria estátics suele tener interfaz Intel. Con lógica extra un procesador con uno de los dos buses puede controlar un periférico con interfaz del bus rival. Como ejemplos el caso de un 6502 controlando una 8253 PIT cuando un Apple ][ lleva una tarjeta ALF MC-16 o un 8088 controlando un 6545 CRTC en el caso del IBM PC.

Sobre los procesadores...

El 6502 es un procesador excelente para el tiempo en que salió. Era muy rápido respecto a sus competidores y muy, muy barato. Tiene 256 registros de propósito general y intrucciones bastante potentes. Aún con sus luces tiene muchas sombras: es muy poco flexible con respecto a la memoria. En primer lugar los dispositivos de I/O están mapeados a memoria, luego pierdes los primeros 256 bytes porque los 256 registros de propósito general son externos al procesador finalmente pierdes toda la página 1 para poner la pila. Quizás su mayor defecto sea que el puntero de pila sea sólo un byte, lo que lo limita bastante.

Mis cinco céntimos: si se quiere empezar desde cero pero no se tiene claro cómo va a ser el sistema creo que lo más aconsejable sería empezar con una cpu de la família Intel, pues en primer lugar los espacios separados de entrada/salida permitirían crear un diseño muy limpio y eficiente respecto a la memoria antes de saber qué dispositivos se le quieren añadir, luego que hay más diversidad en los dispositivos de I/O disponibles. El 8080 ni se fabrica ni se recomienda, el 8085 no se fabrica así que lo más barato en esa família de procesadores que aún esté en producción es la Z80.

Saludos!

dragonet80
Mensajes: 422
Registrado: 28 Nov 2017 12:36
Agradecido : 207 veces
Agradecimiento recibido: 161 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor dragonet80 » 23 Oct 2020 13:13

WhatIsAMan escribió:El 6502 es un procesador excelente para el tiempo en que salió. Era muy rápido respecto a sus competidores y muy, muy barato. Tiene 256 registros de propósito general y intrucciones bastante potentes. Aún con sus luces tiene muchas sombras: es muy poco flexible con respecto a la memoria. En primer lugar los dispositivos de I/O están mapeados a memoria, luego pierdes los primeros 256 bytes porque los 256 registros de propósito general son externos al procesador finalmente pierdes toda la página 1 para poner la pila. Quizás su mayor defecto sea que el puntero de pila sea sólo un byte, lo que lo limita bastante.

Registros como tales ,físicos, tiene muy pocos: Acumulador, X, Y, SP y el de Flags, sin olvidarnos el PC, claro. Después tiene un sistema curioso y es que usa la página 0 y la 1 de la RAM como si fueran unos registros, la 0 como propósito general y la 1 para subrutinas e interrupciones. Pero eso, para mi, no entra en la definición de registros (internos en el silicio del chip).

Si quieres montarte un miniordenador con algun chip de éstos, busca SBC (single board computer) y el modelo de micro que prefieras, muchos son libres. Algunos solo necesitas unos pocos componentes para montártelos.

Avatar de Usuario
WhatIsAMan
Mensajes: 692
Registrado: 10 Dic 2017 17:06
Ubicación: El castillo invertido
Agradecido : 219 veces
Agradecimiento recibido: 230 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor WhatIsAMan » 23 Oct 2020 13:17

dragonet80 escribió:
WhatIsAMan escribió:El 6502 es un procesador excelente para el tiempo en que salió. Era muy rápido respecto a sus competidores y muy, muy barato. Tiene 256 registros de propósito general y intrucciones bastante potentes. Aún con sus luces tiene muchas sombras: es muy poco flexible con respecto a la memoria. En primer lugar los dispositivos de I/O están mapeados a memoria, luego pierdes los primeros 256 bytes porque los 256 registros de propósito general son externos al procesador finalmente pierdes toda la página 1 para poner la pila. Quizás su mayor defecto sea que el puntero de pila sea sólo un byte, lo que lo limita bastante.

Registros como tales ,físicos, tiene muy pocos: Acumulador, X, Y, SP y el de Flags, sin olvidarnos el PC, claro. Después tiene un sistema curioso y es que usa la página 0 y la 1 de la RAM como si fueran unos registros, la 0 como propósito general y la 1 para subrutinas e interrupciones. Pero eso, para mi, no entra en la definición de registros (internos en el silicio del chip).

Si quieres montarte un miniordenador con algun chip de éstos, busca SBC (single board computer) y el modelo de micro que prefieras, muchos son libres. Algunos solo necesitas unos pocos componentes para montártelos.

Claro, los externalizaron para ahorrarse silicio. Por eso era tan barato.

Avatar de Usuario
explorer
Mensajes: 394
Registrado: 10 Ene 2016 18:43
Ubicación: Valladolid, España
Agradecido : 8 veces
Agradecimiento recibido: 369 veces
Contactar:

Re: Construcción de un ordenador de 8 bits

Mensajepor explorer » 23 Oct 2020 14:13

El proyecto Gigatron TTL Microcomputer es aún más minimalista: ni siquiera tiene CPU, sólo puertas lógicas TTL. Y hay gente que se entretiene haciendo software y periféricos para él.

Un amigo me lo enseñó las navidades pasadas. Incluso diseñó y construyó una interfaz USB.

Existe también un emulador en línea.

IMG-20191221-WA0002_gigatron.jpeg
(746.69 KiB) No descargado aún


Se vende como kit, pero parece que el autor original ya no va a fabricar más el modelo en madera, que casi parece un cuadro para colgar. Pero hay una empresa que va a sacar kits básicos. La documentación es completísima, y hay una pequeña comunidad reunida en su foro.

Imagen

afx
Mensajes: 657
Registrado: 25 Nov 2010 23:26
Agradecido : 35 veces
Agradecimiento recibido: 62 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor afx » 25 Oct 2020 12:26

explorer escribió:El proyecto Gigatron TTL Microcomputer es aún más minimalista: ni siquiera tiene CPU, sólo puertas lógicas TTL. Y hay gente que se entretiene haciendo software y periféricos para él.

Muchas gracias explorer por el aporte, no conocía el proyecto. ¡Pinta muy bien! (Me sorprende que esos componentes TTL se sigan fabricando después de tantos años, eso es bueno).

Saludos!

Avatar de Usuario
desUBIKado
Mensajes: 190
Registrado: 15 Dic 2017 19:50
Agradecido : 25 veces
Agradecimiento recibido: 183 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor desUBIKado » 25 Oct 2020 20:13

Hay otro proyecto para crear un computador de 16 bits compatible con el juego de instrucciones del ZX80, se trata del Chloe 280SE y correría dentro de una placa basada en el ZX-Uno.

Por ahora su autor, Andrew Owen, ha creado el firmware que se ejecuta en el core de Spectrum del ZX-Uno. Sin embargo su intención es que corra bajo un core propio mucho más potente que deje atrás las limitaciones de un Spectrum. El problema es que él no es un creador de cores, y actualmente no hay nadie implementándolo.

garillete
Mensajes: 968
Registrado: 30 Oct 2010 20:58
Agradecido : 130 veces
Agradecimiento recibido: 279 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor garillete » 26 Oct 2020 19:40

Chloe 280 lo emulaba:

https://github.com/chernandezba/zesarux

lo digo por si alguien lo quiere ejecutar...

Avatar de Usuario
desUBIKado
Mensajes: 190
Registrado: 15 Dic 2017 19:50
Agradecido : 25 veces
Agradecimiento recibido: 183 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor desUBIKado » 26 Oct 2020 23:50

garillete escribió:Chloe 280 lo emulaba:

https://github.com/chernandezba/zesarux

lo digo por si alguien lo quiere ejecutar...


Ese es el antiguo: https://faqwiki.zxnet.co.uk/wiki/ZX_Spectrum_SE

El nuevo es otra cosa más evolucionada, y con un BASIC que rompe con el dialecto SINCLAIR para ser una versión más parecida al GWBASIC.

garillete
Mensajes: 968
Registrado: 30 Oct 2010 20:58
Agradecido : 130 veces
Agradecimiento recibido: 279 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor garillete » 27 Oct 2020 18:53

Entonces el nuevo se pareceria mas a un PC 8088 vitaminado y con graficos y sonido 16 bit......

Ojo no le quito merito me parece estupendo... me parece algo magnifico con un trabajo brutal...pero ya se aleja de la esencia del spectrum que son las limitaciones... es otra cosa...

Avatar de Usuario
Alki
Mensajes: 53
Registrado: 23 Nov 2016 10:05
Agradecido : 3 veces
Agradecimiento recibido: 8 veces

Re: Construcción de un ordenador de 8 bits

Mensajepor Alki » 28 Oct 2020 00:22

También hay uno muy curioso mas yanki comodoriano que es el commnder X16.

https://www.c64-wiki.com/wiki/Commander_X16

Avatar de Usuario
frankrodiii
Mensajes: 386
Registrado: 26 May 2019 14:46
Agradecido : 226 veces
Agradecimiento recibido: 119 veces
Contactar:

Re: Construcción de un ordenador de 8 bits

Mensajepor frankrodiii » 28 Oct 2020 00:46

Alki escribió:También hay uno muy curioso mas yanki comodoriano que es el commnder X16.

https://www.c64-wiki.com/wiki/Commander_X16

Este es el "ordenador soñado" de David Murray (8 bit guy). Una especie de C64 mejorado, hecho con piezas estándares.


Volver a “No Catalogados”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado