amba - facom.ufms.brricardo/courses/vhdl/material/amba.pdf · tipos amba axi amba asb amba apb amba...

30
AMBA (Advanced Microcontroller Bus Architecture) Denis Neves de Arruda Santos 12-04-2006 RA 066365

Upload: danghanh

Post on 30-Apr-2018

261 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA(Advanced Microcontroller Bus Architecture)

Denis Neves de Arruda Santos

12-04-2006

RA 066365

Page 2: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

Introdução

Barramento de padrão abertoInterconecta módulos de um SoC

Page 3: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

Vantagens

Desenvolvimento modularIndependente de tecnologiaFlexibilidadeCompatibilidadeSuporte

Page 4: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

Tipos

AMBA AXI

AMBA ASB AMBA APB

AMBA AHB

Barramento de

Periféricos

Barramento de

Sistema

Page 5: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

Exemplo

(ARM, 1999)

Page 6: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB(Advanced High-performance Bus)

Múltiplos mestresTransferências intermitentesOperações com única borda de clockTransações com divisãoOperações de transferência com a utilização de pipelineGrande largura no barramento (de 8 até 1024 bits)

Page 7: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Componentes� Mestre� Escravo� Árbitro� Decodificador

Page 8: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Estrutura

(ARM, 1999)

Page 9: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Sinais� HCLK – sinal de clock� HBUSREQx – requisição do mestre para acessar o barramento

� HGRANTx – permite que o mestre use o barramento

� HADDR[31:0] – endereçamento� HWRITE – indica se a operação é de escrita ou leitura

� HWDATA[31:0] – dado enviado pelo mestre para o escravo

Page 10: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Sinais (cont.)� HRDATA[31:0] – dado enviado do escravo para o mestre

� HSELx – seleciona um escravo� HREADY – indica que a tranferência terminou

Page 11: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Transferência simples

(ARM, 1999)

Page 12: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AHB

Transferência em pipeline

(ARM, 1999)

Page 13: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB(Advanced System Bus)

Múltiplos mestresTransferências intermitentesOperações de transferência com a utilização de pipeline

Page 14: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB

Componentes� Mestre� Escravo� Decodificador� Árbitro

Page 15: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB

Tipos de transações� NONSEQUENTIAL – transação única ou a primeira de uma série

� SEQUENTIAL – transação relacionada com a anterior

� ADDRESS-ONLY – sem transferência de dados

Page 16: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB

Sinais� BCLK – sinal de clock� BA[31:0] – endereçamento� BWRITE – indica se a operação é de leitura ou escrita

� BD[31:0] – sinal bidirecional de dados� BTRAN[1:0] – tipo da transação

Page 17: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB

Sinais (cont.)� DSELx – seleciona um escravo� BWAIT – indica se a transferência já terminou

Page 18: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA ASB

Exemplo de transferência

(ARM, 1999)

Page 19: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB(Advanced Peripheral Bus)

Baixo consumo de energiaPouca largura de bandaBaixo desempenho

Page 20: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB

Sinais� PCLK – sinal de clock� PADDR[31:0] – endereçamento� PWRITE – indica se a operação é de leitura ou escrita

� PRDATA – dado lido pelo escravo� PWDATA – dado a ser escrito

Page 21: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB

Sinais (cont.)� PSELx – seleciona um escravo� PENABLE – indica o segundo ciclo de uma transferência

� PREADY – indica se a operação terminou

Page 22: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB

Diagrama de estados

(ARM, 2004)

Page 23: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB

Transferência de escrita

(ARM, 2004)

Page 24: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA APB

Transferência de leitura

(ARM, 2004)

Page 25: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AXI(Advanced eXtensible Interface)

Alta largura de bandaBaixa latênciaCompatível com o AHB e APB

Page 26: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AXI

Canais� Endereçamento� Dado da leitura� Resposta da leitura� Dado da escrita� Resposta da escrita

Page 27: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AXI

Exemplo de leitura

(ARM, 2004)

Page 28: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA AXI

Exemplo de escrita

(ARM, 2004)

Page 29: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

Referências

ARM. AMBA Specification [online]. 1999. Disponível: http://www.arm.com/products/solutions/AMBA_Spec.html. Acessado em: 06/04/2006.ARM. AMBA AXI Protocol v1.0 Specification [online]. 2004. Disponível: http://www.arm.com/amba_axi/. Acessado em: 08/04/2006.ARM. AMBA 3 APB Potocol v1.0 Specification [online]. 2004. Disponível:http://www.arm.com/products/solutions/AMBAOverview.html. Acessado em: 08/04/2006.QUEIROZ, Daniel Cruz. Implementação do barramento on-chip AMBA baseada em computação reconfigurável [online].2005. Disponível: http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06042005-160026/publico/Dissertacao.pdf. Acessado em: 05/04/2006.

Page 30: AMBA - facom.ufms.brricardo/Courses/VHDL/Material/AMBA.pdf · Tipos AMBA AXI AMBA ASB AMBA APB AMBA AHB Barramento de Periféricos Barramento de Sistema

AMBA(Advanced Microcontroller Bus Architecture)

Denis Neves de Arruda Santos

[email protected]