of 43 /43
Sistemas Digitais Grupo de Engenharia da Computação (GRECO) Centro de Informática Universidade Federal de Pernambuco Manoel Eusebio de Lima

Sistemas Digitais - cin.ufpe.brcin.ufpe.br/~if675/arquivos/.../2003-2/unidade1/aula_apresentacao.pdf · 32 PC - program counter (contador de programa) – indica a próxima instrução

Embed Size (px)

Text of Sistemas Digitais -...

Sistemas Digitais

Grupo de Engenharia da Computao (GRECO) Centro de Informtica

Universidade Federal de Pernambuco

Manoel Eusebio de Lima

2

Por que estudar sistemas digitais?

Conhecer dispositivos que integram processadores de informao em nosso cotidiano.

Entender o que e porque a informao digital mais eficiente na manipulao de tcnicas para processar e utilizar informao.

Conhecer e utilizar tcnicas modernas que permitam desenvolver sistemas de tratamento de informao em problemas reais. Metodologias de projetos Ferramentas de CAD para desenvolver projetos Linguagem para descrio de hardware (VHDL)*

Comear a entender o funcionamento de computadores digitais a partir de seus fundamentos.

Desenvolver projetos de circuitos integrados voltados para Sistemas embarcados(Embedded systems)

3

Sistemas embarcados Um sistema dito embarcado quando este dedicado a

uma nica tarefa e interage continuamente com o ambiente a sua volta por meio de sensores e atuadores.

Caractersticas Possui componente programvel Funcionalidade nica e fixa Modo reativo - responde a entradas externas E/S Intensivo Restries de projeto mais rgidas:

custo, tamanho, desempenho, potncia dissipada, etc. Sistemas de tempo real:

fornecer resultados em tempo real Eficincia (estruturao, tamanho e velocidade) do cdigo

produzido (software). Podemos dizer que sistemas embarcados esto em quase

em todos os lugares, mas so quase sempre imperceptveis.

4

Onde esto os Sistemas embarcados?

?

CIs? VLSI?

Produtos de consumo Eletrodomstico Telecomunicaes Jogos eletrnicos Indstria automobilstica Indstria aeronutica

5

Organizao tpica de um sistema embarcado

Sistemas embarcados 6

7

Sistemas Embarcados Exemplo Indstria automotiva

The DECOS projectProf. Hermann Kopetz - Vienna University of Technology,

8

Automao residencial

Low power Personal Server

Mobile sensor network architecture

Hospital

Hospital information system (HIS)

Mobile intelligent network Wireless communication

sensors

gateway

glucose

10

Mercado Mundial de Sistemas Embarcados (2003, 2004 and 2009)

($ Millions)

AAGR - Average Annual Growth Rate

($ Millions) ($ Millions)

Sistemas embarcados

Como projet-los?

11

12

Metodologia do curso

13

Como ser lecionada a disciplina?

A partir de um estudo de caso Desenvolver o projeto de um sistema

digital para um sistema embarcado Aprender tcnicas que nos auxiliem a

desenvolver o projeto atravs de: Aulas tericas Aulas prticas (laboratrios) Desenvolver projetos em grupo Demonstraes

14

Metodologia

Disciplina baseada em problema Discusso do problema Possveis solues Ferramentas de CAD Projeto

Especificao Desenvolvimento Implementao

15

Desenvolver o controle de um pequeno Rob em uma plataforma de prototipao rpida.

Tipo de problema

Desenvolver o controle de uma mquina de vender bombons em uma plataforma de prototipao rpida.

Desenvolver um Processador: definir instrues, Unidade de controle, ULA, ..

Y

ULA X

Controle

Decodificador de instrues

Tx

Ty Z

Tz

Dispositivo de sada

clk

acumulador

Tula

PC

Memria

Inst

ru

es |

D

ados

Instruo Dados

4 bits 4 bits

0 1 ..n

Barramento de dados

Barramento de dados (Instrues)

CPU

Status

Barramento de Endereos

Projeto 2: CPU

b

a

c

d

e

f g

decodificador

17

Processador

18

Processador Como implementar um Processador? (Central Processing Unit + Memria + I/O)

19

Processador

20

Processador

Como desenvolver o problema? Estudar metodologias de projetos Estudar linguagens para descrio do problema Estudar tecnologia de implementao Estudar tcnicas de validao do problema ............................................................

21

Projetar o controle de um pequeno Rob

Background Circuitos combinacionais

Somador, ULA, Multiplixadores, decodificadores, .... Circuitos seqenciais

Contador, unidade de controle, registrador, memria

Uso de ferramentas de CAD p/desenvolver projetos

Linguagens de especificao de hardware

22

Idias Implementao em hardware Em que linguagem a mquina ser especificada?

Esquemtico Linguagem de Programao

C Pascal C++ ....

Linguagem para descrio de hardware verilog VHDL Handel-C SystemC ......

Processador

23

Como abordar o problema? Abstrair a tecnologia

Uma metodologia Particionamento descrio gerncia documentao

Escolher ambiente de projeto Ferramentas de sntese Ferramentas para validao (validar o projeto)

Processador

24

Sistemas Embarcados Metodologia de Projeto

Ciclo Inicial de Projeto

25 Sistemas Embarcados Implementao do Computador em uma plataforma de hardware

ASIC

Layout

26

Descrio

do C

Processador

