Projeto Digital de uma Unidade Lógica e Aritmética (ULA) de um
Processador
Tema
Noções básicas de projeto de circuitos com...
Figura 1 – Diagrama de Blocos de uma ULA de 6 bits
A ULA esquematizada na figura 1 possui dois operandos de entrada (opera...
Tabela 1 – Códigos de operação da ULA
S2 S1 S0 Cin Operação Função
0 0 0 0 G = A + B soma
0 0 0 1 G = A + B + 1 soma com c...
Upcoming SlideShare
Loading in …5
×

Projeto ula

2,017
-1

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,017
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
29
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Projeto ula

  1. 1. Projeto Digital de uma Unidade Lógica e Aritmética (ULA) de um Processador Tema Noções básicas de projeto de circuitos combinacionais e de circuitos aritméticos. Desenvolvimento de projetos lógicos desde a etapa inicial referente à especificação até a etapa de implementação e de simulação. Objetivos • Compreender o funcionamento de uma ULA ; • Desenvolver o projeto lógico (esquemático) de uma ULA de 6 bits; • Analisar diferentes tipos de arquiteturas e alternativas para a construção da ULA; • Utilizar a ferramenta de síntese de circuitos digitais Quartus II; • Definir os vetores de simulação mais adequados para realizar a simulação da ULA projetada; • Realizar testes de funcionalidades de forma adequada e utilizar o software Quartus II na geração dos arquivos de simulação; • Escrever um relatório técnico, contendo a apresentação do problema, o projeto da arquitetura, as simulações realizadas, as decisões tomadas e as conclusões. Cronograma Data Atividade 28/10 Apresentação do trabalho 06/11 Desenvolvimento da ULA 20/11 Desenvolvimento da ULA 27/11 Avaliação final do trabalho Entrega do relatório Especificação da ULA Basicamente, um processador pode ser subdividido em duas grandes unidades, quais sejam: a unidade de controle e a unidade de processamento. A unidade de controle é responsável pelo gerenciamento do fluxo interno de dados através do envio de sinais de controle para a unidade de processamento. Por sua vez, a unidade de processamento é capaz de realizar, sobre os operandos de entrada, as operações requisitadas pela unidade de controle. Na unidade de processamento, encontra-se a ULA, a qual realiza operações lógicas e aritméticas sobre um ou mais operandos de entrada. Dentro desse contexto, este projeto refere-se à implementação no nível de portas lógicas de uma unidade lógica e aritmética específica. A seguir, apresenta-se, na figura 1, um diagrama de blocos de uma ULA de 6 bits de dados, a qual deverá ser implementada e devidamente simulada.
  2. 2. Figura 1 – Diagrama de Blocos de uma ULA de 6 bits A ULA esquematizada na figura 1 possui dois operandos de entrada (operandos A e B) de 6 bits cada um. Além disso, a ULA também possui os sinais de entrada Carry_in, Seleção da operação e Seleção de Modo. O sinal Carry_in indica o bit inicial do carry (vai-um inicial). O sinal Seleção de Modo indica se a ULA irá realizar uma operação lógica (AND, OR, OU-EXCLUSIVO e NOT) ou se irá realizar uma operação aritmética (soma, subtração, incremento e decremento). Como saída a ULA possui o sinal G de 6 bits, o qual é responsável por disponibilizar o resultado da operação da ULA. Além disso, a ULA possui os sinais de saída Carry output, Negativo, Zero e Overflow. O sinal de saída Carry output refere-se ao bit de vai-um final da operação. O sinal Negativo indica se o resultado produzido em G é positivo ou negativo. Se G ≥ 0, então Negativo = “0”. Se G < 0 então Negativo = “1”. O sinal de saída Zero deverá indicar se o resultado produzido na saída G é zero ou não. Se G = 0, então Zero = “1”, caso contrário, Zero = “0”. O sinal Overflow deve indicar se houve um estouro de representação na saída G quando os operandos A e B representarem números com sinal em complemento de dois. Lembre-se, no entanto, que o sinal Carry output também indica se houve overflow. No entanto, o sinal Carry output indicará overflow quando os operandos A e B forem números sem sinal, enquanto o sinal de saída Overflow deverá indicar se houve overflow quando os operandos A e B forem números com sinal representados em complemento de dois. Na tabela 1, encontram-se as respectivas operações que a ULA deverá realizar para cada uma das entradas de controle relacionadas aos sinais S2, S1, S0 e Cin.
  3. 3. Tabela 1 – Códigos de operação da ULA S2 S1 S0 Cin Operação Função 0 0 0 0 G = A + B soma 0 0 0 1 G = A + B + 1 soma com carry de entrada sendo igual a “1” 0 0 1 0 G = A + not(B) soma A com o inverso de B 0 0 1 1 G = A + not(B) + 1 subtração em complemento de dois 0 1 0 0 G = A - 1 decrementa A 0 1 0 1 G = A transfere A para a saída 0 1 1 0 G = A transfere A para a saída 0 1 1 1 G = A + 1 incrementa A 1 0 0 x G =ou-exclusivo(A, B) XOR entre A e B 1 0 1 x G = not(A) complementa A 1 1 0 x G = ou(A, B) OR entre A e B 1 1 1 x G = e(A, B) AND entre A e B Neste trabalho, deve-se utilizar a técnica de vai-um antecipado (carry look-ahead) para todos os circuitos somadores/subtratores especificados. Além disso, a ULA poderá trabalhar com números sem e com sinal. A representação de números com sinal deverá ser, neste projeto, em complemento de dois. No relatório, os autores e desenvolvedores deste projeto deverão procurar responder a seguinte pergunta: “Como é possível utilizar os sinais de saída da ULA especificada para realizarmos comparações entre números sem sinal utilizando o complemento de dois?”. Observações Este projeto deverá ser realizado em grupo de, no máximo, três alunos. Não serão permitidas cópias de relatórios e muito menos cópias, parcial ou integral, de projetos lógicos da ULA. Cada grupo deverá desenvolver uma arquitetura própria para a ULA aqui especificada. Recursos para Aprendizagem • TOCCI, R. J., WIDMER, N. S., MOSS, G. L. Sistemas Digitais – Princípios e Aplicações, 10ª. Edição, Editora Pearson Prentice Hall, 2007. • FLOYD, T. L. Sistemas Digitais – Fundamentos e Aplicações, 9ª. Edição, Editora Bookman, 2007. • PATTERSON, D. A., HENNESSY, J. L. Organização e Projeto de Computadores: A Interface Hardware/Software. 2. Ed., Rio de Janeiro: LTC, 2000. • STALLINGS, W. Arquitetura e Organização de Computadores. São Paulo: Makron Books, 2002. • Software de síntese de sistemas digitais ALTERA (www.altera.com)

×