Reflexión final sobre el curso y la materia

Arquitectura de computadoras
Una materia técnica sobre el desarrollo computacional, con fundamentos sobre la estructura y funcionamiento de los sistemas computacionales, enfocada principalmente a la parte lógica de un ordenador. Además, me gustaría agregar que ha sido una materia, en lo personal, difícil debido principalmente al manejo de los circuitos lógicos pues nunca ha sido un área de interés personal. Sin embargo, agradezco la atención y sobre todo lo felicito por el curso, pues todo el tiempo mostró preocupación y empeño en el aprendizaje.

De mi entender, los circuitos lógicos son dispositivos necesarios para la simplificación de operaciones y control en el flujo de la información. Entenderlos nos lleva a conocer las necesidades y posibilidades con las que cuenta una Unidad de Procesamiento y con ello podemos maximizar yoptimizar el rendimiento de nuestro procesador.

El Multiplexor (Telecomunicaciones)

¿Qué es un multiplexor?

En el campo de las telecomunicaciones el multiplexor se utiliza como dispositivo que puede recibir varias entradas y transmitirlas por un medio de transmisión compartido. Para ello lo que hace es dividir el medio de transmisión en múltiples canales, para que varios nodos puedan comunicarse al mismo tiempo.

Una señal que está multiplexada debe desmultiplexarse en el otro extremo.

Según la forma en que se realice esta división del medio de transmisión, existen varias clases de multiplexación:

  • Multiplexación por división de frecuencia
  • Multiplexación por división de tiempo
  • Multiplexación por división de código
  • Multiplexación por división de longitud de onda

¿Qué es un Decodificador?


¿Qué es un decodificador?
Un decodificador o descodificador es un circuito combinacional, cuya función es inversa a la del codificador, esto es, convierte un código binario de entrada (natural, BCD, etc.) de N bits de entrada y M líneas de salida (N puede ser cualquier entero y M es un entero menor o igual a 2N), tales que cada línea de salida será activada para una sola de las combinaciones posibles de entrada. Estos circuitos, normalmente, se suelen encontrar como decodificador / demultiplexor. Esto es debido a que un demultiplexor puede comportarse como un decodificador.


¿Qué es un mapa de Karnaugh?

¿Qué es un mapa de Karnaugh?

Un mapa de Karnaugh (también conocido como tabla de Karnaugh o diagrama de Veitch, abreviado como K-Mapa o KV-Mapa) es un diagrama utilizado para la minimización de funciones algebraícas booleanas. El mapa de Karnaugh fue inventado en 1950 por Maurice Karnaugh, un físico y matemático de los Laboratorios Bell.

Los mapas K aprovechan la capacidad del cerebro humano de trabajar mejor con patrones que con ecuaciones y otras formas de expresión analítica. Externamente, un mapa de Karnaugh consiste de una serie de cuadrados, cada uno de los cuales representa una línea de la tabla de verdad. Puesto que la tabla de verdad de una función de N variables posee 2N filas, el mapa K correspondiente debe poseer también 2N cuadrados. Cada cuadrado alberga un 0 ó un 1, dependiendo del valor que toma la función en cada fila. Las tablas de Karnaugh se pueden utilizar para funciones de hasta 6 variables.

Los Circuitos lógicos. Definición

Circuito lógico
es aquel que maneja la información en forma de "1" y "0", dos niveles lógicos de voltaje fijos. "1" nivel alto o "high" y "0" nivel bajo o "low". Los circuitos lógicos están compuestos por elementos digitales como la compuerta AND, compuerta OR o la compuerta NOT y combinaciones poco o muy complejas de los circuitos antes mencionados.

La Codificación y Modulación de los sistemas de computación

Datos Digitales, Señales Analógicas

La situación más habitual para este tipo de situaciones es la transmisión de datos digitales a través de la red teléfonica, diseñada para recibir, conmutar y transmitir señales analógicas en el rango de frecuencias de voz. Los modems permiten la conversión de los datos digitales en señales analógicas y viceversa.

