O pen v irtual p latforms
Download
1 / 44

O pen V irtual P latforms - PowerPoint PPT Presentation


  • 69 Views
  • Uploaded on

Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática. 04/junho/2014. O pen V irtual P latforms. Guilherme Afonso Madalozzo Doutorando Fernando Gehm Moraes Orientador. Sumário. Introdução Plataformas Virtuais OVP Conceitos APIs Modelos de processadores

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' O pen V irtual P latforms' - hedya


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
O pen v irtual p latforms

Pontifícia Universidade Católica do Rio Grande do Sul

Faculdade de Informática

04/junho/2014

Open Virtual Platforms

Guilherme Afonso Madalozzo

Doutorando

Fernando Gehm Moraes

Orientador


Sum rio
Sumário

  • Introdução

  • Plataformas Virtuais

  • OVP

    • Conceitos

    • APIs

    • Modelos de processadores

    • Exemplos

  • HeMPS OVP


Introdu o
Introdução

  • 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


Introdu o1
Introdução

  • 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



Plataformas virtuais
Plataformas Virtuais

  • 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


Plataformas virtuais1
Plataformas Virtuais

  • 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


Plataformas virtuais2
Plataformas Virtuais

  • 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


Plataformas virtuais3
Plataformas Virtuais

Tradicional

Produto Final

Desenv. SW

Especificação Plataforma

Desenv. HW

Produto Final

Virtual

Especificação Plataforma

Desenv. SW

Desenv. Modelo

Desenv. HW



OVP Conceitos

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


Ovp conceitos
OVP Conceitos

  • 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



Modelos
Modelos

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


Modelos1
Modelos

  • Principais modelos

    • ARC (ArgonautRiscCore)

    • MIPS (MicroprocessorInterlockedPipeline Stages)

    • ARM (AdvancedRiscMachine)

    • PPC (PowerPC)

    • OpenRISC (OpenCores)

    • Renesas

    • XilinxMicroblaze


Modelos2
Modelos

  • 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


  • Modelos3
    Modelos

    • 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


    Modelos4
    Modelos

    • MIPS

      • OVP contém duas famílias

        • MIPS 32

        • MIPS 64

      • Adaptados novos modelos

        • MIPS 32 OR1K

        • MIPS 32 Aptiv

        • MIPS M14K


    Modelos5
    Modelos

    • 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


    Modelos6
    Modelos

    • ARM

      • OVP contém duas famílias

        • ARM Classic

        • Cortex

      • Classic

        • ARM4-11

      • Cortex

        • Cortex-A, Cortex-R e Cortex-M


    Modelos7
    Modelos

    • 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


    Modelos8
    Modelos

    • OpenRISC

      • Fabricado pela OpenCores

      • Maior desenvolvedor de processadores open source.

      • OVP contém um modelo de processamento

        • OpenRISC OR1K


    Modelos9
    Modelos

    • Renesas

      • Fabricado pela Renesas Electronics

      • Atua na área de micro controladores, sistemas automotivos e dispositivos de potência

      • Microprocessadores de 32 e 16 bits


    Modelos10
    Modelos

    • Renesas

      • OVP contém três famílias

        • V850

        • M16C

        • R8C


    Modelos11
    Modelos

    • 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



    Ovp apis
    OVP APIs

    • 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


    Ovp apis1
    OVP APIs


    Ovp apis2
    OVP APIs

    • 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


    Ovp apis3
    OVP APIs

    • 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


    Ovp apis4
    OVP APIs

    • 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)


    Ovp apis5
    OVP APIs

    • PPM

      • Modelagem de periféricos

      • Interface com a plataforma

      • Conexão com barramento

      • Conexão com a rede

    • BHM

      • Modelagem de comportamento

      • Processos, eventos, delays

      • Inicializa processos

      • Aguarda por evento ou tempo

      • Debug através de output


    Ovp apis6
    OVP APIs

    • PPM e BHM

      • Modelos descritos com esta API devem ser compilados com um toolchain PSE.

      • Conceitos similares ao SystemC


    Ovp apis7
    OVP APIs



    Como instalar um modelo
    Como Instalar um Modelo

    Modelos e seus toolchains são encontrados na página do OVP


    ExemploSingle Processor


    ExemploMultiProcessor


    HeMPS OVP


    Hemps ovp
    HeMPS OVP

    • Níveis de abstração

      • VHDL

      • SystemC

      • OVP


    Hemps ovp1
    HeMPS OVP

    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


    Hemps ovp2
    HeMPS OVP

    dijkstraapp

    Div

    S2

    S1

    Exemplo prático da HeMPS


    HeMPS SC vs OVP



    ad