PREVIEW
ALU (4-bit)

ALU (4-bit)

Arithmetic signal_cellular_alt Advanced schedule 35 min

Unidad Aritmético-Lógica (4 bits)

Descripción general

  • Propósito: La unidad aritmético-lógica (ALU) es un circuito digital que realiza operaciones aritméticas y lógicas sobre números binarios de 4 bits. Sirve como núcleo computacional de los sistemas digitales, ejecutando diversas operaciones en función de las señales de control.
  • Símbolo: La unidad aritmético-lógica está representada por un bloque rectangular con entradas para dos operandos de 4 bits (A y B) y selección de operación, con salidas para el resultado de 4 bits y los indicadores de estado.
  • Rol en DigiSim.io: La unidad aritmético-lógica habilita el cómputo en circuitos digitales, siendo esencial para implementar procesadores, calculadoras y otros sistemas computacionales.

alu component

Descripción funcional

Comportamiento lógico

La unidad aritmético-lógica de 4 bits toma dos entradas de 4 bits, realiza una operación seleccionada por las entradas de control de operación, y produce un resultado de 4 bits junto con indicadores de estado. Estos indicadores señalan propiedades como si el resultado es cero, negativo, o si hubo un acarreo o desbordamiento.

Selección de operación:

Código de op. Operación Descripción
000 Suma R = A + B
001 Resta R = A - B
010 AND lógico R = A & B
011 OR lógico R = A
100 XOR lógico R = A ^ B
101 NOT lógico R = ~A
110 Desplazamiento izq. R = A << 1
111 Desplazamiento der. R = A >> 1

Nota: Los códigos de operación exactos pueden variar según la implementación

Entradas y salidas

  • Entradas:

    • A[3:0]: Primer operando de 4 bits.
    • B[3:0]: Segundo operando de 4 bits.
    • OpCode[2:0]: Selección de operación de 3 bits para determinar qué función realizar.
  • Salidas:

    • Result[3:0]: Resultado de 4 bits de la operación.
    • Indicador de cero (Z): Se activa cuando el resultado es cero (todos los bits son 0).
    • Indicador de acarreo (C): Se activa cuando una operación produce un acarreo de salida (para suma) o préstamo (para resta).
    • Indicador negativo (N): Se activa cuando el bit más significativo del resultado es 1 (negativo en complemento a dos).
    • Indicador de desbordamiento (V): Se activa cuando una operación aritmética con signo resulta en un desbordamiento.

Parámetros configurables

  • Retardo de propagación: El retardo de tiempo entre los cambios de entrada y los cambios de salida correspondientes. Esto se simula en DigiSim.io.
  • Conjunto de operaciones: Algunas implementaciones pueden tener conjuntos de operaciones personalizables u operaciones adicionales.

Representación visual en DigiSim.io

La unidad aritmético-lógica de 4 bits se muestra como un bloque rectangular con entradas en el lado izquierdo y salidas en el lado derecho. Está claramente etiquetada como "ALU" para identificar su función. Los pines de entrada (A[3:0], B[3:0], OpCode[2:0]) y los pines de salida (Result[3:0], Z, C, N, V) están organizados en grupos lógicos. El componente indica visualmente el estado actual de todas las entradas y salidas.

Valor educativo

Conceptos clave

  • Aritmética binaria: Demuestra cómo las computadoras realizan operaciones aritméticas básicas sobre números binarios.
  • Lógica booleana: Muestra la implementación de operaciones lógicas sobre valores de múltiples bits.
  • Indicadores de estado: Introduce el concepto de códigos de condición que proporcionan información sobre los resultados de las operaciones.
  • Bloques de construcción computacionales: Ilustra cómo se pueden implementar operaciones complejas usando lógica digital.
  • Señales de control: Demuestra cómo los circuitos digitales pueden configurarse para realizar diferentes funciones.

Objetivos de aprendizaje

  • Comprender cómo los sistemas digitales realizan cómputos aritméticos y lógicos.
  • Aprender la relación entre las operaciones binarias y sus resultados.
  • Reconocer cómo los indicadores de estado proporcionan información esencial sobre los resultados de las operaciones.
  • Aplicar conceptos de la unidad aritmético-lógica para diseñar sistemas computacionales simples.
  • Comprender cómo la unidad aritmético-lógica encaja en la arquitectura más amplia de un sistema informático.

