Consola portátil (equipo de GPU) (3 / 10 paso)

Paso 3: Controlador de memoria

La memoria RAM contiene todos los mapas de bits gráficos requeridos por los diferentes módulos de la GPU así como algunas zonas de la memoria de maniquí usados por algunos algoritmos. Es crucial que todos los módulos pueden acceder a él, cuando sea necesario, sin causar demasiada distracción entre sí. Especialmente, el frame buffer necesita acceder a la RAM periódicamente a una línea de carga de cada plano para mostrar y el momento es crítico.

Hardware gráfico especializado poseen generalmente VideoRAMs (VRAM) con varios puertos de lectura y escritura para facilitar estas cuestiones, pero el Micron de 16 MB RAM celular tiene sólo un único puerto PSRAM interfaz y es muy molesto con sus colisiones de ciclo de actualización de datos. Por lo tanto hay necesidad clara de un controlador facilitar el uso de este dispositivo y hacerlo más apto para un acelerador de gráficos.

Principales funcionalidades

El controlador de memoria proporciona ya sea:

  • acceso de lectura asincrónica,
  • acceso de escritura asincrónica,
  • acceso de lectura de ráfaga,
  • reventar el acceso de escritura.

Estas instrucciones son llevadas hacia fuera generando señales tal como se especifica en la hoja de datos de la RAM del celular (ver gráficos de distribución).

Arbitraje y Bus de memoria

Hemos implementado una lógica de arbitraje preventivo bus para el bus de memoria del controlador. Esto permitiría módulos tiempo-críticos tener acceso a datos con facilidad, pero es necesario que todos los módulos de prioridad inferiores tienen que estar listos para que se Haz interrumpido durante un acceso. Puede haber hasta 5 módulos externos que pueden conectarse a esta lógica de arbitraje.

Bus de control y de datos del controlador de la RAM es compartido por los siguientes componentes (pedidos como prioridad disminuye):

  1. FrameBuffer;
  2. DMAController;
  3. BlockProcessingUnit
  4. PrimitiveGeneratorUnit

Cada uno de estos módulos está conectado al Bus de memoria del controlador de la RAM y la multiplexación del bus se realiza por la lógica de arbitraje alrededor del controlador. El bus de memoria se compone de las siguientes señales:

  • INSTR [3:0]: instrucciones de la memoria
  • DATA_I [15:0]: datos del módulo del RAM
  • DATA_O [15:0]: datos de RAM para el módulo de
  • ADDR [22:0]: dirección de la imagen, la base
  • HCNT [15:0]: contador de desplazamiento horizontal,
  • VCNT [15:0]: contador de desplazamiento vertical,
  • PICLEN [15:0]: tamaño horizontal de la imagen,
  • HLEN [15:0]: tamaño horizontal del bloque a (parte de la imagen a ser leídos/escritos),

Si INSTR es una asincrónica instrucción (lectura o escritura), entonces HCNT, VCNT, señales PICLEN y HLEN no se utilizan. Estas señales se utilizan junto con las instrucciones de descarga, para lectura y escritura de una línea o una parte rectangular de una imagen.

Más precisamente, durante un acceso de descarga correctamente configurado, la secuencia de acceso dirección viene dado por la siguiente fórmula:

ADDR + HCNT VCNT × PICLEN, con HCNT: 0 a HLEN − 1, VCNT: 0 a VLEN − 1

(Ver la imagen de arriba).

Este bus de memoria ciertamente complejo es necesario para asegurar la preferencia de una operación llevada a cabo por el módulo de acceso; estos contadores HCNT y VCNT permiten módulos a programar sus operaciones si consigue adelantarse o si refresco de CRAM es necesario. También permite recortar muy fácilmente de mapas de bits que es bien utilizado por la unidad de procesamiento del bloque (esto será revisado en sección BPU).

Pero debido a su complejidad, todo el componente conectado con el Bus de memoria tendrá que implementar un algoritmo bastante complejo (unos contadores, una multiplicación para comprobar colisiones de actualización). Actualmente estamos trabajando en una nueva solución basada en sincronización de búfer para simplificar la interfaz de la memoria.

Artículos Relacionados

Consola portátil (brazo equipo de MCU)

Consola portátil (brazo equipo de MCU)

ContextoPara nuestro proyecto de ingeniería, nuestros tutores quiso enfrentar los desafíos del diseño de un sistema en tiempo real con un relativamente alto rendimiento en limitados recursos (memoria, ancho de banda).Las especificaciones requieren un
Consola portátil de RetroGame (frambuesa Pi)

Consola portátil de RetroGame (frambuesa Pi)

Este instructable es escrito para el curso FabLab haciendo de las Rotterdam University of Applied Sciences.Para este curso voy a hacer una consola de juego portátil en combinación con una Raspberry Pi y una carcasa personalizada.Para una asignación d
Consola portátil frambuesa Pi $20

