Avalon总线概述


Nios系统的全部外设都是经过Avalon总线与Nios CPU相接的,Avalon总线是一种协议较为简单的片内总线,Nios经过Avalon总线与外界进行数据交换。ios

Avalon总线接口分类

可分为两类:Slave和Master。slave是一个从控接口,而master是一个主控接口。slave和master主要的区别是对于Avalon总线控制权的把握。master接口具备相接的Avalon总线控制权,而slave接口是被动的。常见的Avalon的传输结构有:Avalon总线从读(slave read),Avalon总线带一个延迟状态从读,Avalon总线从写(slave write),Avalon总线带一个延迟状态从写。微信

Avalon总线的特色

全部外设的接口与Avalon总线时钟同步,不须要复杂的握手/应答机制。这样就简化了Avalon总 线的时序行为,并且便于集成高速外设。Avalon总线以及整个系统的性能能够采用标准的同步时序分析技术来评估。性能

 全部的信号都是高电平或低电平有效,便于信号在总线中高速传输。在Avalon总线中,由数据选择器(而不是三态缓冲器)决定哪一个信号驱动哪一个外设。所以外设即便在未被选中时也不须要将输出置为高阻态。ui

为了方便外设的设计,地址、数据和控制信号使用分离的、专用的端口。外设不须要识别地址总线周期和数据总线周期,也不须要在未被选中时使输出无效。分离的地址、数据和控制通道还简化了与片上用户自定义逻辑的链接 。spa

其余特性和约定

Avalon总线还包括许多其余特性和约定,用以支持SOPC Builder软件自动生成系统、总线和外设,包括:设计

最大4GB的地址空间——存储器和外设能够映像到32位地址空间中的任意位置3d

内置地址译码——Avalon总线自动产生全部外设的片选信号,极大地简化了基于Avalon总线的外设的设计工做blog

多主设备总线结构——Avalon总线上能够包含多个主外设,并自动生成仲裁逻辑接口

采用向导帮助用户配置系统——SOPC Builder提供图形化的向导帮助用户进行总线配置(添加外设、指定主/从关系、定义地址映像等)。Avalon总线结构将根据用户在向导中输入的参数自动生成同步

 动态地址对齐——若是参与传输的双方总线宽度不一致,Avalon总线自动处理数据传输的细节,使得不一样数据总线宽度的外设可以方便地链接

 

Avalon 总线模块为外设提供的服务

Avalon 总线模块为链接到总线的Avalon 外设提供了如下的服务:

数据通道多路转换——Avalon 总线模块的多路复用器从被选择的从外设向相关主外设传输数据。

 地址译码——地址译码逻辑为每个外设提供片选信号。这样,单独的外设不须要对地址线译码以产生片选信号,从而简化了外设的设计。

 产生等待状态(Wait-State)——等待状态的产生拓展了一个或多个周期的总线传输,这有利于知足某些特殊的同步外设的须要。当从外设没法在一个时钟周期内应答的时候,产生的等待状态可使主外设进入等待状态。在读使能及写使能信号须要必定的创建时间/保持时间要求的时候也能够产生等待状态。

动态总线宽度——动态总线宽度隐藏了窄带宽外设与较宽的Avalon 总线(或者Avalon 总线与更高带宽的外设)相接口的细节问题。举例来讲,一个32 位的主设备从一个16 位的存储器中读数据的时候,动态总线宽度能够自动的对16 位的存储器进行两次读操做,从而传输32 位的数据。这便减小了主设备的逻辑及软件的复杂程度,由于主设备不须要关心外设的物理特性。

 中断优先级(Interrupt-Priority)分配——当一个或者多个从外设产生中断的时候,Avalon 总线模块根据相应的中断请求号(IRQ)来断定中断请求。

 延迟传输(Latent Transfer)能力——在主、从设备之间进行带有延迟传输的逻辑包含于Avalon总线模块的内部。

 流式读写(Streaming Read and Write)能力——在主、从设备之间进行流传输使能的逻辑包含于Avalon 总线模块的内部。


版权全部权归卿萃科技 杭州FPGA事业部,转载请注明出处

做者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


 

 

扫描二维码关注杭州卿萃科技FPGA极客空间

相关文章
相关标签/搜索