Estoy construyendo una computadora casera de 8 bits y tengo algunos problemas con la salida de video.
Quiero saber si es posible generar alta resolución, digamos 640x480, salida de video monocromática, PAL o NTSC, usando un microcontrolador, digamos atmega328 funcionando a 20MHz, un registro de desplazamiento PISO de 8 bits y un framebuffer externo DRAM, se puede controlar el bus de direcciones por otro registro de desplazamiento SIPO.
¿Puedo generar una salida monocromática de 640x480 con un atmega? ¿Hay una mejor manera?
En NTSC, la parte activa de una línea horizontal es 52,6 us. Para empaquetar 640 píxeles se necesitaría un reloj de cambio de 12,17 MHz y una tasa de carga de 1,52 MHz. No creo que un AVR pueda generar una dirección de lectura, leer los datos, enviarlos al registro de desplazamiento PISO y calcular la siguiente dirección RAM lo suficientemente rápido.
Retrocediendo en el tiempo a las terminales de video basadas en microprocesadores, usaron los micros para la interfaz de usuario y escribieron en la RAM de video (de doble puerto). Escanear la RAM y convertir su contenido en video era todo hardware aleatorio. Hoy en día, ese hardware sin duda encajaría en un CPLD o FPGA, pero funcionalmente seguiría siendo un motor sin firmware.
Datapoint Corporation, que definió la arquitectura Intel 4004 (que Intel se negó a construir), utilizó todos los registros de desplazamiento PMOS en sus primeras terminales. Los fundadores (originalmente en Computer Terminal Corporation) fueron Phil Ray y Gus Roach, quienes refinaron sus conocimientos informáticos siendo administradores de programas para equipos de terminal terrestre de la NASA para equipos de telemetría Gemini. Al definir sus "terminales", incluyeron la capacidad de programación total, sabiendo que realmente estaban vendiendo computadoras. Con toda la memoria siendo registros de desplazamiento.
vicatcu
HaLailah HaZeh
h0m3
Janka
h0m3
Tony Estuardo EE75
h0m3