A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Picojava Processors Mateus Beck Rutzig

Apresentações semelhantes


Apresentação em tema: "Picojava Processors Mateus Beck Rutzig"— Transcrição da apresentação:

1 Picojava Processors Mateus Beck Rutzig

2 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

3 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

4 Visão do Hardware - Execução InterpretadaJust In TimeExecução Nativa - Lenta - Muita Memória -Rápida -Pouca Memória 1

5 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

6 Plataforma Picojava - Mercado Digital set-top boxes Internet TVs Automotive communication devices GPS (Global Positioning Systems) Network Computers Concorrentes: ARM, MIPS e McCore (Motorola) 2

7 Plataforma Picojava 226 opcodes de tamanhos variando entre 1 e 3 Bytes. 32 bits de tamanho de palavra. Entrada e Saída mapeada em memória Cache Configurável : – Instruções => Mapeada Diretamente,16 bytes por linha, Tamanho 0,1,2,4,8,16 KB. – Dados => Associativa 2 por conjunto, write back, 16 bytes por linha, Tamanho 0,1,2,4,8,16KB. 3

8 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

9 Picojava I – Características Primeiro processador Java para Sistemas Embarcados. Segue os padrões de lógica da JVM: estruturas de pilha. Suporta todo o conjunto de instruções Java. – Somente instruções mais comuns são implementadas em hardware (Adição, Subtração...). – Instruções com multiciclos (Invocação de métodos...) são executadas através de microcódigo (ROM 284x registradores ). – Instruções raramente encontradas no código e ainda mais complexas (Criação de Objetos...) são emuladas, ou seja, S.O. executa uma rotina de software após uma ativação de uma Trap. 4

10 Picojava I – Diagrama de blocos ROM Microcódigo 5

11 Picojava I e II– Gerenciamento de Pilha 6

12 Técnica de Dribbling 7

13 Picojava I e II– Gerenciamento de Pilha Técnica de Folding 8 Variáveis Locais

14 Picojava I e II– Gerenciamento de Pilha Técnica de Folding Picojava I Detecta somente load seguido de instrução de uso do mesmo. Picojava II Utiliza 6 diferentes grupos de folding de instruções. Classifica instruções : Produtoras Consumidoras Operadoras 9

15 Picojava I - Pipeline -Fila de 12 Bytes 10

16 Picojava I - Pipeline -Fila de 12 Bytes -Busca 4 Bytes/ciclo 10

17 Picojava I - Pipeline - Até 5 Bytes - Folding - Stack Cache (R em picojava II) 10

18 Picojava I - Pipeline - Um ou mais ciclos - Acesso a Cache de dados (C em picojava II) 10

19 Picojava I - Pipeline -Escreve resultado na Stack Cache 10

20 Picojava I – Curiosidades Não possui Branch Prediction, desvios são considerados FALSOS => Pipeline Curto. Suporte a monitores => objetos compartilhados por threads. Garbage Collector => desalocação automática de objetos da memória. 11

21 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

22 Picojava II – Características Herda diversas características do Picojava I. Possui um mecanismo de folding mais avançado. Sun Microsystems classificou-o como IP (Intelectual Property) Descrição RTL (Verilog) e documentação aberta para licenciamento. IBM, Fujitsu e LG licenciaram a tecnologia. 12

23 Picojava II – Diagrama de Blocos 13

24 Picojava II – Pipeline 14

25 Picojava II – Pipeline -Fila de 16 Bytes -Busca 8 Bytes/ciclo -Repassa 7 Bytes/ciclo 14

26 Picojava II – Pipeline -Folding Máximo 4 instruções -Decodifica 14

27 Picojava II – Pipeline -Busca de operandos (Stack Cache) -Condições de bypass e misses na Stack Cache 14

28 Picojava II – Pipeline -Executa instruções lógicas e aritméticas -Calcula endereço de desvios e R/W na cache -Instruções com mais de um ciclo => Microcódigo 14

29 Picojava II – Pipeline - Acesso à dados na Cache de dados 14

30 Picojava II – Pipeline - Resultados são escritos na Stack Cache 14

31 Picojava II – Gerenciamento de energia 15 Powerdown, Clock and Scan Unit (PCSU) Modo Normal Cache de instruções e dados podem gerar sinais de desligamento. Modo Standby Instrução priv_powerdown => sinal de desligamento para todas as unidades. Saída do modo através de interrupção. Retorno do clock em 4 ciclos.

32 OUTLINE JVM – Visão do Hardware Plataforma Picojava PicoJava I PicoJava II Fujitsu Picojava II Referências

33 Fujitsu MB86799 Cache: – Instruções : 8 KB – Dados : 8 KB Stack Cache: 64 entradas Unidade de Ponto Flutuante Versões: – 40 MHZ => Consome 90 mW em 1.7 V – 66 MHZ => Consome 260 mW em 2.5 V 16

34 Fujitsu MB86799 – Diagrama de Blocos 17

35 Referências Sun Microsystems. picoJava-II Microarchitecture Guide. Palo Alto: Sun Microsystems, Sun Microsystems. picoJava-II Microarchitecture. Palo Alto: Sun Microsystems, J. M. O'Connor, M. Tremblay, picoJava-I: The Java virtual machine in hardware. IEEE Micro, vol. 17, no. 2: pp , 1997 Sun Microsystems. picoJava-II - Java Processor Core Data Sheet. Fujitsu: picoJava-II Specification disponível por WWW em c/. c/ Pilla, M.L. A Microarquitetura picoJava-II. Porto Alegre: PPGC/UFRGS, 1999 (Trabalho Individual). Beck, A.C.S. Uso da Técnica VLIW para Aumento de Performance e Redução do Consumo de Potência em Sistemas Embarcados Baseados em Java. Porto Alegre: PPGC/UFRGS, 2004 (Dissertação de Mestrado)


Carregar ppt "Picojava Processors Mateus Beck Rutzig"

Apresentações semelhantes


Anúncios Google