Juliano Medeiros Coimbra

Slides:



Advertisements
Apresentações semelhantes
Microcontroladores Uma visão geral.
Advertisements

Contadores e Registradores
1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
UNICAMP Universidade Estadual de Campinas Centro Superior de Educação Tecnológica Divisão de Telecomunicações Propagação de Ondas e Antenas Prof.Dr. Leonardo.
Transmissão de pacotes
Arquitetura de Computadores
Inversor Trifásicos com Três Pernas
Circuitos Lógicos e Organização de Computadores Capítulo 8 –Circuitos Seqüenciais Síncronos Ricardo Pannain
Fig. 2 Pontos críticos na característica de transferência vo(vi) de um inversor genérico. Microelectronic Circuits - Sedra/Smith (resumo sobre circuitos.
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Memorias ROM RAM.
Dispositivos lógicos programáveis (DLP)
Porta Paralela Prof.Almir.
Modelos de Troca de Dados em Nível Elétrico
Sistemas Digitais Projeto RTL – Unidade de Execução
Unidades de Execução e de Controle Sistemas Digitais.
ES723 - Dispositivos Eletromecânicos
Introdução à Informática
MC542 Organização de Computadores Teoria e Prática
Testabilidade Design for Testability (DFT) Guido Araujo Julho 2003.
Arquiteturas Diferentes
MC542 Organização de Computadores Teoria e Prática
Altera NIOS II: uma breve introdução
Altera Excalibur Galileu Batista.
Altera – Mercury Programmable Logic Device Family Linária M. P. de Lima.
Informática Industrial
6. Estruturas p/ Sistemas Discretos
Maria Aparecida Castro Livi
Maria Aparecida Castro Livi
Introdução à Informática
Dispositivos de Lógica Programável
Sistemas Operacionais
Componentes do Computador e noções de Arquitetura de Computadores
Aula 6 Subprogramas Universidade do Vale do Rio dos Sinos
Professor Victor Sotero
Professor Victor Sotero
Experiments with Strassen’s Algorithm: from sequential to parallel
Estrutura do computador
Sistemas Operacionais
ALTERA FLEX 10K CARACTERÍSTICAS
Sistemas Operacionais
Introdução à Programação
Arquitetura de Sistemas Operacionais – Machado/Maia 10/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência.
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap Exercícios.
Object Oriented Software Construction (MEYER, Bertrand)
Barramentos de Expansão ISA, PCI, AGP e PCI Express
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
Modos de Configuração do Dispositivo VIRTEX II XC2V1000 Eduardo Wenzel Briã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.
9º ANO INTRODUÇÃO ÀS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO
Sistemas Operacionais
Introdução teórica A modulação em freqüência consiste na variação da freqüência da portadora proporcionalmente ao sinal de informação. Dado o sinal modulador.
Ordenação Externa de Arquivos – Um exemplo
Sistemas Operacionais I
GERENCIAMENTO DE REDES UTILIZANDO O PROTOCOLO SNMP
ENGA78 – Síntese de Circuitos Digitais
1 2 Observa ilustração. Cria um texto. Observa ilustração.
ELETRÔNICA DIGITAL Circuitos Aritméticos
Computação Gráfica Aula 3 Transformações Geométricas
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
MATRICIAL CONSULTORIA LTDA. PREFEITURA MUNICIPAL DE GARIBALDI 23/10/ : ATENÇÃO Os locais descritos nas planilhas anexas não correspondem ao total.
Redes Neuronais/Neurais/ Conexionistas Introdução
Arquitetura de Computadores Memória - 2 Waldemiro Arruda.
01. Conceitos Básicos e definições
Organização e Arquitetura de Computadores
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Profª. Patrícia Barreto
Lógica Programável PTC2527 – EPUSP Guido Stolfi.
Arquitetura de Sistemas Operacionais
Transcrição da apresentação:

Juliano Medeiros Coimbra juliano_coimbra@yahoo.com.br UNIVERSIDADE ESTADUAL DE CAMPINAS MO801 – Tópicos em Arquitetura e Hardware Prof. Rodolfo Jardim de Azevedo Altera Cyclone™ II Juliano Medeiros Coimbra juliano_coimbra@yahoo.com.br 1

Introdução Produzida para rápida disponibilidade e baixo custo Baseada no feedback dos clientes da Altera Trabalha com o software Quartus II (link no site da disciplina) Possui kits de desenvolvimento de hardware para aumentar a velocidade de produção Capacidade de expansão dos periféricos Visite http://www.altera.com/products/devices/cyclone2/cy2-index.jsp  2

Introdução Oferece 60% a mais de desempenho e ½ do consumo de energia Soluções de baixo custo em processamento embutido (processador Nios II) Solução de baixo custo para DSP: Mais de 150 multiplicadores 18x18; Mais de 1.1Mbit de memória embutida. Minimizando a área de silício, o Cyclone II pode suportar circuitos digitais complexos em um único chip, tudo isso com um custo baixo. Diferentemente dos outros fabricantes de FPGAs, que comprometem o desempenho e o consumo de energia para obter o baixo custo, essa FPGA tornou-se a forma mais rápida de desenvolver soluções para o mercado. O uso do processador Nios II embutido permite alto-desempenho visando aumentar o tempo de vida do produto final como, também, colocá-lo no mercado mais rapidamente. As soluções para DSP contam ainda com: Interfaces de alta velocidade para memória externa; DSP de propriedade intelectual (para fácil uso dos protocolos e interfaces da Cyclone II); DSP Builder para MatLab e MathWorks Simulink; Kit de desenvolvimento DSP da própria Cyclone II. 3

Arquitetura Bidimensional baseada em linhas e colunas Interconexões entre blocos lógicos vetoriais (LABs), blocos de memória e multiplicadores Rede global de clock com mais de 4 PLLs (Phased Locked Loops) Blocos de memória M4K (dual-port, 260 MHz) Blocos de multiplicadores (250MHz) 3 registradores por elemento de I/O (IOE), que são localizados na periferia do dispositivo Suporte para vários padrões de I/O, com entrada máxima de 805 Mbps e saída máxima de 640 Mbps Um LAB consiste de 16 elementos lógicos, que são agrupados em linhas e colunas pelo dispositivo. A rede global de clock possui mais de 16 linhas de clock que percorrem todo o dispositivo, entregando esse sinal por todos os recursos da FPGA. Os blocos de memória M4K possuem 4K bits mais a paridade, podem trabalhar acima de 260MHz. Os multiplicadores da FPGA podem trabalhar com 9x9 bits ou 18x18 bits, com desempenho acima de 250MHz, eles são organizados em colunas pela FPGA. Os padrões de I/O suportados são 66- e 33-MHz, 64- e 32-bit PCI, PCI-X e LVDS. 4

Arquitetura Interface com dispositivos de memórias DDR, DDR2, SDR, SDRAM e QDRII SRAM (acima de 167 MHz) Diagrama da Cyclone II EP2C20 O número de recursos variam de modelo para modelo da Cyclone II. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 5

Elementos Lógicos (LE) O LE é a menor unidade lógica dentro da arquitetura da FPGA. Cada LE possui: Tabela verdade com 4 entradas (que pode implementar uma função com 4 variáveis); Um registrador programável; Elo entre os seus registradores; Habilidade para interconectar todos os registradores; Suporte para empacotamento de registradores; Feedback para registrador. Os registradores programáveis podem operar como um registrador tipo T, JK, D e SR. 6 Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2

LE – modos de operação O Quartus II automaticamente ajusta o LE para o melhor modo de operação Modo NORMAL: apropriado para funções gerais da lógica e funções de combinações (combinational functions) Modo ARITMÉTICO: ideal para implementar contadores, somadores, acumuladores e comparadores O ajuste citado é para funções comuns como contadores, somadores e outras funções aritméticas. O Quartus II também cria a lógica de cadeia do carry, podendo unir mais de 16 LEs. 7

LE – modo normal No modo normal o LE possui suporte para empacotamento de registradores (register packing) e feedback para o registrador. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 8

LE – modo aritmético Nesse modo LE também possui feedback para o registrador e empacotamento de registradores. No modo aritmético há um somador completo de 2 bits e uma cadeia básica de carry. Comparando os dois modos, vemos que o modo aritmético tem menos ligações entre os recursos do LE. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 9

Blocos Lógicos Vetoriais (LAB) Cada LAB possui: 16 LEs; Sinais de controle; Cadeias de carry dos LEs; Cadeias de registradores; Interconexões locais 10

Blocos Lógicos Vetoriais (LAB) Dentro de um LAB temos que: as interconexões locais que transferem sinais entre os LEs; a cadeia de registradores transfere o sinal de saída de um registrador de um LE como entrada de um registrador adjacente (de outro LE); O compilador do Quartus II implementa a melhor cadeia de registradores, voltado para o desempenho e eficiência (menor área). Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 11

LAB – sinais de controle Dois clocks Dois clock enables Dois clears assíncronos Um clear síncrono Um load síncrono Um máximo de sete sinais de controle de uma só vez 12

Interconexões MultiTrack Tecnologia DirectDrive™ Entre linhas Entre colunas Rotas do dispositivo Em todas o Quartus II oferece melhoria de desempenho e utilização Na arquitetura da Cyclone II as conexões multi-trilhas ligam os LEs, os blocos de memória M4K, os multiplicadores e os dispositivos de I/O. Interconexões entre linhas fazem a rota dos sinais de/para LABs, PLLs, blocos de memória M4K e multiplicadores dentro de uma mesma linha. As interconexões entre colunas são similares às das linhas. Cada coluna de um LAB possui uma ligação dedicada com rotas de sinais verticais de/para outros LABs, blocos de memória M4K, multiplicadores, e IOEs de linhas e colunas. Nas rotas do dispositivo cada vetor lógico se comunica da mesma forma que a comunicação entre os LABs, por exemplo, cada bloco se conecta com uma linha e coluna e ganha acesso às regiões dessa linha e dessa coluna. Esses blocos também possuem um acesso direto para conexões rápidas de/para os LABs vizinhos. 13

Clock Global e PLLs Mais de 16 redes de clock global Mais de 4 PLLs Seleção dinâmica da origem do clock Enable e Disable dinâmicos 14

Clock Global e PLLs Aqui vemos o esquema da rede de clock global e PLLs de um modelo pequeno da Cyclone II. Cada rede de clock global possui um bloco de controle de clock para selecionar uma origem de um número de entradas de clock, que são as saídas dos PLLs, os pinos CLK[], os pinos DPCLK[] e a lógica interna), para levar o clock escolhido para a rede global. Os pinos CLK[] são dedicados para serem de clock; os DPCLK[] são de clock de propósito duplo. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 15

