Avalon-ST总线规范_第1页
Avalon-ST总线规范_第2页
Avalon-ST总线规范_第3页
Avalon-ST总线规范_第4页
Avalon-ST总线规范_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Avalon-ST总线规范6.1 介绍Avalon流传输(Avalon-ST)接口可以被用户用来作为各组件的数据通信接口,该接口具有高带宽、低延时和非双向的特点。典型应用场合包括多数据流、数据包和DSP数据的传输。Avalon-ST接口信号可以被描述成传统的数据流接口,即支持传输单个数据流而不需关心通道数和数据包的大小范围。接口也支持更加复杂的协议,包括突发传输,和数据包在多个通道间交错传输等功能。图6.1显示了典型的Avalon-ST接口应用。图6.1Avalon-ST接口典型例子R-mtedCircuitBoard所有的Avalon-ST源端口和目标端口不可以与第三个端口互相相连(译者注:

2、只能两两相连)。但是,如果两个端口对一个应用空间提供了兼容的功能,自适应逻辑可以允许这些端口互连。6.1.1 性能指标下面是Avalon-ST的一些突出的性能指标:低延迟,高吞吐量的点到点数据传输支持多通道传输和灵活的在多个通道间交错传输单边的信号传输信道,提供数据包错误、数据包开始和结束的标志支持数据突发传输自适应接口6.1.2 术语和概念本节定义了Avalon-ST总线协议中的术语和协议。Avalon-ST流传输系统Avalon流传输系统包括一个或多个Avalon-ST端口,用来发送或接收数据流。流传输系统如图6.1所示。包括Avalon-ST接口,用来从系统输入端接收数据并传输到输出端;

3、和Avalon-MM接口,用来允许软件控制其中的控制和状态寄存器。Avalon-ST流传输组件一一典型的系统中,使用Avalon-ST接口连接的多个功能模块叫做组件。设计者需要同时配置组件和接口,以完成一个系统。源端口、目标端口和连接一一当两个组件连接时,数据从源端口流向目标端口。源端口和目标端口的互连叫做连接。流馈一一反馈是一种机制,目标端口可以发送信号,使得发送端口停止发送数据。当目标组彳的FIFO已经是满状态或者它的输出口被阻塞时,目标端口通常使用反馈信号停止数据流。总线对反馈的支持是可选的。传输周期和准备周期一一传输是从指数据和控制信号从源端口传到目标端口的操作。对于数据接口来说,准备

4、周期指目标端等待的周期数,以保证可以接收传输。通道一一通道指物理或者逻辑上的路径或者连接,信息由通道从一个端口到达另一个端口。数据包一一数据包指一起发送的数据和控制信号的集合。一个数据包可能包括一个包头,使得路由器或者其他的网络设备将数据包发送到正确的目标端。本规范不定义数据包的格式,而是由应用程序定义。Avalon-ST的数据包的长度可变,可以在多个通道间交错传输。在Avalon-ST接口中,数据包的使用是可选的。6.2 Avalon-ST接口信号在Avalon-ST总线的源端口和目标端口的每个接口信号对应一个Avalon-ST的信号类型。Avalon-ST的接口可能只包含一个实例模块的信号

5、。所有的Avalon-ST的信号类型在源端口和目标端口的含义都是相同的。表6.1列出了构成一个Avalon-ST的数据接口的信号类型。表6.1Avalon-ST接口信号信号类型宽度力向必须描述基本信号ready1目标-源否高时,表明目标端口可以接收数据。目标端口在周期n拉高ready信号,表示周期n+readyLatency为准备完成的周期。在此期间,源端E以使valid有效并传输数据。源端M没有ready信号输入时不能被反馈。同样的,目标端口在没有ready信号输出时不能发送反馈。valid1源-目标否valid信号置高表示源端到目的端的信号是有效的。在vaild刚被置高后的准备周期,目的端

6、采集数据总线和其他源端到目的端的信号,而在其他周期时候这些信号将会被忽略。data1-256源-目标否数据信号从源端口发送到目标端口,一般的数据包从通过data佶号发送。data佶号的内容和格式将在后面的参数中定义。channel0-8源-目标否定义了本周期发送数据的通道数。如果一个接口支持channle信号,则必须te义maxChannel参数。error1-255源-目标否二进制位组合的形式,用来标记本周期正在传输的数据中的的错误。error中的单个位对应的错误由模块的errorDescriptor属性定义。包传输信号startofpacket1源-目标否源端口置高表明数据包的开始endo

