Estoy estudiando electrónica digital donde aparecen los componentes ALU y el multiplexor. Para mí, la ALU parece un multiplexor, pero no se menciona específicamente que este es el caso. ¿Es así, o por qué no?
Estoy estudiando electrónica digital donde aparecen los componentes ALU y el multiplexor. Para mí, la ALU parece un multiplexor, pero no se menciona específicamente que este es el caso. ¿Es así, o por qué no?
No, no es un multiplexor. Un multiplexor seleccionaría una de ambas entradas; en una ALU, ambas entradas pueden usarse simultáneamente, dependiendo de la operación pendiente.
ALU significa Unidad Aritmética y Lógica, y esos son los tipos de operaciones que realiza.
Si la operación requiere un desplazamiento a la izquierda del registro R1, entonces la segunda entrada se ignora, pero es posible que tenga que "agregar el contenido de la dirección RAM 0x1208 al registro R1", entonces se usan ambas entradas. Antes de que se pueda realizar el agregado, los datos de la RAM se deben buscar y colocar en una de las entradas, y el contenido de R1 en la otra.
Engeneral,unaALUpuederealizarvariasoperacioneslógicas,comoagregar,cambiar,borrar,etc.Esunalógicabastantecomplejaquefuncionaenlosoperandosdelasentradasyelcódigodeoperación.
Operacionescomo"borrar A" son simples, pero "multiplicar A y B" requiere muchas puertas.
Como han señalado otros, la función de una ALU es realizar operaciones aritméticas y lógicas (generalmente binarias o unarias) en los buses de entrada. Puede dividir una ALU en tres etapas principales junto con cierta lógica de control que configura esas etapas.
Este es un dibujo de muy alto nivel que preparé para ilustrar esta partición.
Puede haber un debate sobre si la primera etapa y la lógica de control son realmente parte de la ALU, o si es simplemente una parte de la etapa de Ejecución de la tubería de la CPU.
Para mí, la ALU parece un multiplexor ...
Una ALU realiza muchas tareas.
Un multiplexor esencialmente realiza una tarea.
A una ALU se le podría asignar una función de multiplexor como una de sus funciones, si lo desea.
es decir, las capacidades de un multiplexor pueden ser un pequeño subconjunto de las capacidades de una ALU.
En una implementación típica, ambas tienen dos entradas y una salida.
Pero el multiplexor solo realiza una selección de cualquiera de las dos entradas.
La ALU podría hacer esto más la suma, OR, AND, XOR, Add, Subtract, ...
Dada una única entrada de control C y un puerto n bit A (con los bits A0, A1, A2 ... An) y un puerto n bit B, se puede considerar que un multiplexor implementa.
Mout_x = A_x.C + B_x./C para todo x = 0 ... n
"." = AND lógico
"+" = OR lógico.
No, no es un multiplexor. Una ALU es una Unidad de lógica aritmética .
Hace lo que el nombre sugiere, realiza varias operaciones aritméticas y lógicas como sumar, restar, multiplicar, cambiar, AND, OR, etc.
Una ALU realiza múltiples operaciones aritméticas / lógicas en función de la "función" seleccionada.
Es solo un mux en el sentido de que la "función" seleccionada seleccionará el resultado apropiado para enviar a la salida.
Como ejemplo, AGREGA dos números Y dos números juntos. Luego, la "función" multiplexa los resultados AGREGAR o ANDAR a la salida.
Por cierto, así es como se diseñan algunos ALU dentro de los microprocesadores.
Lea otras preguntas en las etiquetas alu multiplexer