Vous êtes sur la page 1sur 51

PROBLEMA: El Buffer.

En un diseo que por circunstancias especiales requiere la utilizacin de circuitos integrados hechos a base de tecnologa TTL, una funcin AND con un factor de carga de salida (fan-out) de 5 debe alimentar: 1) 20 flip-flops J-K con un factor de carga de entrada (fan-in) de 4. 2) 64 funciones OR con un factor de carga de entrada de 2. 3) 12 funciones NAND con un factor de carga de entrada de 3. Cuntos buffers necesita la funcin AND para poder alimentar a las funciones indicadas si los buffers usados poseen un factor de carga de entrada (fan-in) de 1 y un factor de carga de salida (fan-out) de 6? Sugirase la forma de conectarlos. Buscamos primero la cantidad total de factores de carga requeridos para poder alimentar los circuitos indicados:

Si cada buffer tiene un factor de carga de salida (fan-out) de 6, se requerirn n buffers para alimentar los 244 factores de carga de entrada (fan-in) de los circuitos:

Los buffers se pueden conectar en configuraciones de redes tipo "rbol" de varios tipos. Un ejemplo lo sera el AND alimentando dos buffers, y cada uno de estos dos buffers alimentando a su vez otros dos buffers, y as sucesivamente, de dos en dos. Otro ejemplo lo sera el AND alimentando tres buffers, y cada uno de estos buffers alimentando a su vez otros tres buffers, y as sucesivamente, de tres en tres. Puesto que la funcin AND dada tiene un fan-out de 5, podemos aprovechar al mximo su capacidad alimentando 5 buffers con ella, y continuamos aadiendo buffers en cascada hasta obtener los 41 buffers requeridos:

Ntese que los 41 buffers requeridos son los que estn al final de la red sin tomar en cuenta los buffers intermedios. El nmero de buffers intermedios est determinado por la configuracin de la red, y la forma de determinar la red

ptima con el menor nmero posible de buffers intermedios es ya un tema de ndole matemtica que no ser desarrollado aqu porque no viene al caso. PROBLEMA: Un cdigo binario utilizado ampliamente para facilitar la reduccin de errores en comunicaciones digitales tales como la televisin digitalizada terrestre, en ciertos sistemas de televisin por cable, e inclusive en ciertas aplicaciones motorizadas en la industria en donde se recurre a la automatizacin, es el cdigo Gray, originalmente llamado "cdigo binario reflejado" por su creador Frank Gray. Este cdigo, usado inicialmente para prevenir salidas espurias provenientes de relevadores electromecnicos, es un sistema binario en el cual dos valores sucesivos cualesquiera difieren nicamente en un bit. Una forma para generar una secuencia de cdigo Gray es "reflejando" los bits, listndolos en orden inverso y concatenando la lista as obtenida a la lista original, prefijando los bits originales con un "0" y prefijando los bits reflejados con un "1". A continuacin tenemos la aplicacin de este mtodo para generar el cdigo Gray de 2 bits, en el cual los pasos son los siguientes: (1) Escribimos "0,1" en una columna: 0 1 (2) Trazamos un "espejo" reflector debajo de la columna: 0 1 ___ (3) "Reflejamos" los nmeros de arriba con respecto al "espejo reflector": 0 1 ___ 1 0

(4) Distinguimos los nmeros arriba del "espejo" prefijando los bits originales con "ceros": 00 01 ___ 1 0 (5) Distinguimos los nmeros debajo del "espejo" prefijndolos con "unos": 00 01 ___ 11 10 con lo cual tenemos la secuencia de un cdigo Gray de dos bits. Si queremos un cdigo Gray de tres bits, repetimos el procedimiento usando la secuencia del cdigo Gray de dos bits que acabamos de obtener, y: (1) Trazamos un "espejo" reflector debajo de la secuencia de cdigo Gray de dos bits: 00 01 11 10 ___ (2) "Reflejamos" los nmeros de arriba con respecto al "espejo reflector": 00 01

11 10 ___ 10 11 01 00 (3) Distinguimos los nmeros arriba del "espejo" con "ceros" y los nmeros debajo del "espejo" con "unos", obteniendo as la secuencia del cdigo Gray para tres bits: 000 001 011 010 110 111 101 100 Obtener la secuencia correspondiente a un cdigo Gray de 4 bits. Usando el mismo mtodo recursivo mostrado, basndonos en la secuencia del cdigo Gray para tres bits, obtenemos el siguiente cdigo Gray de 4 bits: 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101

1111 1110 1010 1011 1001 1000 Obsrvese que el primer valor y el ltimo valor en una secuencia de cdigo Gray difieren nicamente en un bit. Los cdigos Gray se usan ampliamente como codificadores de posicin, especialmente en los codificadores rotatorios como el que se muestra a continuacin:

Esto esquiva la posibilidad de que cuando varios bits en la representacin binaria de un ngulo cambian se produzca una lectura errnea al cambiar unos bits antes que otros, lo cual no lo permite el cdigo Gray por ser un cdigo incremental cambiando un bit a la vez. Es por esto que el cdigo Gray se utiliza ampliamente en los codificadores rotatorios mecnicos en la industria para poder medir ngulos con precisin (en aplicaciones como servomotores con retroalimentacin de informacin y en mquinas-herramientas CNC), convirtiendo el movimiento angular en pulsos digitales. Supngase que tenemos una mquina en la cual cada uno de los bits de una palabra binaria de cinco bits es empleado para iniciar cierta accin cuando toma el valor de "1", de modo tal

que el bit 0 dar la orden de arrancar un motor, el bit 1 dar la orden de encender un rayo lser, el bit 2 dar la orden de detener todo lo que se est llevando a cabo, y as sucesivamente. Es claro que si un orden de secuencias dado por el siguiente diagrama de tiempos:

fuera suministrado a todo el sistema, en las reas conflictivas resaltadas con color rosa el sistema no sabra que hacer, y cul accin empieza primero y cul le sigue despus es una cuestin que quedara por completo al azar, introduciendo riesgos potenciales en el manejo de maquinaria a causa de estos "disparos mltiples" ocurriendo simultneamente de manera indeterminada. Estas zonas conflictivas quedan eliminadas por completo mediante el uso de una secuencia basada en el cdigo Gray:

En la prctica, es extremadamente fcil generar un cdigo Gray a partir de una lectura de un dato binario. Todo lo que se necesita es la palabra binaria as como la misma palabra binaria desplazada un bit hacia la derecha, para hacer una operacin con OR-EXCLUSIVO entre ambas que producir directamente el cdigo Gray generado a partir de dicha palabra binaria:

PROBLEMA: El Comparador de Voltaje. En la prctica es relativamente difcil obtener y conservar una secuencia limpia de seales digitales como las que se han utilizado en los problemas anteriores. Esto se debe en gran parte a la existencia de parmetros fsicos que siempre distorsionan la seal original. La deterioracin puede llegar a grado tal de que puede resultar extremadamente difcil, si no imposible, distinguir un 0 de un 1. Por ejemplo, en un circuito en donde el 1 es un voltaje de +3 volts y el 0 es un voltaje de cero volts, cmo se puede esperar que un circuito lgico maneje una entrada aunque sea breve de un voltaje de +1.2 volts? Una manera de solucionar este problema es mediante el uso de un elemento conocido como el "Comparador de Voltaje", cuyo diagrama se muestra a continuacin:

El funcionamiento de este elemento es relativamente sencillo. Si el voltaje en la terminal de entrada A es mayor (ms positivo) que el voltaje en la terminal de entrada B, la salida ser 1. Y si el voltaje en la terminal A es menor que el voltaje en la terminal B, la salida ser 0. Si la terminal B es conectada a un voltaje fijo de referencia Vref y se introduce a la vez la siguiente seal ruidosa Vin en la terminal A, cul ser la forma de onda de salida?

Tomando en cuenta las caractersticas del comparador de voltaje, la forma de onda de salida ser como se muestra a continuacin:

Ntese que el comparador de voltaje por su representacin asemeja, y de hecho es, un amplificador operacional comn y corriente (de los cuales uno de los op-amp ms popular que ha habido en el mercado es el 741), representado en los diagramas esquemticos con el siguiente smbolo:

PROBLEMA: En el problema anterior, si el voltaje de referencia hubiese sido algo mayor, el ruido de la seal habra ocasionado disparos mltiples produciendo un nmero mucho mayor de pulsos a la salida del comparador y por ende una seal digital errnea, como lo sugieren las siguientes figuras en las cuales se muestra el ruido sobrepuesto a una seal lgica que nosotros claramente identificamos como un "1" pero que puede dar ocasionar muchas interpretaciones errneas a la salida de un circuito lgico al ir subiendo en su entrada de "0" a "1":

Para eliminar esta posibilidad, existe un elemento conocido como el "gatillo Schmitt" (Schmitt trigger). El "gatillo Schmitt" usa no uno sino dos voltajes de referencia, V1 y V2, siendo V1 mayor que V2. Al exceder la seal Vin a la entrada del "gatillo Schmitt" el nivel de voltaje V1, la salida del mismo cambia de "0" a "1". Despus de haber subido por encima de V1, si la seal desciende por debajo del nivel V1 pero se mantiene arriba del nivel V2, la salida seguir siendo "1". Unicamente cuando cae por debajo del nivel V2 la seal Vin lograr cambiar la salida del "gatillo Schmitt" de "1" a "0". Tomando en cuenta lo anterior, cul ser la forma de la seal de salida para un "gatillo Schmitt" con la siguiente seal de entrada?

Tomando en cuenta las caractersticas "memorizadoras" del gatillo Schmitt, su seal de salida cuando se le presenta esta seal ruidosa a su entrada ser la siguiente:

Comparando este sencillo problema con el anterior, podemos ver por qu el "gatillo Schmitt" es uno de los elementos ms importantes usados para extraer una seal legible de un medio ruidoso. Esta es la razn por la cual se pueden encontrar muchas referencias en Internet bajo las palabras "Schmitt trigger". La diferencia de voltajes de referencia V1-V2 es conocida como histresis. El "gatillo Schmitt se representa generalmente de la siguiente manera:

PROBLEMA: Disear un "gatillo Schmitt" (Sugerencia: Usar dos comparadores de voltaje y un flip-flop R-S). El diseo deseado se muestra a continuacin:

Cuando Vin es mayor que V1, la salida del comparado de voltaje # 1 ser 1 y la salida del comparador de voltaje # 2 ser 0. Esto ocasiona que S=1 y R=0, poniendo al flip-flop en la condicin Q=1 independientemente del estado que tena anteriormente. Al caer Vin hasta adquirir un valor tal que Vin sea menor que V1 pero mayor que V2, la salida de los dos comparadores de voltaje ser cero y el flip-flop R-S retendr su estado anterior. Al caer Vin hasta adquirir un valor tal que sea menor que V2, la salida del comparador de voltaje # 1 ser 0 y la salida del comparador de voltaje # 2 ser 1. Esto ocasiona que S=0 y R=1, poniendo al flip-flop R-S en la condicin Q=0 independientemente del estado que tena anteriormente. Es digno de hacerse notar que, en la prctica, los Gatillos Schmitt se construyen de una manera algo diferente a la arriba mostrada, utilizando las propiedades de la retroalimentacin en los circuitos elctricos para obtener una configuracin ms sencilla (y por lo tanto ms econmica). La accin, sin embargo, es exactamente la misma a la del diseo aqu mostrado. Por ltimo, podemos ver que cuando V1 = V2, el Gatillo Schmitt se convierte en un simple Comparador de Voltaje. El gatillo Schmitt es un elemento tan valioso para extraer seales tiles

inmersas en ruido que se puede adquirir en componentes prefabricados como el circuito integrado 4584, fabricado con tecnologa CMOS:

Este circuito integrado que proporciona seis (hex) gatillos Schmitt al principio puede parecer algo desconcertante. por la ausencia de las dos terminales requeridas en cada gatillo Schmitt para poder fijar la "banda" de voltajes entre V1 y V2 que determinan la "memoria" del efecto de histresis, lo que distingue al gatillo Schmitt de un simple comparador de voltaje. La respuesta es que esta banda ya est fijada y construda de antemano adentro de cada gatillo Schmitt, mediante tres resistencias conectadas en serie que actan como divisoras de voltaje (mostradas de color caf obscuro en el diagrama):

En el caso del 4584, para una seal de entrada que va subiendo el circuito integrado alimentado con una fuente de poder de 5 volts cambiar de "0" a "1" con 2.9 volts, y si la fuente de poder es de 10 volts entonces cambiar de "0" a "1" con 5.9 volts. Estando ya en "1", al ir cayendo la seal de entrada la salida cambiar de "1" a "0" cuando la entrada ha cado a 2.3 volts si la fuente de poder es de 5 volts, y cambiar de "1" a "0" cuando la entrada ha cado a 3.9 volts si la fuente de poder es de 10 volts. As, la histresis o "banda muerta" o "inmunidad contra el ruido" es de 0.6 volts si la fuente de poder es de 5 volts, y es de 2 volts si la fuente de poder es de 10 volts. Esta misma accin de "gatillo Schmitt" la podemos encontrar en circuitos integrados de funciones lgicas, como el 4093 que incluye cuatro bloques NAND de dos entradas cada uno, con accin de "gatilo Schmitt" en cada una de dichas entradas, cuya relacin de terminales "pins" es la siguiente:

La accin de "gatillaje" que ocurre en cada una de las ocho terminales de entrada de este circuito integrado es la misma que la que ocurre en el 4584 que se acaba de describir. Esto equivale a tener ocho gatillos Schmitt construdos dentro del 4093, cada uno de ellos conectados a cada entrada de los cuatro NAND, lo cual le da a los cuatro NAND una excelente inmunidad contra el ruido. No es de asombrar que, por dentro, este circuito integrado sea una cosa

algo sofisticada. En la literatura tcnica, la diferencia entre el voltaje de barrera (treshold) ms positivo (VT+) que aqu hemos designado V1 y el voltaje de barrera ms negativo (VT-) que aqu hemos designado V2 es lo que se define como el voltaje de histresis (VH). El smbolo utilizado frecuentemente adentro de un gatillo Schmitt para distinguirlo de un comparador tiene que ver precisamente con el efecto de histresis:

El efecto final y prctico de todo esto es poder llevar a cabo en forma automtica y rpida la extraccin de una seal til que puede estar inmersa en ruido elctrico que puede ser problemtico cuando se estn transmitiendo millones de bits de informacin por la lnea telefnica o desde un satlite hasta la superficie terrestre:

PROBLEMA: Demustrese con un ejemplo un caso en el que las compuertas lgicas de tres estados tri-state puedan ser de utilidad. El ejemplo ms claro es del del bus de lneas de datos compartido (conocido simplemente como bus compartido) en el cual se desea que dos (o ms) componentes puedan depositar cada uno de ellos, en tiempos diferentes, su informacin digital. Esto lo ilustra el siguiente diagrama:

En este caso, las lneas A1 y B1 estn conectadas ambas, a travs de las dos compuertas tri-state, a la misma lnea X1. Lo mismo se puede decir para las lneas de conduccin restantes. Tmese en cuenta que son lneas de conduccin

de seales elctricas. Si las seales de entrada estuvieran conectadas directamente, sin compuertas tri-state de por medio, al bus de lneas X1X2X3, qu ocurrira si la lnea A1 depositara un "1" en X1 y si al mismo tiempo tambin la lnea B1 depositara un "0" en la misma lnea X1? Esencialmente tendramos un corto-circuito elctrico, un polo de la batera (+) conectado al otro polo de la batera (-) sin resistencia elctrica alguna de por medio. Esta situacin puede destrur el sistema de inmediato. El uso de las compuertas lgicas tri-state impide que esto pueda ocurrir, ya que en cualquier momento slo una de las compuertas puede estar activada a travs de la lnea de activacin S1 o la lnea de activacin S2, con lo cual todas las dems lneas quedarn desconectadas elctricamente del sistema impidiendo el cortocircuito. El estado en el que ocurre la "desconexin" elctrica es conocido entre los especialistas como un estado de alta impedancia. Los otros dos-estados corresponden a la situacin en la que la entrada de una compuerta tri-state es conectada a la salida con un "0" a la entrada pasando como un "0" a la salida y un "1" a la entrada pasando como un "1" a la salida. PROBLEMA (Difcil): El mtodo de integracin de doble pendiente es utilizado con mucha frecuencia como una especie de conversor analgico/digital A/D para la construccin de voltmetros electrnicos de precisin, en donde el objetivo final es obtener una lectura digital (en una cartula numrica) de un voltaje DC desconocido Vx que suponemos se mantiene constante mientras se lleva a cabo la lectura. Consiste en introducir una corriente elctrica Ix (la cual es proporcional al voltaje que se est midiendo) durante un tiempo fijo predeterminado Tref (que es igual al tiempo en el cual un contador electrnico digital cuenta desde cero hasta su sobreflujo) a un amplificador operacional OP-AMP (vase el Suplemento # 6: El Amplificador Operacional) que est trabajando como integrador lineal, y despus en introducir internamente otra corriente elctrica Iref constante pero de sentido (polaridad) opuesto al de la corriente Ix, hasta que el voltaje a la salida del amplificador operacional regresa a cero en un tiempo Tx despus de haber alcanzado un valor "pico" Vp en la condicin anterior. Demostrar que:

El mecanismo de este principio de medicin requiere de una explicacin ms a fondo. Antes de que se utilizara el mtodo de integracin de doble pendiente para llevar a cabo mediciones elctricas, se utilizaba el mtodo de integracin de una sola pendiente, en el cual un voltaje desconocido aplicado a la entrada del medidor es integrado (este es el proceso de integracin matemtica que se estudia en cualquier curso de clculo diferencial e integral) y comparado continuamente contra un voltaje de referencia conocido Vref. El proceso de integracin es lineal, o sea que un voltaje (que suponemos constante) al ser aplicado a un integrador (en este caso, un amplificador operacional) va produciendo una "rampa" lineal que empieza desde un voltaje cero y va ascendiendo continuamente en lnea recta, a la vez que un contador digital que empieza con una lectura numrica de ceros va contando el tiempo que va transcurriendo mientras se lleva a cabo el proceso de integracin. La "pendiente" de la rampa depende de la magnitud del voltaje DC que est siendo medido, entre ms alto sea el voltaje de entrada ms inclinada ser la pendiente de la rampa. Esta operacin dual contina hasta que el voltaje que va siendo integrado iguala al voltaje de referencia Vref con el cual est siendo comparado, momento en el cual la lectura del contador digital que en realidad es una medicin del tiempo transcurrido es detenida. El tiempo que transcurre hasta que el circuito analgico integrador detiene el proceso al igualar el voltaje variable (integrado) Vint al voltaje de referencia Vref depender de la magnitud del voltaje desconocido, entre mayor sea la magnitud del voltaje de entrada tanto ms inclinada ser la rampa y menor ser el tiempo de medicin transcurrido. Esta proporcionalidad inversa nos permite "calibrar" el modo de conteo del reloj digital y los componentes que fijan la rapidez del reloj contador (en el circuito en la figura a el amplificador operacional que tiene puestos la resistencia de entrada R y el capacitor C que es el que realmente est actuando como un integrador analgico, mientras que el segundo amplificador operacional est siendo usado como un simple comparador de voltajes):

Este mtodo requiere que el voltaje de referencia Vref sea estable y preciso para poder garantizar la precisin de la medicin. La gran desventaja del mtodo de integracin de una sola pendiente es que la integracin depende tambin de las tolerancias de los valores de la resistencia R y la capacitancia C del integrador, y en un medio tpico de manufactura cualquier cambio pequeo en los valores de estos componentes altera el resultado de la conversin y hacen que la repetibilidad de la medicin sea difcil de duplicar. Precisamente para superar esta dificultad, se ide el mtodo de integracin de doble pendiente.

El circuito bsico es el que se muestra en el siguiente diagrama esquemtico (puesto que, de acuerdo con la "ley de Ohm", el voltaje de entrada Vx produce una corriente elctrica Ix en la resistencia R segn la relacin Vx=IxR, en el

esquemtico se ha reemplazado a ambos Vx y a la resistencia R por la corriente elctrica Ix producida):

En el mtodo de integracin de doble pendiente hay dos pasos separados. En el primer paso, el voltaje (constante, digamos unos 34.5 milivolts) que est siendo medido se inyecta para provocar una corriente Ix que a su vez produzca un voltaje ascendente v en forma de "rampa" a la salida del amplificador operacional (esta es la primera pendiente), pero en este paso (ni en el segundo) se utiliza un segundo amplificador operacional como comparador de voltaje como en el caso del mtodo de integracin de una sola pendiente para detener la rampa ascendente al alcanzar el voltaje integrado un nivel Vref; simplemente se deja que el circuito integrador contine integrando y que el contador digital siga "contando" el tiempo hasta que el contador digital llegue a su sobreflujo (al superar la lectura "9999") despus de un tiempo de ascenso Tref. En ese momento, el contador digital manda una seal para iniciar la inyeccin al amplificador operacional de una corriente elctrica invariable Iref prefijada por la electrnica interna, de polaridad opuesta a la corriente Ix, con lo cual la rampa empezar a ser integrada hacia abajo por el cambio de signo, cayendo en forma lineal (esta es la segunda pendiente). Los eventos sealados ocurren de la siguiente manera:

La expresin general para el voltaje a la salida del amplificador operacional est dada por la relacin:

(La capacitancia de un condensador elctrico expresada en farads est definida por la frmula C=Q/V en donde Q es la carga elctrica almacenada por el condensador, expresada en coulombs, y V es el voltaje cuya aplicacin produjo tal acumulamiento de carga; y si tanto el voltaje que est siendo aplicado como lo carga elctrica que se va acumulando son variables, entonces usando infinitsimos la frmula se puede expresar como C=dq/dv. Por otro lado, la corriente elctrica I a travs de un conductor, expresada en amperes, est definida como el flujo de carga elctrica Q por unidad de tiempo T, o sea I=Q/T, y si dicha corriente es variable entonces se puede expresar usando infinitsimos como i=dq/dt. Con estas dos relaciones se obtiene la frmula arriba mostrada, sobre la cual se puede llevar a cabo un simple procedimiento matemtico de integracin.) En el transcurso del tiempo Tref:

En el transcurso del tiempo Tx:

Igualando el vp de ambas expresiones:

obteniendo as finalmente:

Ntese que siendo Tref un tiempo constante prefijado dentro del circuito analgico-digital por los procesos de manufactura, y siendo Iref una corriente constante tambin prefijada en el circuito por los procesos de manufactura, el cociente de ambos ser una cantidad constante k, esto es: Tx = (Tref/Iref)Ix = kIx Observamos que el tiempo variable Tx depende exclusivamente de la magnitud de la corriente Ix, la cual a su vez es directamente proporcional al voltaje que se est midiendo. Transcurrido el tiempo Tref al final del cual el contador electrnico digital alcanza su sobreflujo, ste regresa a cero y vuelve a empezar a contar. Puesto que Tx depende de la magnitud del voltaje medido, al detener el conteo el contador electrnico al final de Tx la lectura numrica en el mismo ser proporcional al voltaje medido. Prescindiendo de frmulas y derivaciones algebraicas, podemos explicar de modo ms elemental el funcionamiento del mtodo de integracin de doble pendiente con el siguiente esquema:

En estos grficos podemos ver cmo tres distintos voltajes de entrada producen rampas con diferentes inclinaciones. El voltaje ms bajo de los tres es el que produce la rampa de color verde, mientras que voltaje ms alto de los tres es el que produce la rampa de color rojo, con el voltaje intermedio entre ambos

produciendo la rampa de color magenta. Al producirse un sobreflujo en la lectura del contador, e iniciarse tras esto un nuevo conteo con la inyeccin simultnea de una referencia interna en el circuito que ocasiona que la rampa caiga siempre con la misma inclinacin, podemos ver que despus del sobreflujo el voltaje de entrada que producir un conteo mayor de "pulsos de reloj" en la cartula numrica ser precisamente el de mayor magnitud, en este caso el que produjo las rampas de color rojo, mientras que el voltaje de entrada que producir un conteo menor de "pulsos de reloj" ser el que produjo las rampas de color verde. Un voltaje cercano a los cero volts producir igualmente un conteo cercano a cero. La nica tarea pendiente aqu es "calibrar" los componentes para que la lectura del conteo de tiempo numrico corresponda con el voltaje que est siendo medido; por ejemplo hacer que un conteo de 3485 "pulsos" corresponda con una lectura de 3.485 volts. Al final, el factor capacitancia C se cancela porque en ambas expresiones, tanto en la de ascenso (integracin positiva) como en la de descenso (integracin negativa), se est utilizando el mismo circuito para llevar a cabo ambas operaciones, y al ser igualadas las dos expresiones matemticamente se ve que la cancelacin algebraica de la capacitancia C es una resultante precisamente del haber utilizado el mismo circuito para llevar a cabo las dos integraciones. En realidad, esto puede considerarse como otro "truco" ms en el arsenal del diseista de circuitos electrnicos. Al no aparecer ni el valor de la resistencia R ni el valor de la capacitancia C en la expresin final, no importa que en un medio tpico de manufactura haya variaciones en los valores de estos componentes de unidad a unidad. La corriente fija de referencia Iref, ya sea una referencia alta (REF HI) como una referencia baja (REF LO) se pueden implementar con circuitos integrados como el MAXIM ICL7106 o el MAXIM ICL7107:

Para obtener una lectura numrica con una resolucin de 10 bits binarios, por ejemplo, integraramos por 1024 (210) ciclos de reloj (primera pendiente), y tras esto integraramos por hasta 1024 ciclos de reloj (dando una mxima conversin de 2 210 ciclos). Para una mayor resolucin, aumentamos el nmero de bits y el nmero de ciclos, pero como una mayor resolucin requiere un mayor nmero de ciclos en la prctica hay que buscar un compromiso entre ambos opuestos, una mayor precisin por un lado y una demanda de mayores tiempos de conteo por el otro. Para una resolucin dada, es posible acelerar el tiempo de conversin con cambios moderados en los circuitos, aunque eventualmente todas las mejoras transfieren parte de la precisin adicional lograda a un mayor costo requerido para el acoplamiento de los componentes externos. Inclusive en los circuitos elementales mostrados arriba hay varias fuentes potenciales de error que deben ser tomadas en cuenta (saturacin del integrador, ganancia finita, velocidad del comparador, capacitancias parasticas, inyeccin de cargas elctricas, absorcin dielctrica, etc.) Para un conversor de doble pendiente de 20 bits (aproximadamente una parte por milln de resolucin) y un reloj de 1 Megahertz de velocidad, el tiempo de conversin (tiempo de una lectura a la siguiente en caso de que el voltaje bajo medicin est variando) sera aproximadaamente de 2 segundos. El cociente visto por el comparador es de unos (2 volts)/106 dividido entre 1 microsegundo, lo cual se traduce en una pendiente de ascenso de 2 microvolts por microsegundo. Con una pendiente tan poco pronunciada, el comparador le permitira al integrador ir mucho ms all del punto de "disparo". Este "sobre-disparo" (overshoot) medido a la salida del integrador es conocido entre los ingenieros como el "residuo". A continuacin se muestra un instrumento porttil de bolsillo, el voltmetro

digital Mastech MAS830B, basado en el principio de la integracin de doble pendiente:

y el medidor de capacitancias elctricas CAP1500, basado en el mismo principio:

PPROBLEMA: Qu elemento lgico fundamental se puede utilizar como detector de la diferencia de fase entre dos seales digitales simtricas iguales

entre s pero desfasadas en sus diagramas de tiempos? Encontrar la constante de fase de ganancia Kp del elemento detector de fase, definida como el cambio en el voltaje promedio a su salida en funcin del ngulo de desfase entre las dos seales medido en radianes. El OR-EXCLUSIVO es el elemento ms adecuado, ya que produce una salida si las dos seales a su entrada son diferentes:

La salida del OR-EXCLUSIVO para dos seales iguales que no estn perfectamente alineadas y sincronizadas una con respecto a la otra sino que estn "fuera de tiempos", fuera de fase, se muestra a continuacin:

En estos diagramas de tiempos, la seal B est retrasada con respecto a la seal A, y si ambas estn alimentando las entradas de un OR-EXCLUSIVO, entonces a la salida del mismo aparecern los "unos" mostrados como "picos" (con la duracin de los mismos resaltada en color amarillo). Si ambas seales A y B estuvieran en sincrona perfecta la una con respecto a la otra, alineadas punto por punto, entonces la salida del OR-EXCLUSIVO no mostrara ningn "pico",

sera un "cero" todo el tiempo. Supondremos ahora que la salida del OR-EXCLUSIVO es de cero volts para un "0" lgico y de un voltaje mximo V0 (digamos, unos +5 volts) para un "1" lgico. Daremos ahora un "brinco" del mundo digital al mundo analgico. Cuando dos seales A y B llegan desfasadas al OR-EXCLUSIVO, entonces la salida del OR-EXCLUSIVO no ser de cero volts ni ser de V0 volts todo el tiempo, estar variando rpidamente entre cero y V0. Por lo tanto, si conectamos un medidor de voltaje a la salida del OR-EXCLUSIVO, su lectura del voltaje a la salida del OR-EXCLUSIVO estar variando rpidamente puesto que no permanecer fija ni en cero ni en V0. La ausencia de una lectura estable se puede solventar con el uso de un medidor de voltaje que pueda darnos el voltaje promedio de una seal que est variando de esta manera. As, dependiendo del grado de desfase entre las dos seales, el medidor de voltaje dar una lectura de voltaje promedio diferente que estar situada entre los cero y los V0 volts. Es rutinario medir la cantidad de desfase entre dos seales peridicas en trminos angulares. Si las dos seales peridicas estn "en fase", el ngulo de fase entre las mismas es de cero grados. Conforme se van desfasando, el ngulo de fase va aumentando, hasta el punto en el cual las seales estn completamente desfasadas (para un tren "cuadrado" de pulsos, esto implica que cuando la seal A tiene un valor de "1" la seal B tiene un valor de "0" y viceversa), punto en el cual decimos que hay un desfase de 180 grados (o bien de radianes) entre ellas. Habiendo llegado al punto de desfase total, si la seal B se sigue retrasando con respecto a la seal A entonces se ir emparejando con los siguientes valores de la seal A hasta que, cuando el ngulo de fase recorrido es de 360 grados (o bien de 2 radianes) las seales estarn nuevamente en sincrona la una con respecto a la otra. Y esto es precisamente lo que nos puede detectar el OR-EXCLUSIVO con el voltaje promedio que nos d de su propia salida. Es obvio que el voltaje promedio a la salida del OR-EXCLUSIVO ser mayor cuanto mayor sea la diferencia de fase entre las dos seales de entrada. Dos puntos de inters son los siguientes:

(A) Cuando las dos seales a la entrada estn en fase, el voltaje promedio a la salida del OR-EXCLUSIVO es de v=0 volts. (B) Cuando las dos seales a la entrada estn fuera de fase 180 grados ( radianes), el voltaje promedio a la salida del OR-EXCLUSIVO es de v=V0. Entre estos dos puntos, habr una variacin lineal del voltaje promedio que depender directamente del ngulo de desfase. El diagrama del voltaje promedio v a la salida del OR-EXCLUSIVO en funcin de la diferencia del ngulo de fase entre las seales de entrada se muestra a continuacin:

La constante de ganancia Kp del OR-EXCLUSIVO la podemos obtener considerando la regin entre los cero grados y los 180 grados (entre cero radianes y radianes) Kp = (V0 - 0)/( - 0) Kp = V0/, para un OR-EXCLUSIVO. PROBLEMA: Una forma de comprobar la eficiencia de un sistema de comunicacin digital es introducir una secuencia de prueba en su transmisor y comparar la secuencia enviada con la secuencia obtenida en el receptor. El porcentaje de bits de error (BER o bits error rate) es igual a la cantidad de bits diferentes entre la secuencia de prueba original y la secuencia recibida, dividida entre el nmero total de bits empleados para la prueba. Determinar el factor BER para un sistema que arroja con la siguiente secuencia de prueba:

arroja los siguientes resultados:

Inspeccionando las posibles diferencias entre la secuencia recibida y la

secuencia enviada, encontramos que hay nueve bits diferentes, los cuales estn resaltados a continuacin:

Se tiene entonces que: Total de bits empleados = 9x4 = 126 Bits diferentes = 9 BER = (9/126)x100 = 7.14 % En la prctica, para poder encontrar el mayor nmero posible de errores, la secuencia de prueba en lugar de ser una secuencia fija de "unos" y "ceros" es una secuencia binaria al azar. Existe equipo especializado que se encarga de generar este tipo de secuencias y que se encarga de encontrar las diferencias entre los datos enviados y los datos recibidos, calculando de manera automtica el factor BER. Este es precisamente el tipo de equipo que utilizan en el campo los ingenieros de mantenimiento y de diseo de redes. A continuacin tenemos el medidor del factor BER CSA907R fabricado por la empresa Tektronix:

y un medidor del factor BER fabricado por la emprea Agilent:

as como el siguiente probador manual porttil:

Asociado con la medicin del factor BER estn las grficas conocidas como "BER en funcin de Eb/No", de las cuales se muestra la siguiente como ejemplo:

La definicin clsica de Eb/No que casi siempre parece algo crptica para quienes la ven por vez primera es "el cociente de la Energa por Bit (Eb) entre la Densidad de Ruido Espectral (No, de la palabra inglesa Noise que significa "ruido"), lo cual en trminos llanos ms comprensibles es simplemente la medida de una seal tericamente libre de todo ruido entre el ruido con el cual est asociada dicha seal, lo cual es medido en el lado receptor y es utilizado como la referencia bsica de qu tan fuerte es la seal. Distintas formas de modulacin de la seal (BPSK, QPSK, MSK, PSK de 8 bits, PSK de 16 bits, etc.) producen distintas curvas tericas para estas grficas del factor BER, y le proporcionan al ingeniero de telecomunicaciones informacin acerca del mejor desempeo que es posible lograr para cierta cantidad de energa de radiofrecuencia con la cual est siendo transmitida al aire una seal digital. Para quienes deseen mayor informacin sobre este tema, inclusive sobre cmo es posible utilizar el estndard USB empleado en las computadoras para una comunicacin inalmbrica USB, se recomienda consultar la siguiente nota de aplicacin de Intersil (este es un documento PDF): http://sss-mag.com/pdf/an9804.pdf Aunque se hace todo lo posible por reducir al mximo el factor BER en la transmisin de datos, no es posible reducir el factor BER hasta cero por causas que estn fuera del control de los diseistas de redes, lo cual incluye causas

predichas tericamente como lo indican las grficas sealadas arriba. Es aqu en donde resulta valiossima la capacidad de los sistemas digitales para poder detectar errores con la adicin de bits de paridad que permitan solicitar de nuevo el envo de la informacin que lleg defectuosa, e inclusive con la capacidad de corregir errores para no perder tiempo en la solicitud de retransmisin de informacin. PROBLEMA: Se desea construr un comparador digital de un bit. El comparador debe tener dos entradas A y B y dos salidas M y K. La salida M (que pudiramos llamar salida A=B) deber ser "1" cuando ambos A y B son iguales y "0" cuando son desiguales. La salida K deber ser "1" cuando cuando A es mayor que B y "0" cuando A es menor que B. Disear una configuracin con estas caractersticas. La Tabla de Verdad basada en las propiedades requeridas debe ser como se muestra a continuacin:

En funcin de minterms, las salidas estarn dadas por las siguientes expresiones Boleanas:

M = (Salida "A igual a B") = A B + AB K = (Salida "A mayor que B") = AB La salida M la podemos reconocer de inmediato como la de un NOREXCLUSIVO. El comparador de un bit tendr entonces el siguiente aspecto:

PROBLEMA: Demostrar que es posible construr un comparador digital de dos palabras (siendo AA=A2A1) y B (siendo B=B2B1) de dos bits cada una usando el comparador digital de un bit del problema anterior como bloque fundamental. Las propiedades del comparador digital de dos palabras A y B de dos bits cada una deben ser como se muestra en la siguiente Tabla de Verdad:

Ahora bien, si usamos dos comparadores digitales de un bit como base, usando los resultados del problema anterior vemos que las salidas del comparador digital de dos bits sern: M1 = [Salida 'A1 igual a B1' del primer comparador] = A1B1 + A1B1 M2 = [Salida 'A2 igual a B2' del segundo comparador] = A2B2 + A2B2 K1 = [Salida 'A1 mayor que B1' del primer comparador] = A1B1 K2 = [Salida 'A2 mayor que B2' del segundo comparador] = A2B2 El siguiente paso es encontrar las salidas M y K del comparador de palabras de dos bits a partir de su Tabla de Verdad puesta arriba: M = Salida 'A igual a B' M = A2B2A1B1 + A2B2A1B1 + A2B2A1B1 + A2B2A1B1 M = A2B2(A1B1 + A1B1) + A2B2(A1B1 + A1B1)

M = (A1B1 + A1B1)(A2B2 + A2B2) M = M1M2 K = Salida 'A mayor que B' K = A2B2A1B1 + A2B2A1B1 + A2B2A1B1 + A2B2A1B1 + A2B2A1B1 + A2B2A1B1 K = A2B2K1 + K2A1B1 + K2A1B1 + K2A1B1 + K1A2B2 K = K1(A2B2 + A2B2) + K2A1 + K2A1 K = K1 M2 + K2 Puesto que las salidas del comparador de palabras de dos bits se pueden poner en funcin de las salidas de dos comparadores individuales de un bit cada uno, queda demostrado que es posible construr un comparador de palabras usando como bloque fundamental el comparador de un bit que ahora podemos empezar a tratar como otra "caja negra" en nuestro repertorio. El circuito del presente problema toma la siguiente configuracin:

Este problema demuestra que el comparador bsico de un bit se puede conectar en "cascada" para comparar palabras binarias de varios bits. La metodologa empleada en este problema la podemos extender para construr un comparador de tres bits. Naturalmente, el diseo ser ms elaborado. Y del mismo modo, podemos construr un comparador de cuatro bits, y el diseo ser todava mucho ms elaborado. O podemos optar por ahorrarnos una buena cantidad de tiempo y esfuerzo procurando en el mercado un circuito integrado como el 4585 fabricado con tecnologa CMOS:

o como el 7485 (fabricado con tecnologa TTL), los cuales son comparadores de 4 bits, y los cuales incorporan precisamente todo lo que hemos visto. En el caso

especfico del 4585, al igual que otros comparadores de bits, se pueden conectar varios en "cascada" para aumentar el tamao de las palabras binarias que pueden ser comparadas; todo lo que hay que hacer es conectar las tres salidas del primer comparador (terminales 3, 12 y 13 en este caso) a las entradas del segundo comparador (terminales 6, 5 y 4 respectivamente), de la manera como se muestra en el siguiente comparador de palabras de 4 bits construdo a base de cuatro comparadores de un bit conectados en "cascada" (ampliar imagen):

Como puede apreciarse en este esquema, el primer comparador se convierte en los bits menos significativos (LSB) de la cadena de comparadores. Es posible conseguir inclusive circuitos integrados capaces de comparar palabras binarias de ocho bits y de conectar estos circuitos en cascada. Sin embargo, la cuestin de la aplicacin es importante, ya que si vamos a estar comparando palabras binarias grandes, es posible que sea ms ventajoso y ms econmico recurrir a un microprocesador (vanse los suplementos anexos a este libro) que se encargue de hacer las comparaciones mediante procesos aritmticos especificados en un pequeo programa almacenado en una memoria ROM; esta es precisamente una de las especialidades del microprocesador. PROBLEMA: Construr una tabla de secuencias en el orden Q4Q3Q2Q1 para el circuito mostrado, dando el equivalente decimal de cada estado.

Suponiendo que la configuracin est inicialmente en el estado Q4Q3Q2Q1=0000, la tabla de secuencias requerida tomar el siguiente aspecto:

Podemos notar que la secuencia de los nmeros 0, 8, 12, 14, 7, 11, 13, 6, 3, 9, 4, 10, 5, 2, y 1 constituye una secuencia de nmeros al azar, y al decir "al azar" nos estamos refiriendo a que conforme el contador pasa de un estado a otro no es posible (sin ver el contador) predecir cul ser el siguiente nmero decimal generado con slo ver los nmeros previos que se han ido generando (por esto mismo, esta secuencia no servira para aquellas preguntas que se formulan en los exmenes usados para determinar el cociente intelectural IQ de una persona, en donde se le pide que determine cul es el nmero o los nmeros que siguen a

cierta secuencia de nmeros que parece mostrar cierto orden). Puesto que esta secuencia de nmeros al azar se vuelve a repetir idnticamente cada vez que el contador atraviesa el estado Q4Q3Q2Q1=0000, la secuencia se conoce como una secuencia pseudo-azar. Asimismo, este tipo de contador es conocido comnmente como un generador de secuencia binaria pseudo-azar. Existen diseos de este tipo de contador para generar secuencias binarias pseudo-azar de ms de cuatro bits, la mayora de los cuales son relativamente fciles de implementar. En rigor de verdad, toda secuencia debe ser sometida a un anlisis estadstico riguroso antes de ser aceptada como una verdadera secuencia de nmeros al azar. Sin embargo, sin llevar a cabo tal anlisis, se encuentra que las secuencias generadas por este tipo de contadores son bastante tiles en la prctica. Resta decir que entre mayor sea el nmero de cifras en cada nmero al azar y entre mayor sea la cantidad de nmeros al azar en la lista generada, ms til ser la lista de nmeros al azar para representar problemas matemticos. Una vez teniendo una lista de nmeros al azar disponible, es relativamente fcil producir una lista de nmeros al azar de diferente magnitud multiplicando o dividiendo la lista original por el factor adecuado. Por ejemplo, supongamos que deseamos una lista de nmeros al azar del 0 al 2. Si dividimos cada nmero al azar obtenido en el presente problema entre 8, podemos obtener fcilmente la lista deseada: 0/8 = .00, 8/8 = 1.00, 12/8 = 1.50, 14/8 = 1.75, 7/8 = .87, 11/9 = 1.37, 13/8 = 1.62, 6/8 = .75, 3/8 = .37, 9/8 = 1.12, 4/8 = .50, 10/8 = 1.25, 5/8 = .62, 2/8 = .25, 1/8 = .12. Esta tcnica es conocida como escalamiento, porque la magnitud de los

nmeros originales es reducida o aumentada a "escala". Si lo que queremos tener no es un circuito generador de una secuencia binaria pseudo-azar, la cual eventualmente se repetir una y otra vez en forma idntica despus de cierto nmero n de estados, sino un verdadero generador aleatorio de nmeros binarios cuyas secuencias siempre sern totalmente impredecibles (lo cual dicho sea de paso es un requisito fundamental para poder utilizar dichas secuencias en tcnicas estadsticas refinadas tales como el diseo de experimentos, una rama aplicada de la estadstica basada en el anlisis de la varianza ANOVA de dos vas, o la simulacin Monte-Carlo, otra tcnica estadstica til para resolver problemas matemticos para los cuales la solucin analtica exacta puede ser muy difcil si no imposible de obtener), existen otras alternativas tales como el siguiente circuito:

El bloque fundamental para este generador aleatorio de cuatro bits est basado en el mismo circuito biestable que estudiamos en uno de los problemas resueltos del Captulo 5: El Flip-Flop R-S. En este circuito biestable, al encenderse la mquina o al aplicarle energa elctrica al sistema hay tantas probabilidades de que el elemento biestable se "encienda" en el estado Q=1 como en el estado Q=0, sin forma alguna de poder predecir en cul de los dos estados caer. Como puede verse, en el circuito mostrado hay cuatro elementos biestables independientes el uno del otro, excepto por el hecho de que los cuatro

estn conectados a la misma fuente de poder a travs del circuito interruptor S. Cada vez que se cierra el interruptor S suministrando energa al sistema, Q1 entrar en un estado que puede ser "1" "0", ocurriendo lo mismo con Q2, Q3 y Q4. El interruptor S puede ser un relevador electromecnico o un interruptor electrnico. La simpleza de este diseo permite ir agregando ms elementos biestables para construr fcilmente un circuito lgico generador de una secuencia totalmente aleatoria de nmeros. Lo que acabamos de ver es una forma de generar nmeros al azar usando hardware. Podemos generar tambin nmeros al azar usando software, por medio de algn programa computacional, el cual al ser ejecutado va proporcionando la lista de nmeros. Pero considerando que el programa computacional es ejecutado por algo que est construdo en su esencia con circuitos lgicos, a fin de cuentas los circuitos lgicos son los que se vienen encargando de todo. PROBLEMA: Cules son los dos mtodos para llevar a cabo una multiplicacin binaria? Cul de los dos mtodos es el mejor? Usar los nmeros 1101 (13) y 101 (5) como ejemplo. Puesto que una multiplicacin de un nmero m por un nmero n en cualquier sistema numrico, ya sea decimal, binario o cualquier otro equivale a sumar n veces el nmero m (o lo que es lo mismo, a sumar m veces el nmero n), este sera el primer mtodo disponible para llevar a cabo una multiplicacin:

Para que una mquina pueda realizar las operaciones requeridas bajo este

mtodo, se necesitan dos registros de memoria, uno que almacene el nmero que estar siendo sumado, y otro que contenga el resultado parcial de las sumas cumulativas conforme el nmero va siendo sumado varias veces en un Sumador Completo. Se requiere tambin de un contador binario (ascendente o descendente) que lleve la cuenta de cuntas veces hemos sumado el "multiplicando" para saber cundo el nmero de adiciones iguala al nmero "multiplicador" deteniendo as la sumacin repetitiva. Para cantidades pequeas, en una mquina electrnica este proceso se puede llevar a cabo de una manera sumamente rpida; pero si vamos a efectuar una multiplicacin de dos nmeros como 1,058,342 y 345,856, las 345,856 sumas parciales tomaran un tiempo apreciable. El segundo mtodo es esencialmente el mismo procedimiento que el que usan los nios para multiplicar en la escuela primaria:

La gran ventaja de este mtodo es que en vez de requerir de n sumas nicamente se requiere de tantas sumas como "unos" haya en el multiplicador. Si el multiplicador es un nmero como 10000001, entonces en vez de requerir 129 sumas slo se requiere una sola, despus de haber efectuado un corrimiento hacia la izquierda de uno de los sumandos parciales. Y en la multiplicacin binaria llevada a cabo de esta manera, todos los sumandos parciales son iguales al multiplicando, de modo tal que las nicas operaciones involucradas son las operaciones de sumas y desplazamientos, lo cual requerir del uso de un registro de transferencia construdo muy posiblemente a base de flip-flops tipo D. PROBLEMA: Suponiendo que vamos a dividir un nmero mayor entre un

nmero ms pequeo, cules son los dos mtodos para llevar a cabo una divisin binaria? Cul de los dos mtodos es el mejor? Esto es muy parecido al asunto de los dos mtodos disponibles para llevar a cabo una multiplicacin binaria. En el primer mtodo para llevar a cabo una divisin, vamos restando el divisor del dividendo una y otra vez hasta que el nmero disminudo resulte ser menor que el divisor, en cuyo caso tendremos ya el cociente y el residuo. Pero al igual que como ocurre con la multiplicacin, existe un segundo mtodo que es esencialmente el mismo procedimiento que el que usan los nios para dividir en la escuela primaria, y es el que debe ocupar nuestra atencin en el diseo de cualquier mquina que pueda efectuar la operacin aritmtica de divisin.

PROBLEMA: Dividir 01001110 entre 0110 utilizando lenguaje binario nicamente. En base al mecanismo utilizado, cmo se podra llevar a cabo la operacin aritmtica de divisin mediante una mquina? Imitaremos la rutina familiar de divisin decimal y escribiremos el procedimiento tal y como se acostumbra en el sistema decimal. Incluiremos cuatro ceros precedentes al frente del nmero que se ir poniendo en el cociente:

La divisin resulta ser una que produce un cociente exacto sin residuo. El resultado de la divisin, 1101 (13 decimal) es el mismo que el que esperaramos obtener si hubieramos llevado a cabo la divisin entre los nmeros decimales 78 y 6, que son los que corresponden a los nmeros binarios proporcionados. Este problema sugiere que el proceso de divisin se puede lograr mediantes substracciones sucesivas. Y tambin, al igual que en el caso de la multiplicacin, se tiene la presencia de varias operaciones de "desplazamiento". Esto implica que un circuito para llevar a cabo la operacin de divisin requerir de un substractor con ayuda de algn secuenciador de control. Lo podemos hacer realidad diseando algn circuito especial para ello. O podemos recurrir a un componente ms sofisticado en el cual se pueda programar este tipo de operaciones, un componente como el microprocesador. PROBLEMA: Disear un circuito que sea capaz de llevar a cabo la multiplicacin de dos nmeros binarios, a nivel del lenguaje de mquina. Existen varias maneras de llevar a cabo un diseo de esta naturaleza. En el siguiente diagrama se presenta una de ellas:

Aunque a primera vista este parezca un circuito complejo, en realidad no lo es, ya que todo lo que hace es implementar la operacin de multiplicacin binaria por simples operaciones de desplazamiento y adicin parcial como las que se requieren para poder llevar a cabo la multiplicacin "a mano". La accin del circuito empieza introduciendo los nmeros binarios a ser

multiplicados, A4A3A2A1 (el multiplicando) y B4B3B2B1 (el multiplicador), en los registros A y B, respectivamente, los cuales son registros de transferencia de entrada paralela hechos a base de flip-flops J-K de flip-flops D. Los nmeros binarios son tomados por dichos registros de un "canal" de datos, del cual se toma primero el nmero A4A3A2A1 para ser depositado en el registro A y posteriormente el nmero B4B3B2B1 para ser depositado en el registro B. Cuando la operacin de multiplicacin haya sido concluda, el resultado de la misma estar depositado en el doble registro formado por los bloques P1 y P2 de cuatro bits (flip-flops) cada uno, con una capacidad total de ocho bits para contener el resultado de la multiplicacin. Al inicio de las operaciones, al ser cargados los registros A y B con los nmeros binarios a ser multiplicados, el doble registro P1-P2 estar "limpio", en "ceros". El flip-flop J-K que aparece en el borde inferior izquierdo del diagrama es el que se encarga de llevar a cabo el secuenciamiento alternado de las operaciones de desplazamiento y adicin, a travs de sus terminales complementarias Q y Q. Primero se llevar a cabo un desplazamiento, y tras esto una suma, tras lo cual se llevar a cabo nuevamente un desplazamiento y otra suma. Al empezar las operaciones, a travs de la terminal C2 el flip-flop J-K es puesto en el estado Q=1 inicindose con ello la primera accin de desplazamiento. El primer bit multiplicador B1 es alimentado al flip-flop multiplicador, el flip-flop R-S que aparece en el diagrama. Si el primer bit multiplicador es "1", o sea B1=1, entonces el flip-flop R-S es puesto en el estado Q=1, de lo contrario ser puesto en el estado Q=0. En la siguiente accin, la accin de "adicin", tambin a travs de la terminal C2, el flip-flop J-K es puesto en el estado Q=0, con lo cual su salida complementaria entra en el estado Q=1, lo cual se encarga de abrir las dos compuertas (la "compuerta 1" y la "compuerta 2", de color gris claro). Al abrirse la "compuerta 1", esto permite que los contenidos del registro P1 (inicialmente cero) entren al bloque sumador. Si el primer bit multiplicador B1 es un "1", entonces la "compuerta 2" tambin se abre, permitiendo que los cuatro bits del nmero A que estn puestos en el registro A entren al bloque sumador. Como al empezar el contenido del registro P1 es 0000, el resultado de la suma ser simplemente A4A3A2A1, puesta en el mismo registro P1, suponiendo que el bit B1 es un "1". Si hubiera sido un "0", entonces los

contenidos del registro P1 seguiran siendo 0000. Ahora el flip-flop J-K, tras recibir un "pulso" en su terminal de entrada C2, revierte al estado Q=1, inicindose un nuevo ciclo, con lo cual el siguiente "bit multiplicador" que en este caso ser B2 entrar al flip-flop multiplicador R-S, y al mismo tiempo los contenidos en el doble registro P1-P2 sern desplazados un bit hacia la derecha, consumndose as la segunda accin de desplazamiento (esta accin conjunta de desplazamiento en los contenidos del doble registro tambin ocurri durante el primer desplazamiento, pero como todos los contenidos binarios de los registros P1 y P2 eran "0", no ocurri nada que tuviese consecuencia alguna en ese momento). De nueva cuenta, si el segundo bit multiplicador es "1", o sea B2=1, entonces el flip-flop R-S es puesto en el estado Q=1, de lo contrario ser puesto en el estado Q=0. Y en la siguiente accin, la accin de "adicin", tambin a travs de la terminal C2 el flip-flop J-K es puesto en el estado Q=0, con lo cual su salida complementaria entra en el estado Q=1, lo cual se encarga de abrir las dos compuertas. Nuevamente, al abrirse la "compuerta 1", esto permite que los contenidos del registro P1 (los cuales en esta ocasin ya no son necesariamente "ceros") entren al bloque sumador. Si el primer bit multiplicador B2 es un "1", entonces la "compuerta 2" tambin se abre, permitiendo que los cuatro bits del nmero A que estn puestos en el registro A entren al bloque sumador, en donde sern sumados a los contenidos del registro P1, depositndose el resultado de la suma en el mismo registro P1. Estas acciones se van repitiendo de modo idntico, hasta que al final el resultado de la multiplicacin binaria estar puesto en el doble registro P1-P2, con la mitad menos significativa del producto puesta en el registro P2 y la mitad ms significativa puesta en el registro P1. El lector observador se dar cuenta de que, en aras de la simplificacin didctica, no se han includo en el diagrama todos los alambres necesarios para construr el circuito, e inclusive se ha dejado pendiente un asunto importante en la construccin del multiplicador: una carrera crtica que ocurre en la accin de adicin que involucra al registro P1, algo que invariablemente puede ocurrir siempre que hay una retroalimentacin potencial de alguna seal en un circuito lgico. Es fcil ver el problema que se nos presenta aqu: al estar abierta la compuerta 1 para sumar los contenidos del registro P1 al nmero A que est proviniendo del registro A,

depositando los resultados del sumador en el registro P1, la informacin es enviada de inmediato al sumador para ser sumada al nmero A, el cual enviar los nuevos resultados al registro P1, del cual saldrn dichos resultados al sumador para repetir el proceso. Es, en efecto, un crculo vicioso. Queda claro que entre las operaciones de sumar los contenidos del registro P1 al nmero proveniente del registro A y depositar el resultado de dicha suma en el registro A es necesario poner un dique, una compuerta y/o un registro adicional, posiblemente a la entrada del registro P1, que se cerrar cuando los contenidos del registro P1 se estn enviando al bloque sumador para llevar a cabo la adicin, y que se abrir para que el registro P1 pueda recibir los resultados de la suma a la vez que la compuerta 2 se cierra impidiendo que el depsito del nuevo resultado pueda ser reciclado. De este modo, la solucin de los problemas de carreras crticas se reduce a la adicin de compuertas y/o registros adicionales, siempre y cuando estos problemas potenciales puedan ser descubiertos a tiempo por los diseistas. Obsrvese que cada uno de los "pulsos" de reloj C1 y C2 encargados de llevar a cabo acciones de secuenciamiento van dejando de ser ya simples "pulsos de reloj" para convertirse en seales de control originadas desde algn secuenciador maestro, desde alguna unidad de control que va indicando el orden en el cual se deben ir activando cada una de estas terminales Ci. El funcionamiento del circuito multiplicador puede ser entendido mejor viendo un ejemplo como el siguiente en el que se lleva a cabo en el mismo la multiplicacin de los nmeros 1101 (13) y 0110 (6):

A continuacin tenemos una tabla que describe el funcionamiento del circuito multiplicador usando los nmeros dados:

En este caso, el nmero mayor (1101) es el multiplicando y el nmero menor (0110) es el multiplicador, lo cual requiere que en algn circuito o procedimiento previo los dos nmeros binarios sean comparados para determinar cul de ellos es el mayor y cul de ellos es el menor. El multiplicando es puesto en el registro de memoria A dejndosele intacto todo el tiempo durante el cual se llevar a cabo la multiplicacin, mientras que el nmero B es puesto en el registro de memoria B, asociado al "bit de multiplicacin". El resultado final de la multiplicacin, 1001110 (78) quedar como el nmero "0100 1110" puesto en el doble registro P1-P2 en donde se ir acumulando el resultado conforme se lleve a cabo la multiplicacin con la adicin de los productos parciales. En cada desplazamiento los contenidos del doble registro P1-P2 son recorridos un lugar hacia la derecha, mientras que en cada adicin el contenido del registro P1 es sumado al nmero "0000" si el "bit multiplicador" es cero, o a "1101" si el "bit multiplicador" es "1". Obsrvese cuidadosamente en la tabla que el resultado del tercer ciclo dual produce un sobreflujo: 0110 + 1101 = 10011

Este sobreflujo debe ser guardado temporalmente en algn flip-flop (no mostrado en el diagrama) con el fin de que aparezca en el extremo izquierdo de P1 cuando ocurra el siguiente desplazamiento. No presenta pues problema alguno el disear un circuito que sea capaz de llevar a cabo una operacin de multiplicacin de dos nmeros binarios, como tampoco presentar problema alguno el disear un circuito que sea capaz de llevar a cabo la divisin de dos nmeros usando substracciones sucesivas. Y si las operaciones aritmticas de multiplicacin y divisin se pueden "grabar" en la microelectrnica de un circuito integrado, tambin se deben poder "grabar" operaciones ms sofisticadas como la extraccin de una raz cuadrada o la obtencin de alguna funcin trigonomtrica con operaciones matemticas que al fin y al cabo se pueden llevar a cabo con simples adiciones, substracciones, multiplicaciones y divisiones. Y de hecho esto fue precisamente lo que se hizo cuando aparecieron en el mercado los primeros microprocesadores; en apoyo de las operaciones bsicas del microprocesador 8086 hizo su aparicin el coprocesador de matemticas 8087, el cual se encargaba de realizar operaciones matemticas que de otro modo hubieran tenido muy atareado al "lento" (para nuestros tiempos actuales) microprocesador 8086; aunque eventualmente en diseos posteriores la microelectrnica del co-procesador de matemticas termin siendo incorporada a la microelectrnica de los microprocesadores posteriores tales como el 80386.

Vous aimerez peut-être aussi