1 Introdução aos sistemas de tempo real e embebidos

Tamanho: px
Começar a partir da página:

Download "1 Introdução aos sistemas de tempo real e embebidos"

Transcrição

1 1 Introdução aos sistemas de tempo real e embebidos 1.1 Definição de sistema de tempo real Sistemas de tempo real podem ser definidos como: qualquer sistema no qual o tempo para produzir resultados (ou saídas) é significativo, isto é a correcção do sistema depende não só dos resultados da computação, mas também do instante de tempo em que são produzidos os resultados. Pelo contrário, em sistemas de tempo não real, sistemas batch ou sistemas de tempo partilhado (time sharing) não é importante o instante no qual os resultados da computação estão disponíveis, mas sim apenas a sua correcção. Um sistema de tempo real não envolve necessariamente um computador e mesmo envolvendo um computador não é obrigatório que este seja controlado por um sistema operativo de tempo real, basta que a aplicação que nele se executa cumpra as metas temporais estipuladas. Como mostra a figura seguinte, um computador poderá ser um elemento fundamental de um sistema de tempo real, mas está normalmente inserido num sistema maior, envolvendo sensores e actuadores que recebem e fornecem informação de e para o ambiente. Sistema de controlo Sistema controlado r(k) u ( k ) u ( t ) w ( t ) Computador D/A Plant y (t) y ˆ ( k ) A/D Fig. 1: Sistema de controlo digital típico (Sistema de tempo real) 18 de fevereiro de 2014 T01 1/29

2 r(k) sinal de referencia (digital) u(k) sinal de controlo (digital) u(t) sinal de controlo (contínuo) w(t) sinal de perturbação (contínuo) y(t) sinal de saída (contínuo) ŷ (k) - sinal de saída (amostrado) Como mostra a figura anterior, um sistema de tempo real pode ser dividido em 2 grandes blocos: o sistema de controlo, e o sistema controlado. De notar que o sistema controlado é parte integrante do sistema de tempo real. Por exemplo, numa fábrica automatizada, o sistema de controlo consiste no(s) computador(es) e interfaces homem-máquina que gerem e coordenam as actividades na fábrica. O sistema controlado consiste nos robots, linhas de montagem e as várias peças. Exemplos de sistemas de tempo real familiares são: o microcomputador que controla a injecção nos motores dos carros modernos (Electronic Control Unit - ECU ou centralina), o sistema de controlo de processos nas refinarias, os sistemas de controlo de voo num avião (ex.: simulink f14), sistemas de aquisição de bilhetes distribuídos por vários balcões, e o sistema de pagamento multibanco (se estiver online). Uma concepção errada normalmente associada com sistemas de tempo real é a de que os sistemas de tempo real devem ser apenas rápidos. Mas o que caracteriza essencialmente um sistema de tempo real é a de que ele deve cumprir metas temporais (deadlines) explícitas. Se se conseguir provar que um sistema de tempo real cumpre as suas deadlines (usando uma análise de pior caso, e não uma análise de média), então diz-se que o sistema é previsível. Neste contexto, previsibilidade significa que, quando uma tarefa ou um conjunto de tarefas é activada, é possível determinar quando essa tarefa ou grupo de tarefas terminam, dentro das metas temporais associadas. Na figura anterior o computador gera um sinal de controlo digital, u(k), que antes de ser aplicado ao processo ou sistema a controlar (plant), tem que ser convertido para analógico, u(t), através de um conversor digital-para-analógico (A/D). Por outro lado, o sinal de saída contínuo, y(t), deve ser amostrado, antes de ser lido pelo computador, pelo conversor analógico-para-digital (A/D). 18 de fevereiro de 2014 T01 2/29

3 Vamos admitir que, de T em T segundos, o computador lê o valor da saída do processo, executa um algoritmo de controlo, aplicando assim o sinal de controlo ao processo (plant) T E segundos depois. Se esta for apenas a única tarefa desempenhada pelo computador, temos então o seguinte diagrama temporal: TE T Fig. 2: Diagrama temporal para uma única tarefa síncrona Consideremos agora que neste sistema existe uma entrada de um alarme, possivelmente relacionado com um valor demasiado elevado da perturbação. Poderíamos então ter o seguinte diagrama temporal: tarefa aperiódica tarefa periódica T E E T T T Fig. 3: Diagrama temporal para uma tarefa sincrona e outra assíncrona Repare-se que, a ocorrência do evento assíncrono E, imediatamente antes de ser iniciada a tarefa síncrona, irá implicar (caso esta última seja de menor prioridade do que a tarefa assíncrona), um atraso na inicialização da tarefa síncrona e consequentemente também na produção do sinal de controlo, mas ainda sem que a deadline seja ultrapassada. 18 de fevereiro de 2014 T01 3/29

4 Assim, um sistema de tempo real pode ser classificado quanto à periodocidade, dos estímulos a que deve responder, e consequentemente, à execução periódica ou não dos processos ou tarefas associadas. Estes podem então ser de dois tipos: periódicos, ou inicializados por tempo (time-triggered) - processos que são executados ciclicamente. Normalmente o processamento de sensores, ou a execução de um loop de controlo, são actividades periódicas. aperiódicos, ou inicializados por eventos (event-driven ou interrupt driven) - processos que são desencadeados por ocorrência de acontecimentos externos assíncronos. Exemplo: alarmes Num mesmo sistema de tempo real, podem coexistir os dois tipos de processos acima, situação essa onde é mais difícil de garantir previsibilidade. Os processos podem ainda ser: permanentes - existem desde que o sistema foi inicializado. É o caso da maioria dos processos periódicos. transitórios, ou criados dinamicamente - Um avião entra no espaço aéreo de um computador de controlo de tráfego. É então criado um processo que periodicamente segue o voo até que o avião deixe o espaço aéreo. 1.2 Caracterização de sistemas de tempo real Metas temporais (deadlines) Num sistema de tempo real, algumas das tarefas têm metas temporais associadas. Se o intervalo de tempo que decorre desde que uma tarefa é completada até ser novamente activada (i.e., que deve começar a ser executada) é curto, então existe uma meta temporal rigorosa (tight). As deadlines rigorosas implicam que os projectistas devem desenvolver técnicas simples e rápidas para reagir a este tipo de activação de tarefas. De um modo geral, quanto mais apertada for a deadline, mais difícil será a tarefa de projecto. 18 de fevereiro de 2014 T01 4/29

5 Fig. 4: deadlines rigorosa (tight) As deadlines podem ser também classificadas por granularidade e rigidez. a) Granularidade A sua granularidade é fina se o tempo é pequeno e grosseira (coarse) se é grande. deadline a) deadline de granularidade fina tempo de computação deadline b) deadline de granularidade coarse tempo de computação Fig. 5: Granularidade das deadlines b) Rigidez Uma questão que se pode pôr é se vale ou não a pena executar uma tarefa se a sua meta temporal for ultrapassada. No caso de tarefas de tempo real hard, então não vale a pena. No caso de tarefas de tempo real soft, elas devem ser executadas. Visto de outra forma, um sistema de tempo real é considerado hard real-time, se uma falha na resposta a um evento que não ocorra dentro de uma dada meta temporal, é considerada como uma falha completa do sistema e que poderá ter consequências catastróficas. 18 de fevereiro de 2014 T01 5/29

