第4章_avalon总线规范(上)

上传人:今*** 文档编号:107443993 上传时间:2019-10-19 格式:PPT 页数:65 大小:610KB
返回 下载 相关 举报
第4章_avalon总线规范(上)_第1页
第1页 / 共65页
第4章_avalon总线规范(上)_第2页
第2页 / 共65页
第4章_avalon总线规范(上)_第3页
第3页 / 共65页
第4章_avalon总线规范(上)_第4页
第4页 / 共65页
第4章_avalon总线规范(上)_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《第4章_avalon总线规范(上)》由会员分享,可在线阅读,更多相关《第4章_avalon总线规范(上)(65页珍藏版)》请在金锄头文库上搜索。

1、第4章 Avalon总线规范,4.1 Avalon总线简介 总线的定义: (1)总线最初是指计算机系统中各种信号线的集合,是计算机各部件之间传送数据、地址和控制信息的公共通路,例如PCI总线。 (2)随着电子计算机技术和通信技术的发展,总线的概念也被更广泛的使用,现在总线一词不仅用于表示计算机系统中的信号线的集合,也用于表示各种通信系统,例如现场总线,USB总线,485总线。 (3)简而言之,可以这样认为,总线就是一种通信规范以及规范的实现方法,不论是计算机系统还是通信领域。,计算机总线的分类: (1)按相对于CPU或其它芯片的位置可分为:片内总线、片外总线 ; (2)按总线的功能可分为:地址

2、总线、数据总线、控制总线 ; (3)按总线的层次结构可分为:CPU总线、存储总线、系统总线、外部总线;,Avalon 总线 Avalon总线由ALTERA公司提出,用于在基于FPGA的片上系统中连接片内处理器和片内外设的总线结构。 连接到Avalon总线的设备分为主从设备,并各有其工作模式。 Avalon总线本身是一个数字逻辑系统,它在实现“信号线汇接”这一传统总线功能的同时,增加了许多内部功能模块,引用了很多新的方法,比如从端仲裁模式,多主端工作方式,延时数据传输,这些功能使得在可编程逻辑器件中可以灵活的实现系统增减和IP复用。,Avalon总线是一个设计用于在基于FPGA的片上系统中连接片

3、内处理器和片内外设的总线结构。 设计这样一个系统总线结构,主要考虑了一下三个目标: 1.简化片上系统的互联规则,提供一种易用的接口。 2.为总线逻辑优化节省系统资源。 3.同步工作模式。,Avalon总线是用于处理器与片内/外外设互连的技术,这就决定了Avalon总线具有以下的一些特点: 简单性,易于理解、易于使用。 占用资源少,减少对FPGA片内资源的占用。 高性能,Avalon总线可以在每一个总线时钟周期完成一次数据传输。 专用的地址总线、数据总线和控制总线:这样Avalon总线模块和片上逻辑之间的接口的得以简化,Avalon外设不需要识别数据和地址周期。 to be continued,

4、continue 支持高达1024位的数据宽度,支持不是2的偶数幂的数据宽度。 支持同步操作,所有Avalon外设的接口与Avalon交换架构的时钟同步,不需要复杂的握手/应答机制。简化了Avalon接口的时序行为,而且便于集成高速外设。 支持动态地址对齐,可以处理具有不同数据宽度的外设间的数据传输,Avalon总线的自动地址对齐功能将自动解决数据宽度不匹配的问题,不需要设计者的干预。 Avalon总线规范是一个开放的标准,用户可以在未经授权的情况下使用Avalon总线接口来自定义外设。,Avalon总线结构采用交换式的总线结构,与传统的总线结构有着显著的优点。采用Avalon交换架构,每个总

5、线主机均有自己的专用互联,总线主机只需抢占共享从机,而不是总线本身。每当系统加入模块或者外设接入优先权改变时,SOPC Builder利用最少的FPGA资源,产生新的最佳Avalon交换架构。Avalon交换架构支持多种系统体系结构,如单主机/多主机系统,可实现数据在外设与性能最佳数据通道之间的无缝传输。Avalon交换架构同样支持用户所设计的片外处理器和外设。Avalon交换式总线结构支持数据总线的复用、等待周期的产生、外设的地址对齐以及高级的交换式总线传输。,Avalon总线在SOPC Builder中添加外设之后会自动生成,并且会随着外设的添加和删减而自动调整,最终的Avalon总线结构

