Questão 1: Especificação de Alto Nível e Modelagem. 2,5 pontos.
Um módulo comparador de dígitos de base 4 compara dois dígitos de base 4 e produz uma saída com valores G (greater, maior), E (equal, igual), S (smaller, menor). Escreva:
  • Especificação ode alto nível (espressões matemáticas para entradas, saída e função);
  • Descrição da função em forma de tabela;
  • Codificação dos valores;
  • Expressões lógicas;
  • Tabela-verdade.

Passo 1

O enunciado pede um módulo comparador de dígitos em base 4 que, dadas duas entradas x e y em \{0,1,2,3\}, produza três sinais de saída G, E e S, indicativos de “greater”, “equal” e “smaller”. O conteúdo é especificação formal de função discreta e lógica combinacional, e iremos precisar de definição de domínio e contradomínio, tabela de valores, codificação binária, expressões lógicas e tabela-verdade.

Passo 2

Especificação de alto nível
Definimos
x,y \in \{0,1,2,3\}
\mathcal{O} = \{G,E,S\}
e a função
f\colon \{0,1,2,3\}^2 \to \mathcal{O}
tal que
f(x,y) = \begin{cases} G,&\text{se }x>y,\\\ E,&\text{se }x=y,\\\ S,&\text{se }x<y. \end{cases}

Passo 3

Descrição da função em forma de tabela
\begin{array}{cc|c} x & y & f(x,y)\\\ \hline 0 & 0 & E\\\\ 0 & 1 & S\\\\ 0 & 2 & S\\\\ 0 & 3 & S\\\\ 1 & 0 & G\\\\ 1 & 1 & E\\\\ 1 & 2 & S\\\\ 1 & 3 & S\\\\ 2 & 0 & G\\\\ 2 & 1 & G\\\\ 2 & 2 & E\\\\ 2 & 3 & S\\\\ 3 & 0 & G\\\\ 3 & 1 & G\\\\ 3 & 2 & G\\\\ 3 & 3 & E \end{array}

Passo 4

Codificação dos valores
x = (x_1x_0)_2,\quad y = (y_1y_0)_2
com
0\mapsto00,\;1\mapsto01,\;2\mapsto10,\;3\mapsto11.
As saídas serão
G = 100_2,\quad E = 010_2,\quad S = 001_2.

Passo 5

Expressões lógicas
Em soma de produtos, usando mintermos de x_1,x_0,y_1,y_0:
G = (x=01\land y=00)\;\lor\;(x=10\land y\in\{00,01\})\;\lor\;(x=11\land y\in\{00,01,10\})
E = (x_1\oplus y_1)' \land (x_0\oplus y_0)'
S = \bigl(\bar G\land\bar E\bigr).
Explicitando x=i e y=j em termos dos bits, por exemplo,
x=10\land y=01\equiv x_1\bar x_0\,\bar y_1 y_0.

Passo 6

Tabela-verdade
\begin{array}{cccc|ccc} x_1 & x_0 & y_1 & y_0 & G & E & S\\\ \hline 0&0&0&0&0&1&0\\\\ 0&0&0&1&0&0&1\\\\ 0&0&1&0&0&0&1\\\\ 0&0&1&1&0&0&1\\\\ 0&1&0&0&1&0&0\\\\ 0&1&0&1&0&1&0\\\\ 0&1&1&0&0&0&1\\\\ 0&1&1&1&0&0&1\\\\ 1&0&0&0&1&0&0\\\\ 1&0&0&1&1&0&0\\\\ 1&0&1&0&0&1&0\\\\ 1&0&1&1&0&0&1\\\\ 1&1&0&0&1&0&0\\\\ 1&1&0&1&1&0&0\\\\ 1&1&1&0&1&0&0\\\\ 1&1&1&1&0&1&0 \end{array}

Resposta

A especificação, a tabela de f, a codificação binária, as expressões lógicas para G, E e S e a tabela-verdade completa foram apresentadas nos passos acima.

Exercícios relacionados