aula3-exp2-introdução ao system generator

33
ComL@b – Laboratório de Comunicações Digitais Aula 3 – Exp 2: Introdução ao System Generator Fabbryccio Cardoso Dalton S. Arantes DECOM-FEEC-UNICAMP www.decom.fee.unicamp.br/~cardoso

Upload: others

Post on 20-Mar-2022

17 views

Category:

Documents


0 download

TRANSCRIPT

ComL@b – Laboratório de Comunicações Digitais

Aula 3 – Exp 2: Introdução ao System Generator

Fabbryccio Cardoso

Dalton S. Arantes

DECOM-FEEC-UNICAMP

www.decom.fee.unicamp.br/~cardoso

ComL@b – Laboratório de Comunicações Digitais

Conteúdo

Introdução ao System Generator

Período de simulação, clock e clock enable

Experimento Parte 1

Experimento Parte 2

ComL@b – Laboratório de Comunicações Digitais

Casos de Uso do System Generator

Desenvolvimento e análise de algoritmos para

FPGA com abordagem de PDS.

visualização, geração de estímulos, simulação com

blocos do Simulink, estimação de recursos de HW, co-

simulação.

Implementação de um projeto completo.

Implementação de componentes para projetos

maiores.

ComL@b – Laboratório de Comunicações Digitais

Vantagens

Esconde vários detalhes de HW para facilitar a

abordagem de processamento digital de sinais.

Possibilita uma visão sistêmica e conceitual do

projeto com vários níveis de detalhamento.

Possibilita a geração de código HDL eficiente a

partir de um modelo sistêmico.

Aproveita todos os recursos de visualização,

análise e de simulação disponíveis no Simulink.

Possibilita interagir a simulação em software com a

execução em HW – hardware no loop de simulação.

ComL@b – Laboratório de Comunicações Digitais

Limitações

Não possibilita o gerenciamento e a distribuição de sinais de clock.

Não possui pinos bidirecionais.

Conseqüência: limitações na implementação de interfaces sofisticadas que envolvam, por exemplo, restrições de tempo precisas e eventos de clocknas bordas de subida e de descida.

Solução: utilizar o SysGen para desenvolver componentes para serem integrados externamente (ISE) em VHDL.

ComL@b – Laboratório de Comunicações Digitais

Iniciando Matlab

1. Defina a pasta de trabalho

2. Variáveis do Matlab Workspace3. Browser e Histórico de comandos

4. Inicia o Simulink

ComL@b – Laboratório de Comunicações Digitais

Iniciando o Simulink

1. Criar novo modelo.

2. Bibliotecas/Blocksets.

3. Blocos.

ComL@b – Laboratório de Comunicações Digitais

Modelo Básico para o System GeneratorNavegador de BibliotecasInterface de Configuração

do System Generator

Simulação: converte tipos double, integer ou ponto-fixo do Simulink para o ponto-fixo da Xilinx;Hardware: o bloco é mapeado para portas de entrada do componente em HDL.

Simulação: converte do tipo ponto-fixo da Xilinxpara double do Simulink;Hardware: o bloco é mapeado para portas de saída do componente em HDL.

ComL@b – Laboratório de Comunicações Digitais

Navegador de ModelosNavegador do modelo

Hierarquia do modelo Conteúdo do componente do modelo

Propriedade do componente do modelo

Criar nova variável

Configura a fonte de dados do modelo

ComL@b – Laboratório de Comunicações Digitais

Blocos Básicos

TimeScope

DSP

Sine Wave

fpt dbl

Gateway Out

dbl fpt

Gateway In

|u|

Abs

SystemGenerator

original

double Fix_8_8 doublesaida

erro

Possibilita gerar código VHDL, netlists, componentes e binários.Possibilita simular os blocos do SysGen no Simulink.Possibilita gerar binário para co-simulação.Possibilita co-simulação com HW e ModelSim.Faz o mapeamento dos períodos de simulação para clock e clock enable do componente em hardware.

Definem as fronteiras do projeto.Entre estes blocos pode-se utilizar apenas blocos Xilinx.

ComL@b – Laboratório de Comunicações Digitais

Interface do System Generator

Tipo de compilação

Pode ser:• HDL Netlist (projeto ISE)• NGC Netlist (componente)• Bitstream (binário p/ prog)• EDK Export Tool (EDK)• HW Cosimulation

Família do dispositivo

Síntese para VHDL ou Verilog:• XST, Leonardo Spectrum,• Synplify, Synplify Pro

Período de amostragem base do modelo.

Mapeamento do período de simulação para clock na FPGA (freq = 100MHz, T = 10 ns).

ComL@b – Laboratório de Comunicações Digitais

Gateway In

Fix ou UFix