6 Por exemplo um detector de proximidade de um veículo automático detecta um objecto na sua trajectória, mas este evento não foi processado no intervalo de tempo necessário (por exemplo ½ segundo) para evitar uma colisão. E se o objecto for uma pessoa? Um sistema é considerado soft real-time, se mesmo após impossibilidade de responder a um evento dentro de uma dada meta temporal, o sistema poderá recuperar e continuar a produzir resultados fiáveis. Por exemplo um leitor de vídeo poderá não conseguir descodificar a informação para apresentar um dado frame, sem que isso impossibilite a visualização, desde que a frequência de frames perdidos não seja elevada. A frequência aceitável de falhas no cumprimento de uma deadline é imposta pelo projecto do sistema e varia com a finalidade deste. Diferentes técnicas podem ser usadas para tarefas hard e soft. Na maioria dos casos, as tarefas hard são pré-alocadas e pre-escalonadas (i.e., é determinada a altura de serem executadas antes de elas serem necessárias) para assegurar que cumprem as suas metas. As tarefas soft são muitas vezes escalonadas com algoritmos de escalonamento (scheduling) não de tempo real, onde a preocupação se centra no tempo de resposta médio. SOFT Pouca previsibilidade - o escalonamento dinâmico de tarefas pode significar que algumas tarefas demoram mais do que o desejado O desempenho deteriora-se em situações de pico de trabalho Uso eficiente de recursos HARD Boa previsibilidade - assegura-se que todas as metas temporais são cumpridas desempenho uniforme independente do número de solicitações Uso ineficiente de recursos Fiabilidade Muitos sistemas de tempo real operam em condições de fiabilidade extrema - por exemplo, o sistema de controlo de um reactor atómico, instrumentação médica, etc. Um factor que distingue um sistema de tempo real de um sistema não de tempo real é o facto que as 18 de fevereiro de 2014 T01 6/29

7 consequências de uma falha são normalmente mais drásticas, dado os sistemas de tempo real poderem interactuar com o ambiente. Uma outra característica destes sistemas é a de que, no caso de uma ocorrência de uma falha, o sistema a detecte (detecção de falhas) e recupere dela (sistema tolerante a falhas). No caso de tal ser impossível o sistema deve acabar a sua execução de uma maneira controlada (gracefull degradation). Em sistemas de segurança crítica (critical safety systems), alguns processos, denominados processos críticos, devem forçosamente cumprir as suas deadlines, senão alguma catástrofe pode ocorrer. Uma nota importante é a de que nem todos as tarefas hard são tarefas críticas, e consequentemente, nem todos os sistemas de tempo real são sistemas críticos. Existem algumas técnicas usadas para assegurar que os processos críticos asseguram as suas metas usando: Análise off-line - neste caso temos os métodos formais de especificação de software, que provam matematicamente a correcção de um programa e o cumprimento das deadlines, através da sua especificação, por exemplo usando teoria de conjuntos e lógica de predicados de 1ª ordem. Projectar o sistema para reservar recursos necessários aos processos críticos. Redundância de recursos quer de hardware quer de software Tamanho e complexidade do sistema Os sistemas de tempo real variam em tamanho e complexidade. Em sistemas pequenos, todo o código reside normalmente em memória, ou, caso haja fases bem definidas, cada módulo de código é trazido para a memória antes de ser efectivamente necessário. (Pois o uso de memória secundária pode implicar imprevisibilidade.) Em grandes sistemas, por vezes não é possível que todo o código residir em memória central, de modo que poderá ser necessário assegurar que pelo menos as tarefas hard residam permanentemente em memória principal. De um modo geral, os sistemas de tempo real que interactuam com o ambiente, são sistemas complexos. Por este motivo, têm de prever as diferentes mudanças existentes ou passíveis de 18 de fevereiro de 2014 T01 7/29

8 existir nesse ambiente, o que complica o projecto inicial do sistema, e irá implicar manutenção frequente e actualizações ao longo da vida do sistema Coordenação de tarefas Um sistema de tempo real normalmente desempenha várias funções, que para o utilizador parecem ser executadas simultaneamente. É o caso, por exemplo, de ler o relógio de tempo real, amostrar os dados dos sensores, calcular algoritmos de controlo, atender o operador, actualizar o monitor de saída, armazenar dados, etc. Em termos de software, a cada uma dessas funções está normalmente associado um processo, que executa concorrentemente com os outros processos, caso se trate de um sistema monoprocessador, ou em paralelo, no caso de um sistema multiprocessador ou distribuído. O suporte para a coordenação dos diferentes processos poderá ser implementado por um sistema operativo de tempo real Interacção com o ambiente Por definição, um sistema de tempo real responde a estímulos externos, e, normalmente, com base nestes, vai interactuar o ambiente. Assim, interfaces de entrada e saída de dados, normalmente de vários tipos, são sempre parte integrante de um sistema de tempo real. 1.3 Definição de sistema embebido Sistemas embebidos podem ser definidos como: sistemas que envolvem controlo imediato de hardware e que são limitados a efectuarem uma função específica. É também considerado que um sistema embebido inclui um microprocessador ou microcontrolador, de modo que o sistema embebido é composto não só por hardware mas também por software. Não é obrigatório que um sistema embebido seja também um sistema de tempo real. Segundo a definição acima, exemplos de sistemas embebidos poderão ser: - controlador remoto (responde às teclas pressionadas enviando os sinais de infravermelhos correspondentes) - teclado PS/2 - um leitor de DVD (pode ser um soft STR) - uma unidade portátil de ultra-sons. 18 de fevereiro de 2014 T01 8/29

9 - alguns sistemas num automóvel podem ser embebidos: controlo de ignição, suspensão, navegação, etc.. Por outro lado um telemóvel, que na década de 90 do século 20 poderia ser considerado como um sistema embebido, deixou de o ser assim considerado, senão na própria década de 90 pelo menos na década seguinte, pois a limitação para efectuarem uma função específica (de telefone móvel) foi gradualmente sendo eliminada. Hoje em dia muitos telemóveis podem executar uma vasta gama de aplicações (não relacionadas com chamadas telefónicas) e são micro computadores mais poderosos que os micros da década de 80 do século Hardware de suporte para sistema de tempo real Dependendo do sistema de tempo real o hardware necessário poderá variar, mas como já foi indicado necessitará de existir alguma meio de comunicação com o ambiente, ie. entre o sistema de controlo e o sistema controlado, e que normalmente são referidos por sensores e actuadores. Se considerarmos que no sistema existe um processador teremos de considerar que além do próprio processador e memória para software terão de existir interfaces para periféricos, pelo menos sensores e os actuadores Interfaces para comunicação com o ambiente São necessários para converter quantidades físicas de/para sensores/actuadores num padrão de bits e vice-versa: Quantidades digitais Quantidades analógicas Pulsos e trens de pulsos Telemetria 18 de fevereiro de 2014 T01 9/29

10 O acesso a um interface pode ser efectuado através de portos de entrada saída ou memória de entrada-saída. Pode também ser utilizado DMA para acesso à memória sem intervenção do CPU (Daniel, 2008) Interfaces de sinais digitais As quantidades digitais podem ser binárias (bit: relé aberto ou fechado, byte,...) ou complemento a 2, BCD, etc. Por exemplo o interface para teclado PS/2 é digital. Os bytes com os scancodes são decompostos em bits e comunicados através de um protocolo série síncrono. output /output Fig. 6: Interface digital de entrada / saída Como entradas e saídas digitais são frequentes, existem circuitos integrados que implementam funções deste tipo. Um exemplo é a PPI (Programmable Peripheral Interface) 8255 da Intel, cujo diagrama esquemático se ilustra a seguir. Esta interface dispõe de 24 linhas de I/O, que podem se conectar a qualquer periférico TTL compatível (teclados, controladores de disco, impressoras,...) 18 de fevereiro de 2014 T01 10/29

