关于 avalon总线理解(整理)
1,一个基于Avalon接口的系统会包含很多功能模块,这些功能模块就是Avalon存储器映射外设,通常简称Avalon外设。所谓存储器映射外设是指外设和存储器使用相同的总线来寻址,并且CPU使用访问存储器的指令也用来访问I/O设备。为了能够使用I/O设备,CPU的地址空间必须为I/O设备保留地址。
2,Avalon外设分为主外设和从外设,能够在Avalon总线上发起总线传输的外设是主外设,从外设只能响应Avalon总线传输,而不能发起总线传输。主外设至少拥有一个连接在Avalon交换架构上的主端口,主外设也可以拥有从端口,使得该外设也可以响应总线上其它主外设发起的总线传输。
3,Avalon交换架构是一种可自动调整的结构,随着设计者不同设计而做出最优的调整。可以看到外设和存储器可以拥有不同的数据宽度,并且这些外设可以工作在不同的时钟频率。Avalon交换架构支持多个主外设,允许多个主外设同时在不同的从外设进行通信,增加了系统的带宽。这些功能的实现都是靠Avalon交换架构中的地址译码、信号复用、仲裁、地址对齐等逻辑实现的。
4,Avalon接口定义了一组信号类型(片选、读使能、写使能、地址、数据等),用于描述主/从外设上基于地址的读写接口。Avalon外设只使用和其内核逻辑进行接口的必需的信号,而省去其他会增加不必要的开销的信号。
5,Avalon的信号类型为其它的总线接口提供了一个超集,例如大多数分离的SRAM、ROM和Flash芯片上的引脚都能映射成Avalon信号类型,样就能使Avalon系统直接与这些芯片相连接。类似地,大多数Wishbone的接口信号也可以映射为Avalon信号类型,使得在Avalon系统中集成Wishbone的内核非常简单。
6,Avalon的主端口和从端口之间没有直接的连接,主、从端口都连接到Avalon交换架构上,由交换架构来完成信号的传递。在传输过程中,主端口和交换架构之间传递的信号与交换架构和从端口之间传递的信号可能有很大的不同。所以,在讨论Avalon传输的时候,必须区分主从端口。
7,avalon主端口和从端口的信号类型说明
从端口信号1

从端口信号2

主端口信号1

主端口信号2

8,表中的信号类型都是高电平有效。Avalon接口也提供每个信号类型的低电平有效的版本,在信号类型名后添加 _n 来表示。例如irq_n、read_n等。这对和那些低电平有效的片外逻辑相接口时非常有用。
9,Avalon接口规范没有对Avalon外设上的信号指定命名的规则,Avalon外设上的信号的名字可以与信号类型名相同,或者也遵循系统级的命名规则。
10,也能够将片外的异步外设,比如片外存储设备,同系统交换架构相接口,但需要一些设计上的考虑。由于Avalon交换架构的同步操作,Avalon信号只在Avalon接口时钟的时间间隔发生翻转。而且,如果异步的信号直接同Avalon交换架构的输入相连,设计者要确保信号在时钟的上升沿是稳定的。
11,Avalon接口没有固定的或者最高的性能。接口是同步的,并且可以被交换架构提供的任意频率的时钟驱动。最高性能取决于外设的设计和系统的实现。 不同于传统的共享总线实现的规范,Avalon接口没有指定任何的物理和电气特性。
12,一个主从端口对中的主端口和从端口可以有不同的传输属性。Avalon交换架构同主/从端口通信时,使用该端口指定的属性,并且必要时要进行从主端口到从端口的属性转换。这样,Avalon外设可以独立于系统中其它的外设属性进行设计。
13,动态地址对齐指的是具有不同数据的主从端口对之间进行传输时,Avalon交换架构动态管理传输的数据的服务。当主端口使用动态地址对齐方式寻址从端口时,所有从端口的数据在主端口的地址空间连续地按字节对齐。 如果主端口数据宽度比从端口宽,主端口的高位字节对应从端口地址空间的下一个地址。例如,32位的主端口使用动态地址对齐方式从16位的从端口读取数据,Avalon交换架构在从端口这侧执行两次读传输,然后提供32位的从端口数据给主端口。 如果主端口的数据宽度比从端口窄,则Avalon交换架构适当地处理从端口的字节段。在主端口读传输时,Avalon交换架构只提供从端口适当的字节段给主端口。在主端口写传输时,Avalon交换架构在从端口这侧,自动地置byteenable信号有效,将数据写到适当的字节段。
14,动态地址对齐的例子

