experiÊncia #3 circuito de aritmética decimallabdig/pdffiles_2017/aritmetica-decimal.pdf · o...

14
EPUSP PCS 3335/3635 — Laboratório Digital Circuito de Aritmética Decimal (2017) 1 RESUMO Nesta experiência será estudado um circuito aritmético de soma decimal a partir dos somadores binários de 4 bits. Circuitos aritméticos integrados, como o circuito integrado 74283, ou descritos em VHDL serão analisados. A parte experimental consiste do projeto, implementação e documentação de um fluxo de dados simplificado com circuito de controle, que executará operações aritméticas em números BCD. OBJETIVOS Após a conclusão desta experiência, os seguintes tópicos devem ser conhecidos pelos alunos: Aritmética binária e decimal; Circuitos aritméticos; Somadores binários integrados; Somador decimal; Somador decimal em VHDL. 1. PARTE TEÓRICA Apresentamos aqui uma breve revisão de conceitos relativos à aritmética binária e decimal que são importantes para esta experiência. São abordados tanto o uso de circuitos integrados MSI, como somadores binários, como a descrição de circuitos aritméticos com VHDL. Mais informações podem ser obtidas no livro- texto [Wakerly, 2006], [Tocci, 2011] e na referência [D’Amore, 2012]. 1.1 Meio Somador e Somador Completo Sejam dois números binários X e Y, de n bits, que somados geram o número S como resultado: X = Xn-1 Xn-2 ... X2 X1 X0 Y = Yn-1 Yn-2 ... Y2 Y1 Y0 S = Van-1 Sn-1 Van-2 Sn-2 Va2 S2 Va1 S1 Va0 S0 onde: Vai é o “vai um” do i-ésimo (ou bit de carry). Por exemplo, para n = 4, a soma “2 + 6” resultaria em: X = 0 0 1 0 Y = 0 1 1 0 S = 0 1 1 0 0 Podemos observar que o resultado final (0100) não é correto, pois os bits foram somados isoladamente (em particular, o bit de “vai-um” gerado em X1 + Y1 não foi “incorporado” à soma de X2 + Y2). A tabela verdade para a geração dos bits da soma é ilustrado na Tabela I. Circuito de Aritmética Decimal Versão 2017 vai um

Upload: dohanh

Post on 14-Feb-2019

219 views

Category:

Documents


0 download

TRANSCRIPT

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 1

RESUMO Nesta experiência será estudado um circuito aritmético de soma decimal a partir dos somadores binários

de 4 bits. Circuitos aritméticos integrados, como o circuito integrado 74283, ou descritos em VHDL serão

analisados. A parte experimental consiste do projeto, implementação e documentação de um fluxo de

dados simplificado com circuito de controle, que executará operações aritméticas em números BCD.

OBJETIVOS Após a conclusão desta experiência, os seguintes tópicos devem ser conhecidos pelos alunos:

Aritmética binária e decimal;

Circuitos aritméticos;

Somadores binários integrados;

Somador decimal;

Somador decimal em VHDL.

1. PARTE TEÓRICA Apresentamos aqui uma breve revisão de conceitos relativos à aritmética binária e decimal que são

importantes para esta experiência. São abordados tanto o uso de circuitos integrados MSI, como somadores

binários, como a descrição de circuitos aritméticos com VHDL. Mais informações podem ser obtidas no livro-

texto [Wakerly, 2006], [Tocci, 2011] e na referência [D’Amore, 2012].

1.1 Meio Somador e Somador Completo

Sejam dois números binários X e Y, de n bits, que somados geram o número S como resultado:

X = Xn-1 Xn-2 ... X2 X1 X0

Y = Yn-1 Yn-2 ... Y2 Y1 Y0

S = Van-1 Sn-1 Van-2 Sn-2 Va2 S2 Va1 S1 Va0 S0

onde:

Vai é o “vai um” do i-ésimo (ou bit de carry).

Por exemplo, para n = 4, a soma “2 + 6” resultaria em:

X = 0 0 1 0

Y = 0 1 1 0

S = 0 1 1 0 0

Podemos observar que o resultado final (0100) não é correto, pois os bits foram somados isoladamente (em particular, o bit de “vai-um” gerado em X1 + Y1 não foi “incorporado” à soma de X2 + Y2). A tabela verdade para a geração dos bits da soma é ilustrado na Tabela I.