7、fpacket1源-目标否源端口置高表明数据包的结束empty1源-目标否数据包发送结束的周期指示本数据包中的空符号的数目。在一次传输中如果只价-个符号,empty彳百号是无用白如果endofpacket没有置高,本怎号无效。6.2.1 信号极性表6.1所示的所有信号均为高电平有效。6.2.2 信号时序本节介绍Avalon-ST信号时序等问题。6.2.2.1 同步接口Avalon-ST连接的所有传输均在关联时钟的上升沿发生。从源端口输出到目的端口的所有信号必须在时钟的上升沿从寄存器输出,包括data,channel和error信号。输入到目的端口的信号不需要寄存器锁存。在源端口寄存器输出信号保

8、证了高频率的数据操作,同时消除了模块到模块的非反向逻辑寄存器。6.2.2.2 时钟使能Avalon-ST组件通常不包括时钟使能输入,因为Avalon-ST本身的接口信号就可以决定本组件是否正在被使能。配合Avalon-ST总线的组件可能包括一个供内部逻辑使用的时钟使能输入,但是必须小心设计,保证接口控制信号的时序仍然符合协议的要求。6.3 Avalon-ST接口属性表6.2列出了构成Avalon-ST接口的特性。表6.2Avalon-ST接口属性属性名称默认值允许数值范围描述dataBitsPerSymbol81-512定义了每一个符号包含的二进制位数。例如,向向字节的接口后8仪宽度的符号。这

9、个值不一定是2的整数哥。readyLatency00-8定义了ready信号的有效/无效与准备好数据传输的时间关系,每个接口的设置都是独立的。maxChannel00-255本接口支持的数据传输的最大通道数。errorDescriptor0字符串列表一个字符列表描述了错误和error信号的比特位的对应关系。列表的长度必须和error信号比特位的数目一致,列表的个字符串对应的是error中的最高位。例如,一个信号表中的单词的错误的描述有点错误关联的每个。该信号的长度是错误的列表必须相同,因为在数位和第一个单词的列表中适用的最局位。例如,"crcoverflow"表明error

10、信号的bit1表明的是CRC错误,bit0表明的是溢出错误。6.4 基本数据传输本节定义了从一个源端口到目标端口的数据传输。在所有情况下,数据的源端口和目标端口都必须符合规范。目标端口没有责任检测协议上的错误。6.4.1 信号的具体细节本节介绍了数据传输必须遵守的基本Avalon-ST协议。它突出了设计的灵活性,选择Avalon-ST,可以满足用户特定的需求。图6.1显示了基本的Avalon-ST接口的信号。如图所示,基本的Avalon-ST接口信号包括从valid,data,error和channel。目标端口可以使用ready信号用于反馈。图6.2标准的Avalon-ST接口信号DataS

11、ourceDataSink以下的内容介绍了接口信号的更多细节。ready当接口支持反馈时,目标端口将ready信号置高提示ready周期开始,实际传输数据的周期可能发生变化。支持反馈的数据接口必须定义readyLatency参数,以便确定:当ready信号在n周期置高时,那么N+readyLatency周期时端口做好准备。valid在数据正在从源端口向目标端口传输的任何周期,valid信号表明了本周期数据有效。在所有形式的ST接口,valid信号都是必须的。在每个valid信号有效的周期,目标端口会采样数据信号和其他源端口到目标端口的信号。datadata信号一般用来传输由源端口到目的端口的大

12、部分数据。在每一个时钟周期,一个或者更多的符号被传输出去。dataBitsPerSymbol参数定义了数据被分成几个符号。errorError信号的每一个比特位对应一个可能的错误状态。error为0时表明本周期的数据没有错误。当出现错误时,本协议没有定义组件对这些错误的处理方法。channelchannel是源端口发向目标端口的可选信号,表明本次数据属于哪个通道。对于一个给定的端口,channel的意义取决于应用程序:一些应用程序使用channel作为端口号,而其他应用程序使用channel作为页编号或者时间码或时间编号。源端口可能在一个活动周期内改变channel的值。接口如果使用chann