11 A 0 A 1 WR RD Data bus (8 lines) Intel 8255A Port A (8 lines) Port B (8 lines) Port C (8 lines) Fig. 7: PPI (8255A) Estas 24 linhas podem ser individualmente programadas em 2 grupos de 12 bits, em 3 modos de operação. No modo 0, cada grupo de 12 pinos pode ser programado em conjuntos de 4 pinos para entrada/saída. No modo 1, cada grupo pode ser programado para ter 8 linhas de entrada ou saída. No modo 2, um dos portos é bidireccional (8 linhas), e são utilizadas 5 linhas do outro grupo para handshaking. Os vários modos de funcionamento podem ser seleccionados enviando palavras de controlo para um registo do dispositivo. Se acedido num esquema de entrada - saída mapeada na memória, requer 4 palavras na memória principal, daí as linhas de endereço A 0 e A 1, apenas Interfaces de pulsos Alguns sensores fornecem a saída em termos de trens de pulsos. O uso de motores passo-apasso como actuadores requer saídas de pulsos. Alguns dos controladores mais tradicionais requerem também pulsos, por exemplo, válvulas que controlam fluxos requerem ligar ou desligar motores AC ou DC, sendo o tamanho do pulso proporcional à variação da abertura da válvula requerida. entrada: Na sua forma mais simples, uma interface de entrada de pulsos consiste num contador ligado a uma saída da plant. O contador é inicializado pelo computador, e após um determinado intervalo de tempo o seu conteúdo é lido pelo computador. 18 de fevereiro de 2014 T01 11/29

12 saída: Os geradores de pulsos podem ser de 2 tipos: i) podem enviar um trem de pulsos de duração fixa (O computador pode ligar ou desligar o gerador, ou carregar um registo da interface, que se decrementa a cada pulso. Quando esse registo chegar a zero, então o gerador é desligado. Um dispositivo deste tipo pode ser usado para controlar um motor passo-a-passo. ) ii) ou um pulso de largura variável. (O computador pode manter uma linha on ou off durante um certo intervalo de tempo (neste caso uma interface digital de saída serviria perfeitamente) ou pode carregar um registo com um número especificando a duração do pulso, e ser a lógica da interface a encarregar-se da sua geração. Fig. 8: Interface de pulsos 18 de fevereiro de 2014 T01 12/29

13 Intimamente relacionados com contadores de pulsos estão os relógios de tempo real (timer). Se um contador executar uma contagem descendente de um valor pré-definido a uma frequência constante pode funcionar como um timer. Quando chegar a zero pode interromper o CPU e sinalizar que o intervalo de tempo passou Interfaces analógicas A conversão de quantidades analógicas em digitais envolve 2 operações: i) amostragem ii) quantificação Como mostra a figura, a maior parte dos conversores A/D emprega um circuito de sampleand-hold antes da ADC, que mantém o nível do sinal enquanto ele está a ser quantificado. Fig. 9: Circuito de entradas analógicas 18 de fevereiro de 2014 T01 13/29

14 O funcionamento normal desta interface é o seguinte: O computador manda começar a conversão enviando um pequeno pulso (tipicamente 1 ms) ao conversor (Convert). Em resposta a interface abre momentaneamente o sample-and-hold, e seguidamente é iniciada a quantificação, que pode demorar milisegundos. Quando esta termina, a ADC levanta uma bandeira (Conversion complete), que pode ser utilizada para interromper o CPU. Independentemente da diminuição de preços das ADCs, normalmente este integrado é partilhado por vários canais analógicos. Para isso, à entrada do sample-and-hold é usado um multiplexador (neste caso analógico - não confundir com os digitais). Com um sistema deste género, antes de se iniciar a conversão é necessário escolher o canal a ser convertido (Channel Select). Já a operação de um conversor digital-analógico (DAC) é mais simples, e portanto mais barato. Por esta razão é normalmente usado uma DAC por cada canal de saída: DAC 0 DAC 1 DAC 2 Fig. 10: Sistema de saídas analógicas Telemetria Os dados podem também ser transmitidos por telemetria através de: 18 de fevereiro de 2014 T01 14/29

15 cabo eléctrico, cabo coaxial, fibra óptica, rádio, ou através da linha telefónica. Esta transmissão poderá ser série (mais económica), paralela ou poderá ser usado um interface de rede, ou ainda outros barramentos como USB ou CAN. No caso de transmissão série via RS-232 ou compatível, esta poderá ser assíncrona, normalmente usada para transferir uma pequena quantidade de caracteres (modo de transmissão caracter a caracter), ou síncrona usada para transferir grandes volumes de dados (modo de transmissão por bloco). Do mesmo modo que no caso das interfaces digitais, os construtores têm disponíveis circuitos integrados especializados para comunicações de dados. Como a UART (Universal Assynchronous Receiver/Transmitter) 8250, e a USART (Universal Synchronous / Assynchronous Receiver/Transmitter) 8251 da Intel A unidade de processamento central Independentemente dos blocos usuais de um CPU (registos gerais, unidade aritmética e lógica e unidade de controlo), dependendo do sistema que se pretende implementar a unidade central de processamento poderá necessitar de incluir: Multiplicador de números em vírgula flutuante em hardware (floating point hardware multiplier) - algoritmos de controlo digital podem ser formulados recorrendo a equações diferença (o equivalente discreto de equações diferenciais) utilizando os dados de entrada, saída e de estado do sistema. A resolução das equações diferença consiste, em última análise, em somas e multiplicações de dados reais, normalmente em vírgula flutuante que devem ser executadas rapidamente. Os processadores digitais de sinal (DSP) são optimizados para efectuar estas operações. Controlador de interrupções vectorizadas programável - muitos dos dispositivos de interface operam assincronamente. A verificação se os periféricos estão prontos para uma transferência de dados (polling), pode ser efectuada periodicamente. Implica no 18 de fevereiro de 2014 T01 15/29

16 entanto a suspensão de qualquer outra rotina enquanto se procede à verificação (e ao seu eventual tratamento). Para poder libertar o CPU deste ciclo de busy-waiting (em que se traduz a operação de polling) podem ser utilizadas interrupções vectorizadas, onde um periférico assinala à CPU que necessita de transferir dados (a), interrompendo a CPU a tarefa corrente (b), consultando no vector de interrupção o endereço da rotina de atendimento da interrupção correspondente (c), executa-a (d) e só depois volta a processar a tarefa corrente (e). CPU Memória RAM PC INT n (a) (b) (e) Processo 0 Tratamento do periférico: n (d) (c) Vector de interrupção n Fig. 11: Interrupção vectorizada Hardware timer - muitos dos processos de um sistema de tempo real têm uma execução periódica. Outros ainda poderão requerer suspensão da sua execução por um determinado intervalo de tempo (idle). Daí a necessidade de um (ou mais) relógios de tempo real, que podem ser utilizados para interromper o CPU após um intervalo de tempo pré-definido. 18 de fevereiro de 2014 T01 16/29