Clock Global e PLLs Aqui vemos o esquema da rede de clock global e PLLs dos maiores modelos da Cyclone II. A diferença maior é que agora temos 8 bits para os pinos CLK[] e 16 bits para o clock global. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 16

Pinos de clock dedicados Se não forem utilizados para alimentar a rede global de clock, podem ser usados com outro propósito, tomando o cuidado de não utilizar um registrador de I/O, mas sim algum registrador do LE 17

DPCLK[] e CDPCLK[] Nos modelos menores existem apenas os DPCLK[] Nos modelos maiores da FPGA existem os CDPCLK[] (que passam por um multiplexador antes de chegarem no bloco de controle de clock - atraso) e os DPCLK[] que vão direto para o bloco de controle Quartus II: Input Delay from Dual-Purpose Clock Pin to Fan-Out Destinations São pontos de entrada para sinais PCI e DQS, que fazem interface com memórias externas O Quartus II possui uma solução para propagar um atraso nos pinos DPCLK[] 18

Rede de clock global Podem enviar sinais para o máximo de recursos que a FPGA pode gerenciar sem exceder seu limite de dissipação de energia (fan-out), ou seja, praticamente todos os recursos podem ter esse sinal como uma entrada 19

Bloco de controle de clock São funções do bloco de controle de clock: Seleção dinâmica da origem do clock; Enable/disable da rede de clock global. As seguintes origens podem ser entradas do bloco de controle de clock: 4 pinos de clock do mesmo local do bloco de controle; 3 saídas de clock de um PLL; 3 pinos DPCLK[] ou CDPCLK[] do mesmo local do bloco de controle; 4 sinais gerados internamente. A saída desse bloco de controle pode ser levada para para as lunhas de um LAB e para as colunas da região de I/O. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 20