Circuito de Aritmética Decimal

Versão 2017

vai um

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 2

Tabela I - Tabela Verdade do Meio Somador.

Xi Yi Si Vai

0 0 0 0 Si = Xi Yi (1)

0 1 1 0

1 0 1 0 Vai = Xi Yi (2)

1 1 0 1

O circuito que implementa as equações acima é chamado meio somador, e pode ser construído com uma porta EXCLUSIVE OR e uma porta AND (figura 1).

Figura 1 – Meio Somador.

Esse circuito, porém, aplica-se apenas à soma de dois bits Xi e Yi isoladamente. Para efetuar-se somas completas, levando-se em consideração os demais bits que constituem os números X e Y, cada um dos bits “vai um” Vai deverá ser somado aos dígitos mais significativos Xi+1 e Yi+1.

No exemplo da soma “2 + 6”, teremos, portanto:

1 1

X = 0 0 1 0

Y = 0 1 1 0

S = 1 1 0 1 0 0

É comum denominar-se o “vai-um” gerado pela soma de Xi e Yi por “vem-um” (Vei+1), a ser acrescentado à soma Xi+1+Yi+1. Portanto a tabela verdade para a geração dos bits de uma soma completa é ilustrada na Tabela II abaixo.

Tabela II - Tabela Verdade do Somador Completo.

Xi Yi Vei Si Vai

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0 Si = Xi Yi Vei (3)

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1 Vai = Xi Yi + Vei (Xi Yi) (4)

1 1 0 0 1

1 1 1 1 1

O circuito que implementa um somador completo está na figura 2.

Figura 2 - Somador Completo.

Si

Ai

Bi

Vai

Si

X i

Y i

Vai

Vei

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 3

1.2. Somador com Propagação de “vai-um”

O somador com propagação de “vai-um”, também chamado de ripple carry adder, é construído ligando-se em cascata vários circuitos de “soma completa” (SC). A figura 3 mostra o diagrama em blocos de um somador binário de 4 bits implementado com essa técnica.

Figura 3 - Somador com propagação de “vai-um” de 4 bits.

A vantagem deste tipo de somador é a simplicidade e a modularidade do circuito; sua desvantagem, porém, é ser muito lento: seu atraso é aproximadamente igual à soma dos atrasos das saídas “vai-um” dos circuitos de soma completa.

1.3. Soma/Subtração usando Complemento de Dois

A representação em complemento de dois é normalmente usada para circuitos de aritmética binária com sinal. Por definição, o complemento de dois de um número é obtido pela soma de 1 ao complemento bit a bit do número:

(Complemento de 2) = (Complemento de 1) + 1.

Numa subtração, deve-se calcular o complemento de dois do subtraendo. Portanto, costuma-se “forçar” um “vem-um” na coluna de bits menos significativos dos operandos.

Exemplos:

7 - 3 = 4 4 - 6 = -2

1 “vem-um” forçado 1 “vem-um” forçado 0 1 1 1 7 0 1 0 0 4 1 1 0 0 -3 (complemento de 1) 1 0 0 1 -6 (complemento de 1)

0 1 0 0 4 1 1 1 0 -2 (complemento de 2)

Numa soma de números positivos ou negativos a complementação não é necessária e, portanto, não há “vem-um” forçado.

Exemplo:

-2 - 3 = -5

1 1 1 0 -2 (complemento de 2) 1 1 0 1 -3 (complemento de 2)

1 0 1 1 -5 (complemento de 2)

A figura 4 mostra um circuito de soma/subtração em complemento de 2. Em caso de subtração, usa-se Y’

na entrada do somador binário e SUBTR=1. Para a soma, usa-se Y e SUBTR=0.

Figura 4 - Circuito de Soma / Subtração em Complemento de 2.

S

4

X Y ou Y'

4 4

SUBTR = 1

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 4

1.3. Circuitos Integrados de Somadores Completos

Diversos circuitos integrados implementam a função de somador completo. O CI mais comum é o somador paralelo de 4 bits, que contém quatro somadores completos e um circuito de antecipação de “vai-um”. Os circuitos integrados mais comuns são o 7483A e o 74283. Ambos os circuitos são funcionalmente idênticos, e a única diferença entre eles é a numeração dos pinos. A figura 4 ilustra um esquema funcional do 74283.

