04/junho/2014. Open Virtual Platform  Introdução  Plataformas Virtuais  OVP ◦ Conceitos ◦ APIs ◦ Modelos de processadores ◦ Exemplos  HeMPS OVP 2.

Slides:



Advertisements
Apresentações semelhantes
Programa das Aulas 20/09/05 - Apresentação da disciplina
Advertisements

1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
Arquitetura de Computadores
Material pedagógico Multiplicar x 5 Clica!
Vamos contar D U De 10 até 69 Professor Vaz Nunes 1999 (Ovar-Portugal). Nenhuns direitos reservados, excepto para fins comerciais. Por favor, não coloque.
Kit Alfa Marcello Cláudio de Gouvêa Duarte.
Operadores e Funções do LINGO
Resultados da Pesquisa "Identificação de Valores de Jovens Brasileiros – Uma Nova Proposta", realizada pela Profª. Dra. Rosa Maria Macedo, da PUC de São.
Introdução à Programação usando Processing Programação Gráfica 2D Animações Exercício Animações 14/10/09 Bruno C. de Paula 2º Semestre 2009 > PUCPR >
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
Open Virtual Platforms
Arquitetura de Sistemas Operacionais
Introdução à Informática
MC542 Organização de Computadores Teoria e Prática
Processadores risc: sparc – powerpc – arm - mips.
ArchC: Uma linguagem de descrição de arquiteturas
Arquiteturas Diferentes
MC542 Organização de Computadores Teoria e Prática
CISC e RISC.
Informática Industrial
Descrição de hardware em SystemC
Rganização de Computadores Melhorias de Desempenho com Pipelines Capítulo 6 – Patterson & Hennessy Organização de Computadores Melhorias de Desempenho.
Estudo de Caso 1: UNIX e LINUX
Capítulo 1 Introdução 1.1 O que é um sistema operacional
Sistemas Operacionais
Componentes do Computador e noções de Arquitetura de Computadores
Linguagens de Programação
HellermannTyton Brasil Sistema de Gerenciamento Integrado HellermannTyton Brasil Sistema de Gerenciamento Integrado Alexandre Martins Consultor de Negócios.
Experiments with Strassen’s Algorithm: from sequential to parallel
Gerenciamento do Escopo
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação Orientada a Objetos
Provas de Concursos Anteriores
Arquitetura de Computadores
2- Entendendo o que é Arquitetura e Organização
Sistemas Operacionais
Arquitetura de Sistemas Operacionais – Machado/Maia 10/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência.
Object Oriented Software Construction (MEYER, Bertrand)
Universidade São Marcos Curso: Gestão de Negócios Internacionais
Algoritmos Culturais.
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
GAPH Integração de Hardware do Usuário ao CoreConnect Leandro Heleno Möller e Leonel Pablo Tedesco Prototipação Rápida e Computação.
MINISTÉRIO DO PLANEJAMENTO Projeto de Lei Orçamentária 2011 Ministro Paulo Bernardo Silva Brasília, novembro de 2010.
Coordenação Geral de Ensino da Faculdade
Arquitetura de computadores
Sistemas Operacionais
É u m e l e m e n t o f u n d a m e n t a l
EXERCÍCIOS PARA GUARDA-REDES
VI Fórum Banco Central sobre Inclusão Financeira
Arquitetura de computadores
GERENCIAMENTO DE REDES UTILIZANDO O PROTOCOLO SNMP
Noções de Software Escola Almirante Soares Dutra
Técnicas de Modelagem para Aplicações em Computação Gráfica
Projeto de Banco de Dados
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Universidade Federal de Pernambuco Centro de Informática Aluno: Erica Sousa – Orientador: Paulo Maciel – Modelagem de.
Organização e Arquitetura de Computadores
Capítulo 1 Introdução 1.1 O que é um sistema operacional
MATRICIAL CONSULTORIA LTDA. PREFEITURA MUNICIPAL DE GARIBALDI 23/10/ : ATENÇÃO Os locais descritos nas planilhas anexas não correspondem ao total.
Máquina de Turing Universal
Alex Fernando dos Santos e José Luís Zem Universidade Metodista de Piracicaba - UNIMEP Curso de Bacharelado em Sistemas de Informação Desenvolvimento de.
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS EM JAVA
Caminhos da Cana Relatório e show de imagens Marcos Fava Neves Prof. FEA/USP Ribeirão Preto Purdue University (2013)
Introdução à Linguagem VHDL
Tópicos em System-Level
Slides before 1st Section Divider
Sistemas Operacionais de Redes Virtualização IGOR ALVES.
PLATAFORMAS VIRTUAIS DE DESENVOLVIMENTO DE SOFTWARE
Transcrição da apresentação:

04/junho/2014

Open Virtual Platform  Introdução  Plataformas Virtuais  OVP ◦ Conceitos ◦ APIs ◦ Modelos de processadores ◦ Exemplos  HeMPS OVP 2

Open Virtual Platform  Desenvolvimento de um projeto SoC é altamente complexo ◦ Otimização de energia ◦ Testabilidade ◦ Verificação ◦ Time-to-market  Proposto uso de PBDs (Platform Based Design) ◦ Reduzir os riscos no desenvolvimento ◦ Diminuir os custos do projeto ◦ Menor tempo 3

Open Virtual Platform  Usa-se modelagem em nível de sistema ◦ Descrever aspectos de hardware em alto nível de abstração ◦ Detalhes desnecessários aos modelos podem ser ocultados  Descrição em software ◦ Simulações mais rápidas ◦ Facilidade na descoberta de erros  Fornecimento de estimativas que auxiliam na tomada de decisões no decorrer do projeto 4

Open Virtual Platform Plataformas Virtuais 5

Open Virtual Platform  Possibilita o desenvolvimento paralelo de Hardware e Software  Descreve-se um conjunto de modelos de hardware, representam um sistema completo  Análise antecipada de problemas de projeto ◦ Consumo de energia ◦ Tráfego de barramento ◦ Uso de memória ◦ Eficiência dos componentes ◦ Desempenho do sistema 6

Open Virtual Platform  Benefícios ◦ Menor Custo de Desenvolvimento ◦ Aumento da Qualidade ◦ Redução de riscos envolvidos com o Desenvolvimento de Software  Simulação de um hardware real  Integração do hardware com o software é feita desde o início do processo de implementação 7

Open Virtual Platform  São parametrizáveis ◦ Tamanho da memória ◦ Profundidade de buffer ◦ Tipos de processadores ◦ Periféricos  Projetistas de Hardware configuram a plataforma virtual e disponibilizam para os engenheiros de software  Tempo de desenvolvimento do produto é reduzido significativamente 8

Open Virtual Platform Virtual 9 Especificação Plataforma Desenv. HW Desenv. SW Especificação Plataforma Produto Final Tradicional Desenv. HW Desenv. Modelo Desenv. SW

Open Virtual Platform OVP 10

Open Virtual Platform  Desenvolvida em 2008  Ferramenta open source, flexível e com licença para 90 dias  Simulação rápida  Configuração de plataformas homogêneas e heterogêneas é simples 11

Open Virtual Platform  Três componentes básicos ◦ OVP models  Consiste em um grupo de modelos de processadores que são disponibilizados gratuitamente para serem usados ◦ OVP APIs  Possibilitam a descrição do comportamento de processadores e periféricos para gerar plataformas virtuais. As APIs são escritas em linguagem C/C++  OVP é composto por quatro APIs ◦ OVPsim  Ferramenta utilizada para gerar os simuladores das plataformas descritas com as APIs 12

Open Virtual Platform Modelos 13

Open Virtual Platform  OVP contém mais de 75 modelos de processadores  Modelos disponíveis na página do OVP para download  Cada modelo contém seu crosscompiler, deve-se baixar o toolchain do modelo requerido  Toolchain está disponível para download na mesma seção do seu modelo, no site do OVP 14

Open Virtual Platform  Principais modelos ◦ ARC (Argonaut Risc Core) ◦ MIPS (Microprocessor Interlocked Pipeline Stages) ◦ ARM (Advanced Risc Machine) ◦ PPC (PowerPC) ◦ OpenRISC (OpenCores) ◦ Renesas ◦ Xilinx Microblaze 15

Open Virtual Platform  ARC ◦ Fabricado pela empresa Synopsys ◦ Automação de projetos eletrônicos  OVP contém três famílias de processadores 32-bits  ARC 600  ARC 700  ARC EM  Contém soluções para otimização de codecs para aplicações Áudio/Vídeo  ARC Audio  ARC Video 16

Open Virtual Platform  MIPS ◦ Atua no mercado de semicondutores por mais de duas décadas ◦ Soluções para aplicações gráficas, vídeo, entretenimento, comunicações (VoIP) e redes 17

Open Virtual Platform  MIPS ◦ OVP contém duas famílias  MIPS 32  MIPS 64 ◦ Adaptados novos modelos  MIPS 32 OR1K  MIPS 32 Aptiv  MIPS M14K 18