15,当主端口使用本地地址对齐方式寻址从端口,所有从端口数据和主端口地址边界对齐。 当主端口从一个较窄数据宽度的从端口读取数据,从端口的数据比特位映射到主端口数据的低比特位中去,而主端口的数据高比特位补零。在传输时,高比特位被忽略。 例如,16位的主端口读8位的从端口,readdata信号是0x00XX的形式,这里XX代表有效的数据。主端口不能使用本地地址对齐来访问数据宽度比自己宽的从端口。
关于 avalon总线理解(整理)的更多相关文章
- 每天进步一点点------SOPC的Avalon-MM IP核(二) AVALON总线的IP核定制
简介 NIOS II是一个建立在FPGA上的嵌入式软核处理器,除了可以根据需要任意添加已经提供的外设外,用户还可以通过定制用户逻辑外设和定制用户指令来实现各种应用要求.这节我们就来研究如何定制基于Av ...
- 关于AVALON总线动态地址对齐
在NIOS的使用中,我们往往要用到自定义外设,然后通过AVALON交换架构和NIOSII进行通信. AVALON总线,其实是一种交换架构的协议,在自定义外设挂在AVALON总线上时,一定要注意地址对齐 ...
- Avalon总线学习 ---Avalon Interface Specifications
Avalon总线学习 ---Avalon Interface Specifications 1.Avalon Interfaces in a System and Nios II Processor ...
- Avalon总线概述
Nios系统的所有外设都是通过Avalon总线与Nios CPU相接的,Avalon总线是一种协议较为简单的片内总线,Nios通过Avalon总线与外界进行数据交换. Avalon总线接口分类 可分为 ...
- 每天进步一点点------SOPC的Avalon-MM IP核(一) avalon总线的信号时序
在SOPC中自定义外设时.可以设置avalon总线的信号时序,以满足外设的要求.一般情况下,可以设为: 其中setup为read和write信号之前,address和writedata信号提前建立的时 ...
- avalon 总线时序关系理解
对于读,等待时间指的是从端口捕获数据的时间相对于read信号的延时 建立时间指的是read信号相对于chipselect和addr的延时时间 对于写,等待时间指的是相对于非等待情况下各个信号的延时时间 ...
- javascript数据类型理解整理
起因:关于数据类型这块,自己看了很多遍相关的资料,每次查看和实践都有一些体会和理解:但又感到没有理解透,总是差一点,最近又在看这块的内容,加上最近的积累,做个相关笔记 ECMAScript数据类型:1 ...
- 对于linux下system()函数的深度理解(整理)
原谅: http://blog.sina.com.cn/s/blog_8043547601017qk0.html 这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同 ...
- 转:对于linux下system()函数的深度理解(整理)
这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为 ...
随机推荐
- level-13
如何调试IE浏览器 1.打开IE浏览器,F12打开开发者模式.(针对IE7及以上) 2.针对IE6浏览器.使用虚拟机或者用ietester 什么是CSS hack?在 CSS 和 HTML里如何写 h ...
- CVE补丁安全漏洞【学习笔记】
更新安卓系统的CVE补丁网站:https://www.cvedetails.com/vulnerability-list/vendor_id-1224/product_id-19997/version ...
- 查看linuxCPU信息
linux 下查看机器是cpu是几核的 几个cpu more /proc/cpuinfo |grep "physical id"|uniq|wc -l 每个cpu是几核(假设cpu ...
- nginx+tomcat网页动静分离配置
1.环境描述 nginx server (Proxy):192.168.1.135(作为代理服务器)WEB server1: 192.168.1.138(使用tomcat作为web容器)WEB ser ...
- DFS - 深度搜索 - 基于邻接列表表示法
2017-07-25 15:38:00 writer:pprp 在前一篇图基于邻接列表表示法的代码加了一小部分,加了一个DFS函数,visited[N]数组 参考书目:张新华的<算法竞赛宝典&g ...
- LeetCode第[10]题(Java):Regular Expression Matching
题目:匹配正则表达式 题目难度:hard 题目内容:Implement regular expression matching with support for '.' and '*'. '.' Ma ...
- 需要记忆的几个sql语句
链接查询: 1.查询两个表,在where中定义连接条件: select student.sno,sname,ssex,sage,sdept,cno,grade. from student,sc whe ...
- 更改当前启动项,开关Hyper-V
switch-HyperV.bat @echo off "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\ ...
- SpringCloud分布式开发理解
谈到SpringCloud最新接触到的可能就是那五大"神兽",之前最先接触分布式开发是通过dubbo的RPC远程过程调用,而dubbo给我得感觉就是:虽然所有的主机物理上分布了,但 ...
- Ant Design
https://ant.design/components/form-cn/ (Ant Design of React 中文网) 1.Ant Design of react (相关资料) htt ...