Hardware ASIC FPGA * Circuito Integrado (CI)

27

O que Circuito Integrado?

28

um conjunto de elementos bsicos: resistores, capacitncias, dodos e transistores, etc. fabricados sobre nico pedao de material semicondutor (Slicio, Germnio, Arsianeto de Galium, etc), que pode implementar vrias funes lgicas digitais e/ou funes analgicas integradas.

Funes como: Operaes aritmticas Controle Memria ................

O que Circuito Integrado?

29

Recursos Altera Quartus+II

Entradas: -Esquemtica -VHDL

simulao

Entrada

Implementao

Process(d,clk) Begin if clk='1' then Q

30 Plataforma de desenvolvimento do Processador

SoC System on Chip

31

Processor Memory Input/Ouput

Data Bus Address Bus

PC IR AC

MDR MAR

Control Unit

Arquitetura do computador

PC = Program counter IR = Instruction register AC = Acumulador MAR = Memory Address Register MDR = Memory Data Register ALU = Arithmetic & Logic Unit

Memria Dispositivo de entrada e sada(E/S)

ALU ALU

PC IR AC

MDR MAR

Control Unit

32

PC - program counter (contador de programa) indica a prxima instruo a ser executada.

IR - Instruction register (registrador de instruo) recebe a instruo a ser decodificada pela CPU.

AC Acumulador (registrador auxiliar). Guarda temporariamente valores sendo calculados.

MAR Registrador que indica a prxima posio de memria a ser referenciada. Conectado ao barramento de endereos.

MDR Registrador usado para receber ou transmitir dados. Conectado ao barramento de dados.

ALU (ULA) Unidade Lgica e Aritmtica (+, -, >,

33

Componentes de uma CPU

Como projetar e integrar estes circuitos visando uma aplicao especfica?

Control Unit Unidade de controle Mquina de estados

AC Reg Registrador (PC, AC, MBR, MAR,..) Armazena informaes Memria?

2a unidade

ALU

Algumas funes da ULA Somar nmeros Subtrarir nmeros Comparar nmeros Processar informaes

1a unidade

34

Placa de prototipao da Altera (UP1) Placa para teste

35

Recursos de laboratrio

Laboratrio: Mais de 80 Estaes de trabalho 10 Kits de desenvolvimento de sistemas digitais

QuartusII Development Software UP1 1 Education Board ByteBlaster download cable

36

Recursos disponveis para o curso Sala de aula (40s) Laboratrio (20-30 hs)

Digilab para aulas prticas em bancadas Microcomputador (PC) Ferramentas de CAD para projetos de Sistemas

digitais Quartus II nos laboratrios de graduao

Placa de prototipao da Altera (UP1) Pgina WEB da disciplina

www.cin.ufpe.br/~if675 Listas de exerccios 6 monitores da disciplina (1 oficial + 5 voluntrios)

37

Programa do curso 1a Unidade

Introduo circuitos digitais - Evoluo do circuito integrado Ferramentas de trabalho

Codificao numrica e simblica Representao de informao digital Cdigos ASCII, EBCDII, Gray, etc. Converso AD, D/A(conceitos bsicos)

Operaes lgicas e funes bsicas Simbologia de Portas lgicas Forma cannica de funes Comportamento dinmico e caractersticas bsicas de

circuitos digitais

38

Programa do curso lgebra de Boole

Postulados e teoremas Lgica de dois nveis Lgica multi-nvel Hierarquia em projetos

Circuitos Combinacionais Comparadores, aritmtica, ULA

Mapa de Karnaugh Ferramenta de CAD para projetos de Circuitos Integrados

Digitais - ALTERA (Quartus II) Circuitos combinacionais

Multiplexadores, decodificadores Projeto da 1a. unidade Laboratrios

39

Programa do curso 2a Unidade

Circuitos Seqenciais Flip-flops, registradores, contadores Mquinas de Estados

Projeto da 2a. Unidade CPU

Unidade de controle Instrues Memria Dispositivos de I/O

Laboratrios

40

Sistema de avaliao

Dois exerccios escolares + trabalhos em grupo e laboratrios

A mdia de cada unidade dada por: 0,7*nota do exerccio+0,3*(nota do projeto da unidade)

Os projetos devero ser entregues at o dia do exerccio escolar correspondente

Datas dos exerccios escolares: - 1o. Exerccio escolar: - 2o. Exerccio escolar: - Exerccio Final:

41

Disciplinas bsicas na rea de sistemas embarcados

42

reas de atuao profissional Telecomunicaes

Wireless application Embedded mobile computing

............................. Redes de computadores

Internet, Middleware .................................

Jogos E-commerce Robtica Equipamentos mdicos Biotecnologia (sensores, biosegurana) Controle industrial Indstria automobilstica Processamento de sinais em geral

Imagem, som ............................

43

Introduo aos Sistemas Digitais , Milos Ercegovac, Tomas Lang, Jaime H. Moreno, Editora Bookman.

Contemporary Logic Design, Randy H. Katz, The Benjamin/Cummings Publishing Company, Inc.

Principles of Digital Design, Daniel D. Gajski, Prentice Hall.

Introduction to Computer Engeneering - Hardware and Software Design, Taylor L. Booth, John Wiley & Sons.

Circuitos Digitais e Microprocessadores, Herbert Taub, MacGraw-Hill.

Referncias