Técnicas de Codificación o Modulación

Hay tres técnicas de codificación o modulación que son:

  • Desplazamiento de Amplitud (ASK)
  • Desplazamiento de Frecuencia (FSK)
  • Desplazamiento en Fase (PSK)

ASK.

Los dos valores binarios se representan mediante dos amplitudes diferentes de la portadora. El '1 binario' se representa mediante la presencia de la portadora a amplitud constante y el '0 binario' se representa mediante la ausencia de portadora.

Es una técnica de modulación bastante ineficaz, se usa típicamente a 1200 bps como mucho, es utilizada para la transmisión de datos digitales en fibras ópticas.

FSK.

Los dos valores binarios se representan mediante dos frecuencias diferentes próximas a la frecuencia de la portadora. FSK es menos sensible que ASK. En líneas de calidad telefónica, se utiliza a velocidades de 1200 bps. También se usa frecuentemente en transmisiones de radio a más altas frecuencias (desde 3 hasta 30 Mhz), también se puede usar en redes de área local que utilicen cable coaxial.

PSK.

La fase de la señal portador se desplaza para representar los datos digitales. El desplazamiento en fase se puede dar mediante diferentes técnicas:

  • DPSK: Ocurre un cambio de fase cada vez que se transmite un '1binario', en caso contrario la fase permanece constante. Se realiza en dos fases 0º y 180º, podemos obtener hasta 2 señales.
  • QPSK: En lugar de usar un desplazamiento de fase de 180º utiliza desplazamientos de fase correspondientes a múltiplos de 90º (90º,180º,270º,360º). Por lo que cada elemento de señal representa 2 bits en lugar de 1.

Operaciones con Complementos (a 2 y a 1)

Resta con complementos
Complemento a 2. El complementos a 2 de un número N, compuesto por n bits, se define como:

C2N = 2n – N

Complemento a 1. El complemento a uno de un número N, compuesto por n bits es, por definición, una unidad menor que el complemento a dos, es decir:


C1N = C2N - 1

Modelo computacional de John Von Newmann

Modelo de John Von Newmann
A principios de la década de 1950, von Neumann estudió los mecanismos que debe tener una máquina para que pueda tener la capacidad de construir otra máquina igual a la máquina creadora; de manera que diseñó un autómata celular con esas propiedades. A partir de la fecha de su muerte en 1957, dejó el proyecto sin terminar y desde entonces se han hecho varios intentos de completarlo; uno de los trabajos más destacados de reproducir y completar el trabajo de von Neumann se dio en el año 2000 por un grupo de especialistas en diseño de hardware en el Laboratorio de Sistemas Lógicos del Instituto de Tecnología Federal Suiza.

El constructor universal es uno de los conceptos que von Neumann definió y que es una parte fundamental en el diseño de esa máquina constructor universal, que es capaz de construir cualquier otra máquina constructor universal a partir de su descripción. Este proceso requiere que la descripción del constructor universal incluya su propia descripción, idea que fue tomada de modelos celulares vivos que contienen información de cómo construir otras células del mismo tipo:

  • La descripción muestra las características básicas de la máquina, al estilo de un genoma, que es interpretado para construir una copia del constructor universal.
  • La descripción es literalmente copiada, una vez que ha sido detectada y leída.
Stanislaw Ulam hizo la sugerencia (a von Neumann) de implementar sus ideas en un espacio bidimensional discreto. De manera que el universo creado por von Neumann lo define una matriz bidimensional infinita, cuyas entradas, llamadas células, son máquinas de estados finitos. Después de haber estudiado el modelo con varias opciones, llegó a definir 29 estados y una regla de transición.

Sistemas Numéricos

¿Qué es un sistema numérico?
Es una estructura algebraíca en el que se definen operaciones y reglas (axiomas) para manipular sus elementos.

