Lab 3. Timing Timing Constraints Simulação



Documentos relacionados
VHDL Lógica Síncrona. Sinais de Saída. Sinais de Entrada. barreira. carg. VHDL -Lógica Síncrona

Flip-Flops (Aplicações) Prof. Rômulo Calado Pantaleão Camara

Implementação de um Sistema Digital em VHDL Cronômetro para Jogos de Basquete

CAPÍTULO 5 CIRCUITOS SEQUENCIAIS

Projeto Dirigido: Genius

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21

EA773 - Experimento 5

3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA. Projeto e simulação de um gerador de frequência

Circuitos Seqüenciais

Eletrônica Digital para Instrumentação. Herman Lima Jr.

SISTEMAS DIGITAIS CIRCUITOS SEQUENCIAIS BÁSICOS

DECODIFICADOR DE DISPLAY DE 7 SEGMENTOS COM LATCH

MINISTÉRIO DA EDUCAÇÃO IFSC - Campus São José. CST em Telecomunicações ELETRÔNICA DIGITAL CONTADORES. Marcos Moecke

Projeto de Máquinas de Estado

Índice. Modelos e Procedimentos

Contadores (Aula1) Prof. Rômulo Calado Pantaleão Camara

AULA 5 Aplicação com divisor de freqüência com o CI Livro Texto pág.197 a 200.

Circuitos sequenciais elementares

Organização de Computadores 1

LABORG. Parte 5 Projeto de um circuito digital de média complexidade Parte 2. Fernando Gehm Moraes Matheus Trevisan

12/11/13. Obje%vos do laboratório. SST20707 Síntese de Sistemas de Telecomunicações. Síntese de máquinas de estado (FSM) Finite State Machine (FSM)

Circuitos Seqüenciais: Latches e Flip-Flops. Fabrício Noveletto

Circuitos Digitais Cap. 6

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Capítulo 7 Circuitos sequenciais: latches, flipflops, registradores, contadores

Projecto e Controlo em Lógica Digital

Registradores. Circuitos Lógicos. DCC-IM/UFRJ Prof. Gabriel P. Silva

LABORATÓRIO DE ELETRÔNICA DIGITAL Experiência 9: Análise de Circuitos com Contadores

Organização e Arquitetura de Computadores II

Entradas Digitais. PdP. Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006

UFSM-CTISM. Circuitos Digitais Contadores Aula-11

Figura 1 - Diagrama de um sistema de controle de temperatura que requer conversão analógico-digital para permitir o uso de técnicas de processamento

Programação Básica em STEP 7 Operações Binárias. SITRAIN Training for Automation and Drives. Página 6-1

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

CONTROLE DE UM SERVO MOTOR

UNIVERSIDADE FEDERAL DO PARANÁ. Projeto de Circuito Integrado: Convesor Série-Paralelo Bidirecional

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Circuitos Sequenciais. Sistemas digitais

Prototipação de Sistemas Digitais. Metodologia de Projetos Cristiano Araújo

ARQUITETURA DE COMPUTADORES

Capítulo VIII Registradores de Deslocamento e Contadores

Microprocessadores e Microcontroladores Prof. Edilson R. R. Kato Simulação do computador SAP-1

Conversores D/A e A/D

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Circuitos Lógicos Registradores e Contadores

Contadores. Contadores Assíncronos Crescentes

CAPÍTULO 5 CONTADORES NA FORMA DE CIRCUITO INTEGRADO

Primeiros "computadores" digitais. Execução de um programa. Consolas. Primórdios dos computadores. Memória interna. Computadores com memória interna

O Hardware Dentro da Unidade do Sistema

INSTITUTO DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SERGIPE COORDENADORIA DE ELETRÔNICA CONTADORES

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

Sistemas Digitais I LESI :: 2º ano. Questões Práticas de Sistemas Sequenciais

CIÊNCIA E TECNOLOGIA DO RIO INFORMÁTICA BÁSICA AULA 03. Docente: Éberton da Silva Marinho ebertonsm@gmail.com 25/06/2014

LABORG. Parte 3 - VHDL: Processos, Paralelismo e o Comando process. Fernando Gehm Moraes Ney Laert Vilar Calazans

Família CJ2. Novos CLPs com alta qualidade comprovada. Controladores Programáveis

Descreva em VHDL, simule no simulador logico e sintetize usando uma ferramenta de CAD para FPGA :

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT DEPARTAMENTO DE ENGENHARIA ELÉTRICA DEE

Componentes de um Computador: Modelo Von Neumann

