Microcontroladores e Interfaces -...

31
Microcontroladores e Interfaces 3º Ano – Eng. Electrónica Industrial e Computadores Carlos Silva 2º Semestre de 2005/2006 Aula Aula - - A1 A1 21 21 Fev Fev 06 06 - - M M

Transcript of Microcontroladores e Interfaces -...

Page 1: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces3º Ano – Eng. Electrónica Industrial e

Computadores

Carlos Silva

2º Semestre de 2005/2006

Aula Aula -- A1A1

2121 FevFev 0606 -- MM

Page 2: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva2

Sumário

Objectivos da disciplina

Programa de “Microcontroladores e Interfaces”

Avaliação

Bibliografia

Links importantes

Atendimento

Page 3: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva3

Objectivos

Após a conclusão com sucesso da disciplina, o aluno deverá ser capaz de:

Explicar a arquitectura de um processador e de sistemas baseados em processadores e microcontroladores (sistemas computadorizados).

Explicar a motivação e os tipos de implementação de caches e de memória virtual, bem como avaliar o seu impacto na performance.

Explicar a motivação e a implementação de pipelines, bem como avaliar o seu impacto na performance.

Explicar a motivação do sistema I/O e a sua implementação, bem como avaliar o seu impacto sobre a performance e adquirir a capacidade para projectar a interface de periféricos ao processador/microcontrolador.

Tomar conhecimento dos principais barramentos e periféricos séries e paralelos.

Page 4: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva4

Programa

1. Performance de sistemas baseados em microprocessadores e microcontroladores

Definição de performanceEscolha de programas para avaliar a performanceComparação da entre vários sistemas performance

2. Pipeline do ProcessadorPipeline do caminho de dadosControlo do pipelineStructural, data e control hazardsStall e ForwardingExcepções e interrupções

Page 5: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva5

Programa

3. Hierarquia de memóriaMemória cacheAvaliação e medição da performance da cacheMemória virtual

4. Interface do processador aos periféricosBarramentosMódulos I/OProgrammed I/OInterrupt-driven I/ODirect Memory AccessInterface externa: ATA, PCI, SCSI, USB e Firewire

Page 6: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva6

Programa

5. Standards, dispositivos e interfacesSériesParalelosArmazenamento de dados

6. Projecto de sistemas baseados em microcontroladores

Page 7: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva7

Programa

Notas – Mudanças relativamente ao passado:Serão usados exemplos de vários microprocessadores/microcontroladores: i8051, Pentium, PowerPC, ARM e MIPS.

Mas será requisito apenas conhecimento prévio em programação do i8051.

No estudo do pipeline será ensinado os rudimentos da programação do MIPS.

A ordem dos assuntos será alterada de modo a dar um melhor apoio aos Laboratórios Integrados II.

Page 8: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva8

Programa

Havará dois trabalhos baseados em microcontroladores em LI 2.

Nova ênfase:Programação dos dispositivos usando linguagem assembly.

Ligação da linguagem C à linguagem assembly para microcontroladores.

Page 9: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva9

Disciplinas relacionadas

MicroprocessadoresMicroprocessadores

Sistemas DigitaisSistemas Digitais

Microcontroladores eInterfaces

Microcontroladores eInterfaces

Forte dependência

Page 10: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva10

Sistema de avaliação

A avaliação está dividida em duas componentes:

A avaliação da disciplina é do tipo periódica:RIAPA – A avaliação periódica é feita pontualmente durante cada semestre, em momentos classificativos pré-determinados.

A avaliação periódica será constituída por:2 Mini-testes – 40%1 Exame – 60%.Notas:

O exame e os mini-testes avaliarão conhecimento e não a velocidade.Os mini-testes e o exame são sem consulta.

Page 11: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva11

Regime de Faltas

A presença nas aulas teórico-práticas é obrigatória, sendo condição de passagem a presença em pelo menos a 2/3 das aulas leccionadas.

Haverá de igual modo marcação de presença nas aulas teóricas, sendo condição de passagem a presença em pelo menos 2/3 das aulas leccionadas.

Excepções:Alunos com estatuto de trabalhador/estudante.

Alunos com disciplinas em atraso, mas apenas com um sistema compensatório.

Page 12: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva12

Formato das aulas

Não haverá uma divisão estanque entre aulas teóricas e aulas teorico-práticas.

Page 13: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva13

Bibliografia

Heuring, V., “Computer Systems Design and Architecture”, Prentice Hall, 2003.

Hennessy, J. e Patterson, D., “Computer Organizationand Design: The Hardware/software Interface”, MorganKaufmann Publishers, 2004.

Stallings, W., “Computer Organization and Architecture”, MacMillan, 1993.

Carpinelli, John, “Computer System: Organization & Architecture”, Addison Wesley, 2001.

Page 14: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva14

Informação administrativa

