Author
vannguyet
View
217
Download
0
Embed Size (px)
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