EPUSP PCS 3335/3635 Laboratório Digital. Circuito em VHDL

R S Q Tabela 17 - Tabela verdade NOR

INTRODUÇÃO BARRAMENTO PCI EXPRESS.

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

MINISTÉRIO DA EDUCAÇÃO CEFET/SC - Unidade de São José. Curso Técnico em Telecomunicações CONTADORES. Marcos Moecke

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Sistemas Operacionais

Controladores Lógicos Programáveis CLP (parte-3)

Informática I. Aula 4. Aula 4-11/09/2006 1

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Universidade Federal de Santa Catarina Departamento de Informática e Estatística Bacharelado em Ciências da Computação

Tipos enumerados definem uma lista de valores, e são especialmente úteis na

Disciplina: Laboratório de Circuitos Digitais

FLIP-FLOPS FLOPS. INTRODUÇÃO Os circuitos anteriormente estudados são chamados de

Figura 01 Visão Geral da Placa

DATA: HORÁRIO DE ENTRADA: HORÁRIO DE SAÍDA: BANCADA: NOMES DOS COMPONENTES DO GRUPO DE TRABALHO: PROJETO - CONTADORES ASSÍNCRONOS

11.3) Circuitos conversores D/A

Suporte de funcionamento e interacção com o teclado

Aula 09. Memórias e Circuitos Digitais Seqüenciais

Circuitos sequenciais elementares

CAPÍTULO 4 CIRCUITOS SEQUENCIAIS II: CONTADORES ASSÍNCRONOS

Placas Adaptadoras e montagem de Redes

Controlador de Interrupções com Prioridades Rotativas Julho de 2001

Básculas, Flip-Flops e Debouncing

Introdução ao Desenvolvimento de Circuitos Digitais Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h

Conversão Analógica Digital

TÉCNICAS DIGITAIS I (CURSO DE ENGENHARIA DE TELECOMUNICAÇÕES)

CP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03

Módulo I. Desenvolvimento Software CLP - Básico

HARDWARE COMPONENTES BÁSICOS E FUNCIONAMENTO. Wagner de Oliveira

Projeto com Dispositivos Programáveis

- Arquitetura de sistemas digitais- Cap 1 - Introdução

Laboratório de Arquitetura de Computadores IST - Taguspark 2014/2015 Introdução ao simulador Guião 1 23 a 27 fevereiro de 2015

Exercícios de Fixação

ARQUITETURA DE COMPUTADORES

FPGA & VHDL. Tutorial

20/09/2009 TRANSFORMANDO DADOS EM. PROCESSANDO DADOS George Gomes Cabral SISTEMAS NUMÉRICOS INFORMAÇÕES

Exercícios Referentes à Prova P1

Programação de CLPs por 1. Diagramas de Contato

Conceitos básicos do

Transcrição:

Lab 3 Timing Timing Constraints Simulação A. Mariano - 2014 1

VHDL processes Para um designer, process é um bloco de instruções que funciona de maneira sequencial e que é chaveado quando algum dos sinais ao qual ele está relacionado muda de estado. my_process: process (input1, input2) begin output1 <= input1 and input2; end process; Um evento (mudança de estado) em um dos sinais sensíveis é que chaveia o process Para 'clocked' processes, a lista dos sinais sensíveis deve conter obrigatóriamente o sinal de relógio (clock) A. Mariano - 2014 2

Instruções IF if [condition] then statements; end if; if [condition] then statements; else statements; end if; A. Mariano - 2014 3

Detecção da borda de subida de um clock if rising_edge(clock_signal) then [statements] end if; if clock_signal'event and clock_signal = '1' then [statements] end if; A. Mariano - 2014 4

Declaração de elementos de armazenamento Elementos de armazenamento são declarados como um sinal local. A maneira como o designer implementa o seu código é que os faz atuar como elementos de armazenamento. Se um sinal só é atribuído durante a transição do relógio, o armazenamento será implementado usando flip-flops:... architecture behavioural of counter signal counter : STD_LOGIC_VECTOR(7 downto 0); begin count: process(clock) begin if rising_edge(clock) then counter <= counter+1 end if; end process; end architecture;... A. Mariano - 2014 5

Declaração de elementos de armazenamento Inicialização do elemento de armazenamento signal counter : STD_LOGIC_VECTOR(7 downto 0) := "00000000"; Forma mais conveniente para vetores maiores: signal counter : STD_LOGIC_VECTOR(7 downto 0) := (others => '0'); A. Mariano - 2014 6

Contador de 8 bits (exemplo) A. Mariano - 2014 7

