Вы находитесь на странице: 1из 8

PR

UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN

EL68E-2015-1 Sistemas Embarcados Prova de Recuperao S11 & S12


Data: 21 de Julho de 2015
Professor: Rafael E. de Ges
Aluno:________________Gabarito__________Turma:_______Matricula:____________________

[Questo 1 :: (3 pts) Algoritmos e Linguagem Assembly ]


Desenvolva uma funo em Assemby para CortexM3, que encontre o mnimo valor em mdulo de
uma regio de memria apontada pelo primeiro parmetro e preenchida com nmeros inteiros
sinalizados . O nmero de valores preenchidos passado pelo segundo parmetro. A funo deve
retornar um ponteiro para o menor valor em mdulo.
int * fMinAbs( int * end_vetor , unsigned int size);
1a.) Apresente, um fluxograma para a soluo do enunciado.

1/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

1b.) Com o auxlio da tabela de instrues, codifique o algoritmo seguindo o padro ATPCS.
Label

Instruo

Operandos

Comentrio(1)

fMinAbs

PUSH

{R4,R5}

Salva contexto

MOV

R12,#0x7FFFFFFF Minimo = 2Giga

CBZ

R1, retorno

Qtde = 0?

LDR

R3,[R0]

L valor da memria

CMP

R3,#0

Valor >0?

BPL

Positivo

MOV

R4,#-1

MUL

R3,R3,R4

CMP

R12,R3

BGE

Atualiza

Proximo

MOV

R12,R3

MOV

R5,R0

Pos_min = posicao

SUB

R1,R1,#1

Decrementa qtde

ADD

R0,R0,#4

Incrmenta posicao

Laco

MOV

R0,R5

Retorna pos_min.

POP

{R4,R5}

Recupera contexto

BX

LR

Laco

Positivo

Atualiza

Proximo

Retorno

Valor = -1 x valor

Valor < minimo

(1) Descrever o propsito da instruo de acordo com o algoritmo;

2/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

[Questo 2 :: (2 pts) Arquitetura de HW e memrias]


Um sistema embarcado de comunicao utiliza um clculo de CRC (Cyclic Redundancy Check) para
garantir a integridade dos dados recebidos. A funo que implementa o clculo apresentada abaixo.

2a.) Levando em conta a listagem, o disassembly, o mapa de


memria e o valor dos registradores, em que tipo de memria est
armazenada a tabela de CRC (table)? Em qual etapa do processo de
construo do executvel este endereo definido?

3/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

2a.) Est armazenado na memria FLASH pelo endereo de memria em R3 (0x1A84) e o mapa de
memria mostra que on-chip flash. Isso definido na etapa de ligao (linkagem).
2b.) Considerando os diagrama de tempos e larguras de barramentos retirados dos datasheets das
memrias SRAM e FLASH, em que regio de memria a vrivel table deve ser alocada para garantir
melhor eficincia em relao ao tempo de execuo da rotina? Justifque sua resposta e o critrio
adotado.
Memria SRAM: tAA = 70 ns, tAOE = 50 ns, tHZ = 30 ns, tOH = 25 ns;

D7..D0

Memria FLASH: tACC = 150 ns, tCE = 120ns, tOFF = 50 ns, tOH = 40ns.

D31..D0

Deve ser mantido o armazenamento na memria flash pois apesar de a RAM ser mais rpida, a largura
do barramento 4 vezes menor.
SRAM : (TAA+THZ = 100ns )
FLASH (tACC + tOFF = 200 ns)

4/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

[Questo 3 :: (2 pts) Processo de Desenvolvimento e Modelagem]


Aproximando-se da entrega do Controlador de Elevador, alm do modo servio e o subsistema de
acelerao, para atender uma norma de instalao, o cliente necessita a incluso de um boto de
emergncia.
A qualquer momento, um boto de emergncia, lido por Polling atravs do driver de GPIO, pode
interromper a movimentao do motor desacelerando em menos de 1s. Ao ser pressionado
novamente o movimento deve ser reiniciado com mesma curva de acelerao.
3a.) Para o Diagrama de Estados abaixo, referente thread de controle de acelerao, acrescente o
comportamento do boto de emergncia e as transies correspondentes.

5/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

Apenas a histria no seria suficiente pois deve haver uma curva de acelerao e a direo do
movimento deve ser mantida. Alm disso, se voltar direto para o Descendo ou Subindo, haver um
tranco. Outra opo o uso de uma varivel para saber se estava subindo ou descendo.
3b.) Em que fase do do ciclo de desenvolvimento esse redesign poderia ser antecipado? Justifique.
Na fase de estudo do dominio do problema em que as normas aplicaveis so levantadas.

6/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

[Questo 4 :: (3 pts) Programao concorrente e Escalonamento]


Considerando o cdigo de um Sistema Embarcado com 3 threads concorrentes e cujos LEDs virtuais
so apresentados no display OLED.

7/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

4a.) Elabore um diagrama de objetos para o mesmo.

4b.) Explique o efeito que o uso de um algoritmo de escalonamento com prioridade dinmica teria
neste caso.
O recurso compartilhado protegido por mutex o OLED. As threads de menor prioridade (A e B)
poderiam ter sua prioridade aumentada para liberar o recurso o mais rpido possivel de modo a no
atrasar a thread C. e no houvesse, haveria uma influncia maior das threads A e B na C,

8/8
EL68E-2015-1 Sistemas Embarcados Prova Recuperao Turmas S11 & S12

Вам также может понравиться