6、是针对外设配置而生成的一个最佳结构。所以对于用户来说,如果只是使用已经定制好的符合Avalon总线规范的外设来构建系统,不需要了解Avalon总线规范的细节,但是对于要自己设计外设的用户来说,开发的外设必须要符合相应的Avalon总线的规范,否则设计的外设也无法集成到系统中去。,Altera提供了Avalon的接口规范,供设计者开发自己的外设和更好地使用外设。该规范向读者描述了诸如微处理器、存储器、UART等主从外设的基于地址的读/写接口的基本知识。Avalon接口规范给出了主从外设间的端口连接关系,通信的时序关系,支持的多种传输方式。 设计者可以不去了解Avalon交换结构的实现细节,只要掌

7、握其同外设相连接的接口。,4.2 Avalon总线基本概念,4.2.1 Avalon外设和交换架构 一个基于Avalon接口的系统会包含很多功能模块,这些功能模块就是Avalon存储器映射外设,通常简称Avalon外设。所谓存储器映射外设是指外设和存储器使用相同的总线来寻址,并且CPU使用访问存储器的指令也用来访问I/O设备。为了能够使用I/O设备,CPU的地址空间必须为I/O设备保留地址。,Avalon外设包括存储器,处理器、UART、PIO、定时器和总线桥等。还可以有用户自定义的Avalon外设,用户自定义的外设能称之为Avalon外设,要有连接到Avalon结构的Avalon信号。 Av

8、alon外设分为主外设和从外设,能够在Avalon总线上发起总线传输的外设是主外设,从外设只能响应Avalon总线传输,而不能发起总线传输。主外设至少拥有一个连接在Avalon交换架构上的主端口,主外设也可以拥有从端口,使得该外设也可以响应总线上其它主外设发起的总线传输。,将Avalon外设连接起来,构成一个大的系统的片上互连逻辑就是Avalon交换架构。,Avalon交换架构是一种可自动调整的结构,随着设计者不同设计而做出最优的调整。可以看到外设和存储器可以拥有不同的数据宽度,并且这些外设可以工作在不同的时钟频率。Avalon交换架构支持多个主外设,允许多个主外设同时在不同的从外设进行通信,

9、增加了系统的带宽。这些功能的实现都是靠Avalon交换架构中的地址译码、信号复用、仲裁、地址对齐等逻辑实现的。 本章重点讨论Avalon外设和Avalon交换架构之间的互连,主要研究接口级的行为,不关注其内部实现。,4.2 Avalon总线基本概念,4.2.2 Avalon信号 Avalon接口定义了一组信号类型(片选、读使能、写使能、地址、数据等),用于描述主/从外设上基于地址的读写接口。Avalon外设只使用和其内核逻辑进行接口的必需的信号,而省去其他会增加不必要的开销的信号。,4.2.2 Avalon信号,Avalon信号的可配置特性是Avalon接口与传统总线接口的主要区别之一。Ava

10、lon外设可以使用一小组信号来实现简单的数据传输,或者使用更多的信号来实现复杂的传输类型。例如ROM接口只需要地址、数据和和片信号就可以了, 而高速的存储控制器可能需要更多的信号来支持流水线的突发传输。 Avalon的信号类型为其它的总线接口提供了一个超集,例如大多数分离的SRAM、ROM和Flash芯片上的引脚都能映射成Avalon信号类型,样就能使Avalon系统直接与这些芯片相连接。类似地,大多数Wishbone的接口信号也可以映射为Avalon信号类型,使得在Avalon系统中集成Wishbone的内核非常简单。,4.2.3 主端口和从端口,Avalon端口就是完成通信传输的接口所包含

11、的一组Avalon信号。Avalon端口分为主端口和从端口,主端口可以在Avalon总线上发起数据传输,目标从端口在Avalon总线上响应主端口发起的数据传输。一个Avalon外设可能有一个或多个主端口,一个或多个从端口,也可能既有多个主端口,又有多个从端口。 Avalon的主端口和从端口之间没有直接的连接,主、从端口都连接到Avalon交换架构上,由交换架构来完成信号的传递。在传输过程中,主端口和交换架构之间传递的信号与交换架构和从端口之间传递的信号可能有很大的不同。所以,在讨论Avalon传输的时候,必须区分主从端口。,4.2.4 传输,传输是指在Avalon端口和Avalon交换架构之间

