Soy un estudiante en una escuela de TI y estamos tratando de pensar en un proyecto que podamos usar para mostrar a los estudiantes de primer año cómo funcionan las cosas detrás del escenario y eventualmente pensamos en hacer una computadora retro.
He leído muchas cosas sobre el procesador Z80, pero supongo que necesitamos algo más potente, todavía nos estamos preguntando sobre la arquitectura, aunque ARM podría ser una buena opción teniendo en cuenta que encontraríamos mucha documentación, tenemos También estableció algunas necesidades especiales:
- Un bus de direcciones externo si necesitamos más RAM
- > 50Mhz
- 16 o 32 bits
- Sin paquete BGA / QFN
- Sin placa FPGA
- Una interfaz en serie (?)
- No es demasiado caro, ya que tenemos un presupuesto limitado.
El P8X32A-D40 parece una buena CPU pero carece de la cantidad de RAM que necesitaríamos (32k), estaba más pensando en algo como> 1MB. Quizás valga la pena considerar el eZ80. Nos gustaría respuestas de personas experimentadas como tú.
Gracias.
Editar: Aunque he aceptado una respuesta, ya que satisface nuestras necesidades, la pregunta aún está abierta a otras sugerencias, ya que tendremos que discutir las opciones con el equipo de estudiantes dispuestos a participar en el proyecto.
fuente
Respuestas:
Aunque las versiones disponibles actualmente no tienen un verdadero bus de direcciones externo (está por llegar), puede considerar el Microchip PIC32 . Su arquitectura se basa en MIPS , que data de 1988, y es uno de los dos principales conjuntos de instrucciones RISC (el otro es ARM). Entonces, en ese sentido, puede considerarse retro. (Un pequeño truco: la Sony Playstation usó un procesador MIPS).
Una de las buenas características del PIC32 (e inusual para un microcontrolador de 32 bits) es que puede obtener varias variedades en un paquete DIP, sin embargo, la memoria máxima disponible será limitada en comparación con las versiones de montaje en superficie. Uno de los PIC con la memoria más grande en un paquete DIP de 28 pines es el PIC32MX250F128 con 128 KB de memoria Flash (programa) y 32 KB de RAM. Está disponible en Digi-Key en los EE . UU . Y Farnell en el Reino Unido .
Aunque la RAM puede parecer limitada, tenga en cuenta que los PIC son arquitectura de Harvard , lo que significa que el programa y los espacios de direcciones de datos están separados, y los programas se ejecutan sin flash, por lo que no necesita mucha RAM. (Para los puristas, los PIC32 son en realidad arquitectura Harvard modificada, porque es posible ejecutar programas sin RAM). La otra alternativa es Von Neumannarquitectura (utilizada, por ejemplo, en las PC '), donde hay un espacio de direcciones para todo y los programas generalmente se quedan sin RAM, una excepción es que generalmente necesitan tener al menos algo de Flash o ROM (llamado BIOS en una PC) en El espacio de dirección del procesador para ejecutar una rutina de arranque para cargar el sistema operativo de un dispositivo de almacenamiento masivo o red en la RAM. El Z80 (y la mayoría de los microprocesadores de su tiempo) también usaban una arquitectura Von Neumann. Así que uno tenía que ajustar tanto el programa como los datos en 64 KB. Algunos micros con una arquitectura de Von Neumann también mapearon sus periféricos en el mismo espacio de direcciones de 64K; otros usaron direcciones de puerto separadas.
En el bus externo, los PIC32 actuales (pero solo en paquetes de montaje en superficie, debido a la cantidad de pines) tienen un "Puerto maestro paralelo" (PMP) de 8 o 16 bits de ancho que, junto con DMA, puede transferir datos de un lado a otro. automáticamente entre la RAM del PIC y la RAM externa o un periférico. Sin embargo, esto no permite acceder a la memoria externa directamente (en el espacio de direcciones del procesador) o ejecutar código allí. La nueva familia PIC32MZ , incluida en la lista pero aún no disponible en Digi-Key, tendrá un verdadero bus de direcciones externo, hasta 2 MB de Flash, 1/2 MB de RAM y funcionará a 200 MHz.
El PIC32MX250F128 funciona a 50 MHz, hay otros que funcionan a 80 MHz. Tiene dos puertos seriales UART; Necesitará un convertidor de nivel para traducirlo a señales RS232.
Debido a que está empaquetado como un DIP y puede funcionar sin un oscilador externo, para comenzar, todo lo que necesita es una fuente de alimentación de 3.3.v, unas tapas de desacoplamiento de 0.1 µF y una placa de prueba. Puede obtener un compilador de C e IDE gratuitos de Microchip.
Una vez que tenga el procesador en funcionamiento, puede agregar periféricos como una pantalla LCD, botones (incluso un teclado), etc.
Puede obtener otros PIC32MX con hasta 512 KB de Flash y 128 KB de RAM, pero solo en paquetes de montaje en superficie como TQFP y VQFN que requerirían que diseñe una PCB (también tendría este mismo problema con cualquier procesador ARM).
fuente
Si bien estoy ampliamente de acuerdo con @tcrosley, me siento obligado a señalar que si realmente quieres mostrarles a otros estudiantes cómo funcionan las cosas "detrás del escenario", entonces deberías obtener un tablero FPGA (solo compra uno, no lo intentes y hazlo ) y aprender a construir CPU desde cero utilizando la lógica. Echa un vistazo a esto para un buen punto de partida.
fuente
¿Has considerado la serie MC68000?
Es una CPU de 16/32 bits, excepto la 68008, la línea de datos es de 16 bits, algunos de ellos pueden ejecutarse a 50 MHz fácilmente y el espacio de direcciones es de 16 MB.
Aquí está la documentación completa: https://www.nxp.com/docs/en/reference-manual/MC68000UM.pdf
fuente