Phase Locked Loops (PLLs) Dividem ou multiplicam o clock Deslocam o clock Pode ter escolha manual do clock O Handbook traz todas as características e funcionalidades das PPLs, mas aqui vou citar apenas as funções principais. 21

Memória M4K Organizadas em colunas Os registradores de saída podem ser ignorados, mas os de entrada não 4608 bits de RAM Buffer FIFO Bits de paridade Desempenho esperado: 250MHz 22

Memória M4K Byte Enable Ilustração da funcionalidade do byte enable da M4K. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 23

M4K: modos de operação Single-port Simple dual-port #(with mixed width) True dual-port #(with mixed width) Embedded shift register ROM FIFO Buffers Single-port: sem suporte para leitura e escrita simultâneos. Simple dual-port: com leitura e escrita simultâneos. Simple dual-port with mixed width: idem ao anterior, mas com larguras de bits diferentes na leitura e na escrita. True dual-port: suporta duas leituras e escritas ou uma leitura/escrita com feqüências de clock diferentes. True dual-port with mixed width: idem ao anterior, mas com larguras de bits diferentes na leitura e na escrita. Embedded shift register: funciona como registradores; dados são escritos na queda do clock e lidos na subida do mesmo. ROM: um MIF (memory initialization file) inicia o conteúdo da memória. FIFO Buffers: pode ser implementado um FIFO com um único clock ou com clock duplo. Não é permitido leitura/escrita simultânea quando o buffer estiver vazio. 24