Figura 4 – Somador paralelo 74283.

1.4. Numeração Decimal

O código mais utilizado para a representação dos dígitos decimais como combinação de sinais binários é a própria representação do dígito decimal em binário. Esse código de 4 bits é chamado BCD (Binary Coded Decimal). Contudo, é importante destacar que cada dígito decimal usa este código de 4 bits. Assim, um número com dois dígitos usa 8 bits em sua codificação em BCD.

Exemplos:

(26)10 = ( 0010 0110 ) BCD

(728)10 = ( 0111 0010 1000 ) BCD

A Tabela III abaixo mostra as correspondências entre os códigos decimal, binário e BCD.

Tabela III – Correspondência entre os códigos decimal, binário e BCD.

DECIMAL BINÁRIO BCD

0 0000 0000

1 0001 0001

2 0010 0010

3 0011 0011

4 0100 0100

5 0101 0101

6 0110 0110

7 0111 0111

8 1000 1000

9 1001 1001

10 1010 inválido

11 1011 inválido

12 1100 inválido

13 1101 inválido

14 1110 inválido

15 1111 inválido

somador paralelo de 4 bits

74283

A3 A2 A1 A0B3 B2 B1 B0

3 2 1 0

C0C4

somador paralelo de 4 bits

74283

A3 A2 A1 A0B3 B2 B1 B0

3 2 1 0

C0C4

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 5

1.5. Somadores Decimais

Estes somadores, ao invés de somarem números codificados em código binário, devem somar números codificados em BCD. Este código é largamente utilizado em calculadoras eletrônicas. Neste código, cada algarismo decimal (dígito) é codificado com 4 bits e deve-se utilizar tantos conjuntos de 4 bits quantos forem os dígitos necessários para a representação. A figura 5 mostra o esquema de um somador decimal

de n dígitos.

Figura 5 - Esquema de um Somador Decimal de n dígitos.

onde:

as entradas A e B são n conjuntos de 4 bits, correspondentes aos números em BCD que se quer somar;

a saída S é composta por n conjuntos de 4 bits, correspondentes à soma das entradas A e B;

Ve é uma entrada de 1 bit que permite forçar um “vem-um”;

Va é uma saída de 1 bit que indica se houve um “vai-um” na operação.

Como pode ser visto na Tabela I, o sistema BCD usa 10 combinações disponíveis com 4 bits, sendo as outras seis inválidas.

Quando se somam dois dígitos BCD em um somador binário, o dígito resultante pode ser:

a) dígito válido sem “vai-um”;

b) dígito inválido sem “vai-um”;

c) dígito válido com “vai-um”.

O caso (a) acontece quando o dígito do resultado é menor ou igual a 9. O caso (b) acontece quando o resultado fica entre 10 e 15, e o caso (c) acontece quando o resultado cai entre 16 e 18. O caso (a) não

precisa de correção, mas nos casos (b) e (c) é necessário corrigir o resultado. No caso (b), também, é necessário propagar o “vai-um” para o dígito seguinte.

Considere por exemplo a soma dos números A = 0832 e B = 0983:

vai-um

1

A = 0832 0000 1000 0011 0010

B = 0983 0000 1001 1000 0011

Soma parcial 0001 0001 1011 0101

caso c caso b caso a

Existem dois métodos para a correção do resultado (soma parcial) que serão apresentados a seguir.

SOMADORDECIMAL

Si

VeVa

B0BiAiAn-1 A0 Bn-1

...

Sn-1 S0

... ... ...

... ...

4 4 4

4 4 4

4 4 4

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 6

1.5.1. Correção Posterior de Seis

Neste método, faz-se a correção do resultado da soma para os casos (b) e (c). Primeiro, para o caso (b), é necessário somar 6 ao resultado parcial da soma dos dígitos, para corrigir o dígito do resultado e propagar o “vai-um”; já para o caso (c) só é necessário somar 6, pois o “vai-um” já foi propagado.

