Antonyus Pyetro Infra-estrutura de Hardware – IF674

Slides:



Advertisements
Apresentações semelhantes
Estruturação de Linguagens (Pascal e C++)
Advertisements

CPU: Controle e processamento
Estruturas de Repetição
Arquitetura e organização de computadores
Meu primeiro programa em ARDUINO
A Arquitetura: conjunto de instruções
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Unidade Lógica e Aritmética Introdução à Ciência da Computação
Sistemas Digitais Projeto RTL – Unidade de Execução
Unidades de Execução e de Controle Sistemas Digitais.
Verilog AULA - 3.
VHDL AULA - 2.
Teste de Software Parte 3.
Linguagens de Programação Orientadas a Objetos
Dicas de Circuitos MO801/MC912.
VHDL (outros tópicos) MO801/MC912.
Organização de Computadores Inserindo o Controle Identifica pontos de controle no caminho de dados – Busca da instrução – Operações lógicas e aritméticas.
FLI – ModelSim Pedro Velho.
Sistemas Digitais Microprocessados
Registradores de deslocamento (Shift Register)
VERILOG HDL (HARDWARE DESCRIPTION LANGUAGE)
Hardware Description Language (HDL)
O latch RS QN (QN)inv 1 S R QN+1 (QN+1)inv
Máquina de Estados Uma máquina de estados finitos ou autômato finito é uma modelagem de um comportamento composto por estados, transições e ações Um estado.
O Flip-Flop Mestre/Escravo
Sintaxe de Fortran 25/abril/2006. Comandos Fortran PROGRAM PRINT READ STOP END.
Algoritmos e Estruturas de Dados II
Autor: Fernando de Mesentier Silva
Processadores – Aula 3 Professor: André Luis Meneses Silva
Tópicos Tipos de Dados Variáveis por Valor Variáveis por Referência
O Portal do Estudante de Computação
O Portal do Estudante de Computação
Sistemas Digitais Aula 11.
Paradigmas de programação
Variáveis, Tipos de Dados e Constantes
< declaração de variáveis > ( estrutura de dados )
Antonyus Pyetro Infra-estrutura de Hardware – IF674
Antonyus Pyetro Infra-estrutura de Hardware – IF674
Unidade Central de Processamento
Projeto de um Comparador Descrição Estrutural x Comportamental
© 2003 Introdução à programaçãoComputadores e programação I Linguagens de programação Introdução ao C (continuação)
BRAZIL IP The BrazilIP Network Verilog Curso do Brazil-IP Elmar Melcher UFCG
Prof. Manoel Eusebio Prof. Abel Guilhermino
Augusto Sampaio e Paulo Borba Centro de Informática
Capítulo III Modularização Procedimentos e Funções Universidade Federal de São Carlos Departamento de Computação Aluna: Luanna Lopes Lobato
Linguagem Pascal Prof. Sérgio Rodrigues.
Memória Principal.
Unidade Central De Processamento: Processador
“Introdução a Computação” Capítulo II Estruturas de Dados
Eletrônica Digital II ELT013
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013
Hardware Description Language Aula 8 –Verilog HDL
Hardware Description Language Aula 9 –Verilog HDL Prof. Afonso Ferreira Miguel, MSc.
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Arquitetura de Computadores 2009 Infra-estrutura Hardware
Projetando Sistemas Digitais com SystemVerilog
Tudo sobre o Processador
Parte 3 Seção de Dados e Unidade de Controle
VERILOG.
VERILOG Monitoria Infra-Estrutura de Hardware Álvaro João – ajss Húgaro Bernardino – hbb Fred Rabelo - ferrf Leonardo Leandro – lsl2 Jéssica de.
Introdução a VHDL Monitoria de Digitais.
ALGORITMIA. ALGORITMO Conjunto de instruções ou acções que ao serem executadas, permitirão realizar uma determinada tarefa.
1 Hardware Description Language (HDL)  Para quê precisamos de uma Linguagem de Descrição de Hardware ?  Modelar, Representar e simular hardware digital.
Projetando Sistemas Digitais com SystemVerilog
1. 2 Objetivos 1.Análise dos resultados da primeira avaliação. Notas importantes para futuro. 2.Comunicação de placas baseadas em FPGAs com computador.
Linguagem de Programação
Verilog HDL. Introduzida em 1985 pela Gateway Design System Corporation Após 1990, passou a ser de domínio público, e em 1995 passou a ser padrão IEEE.
USP – ICMC – SSC SSC0300 2º Semestre 2015 Disciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Eletrônica ] 1 Prof. Dr. Daniel Rodrigo.
Organização de Computadores Implementação da UCP Construção do caminho de dados Controle Implementação monociclo.
 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.