Un conjunto \mathbb S es un sistema numérico si en él están definidas dos operaciones binarias asociativas y conmutativas, denominadas adición y multiplicación, y si además se cumple que la multiplicación es distributiva con respecto a la adición. Para a, b y c elementos de \mathbb S :

  • Propiedad asociativa de la adición: (a + b) + c = a + (b + c)
  • Propiedad conmutativa de la adición: a + b = b + a
  • Propiedad asociativa de la multiplicación: (a.b).c = a.(b.c)
  • Propiedad conmutativa de la multiplicación: a.b = b.a
  • Propiedad distributiva de la multiplicación sobre la adición: a.(b + c) = a.b + a.c

La adición y la multiplicación no necesariamente deben ser las de la aritmética elemental.

BUSES De comunicación. No transporte público

¿Qué es un BUS?
Un BUS puede conectar lógicamente varios periféricos sobre el mismo conjunto de cables. Se relaciona con la idea de las transferencias internas de datos que se dan en un sistema computacional en funcionamiento. En el BUS todos los nodos reciben los datos aunque no se dirijan a todos éstos, los nodos a los que no van dirigidos los datos simplemente los ignoran. Por tanto, un bus es un conjunto de conductores eléctricos en forma de pistas metálicas impresas sobre la tarjeta madre del computador, por donde circulan las señales que corresponden a los datos binarios del lenguaje máquina con que opera el Microprocesador.

Los primeros buses de computadoras eran literalmente buses eléctricos paralelos con múltiples conexiones. Hoy en día el término es usado para cualquier arreglo físico que provea la misma funcionalidad lógica que un bus eléctrico paralelo. Los buses modernos pueden usar tanto conexiones paralelas como en serie, y pueden ser cableados en topología multidrop o en daisy chain, o conectados por hubs switcheados, como el caso del USB.

Las Funciones Booleanas ¿Para qué son?

¿Qué es una función booleana?

Se denomina función lógica o booleana a aquella función matemática cuyas son binarias y están unidas mediante los operadores del álgebra de Boole suma lógica (+), producto lógico (.) o negación(-).

Modos de representación

Existen distintas formas de representar una función lógica, entre las que podemos destacar las siguientes:

  • Algebraica
  • Por tabla de verdad
  • Numérica
  • Gráfica
Algebraíca

Se utiliza cuando se realizan operaciones algebraicas. A continuación se ofrece un ejemplo con distintas formas en las que se puede expresar algebraicamente una misma función de tres variables.

a) F = [(A + BC’)’ + ABC]’ + AB’C
b) F = A’BC’ + AB’C’ + AB’C + ABC’
c) F = (A + B + C)(A + B + C’)(A + B’ + C’)(A’ + B’ + C’)
d) F = BC’ + AB’
e) F = (A + B)(B’ + C’)
f) F = [(BC’)’ · (AB’)’]’
g) F = [(A + B)’ + (B’ + C’)’]’

La expresión a) puede proceder de un problema lógico planteado o del paso de unas especificaciones a lenguaje algebraico. Las formas b) y c) reciben el nombre expresiones canónicas de suma de productos (sum-of-products, SOP, en inglés), la b), y de productos de sumas (product-of-sums, POS, en inglés), la c); su característica principal es la aparición de cada una de las variables (A, B y C) en cada uno de los sumandos o productos. Las d) y e) son funciones simplificadas, esto es, reducidas a su mínima expresión. Las dos últimas expresiones tienen la particularidad de que exclusivamente utiliza funciones NO-Y, la f), o funciones NO-O, la g).


Tabla de verdad

Una tabla de verdad contiene todos los valores posibles de una función lógica dependiendo del valor de sus variables. El número de combinaciones posibles para una función de n variables vendrá dado por 2n. Una función lógica puede representarse algebraicamente de distintas formas como acabamos de ver, pero sólo tiene una tabla de verdad. La siguiente tabla corresponde a la función lógica del punto anterior.

A B C F
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0

La forma más cómodo para ver la equivalencia entre una tabla de verdad y una expresión algebraica es cuando esta última se da en su forma canónica. Así, la función canónica de suma de productos

