Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Computadores
Buses
Dispositivos de
Almacenamiento
Entrada y Salida
Procesador
Definición
La Unidad Lógica Aritmética, de
aquí en adelante ALU, es la pieza
de hardware encargada de
realizar las operaciones lógicas
y aritméticas. Este componente
contiene una serie de entradas y
salidas que iremos viendo a
continuación.
Operandos y Resultado
Los operandos son los números
que están entrando a la ALU
para ser operados de alguna
forma. El resultado es el valor
de salida de la operación. n es la
cantidad de bits de la
arquitectura bajo la cual trabaja
esta ALU.
OPCODE
Código que indica la operación que
debe realizar la ALU en un
momento dado. La cantidad de bits
para esta entrada está dado por la
cantidad de operaciones que una
ALU en específico puede realizar.
Por ejemplo: si la ALU puede
realizar 4 operaciones, sólo se
necesitan 2 bits para representar a
cada una de ella.
Status
Los bits de Status(Estado) o también llamadas
Flags(Banderas), son un conjunto de bits que
dan información adicional sobre el estado de
un resultado de la ALU. Por ahora
mencionaremos tres:
● el bit Z (Zero): se activa (1) si cualquier
resultado de la ALU es cero.
● el bit N (Negative): se activa (1) si
cualquier resultado de la ALU es
negativo.
● el bit O (Overflow): se activa (1) si
cualquier resultado de la ALU tiene un
desbordamiento.
II. Circuitos que memorizan
Supongamos que tenemos una compuerta OR donde su salida está realimentando a
una de sus entradas.
Ingresamos un 1 por una de sus entradas, entonces se obtendrá un …
Ingresamos un 1 por una de sus entradas, entonces se obtendrá un 1 a la salida dado
el comportamiento de una compuerta OR.
Al instante siguiente, la salida de la compuerta realimenta a la entrada a la que se
conecta:
Entonces, si nuevamente modificamos la entrada, ahora por un 0, la salida no se verá
afectada. Por lo tanto, hemos conseguido un circuito que memoriza unos.
Hagamos el mismo ejercicio con la compuerta AND:
Si modificamos la entrada por un 0, entonces obtendremos un …
Si modificamos la entrada por un 0, entonces obtendremos un 0 a la salida dado el
comportamiento de la compuerta AND.
Al instante siguiente, la salida realimenta a la entrada correspondiente.
Entonces, si nuevamente modificamos la entrada, ahora por un 1, la salida no se verá
afectada. Por lo tanto, hemos conseguido un circuito que memoriza ceros.
Biestable(Latch | Flip-flop)
Si unimos las ideas propuestas por los dos circuitos previamente analizados,
podremos obtener un Biestable. Este circuito es capaz de recordar cuando se
ingresa un cero o un uno según los valores de sus dos entradas:
Biestable(Latch | Flip-flop)
En general posee dos entradas, una denominada set para indicar un valor en la salida
y reset para volver 0 el valor de la salida.
Los biestables pueden contener más o menos compuertas lógicas
en su circuitería, esto dependiendo de la forma en que logran la
memoria o bien, por su funcionamiento.
Lo importante, hemos logrado un circuito que es capaz de
memorizar 1 bit de información. Ahora veremos los distintos
componentes que memorizan y cómo los podemos usar para
memorizar datos de 2 bits o más.
III. Flip-flop
Definición
Un flip-flop es un circuito secuencial digital
que se utiliza para almacenar un bit de
información.
Los flip-flop se utilizan para una amplia
variedad de aplicaciones en la electrónica
digital, incluyendo la implementación de
contadores, registros, osciladores,
memorias de computadoras, entre otros.
Tipos de Control
Los sistemas digitales compuestos por flip-flops necesitan de una
señal de control, también llamada línea de habilitación, para
decidir cuándo cambiar su estado, el cual puede ser asíncrono o
síncrono.
Las salidas de un sistema asíncrono pueden cambiar en cualquier
momento, por el contrario, los sistemas síncronos utilizan un señal
llamada reloj para decidir cuándo cambiar el estado de las salidas.
Señal de Reloj (CLK)
Q0 Q1 Q2 Q3
Ancho del Registro
La cantidad de flip-flops utilizados en el registro va a determinar la
cantidad de bits que es capaz de almacenar, a esto se le denomina ancho
del registro.
D0 D1 D2 D3
Q0 Q1 Q2 Q3
Registros de Carga
Son una clase de registros que permiten la carga de datos en paralelo a
través de un conjunto de entradas. Este tipo de registro también es
llamado Parallel In Parallel Out (PIPO).
0 0 1 1
0 0 1 1
0 0 1 1
Registros de Desplazamiento
Son una clase de registros que se utilizan para desplazar datos a través de
una cadena flip-flops. Este tipo de registro también es llamado Serial In
Parallel Out (SIPO).
1
1 0 0 0
1 0 0 0
Registros de Desplazamiento
Son una clase de registros que se utilizan para desplazar datos a través de
una cadena flip-flops. Este tipo de registro también es llamado Serial In
Parallel Out (SIPO).
0
0 1 0 0
0 1 0 0
V. Memoria
Definición
Sabemos que si tenemos n flip-flops conectados en secuencia tendremos
una capacidad de n bits para recordar. Ahora, si tenemos varios registros
juntos le denominamos módulo de memoria.
Una memoria es un componente esencial para los computadores, ya que
les permite almacenar datos y programas, ya sea de forma temporal o
permanente.
Capacidad
La de una memoria está determinada por 0 0 0 1 1 0 1 0
la cantidad de registros en la memoria y la
1 0 1 1 0 1 0 0
cantidad de bits en cada registro.
1 1 1 0 0 0 0 0
En el ejemplo aquí propuesto se tiene una
memoria de 8 registros, donde cada uno 1 0 1 0 1 0 0 0
de ellos es de 8 bits. Por lo tanto tiene una
capacidad de: 1 1 0 1 0 1 0 1
0 0 1 1 0 1 0 0
Capacidad = 8 * 8bits = 64bits = 8Bytes
1 1 1 1 1 0 0 1
Recordar que 8 bits es igual a 1 Byte.
1 1 0 1 1 1 0 0
Acceso a Memoria
Cada uno de los registros tiene 000 0 0 0 1 1 0 1 0
asociada una dirección para su
001 1 0 1 1 0 1 0 0
acceso, a esta la definiremos como
dirección de memoria. 010 1 1 1 0 0 0 0 0
111 1 1 0 1 1 1 0 0
BUS DE DIRECCIONES
Acceso a Memoria
La cantidad de cables que 000 0 0 0 1 1 0 1 0
111 1 1 0 1 1 1 0 0
BUS DE DIRECCIONES 3
Lectura y Escritura de la Memoria
Una vez se acceda a una 000 0 0 0 1 1 0 1 0
110 1 1 1 1 1 0 0 1
111 1 1 0 1 1 1 0 0
BUS DE DIRECCIONES 3
BUS DE DATOS
Lectura y Escritura de la Memoria
La cantidad de cables para el 000 0 0 0 1 1 0 1 0
100 1 1 0 1 0 1 0 1
101 0 0 1 1 0 1 0 0
110 1 1 1 1 1 0 0 1
111 1 1 0 1 1 1 0 0
BUS DE DIRECCIONES 3 8
BUS DE DATOS
Lectura y Escritura de la Memoria
Si mediante el acceso por el 000 0 0 0 1 1 0 1 0
bus de direcciones llego a la 001 1 0 1 1 0 1 0 0
dirección 100, se puede
010 1 1 1 0 0 0 0 0
obtener la información que
posee (lectura) o bien 011 1 0 1 0 1 0 0 0
modificar su contenido 100 1 1 0 1 0 1 0 1
(escritura), para realizar
101 0 0 1 1 0 1 0 0
cualquiera de estas acciones
se requieren cables para 110 1 1 1 1 1 0 0 1
dichas habilitaciones. 111 1 1 0 1 1 1 0 0
BUS DE DATOS
8
Lectura y Escritura de la Memoria
En el caso de la lectura, la 000 0 0 0 1 1 0 1 0
100 1 1 0 1 0 1 0 1
101 0 0 1 1 0 1 0 0
110 1 1 1 1 1 0 0 1
111 1 1 0 1 1 1 0 0
BUS DE DATOS
8
11010101
Lectura y Escritura de la Memoria
En el caso de la escritura, la 000 0 0 0 1 1 0 1 0
110 1 1 1 1 1 0 0 1
111 1 1 0 1 1 1 0 0
BUS DE DATOS
8
00101010
Lectura y Escritura de la Memoria
Recordar que el contenido de una 000 0 0 0 1 1 0 1 0
dirección de memoria solo se
001 1 0 1 1 0 1 0 0
sobreescribe nunca se borra. Por lo
tanto, si un espacio de memoria 010 1 1 1 0 0 0 0 0
deja de utilizarse para la ejecución
de un programa, esta estará 011 1 0 1 0 1 0 0 0
disponible para la ejecución de 100 0 0 1 0 1 0 1 0
otros programas, por lo que
sobreescribirá la información para 101 0 0 1 1 0 1 0 0
sus usos particulares. 110 1 1 1 1 1 0 0 1
111 1 1 0 1 1 1 0 0
BUS DE DATOS
8
00101010
En resumen
Para la construcción/uso de un módulo de
memoria, se requiere considerar lo siguiente:
● N cantidad de cables para los datos,
donde N es el ancho de los registros.
● M cantidad de cables para las
direcciones, donde M es la cantidad de
bits necesarios para representar todas
las direcciones existentes.
● Un cable para habilitar la lectura de
datos.
● Un cable para habilitar la escritura de
datos.
Tipos de Memoria
● RAM (Random Access Memory)
● ROM (Read Only Memory)
● Caché
● Flash
● Almacenamiento
VI. ¿Preguntas?