PUCRS logo

GSE logo

Programacao de Perifericos
Engenharia de Computacao, 2008/1
Eduardo Augusto Bezerra

FACIN logo

FACIN logo

Principal | Noticias | Programa da Disciplina | Agenda

Material de Apoio | Avaliacao | Bibliografia



Plano da disciplina

Ementa

Dispositivos periféricos com e sem unidade de processamento. Software e hardware embarcados. Portas de entrada e saída. Interfaces física e lógica entre computadores pessoais e dispositivos periféricos. Sistemas operacionais e linguagens, peculiaridades relativas ao acesso de dispositivos periféricos. Device drivers. Um sistema típico: sistema computacional com periféricos de entrada e saída.

Objetivos

1. Entender os problemas associados a sistemas operacionais e linguagens de programação quando utilizados para controlar dispositivos periféricos.

2. Entender os padrões de comunicação disponíveis e também o estado da arte na interface entre sistemas computacionais e dispositivos externos, ou seja, investigação das interfaces física e lógica entre sistemas computacionais e dispositivos periféricos (portas de entrada e saída).

3. Especificar, projetar, validar e implementar estudos de casos simples de dispositivos periféricos com e sem unidade de processamento (software e hardware embarcados).

4. Especificar, projetar, validar e implementar estudos de caso simples de device drivers de forma a realizar a interface entre sistemas operacionais e novos dispositivos periféricos anexados ao sistema.

5. Especificar, projetar, validar e implementar módulos em software e em hardware para dispositivos externos (periféricos) de forma a possibilitar seu controle a partir de sistemas computacionais.

6. Utilizar conceitos da Engenharia de Software (ex. UML, teste de software), nas etapas de especificação, projeto, desenvolvimento e testes dos estudos de caso da disciplina.

Programa da disciplina

UNIDADE 1: Um sistema típico - sistema computacional com periféricos de entrada e saída.

1.1 Visão geral de um sistema computacional completo com entrada e saída

1.1.1 Diagrama de blocos

1.1.2 Descrição dos módulos de software e hardware do sistema

1.1.3 Visão geral das tecnologias Plug and Play (PCI, PnP ISA, PCMCIA) e ISA Legacy

1.1.4 Discussão, em linhas gerais, dos problemas associados à interface entre software e hardware

1.2 Aspectos e peculiaridades de sistemas operacionais e linguagens quando utilizados no acesso a dispositivos periféricos

1.3 Discussão dos trabalhos práticos a serem realizados no decorrer da disciplina, e do formato da documentação e especificação do projeto dessas implementações.

UNIDADE 2: Interface física e lógica entre computador e dispositivos periféricos

2.1 Padrões para utilização da porta paralela (SPP, EPP, ECP, PS-2)

2.2 Comunicação serial (RS-232C, RS-485, I2C, CAN, Profibus, SPI, USB)

UNIDADE 3: Programação de periféricos

3.1 Dispositivos periféricos sem unidade de processamento

3.1.1 Dispositivos simples que podem ser acionados diretamente sem nenhum tipo de configuração (ex. LEDs, acionadores para interfaces de potência);

3.1.2 Dispositivos mais complexos que necessitam algum tipo de configuração (ex. display de cristal líquido, controlador de comunicação serial, sensor de temperatura).

3.2 Dispositivos periféricos com unidade de processamento

3.1.1 Software e hardware embarcados;

3.1.2 Periféricos utilizados como unidade de co-processamento;

3.1.3 Periféricos que funcionam de forma autônoma, realizando processamento remoto, e retornando resultados sob demanda e apenas quando solicitado.

UNIDADE 4: Projeto e implementação de Device Drivers

4.1 Identificação das necessidades

4.2 Estudo das facilidades existentes no sistema operacional

4.3 Etapas no projeto e implementação de um device driver genérico

4.4 Processo completo, incluindo testes e validação