8 votos

Circuito integrado de habilitación de bus

Estoy jugando con el diseño de una simple CPU de 8 bits a partir de componentes lógicos básicos. Tengo una idea bastante buena de cómo van a interactuar mi ALU y mis registros, pero lo único que creo que puede mejorar es cómo alternar cuando una línea puede conectarse al bus de datos principal.

Mi idea inicial era utilizar y puertas para conducir el autobús. La salida de las diferentes líneas de la ALU podría ir a un conjunto de chips quad-AND que salieran al bus. Sólo un conjunto de compuertas AND a la vez tendría todas sus entradas B en alto para dejarlas salir al bus.

Hay un par de cosas de las que no estoy seguro: Parece un desperdicio utilizar ocho compuertas AND completas por línea, cuando sólo necesito que entre una línea de control. ¿Hay algún chip mejor para este propósito? Estoy seguro de que también podría hacerlo con ocho transistores, pero me gustaría seguir con circuitos integrados bastante comunes (y baratos).

Una solución como ésta sólo permite que los datos fluyan en un sentido desde el bus. ¿Es esto un problema? Creo que no, ya que tengo otras líneas de control que impiden que los registros carguen los datos del bus hasta que yo lo desee.

¿Existe un chip estándar para una puerta de bus como ésta?

7voto

lillq Puntos 4161

El 74HC244 es el típico dispositivo de conexión/desconexión de un bus. Es un búfer octal de tres estados (o más bien un buffer cuádruple). Necesitarás la función tri-state para desconectarte completamente del bus. Las compuertas pondrían el bus en alto o en bajo, pero eso no permitiría otro dispositivo en él.

Pero como estás hablando de un bus de datos probablemente quieras un bidireccional buffer. A continuación, puede utilizar el 74HC245 .

74HC245

Usted tiene un DIR para controlar la dirección y un /OE que puede hacer que el buffer sea triestado.

editar
JustJeff menciona el flip-flop D octal 74HC374. ( Nota: Hablaré del 74HC574, que es funcionalmente igual, pero tiene un pinout más lógico. ) El 74HC574 es realmente una parte interesante, y un clásico desde la serie SN74xx. Mientras que el 74HC245 le dará un buffer triestado, el 74HC574 tiene un memoria en forma de flip-flop octal D. Genial para hacer registros, y a través de la conexión triestatal al bus puedes enrutar tu flujo de datos fácilmente.
Sin embargo, esto tiene un inconveniente. La salida del registro sólo está disponible para el bus, por lo que toda la comunicación tendría que pasar por ahí, por lo que el bus se convertirá en un cuello de botella . Por eso creo que es mejor sustituir el 74HC374 por un 74HC273 flip-flop octal D seguido de un buffer triestado 74HC244 separado para la conexión al bus. De este modo, la salida del registro también está disponible internamente cuando alguna otra señal ocupa el bus. (No sé si hay una parte compatible con la función con el pinout más lógico. También puede utilizar un 74HC574 con /OE conectado a tierra).

4voto

aryeh Puntos 1594

(1) Las compuertas AND son intrínsecamente inadecuadas para la puesta en común como topes de bus transparentes porque si tienen controladores de salida totalmente activos interactúan, y si son de "colector abierto" la lógica se invierte.

Puede utilizar el colector abierto de 2 entradas O puertas como conductores de una línea a un bus común.

Si introduces "datos" y "no_activación" en una puerta OR, la salida será alta si no_activación es alta y seguirá a datos si no_activación es baja.

Cuando la salida de una puerta de colector abierto es alta, no carga el bus de ninguna manera. Cuando está baja, carga el bus con una salida baja encendida. Por lo tanto, varias puertas O de colector abierto pueden compartir el bus y sólo las activadas (normalmente una a la vez) pueden conducir el bus. Necesitas un único pullup para subir el bus y cualquier número de puertas para bajarlo.

(2) EDUC-8 fue/es un microordenador de 8 bits basado en TTL presentado como un proyecto de varios meses en la revista Electronics Australia de agosto de 1974 a agosto de 1975. Incluso si no quieres copiarlo, puedes aprender mucho viendo cómo se implementó. Hay varios entusiastas que han construido copias en los últimos años.

Documentación muy extensa del viaje de un usuario de EDUC-8 ... Lo mismo... Incluye detalles de su fabricación de PCB de transferencia de tóner de los varios PCB latrgsih y mucho más.

Wikipedia EDUC-8

Página de enlaces

Alguna documentación

Imagen de la placa de circuito impreso

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X