1 DESENVOLVIMENTO DO IP CORE DE UM HOST USB Aluno: Diogo Rodrigues Maciel Orientadora: Profª Edna Barros.

Slides:



Advertisements
Apresentações semelhantes
Projeto Qualified Curriculum
Advertisements

RUP – Rational Unified Process
Capitulo 6: Entrada e Saída
Adélia Barros Testes de Software Adélia Barros
Engenharia de Software
Redes de computadores I
Técnicas para operações E/S
UML Visões – Parte 2.
Débora da Silva Orientadora: Maria Inés Castiñeira
Rational Unified Process(RUP)
Engenharia de Software
Valéria Maria Lauande Março/2010
Faculdade de Ciências Sociais e Aplicadas de Petrolina – FACAPE
MODELO DE REFERÊNCIA OSI
Altera NIOS II: uma breve introdução
Introdução Ligações inter-redes.
USB - Universal Serial Bus
Topologias de Rede.
Alunos: Artulanez Souza Iony Melo
Rational Unified Process
RUPinho Qualidade de Software
Brazil-IP Program Angelo Brito, Camila Nunes, Marcelo Albuquerque, Maria Cireno, Maryane Brasilino, Rafael Barbosa, Rafael Lima, Raphael Almeida Universidade.
Visão Geral PRO.NET.
Equipe Bruno Ghisi Bruno Ghisi Diogo Verçosa Diogo Verçosa Raylson Carlos Raylson Carlos Reginaldo Júnior Reginaldo Júnior Renato Arruda Renato Arruda.
Fundamentos de Engenharia de SW
Sistemas Operacionais
Sistemas Operacionais
Engenharia de Software
Roteiro Motivação Contexto Nossa solução Metodologia
Padrões de Projeto e Arquitetura em Camadas
PFC Projeto Final de Curso
ANÁLISE E DESENVOLVIMENTO
PSBD II Projeto de Sistemas de Banco de Dados II
Especificação em Projeto de Sistemas
Bruno Silva Desenvolvido a partir de
Prof. Carlos Roberto da Silva Filho, M. Eng.
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Sistemas Operacionais
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
RUP - Cap. 4 – Processo Centrado na Arquitetura
Engenharia de Software
Processo de Desenvolvimento de Software – PDS C Construção - PAS
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Fase de Concepção Levantamento de Requisitos, Organização de Requisitos, Planejamento dos Ciclos Iterativos.
Hukarz Open Source Process D01 Alan Kelon, Silvio Meira Recife, 01/12/2006.
Gestão de projetos de Software GTI-16
Engenharia de Software
Engenharia de Software
TCP/IP.
Trabalho elaborado por: Ana Beatriz nº1
Estrutura de Interconexão
USB Host Remote Unit Status Report 2. Roteiro Projeto Primeiro Release Organograma Apoena –Arquitetura –Microcontrolador –Comunicação –Aplicação Andamento.
Wi-Fi Information Service Ademir José de Carvalho Junior Felipe Cavalcanti Ferreira.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Engenharia de Software com o RUP - Workflow de Requisitos
KICK-OFF e Estimativas. Definição O Sistema Sistema..... Missão descrever aqui a missão do projeto.
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
1 Identificando Riscos em Projetos de IP-cores Aluno: Tiago Lins Orientador: Hermano Perrelli 29/03/2007.
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Modelo de referência TCP/IP Redes de comunicação de dados Professor Cristiano José Cecanho.
1 Projeto Piloto Conclusão em Agenda Projeto Piloto –Descrição –Execução da aplicação –Implementação de requisitos funcionais e não- funcionais.
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
1 Workshop GrecO 2005 Brazil-IP – Fenix Projeto USB.
1 Workshop GrecO 2005 ipPROCESS: Validação e Extensão do Processo Baseada em Estudos de Caso.
Projeto BrazilIP Gerente: Cristiano Araújo Coordenadora: Edna Barros.
TESTES DE SOFTWARE – AULA 1 Prof. Me. Ronnison Reges Vidal
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