Ejemplos de uso

  • Diseño de CPU simple: La unidad aritmético-lógica forma el núcleo computacional de una CPU, ejecutando operaciones aritméticas y lógicas.
  • Circuitos de calculadora: Implementación de calculadoras binarias que realizan operaciones matemáticas básicas.
  • Manipulación de datos: Procesamiento de datos realizando operaciones bit a bit para enmascarar, filtrar o transformar valores.
  • Prueba de condiciones: Uso de la unidad aritmético-lógica y sus indicadores para probar condiciones específicas en valores de datos.
  • Controlador simple: Creación de sistemas de control que toman decisiones basadas en comparaciones aritméticas.

Notas técnicas

  • La unidad aritmético-lógica de 4 bits se construye típicamente usando una combinación de sumadores, puertas lógicas y multiplexores para seleccionar entre operaciones.
  • Los indicadores se derivan del resultado de la operación y la cadena de acarreo, proporcionando información importante para las decisiones de control.
  • La unidad aritmético-lógica puede expandirse para manejar datos más anchos (8 bits, 16 bits, etc.) replicando la estructura básica o usando diseños en cascada.
  • Para aritmética con signo, la unidad aritmético-lógica de 4 bits puede representar valores de -8 a +7 usando la representación en complemento a dos.
  • En DigiSim.io, el comportamiento de la unidad aritmético-lógica simula componentes digitales del mundo real, incluyendo retardos de propagación y generación de indicadores.

Diagrama de bloques

graph LR
    InputA[A 3:0] --> ALU[Unidad Aritmético-Lógica]
    InputB[B 3:0] --> ALU
    OpCode[Selección de Operación<br/>OpCode 2:0] --> ALU
    ALU --> Result[Result 3:0]
    ALU --> Flags[Indicadores de Estado<br/>Z, C, N, V]

Características

  • Componente central de la unidad de ejecución de una CPU
  • Realiza operaciones tanto aritméticas como lógicas sobre datos binarios
  • Usa señales de control para seleccionar la operación deseada
  • Genera indicadores de estado que proporcionan información sobre el resultado
  • Puede encadenarse para manejar palabras de datos más anchas (8 bits, 16 bits, etc.)
  • Utiliza propagación de acarreo para aritmética de múltiples bits

Aplicaciones

  1. Unidades de ejecución de unidades centrales de procesamiento (CPU)
  2. Procesamiento digital de señales
  3. Cálculo de direcciones en gestión de memoria
  4. Manipulación de datos en microcontroladores
  5. Unidades de procesamiento de gráficos
  6. Calculadoras científicas
  7. Sistemas de control digital
  8. Sistemas embebidos

Implementación

Una unidad aritmético-lógica de 4 bits puede construirse usando:

  • Sumadores completos para operaciones aritméticas
  • Puertas lógicas para operaciones bit a bit
  • Multiplexores para seleccionar entre diferentes operaciones
  • Decodificadores para la selección de operaciones

Implementación funcional

La unidad aritmético-lógica de 4 bits contiene:

  • Unidad sumadora/restadora de 4 bits
  • Unidad lógica para operaciones bit a bit
  • Desplazador para operaciones de desplazamiento
  • Multiplexor para seleccionar la salida apropiada
  • Lógica de indicadores de estado

Componentes relacionados

  • Unidad aritmético-lógica de 8 bits: Versión expandida con operandos de 8 bits
  • Registro: Almacena datos antes y después de las operaciones de la unidad aritmético-lógica
  • Unidad de control: Proporciona señales de control de operación a la unidad aritmético-lógica
  • Sumador: Componente especializado para operaciones de suma
  • Comparador: Componente especializado para operaciones de comparación

school Ruta de Aprendizaje

arrow_forward Siguientes Pasos

help_outline Preguntas Frecuentes

¿Qué es una ALU?

La ALU (Unidad Aritmético-Lógica) realiza todas las operaciones aritméticas y lógicas en una CPU. Toma dos operandos y produce un resultado basado en la operación seleccionada.

¿Qué operaciones soporta una ALU típica?

Operaciones comunes: SUMA, RESTA, AND, OR, XOR, NOT, desplazamiento a la izquierda, desplazamiento a la derecha. La selección de operación se controla mediante entradas de selección de función.

play_arrow Ejecutar Circuito en Vivo

Ver Otros Componentes