Académique Documents
Professionnel Documents
Culture Documents
ELECTRÓNICA
PROCESADOR?
ANTONIO RODRÍGUEZ ALHAMBRA
Imaginemos un cable con un botón en medio.
- Puertas AND: imaginemos que ahora en nuestro cable tenemos dos botones. Para que
la electricidad pase necesitamos pulsar ambos botones. Esto es lo que equivale a una
puerta AND.
1
- Puerta OR: aquí tendríamos un cable que se divide en dos. En cada uno de los dos cables
tenemos un botón, luego ambos cables se vuelven a juntar. Por lo tanto, bastaría con
pulsar uno de los botones para conseguir que la electricidad pase.
- Puerta NOT: aquí la puerta NOT invierte la señal. Es decir, si no pulsamos el botón, la
electricidad puede pasar. En el momento en el que pulsamos el botón la electricidad no
pasa.
En la actualidad, la tecnología se basa en CMOS y utiliza las puertas contrarias a las que hemos
visto. Es decir, la NAND y la NOR.
2
- Puerta NAND: esta puerta lógica es contraria a la puerta AND. Aquí la electricidad
siempre pasa salvo el caso en el que pulsemos ambos botones, en este caso la
electricidad no pasa pues se desviaría por otro sitio.
La razón por la que se utilizan estas puertas y no las AND y OR, es porque son más rápidas. Y ya
que queremos que nuestro procesador sea lo más rápido posible, pues elegimos estas. Pero,
además, matemáticamente es demostrable que con puertas NAND y NOR podemos
implementar cualquier función booleana, es decir, cualquier función matemática o cualquier
cosa que podamos hacer en un ordenador es posible de realizar con estar puertas.
En este trabajo vamos a ver cómo construir un procesador con puertas AND y OR.
3
Imaginemos que tenemos cuatro
cables (0, 1, 2 y 3). Si queremos
representar el número 0, activamos
el primer cable. Si queremos
representar el 1 activamos el
segundo cable. Si queremos el 2
activamos el tercero y para el 3 el
cuarto cable.
En un decodificador pasaríamos de dos cables a cuatro. Si por ejemplo activásemos los dos
cables, representando el 11 en binario, por el otro lado se activaría el cuarto cable
correspondiente al número 3.
4
Para realizar la suma utilizamos el siguiente circuito:
Imaginemos que queremos sumar 0 más 0. En este caso A y B estarían apagados, entonces
ninguna de las dos puertas se activaría y la salida sería 0 en S y C. Si queremos sumar 1 y 0 (1 en
terminal A y 0 en B), el terminal A estaría encendido y el B apagado. La puerta XOR se activará
pues una de sus dos entradas está encendida, mientras que la puerta AND no se activará pues
sólo uno de sus terminales está encendido. Por tanto, la salida será 01, es decir, 1. (1 en S y 0 en
C, ya que el XOR permitirá paso de corriente y AND no). En el último caso en el que sumemos 1
más 1 (tanto A como B encendidos), enviaríamos corriente por las dos entradas a ambas puertas.
La puerta AND dejaría pasar la corriente (ya que tenemos ambas entradas activadas), mientras
que la puerta XOR no dejaría paso de corriente (no se activaría), y el resultado sería 10, es decir,
2.
Si combinásemos más puertas XOR con AND, podríamos obtener un circuito capaz de sumar
números más grandes.
Sin embargo, no tiene ningún sentido realizar estas operaciones si no las almacenamos en algún
lugar. Es aquí donde interviene el llamado Flip-Flop.
Esta información se quedaría guardada todo el tiempo que necesitemos. Para entender esto
debemos saber lo que es el reloj.
5
por ejemplo, estamos diciendo que el reloj emite cuatro mil millones de señales por segundo.
Con todo esto sabido, ya podemos realizar operaciones en nuestro procesador. Podemos
guardarlas en memoria y podemos acceder a esa memoria. Pero, nuestro procesador es un poco
inútil aún, ¿por qué? Porque no podemos programarle. Debemos hablar ahora del concepto de
MÁQUINA FINITA DE ESTADOS.
Empezamos en el estado
‘Esperando’. Cuando un
cliente llega e introduce
dinero, saltamos al estado
‘Contando dinero’ donde
la máquina numera la
cantidad de dinero que el
cliente ha introducido para
almacenar el dato en memoria. Ahora saltaríamos al estado ‘Esperando selección de producto’.
Cuando el cliente elija el producto, compararíamos el valor del producto con el valor obtenido
en el estado ‘Contando dinero’. Si el dinero introducido es mayor o igual al precio del producto,
pasaríamos al estado ‘Sacando productor’. Sin embargo, si el dinero introducido es menor al
precio del producto, mostraríamos un error. Fuese cual fuese la cantidad de dinero introducida,
siempre volveríamos al estado inicial ‘Esperando’.
Es un ejemplo muy simple, pero sirve para entender como funciona una máquina finita de
estados.
6
la información de la posición cuatro, luego la pasaría a la unidad ALU (Unidad Aritmeticológica),
formada por sumadores, restadores y demás elementos vistos antes. En la ALU se realizaría la
suma y después el resultado lo guardamos en la posición de memoria seis. Se sumaría uno al
contador de instrucciones y pasaríamos a la siguiente instrucción, y así sucesivamente.
Una tarea tan sencilla como abrir una imagen es dividida en miles o millones de instrucciones
en el procesador. Sabiendo que nuestro procesador puede realizar millones de ciclos por
segundo, entonces la imagen se abriría en milisegundos.
Ya sea el modelo de procesador que se tenga (i3, i5, i7, i9 o modelos de AMD), todos funcionarán
de la misma forma. Ahora sí, en este documento hemos visto un procesador con muy pocos
transistores. En los procesadores actuales, el número de transistores por CPU sube a los miles
de millones. En casos como el procesador i7-6700k de Intel, el número de transistores es de mil
setecientos cincuenta millones (1.750.000.00), y en otros cómo el Xeon BroadWell-E5 de 22
núcleos, el número de transistores asciende hasta la cifra de siete mil doscientos millones
(7.200.000.00). Es por esto que la innovación tecnológica se centra en reducir el tamaño de los
componentes, puesto que así se podría aumentar el número de ellos por área y reducir, además,
el calor que disipan (gran inconveniente de un procesador de alta potencia).