aula13 - unicampcardoso/ie344b2008s1/aula13-exp9.pdf · title: microsoft powerpoint - aula13.pptx...

15
ComL@b – Laboratório de Comunicações Digitais www.decom.fee.unicamp.br/~cardoso Aula 13, Exp 9: Controle remoto de dispositivos FPGA a partir da rede Fabbryccio Cardoso D lt S A t Dalton S. Arantes DECOM-FEEC-UNICAMP

Upload: others

Post on 14-Oct-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

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

Aula 13, Exp 9: Controle remoto de dispositivos FPGA a partir da rede

Fabbryccio Cardoso

D lt S A tDalton S. Arantes

DECOM-FEEC-UNICAMP

Page 2: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Objetivos do ExperimentoObjetivos do Experimento

Implementar um sistema em FPGA que possa ser

t l d ti d t UDP/IP d controlado a partir de pacotes UDP/IP gerados a

partir de um aplicativo na rede.

Familiarização com o Core Generator da Xilinx.

Familiarização com o IP Core Tri Mode Ethernet ç

MAC 2.1.

Familiarização com a pilha de protocolos

MAC/IP/UDPMAC/IP/UDP.

Page 3: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Visão Geral do ExperimentoVisão Geral do ExperimentoAplicação Simulink para leitura de pacotes UDP

Cabo Cross Ethernet

Projeto FPGA para jgeração de pacotes UDPSimUdpClient3

UDP Send

data

length_data

Dados

6

Page 4: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Visão Geral do ProjetoVisão Geral do Projeto

tx_errorclient loopback

Top Level

tx_enable

tx_data[3:0]

client_loopback

ten_100_1g_eth_fifo eth_sysgen_udp_clk_wrapper

tx_clock

rx_clock

tx_data[8:0]TX Client FIFO ll_data_out

rx_data[3:0]

rx_error

Tri Mode Ethernet MAC

rx_data[8:0]RX Client FIFO

Módulo SysGen

ll data inrx_data_valid

carrier_sense

RX Client FIFO ll_data_in

PHY Ethernet 10/100 FPGA Xilinx

collision

PHY Ethernet 10/100Intel LXT972A

FPGA Xilinx Virtex2P30

Page 5: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

TarefasTarefas

Gerar o módulo NGC do Tri-Mode Ethernet MAC 2.1

i l í l t d j te incluí-lo na pasta do projeto.

Desenvolver módulo em System Generator para

interpretar pacotes IP/UDP recebidos de

computador remoto com o objetivo de controlar a

freqüência do piscar de um led.

Desenvolver módulo para piscar um led de forma p p

intermitente.

Page 6: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Modelo SysGen para recepção de pacotes

IP FPGA 192.168.5.2 MAC FPGA 00-a5-aa-aa-55-56IP Notebook 192.168.5.3

Modelo SysGen para recepção de pacotes

src_rdy

ll_data_outdbl fpt

fpt dbl

l l data out0xlregisterz-1d q

Sy stemGenerator

doubleUFix_8_0UFix_8_0

double UFix_1_0

Módulo Desempacotador

sof

ll_sof _out

ll_eof _out

ll_src_rdy_in fpt dbl

l l_sof_outdbl fpt

l l_sof_infpt dbl

ll_eof_out

l l_data_out

1 1 0 ones(1,199)

1

xlregisterz-1d q

xlregisterz-1d q double

double

double

UFix_1_0

UFix_1_0

UFix 1 0

UFix_1_0

UFix_1_0

UFix 1 0

UFix_1_0double

const

eof

data_in

ll_src_rdy _out

data_out

v alido

xlregisterz-1d

enq

fpt dbl

ll_src_rdy_outdbl fpt

l l_eof_in

dbl fpt0 1:36 4 210 37:1

1 ones(1, 199) 0 xlregisterz-1d q

convercast

doubleUFix_1_0UFix_1_0UFix_1_0

UFix_8_0

double

double

UFix_32_0

UFix_32_0

BoolUFix_1_0

subsistema_ledv alido

receive_udp

0

en

