1 / 17

Arquitetura PA-RISC

Arquitetura PA-RISC. Daniel M. Aquino, Marcelo C. Perez, Thais A. B. Fernandes. Princípios da Arquitetura PA-RISC. Todas as instruções são diretamente executadas por hardware. Instruções levam um ciclo de clock para serem completadas. Maximizar a taxa à qual as instruções são executadas.

mason
Download Presentation

Arquitetura PA-RISC

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arquitetura PA-RISC Daniel M. Aquino, Marcelo C. Perez, Thais A. B. Fernandes

  2. Princípios da Arquitetura PA-RISC • Todas as instruções são diretamente executadas por hardware. • Instruções levam um ciclo de clock para serem completadas. • Maximizar a taxa à qual as instruções são executadas. • As instruções precisam ser facilmente decodificadas. • Somente as instruções de load e store devem referenciar a memória.

  3. Organização Geral dos Sistemas PA-RISC

  4. Módulo Processador – Estrutura Geral

  5. A Microarquitetura do PA-8000

  6. Organização da Memória • Endereçamento absoluto de memória principal de 32 bits, representando um inteiro sem sinal, cujo valor representa o endereço do primeiro (com o menor endereço) byte do operando ao qual ele faz referência. (PA-RISC 1.1). • Os dispositivos de E/S são mapeados na memória. • Endereços que referenciam a memória vão de 0x0000000 a 0xEFFFFFFF (4 GBytes), e aqueles que referenciam dispositivos de E/S vão de 0xF0000000 a 0xFFFFFFFF (256 MBytes).

  7. Relacionamento entre o espaço de endereçamento de E/S e o espaço de endereçamento de memória principal

  8. Memória Virtual • Conjunto de espaços lineares de 4 GBytes de comprimento. • Cada um desses possui um identificador (space ID) e é dividido em páginas de tamanho fixo de 4 Kbytes. • Cada objeto dentro do espaço é especificado por um offset de 32 bits. A concatenação do offset com o identificador de espaço forma um endereço virtual completo. • O offset de cada byte dentro de cada página é especificado pelos 12 bits menos significativos do endereço virtual.

  9. Estrutura de memória

  10. Conjunto de Instruções • Pequeno número de instruções. • Instruções possuem sempre 32 bits. • São executadas em um ciclo de clock do processador. • Formato geral.

  11. Registradores • Trinta e dois registradores de 32 bits de propósito geral: fonte principal de dados para as operações. • Oito registradores de espaço estão disponíveis, nomeados de SR0 a SR7. Esses contêm identificadores de espaço para endereçamento virtual. • Registradores de Estado.

  12. Instruções de Referência a Memória • Load e Store são as únicas que referenciam a memória. • Dois modos de endereçamento primário nas máquinas PA-RISC para acesso a memória: o base-relativo e o indexado. • LDW deslocamento(espaço_id, base), destino • STH fonte, deslocamento(espaço_id, base)

  13. Instruções Aritiméticas e Lógicas • Multiplicação sem uma instrução de Multiplicação: não possuem hardware para executar multiplicação e divisão de inteiros diretamente. • Operações de Shift e Add podem realizar qualquer operação de inteiros por uma constante. • Exemplo: Multiplicação por 10 • SH2ADD x,x,x :: Shift-left x em dois bits (multiplica por 4), adiciona a x e guarda o resultado em x. • ADD x,x,x :: Soma x a ele mesmo e guarda o resultado em x. • Compiladores para as máquinas PA-RISC convertem qualquer multiplicação por inteiros constantes em uma série de instruções ADD e SHIFT-ADD.

  14. Instruções de Branch • O Branch Retardado (Delayed Branching) da Arquitetura PA-RISC: execução de pelo menos uma instrução útil em cada ciclo de clock. • Não sabemos antecipadamente que instrução é referenciada pelo branch. • Atraso na execução do branch por um ciclo de clock. Como resultado, uma instrução seguinte ao branch é executada antes que o controle seja passado para a instrução destino do branch. • Breakpoints para debugar programas para PA-RISC

  15. Fluxo de Execução de Instruções • Apresentam pipeline e implementam execução superescalar. • PA-8000: esquema ousado de execução de instruções fora de ordem. • Taxa de execução próxima a quatro instruções por ciclo de clock. • Muitas unidades funcionais, que provêem processamento auxiliar ao processador. • Escalonamento de instruções a nível de hardware, obtendo um paralelismo muito alto, diferentemente das implementações anteriores que delegavam essa tarefa ao compilador. • Execução especulativa.

  16. Softwares para a arquitetura PA-RISC • Um grande número de sistemas operacionais está disponível para máquinas PA-RISC, sendo todos eles sistemas Unix, ou baseados nesse. • Sistemas Operacionais Comerciais: HP-UX e o NeXTSTEP • Sistemas Operacionais de Código Aberto: Diversos sistemas operacionais abertos baseados em Unix estão disponíveis para máquinas PA-RISC, incluindo OpenBSD, NetBSD e Linux.

  17. Conclusão • Estrutura dinâmica • Simples • Grande velocidade • Trabalhando com um conjunto de instruções curtas e simples, consegue alcançar grande performance. • Seus códigos têm de ser bem construídos.

More Related