Assim, tomando o exemplo anterior da soma 0832 + 0983, temos primeiro a soma parcial resultante da soma de suas parcelas. A etapa posterior envolve a correção por 6 do segundo e terceiro dígitos:

Vai-um 1111 11

Soma parcial 0001 0001 1011 0101

Correção posterior de 6 0110 0110

Soma final 0001 1000 0001 0101

Resultando: S = 1815

Resumindo, há a necessidade de efetuar a correção posterior de seis se a soma parcial resultar em um dígito inválido (caso b) ou na ocorrência de um “vai-um” (caso c). A figura 6 mostra o diagrama em blocos

deste tipo de somador, para um dígito.

Figura 6 - Somador Decimal com Correção Posterior de Seis (1 dígito).

1.2.2. Correção Prévia de Seis

Existe outro algoritmo de correção de dígito inválido, que consiste em somar 6 a todos os dígitos de um dos operandos antes da soma das duas parcelas (daí o nome “correção prévia de seis”). Assim, só existem dois casos para o resultado da soma:

a) o resultado não deu “vai-um”, situando-se entre 6 e 15;

b) o resultado deu “vai-um”; o “vai-um”, portanto, já foi propagado e o dígito, entre 0 e 9, está correto.

No caso (a), deve-se subtrair 6 do resultado, pois a soma destes dígitos resultou entre 0 e 9.

Fazendo-se a soma 0832 + 0983, com este algoritmo de correção prévia de seis, tem-se:

1º) Correção prévia de seis: soma-se 6 em todos os dígitos de A.

Vai-um 11 11

A = 0832 0000 1000 0011 0010

Correção prévia de seis 0110 0110 0110 0110

1a Soma parcial 0110 1110 1001 1000

SOMADORBINÁRIO do dígito

anterior

Va

para opróximodígito

DETECTORDE

CÓDIGOINVÁLIDO

BiAi

Ve

Si

+6

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 7

2º) Soma das duas parcelas: soma B ao resultado da 1ª soma parcial.

Vai-um 1 1111

1a soma parcial 0110 1110 1001 1000

B = 0983 0000 1001 1000 0011

2a soma parcial 0111 1000 0001 1011

dígito 3 dígito 2 dígito 1 dígito 0

Houve “vai-um” nos dígitos 1 e 2; portanto, eles estão corretos; como não houve “vai-um” nos dígitos 0 e 3, é necessário subtrair-se 6 desses dígitos. Em vez de subtrair “0110”, somamos “1010”, que é o complemento de dois de “0110”, e ignoramos o “vai-um”.

Vai-um 11 1

2a soma parcial 0111 1000 0001 1011

Subtrair 6 1010 1010

Soma final 0001 1000 0001 0101

Resultando: S = 1815

Esta solução dispensa o detector de código inválido, e tem algumas vantagens no que concerne à velocidade e à possibilidade de utilizar um somador binário com “vai-um antecipado” de vários dígitos. A figura 7 mostra o diagrama em blocos de um dígito do somador com correção prévia de seis.

Figura 7 - Somador com Correção Prévia de Seis (1 dígito).

1.3. Subtração Decimal

A operação de subtração de números em BCD pode ser realizada de forma similar à soma decimal, com

um circuito combinatório desenvolvido a partir da sua especificação. Uma alternativa é usar um circuito para calcular o complemento de 10 dos dígitos para calcular o valor negativo do subtraendo. Por exemplo, para calcular 45 – 23, podemos antes obter o valor de -23 em representação de complemento de 10 (que é dado pelo código 77). Assim, podemos calcular 45 – 23 com a expressão equivalente 45 + (-23), ou seja, 45 + 77.

SOMADORBINÁRIO do dígito

anterior

Va

para opróximodígito

+6

BiAi

Ve

Si

+10

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 8

1.6. Somadores em VHDL

Circuitos aritméticos podem ser descritos em VHDL de diversas formas. A primeira forma que apresentamos é usar uma descrição comportamental de um somador binário de 4 bits (figura 8).

Figura 8 – Somador binário em descrição comportamental em VHDL.

Os sinais de entrada e saída são do tipo std_logic e std_logic_vector. O somador binário possui 3 sinais

de entrada: A, B e C0, e 2 sinais de saída: S e C4. São usados dois operadores: + representa uma adição