17 Watchdog timer - são relógios de tempo real, normalmente contadores incrementados (ou decrementados) com uma dada frequência automaticamente. Se ocorrer um overflow ou o valor do contador atingir 0 sinaliza-o ao CPU, podendo mesmo ser executada uma dada tarefa. Este timer pode ser usado para libertar o sistema de bloqueios. Se for programada uma tarefa para periodicamente inicializar o timer, se por algum motivo o sistema bloquear essa tarefa não será executada, de modo que o timer chegará a overflow ou 0, podendo então ser executada uma tarefa que recupere o sistema. Priority hardware scheduler - num sistema de tempo real, normalmente existe um conjunto de processos, com prioridades associadas, que executam concorrentemente. Por este facto, quando existe uma comutação do processo activo, é necessário salvaguardar o estado do processo (ponteiro da instrução, registo de estado, espaço de trabalho, outros registos) que se encontrava na posse de CPU, escolher de entre os processos prontos a executar aquele que irá executar, e restaurar o estado desse processo. Todas estas operações podem ser feitas por software (responsabilidade de um real-time kernel), mas podem também ser feitas por hardware, o que as torna mais rápidas. O transputer é um exemplo de um processador com real-time scheduler. Dependendo do objectivo do sistema poderão ser utilizados processadores mais ou menos complexos, tais como: microprocessadores comuns microcontroladores processadores risc processadores digitais de sinal processadores paralelos Microcontroladores Um microcontrolador é um tipo especifico de microprocessador cuja principal tarefa é controlar o hardware anexo, como por exemplo uma lâmpada, um motor, etc.. Por isso 18 de fevereiro de 2014 T01 17/29

18 normalmente tem mais pinos para transportar sinais de entrada saída que um microprocessador. Um microcontrolador poderá ser muito simples, não dispondo de FPU ou suporte para interrupções e um conjunto muito simples de instruções assembler, como por exemplo o PIC16C54 (embora esta família de microcontroladores não se limite a dispositivos tão simples) ou dispor de todas as características referidas no ponto 1.4.2, e ainda memória RAM interna, conversores A/D e interfaces de comunicação Processadores RISC Para aplicações de segurança crítica, é necessário verificar formalmente o desempenho do processador. Tal pode ser difícil em processadores comuns ou CISC, dado que uma instrução complexa (implementada com várias em micro código) pode tomar vários ciclos de relógio (10 a 20) e podem não existir especificações completas sobre a codificação dessas instruções de alto nível em micro-código. Em arquitecturas RISC puras, uma instrução toma apenas um ciclo de máquina (definido como o tempo necessário para uma instrução com 2 endereços) sendo possível matematicamente verificar o seu desempenho. É comum que este tipo de processadores tenha um conjunto de instruções reduzido (Reduced Instruction Set Computer) quando comparado com um CISC (Complex Instruction Set Computer). Também o número de registos é reduzido, para minimizar o número de instruções que operam com estes e porque numa mudança de contexto, isto é quando existe uma comutação do processo activo, é necessário salvaguardar o estado do processo que se encontrava na posse de CPU (ponteiro da instrução, registo de estado, espaço de trabalho e outros registos), para mais tarde o restaurar quando o processo voltar a ser executado pela CPU. Um exemplo de um microprocessador desenhado para aplicações deste tipo é o VIPER (Verifiable Integrated Processor for Enhanced Reliability): Na concepção do VIPER, foram usadas técnicas de prova matemáticas para assegurar correcção absoluta e livre de erros de design. No entanto estas provas não asseguram que as especificações originais estejam, correctas e alguns analistas afirmaram terem encontrado 4 18 de fevereiro de 2014 T01 18/29

19 erros de especificação no design do VIPER (Kling, 1995). Mais informação sobre esta controvérsia em (MacKenzie, 1998) Processadores digitais de sinal Fig. 12: O processador RISC Viper Para aplicações de telecomunicações, radar, sonar e sistemas de controlo, a utilização de processadores digitais de sinal tem-se vulgarizado nos últimos anos. Estes processadores implementam muito rapidamente as operações numéricas envolvidas nas equações diferença (Multiply and accumulate). Fig. 13: DSP típico 18 de fevereiro de 2014 T01 19/29

20 Famílias muito conhecidas são a Texas Instruments TMS320C[345]x e Analog Devices Sharc (Super Harvard ARChitecture). Alguns destes dispositivos são capazes de descodificar dois endereços em simultâneo, (recorrendo a um bus duplo) o que permite fornecer dois operadores ao CPU num só ciclo. Um diagrama de blocos de uma DSP típica representa-se na figura seguinte: DSPs mais recentes Texas C6x e Sharc II e Tiger Sharc, podem integrar mais do que uma unidade de cálculo (FPU), de modo a desempenharem operações em simultâneo. Estes processadores têm também interfaces para ligação a outros processadores da mesma família, para implementação de sistemas processamento paralelo, que podem ter taxas de transferência de dados bidireccionais superiores a 40 MBytes/s por porto. No caso do ADSP2106x Sharc, 6 interfaces independentes permitem uma largura de banda total de 240 MBytes/s Processamento paralelo Outra alternativa para implementar este tipo de sistemas consiste em utilizar processadores desenhados para serem utilizados num ambiente de processamento paralelo. Um desses processadores é o transputer, da INMOS, cujo diagrama de blocos se representa na figura seguinte. Fig. 14: O transputer INMOS 18 de fevereiro de 2014 T01 20/29

21 Estes processadores dispõem de 4 canais de comunicação bidireccionais (20 MBits/s cada), que permitem interligar Transputers em diferentes topologias. Tem a particularidade de conseguir transferir informação por estes portos sem perda de desempenho da unidade de cálculo Single board computer O Transputer foi chamado quando da sua apresentação em meados de 1980 computador num chip. Actualmente temos computadores montados em pequenas placas, por exemplo 10 cm de lado, que suportam sistemas operativos usados em PCs, como o Linux. Além da CPU e da memória principal, nesta pequena board pode estar incluído: SSD drive (memória secundária) SD memory card Ethernet Wireless Network Bluetooth Adaptador de video (HDMI e/ou CVBS) Adaptador de audio com conector e entrada e saída Portos série Portos USB Conectores de expansão Um exemplo é o SKY-S9500-ULP-CXX (SNOWBALL) CPU: ARM Dual Cortex 1GHz Memória principal: 1 GByte LP-DDR2 Memória secundária: 4/8 GByte e-mmc Sistema Operativo: Linux 2.6; MeeGo; Ubuntu; Android Além das caracteristicas listadas acima dispõe ainda de: 18 de fevereiro de 2014 T01 21/29

22 GPS Acelerómetro de 3 eixos Magnetómetro de 3 eixos Giroscópio de 3 eixos Sensor de pressão Fig. 15: SKY-S9500-ULP-CXX (SNOWBALL) 1.5 Sistemas de controlo de tempo real Conceitos de controlo de tempo real Uma das áreas onde sistemas de tempo real são mais utilizados é a área de sistemas de controlo. Os sistemas de controlo industriais ou laboratoriais que utilizam computador(es) podem genericamente ser classificados, de acordo com a sua operação, em: processamento por lotes (batch = fornada) O termo 'batch' é usado para descrever processos de produção nos quais uma sequência de operações é usada para produzir uma 'fornada' (batch) ou lote dum determinado produto, sendo a mesma sequência repetida para produzir novas 18 de fevereiro de 2014 T01 22/29