Aulas:Aulas teóricas: terça-feira - 11:00 -13:00HAulas teorico-práticas: terça-feira - 15:00 –16:00H / 16:00 – 17:00H

Atendimento:Terça-feira: 17:30 – 19:30H

Page 15: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Por quê estudar “Microcontroladores e

Interfaces” ?

Vale o esforço ?

Page 16: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva16

Por quê estudar “Microntroladores e Interfaces” é

importante ?Biónico:

Sensores embutidos nos dedos de latex instantaneamente detectam calor e frio, e uma interface electrónica no seu antebraço artificial estimulam os nervos da parte superior do seu braço que passa a informação ao cérebro.Este sistema cujo custo ascende a mais de 3000 €permite que a sua mão sinta pressão e peso, por isso pela primeira vez desde que perdeu o seu braço num acidente em 1986, ele pode pegar numa lata de refrigerante sem esmaga-la ou deixa-la cair pelos dedos.

VidaVida

Adaptado de Patterson@UCB

Page 17: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva17

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Wireless access (tecnologia Bluetooth)Display com servidor XDisplay 96x120 pixeisControlador de infravermelhoSomDuas portas sériesSistema Operativos: Linux

ComodidadeComodidade

Page 18: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva18

Por quê estudar “Microntroladores e Interfaces” é

importante ?Mais de 30 % do custo do carro é hoje gasto na electrónica90 % de toda a inovação será baseada em sistemas electrónicos

Extraído da revista Computer vol. 35, nº1, 2002

Seg

uran

Seg

uran

çç aa

Page 19: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva19

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Correcção da tensão da rede: usando um filtro série

iS LR

∆v

vL

Rede Eléctrica

vS

iL1

iL2

Carga Não

Linear

CargaLinear

Page 20: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva20

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Correcção da tensão da rede: usando um filtro série

Page 21: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva21

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Correcção da tensão da rede: usando um filtro série

Inversor

+

ia

Filtro Activo Série

Controlador

a

b

c

N

vsaRede

Eléctrica

ib

icvsb

vsc

vca

va

Cargavcb

vcc vb

vc

*cav*cbv*ccv

DCV

iaibic

vsavsbvsc

-Fonte de

Alimentação

DCV

Page 22: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva22

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Que tipo de controlador deve ser usado ?Primeira solução: microcontrolador i80296SA @ 40 MHz

Page 23: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva23

Por quê estudar “Microntroladores e Interfaces” é

importante ?Segunda solução: Computador pessoal P3 @ 733 MHz, 512 MB RAM; OS Linux com extensão para tempo real; placa de aquisição de dados.

Page 24: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva24

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Qual é a melhor solução ?

Page 25: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva25

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Primeira solução: microcontrolador i80296SA @ 40 MHz

Cálculos usando a teoria p-q:

• Números inteiros (8 bit) 50 µs

Entrada/Saída de dados:

• 300 amostras/ciclo (15 kHz) atraso do controlador 67 µs

• Como os cálculos usam as amostras obtidas no ciclo anterior o tempo total será de 67 µs

Page 26: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva26

Por quê estudar “Microntroladores e Interfaces” é

importante ?Segunda solução: Computador pessoal P3 @ 733 MHz, 512 MB RAM; OS Linux com extensão para tempo real; placa de aquisição de dados.

Page 27: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva27

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Características da placa de aquisição: Tlatência-ADC = 8 µs; Tlatência-DAC = 3 µs

Tplaca = 6 x Tlatência-ADC + 2 x Tlatência-DAC = 54 µs

Page 28: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva28

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Tmemória = 8 x TCAC = 8 x 70 ηs = 0,56 µs

Page 29: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva29

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Tcálculos teoria p-q = 4 µs

Page 30: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva30

Por quê estudar “Microntroladores e Interfaces” é

importante ?

TPCI-Burst = [8 + (n-1)] x TCLK = 8 x 30,3 ηs = 0,243 µsTPCI = 8 x 0,243 = 1,94 µs (fCLK-PCI = 33 MHz)

Page 31: Microcontroladores e Interfaces - alibaba.dei.uminho.ptalibaba.dei.uminho.pt/~csilva/mint/download/A1.pdf · capacidade para projectar a interface de periféricos ao ... Programação

Microcontroladores e Interfaces 2005/2006 – Carlos A. Silva31

Por quê estudar “Microntroladores e Interfaces” é

importante ?

Ttotal ≈ 60 µs

Esta análise não considera os seguintes efeitos:• A latência devido à memória cache.

• A latência devido à memória virtual.

• A latência devido à transição entre user space e kernelspace (comutação de contexto: guardar/recuperar registos, pilha, espaço de endereçamento, esvaziar cache). Ocorre frequentemente em sistemas microkernel.

• O tempo de execução das funções de leitura e escrita na placa de aquisição de dados (6 leituras e 2 escritas).

(Tmínimo = 71 µs)