M4K: clocks Independent Input/Output Read/Write Single 25 Independent: nesse modo, cada porta possui um clock diferente, por exemplo: porta A e porta B: um clock controla todos os registradores da porta A e outro clock os registradores da porta B. Input/Output: um clock controla a entrada de todos os registradores na memória e o outro a saída da memória para os registradores de saída. Read/Write: mais de um clock são possíveis nesse modo. Clocks de escrita controlam a entrada de dados na mamória e clocks de leitura a saída de dados. Single: um único clock, junto com o sinal de clock enable é usado para controlar todos os registradores dp bloco de memória. Sinais de clear assíncrono não são suportados neste modo. 25

M4K: interfaces Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 26

Blocos de multiplicadores Desenvolvidos para funções de intenso DSP, como: FIT (finite impulse response) FFT (fast Fourier transform) DCT (discrete cosine transform) Trabalha como: Um multiplicador de 18 bits Mais de dois multiplicadores independentes de 9 bits Desempenho esperado: 250 MHz 27

Multiplicadores: conexões Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 28

Estrutura de I/O Buffer bidirecional com 3 registradores de saída para transferência de dados bidirecional A figura ilustra a estrutura de um IOE (Elemento de entrada e saída). Ele contém um registrador de saída, um de entrada e um de saída com enable. O Quartus II automaticamente duplica um registrador de habilitação de saída que controle saídas múltiplas ou pinos bidirecionais. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 29

Estrutura de I/O Interface de tensão múltipla: a FPGA pode se ligar a outros dispositivos com tensões diferentes Pinos de I/O possuem utilizam os padrões de energia LVPECL, LVDS, HSTL ou SSTL Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 30

Sinais através do bloco de I/O Cada IOE contém sua própria seleção de sinal de controle para os seguintes sinais destacados na figura. Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 31

I/O: interfaces com memórias externas 167 MHz / 333 Mbps para DDR e DDR2 SDRAM 167 MHz / 667 Mbps para QDR II SRAM 32

Configuração e teste Tabela mostrando as maneiras de configurar a GPGA Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 33

Configuração e teste A FPGA possui circuitos JTAG BST que satisfazem os padrões da IEEE (1149.1) Os dispositivos de JTAG também monitoram a operação da lógica, aceitando vários comandos JTAG Também aceita AS e PS 34

Hot-Socketing A placa que contém a FPGA pode ser removida durante o funcionamento do resto do barramento, sem causar efeitos indesejados Suporte para qualquer seqüência de ativação de dispositivos Sem ruídos no barramento durante a inserção da placa Uma característica da FPGA trabalhando em conjunto com outros dispositivos eletrônicos. 35

Bibliografia Cyclone II Device Handbook, Volume 1, Altera, versão CII5V1-2.2 36