13、el信号,则必'须定义maxChannel参数,以确定最大的通道数。如果组件在运行时接口改变了channel值,maxChannel是接口支持的channel信号的最大值。6.4.2 数据结构符号排列使用大端格式,即编号较大的符号排在最高位。图6.3显示了一个64比特宽度的信号,此时对应参数为symbolsPerBeat=4dataBitsPerSymbol=16。图6.3数据符号(DataSymbols)634B47323116150symbol0symboll1symbol2symbol3时序图见下图6.4。图中对应的参数为dataBitsPerSymbol=8symbolsPer

14、Beat=4。图中,D0是编号最高的符号,data31是这个符号的最高位。图6.4大端格式的数据结构6.5 无反馈信号的数据传输无反馈信号的数据传输是Avalon-ST数据传输的基础。在任何的时钟周期,源端口驱动data信号以及可选的channelerror信号,并拉高valid信号。当valid信号为高时,目的端口在时钟上升沿采样data、channel、error信号。图6.5显示了一个无反馈信号的数据传输的例子。图6.5无反馈信号的数据传输elkvalidchannelerrorzata1111111L111111111DOD11D26.6 带反馈信号的数据传输目的端口在有效传输时拉高r

15、eady信号一个时钟周期,以提示源端口自己已经准备完成。目的端口准备好数据传输的时钟周期称为ready周期。在ready周期,源端口可能拉高valid信号并发送数据到目的端口。如果没有数据发送,源端口一直保持valid信号为低,此时data信号可以为任意值。支持反馈的ST接口定义了readyLatency参数,表明从ready信号有效到源端口可以发送有效数据的延时周期数。目的端口准备好数据传输的时钟周期称为ready周期。如果一个接口定义readyLatency为0,那么ready信号拉高的周期即为ready周期。如果readyLatency不为0,当ready信号在n周期拉高,接口会认为N+

16、readyLatency周期为ready周期。任何包含ready信号并定义了readyLatency参数的ST接口模式都支持反馈传输。当readyLatency为0时,数据只在ready信号和valid信号同时拉高时传输。在这种操作模式下,在开始发送有效数据前,源端口不会接收到目标端口的ready信号。目的端口可以接收数据时拉高ready,源端口等待ready信号为高时,发送数据并拉高valid信号。源端口可以在任何时候改变发送的数据。目的端口只能在ready信号和valid信号同时为高时捕捉数据的data信号。当readyLatency参数大于等于1时,目的端口在自身准备好接收数据前拉高re

17、ady信号。源端口可以在合适的时钟周期拉高valid以做出响应。源端口可能在ready信号不为高时拉高valid。图6.6显示了readyLatency为4时的Avalon-ST接口时序。图6.6readyLatency为4时的Avalon-ST接口时序而屏II_Ln_n_i_i_i_I_i_i_i_i_i_n_i_L_T-lt-lj_i_i图6.7显示了一个readyLatency=0时带反馈信号的数据传输。源端口在周期1拉高valid信号并输出数据,虽然目的端口并没有准备好;源端口等待到周期2时,目的端口拉高ready信号,此时没有发送新的数据;在周期3,源端口发送数据,此时目的端口已经准

18、备好接收数据,此时数据传输发生;在周期4,目的端口拉高ready信号,但是源端口没有输出有效数据。图6.7readyLatency为0时带反馈信号的数据传输图6.8和6.9显示了readyLatency为1和2时,带反馈信号的数据传输。在这两种情况下,ready信号在ready周期前拉高,同时源端口在1个或2个时钟周期后输出数据并拉高valid信号以响应目标端口。当readyLatency为0时,如果没有ready信号,源端口必须置valid信号无效。目标端口将在valid信号为高时捕捉信号,无论ready信号为何值。图6.8readyLatency为1时带反馈信号的数据传输dkreadyva

19、liddiannelerrordata图6.9readyLatency为2时带反馈信号的数据传输砒mrLTLrLrLrLrLrLnjreadyvalidchannelerrorzsts6.7 数据包传输包传输属性增加了从源端口到目的端口传输数据包的支持。增加定义的三个信号用于实现包传输。源端口和目的端口都必须增加这些信号。当源端口和目的端口不同时支持包传输时,不能将两者直接相连。图6.10Avalon-ST包传输信号6.7.1 信号的具体细节本节介绍了这三个信号的具体细节。startofpacketstartofpacket在所有的支持包传输接口中都是必须的,以确定包头数据传输的时钟周期。该信号的值仅在valid信号拉高时有意义。endofpacketendofpacket在所有的支持包传输接口中都是必须的,以确定包尾数据传输的时钟周期。该信号的值仅在valid信号拉

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论