e & representa uma concatenação de bits. O operador + é especificado pelo pacote unsigned da biblioteca

IEEE para implementar a operação de adição sem sinal para o tipo std_logic_vector.

Na descrição, a soma é realizada com vetores com 5 elementos. Assim, por exemplo, '0'&A representa um

vetor de 5 bits contendo '0' A(3) A(2) A(1) A(0). Após a realização da soma, a descrição atribui o bit

mais significativo de soma a C4 (bit de vai-um) e os outros 4 bits em S (resultado da soma).

Uma descrição estrutural do somador binário de 4 bits equivalente ao exemplo anterior deve levar em conta os elementos internos do circuito digital. Por exemplo, podemos considerar este somador de 4 bits contendo 4 somadores completos de 1 bit interligados entre si (figura 9).

Figura 9 – Esquema de um Somador binário de 4 bits composto por 4 Somadores completos de 1 bit.

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 9

Inicialmente apresentamos a descrição do somador completo de 1 bit de forma comportamental. Esta

descrição é mostrada abaixo (figura 10).

Figura 10 – Descrição comportamental VHDL de um somador completo de 1 bit.

Uma vez disponível, o circuito do somador completo pode ser reutilizado para a descrição do somador binário de 4 bits. Para isto, deve ser definido como um componente e usado como um bloco básico: devem ser instanciados 4 elementos e suas entradas e saídas devem ser interligadas através de sinais internos. A seguir apresentamos o código VHDL do somador binário de 4 bits em descrição estrutural (figura 11).

Figura 11 – Descrição VHDL estrutural de um somador binário de 4 bits composto

por 4 somadores completos de 1 bit.

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 10

2. PARTE EXPERIMENTAL

2.1. Atividade 1 (Pré-Laboratório)

Esta atividade envolve o estudo do somador 74283 e sua aplicação no projeto de um somador decimal. Em

seguida, faz-se o estudo da descrição de somadores em VHDL e pede-se o projeto da descrição de um

somador decimal.

2.1.1. Consulta ao Manual do Somador 74283

a) Consulte o manual do componente 74283 (somador binário de 4 bits) e liste os sinais dos pinos do circuito integrado e suas respectivas funções.

DICA: neste item, deve-se incluir uma figura com o símbolo lógico do componente e a numeração dos

pinos para ilustrar a resposta.

b) Responda as perguntas abaixo:

1. Quais são os números dos pinos das entradas A, B e C0?

2. Quais são os números dos pinos das saídas Σ e C4?

3. Consulte o manual do 74283 e procure alguns parâmetros do circuito integrado:

i) Qual é o valor do atraso de propagação tPLH a partir da mudança da entrada Ai ou Bi para a saída Σi?

ii) Qual é o valor do atraso de propagação tPHL a partir da mudança da entrada Ai ou Bi para a saída Σi?

iii) Qual é o menor valor de tensão para entrada em nível alto VIH?

iv) Qual é o maior valor de tensão para entrada em nível baixo VIL?

v) Qual é o menor valor de tensão para saída em nível alto VOH?

vi) Qual é o maior valor de tensão para saída em nível baixo VOL?

2.1.2. Projeto de Somador Binário com 74283

Neste item deve-se elaborar o projeto de um somador decimal usando componentes discretos SSI e MSI.

Use portas lógicas da família 74xx e o somador binário 74283. Consulte lista de componentes no final da

apostila.

c) Projete um somador decimal que adota a técnica de correção posterior de 6, conforme ilustrado no

diagrama de blocos da figura 6.

d) Documente o projeto e elabore um diagrama esquemático usando o formato padrão adotado no

Laboratório Digital.

e) Escolha alguns casos de teste para testar o funcionamento do circuito projetado.

DICA: os casos de teste devem cobrir pelo menos os 3 casos apresentados no item 1.5.

f) Simule o projeto do somador decimal no Altera Quartus Prime, usando os valores de teste especificados.

Analise os resultados. Anexe as formas de onda no Planejamento.

g) Traga o arquivo QAR do projeto.

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 11

2.1.3. Familiarização com Somadores em VHDL

Neste item serão estudadas as descrições dos somadores binários em VHDL. Estes componentes devem

ser usados no projeto do somador decimal seguinte.

