Avalon总线协议

Avalon总线主要用于片内处理器与外设,常用于高速数据传输流、读写寄存器和存储器、控制片外器等。

Avalon 总共有七种接口:

  • Avalon Clock Interface, Avalon时钟接口 -- 驱动或接收时钟信号的接口
  • Avalon Reset Interface, Avalon复位接口 -- 驱动或接收复位信号的接口
  • Avalon Memory Mapped Interface(Avalon-MM), Avalon存储器映射接口 --基于地址的读/写接口,是主-从连接的典型接口。
  • Avalon Streaming Interface(Avalon-ST), Avalon Streaming接口 --支持单向数据流的接口,包括多数据流、数据包和DSP数据的传输。
  • Avalon Conduit Interface, Avalon Conduit接口 --适用于不适合其他Avalon类型的单个/多个信号。使用该信号可以将信号导出到顶层SOPC系统,这样就可以将它连接到设计的其他模块。
  • Avalon Tri-State Conduit Interface(Avalon-TC), Avalon三态Conduit接口 -- 与片外设备的接口。
  • Avalon Intterrupt Interface, Avalon中断接口 --允许组件向其他组件发送信号的接口。

每种接口都有自身的信号,其中有一些信号是必须的,而有一些信号则是可选的。

Avalon接口通过属性描述它们的行为,每种接口类型的规范定义了所有接口的属性和默认值。

1.Avalon时钟接口

Avalon时钟接口定义了组件使用的时钟,分为两个信号:Clock Sink信号Clock Source信号

Clock Sink信号为其他接口和内部逻辑提供时钟和时序参考,有clockRate属性

名称 默认值 值范围 说明
clockRate 0 0\sim 2^{32}-1

表示Clock Sink接口的频率(Hz)。

Clock Source信号为从一个组件中输出一个时钟信号,具有三个属性:

名称 默认值 值范围 说明
associateDirectClock N/A 输入时钟名 直接驱动该时钟的时钟名称
clockRate 0 0\sim 2^{32}-1 表示驱动时钟输出的频率(Hz)
clockRateKnown false true,false 指示时钟频率是否已知

2.Avalon复位接口

   Avalon时钟复位接口分为Reset Sink信号Reset Source信号

Reset Sink信号包含两个信号reset/reset_nreset_req。其中reset/reset_n为必需的输入,能够将接口或组件的内部逻辑复位成用户定义的状态,复位的同步属性由synchronousEdges参数定义。reset_req是一个可选信号,复位信号的早期指示,用来禁止时钟使能或屏蔽片上存储器的地址总线,在异步复位输入置位时防止地址转变。其属性为:

名称 默认值 值范围 说明
associatedClock N/A 时钟名称 与此接口同步的时钟的名称。如果synchronousEdges的值为DEASSERT或者BOTH,那么需要使用此属性。
synchronousEdges DEASSERT

NONE

DEASSERT

BOTH

表明复位输入所需要的同步类型。

NONE    --不需要同步

DEASSERT  --复位是异步的,取消复位是同步的

BOTH  --复位和取消复位是异步的

Reset Source信号包含reset/reset_nreset_req,作用与上信号相同,但属性不同。

名称 默认值 值范围 说明
associatedClock N/A 时钟名称 与此接口同步的时钟的名称。如果synchronousEdges的值为DEASSERT或者BOTH,那么需要使用此属性。
associatedDirectReset N/A 复位名称 复位输入的名称,此复为输入通过one-to-one链路直接驱动此复位源。
associatedResetSinks N/A 复位名称 指定复位输入,使复位源对复位进行复位。
synchronousEdges DEASSERT

NONE

DEASSERT

BOTH

表明复位输入所需要的同步类型。

NONE    --不需要同步

DEASSERT  --复位是异步的,取消复位是同步的

BOTH  --复位和取消复位是异步的

3.Avalon存储器映射接口

Avalon存储器映射接口(Avalon-MM)主要用于实现主-从(Master-Slave)组件的读写接口,微处理器、存储器、UART、DMA、定时器是常用的包含Avalon存储器映射接口的组件。

Avalon总线协议_第1张图片

Avalon MM master通过内部互联Interconnect连接Avalon MM slave,就是主连接从,

至于其他设备,如uart,一端连接到桥上,另一端连接到真实的串口。

两个基本概念:

传输(Transfer)  -- 传输是对一个字或一个或多个数据符号的读或写操作。传输发生在Avalon-MM接口和互连(interconnect)之间。传输需要一个或多个时钟周期才能完成。master和slave都是传输的一部分,Avalon-MM master启动传输,Avalon-MM slave做出相应。

Master-slave pair  --指传输中涉及的master接口和slave接口。在传输过程中,主接口控制和数据信号通过互连结构并与从接口交互。

一些时序说明:Avalon 总线 时序 介绍

一些信号和属性:avalon总线MM主设备、avalon总线MM从设备

发现别人已经写的很好了,一下子就想偷懒不想写了,主要内容太多了嘿嘿 0.0

你可能感兴趣的:(混口饭吃的FPGA,fpga开发,网络协议,嵌入式硬件)