ax‐or - Obijuan/Icestudio-Digital GitHub Wiki

Circuito 022-ax-or

⬅️ Prev Navegar por los circuitos Next ➡️

Contenido

Ficha: Elemento primitivo OR

Descargas

Descripción

Se introduce el funcionamiento de la puerta OR. Es un elemento primitivo que permite combinar dos bits en uno. En este circuito se hace una prueba MANUAL. Las dos entradas de la puerta OR, denotadas como a y b se conectan a los dos pulsadores de la placa Alhambra-II. La salida de la OR, x, se conecta al LED del pin D0

El circuito, cuando NO está apretado ningún pulsador, mantiene el LED apagado. En el resto de casos, el LED se enciende. Es decir, si apretamos el pulsador SW1, o el SW2 o ambos, el LED se enciende

La puerta OR

La puerta OR es un componente combinacional. Tiene 2 entradas y una salida. Ambas entradas se combinan para generar su salida. Como es combinacional, el resultado depende únicamente del valor de sus entradas

El comportamiento de la OR lo definimos indicando todos sus casos posibles de las entradas:

  • or(0,0) = 0
  • or(0,1) = 1
  • or(1,0) = 1
  • or(1,1) = 1

En el mundo de la lógica matemática, esta operación se representa mediante el símbolo ⋁. Si a y b son las variables booleanas que denotan las entradas de la OR, su salida se representa mediante $a⋁b$:

  • 0 ⋁ 0 = 0
  • 0 ⋁ 1 = 1
  • 1 ⋁ 0 = 1
  • 1 ⋁ 1 = 1

PERO en la lógica Booleana de los circuitos la notación que utilizamos es $a+b$, y denominamos a esta operación como suma (booleana)

  • 0+0 = 0
  • 0+1 = 1
  • 1+0 = 1
  • 1+1 = 1

Si bien la operación OR se aplica a variables booleanas, la llamamos suma porque se comporta exactamente igual que la suma de números enteros (Pero ¡OJO!, NO ES UNA OPERACIÓN DE SUMA!). Como regla nemotécnica es muy útil, porque la operación suma estándar la conocemos muy bien. Podemos decir que "Uno más algo es uno". "Cero más cero es cero". Con esas dos frases tenemos definido totalmente el comportamiento de OR

Puerta OR en Icestudio

En Icestudio la puerta OR se encuentra en la colección iceGates. Como tiene 2 entradas, lo denotamos como icegates.or2

Circuito LEDOR2BTN

El circuito abstracto LEDOR2BTN tiene dos entradas y una salida. Sus dos entradas están conectadas a pulsadores, y la salida a un LED. El comportamiento es el mismo descrito en esta ficha: Sólo se apaga el LED cuando ningún pulsador está apretado. En cuanto haya al menos uno apretado, permanece apagado

En esta figura se muestra gráficamente su funcionamiento:

El circuito ax-or es la una implementación de LEDOR2BTN

Cronograma

La comprobación de la puerta OR se hace manualmente apretando pulsadores y comprobando el estado del LED de salida. En el cronograma se han dibujado todos los casos posibles, suponiendo que las entradas de la OR se han conectado a un circuito de pruebas (TestBench) que envía un valor diferente de las entradas en cada ciclo de reloj. Como en total hay 4 casos posibles, a partir del ciclo 3 ya se ha completado la prueba. De los ciclos 4 al 7 se mantienen ambas entradas a 1

El funcionamiento de la OR se puede dividir en dos casos. El caso principal es cuando el LED está apagado, y esto sólo ocurre cuando ambas entradas están a 0. Es decir, que SW1=0 y SW2=0. En el resto de casos el LED estará encendido

En el ciclo 0 se prueba el caso (SW2, SW1==(0,0) cuya salida es 0. En los ciclos 0, 1 y 2 se prueban el resto de casos (SW2, SW1)= `(0,1), (1,0) y (1,1)´

Tabla de verdad

SW2 SW1 D0 Descripción
0 0 0 Ningún botón apretado. LED apagado
0 1 1 Botón 1 apretado. LED encendido
1 0 1 Botón 2 apretado. LED encendido
1 1 1 Botón 1 y 2 apagados. LED encendido

Recursos

Recurso Cantidad Máximo Descripcioin
LC 3 7680 Celdas lógicas
IO 3 256 Bloques de E/S

Este circuito tiene 2 pines de entrada y uno de salida, por ello consume 3 bloques de E/S

Conceptos nuevos

  • Puerta OR: Elemento primitivo que realiza la operación booleana a+b
  • Operación Booleana de suma. La suma booleana es el nombre dado a la operación OR, y se representa mediante +
  • icegate.or2: Bloque en Icestudio que implementa una puerta OR
  • Circuito LEDOR2BTN: Circuito que enciende un LED cuando hay algún pulsador apretado. Está apagado cuando ninguno se aprieta

Enlaces

  • iceGates: Colección de Icestudio con puertas lógicas

Autor

Licencia