h) As descrições VHDL apresentadas na seção 1.6 podem ser usadas para sintetizar circuitos somadores binários para entradas de 4 bits. Selecione casos de teste para verificar seu funcionamento. Explique como estes testes podem garantir uma verificação completa do circuito.

i) Inicialmente, considere a descrição comportamental do somador binário de 4 bits apresentada na

Figura 8. Elabore um projeto no Quartus, compile-o e prepare os arquivos para simulação.

j) Simule o comportamento desta descrição usando o Altera Quartus Prime e os casos de teste selecionados no item 2.1.3.g. Analise os resultados. Apresente as formas de onda no Planejamento

k) Considere, em seguida, a descrição estrutural do somador binário de 4 bits apresentada na Figura 11. Elabore um projeto no Quartus, compile-o e prepare os arquivos para simulação.

l) Simule o comportamento desta descrição usando o Altera Quartus Prime e os casos de teste selecionados no item 2.1.3.g. Analise os resultados. Apresente as formas de onda no Planejamento.

m) Compare os resultados obtidos pelas simulações.

n) Trazer os arquivos QAR ao Laboratório Digital.

o) Responda as perguntas abaixo:

4. O que é preciso fazer para modificar o código da descrição comportamental do somador binário para entradas de

8 bits? Apresente as linhas de código modificadas.

5. O que é preciso fazer para modificar o código da descrição estrutural do somador binário para entradas de 8 bits?

2.1.4. Projeto de Somador Decimal em VHDL

Neste item deve ser projetado um circuito somador decimal usando correção posterior de seis em VHDL

em uma descrição estrutural.

p) Projete um somador decimal que adota a técnica de correção posterior de 6, conforme ilustrado no

diagrama de blocos da figura 12 abaixo. Use como componentes o somador binário projetado na

Atividade do item 2.1.3 e um gerador de vai-um. Observe na figura os sinais internos especificados

(s_soma, s_cout, s_vai_um).

Figura 12 – Diagrama de blocos do somador decimal em VHDL.

q) Documente o projeto, colocando comentários no código fonte.

r) Simule o projeto do somador decimal no Altera Quartus Prime, usando os valores de teste especificados

no item 2.12.e. Analise os resultados obtidos. Anexe as formas de onda no Planejamento. Traga o

arquivo QAR no Laboratório Digital.

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 12

2.2. Atividade 2 – Montagem do Somador Decimal com 74283

Esta atividade visa introduzir os alunos para a atividade de montagem modular, onde um circuito é montado

e testado em módulos independentes que, posteriormente, são integrados. O somador decimal com

correção posterior de 6 pode ser dividido em 3 módulos: somador binário, bloco de geração de vai-um e o

somador da correção. Para a montagem de cada módulo, deve-se elaborar no Planejamento uma

sequência de atividades que envolve (1) a montagem do módulo através de um diagrama esquemático no

painel de montagens, (2) determinação dos sinais de depuração, que devem ser usados nos testes e (3)

um plano de testes com valores a serem aplicados para verificar seu funcionamento. Um exemplo de sinal

de depuração no módulo de geração de vai-um é aquele que indica a condição de código inválido. Depois

que for determinado que cada módulo funciona corretamente, deve-se prosseguir na integração um a um

dos módulos até chegar no circuito total. A cada etapa de integração, deve-se repetir alguns testes para

verificar o funcionamento dos módulos integrados.

s) De posse do Plano de montagem modular elaborado no Planejamento, execute a montagem do circuito

do somador decimal com 74283. Mantenha os sinais de depuração ligados em leds e displays de

7 segmentos durante a montagem dos módulos e também depois da integração dos módulos.

t) Anote o que ocorreu durante a montagem do circuito no Relatório.

u) Em seguida, execute testes de funcionamento do somador decimal. Anote os resultados.

v) Use agora os seguintes valores nas entradas do somador decimal, anote os valores observados nos

diversos sinais internos do circuito e analise os resultados obtidos:

i. a=2 e b=3

ii. a=7 e b=8

iii. a=0 e b=F

iv. a=9 e b=B

v. a=F e b=F

w) Com base nos resultados obtidos, responda as perguntas:

6. Cite os sinais de depuração usados na montagem modular.