Consola portátil frambuesa Pi $20

Hay toneladas de emuladores retros juego frambuesa Pi alrededor en el internet, pero la mayoría son bastante cara. Con el nuevo $5 frambuesa Pi cero, en este Instructable te voy a mostrar cómo construir una batería totalmente portátil alimentado por
Cómo construir un sistema de computadora de mano consola portátil de Nintendo N64

Cómo construir un sistema de computadora de mano consola portátil de Nintendo N64

Emuladores de N64 no funciona muy bien, que el tartamudeo con video, problemas de framerate, problemas de compatibilidad. Es la única manera de jugar correctamente los juegos de N64 en el hardware original; hecho.Hacer un portable de mano básicamente
PlayCase v1.5: consola portátil modular caso, completo HD 19 pulgadas, que lleva añadido altavoces!

PlayCase v1.5: consola portátil modular caso, completo HD 19 pulgadas, que lleva añadido altavoces!

Haz un completo monitor de HD en el formato más pequeño posible: 19,5 pulgadasEl bisel de la tira y poner el marco en un caso de vueloAñadir un sistema de fijación modular para adaptarse a la mayoría de consolas; PlayStation 3 o Playstation 4, decodi
¿Cómo hacer una ordenador de mano portátil Nintendo 64 N64 consola de juegos - iNto64

¿Cómo hacer una ordenador de mano portátil Nintendo 64 N64 consola de juegos - iNto64

siempre quería hacer su consola de juegos Nintendo 64 (N64) en una unidad portátil de mano para "sobre la marcha" jugando?Este sistema escurr las baterías del Li-ion que son lo suficientemente potente como para ejecutar el sistema y son también
Caja de consola de juego portátil todo-en-uno

Caja de consola de juego portátil todo-en-uno

construcción de caja de esta consola portátil todo-en-uno fue una gran decisión! No sólo lo hace fácil de transportar, también protege a mi sistema de juego y mantenerlo organizado.Esto es sólo una descripción, Ve el Instructable completa aquí!¿Por q
Hacer una NES portátil. (sistema de entretenimiento portátil de nintendo)

Hacer una NES portátil. (sistema de entretenimiento portátil de nintendo)

me ha encantado la idea de mano portátil de juegos de azar ya que mi primera Game Boy y yo hemos amado la idea de hacer consolas portátiles aún más! VI unos walkies NES e hicieron todo muy bien. Decidí hacer mi propio y publicar un vídeo de cómo hace
Hacer un sistema de juegos portátil-en Photoshop!

Hacer un sistema de juegos portátil-en Photoshop!

Este es mi primer instructivo que visitas el potente y extraordinario mundo de photoshop, les espero guste!Me sorprendió que había nada como esto en instructables hasta ahora, así que pensé que mostraría todo mi proyecto que hice con photoshop CS4. P
Cómo jugar en una consola en un ordenador portátil (NTSC solamente)

Cómo jugar en una consola en un ordenador portátil (NTSC solamente)

en este instructable te ser mostrando cómo jugar un juego de consola en cualquier portátil decente con puerto usb libre 1. Im sorry pero fácil cap no funciona con NTSC solo PALUsted puede hacer esto con una torre, pero hay una manera más eficaz de ha
Consola de juegos portátil RetroPie del pobre

Consola de juegos portátil RetroPie del pobre

Me encanta los juegos de video. Me gustaría poder llevarlos dondequiera que vaya a jugar. Pero tengo un problema. No tengo demasiado dinero para gastar en juegos de video. Que tomé una de las cosas que me encantan (video juegos), hecho portable y lo
Consola de juegos portátil frambuesa Pi

Consola de juegos portátil frambuesa Pi

Esta consola de juegos portátil es posiblemente lo más divertido que he tenido usando un Raspberry Pi. Y no es sólo la acumulación que es divertido; Ahora tengo una consola de juegos pleno funcionamiento, por lo que puedo jugar todos mi favorito arca
Raspi Pip-boy, consola de juegos portátil / ordenador

Raspi Pip-boy, consola de juegos portátil / ordenador

Hola, me gustaría presentar mi primer proyecto raspberry pi.Un Pip-boy como computadora Personal (si eres un Fan de Fallout, verás lo que quiero decir)! :Resumen :- Modelo frambuesa pi B + una 2.8″ LCD 8bits paralelo pantalla táctil conectada en GPIO
Tríptico con tartas de frambuesa y pantallas de ordenador portátil sincronizado video

Tríptico con tartas de frambuesa y pantallas de ordenador portátil sincronizado video

Un amigo cineasta se me acercaron para diseñar un dispositivo de visualización que le permitiría a mostrar un video tríptico en el paseo del arte 2015 Venecia. La idea era crear un marco que contendrá todos los componentes necesarios para reproducir