¿Diseñar un circuito lógico para abordar 2 x 512 kB de RAM y 2x1024 MB de RAM con 36 líneas de dirección? [cerrado]

-5

¿Cómo aborda 2 x 512 kB de RAM y 2 x 1024 MB de RAM con 40 líneas de dirección? La memoria es un byte direccionable, el problema es encontrar suficientes líneas de dirección para abordar toda la 4RAM y diseñar el decodificador parcial apropiado para seleccionar cada RAM.

Por ejemplo; un 513 KB puede direccionarse con 19 y 1024 con 30 líneas de dirección, Espacio de direcciones en cada RAM:

Address lines:  A30   A29    A28 ... A20   A19   A18   A17.......A0
    1st 512KB:                        0     0     0     0.........0
                                      0     0     1     1.........1

    2nd 512KB                         0     1     0     0.........0
                                      0     1     1     1.........1

    1st 1024MB                        1     0     0     0.........0
                1      0      0 ..... 0     1     1     1.........1

    2nd 1024    1      0      0.......1     0     0     0.........0
                1      1      1.......0     1     1     1.........1

¿Qué líneas de dirección son suficientes para las líneas de chip de selección de memoria y qué decodificador utilizo para seleccionar la RAM?

    
pregunta Ajakma

1 respuesta

1

1) Tienes las respuestas justo delante de ti ... ¡lol! A0-A18 son válidos para 512 KB, así que use A19 para habilitar el segundo 512KB. Eso es 1 MB hasta ahora. Utilice A0-A19 con A20 para habilitar el siguiente IC de 1 MB. Use A0-A20 con A21 utilizado para habilitar los últimos 1 MB.

2) Si conecta A18, A19 y A20 a una selección de dirección 74AC138 (74LVC138 si hay memoria de 3.3 voltios), obtendrá 8 bloques de 512 KB que están activos a nivel bajo Y0-Y7. DEBE controlar los pines de selección de chip (CS) para que las salidas bajen después de que las líneas de dirección estén estables. Solo un pin 'Y' a la vez puede bajar.

3) Asegúrese de cablear todas las líneas de dirección necesarias, deteniéndose en A20. Usa Y0 y Y1 para los primeros dos chips de 512 KB. Utilice Y4 & & Y5 para habilitar el primer chip de 1 MB, y Y6 & & Y7 para habilitar sus últimos 1 MB. El & & Escribí significa usar una compuerta 74AC08 AND rápida o 74LVC08 si la lógica de 3.3 voltios suma dos líneas de dirección 'Y', con una única salida baja activa para sus IC de 1 MB.

4) No olvide conectar sus líneas activas de lectura baja (RD) y escritura (WR). Deben ser las últimas líneas en estar activas, aunque algunos diseños pueden usar chip select (CS) como un toque final después de todas las demás líneas se colocan en un estado de estudio.

5) Por qué pensaste que necesitabas de 30 a 40 líneas de dirección que no sé (eso sería para GB de memoria). Si las direcciones inferiores ya están en uso, cambie las líneas Y0 e Y1 a Y2 e Y3, lo que le brinda 1 MB de espacio libre en la parte inferior de su mapa de memoria.

NOTA: si está intentando agregar esto a un mapa de memoria existente con un montón de E / S ya en uso, entonces lo repensaría. Una vez que entienda la asignación de memoria, sabrá lo que puede y no puede hacer.

    
respondido por el Sparky256

Lea otras preguntas en las etiquetas