23 fornadas. Eventualmente, a especificação do produto ou a sua exacta composição pode variar de lote para lote. Ex: Processo de laminagem de folhas de aço. Um lingote de aço fundido é passado através de um laminador para produzir uma folha de aço de uma determinada espessura. O lingote seguinte pode ser de outra composição ou pode ser requerida uma outra espessura, sendo portanto necessários ajustes no laminador. Uma das características do processamento batch é o tempo de preparação (setup time) necessário para preparar o equipamento para o próximo lote de produção. Este é um tempo morto; a razão entre o tempo de preparação e o tempo de produção é um parâmetro importante para a determinação dum correcto tamanho de lote. Nota: A introdução de máquinas de controlo numérico conduziu a que se tornasse económico produzir lotes pequenos. (pois reduz o setup time) contínuos Sistemas contínuos são aqueles nos quais a produção é mantida por um longo período de tempo, tipicamente meses ou mesmos anos. A composição dos produtos pode mudar de tempos a tempos, mas o sistema continua sempre a funcionar. Um problema característico destes sistemas é que, na altura da mudança de especificações, o produto final não se encontra dentro das margens de tolerância e é portanto rejeitado. Nota: É pois economicamente importante que essa transição seja realizada o mais rápida e suavemente possível. laboratoriais Sistemas laboratoriais são aqueles em que o computador é usado para realizar testes (ensaios) complexos ou para controlar equipamento complexo utilizado em controlo de qualidade. Estas categorias não são mutuamente exclusivas, i.e., um sistema em particular pode envolver actividades enquadradas em mais do que uma categoria. 18 de fevereiro de 2014 T01 23/29

24 Assim, os objectivos globais do controlo destes processos podem ser sumariados como: - segurança - melhores especificações (do produto) - facilidade de operação - economia de produção. Em todos os sistemas acima descritos podem existir diferentes actividades executadas pelo computador: controlo de sequência controlo digital directo (Direct Digital Control - DDC) controlo de supervisão interface com o utilizador. aquisição de dados análise de dados Controlo de sequência Controlo de sequência aparece na maior parte dos sistemas, mas predomina em sistemas de processamento por lotes. Exemplos deste tipo de controlo aparecem frequentemente em indústrias químicas. Na figura seguinte representa-se um reactor químico. Um produto é obtido da reacção de dois químicos, os reagentes, a uma dada temperatura por um certo tempo. Estes são misturados no reactor e a temperatura da reacção é controlada deixando entrar água quente ou fria no reservatório de água que envolve o reactor. O fluxo de água é controlado pelas válvulas C e D. O fluxo de material para o interior e o exterior do reactor é controlado pelas válvulas A, B e E. A temperatura do conteúdo e a pressão no reactor são monitorizadas. 18 de fevereiro de 2014 T01 24/29

25 Fig. 16: Reactor químico A sequência de operação do sistema (algoritmo) pode ser apresentada da seguinte maneira: #1 Abrir válvula A para introduzir o químico 1 #2 Medir nível do químico (recorrendo à pressão no reactor - inferência) quando o nível pretendido tiver sido conseguido, fechar válvula A #3 Ligar misturador #4 Repetir os passos #1 e #2 com o segundo químico #5 Ligar e fornecer uma referência de temperatura ao controlador TC. (a temperatura no reactor é controlada actuando nas válvulas C e D) #6 Medir temperatura com TT. Quando chegar à temperatura desejada, ligar um relógio para medir o tempo #7 Após o tempo necessário para completar a reacção, desligar o controlador e abrir a válvula D para arrefecer o composto. Desligar misturador. #8 Medir a temperatura com TT. Quando o conteúdo tiver arrefecido, abrir a válvula E para retirar o composto do reactor. 18 de fevereiro de 2014 T01 25/29

26 Numa indústria química normal, para que o sistema se torne eficiente, várias sequências devem ser realizadas em paralelo. Por exemplo 2 reactores podem ser usados alternativamente, de modo que, enquanto 1 está a processar uma reacção química, o outro está a ser limpo, e vice-versa. Quando o sistema aumenta de complexidade poderá também haver decisões a tomar sobre quando começar uma sequência. Esta decisão poderá ser tomada por uma pessoa, ou por um computador (controlo de supervisão). Nota: A decisão de entregar o controlo de supervisão a um homem ou um computador não é uma decisão fácil. Muitas vezes, adopta-se uma solução mista, onde o computador executa os cálculos necessários à supervisão e apresenta as suas decisões, para confirmação ou rejeição do operador. Em muitos sistemas batch, ou mesmo contínuos, além de controlo de sequência, existe também controlo de supervisão e controlo DDC de temperatura, nível ou pressão, como no exemplo acima Controlo DDC No caso de controlo DDC, o computador está dentro da malha de realimentação conforme se ilustra na figura seguinte. 18 de fevereiro de 2014 T01 26/29

27 Controlo de supervisão DDC Fig. 17: Controlo DDC Deste modo o computador torna-se um elemento crítico e deve ser assegurado que, caso o computador falhe, o processo se mantenha em segurança. Nota: O modo usual de assegurar um funcionamento seguro é permitir apenas mudanças incrementais nos actuadores, e portanto não absolutas. É também imposto um limite máximo na derivada das mudanças (a velocidade em que as mudanças podem occorer), sendo definido um intervalo de tempo mínimo entre incrementos ou decrementos. As vantagens de DDC sobre controlo analógico são essencialmente as seguintes: Custo Antigamente o ponto de viragem entre o uso de controlo analógico sobre o digital situava-se entre 50 e 100 malhas de controlo. Com os microprocessadores, uma única malha DDC é mais barata que a correspondente analógica. Desempenho O controlo digital torna possível utilizar algoritmos de controlo mais sofisticados, e melhora o desempenho do sistema. Nota: No entanto parte dos controladores digitais são versões digitais, com mais ou menos sofisticação do controlador PID analógico, pois existem métodos eficazes de 18 de fevereiro de 2014 T01 27/29

28 sintonização de PIDs, sendo estes controladores suficientes em grande parte dos casos. Outras técnicas de controlo, que não o simples controlo realimentado, são: controlo inferencial É o termo aplicado ao controlo em que as variáveis nas quais se baseia o controlo realimentado não podem ser medidas directamente, mas tem de ser inferidas através de outras variáveis. controlo feedforward Neste caso o que é medido são as perturbações e não as saídas. O efeito deste tipo de controlo é acelerar a resposta do sistema a perturbações. Só pode, contudo, ser usado se as perturbações puderem ser medidas. controlo adaptativo. É usado quando não se conhece a função de transferência do processo, ou ainda quando o processo varia no tempo. A função de transferência pode ser identificada em tempo real através das variações na entrada e saída do processo sendo ajustados os parâmetros do controlador: Controlo auto-sintonizado ou (self-tuning control). Pode também ser usado um modelo de referência para o sistema realimentado, sendo ajustados os parâmetros do controlador de modo a que o sistema realimentado siga o sistema de referência: Controlo adaptativo com modelo de referência (model reference adaptive control). 18 de fevereiro de 2014 T01 28/29

29 Bibliografia Daniel, Helder (2008). Introdução à gestão de transferências de dados com periféricos (capítulo 1 da matéria teórica de Periféricos e Interfaces) Introducao_a_gestao_de_transferencias_de_dados_com_perifericos.pdf [último acesso em: 2 Jun 2008] Kling, Rob (1995). Computerization and Controversy: Value Conflicts and Social Choices (2nd Ed.), Academic Press, MacKenzie, Donald (1998). COMPUTERS AND THE SOCIOLOGY OF MATHEMATICAL PROOF, Northern Formal Methods Workshop, Ilkley Grehan, R., R. Moote, I. Cyliax (1998). Real-Time Programming: A guide to 32-bit embedded development, Addison-Wesley Ruano, A. E. e H. Daniel (2006). Aulas teóricas de Sistemas de Tempo Real 2006/7, [último acesso em: 2 Jun 2008] 18 de fevereiro de 2014 T01 29/29

1 Introdução aos sistemas de tempo real e embebidos