1 DESENVOLVIMENTO DO IP CORE DE UM HOST USB Aluno: Diogo Rodrigues Maciel Orientadora: Profª Edna Barros

2 Roteiro Introdução USB Host Arquitetura OHCI IpProcess Disciplinas Fases Resultados obtidos Conclusão Referencias

3 Introduçao Computadores pessoais cada vez mais sofisticados Varios de dispositivos também se sofisticaram –Necessidade de uma maneira mais eficiente de se conectar a PC’s Uma boa solução para isso é o Barramento Serial Universal (USB).

4 Introdução Escopo –Desenvolvimento de um controlador de USB Host IP SOC Driver –Utilização do ipPROCESS como metodologia de desenvolvimento.

5 Introdução Equipe: 9 Alunos de IC: –Adelmário Douglas –Antonyus Pyetro –Diego Alves –Diogo Maciel –Hudson Veloso –Luciano de Moura –Marcelo Lucena –Renata Bezerra –Renata Garcia Doutorado: –Edson Lisboa

6 USB Host

7 Só existe um host em um sistema USB Varios dispositivos ou hubs podem ser interconectados ao Host A interface USB com o computador Host é chamada de Host Controller Um Root Hub é integrado ao sistema para prover um ou mais attachment points

8 USB Host Arquitetura O sistema USB tem duas camadas distintas (hardware e software) e uma terceira intermediária responsável pela comunicação entre elas. A camada de software –composta pelo driver do sistema operacional (USB System Software) e o HCD (Host Controller Driver). A camada de hardware –composta pelo HC (Host Controller) que através do Root Hub se conecta ao dispositivo pela interface elétrica.

9 USB Host (Arquitetura)

10 USB Host OHCI Open Host Controller Interface Especifica a interface entre o Host Controler Driver e o Host Controller

11 USB Host (OHCI) Transmissão Se dá através de canais chamados “pipes” –ligam o Client Software a um Endpoint no dispositivo Há quatro tipos de transmissão na comunicação entre o host e o dispositivo. –Control –Isochonus –Bulk –Interrupt

12 USB Host (OHCI) Transmissão Cada tipo determina os parâmetros da transmissão. Control –Transferência de controle, não periódica, usada geralmente para que o software cliente possa controlar, configurar e checar o status do dispositivo. Isochronus –Transferência periódica de dados. Os dados são enviados continuamente a uma taxa de transmissão constante. Bulk –Transferência não periódica usada para transmitir grandes amontoados de dados. Interrupt –Transferência periódica usada para transmitir pequenos pacotes de informação sobre o dispositivo para o software cliente.

13 USB Host (OHCI) Transmissão Duas unidades básicas são responsáveis por armazenar as informações necessárias para a transmissão de dados. –Endpoint Descriptor (ED) e o Transfer Descriptor (TD). Endpoint Descriptor - ED –contêm as informações como o tamanho máximo do pacote, a direção da transmissão, o tipo de transmissão e o endereço do endpoint. Transfer Descriptor - TD –descreve como os pacotes devem ser transmitidos e carrega informações como o endereço do pacote, e o seu formato.

14 USB Host (OHCI) Transmissão Há uma lista circular de EDs para cada tipo de transmissão. Cada ED possui uma fila de TDs.

15 USB Host (OHCI) Transmissão O tempo de transmissão é dividido em frames de 1ms cada O frame começa quando o HC envia um pacote SOF (Start Of Frame) e dentro desse tempo, a lista de EDs é percorrida e um TD de cada um é servido até que o tempo se esgote. Para cada tipo de transmissão corresponde uma parte do frame como mostra a figura abaixo:

16 USB Host (OHCI) Comunicação Hardware – Software O OpenHCI provê a comunicação entre as camadas de Hardware e Software do Sistema USB. O OHCI é composto de um conjunto de registradores, chamados Registradores Operacionais, que podem se dividir em quatro tipos. –Controle geral – Registradores com informações sobre o reset, interrupções de hardware, estado do sistema USB, etc. –Gerenciamento de tempo - contém informações sobre os frames e o tempo das transmissões. –Controle do Root Hub - Mantém informações sobre os dispositivos conectados a USB. –Acesso ao HCCA (o HCCA vai ser apresentado mais adiante).

17 USB Host (OHCI) Comunicação Hardware – Software O OHCI também possui uma estrutura de 256 bytes chamada de HCCA (Host Controller Communications Area) Informações sobre a transmissão, os dados, os ponteiros para as filas de Eds. Área usada pelo software do sistema para enviar e receber dados de controle e de estado a partir do HC

18 IpProcess Metodologia utilizada

19 IpProcess Processo para guiar o desenvolvimento –Iterativo –Incremental Conceitos –Fases –Disciplinas Fluxo de trabalho Atividades Artefatos –Iterações –Papéis

20 IpProcess (Fases) 1.Concepção Objetivos: Elicitar os requisitos –Funcionais e Não Funcionais Definir o escopo do projeto Atividades: Captar o contexto e os mais importantes requisitos Preparar o ambiente de desenvolvimento –organização, ferramentas Artefatos gerados Glossário Documento de Requisitos Especificação Funcional

21 IpProcess (Fases) 2. Arquitetura Objetivos: Criar a arquitetura básica do IP core –provê uma base estável para uma implementação eficiente e organizada Atividades: Identificação dos componentes e suas interfaces Definição da interface externa do IP core refinamento dos componentes da arquitetura baseando-se na especificação funcional Planejamento da integração dos componentes (RTL e FPGA) Verificação funcional Artefatos gerados Documento de Projeto Plano de Testes e Verificação Plano de Integração

22 IpProcess (Fases) 3. Implementação do RTL Objetivos: Implementar componentes e suas interfaces em código RTL Testá-los para assegurar que são sintetizáveis Atividades: Implementação do código Verificação funcional e a correção dos erros encontrados Artefatos gerados Modelo de simulação RTL Estruturas de teste e de verificação

23 IpProcess (Fases) 4. Prototipação Física Objetivos: Criar um protótipo físico para ser testado Certificar de que o IP core pode ser distribuído aos usuários finais Atividades: Sintetizar os componentes Integrar os componentes para criar o protótipo físico Testar o sistema integrado Artefatos gerados IP core Estruturas de teste em FPGA

24 Resultados Obtidos

25 Resultados obtidos O projeto se encontra da fase de implementação do RTL O IpProcess tornou mais fácil a correção de erros, a manutenção e o entendimento do projeto por parte dos desenvolvedores. O uso de práticas da Engenharia de Software tornou a implementação mais organizada. Horas trabalhadas (desde julho de 2006) –130 dias e 17 horas Número de reuniões –Cerca de 43 Artefatos –36 documentos –14 módulos implementados

26 Proximas atividades Termino da verificação funcional Início da fase de prototipação onde a equipe trabalhará para sintetizar os componentes e testa-los no protótipo físico (FPGA).

27 Conclusão A demanda por dispositivos que usam o Brramento Serial Universal (USB) vem crescendo nos últimos anos e há perspectiva de que continue dessa maneira. –Motivação O IP core de um Host USB em desenvolvimento pelo projeto Brazil-IP Metodologia utilizada: IpProcess –A utilização de um processo de desenvolvimento baseado na Engenharia de Software contribuiu bastante para a organização, eficiência da implementação e manutenabilidade do projeto.

28 Referências [1] Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC. Philips. Universal Serial Bus Specification Revision 2.0; 2000; [2] Compaq, Microsoft, National Semiconductor. Open Host Controller Interface Specification [3] ipProcess; [4] Brazil-IP;