转载.Avalon-MM 阿窝龙妹妹应用笔记
Avalon Interface Special http://www.altera.com.cn/literature/manual/mnl_avalon_spec.pdf
Avalon总线是SOPC硬件系统的重要组成部分,了解龙妹妹总线的特点、信号以及传输模式等,是构建SOPC硬件系统、开发自定义外设IP的基础。
Avalon接口规范定义了外设和Avalon开关互联结构(Avalon Switch Fabric)之间的数据传输。
Avalon接口是一种开放标准,使用Avalon接口创建和发布定制外设不需要任何授权。
Avalon接口定义(片选,读使能,写使能,地址,数据)
(1)一组信号类型
(2)信号的行为
(3)信号支持的传输类型
一下是6种不同的接口类型:
■ Avalon Memory Mapped Interface (Avalon-MM)—an address-based read/write interface typical of master–slave connections.
■ Avalon Streaming Interface (Avalon-ST)—an interface that supports the unidirectional flow of data, including multiplexed streams, packets, and DSP data.
■ Avalon Memory Mapped Tristate Interface—an address-based read/write interface to support off-chip peripherals. Multiple peripherals can share data and address buses to reduce the pin count of an FPGA and the number of traces on the PCB.
■ Avalon Clock—an interface that drives or receives clock and reset signals to synchronize interfaces and provide reset connectivity.
■ Avalon Interrupt—an interface that allows components to signal events to other components.
■ Avalon Conduit—an interface that allows signals to be exported out at the top level of an SOPC Builder system where they can be connected to other modules of the design or FPGA pins.
Avalon端口分为 主端口 和 从端口()
(1)主端口:用于在Avalon总线上发起传输的一组信号
(2)从端口:用于响应传输请求的一组信号\
在传输期间,主端口的控制和数据信号通过Avalon Switch Fabric与从端口进行通信
Avalon Switch Frabic :片上互联逻辑,将Avalon外设连接在一起,形成较大的系统。
Avalon Memory-Mapped Master(http://www.altera.com.cn/support/examples/nios2/exm-avalon-memory-slave.html#figure1)
Avalon Memory-Mapped Slave(http://www.altera.com.cn/support/examples/nios2/exm-avalon-memory-slave.html)
Clock input Signal Types
基本的信号量:
(1)clk : Avalon 接口同步时钟
(2)reset_n : 外设复位信号
(3)chipselect : Avalon 从接口的片选信号
(4)address(1~32) : 从Avalon Switch Fabric到Avalon从接口的地址线。可访问一个字,指定一个字的偏移量到从端口的地址空间。控制最宽位1个字(16bit,超出动态寻址)。address进行译码,配置寄存器
但是实际设计中碰到了
实际上,当address为静态寻址的时候,Address至少是[1:0]的 4的倍数
(5)byteenable(0,2,4,8,16) : 允许特殊的字节段,高低字节片选等(长度超过8位时,byteenable有效)
(6)read : 从主端口读请求信号
(7)readdata (32): 从主端口读传输数据
(8)write : 来自主端口的写请求
(9)writedata(32): 到Avalon Switch Fabric的写传输数据
等待状态信号,pepeline信号,突发信号,流控制信号,三态信号,其他信号:Avalon主从端口个不一样,此处不具体讲述,相见文档
readdata,writedata,可以不用用一个或者两个1~128(使用动态总线的时候必须8,16,,3,64,128)
Avalon 从端口传输
(1)从端口读传输:
chipselect :
address :
read :
readdata :
byteenable :
一个周期:
(A)第一个周期开始于clk上升沿
(B)read和address信号有效
(C)从Avalon Switch Fabric 对address译码,并设置chipselect有效
(D)clk上升沿标志第一个且是唯一的一个等待周期结束。从端口可在clk上升沿捕获address,read,chipselect
(E)从端口在第二个周期内返回有效数据
(F)从Avalon Switch Fabric 在clk上升沿捕获readdata,读传输到此结。下一个周期从此开始
(2)从端口写传输:
chipselect :
address :
write :
writedata :
byteenable : 为writedata大于1个字节时候,只写指定字节提供机制(不使用所有字节段则始终被允许)
一个周期:
(A)写传输开始于clk上升沿
(B)Avalon Switch Fabric 设置 writedata,address,byteenable,write有效
(C)Avalon Switch Favric对address译码,并向从端口设置chipselect
(D)从端口的下一个clk上升沿捕获writedata,address,byteenable,write和chipselect,写传输结束。下一个周期从这里开始
Focus on Avalon-MM Slave Transfers
这是不是说slave_writedata必须是8,16,32…位宽的??
The minimum requirements are readdata for read for a read-only interface or writedata and write for a write-only interface.
等等……
Memory chip
Conduit
。。。。还是不懂,发现自己不懂得 越来越多
转载.Avalon-MM 阿窝龙妹妹应用笔记的更多相关文章
- Avalon MM 总线
对于Avalon Master来讲,Address信号代表一个字节(8-bit)的地址.Address的值必须与字节的宽度对齐,如果要对某个word的byte写,需要首先使用byteenable信号: ...
- [转载]《STL源码剖析》阅读笔记之 迭代器及traits编程技法
本文从三方面总结迭代器 迭代器的思想 迭代器相应型别及traits思想 __type_traits思想 一 迭代器思想 迭代器的主要思想源于迭代器模式,其定义如下:提供一种方法,使之能够依 ...
- [转载]Deep Learning(深度学习)学习笔记整理
转载自:http://blog.csdn.net/zouxy09/article/details/8775360 感谢原作者:zouxy09@qq.com 八.Deep learning训练过程 8. ...
- (转载)《C#高级编程》读书笔记
C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) short System.Int16 16 ...
- 【转载】ASP.NET MVC Web API 学习笔记---联系人增删改查
本章节简单介绍一下使用ASP.NET MVC Web API 做增删改查.目前很多Http服务还是通过REST或者类似RESP的模型来进行数据操作的.下面我们通过创建一个简单的Web API来管理联系 ...
- 【转载】ASP.NET MVC Web API 学习笔记---第一个Web API程序
1. Web API简单说明 近来很多大型的平台都公开了Web API.比如百度地图 Web API,做过地图相关的人都熟悉.公开服务这种方式可以使它易于与各种各样的设备和客户端平台集成功能,以及通过 ...
- 转载一个不错的Scrapy学习博客笔记
背景: 最近在学习网络爬虫Scrapy,官网是 http://scrapy.org 官方描述:Scrapy is a fast high-level screen scraping and web c ...
- 【转载】IP地址和子网划分学习笔记之《子网掩码详解》
原文地址: https://blog.51cto.com/6930123/2112748 一.子网掩码 IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相 ...
- 转载:数据库应用开发工具Toad使用笔记
由于网上TOAD中文教程很少,在网上摘抄了此文章便于学习,感谢原创者. TOAD使用笔记 1.把鼠标停在sql所在行,然后ctrl+Enter直接执行当前sql. 2.解决Toad对中文显示乱码问题( ...
随机推荐
- python中多重继承与获取对象
1.python中多重继承 除了从一个父类继承外,Python允许从多个父类继承,称为多重继承. 多重继承的继承链就不是一棵树了,它像这样: class A(object): def __init__ ...
- 编写Tesseract的Python扩展
Tesseract是一个开源的OCR(光学字符识别)引擎,用于识别并输出图片中的文字.虽然和商业软件比起来识别精度不算很高,但是如果你要寻找免费开源的OCR引擎,可能Tesseract就是唯一的选择了 ...
- Django学习笔记之使用 Django项目开发框架
Django 项目是一个定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来.Django 框架的核心组件有: 用于创建模型的对象关系映射 为最终用户设计的完美管理界面 ...
- 项目中使用better-scroll实现移动端滚动,报错:Cannot read property 'children' of undefined better-scroll
就是外面的盒子和要滚动的元素之间要有一层div, 插件挂载的元素是menuWrapper,可以滚动的元素是ul,在这两个元素之间加一个div元素即可解决问题.
- Gradle命令详解与导入第三方包--快速打包
快速打包app:gradlew assembleRelease --console plain (好使) 下边的方法暂时不好使,可以用的兄弟请教下哈! Android Studio + Gradle的 ...
- Spring Boot 中全局异常处理器
Spring Boot 中全局异常处理器,就是把错误异常统一处理的方法.等价于Springmvc中的异常处理器. 步骤一:基于前面的springBoot入门小demo修改 步骤二:修改HelloCon ...
- MySQL数据库中tinyint类型字段读取数据为true和false (MySQL的boolean和tinyint(1))
数据库一个表中有一个tinyint类型的字段,值为0或者1,如果取出来的话,0会变成false,1会变成true. MySQL保存boolean值时用1代表TRUE,0代表FALSE.boolean在 ...
- E - Water Distribution
E - Water Distribution 题目大意: 有\(N\)座城市,给定这\(N\)座城市的坐标和初始的水量\(x_i,y_i,a_i\),在两个城市之间运水的花费是两个城市的欧几里得距离. ...
- BZOJ 3931 [CQOI2015]网络吞吐量:最大流【拆点】
传送门 题意 给你一个 $ n $ 个点,$ m $ 条边的无向网络,每条边有长度.每个点的流量限制为 $ c[i] $ . 要求流量只能经过从 $ 1 $ 的 $ n $ 的最短路.问你最大流是多少 ...
- 使用Mybatis整合spring时报错Injection of autowired dependencies failed;
这是无法自动注入,通过查找,我出错的原因在于配置文件的路径没有写对,在applicationContext.xml中是这样写的. <bean id="sqlSessionFactory ...