7. O que acontece quando um valor não BCD é colocado nas chaves de entrada?

8. Existe alguma situação em que a saída exibe um resultado incorreto ou inválido? Explique.

9. Comente a dificuldade em mudar o projeto do somador decimal de 1 dígito para 2 dígitos. O que é necessário fazer?

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 13

2.3. Atividade 3 – Síntese do Somador decimal em VHDL na placa FPGA

O projeto do somador decimal em VHDL deve ser programado na placa DE0-CV e seu funcionamento deve

ser analisado cuidadosamente. Siga as recomendações do professor ao manusear a placa FPGA.

x) Programe a placa DE0-CV com o circuito do somador decimal em VHDL sintetizado usando o Altera

Quartus Prime. Use a seguinte designação de pinos.

DICA: escolher sinais adicionais de depuração e realizar a designação em leds e displays disponíveis.

Designação

sinal pino

a chaves SW3 a SW0

b chaves SW7 a SW4

vem_um chave SW9

s display HEX0

vai_um led LEDR9

s_cout led LEDR8

s_soma leds LEDR3 a LEDR0

y) Acione os sinais de entrada conforme Plano de teste elaborado no Planejamento. Verifique o

funcionamento do circuito, observar também os sinais de saída no display e de vai-um.

DICA: observar também o sinal da saída do somador binário antes da correção de seis.

z) Use os seguintes valores nas entradas do somador decimal, anote os valores observados nos sinais do

circuito e analise os resultados obtidos:

i. a=2 e b=3

ii. a=7 e b=8

iii. a=0 e b=F

iv. a=9 e b=B

v. a=F e b=F

aa) Responda as perguntas:

10. O que acontece quando um valor não BCD é colocado nas chaves de entrada?

11. Existe alguma situação em que a saída exibe um resultado incorreto ou inválido? Explique.

12. Comente a dificuldade em mudar o projeto do somador decimal de 1 dígito para 2 dígitos. O que é necessário fazer?

EPUSP — PCS 3335/3635 — Laboratório Digital

Circuito de Aritmética Decimal (2017) 14

3. BIBLIOGRAFIA ALTERA. DE0-CV User Manual. 2015.

ALTERA. Quartus Prime Introduction Using VHDL Designs. 2016.

ALTERA. Quartus Prime Introduction to Simulation of VHDL Designs. 2016.

ALTERA. Quartus Prime Introduction Using Schematic Designs. 2016.

D’AMORE, R. VHDL - descrição e síntese de circuitos digitais. 2a edição, LTC, 2012

MENEZES, M.P.; SATO, L.M.; MIDORIKAWA, E.T. Projeto de Circuitos com Quartus II 9.1. Apostila de Laboratório Digital. Departamento de Engenharia de Computação e Sistemas Digitais, Escola Politécnica da USP. Edição de 2011.

PCS-EPUSP. Somadores decimais. Apostila de Laboratório Digital. 2013.

PCS-EPUSP. Calculadora simples em VHDL. Apostila de Laboratório Digital. 2015.

TEXAS INSTRUMENTS. Digital Logic Pocket Data Book. 2006.

TOCCI, R.J. & WIDMER,N.S. Sistemas digitais: princípios e aplicações. 11a ed., Prentice-Hall, 2011.

WAKERLY, John F. Digital Design Principles & Practices. 4th edition, Prentice Hall, 2006.

4. MATERIAL DISPONÍVEL Neste item serão apresentados os materiais disponíveis para a realização da experiência. Os projetos de cada grupo devem usar apenas os componentes listados abaixo.

Circuitos Integrados TTL:

Portas lógicas: 7400 (NAND), 7402 (NOR), 7404 (NOT), 7408 (AND),

7432 (OR), 7486 (XOR).

Somador binário: 74283.

5. EQUIPAMENTOS NECESSÁRIOS 1 painel de montagens experimentais.

1 fonte de alimentação fixa +5V.

1 osciloscópio digital.

1 multímetro digital.

1 computador pessoal com o software Altera Quartus Prime.

1 placa de desenvolvimento FPGA DE0-CV da Altera com o dispositivo Cyclone V 5CEBA4F23C7N.

Histórico de Revisões

E.T.M. / 2017 (versão inicial)