Você está na página 1de 44

Sistemas Digitais

Apresentao
Grupo de Engenharia da Computao (GRECO) Centro de Informtica Universidade Federal de Pernambuco
Abel Guilhermino da Silva Filho

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 (Verilog)*

Comear a entender o funcionamento de computadores digitais a partir de seus fundamentos. Desenvolver projetos de circuitos integrados voltados para Sistemas embarcados(Embedded systems)

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.

Onde esto os Sistemas embarcados?


Produtos de consumo Eletrodomstico Telecomunicaes Jogos eletrnicos Indstria automobilstica Indstria aeronutica

Como implement-los ? CIs? VLSI?

Organizao tpica de um sistema embarcado

Sistemas embarcados

Sistemas Embarcados Exemplo Indstria automotiva

Example: By 2010, electronics & software in cars will account for up to 40% of their value
ARTEMIS European Technology Platform

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

Domicilar: (USA)

Automao residencial

Conexo com rede externa

- 35 sistemas por residncia em 1994 - 240 sistemas em 2000


Interface c/usurio

comunicao

automao

Mobile sensor network architecture


Hospital
sensors

glucose

Low power Personal Server

gateway

Hospital information system (HIS) Mobile intelligent network


Wireless communication

Mercado Mundial de Sistemas Embarcados


(2003, 2004 and 2009)
($ Millions) ($ Millions) ($ Millions)

10

AAGR - Average Annual Growth Rate

Source: BCC Research Group

11

Sistemas embarcados

Como projet-los?

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

Tipo de problema

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

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

16

Computador
CPU Memria I/O ..... motores
Processor
Memory PC AC IR MAR MDR Address Bus Data Bus Input/Ouput

ALU Control Unit

17

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

O que uma CPU e como implement-la? O que memria e como implement-la ? O que so os dispos. I/O e como implementlos?

Via de dados

Via de endereos
Conjunto de instrues Como test-lo?

18

Computador

Particionor o problema

CPU + Mem. +
I/O

19

Computador

Como desenvolver o problema?


Estudar metodologias de projetos Estudar linguagens para descrio do problema Estudar tecnologia de implementao Estudar tcnicas de validao do problema ............................................................

20

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

21

Computador

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 ......

22

Computador

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)

23

Sistemas Embarcados
Metodologia de Projeto

Ciclo Inicial de Projeto

Sistemas Embarcados
Requisitos

24

Implementao do Computador em uma plataforma de hardware Especificao


-via de dados -Memria -I/O -Power -Freqncia -.. Comportamental
Process(d,clk) Begin if clk='1' then Q<=d; end if; end Process;

Estrutural

Validao
Simulao

Implementao
Hardware

Layout

25

Computador
Descrio do

Hardware

ASIC FPGA *

?
ASIP = Application Specific Integrated Circuit FPGA = Field Programmable Gate Array

26

O que Circuito Integrado?

27

O que Circuito Integrado?

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 ................

28

Recursos
Altera Quartus+II
Entradas: -Esquemtica -VHDL

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

Entrada

simulao

Implementao

Plataforma de desenvolvimento
Processor
Memory PC AC IR MAR MDR Address Bus Data Bus

29

Mquina de vender BomBom Exemplo


Input/Ouput

ALU Control Unit

SoC System on Chip

Mquina de vender bombons

Implementar uma mquina que vende bombons, com as seguintes funcionalidades:


A mquina aceita moedas de 5 e 10 centavos O valor de cada bombom de 15 centavos A mquina no d troco, mas guarda os 5 centavos caso o cliente deposite duas moedas de 10 Centavos O bombom liberado automaticamente assim que o valor atinge um valor igual ou maior que 15C.

Projeto
Entrada reset clk
Moedas

Sada 4

Dispositivo de I/O

Decoder BCD 7-Segm.

a f e d g bf ce d

a
g b

5C 10C

CPU - P 1

programa

Liberar bombom

32

Arquitetura do computador
Memria
Processor
Memory PC AC IR Input/Ouput

Dispositivo de entrada e sada(E/S)

MAR
MDR

Address Bus Data Bus

ALU Control Unit

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

33

Arquitetura do computador

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 (+, -, >, <, AND, OR, )

34

Componentes de uma CPU

ALU

Algumas funes da ULA


Somar nmeros Subtrarir nmeros Comparar nmeros Processar informaes

1a unidade

AC Reg

Registrador (PC, AC, MBR, MAR,..)


Armazena informaes Memria?

2a unidade

Control Unit

Unidade de controle
Mquina de estados

Como projetar e integrar estes circuitos visando uma aplicao especfica?

35

Placa de prototipao da Altera (DE2)

Placa para teste

Recursos de laboratrios
Laboratrio

36

Cerca de 20 Mquinas 10 Kits de desenvolvimento de sistemas digitais


Quartus II Development Software DE2 Education Board ByteBlaster download cable

Hardware

Laboratrios:

Mais de 80 Mquinas

Quartus II Development Software

37

Recursos disponveis para o curso

Sala de aula (30-40s) Laboratrio (20-30hs) 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 (DEII) Pgina WEB da disciplina www.cin.ufpe.br/~agsf 4 monitores da disciplina

38

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

39

Programa do curso
lgebra de Boole Postulados e teoremas, Lgica multi-nvel Hierarquia em projetos Mintermos e Maxtermos Arranjos AND-OR OR-AND Mapa de Karnaugh Circuitos Combinacionais Comparadores, MUX, DEMUX, Decodificadores Circuitos Aritmticos (Somadores, Subtratores, etc) Ferramenta de CAD para projetos de Circuitos Integrados Digitais - ALTERA (Quartus II) Projeto da 1a. Unidade Laboratrio Prova Escrita

40

Programa do curso

2a Unidade
Circuitos Seqenciais Flip-flops, registradores, contadores Mquinas de Estados Linguagem para descrio de hardware Verilog Introduo CPU Unidade de controle Projeto da 2a. Unidade Laboratrio Prova Escrita

41

Referncias
Sistemas Digitais Princpios e Aplicaes. Ronald J. Tocci, Neal S. Widmer, Gregory L. Moss. 10 Edio; Pearson Prentice Hall, 2008. VHDL Descrio e Sntese de Circuitos Digitais. Roberto DAmore; LTC 2005. 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. Manuais Tcnicos da Altera
Design kit VHDL

42

Sistema de avaliao

0,6*nota do exerccio+0,4*(nota do projeto da unidade) Datas dos exerccios escolares: - 1o. Exerccio escolar: 09/04 2o. Exerccio escolar: 21/05 Segunda Chamada: 11/06 (Assunto Todo) Exerccio Final: 18/06 (Assunto Todo) Monitoria: Quinta (15-17hs)

2 Provas escritas (60%) 2 Projetos (40%) A mdia de cada unidade dada por:

43

Disciplinas bsicas na rea de sistemas embarcados


Sistemas digitais

Infra-estrutura de software

Infra-estrutura de hardware

perfis

44

reas de atuao profissional

Telecomunicaes
.............................

Wireless application

Embedded mobile computing

Redes de computadores Jogos E-commerce Robtica Equipamentos mdicos Biotecnologia (sensores, biosegurana) Controle industrial Indstria automobilstica Processamento de sinais em geral ............................
Imagem, som Internet, Middleware .................................