12、的数据单元的读/写操作。Avalon传输一次可以传输高达1024位的数据,需要一个或多个时钟周期来完成。在一次传输完成之后,Avalon端口在下一个时钟周期可以进行下一次的传输。 Avalon的传输分成两个基本的类别:主传输和从传输。Avalon主端口发起对交换架构的主传输。Avalon从端口响应来自交换架构的传输请求。传输是和端口相关的:主端口只能执行主传输,从端口只能执行从传输。,4.2.5 主从端口对,主从端口对是指在数据传输过程中,通过Avalon交换架构相连接起来的主端口和从端口。 在传输过程中,主端口的控制和数据信号通过Avalon交换架构和从端口相交互。,4.2.6 周期,周期是

13、时钟的基本单位,定义为特定端口的时钟信号的一个上升沿到下一个上升沿之间的时间。完成一次传输最少要一个时钟周期。,4.3 Avalon信号,Avalon接口规范定义了Avalon外设使用的信号类型,如地址、数据、片选信号等等。根据外设逻辑接口的需求,Avalon外设可以使用任何类型的Avalon信号。 Avalon接口规范还定义了每种信号类型的行为。Avalon端口上的信号和信号类型是一一对应的,Avalon主/从端口的每一个信号必定属于某类的Avalon信号类型。一个Avalon端口每一种信号类型只能有一个信号实例。 根据端口的属性,可以将Avalon信号类型分为主信号或者从信号。有些信号在主

14、端口和从端口的接口上都存在,但是信号的行为是不相同的。,下图给出了一个16位的通用I/O输出外设,这个简单的Avalon外设只需响应接收数据的传输请求。因此该外设只使用了写传输的信号,而没有读传输的信号。,4.3.1 信号类型的完整列表,构成从端口和主端口的接口的信号类型 每一类型的信号的说明包括: 信号类型; 信号可能的宽度; 信号的方向(从外设的角度看); 该信号在端口上是否必不可少(必需性); 各种类型的信号的功能和特殊的使用要求的简单描述。,Avalon从端口信号类型,Avalon从端口信号类型,Avalon主端口信号类型,Avalon主端口信号类型,4.3.2 信号极性,表中的信号类

15、型都是高电平有效。Avalon接口也提供每个信号类型的低电平有效的版本,在信号类型名后添加 _n 来表示。例如irq_n、read_n等。这对和那些低电平有效的片外逻辑相接口时非常有用。,4.3.3. 信号命名规则,Avalon接口规范没有对Avalon外设上的信号指定命名的规则,Avalon外设上的信号的名字可以与信号类型名相同,或者也遵循系统级的命名规则。 在本章中,讨论Avalon传输的时候,信号名和信号类型名是相同的。,4.3.4 Avalon信号时序说明,Avalon接口是一个同步的协议。每个Avalon端口都与Avalon交换架构提供的时钟同步。所有的传输都与Avalon交换架构的

16、时钟同步发生,并在时钟上升沿启动。 一个同步的接口并不意味着所有的信号都是时序的信号,Avalon的信号可以是基于同步于系统交换结时钟的寄存器的输出的组合逻辑。所以除了clk信号之外,Avalon外设对其它的Avalon信号边沿不敏感。对任何的同步设计来说,Avalon外设必须只响应在时钟上升沿达到稳定状态的信号,并且在时钟上升沿产生稳定的输出。,也能够将片外的异步外设,比如片外存储设备,同系统交换架构相接口,但需要一些设计上的考虑。由于Avalon交换架构的同步操作,Avalon信号只在Avalon接口时钟的时间间隔发生翻转。而且,如果异步的信号直接同Avalon交换架构的输入相连,设计者要确保信号在时钟的上升沿是稳定的。 Avalon接口没有固定的或者最高的性能。接口是同步的,并且可以被交换架构提供的任意频率的时钟驱动。最高性能取决于外设的设计和系统的实现。 不同于传统的共享总线实现的规范,Avalon接口没有指定任何的物理和电气特性。,4.3.5 传输属性,不是所有的Avalon主/从端口都使用相同的信号类型,因此不同的Avalon端口具有不同的传输能力。Avalon接口

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号