Open Virtual Platform  ARM ◦ Utiliza tecnologia avançada para produtos digitais, wireless, rede, entretenimento, automotivo, segurança e dispositivos de armazenamento ◦ Aproximadamente 20 bilhões de chips no mercado ◦ Microprocessadores RISC 19

Open Virtual Platform  ARM ◦ OVP contém duas famílias  ARM Classic  Cortex ◦ Classic  ARM4-11 ◦ Cortex  Cortex-A, Cortex-R e Cortex-M 20

Open Virtual Platform  PowerPC ◦ No mercado desde 1990 ◦ Sociedade entre Motorola, IBM e Apple ◦ Utilizado no mercado automotivo, infraestruturas wireless e servidores ◦ Computação para propósito geral ◦ OVP contém um modelo  mpc82x 21

Open Virtual Platform  OpenRISC ◦ Fabricado pela OpenCores ◦ Maior desenvolvedor de processadores open source. ◦ OVP contém um modelo de processamento  OpenRISC OR1K 22

Open Virtual Platform  Renesas ◦ Fabricado pela Renesas Electronics ◦ Atua na área de micro controladores, sistemas automotivos e dispositivos de potência ◦ Microprocessadores de 32 e 16 bits 23

Open Virtual Platform  Renesas ◦ OVP contém três famílias  V850  M16C  R8C 24

Open Virtual Platform  Xilinx MicroBlaze ◦ Atua no segmento de FPGAs, SoCs e circuitos 3D ◦ MicroBlaze é um RISC de 32 bits com arquitetura Harvard  Acessa a memória de dados separadamente da memória de programa 25

Open Virtual Platform APIs 26

Open Virtual Platform  ICM (Innovative CPU Manager) ◦ API responsável pela configuração da plataforma ◦ As funções da ICM são responsáveis por instanciar todos os componentes do sistema  Processadores  Memórias  Periféricos 27

Open Virtual Platform 28

Open Virtual Platform  VMI (Virtual Machine Interface) ◦ A VMI é utilizada para realizar a descrição do processador ◦ Descreve-se instruções do processador ◦ Pode-se criar novos modelos de processadores ◦ Suporta RISC e CISC ◦ Suporta qualquer formato de instruções 29

Open Virtual Platform  VMI (Virtual Machine Interface) ◦ Principais características do VMI  Instruções de decode  Instruções de comportamento  Cache L1  Tratamento de exceções  Controle Assíncronos 30

Open Virtual Platform  PPM e BHM ◦ PPM (Peripherals Models) ◦ BHM (Behavioral Models) ◦ São utilizados para descrição de modelos de comportamento em hardware e software que sejam periféricos ao processador ◦ Estes modelos executam em um ambiente protegido, sem comprometer a simulação ◦ São executados no PSE (Peripheral Simulation Engines) 31

Open Virtual Platform  BHM ◦ Modelagem de comportamento ◦ Processos, eventos, delays ◦ Inicializa processos ◦ Aguarda por evento ou tempo ◦ Debug através de output 32  PPM ◦ Modelagem de periféricos ◦ Interface com a plataforma ◦ Conexão com barramento ◦ Conexão com a rede

Open Virtual Platform  PPM e BHM ◦ Modelos descritos com esta API devem ser compilados com um toolchain PSE. ◦ Conceitos similares ao SystemC 33

Open Virtual Platform 34

Open Virtual Platform 35 Instalação do Modelo

Open Virtual Platform  Modelos e seus toolchains são encontrados na página do OVP 36

Open Virtual Platform 37 Exemplo Single Processor

Open Virtual Platform 38 Exemplo MultiProcessor

Open Virtual Platform 39 HeMPS OVP

Open Virtual Platform  Níveis de abstração ◦ VHDL ◦ SystemC ◦ OVP 40

Open Virtual Platform 41 OVP (NoC and CPU) - simulação sem noção de tempo + menos tempo de simulção + maior debugabilidade + flexibilidade de modelagem RTL SystemC NoC + ISS (CPU) + plataforma com precisão de clock tempo de simulação intermediário - menor debugabilidade RTL VHDL implementation + plataforma com precisão de clock + noção de área e power - maior tempo de simulação - menos debugabilidade

Open Virtual Platform  Exemplo prático da HeMPS S2 42 dijkstra app S1 Div

Open Virtual Platform 43 HeMPS SC vs OVP

Open Virtual Platform 44 Dúvidas?