Contador de 8 bits (exemplo) A. Mariano - 2014 8

Desafio 1 Contador binário crescente de 30 bits... - Modifique o seu projeto visando a implementação de um contador binário de crescente de 30 bits. a) Atribua os 8 bits mais significativos aos 8 LEDs do kit NESYS 2; b) Efetue o mapeamento do clock (NET "Clk" LOC = "B8";) c) Verifique se a sintaxe está correta e faça a implementação do projeto. A. Mariano - 2014 9

O problema da temporização Como responder corretamente a especificação do projeto? A solução proposta é rápida o suficiente para atender a especificação? Utilizar uma FPGA mais rápida (custos ) Utilizar macros do fabricante da FPGA (portabilidade ) Otimizar o código a ser implementado (designer skills $$$) A. Mariano - 2014 10

O problema da temporização Como responder corretamente a especificação do projeto? A solução proposta é rápida o suficiente para atender a especificação? Utilizar uma FPGA mais rápida (custos ) Utilizar macros do fabricante da FPGA (portabilidade ) Otimizar o código a ser implementado (designer skills $$$) ESPECIFICAÇÃO: - Aquisição de sinais (bordas e duração de pulsos) com precisão de 10ns - Pulsos podem ocorrer em um intervalo de 4s ANÁLISE: -Dando uma certa margem de segurança ao projeto, F = 250 MHz - impondo 4ns de incerteza na detecção das bordas e 8ns de incerteza na medida da largura dos pulsos. - como os pulsos podem ocorrer em um intervalo de 4s, um contador de 30 bits faz-se necessário. A. Mariano - 2014 11

Velocidade de Operação Qual é a frequência máxima em que um design pode operar? A. Mariano - 2014 12

Velocidade de Operação Qual é a frequência máxima em que um design pode operar? O mais rápido que a sua FPGA e seu DESIGN permitirem!!! A. Mariano - 2014 13

Velocidade de Operação Após a síntese e mapeamento, é possível verificar o tempo de propagação de um determinado sinal (ou conjunto de sinais) A. Mariano - 2014 14

Velocidade de Operação Fmáx = 246 MHz A. Mariano - 2014 15

Como um design afeta a velocidade de operação? Cada um flip-flop atua como um ponto de partida ou de chegada para um sinal digital. Quando um sinal de relógio surge, o flip-flop assume um novo valor. O sinal atualizados sai do flip-flop e começa a se propagar através de células lógicas ligadas a este ramo até que todos os sinais lógicos estejam estáveis e todos os flip-flops tenham o seu valor atualizado. Para que um design funcione corretamente, o sinal de atualização tem que chegar ao flip-flop com, pelo menos, o tempo suficiente para garantir que, quando o relógio comutar novamente o sinal irá ser capturado com segurança (setup time). A. Mariano - 2014 16

Como um design afeta a velocidade de operação? Routing time: tempo necessário para "carregar os fios" que encaminham os sinais entre as diferentes células lógicas. Como se pode imaginar o comprimento das interconexões e o número de portas conectadas às trillhas ("fan-out") determina a quantidade de corrente necessária para transferir os sinais com precisão através da FPGA, e, portanto, o routing time. Logic time: tempo necessário para que uma célula lógica possa reagir a uma mudança de entrada Setup time: o tempo necessário para assegurar que o sinal atinja o seu destino final a cada comutação de relógio A. Mariano - 2014 17

É possível aumentar a velocidade de operação sem alterar o design? Imposição de uma restrição de projeto A. Mariano - 2014 18

Timing Constraints Após setar as restrições de tempo, reconstrua o projeto A. Mariano - 2014 19

Static Timing Report A. Mariano - 2014 20

Static Timing Report 30 bits 30*0,103 = 3,09 ns Fmáx = 267 MHz A. Mariano - 2014 (sem o roteamento!!!) 21

Desafio 2 Design de um contador binário de 30 bits que funcione a uma cadência de 250 MHz - Otimizar o código desenvolvido anteriormente de forma a atender a especificação - Simular o projeto e elaborar relatório ( a ser entregue IMPRESSO na próxima aula), contendo: - Código do design otimizado (print-screen do report apresentando a frequência máxima de operação) - Print-screen dos principais resultados de simulação (todos os resultados apresentados devem ser comentados e justificados) Dica: o ponto crítico deste design é o tempo necessário para que o sinal se propague no contador do BIT(0) ao BIT(29) 30 bits 30*0,103 = 3,09 ns A. Mariano - 2014 22