Computadores dedicados

Documentos relacionados
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS DLP. 15/8/2013 Prof. Joselito ELP1DLP1 / npee / DEE 1

FPGA & VHDL. Tutorial Aula 1. Computação Digital

Opções de Design para Circuitos Integrados CMOS

SISTEMAS DIGITAIS MEMÓRIAS E CIRCUITOS DE LÓGICA PROGRAMÁVEL

Introdução a Sistemas Digitais

PUC-Rio. Dispositivos Lógicos Programáveis

Parte # 2 - Circuitos Combinatórios

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS. SEL Sistemas Digitais Prof. Homero Schiabel

Introdução ao módulo LabVIEW FPGA

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

MEMÓRIAS SEMICONDUTORAS

Arquitectura de Computadores LEEC/MEEC (2006/07 2º Sem.)

Prof. Eliezer Soares Flores 1 / 22

Barramentos internos/externos

1 MEMÓRIAS 07/08. como armazenar mais do que um bit? Até ao momento... MEMÓRIA =FLIP- FLOP

Programador/a de Informática

Sistemas Digitais: Introdução

CMP 238 Projeto e Teste de um Sistema VLSI

SISTEMAS DIGITAIS MEMÓRIAS E CIRCUITOS DE LÓGICA PROGRAMÁVEL

FACULDADE LEÃO SAMPAIO

INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura

EPROM - EEPROM Dispositivos Lógicos Programáveis

Memórias RAM e ROM. Adriano J. Holanda 9/5/2017. [Introdução à Organização de Computadores]

Circuitos Lógicos. Profa. Grace S. Deaecto. Faculdade de Engenharia Mecânica / UNICAMP , Campinas, SP, Brasil. grace@fem.unicamp.

Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa

HARDWARE Componentes do Computador

Microelectrónica (ME)

Sistemas de Computação Hardware. Sistema Central Periféricos

Desenvolvendo aplicações com LabVIEW FPGA. Rogério Rodrigues Engenheiro de Marketing Técnico Marcos Cardoso Engenheiro de Vendas

Projecto de Sistemas Digitais - EEC0055 4º ano, 1º semestre /08

Roteiro. Sistemas de Computação Hardware. Sistema Central Periféricos

ULA (ALU) - UNIDADE DE ARITMÉTICA E LÓGICA

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

Prof. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo

Arquitetura e organização de computadores Uma visão geral

14/3/2016. Prof. Evandro L. L. Rodrigues

William Stallings Arquitetura e Organização de Computadores 8 a Edição. Capítulo 5 Memória interna

Lic. Engenharia de Sistemas e Informática

Computadores e Programação (DCC/UFRJ)

Projecto de Sistemas Digitais

Os computadores necessitam de uma memória principal, cujo papel primordial é armazenar dados e programas que estejam a ser utilizados no momento.

COMPUTADOR. Adão de Melo Neto

Sistema de Memórias COMPUTADOR CONTROLE ENTRADA VIA DE DADOS SAÍDA PROCESSADOR MEMÓRIA S E TO R R EC RE CEI TA S T EM S E TO R C A RNE S


13 CIRCUITOS DIGITAIS MOS

HARDWARE COMPONENTES DO COMPUTADOR

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores I

Arquitetura de Computadores. Memórias

- Arquitetura de sistemas digitais- Cap 2 Arquitetura de computadores

Capítulo 9 M E M Ó R I A

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

ELETRÔNICA DIGITAL II

Trabalho Prático Nº3 Porta Paralela

Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup

FPGA Field Programmable Gate Array

Sistemas Digitais (SD) Máquinas de Estado Microprogramadas: Circuito de Dados e Circuito de Controlo

Profª Danielle Casillo

Organização e Arquitetura de Computadores INTRODUÇÃO

Fundamentos de Sistemas Digitais. Lógica Sequencial. Prof. Dr. Alexandre M. Amory Prof. Dr Edson I. Moreno

Introdução à Programação de Computadores Fabricação Mecânica

SSC510 Arquitetura de Computadores 1ª AULA

Hardware. Computador. Computador. Computador. Evolução dos Computadores. Laboratório de Utilização de Microcomputadores (DCA0302) Aula 01

Memórias. Memórias: Utilização:

Escola Secundária de Emídio Navarro

Capítulo 2 Livro do Mário Monteiro Componentes Representação das informações. Medidas de desempenho

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

Algoritmos Computacionais

Arquitetura de computadores

Conceitos e Gerenciamento de Memória

Dispositivos Lógicos Programáveis

Conceitos Básicos Processador

INFORMÁTICA BÁSICA HARDWARE: COMPONENTES BÁSICOS E FUNCIONAMENTO.

Circuitos Lógicos Aula 26

Sistemas Embarcados:

SISTEMAS DIGITAIS (SD)

Arquitetura FPGAs e CPLDs da ALTERA RESUMO

Entender a diferença de velocidade UCP/MP e o conceito de localidade.

Transcrição:

Computadores dedicados CPU processador de usos gerais produção em larga escala, baixo custo ASIP processador para uma área de aplicação desenvolvimento ASIC circuito dedicado para uma aplicação circuito optimizado para a aplicação alvo fabricar um ASIC é (muito) caro para pequenos volumes justifica-se quando se quer optimizar o desempenho FPGAs nova tecnologia de implementação digital sem custos de fabrico, flexibilidade semelhante a software algoritmo mapeado para hardware dedicado grandes ganhos de desempenho face a CPUs ou ASIPs novo paradigma: computadores dedicados e reconfiguráveis ASPD 2003/2004 - jca@fe.up.pt 1

CCMs Custom Computing Machines máquinas de cálculo dedicadas (associadas a CPUs) aceleradores de partes críticas de aplicações o software está bem escrito? não se pode optimizar? como identificar essas secções? projecto combinado hw/sw (hardware/software co-design) partes da aplicação implementadas como hw dedicado como implementar? ASICs, ASIPs, combinação dos dois? realização de operações específicas ao nível da função ou sub-programa (coarse grain) exploração do paralelismo e dos tipos de dados ao nível das operações, funções ou programas ganho em rapidez limitado pela lei de Amdhal ASPD 2003/2004 - jca@fe.up.pt 2

FPGA - Field Programmable Gate Array 1985/86: Xilinx introduz nova família de PLDs FPGA - Field Programmable Gate Array agregados regulares de blocos lógicos configuráveis (CLB para XILINX) ligações programáveis entre os blocos lógicos blocos configuráveis de complexidade reduzida (dezenas de portas lógicas) unidade básica: look-up table (LUT) de 4 entradas elementos de memória: flip-flops, latches, blocos de RAM (inclui dual-port) uma LUT de 4 entradas faz qualquer função lógica combinacional de 4 entradas configuração rápida por escrita em SRAM configuração volátil, necessita EPROM auxiliar configuração in-circuit e rápida (reconfiguração completa em milissegundos) possibilidade de reconfiguração parcial Sistemas reconfiguráveis baseados em FPGAs construídos uma vez, re-utilizáveis um número arbitrário de vezes prototipagem de hardware digital circuitos para aplicações específicas máquinas de cálculo dedicadas (custom computing machines) ASPD 2003/2004 - jca@fe.up.pt 3

FPGA - fluxo de projecto... assign S0=A0 ^B0, C1=A0&B0, S1=A1^B1^C1, S2=A1&B1 A1&C1 B1&C1;... síntese lógica -RTL > gate level mapeamento tecnológico A0 B0 S0 S1 A0 B0 A1 B1 S0 S1 S2 A1 síntese física B1 - place&route - timing analysis - bitstream generation bloco lógico configurável interruptores programáveis interligações S2 bloco de entrada/saída ASPD 2003/2004 - jca@fe.up.pt 4

FPGAs - características Programação eléctrica anti-fuse (programador, definitiva) EPROM, EEPROM (programador ou in-circuit, não volátil) SRAM (in-circuit, volátil) Arquitecturas de FPGAs correntes Xilinx Actel Algotronix Altera PLA PLA PLA PLA bloco lógico configurável ASPD 2003/2004 - jca@fe.up.pt 5

FPGAs arquitecturas de blocos configuráveis Look-up tables A B C D RAM multiplexers A B mux portas lógicas e muxs A B mux mux mux pares de transístores blocos PLA ASPD 2003/2004 - jca@fe.up.pt 6

FPGAs - aplicações circuitos para aplicações específicas (ASICs) substituir um circuito integrado fabricado por medida emulação e prototipagem de hardware acelerar processos de validação (3 a 5 ordens de magnitude) emulação de sistemas mistos digital-analógico processadores dedicados (CCM - Custom Computing Machines) especificamente desenhados para acelerar partes de aplicações paralelismo das operações natureza das operações (por exemplo manipulação de bits) associados a processadores convencionais uma plataforma reconfigurável (física) para diferentes processadores ASPD 2003/2004 - jca@fe.up.pt 7

FPGAs grandes e rápidas Actualmente XILINX produz FPGAs com 10.000.000 de equiv. gates (www.xilinx.com) frequências reais de relógio atingem centenas de MHz incluem blocos de SRAM, multiplicadores, CPUs (PwrPC) implementação de SoC complexos (apenas digitais) desenvolvimento apoiado por ferramentas de síntese Problemas Verilog/VHDL, Matlab/Simulink geradores de blocos complexos (FFT, DCT...) projecto combinado HW/SW (com µp+fpga) validação complexa (>70% do tempo total de projecto) ASPD 2003/2004 - jca@fe.up.pt 8

FPGAs XILINX (www.xilinx.com) XC4000 (introduzida em 1991, já descontinuada) considerado um standard industrial configuração por SRAM blocos lógicos configuráveis (CLB) com LUTs de 4 e 3 entradas abundância de flip-flops (2 por CLB e 1 por I/O) arquitectura do tipo array, canais de interligação abundantes RAM distribuída circuitos dedicados para geração e propagação de carry interconexões hierárquicas capacidade de readback (configuração e nós internos) algumas versões: E, X, XL, XLV Famílias actuais Spartan, Spartan3, Virtex (1998, 1M gates, 2.5V), VirtexE (2000, 1.8V), Virtex2 Pro (2002, PowerPC+FPGA) ASPD 2003/2004 - jca@fe.up.pt 9