F = A’BC’ + AB’C’ + AB’C + ABC’

nos indica que será 1 cuando lo sea uno de sus sumandos, lo que significa que tendrá por lo tanto cuatro combinaciones que lo serán (010 para A’BC’, 100 para AB’C’, 101 para AB’C y 110 para ABC’) siendo el resto de combiaciones 0. Con la función canónica de producto de sumas se puede razonar de forma análoga, pero en este caso observando que la función será 0 cuando lo sea uno de sus productos. También es fácil obtener la tabla de verdad a partir de la función simplificada, pero no así a la inversa.

Numérica

La representación numérica es una forma simplificada de representar las expresiones canónicas. Si consideramos el criterio de sustituir una variable sin negar por un 1 y una negada por un 0, podremos representar el término, ya sea una suma o un producto, por un número decimal equivalente al valor binario de la combinación. Por ejemplo, los siguientes términos canónicos se representarán del siguiente modo (observe que se toma el orden de A a D como de mayor a menor peso):

AB’CD = 10112 = 1110
A’ + B + C’ + D’ = 01002 = 410

Para representar una función canónica en suma de productos utilizaremos el símbolo Σn (sigma) y en producto de sumas Πn (pi), donde n indicará el número de variables. Así, la representación numérica correspondiente a la tabla de verdad del punto anterior quedará como:

F = Σ3(2, 4, 5, 6) = Π3(0, 1, 3, 7)

Matemáticamente se demuestra, que para todo término i de una función, se cumple la siguiente ecuación:

F = [Σn(i)]' = Πn(2n-1-i )

A modo de ejemplo se puede utilizar esta igualdad para obtener el producto de sumas a partir de la suma de productos del ejemplo anterior:

F = Σ3(2, 4, 5, 6) = [Σ3(2, 4, 5, 6)]' ' = [Σ3(0, 1, 3, 7)]' = Π3(0, 4, 6, 7)
Gráfica

La representación gráfica es la que se utiliza en circuitos y esquemas electrónicos. En la siguiente figura se representan gráficamente dos funciones algebraicas, una con símbolos no normalizados, superior, y la otra con normalizados, inferior.

Representación gráfica de dos funciones lógicas

Señales Digitales


¿Qué es una señal digital?
Una señal digital es un tipo de señal generada por algún tipo de fenómeno electromagnético en que cada signo que codifica el contenido de la misma puede ser analizado en término de algunas magnitudes que representan valores discretos, en lugar de valores dentro de un cierto rango. Por ejemplo, el interruptor de la luz sólo puede tomar dos valores o estados: abierto o cerrado, o la misma lámpara: encendida o apagada.
Los sistemas digitales, como por ejemplo el ordenador, usan lógica de dos estados representados por dos niveles de tensión eléctrica, uno alto, H y otro bajo, L (de High y Low, respectivamente, en inglés). Por abstracción, dichos estados se sustituyen por ceros y unos, lo que facilita la aplicación de la lógica y la aritmética binaria. Si el nivel alto se representa por 1 y el bajo por 0, se habla de lógica positiva y en caso contrario de lógica negativa.


Presentación del Blog

El siguiente blog muestra los temas vistos durante la clase de Arquitectura de computadoras de la licenciatura en Informática de la Facultad de Contaduría y Administración de la Universidad Nacional Autónoma de México.

Introducción a Arquitectura de Computadoras. Un primer acercamiento

¿Qué significa Arquitectura de computadoras?
Es el diseño conceptual y la estructura operacional fundamental de un sistema de computadoras. Es decir, es un modelo y una descripción funcional de los requerimientos y las implementaciones de diseño para varias partes de una computadora, con especial interés en la forma en que la unidad central de proceso (CPU) trabaja internamente y accede a las direcciones de memoria. También suele definirse como la forma de seleccionar e interconectar componentes de hardware para crear computadoras según los requerimientos de funcionalidad, rendimiento y costo.