memoria

fpt dbldbl fpt

l l_data_in

0 xlregisterz-1d q

convercast

UFix_1_0 doubledouble UFix_1_0 UFix_1_0Módulo Piscar Led

Antes de ler, sinalizar que você (destino) está pronto.Antes de escrever, verificar se o destino está pronto.

ready_to_receive ll_dst_rdy_outll_dst_rdy_in

Page 7: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Detalhe do DesempacotadorDetalhe do Desempacotador

5data_out

src_rdydata_out[src_rdy] [data_out]

1src_rdy

UFix_1_0

UFi 8 0

UFix_32_0

6valido

2

1ll_data_out

0

padding

1xlmcodedesempacotador

sof

valido

state

[sof]

[state]

[valido]

2sof

UFix_1_0

UFix_8_0

UFix_1_0

UFix_1_0

UFix_2_0

3ll_eof_out

ll_sof_outctrl

eof

idx [index]

[data in]

[eof]

3eof

UFix_1_0

UFix_6_0

4ll_src_rdy_out

data_inporta_udp

controlador

[ _ ]

4data_in

UFix_8_0UFix_16_0

Interface para geração de pacote não será utilizada.

Page 8: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

DesempacotadorDesempacotador

Máquina de estados que interpreta pacotes MAC/IP/UDP

recebidos a partir da interface local-link da FIFO RX;recebidos a partir da interface local-link da FIFO RX;

Entradas: src_rdy, sof, eof e data_in;

Saídas: data out e valido;Saídas: data_out e valido;

Parâmetros: last_index_hdr (41) e last_index_data

(45);(45);

Estados internos:

data: armazena o parâmetro de controle (4 bytes);data: armazena o parâmetro de controle (4 bytes);

porta: armazena o campo de cabeçalho porta de destino

(2 bytes);

index: contador interno utilizado para indexar os bytes dos

pacotes recebidos. Conta de 0 a 45. De 0 a 41 indica

b lh 36 37 i di b b 42 45 ãcabeçalho, 36 e 37 indicam os bytes porta, bytes 42 a 45 são

os bytes de dados;

Page 9: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Máquina de EstadosMáquina de Estados

Page 10: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Diagrama de tempoDiagrama de tempo

Page 11: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Módulo Piscar LedMódulo Piscar Led

Consiste em um registrador de 1 bit cujo conteúdo

é i tid ti d bl f üê i é invertido a partir do enable em uma freqüência

constante;

O enable é ativado quando um contador free

running, responsável pela marcação de tempo,

alcança o valor do parâmetro de controle de tempo;

Ex.: parâmetro = 100e6 corresponde a um intervalo

de tempo de 1s;

Contador deve ser resetado quando o mesmo é

maior que o parâmetro de controle.

Page 12: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Diagrama de Estados (LED)Diagrama de Estados (LED)

Page 13: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Diagrama de Tempo (LED)Diagrama de Tempo (LED)

B+N < A

Page 14: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

Requisitos para Geração de BinárioRequisitos para Geração de Binário

Binário do projeto será gerado a partir do System

G t tili d d d il ã Generator, utilizando modo de compilação

“Bitstream” com utilização dos seguintes netlists:

Projeto principal: projeto_top.ngc;

TEMAC: tri_mode_eth_mac_v2_1.ngc;

Componente debouncing:

comp_reset_clk_wrapper.ngc;

bé d ili d C j fTambém deve ser utilizado o UCF projeto_top.ucf;

Mcode: desempacotador.m

Todos os arquivos são fornecidos com excessão do

Netlist do TEMAC que deverá ser gerado pelo aluno.

Page 15: Aula13 - Unicampcardoso/ie344b2008s1/Aula13-exp9.pdf · Title: Microsoft PowerPoint - Aula13.pptx Author: cardoso Created Date: 5/26/2008 11:55:12 PM

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

AvaliaçãoAvaliação

Execução do experimento (Visto): 5,0 pontos

Componente SysGen: 5,0 pontos

Módulo desempacotador: 4,0 pontos

Módulo led: 1,0 pontos