1 Introdução aos sistemas de tempo real e embebidos 1 Introdução aos sistemas de tempo real e embebidos 1.1 Definição de sistema de tempo real Sistemas de tempo real podem ser definidos como: qualquer sistema no qual o tempo para produzir resultados (ou

Leia mais

Figura 1 - O computador

Figura 1 - O computador Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...

Leia mais

Interrupções. As interrupções são casos especiais de chamadas de procedimentos.

Interrupções. As interrupções são casos especiais de chamadas de procedimentos. Interrupções Uma interrupção é equivalente a uma chamada de procedimento. A chamada é equivalente a um CALL gerado pela execução de uma instrução. As interrupções são casos especiais de chamadas de procedimentos.

Leia mais

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA 8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente

Leia mais

Entrada e Saída. Interface entre periféricos, processador e memória. Fonte: Minho - Portugal 1

Entrada e Saída. Interface entre periféricos, processador e memória. Fonte: Minho - Portugal 1 Entrada e Saída Interface entre periféricos, processador e memória Fonte: Minho - Portugal 1 Ligação Processador/Memória - Periférico Processador Memória Controlo Dados Controlador Fonte: Minho - Portugal

Leia mais

Prof. Sandrina Correia

Prof. Sandrina Correia Tecnologias de I informação de C omunicação 9º ANO Prof. Sandrina Correia TIC Prof. Sandrina Correia 1 Objectivos Definir os conceitos de Hardware e Software Identificar os elementos que compõem um computador

Leia mais

Dispositivos de Entrada e Saída

Dispositivos de Entrada e Saída SEL-0415 Introdução à Organização de Computadores Dispositivos de Entrada e Saída Aula 9 Prof. Dr. Marcelo Andrade da Costa Vieira ENTRADA e SAÍDA (E/S) (I/O - Input/Output) n Inserção dos dados (programa)

Leia mais

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy) Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

Introdução aos Computadores

Introdução aos Computadores Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas

Leia mais

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

1.3. Componentes dum sistema informático HARDWARE SOFTWARE 1.3. Componentes dum sistema informático Computador Sistema Informático HARDWARE SOFTWARE + Periféricos Sistema Operativo Aplicações HARDWARE - representa todos os componentes físicos de um sistema informático,

Leia mais

SISTEMAS INFORMÁTICOS

SISTEMAS INFORMÁTICOS SISTEMAS INFORMÁTICOS Nesta apresentação, aprenderá a distinguir Hardware de software, identificar os principais componentes físicos de um computador e as suas funções. Hardware e Software Estrutura de

Leia mais

3. Arquitetura Básica do Computador

3. Arquitetura Básica do Computador 3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,

Leia mais

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01 Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal

Leia mais

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador

Leia mais

Primeiros "computadores" digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna

Primeiros computadores digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna Execução de um O executa um Quais os seus componentes? Como estes se organizam e interactuam? entrada de dados processador, memória, input bits periféricos,etc bits saída de dados output Primeiros "es"

Leia mais

1. CAPÍTULO COMPUTADORES

1. CAPÍTULO COMPUTADORES 1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes

Leia mais

Mecanismo de Interrupção

Mecanismo de Interrupção Mecanismo de Interrupção Paralelismo de Operação Num sistema multiprogramado a CPU está sempre apta a compartilhar o seu tempo entre os vários programas e os diferentes dispositivos periféricos que necessitam

Leia mais

Escola Secundária de Emídio Navarro

Escola Secundária de Emídio Navarro Escola Secundária de Emídio Navarro Curso Secundário de Carácter Geral (Agrupamento 4) Introdução às Tecnologias de Informação Ficha de trabalho N.º 1 1. Refere algumas das principais áreas das Tecnologias

Leia mais

Introdução aos Sistemas Operativos

Introdução aos Sistemas Operativos Introdução aos Sistemas Operativos Computadores e Redes de Comunicação Mestrado em Gestão de Informação, FEUP 06/07 Sérgio Sobral Nunes mail: sergio.nunes@fe.up.pt web: www.fe.up.pt/~ssn Sumário Definição

Leia mais

5 Entrada e Saída de Dados:

5 Entrada e Saída de Dados: 5 Entrada e Saída de Dados: 5.1 - Arquitetura de Entrada e Saída: O sistema de entrada e saída de dados é o responsável pela ligação do sistema computacional com o mundo externo. Através de dispositivos

Leia mais

Entrada e Saída. Prof. Leonardo Barreto Campos 1

Entrada e Saída. Prof. Leonardo Barreto Campos 1 Entrada e Saída Prof. Leonardo Barreto Campos 1 Sumário Introdução; Dispositivos Externos; E/S Programada; E/S Dirigida por Interrupção; Acesso Direto à Memória; Bibliografia. Prof. Leonardo Barreto Campos

Leia mais

Processos e Threads (partes I e II)

Processos e Threads (partes I e II) Processos e Threads (partes I e II) 1) O que é um processo? É qualquer aplicação executada no processador. Exe: Bloco de notas, ler um dado de um disco, mostrar um texto na tela. Um processo é um programa

Leia mais

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO 28 CAPÍTULO 5 INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO Interfaces para periféricos de armazenamento: Periféricos de armazenamento,

Leia mais

ENTRADA E SAÍDA DE DADOS

ENTRADA E SAÍDA DE DADOS ENTRADA E SAÍDA DE DADOS Os dispositivos de um computador compartilham uma única via de comunicação BARRAMENTO. BARRAMENTO Elétrica/Mecânica + Protocolo. GERENCIAMENTO DE E/S O controle da troca de dados

Leia mais

Quadro de consulta (solicitação do mestre)

Quadro de consulta (solicitação do mestre) Introdução ao protocolo MODBUS padrão RTU O Protocolo MODBUS foi criado no final dos anos 70 para comunicação entre controladores da MODICON. Por ser um dos primeiros protocolos com especificação aberta

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,

Leia mais

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. Unidade aritmética e lógica - Executa operações aritméticas (cálculos);

Leia mais

Componentes de um Sistema de Computador