Transcrição da apresentação:

Antonyus Pyetro apaf@cin.ufpe.br Infra-estrutura de Hardware – IF674 Verilog – aula 2 Antonyus Pyetro apaf@cin.ufpe.br Infra-estrutura de Hardware – IF674

Roteiro Motivação Tipos de dados Operadores Condicionais Parâmetros vs Defines Delays e eventos Loops Exercícios

Motivação Desenvolver Circuitos lógicos e aritméticos ULA, somador, multiplicador, memória, muxes Elementos básicos de processamento Compõem o caminho de dados (datapah)

Tipos de dados Dois grupos: Registradores e Nets (redes) reg – registrador; wire – net Valores 0 – representa zero lógico, ou falso 1 - representa um lógico, ou verdadeiro x – representa value desconhecido (don’t care) z – representa alta-impedancia

Tipos de dados - wire Representam conexões físicas entre duas entidades estruturais (entre 2 módulos) Nunca guarda o valor atribuído a ele Saída de uma porta logica Resultado de um operador assign Valor inicial - z

Tipos de dados - reg Elemento de armazenamento de dados Guarda o valor atribuído a ele até a próxima atribuição Valor inicial - x

Tipos de dados - Integer Tipo inteiro – 32 bits Default – signed Declaração integer IntA;

Declaração Exemplo Vetores wire w1, w2; // declara 2 wires reg [4:0] x, y, z; // declara 3 registradores de // 5-bit Vetores Reg [ msb_expr : lsb_expr ] Acesso : leitura – outa = vec[3:2] escrita – vec[1] = 0;

Exemplo - memória reg[7:0] mema[0:255]; 256 registradores de 8 bits Endereços de 0 até 255 reg [1:n] rega ≠ reg mema [1:n] Rega = 0 vs mema[1] = 0

Operadores {} concatenation + - * / arithmetic % modulus {bit1,word,databus} { b, {3{a, b}} } equivale {b, a, b, a, b, a, b} + - * / arithmetic % modulus > >= < <= relational && || ! logical and, or, negation == != logical (in)equality << >> left right shift

Condicionais If( condição) begin end “condição” ? “then” : “else” Similar a C/C++ “condição” ? “then” : “else”

Parâmetros e Defines `define “var” “value” parameter Iguais ao #define de C Escopo global parameter permitem modularização Escopo local de um module

Delays e eventos #”delaytime” , @ (posedge clock) #1ns Em blocos procedurais Exemplo module modxor (axorb, a, b); parameter size=8, delay=15; output [size-1:0] axorb; input [size-1:0] a, b; wire [size-1:0] #delay axorb = a ^ b; endmodule always @(posedge ack)begin repeat(3)@(posedge clk) a = b; end

Loops Repeat (“iterations”) While(“condition”) for (initial_assignment; condition; step_assignment)

Initial O bloco só é executado 1 vez no inicio da simulação Initial begin end

Atividades 1- módulo de geração de clock (não sintetizavel) Período de 10ns Saída – clk (1 bit) Memória com circuito de refresh A cada subida do sinal de refresh lê e re-escreve o valor atual de todas as posições de memória Memória com 256 palavras de 8bits Permite leituras e escritas na memória Entradas: wr, rd, datain, refresh Saídas: dataout

Referências www/~apaf/if674 Manual de referência da linguagem verilog2