Truncar ou Arredondar

Wrap, Saturar ou Flag as Error.

Localização dos pinos:

Para barramento de 8 bits é necessário especificar 8 pinos

Implementações de Arredondar e Saturar consomem área.

É boa prática trabalhar com Sample Time normalizado:

Sample Time = 1 para o menor sample time do modelo.

Motivo: menor sample time é mapeado para o clock do sistema.

ComL@b – Laboratório de Comunicações Digitais

Parte Experimental: Objetivos

Introdução a Matlab, Simulink e System Generator;

Explorar a relação entre período de simulação,

clock e clock enable;

Familiarização com blocos básicos do System

Generator.

ComL@b – Laboratório de Comunicações Digitais

Configuração do Experimento

Apenas a placa Digilent XUP Virtex II Pro

Botões e leds

ComL@b – Laboratório de Comunicações Digitais

Desenvolvimento passo-a-passo do modelo em System Generator

Parte 1

ComL@b – Laboratório de Comunicações Digitais

Blocos Básicos do Simulink

ComL@b – Laboratório de Comunicações Digitais

Blocos básicos do SysGen

ComL@b – Laboratório de Comunicações Digitais

Blocos Básicos do SysGen

ComL@b – Laboratório de Comunicações Digitais

Modelo de Simulação

S cope

xlre la tiona lz-1

a

ba =b

Re la tiona l

xlre giste rz-1d

e nq

Re giste r2

xlre giste rz-1d

e nq

Re giste r

fpt dbl

Le d_0

xlinv not

xlinv not

Inve rte r1

xlinv not

Inve rte rout

rst

e n

Counte r

199999999

Consta nt1

1

Consta nt

dbl fpt

Btn_ce nte r

Sy s temGenera tor

ComL@b – Laboratório de Comunicações Digitais

Configuração da Simulação

Menu Simulation – Configuration Parameters

ComL@b – Laboratório de Comunicações Digitais

S cope

xlre la tiona lz-1

a

ba =b

Re la tiona l

xlre giste rz-1d

e nq

Re giste r2

xlre giste rz-1d

e nq

Re giste r

fpt dbl

Le d_0

xlinv not

xlinv not

Inve rte r1

xlinv not

Inve rte rout

rst

e n

Counte r

199999999

Consta nt1

1

Consta nt

dbl fpt

Btn_ce nte r

Sy s temGenera tor

double

double

Bool

UFix_28_0

UFix_28_0

Bool

Bool

Bool

Bool

Bool

Bool

Visualização de Características de Sinais e Portas

Menu Format – Port / Signal DisplaySample Time Colors

Port Data Types

T = 1

T = 1Tclk = 10ns

ComL@b – Laboratório de Comunicações Digitais

Cores para períodos de simulação

ComL@b – Laboratório de Comunicações Digitais

Configuração System Generator

ComL@b – Laboratório de Comunicações Digitais

Configuração dos Blocos GIn e GOut

ComL@b – Laboratório de Comunicações Digitais

Configuração do Contador

ComL@b – Laboratório de Comunicações Digitais

Configuração do Comparador e Constante

ComL@b – Laboratório de Comunicações Digitais

Desenvolvimento passo-a-passo do modelo em System Generator

Parte 2

ComL@b – Laboratório de Comunicações Digitais

S cope

xlre giste rz-1d q

Re giste r2

xlre giste rz-1d q

Re giste r

fpt dbl

Le d_1

xlinv not

Inve rte r2

xlinv not

Inve rte r1

xlconve rtca st

Conve rt

Sy s temGenera tor

doubleUFix_1_0UFix_1_0

UFix_1_0

UFix_1_0UFix_1_0

Segundo Experimento

T = 100e6

T = 1Tclk = 10ns

S cope

1

Consta nt

Sy s temGenera tor

double

T = 100e6

T = 1Tclk = 10ns

S cope

1

Consta nt

double

T = 100e6

O nome do Gateway Out deve ser Led_1.

ComL@b – Laboratório de Comunicações Digitais

Configuração SysGen

ComL@b – Laboratório de Comunicações Digitais

Configuração Registrador

ComL@b – Laboratório de Comunicações Digitais

Configuração GOut

ComL@b – Laboratório de Comunicações Digitais

Avaliação

Visto do experimento = 5 pontos;

Relatório = 5 pontos.

ComL@b – Laboratório de Comunicações Digitais

Relatório

Objetivo do experimento; (0,25 ponto)

Introdução: descrição do funcionamento dos

circuitos do experimento (Parte 1 e Parte 2); (2,25

pontos)

Procedimentos: descrição das etapas executadas

para a realização do experimento (2 pontos)

Resultados e conclusões (0,5 ponto)