exemplo XC4000E layout ASPD 2003/2004 - jca@fe.up.pt 10

CLB CLB switch matrix ASPD 2003/2004 - jca@fe.up.pt 11

XC4000E I/Os, OSC, BUFG ASPD 2003/2004 - jca@fe.up.pt 12

XC4000E switch matrix ASPD 2003/2004 - jca@fe.up.pt 13

ASPD 2003/2004 - jca@fe.up.pt 14

ASPD 2003/2004 - jca@fe.up.pt 15

ASPD 2003/2004 - jca@fe.up.pt 16

ASPD 2003/2004 - jca@fe.up.pt 17

ASPD 2003/2004 - jca@fe.up.pt 18

ASPD 2003/2004 - jca@fe.up.pt 19

ASPD 2003/2004 - jca@fe.up.pt 20

ASPD 2003/2004 - jca@fe.up.pt 21

Sistemas digitais reconfiguráveis projectar e fabricar ASICs é caro (pequenas quantidades) não é praticável construir CCMs baseados em ASICs CCMs em sistemas digitais reconfiguráveis nos finais de 80, com o aparecimento de FPGAs plataformas de implementação de sistemas digitais reconfiguração rápida um número arbitrário de vezes custo elevado, mas reutilizáveis para diferentes CCMs arquitecturas de plataformas com FPGAs optimizadas para tipos de aplicações ganhos de desempenho anunciados de 10 a >1000 vezes aplicações bem seleccionadas, que encaixem bem na plataforma ASPD 2003/2004 - jca@fe.up.pt 22

Reconfiguração dinâmica reutilizar hw em run-time para diferentes funções FPGAs são reconfiguradas em milisegundos tempo de reconfiguração deve ser diluído no tempo de execução operações de granularidade elevada não necessárias ao mesmo tempo permite multiplicar o número de gates disponíveis aumento da densidade funcional (muitas funções na mesma área) configurações armazenadas em dispositivos de baixo custo memória, disco, servidores remotos reconfiguração parcial partes da FPGA são reconfiguradas enquanto outras trabalham a mesma área física é partilhada por diferentes blocos de hw funciona de forma semelhante a uma cache para circuitos lógicos ASPD 2003/2004 - jca@fe.up.pt 23

Reconfiguração dinâmica figura 2.5 ASPD 2003/2004 - jca@fe.up.pt 24

CCMs - exemplos PAM - Programmable Active Memories DEC labs, Paris1989 DECPeRLe0 (25 XC3020, 512K, 30MHz) DECPeRLe1 (23 XC3090, 4MB, 100MHz) DCT, 48 operações vírgula fixa em 32 bits em 40ns (15000MIPs) PRISM Processor Reconfiguration through Instruction Set Metamorphosis Universidade de Brown, 1993 PRISM I (4 XC3090, MC68010) PRISM II (3 XC4010, Am29050 RISC) ganho de 8 vezes em algoritmos genéticos, ASPD 2003/2004 - jca@fe.up.pt 25

DECPeRLe1 (PAM) figura 2.10 ASPD 2003/2004 - jca@fe.up.pt 26

PRISM-II figura 2.11 ASPD 2003/2004 - jca@fe.up.pt 27

CCMs - exemplos Splash Supercomputing Research Center, EUA, 90 Splash: 32 XC3090, 128K em cada FPGA Splash 2: 16 XC4010, 512K por FPGA comparação de sequências de nucleótidos (DNA) 45 vezes mais rápido do que um ASIC dedicado DISC Dynamic Instruction Set Computer explora reconfiguração dinâmica e parcial de FPGAs instruções são carregadas em run-time, usando reconfiguração 15% da área gasta para o controlador global restante área disponível para instruções dedicadas ASPD 2003/2004 - jca@fe.up.pt 28

Splash 2 figura 2.12 ASPD 2003/2004 - jca@fe.up.pt 29

DISC-II figura 2.14 ASPD 2003/2004 - jca@fe.up.pt 30

CCMs - exemplos AnyBoard (1992) prototipagem rápida de hardware, orientada para ensino inserido em PCs ligados em rede, utilização remota FEUPix (FEUP, 2000) sistema de prototipagem digital de baixo custo orientado para ensino, baixo custo, fácil de usar Fafner (INESC/FEUP, 2000) aceleração do cálculo de empacotamentos 2D (polígonos irregulares) combina um PC, um ASIP e um array de nós dedicados (ASICs) desempenho linear com o número de nós de processamento Lista de CCMs: http://www.io.com/~guccione/hw_list.html ASPD 2003/2004 - jca@fe.up.pt 31

AnyBoard figura 2.7 ASPD 2003/2004 - jca@fe.up.pt 32