Componentes de um Sistema de Computador Componentes de um Sistema de Computador HARDWARE: unidade responsável pelo processamento dos dados, ou seja, o equipamento (parte física) SOFTWARE: Instruções que dizem o que o computador deve fazer (parte

Leia mais

José Novais (1997), Método sequencial para automatização electro-pneumática, 3ª Edição, Fundação

José Novais (1997), Método sequencial para automatização electro-pneumática, 3ª Edição, Fundação AUTOMAÇÃO (M323/3073) CAPÍTULO I Introdução à Automação 2013/2014 Bibliografia José Novais (1997), Método sequencial para automatização electro-pneumática, 3ª Edição, Fundação Calouste Gulbenkian Curtis

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas de Computação O sistema operacional precisa garantir a operação correta do sistema de computação. Operação

Leia mais

Arquitetura e Organização de Computadores I

Arquitetura e Organização de Computadores I Arquitetura e Organização de Computadores I Interrupções e Estrutura de Interconexão Prof. Material adaptado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Interrupções

Leia mais

Sistemas Embarcados. Introdução aos sistemas embarcados

Sistemas Embarcados. Introdução aos sistemas embarcados Sistemas Embarcados Introdução aos sistemas embarcados Introdução aos Sistemas embarcados Definição de um sistema embarcado Exemplos de sistemas embarcados Processadores utilizados em sistemas embarcados

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores Entrada e saída Alexandre Amory Edson Moreno Nas Aulas Anteriores Foco na Arquitetura e Organização internas da Cleo Modelo Von Neuman Circuito combinacional Circuito

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 3 Software Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva Barramento Sistemas Operacionais Interliga os dispositivos de E/S (I/O), memória principal

Leia mais

Modelo Genérico de Módulo de E/S Grande variedade de periféricos

Modelo Genérico de Módulo de E/S Grande variedade de periféricos Conteúdo Capítulo 7 Entrada/Saída Dispositivos externos Módulos E/S Técnicas de E/S E/S Programada E/S Conduzida por interrupções Processamento de interrupções Controlador Intel 82C59A Acesso Directo à

Leia mais

BARRAMENTO DO SISTEMA

BARRAMENTO DO SISTEMA BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade

Leia mais

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº UNIDADE 1I: SISTEMA COMPITACIONAL Elementos hardware e periféricos Um sistema computacional consiste num conjunto de dispositivos eletrônicos (hardware) capazes de processar informações de acordo com um

Leia mais

O quê um Processador e qual a sua função?

O quê um Processador e qual a sua função? O quê um Processador e qual a sua função? O processador é um chip de silício responsável pela execução das tarefas atribuídas ao computador. Os processadores (ou CPUs, de Central Processing Unit) são responsáveis

Leia mais

PROCESSAMENTO DE DADOS

PROCESSAMENTO DE DADOS PROCESSAMENTO DE DADOS Aula 1 - Hardware Profa. Dra. Amanda Liz Pacífico Manfrim Perticarrari Profa. Dra. Amanda Liz Pacífico Manfrim Perticarrari 2 3 HARDWARE Todos os dispositivos físicos que constituem

Leia mais

Fundamentos de Automação. Controladores

Fundamentos de Automação. Controladores Ministério da educação - MEC Secretaria de Educação Profissional e Técnica SETEC Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul Campus Rio Grande Fundamentos de Automação Controladores

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 7 Entrada/saída Os textos nestas caixas foram adicionados pelo Prof. Joubert slide 1 Problemas de entrada/saída Grande variedade

Leia mais

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco

discos impressora CPU memória AULA 04 - Estruturas de Sistemas Computacionais Operação dos sistemas de computação Controlador de disco AULA 04 - Estruturas Sistemas Computacionais Nosso objetivo é apenas revisar conceitos relacionados a estrutura geral um sistema computacional para pois explicarmos os talhes operação do sistema e como

Leia mais

Gestor de Processos. Gestor de Processos

Gestor de Processos. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem do Processador Despacho efectua

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central

Leia mais

UPS. Unidades de Alimentação Ininterrupta

UPS. Unidades de Alimentação Ininterrupta UPS Uma UPS é um dispositivo que, quando em funcionamento correcto, ajuda a garantir que a alimentação dos equipamentos que estão a ela ligados, não sejam perturbados, fornecendo energia, através de uma

Leia mais

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação Multiplexadores Permitem que vários equipamentos compartilhem um único canal de comunicação Transmissor 1 Receptor 1 Transmissor 2 Multiplexador Multiplexador Receptor 2 Transmissor 3 Receptor 3 Economia

Leia mais

Estrutura de um Computador

Estrutura de um Computador SEL-0415 Introdução à Organização de Computadores Estrutura de um Computador Aula 7 Prof. Dr. Marcelo Andrade da Costa Vieira MODELO DE VON NEUMANN PRINCÍPIOS A arquitetura de um computador consiste de

Leia mais

Informática I. Aula 4. http://www.ic.uff.br/~bianca/informatica1/ Aula 4-11/09/2006 1

Informática I. Aula 4. http://www.ic.uff.br/~bianca/informatica1/ Aula 4-11/09/2006 1 Informática I Aula 4 http://www.ic.uff.br/~bianca/informatica1/ Aula 4-11/09/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP Estrutura de um Computador Linguagem de Programação Rone Ilídio UFSJ - CAP Hardware e Software HARDWARE: Objetos Físicos que compões o computador Circuitos Integrados, placas, cabos, memórias, dispositivos

Leia mais

Curso Técnico de Nível Médio

Curso Técnico de Nível Médio Curso Técnico de Nível Médio Disciplina: Informática Básica 2. Hardware: Componentes Básicos e Funcionamento Prof. Ronaldo Componentes de um Sistema de Computador HARDWARE: unidade

Leia mais

Escola Secundária de Emídio Navarro

Escola Secundária de Emídio Navarro Escola Secundária de Emídio Navarro Curso Secundário de Carácter Geral (Agrupamento 4) Introdução às Tecnologias de Informação Correcção da ficha de trabalho N.º 1 1. Refere algumas das principais áreas

Leia mais

Curso EFA Técnico/a de Informática - Sistemas. Óbidos

Curso EFA Técnico/a de Informática - Sistemas. Óbidos Curso EFA Técnico/a de Informática - Sistemas Óbidos MÓDULO 769 Arquitectura interna do computador Carga horária 25 2. PROCESSADOR (UNIDADE CENTRAL DE PROCESSAMENTO CPU) Formadora: Vanda Martins 3 O processador

Leia mais

Componentes básicos de um sistema computacional. Cap. 1 (Stallings)

Componentes básicos de um sistema computacional. Cap. 1 (Stallings) Componentes básicos de um sistema computacional Cap. 1 (Stallings) 1 Sistema de Operação Explora recursos de hardware de um ou mais processadores Provê um conjunto de serviços aos utilizadores Gerencia

Leia mais

Sistemas Computacionais II Professor Frederico Sauer

Sistemas Computacionais II Professor Frederico Sauer Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não

Leia mais

Sistemas Operativos. Sumário. Estruturas de sistemas de computação. ! Operação de um sistema de computação. ! Estruturas de E/S

Sistemas Operativos. Sumário. Estruturas de sistemas de computação. ! Operação de um sistema de computação. ! Estruturas de E/S Estruturas de sistemas de computação Sumário! Operação de um sistema de computação! Estruturas de E/S! Estruturas de armazenamento! Hierarquia de armazenamento 2 1 Arquitectura de um sistema de computação

Leia mais

Porta Série. Trabalhos Práticos AM 2007/2008. Porta Série. Objectivos

Porta Série. Trabalhos Práticos AM 2007/2008. Porta Série. Objectivos 3 Objectivos - Configurar os parâmetros associados à comunicação série assíncrona. - Saber implementar um mecanismo de menus para efectuar a entrada e saída de dados, utilizando como interface um terminal

Leia mais

Capítulo I : Noções Gerais

Capítulo I : Noções Gerais Capítulo I : Noções Gerais 1 Capítulo I : Noções Gerais Informática (Teoria da Informação): Ciência do tratamento e transmissão da informação. Computador: Sistema que permite armazenar grandes quantidades

Leia mais

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO Amanda 5ª Atividade: Codificador e codificação de linha e seu uso em transmissão digital Petrópolis, RJ 2012 Codificador: Um codoficador

Leia mais

Funções de Posicionamento para Controle de Eixos

Funções de Posicionamento para Controle de Eixos Funções de Posicionamento para Controle de Eixos Resumo Atualmente muitos Controladores Programáveis (CPs) classificados como de pequeno porte possuem, integrados em um único invólucro, uma densidade significativa

Leia mais

Controladores Lógicos Programáveis CLP (parte-3)

Controladores Lógicos Programáveis CLP (parte-3) Controladores Lógicos Programáveis CLP (parte-3) Mapeamento de memória Na CPU (Unidade Central de Processamento) de um CLP, todas a informações do processo são armazenadas na memória. Essas informações

Leia mais

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis

Leia mais

A idéia hardware sugerida é colocar a placa entre o PC e o microcontrolador, conforme mostrado no esquema abaixo.

A idéia hardware sugerida é colocar a placa entre o PC e o microcontrolador, conforme mostrado no esquema abaixo. Circuito de gravação (AVR programmer) Introdução Nossa proposta, nesta parte do trabalho, é apresentar um circuito para gravação ISP (In-System- Programming) para microcontroladores AVR. Este circuito,

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Memórias Prof. Galvez Gonçalves

Memórias Prof. Galvez Gonçalves Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores

Leia mais

O protocolo MODBUS define também o tipo diálogo entre os equipamentos, define por exemplo quem pode enviar dados e em que altura.

O protocolo MODBUS define também o tipo diálogo entre os equipamentos, define por exemplo quem pode enviar dados e em que altura. Universidade de Aveiro Departamento de Engenharia Mecânica Informática Industrial 2010/2011 5 PROTOCOLO DE COMUNICAÇÃO MODBUS 5.1 Protocolo de comunicação MODBUS Este protocolo foi proposto em 1979 pela

Leia mais

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress. Sistemas Operacionais Aula 3 Prof: Carlos Eduardo de Carvalho Dantas (carloseduardoxpto@gmail.com) http://carloseduardoxp.wordpress.com Nunca cone em um computador que você não pode jogar pela janela.

Leia mais

Componentes de um computador típico

Componentes de um computador típico Componentes de um computador típico Assim como em um videocassete, no qual é necessário ter o aparelho de vídeo e uma fita contendo o filme que será reproduzido, o computador possui a parte física, chamada

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Unidade de Entrada/Saída (I/O) Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Sumário Introdução Unidade de Processamento Unidade de Controlo Conjunto de Instruções

Leia mais

Redes e Telecomunicações

Redes e Telecomunicações Redes e Telecomunicações Comunicação Processo pelo qual uma informação gerada num ponto (origem) é transferida para outro ponto (destino) Telecomunicações Telecomunicação do grego: tele = distância do

Leia mais

Estruturas do Sistema de Computação

Estruturas do Sistema de Computação Estruturas do Sistema de Computação Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Estruturas do Sistema de

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as

Leia mais

Sistemas Operacionais Gerência de Dispositivos

Sistemas Operacionais Gerência de Dispositivos Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerência de Dispositivos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução A gerência

Leia mais

Sistemas Operativos I

Sistemas Operativos I Arquitectura de um Computador Maria João Viamonte / Luis Lino Ferreira Fevereiro de 2006 Sumário Arquitectura de um Computador Estrutura de I/O Estrutura de Armazenamento Hierarquia de Armazenamento Protecção

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Conceito de Computador Um computador digital é

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES Placas de Rede Modems Hubs e switches Router Prof. Hugo Rosa PLACAS DE REDE As placas de rede são periféricos de entrada e saída e são utilizadas para interligar um computador a uma

Leia mais

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger O controle da entrada e saída (E/S ou I/O, input/output) de dados dos dispositivos é uma das funções principais de um sistema operacional.

Leia mais

Gerência de Entrada/Saída

Gerência de Entrada/Saída Gerência de Entrada/Saída Prof Clodoaldo Ap Moraes Lima 1 Princípios básicos de hardware Periférico é um dispositivo conectado a um computador de forma a possibilitar sua interação com o mundo externo

Leia mais

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET 2010/2011 1 Protocolo TCP/IP É um padrão de comunicação entre diferentes computadores e diferentes sistemas operativos. Cada computador deve

Leia mais

Aula 04 B. Interfaces. Prof. Ricardo Palma

Aula 04 B. Interfaces. Prof. Ricardo Palma Aula 04 B Interfaces Prof. Ricardo Palma Interface SCSI SCSI é a sigla de Small Computer System Interface. A tecnologia SCSI (pronuncia-se "scuzzy") permite que você conecte uma larga gama de periféricos,

Leia mais

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se

Leia mais

Introdução a Informática. Prof.: Roberto Franciscatto

Introdução a Informática. Prof.: Roberto Franciscatto Introdução a Informática Prof.: Roberto Franciscatto 2.1 CONCEITO DE BIT O computador só pode identificar a informação através de sua elementar e restrita capacidade de distinguir entre dois estados: 0

Leia mais

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2011 / 2012. Gestor de Processos

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2011 / 2012. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Sistemas Operativos 2011 / 2012 Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 5 Estrutura de Sistemas de Computação Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA Curso de Eletrotécnica

UNIVERSIDADE FEDERAL DE SANTA MARIA COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA Curso de Eletrotécnica UNIVERSIDADE FEDERAL DE SANTA MARIA COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA Curso de Eletrotécnica Apostila de Automação Industrial Elaborada pelo Professor M.Eng. Rodrigo Cardozo Fuentes Prof. Rodrigo

Leia mais

Introdução a Ciência da Computação Conceitos Básicos de Sistema PROFESSORA CINTIA CAETANO

Introdução a Ciência da Computação Conceitos Básicos de Sistema PROFESSORA CINTIA CAETANO Introdução a Ciência da Computação Conceitos Básicos de Sistema PROFESSORA CINTIA CAETANO Introdução A informática é uma área que atualmente vem evoluindo muito rapidamente. A cada dia se torna mais importante

Leia mais

Microprocessadores. Sistemas de Entrada / Saída

Microprocessadores. Sistemas de Entrada / Saída Sistemas de Entrada / Saída António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Modos de transferência de informação entre µprocessador e sistemas de Entrada/Saída.

Leia mais

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:

Leia mais

Espectro da Voz e Conversão A/D

Espectro da Voz e Conversão A/D INSTITUTO SUPERIOR TÉCNICO LICENCIATURA EM ENGENHARIA ELECTROTÉCNICA E DE COMPUTADORES GUIA DO 1º TRABALHO DE LABORATÓRIO DE SISTEMAS DE TELECOMUNICAÇÕES I Espectro da Voz e Conversão A/D Ano Lectivo de

Leia mais

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 5-1. A CAMADA DE TRANSPORTE Parte 1 Responsável pela movimentação de dados, de forma eficiente e confiável, entre processos em execução nos equipamentos conectados a uma rede de computadores, independentemente

Leia mais

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa Professor Especialista: Airton Ribeiro de Sousa É o percurso principal dos dados entre dois ou mais componentes de um sistema de computação, neste caso são os caminhos arquitetados na PLACA MÃE até o ponto

Leia mais

PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014

PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014 PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014 Introdução: Este programa permite o gerenciamento dos amplificadores MR 4.50D-XT MR 6.50D-XT MR 6.80-XT

Leia mais

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto Mestrado Integrado em Engenharia Electrotécnica e de Computadores Programação 2º Semestre 2010/2011 Enunciado do projecto O projecto a desenvolver pelos alunos consistirá numa sistema de monitorização,

Leia mais

Organização Básica do Computador

Organização Básica do Computador Organização Básica do Computador Modelo de Von Neumann MEMÓRIA ENTRADA ARITMÉTICA LÓGICA SAÍDA CONTROLE Modelo de Von Neumann Introduziu o conceito do computador controlado por programa armazenado. Todo

Leia mais

Fundamentos de Hardware

Fundamentos de Hardware Fundamentos de Hardware Curso Técnico em Informática SUMÁRIO PLACAS DE EXPANSÃO... 3 PLACAS DE VÍDEO... 3 Conectores de Vídeo... 4 PLACAS DE SOM... 6 Canais de Áudio... 7 Resolução das Placas de Som...

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO O que é a Informática? A palavra Informática tem origem na junção das palavras: INFORMAÇÃO + AUTOMÁTICA = INFORMÁTICA...e significa, portanto, o tratamento da informação

Leia mais

Unidade 13: Paralelismo:

Unidade 13: Paralelismo: Arquitetura e Organização de Computadores 1 Unidade 13: Paralelismo: SMP e Processamento Vetorial Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura SMP e alguns detalhes

Leia mais