Avalon总线规范介绍(二)

上传人:油条 文档编号:24935096 上传时间:2017-12-09 格式:PPT 页数:36 大小:326.50KB
返回 下载 相关 举报
Avalon总线规范介绍(二)_第1页
第1页 / 共36页
Avalon总线规范介绍(二)_第2页
第2页 / 共36页
Avalon总线规范介绍(二)_第3页
第3页 / 共36页
Avalon总线规范介绍(二)_第4页
第4页 / 共36页
Avalon总线规范介绍(二)_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《Avalon总线规范介绍(二)》由会员分享,可在线阅读,更多相关《Avalon总线规范介绍(二)(36页珍藏版)》请在金锄头文库上搜索。

1、2017/12/9,嵌入式技术概述 Avalon总线规范介绍(二),2017/12/9,2,Avalon总线规范介绍(二),Avalon主端口传输Avalon流水线传输Avalon流控制传输,2017/12/9,3,Avalon主端口传输,Avalon主端口信号主端口基本读传输主端口基本写传输主端口的等待周期、建立时间、保持时间属性,2017/12/9,4,Avalon主端口传输,Avalon主端口信号主端口传输常用的信号: 1) waitrequest信号2) address信号 2) readdata、writedata信号 3) read、write信号4) byteenable信号 有

2、无片选信号?,主端口输入信号主端口服从waitrequest信号,主端口只提供与主端口数据宽度的字边界对齐的地址:如32位主端口只提供与4个字节边界对齐的地址:0x00,0x04,0x08对字中的特定字节访问,采用byteenable信号,信号宽度必须是8、16、32、64、128、256、512、1024同时使用,宽度必须相同,指示主端口何时开始新的读写传输信号可以持续保持,指示大于8位的主端口访问的特定字节段,2017/12/9,5,32位主端口byteenable信号,Avalon主端口传输,Byteenable的每一位对应writedata的一个字节段,2017/12/9,6,Aval

3、on主端口传输,Avalon主端口信号主端口基本读传输主端口基本写传输主端口的等待周期、建立时间、保持时间属性,2017/12/9,7,Avalon主端口传输,主端口基本读传输主端口基本读传输由主外设发起,从Avalon交换架构传输一个数据单元到主端口。传输在一个时钟周期内完成。,(A) 第一个周期在clk的上升沿开始。(B) 主端口发出有效的address、byteenable和read信号。(C) 在第一个周期内从Avalon交换架构返回有效的readdata(D) 主端口在下一个clk的上升沿捕获readdata,并且置所有输出无效。主端口的 读传输结束。另一次传输可在下一个周期开始。,

4、waitrequest信号无效,2017/12/9,8,(A) 第一个周期在clk的上升沿开始。(B) 主端口发出有效的address、byteenable和read信号。(C) Avalon交换架构在下一个clk的上升沿置waitrequest有效。(D) 主端口在clk的上升沿接受waitrequest。这个周期称为等待周期。(E) 只要waitrequest有效,主端口保持其所有输出不变。(F) Avalon交换架构返回有效的readdata。(G) Avalon交换架构置waitrequest无效。(H) 主端口在下一个clk的上升沿捕获readdata,并且置其所有的输出无效。读传输

5、结束。 另一次传输可以在下一个周期开始。,具有等待周期的主端口读传输,Avalon交换架构利用waitrequest信号暂停主端口,2017/12/9,9,Avalon主端口传输,Avalon主端口信号主端口基本读传输主端口基本写传输主端口的等待周期、建立时间、保持时间属性,2017/12/9,10,Avalon主端口传输,主端口基本写传输主端口基本写传输由Avalon主外设发起,传输需要一个时钟周期。 注意:clk信号的方向,2017/12/9,11,(A) 写传输在clk的上升沿开始。(B) 主端口发出有效的address、byteenable、writedata和write信号。(C)

6、在clk的上升沿waitrequest是无效的,所以写传输结束。另一次传输 可以在下一个周期接着开始。,主端口基本写传输,waitrequest信号无效,2017/12/9,12,(A) 第一个周期在clk的上升沿开始。(B) 主端口发出有效的address、writedata和write信号。(C) waitrequest在clk的上升沿被置为有效,所以该周期变成第一个等待周期。主端口保持所有的输出不变。(D) waitrequest在clk的上升沿再次被置为有效,所以该周期成为第二个等待周期。主端口保持所有的输出不变。(E) Avalon交换架构置waitrequest无效。(F) 在cl

7、k的上升沿waitrequest 是无效的,所以主端口置所有的输出无效,写传输结束。另一个读或写传输可以在下一个周期开始。,具有等待周期的主端口写传输,Avalon交换架构利用waitrequest信号暂停主端口,2017/12/9,13,Avalon主端口传输,Avalon主端口信号主端口基本读传输主端口基本写传输主端口的等待周期、建立时间、保持时间属性,2017/12/9,14,Avalon主端口传输,主端口的等待周期、建立时间、保持时间属性等待周期:Avalon主端口使用waitrequest信号接受Avalon交换架构的不确定等待周期。Avalon主端口被动地支持可变的等待周期,主端口

8、不支持固定的等待周期建立时间和保持时间:Avalon主端口不使用建立和保持时间属性。若一个目标从外设有建立和/或保持时间属性,Avalon交换架构管理该主从端口对的信号时序的转换。,2017/12/9,15,Avalon总线规范介绍(二),Avalon主端口传输Avalon流水线传输Avalon流控制传输,2017/12/9,16,Avalon流水线传输,Avalon流水线传输Avalon流水线传输可增加Avalon总线的带宽:1) 传输响应方:第一次访问时需要几个周期才能返回数据,但此后每个周期都能返回数据;2) 传输发起方:一个端口可以在上一次传输的readdata返回之前,开始新的传输。

9、,Avalon流水线传输只涉及流水线读传输,2017/12/9,17,Avalon流水线传输,Avalon流水线传输传输阶段划分与各阶段的持续时间地址阶段:决定了端口的吞吐量,用等待周期描述数据阶段:反映了第一个数据单元返回的时间,用 流水线延迟描述,2017/12/9,18,Avalon流水线传输,Avalon流水线传输从端口流水线读传输主端口流水线读传输,具有固定延迟的从端口流水线读传输,具有可变延迟的从端口流水线读传输,2017/12/9,19,Avalon流水线传输,Avalon流水线传输从端口流水线读传输主端口流水线读传输,具有固定延迟的从端口流水线读传输,具有可变延迟的从端口流水线

10、读传输,2017/12/9,20,(A) Avalon交换架构通过提供新传输的地址阶段的chipselect、read和address信号,发起一次读传输。(B) 从端口置waitrequest有效,Avalon交换架构保持chipselect、read和 address不变。(C) 从端口在clk的上升沿置waitrequest无效,捕获address。地址阶段结束,数据阶段开始。(D) 第一个延迟周期在clk的上升沿结束。(E) 第二个延迟周期在clk的上升沿结束。从端口提供有效的readdata,传输结束。这个clk的上升沿也标志着新的读传输的开始。(F) Avalon交换架构发出新传输

11、的address、read和chipselect信号。(G) Avalon交换架构在下一个周期内,在前一次的传输的数据返回之前发起另一次的读传输。(H) Avalon交换架构在两个延迟周期之后捕获readdata。(I) Avalon交换架构在两个延迟周期之后捕获readdata 。,等待周期:支持固定等待周期或可变等待周期,可变等待周期通过waitrequest信号实现,流水线延迟:设置固定的延迟周期数,2017/12/9,21,Avalon流水线传输,Avalon流水线传输从端口流水线读传输主端口流水线读传输,具有固定延迟的从端口流水线读传输,具有可变延迟的从端口流水线读传输,2017/1

12、2/9,22,(A) Avalon交换架构发出address、read和chipselect信号,发起一个读传输。(B) Waitrequest无效,在此clk的上升沿捕获address1。(C) Waitrequest无效,在此clk的上升沿捕获address2。(D) 从端口已达到允许挂起的传输数的最大值。从外设在下一个clk的上升沿之前置waitrequest有效,使Avalon交换架构不能继续发出address、read和chipselect信号。 (E) 外设驱动有效的readdata (data1)并置readdatavalid有效,完成第一个挂起的传输的数据阶段。外设置waitr

13、equest无效,因为它能在下一个clk的上升沿接受另一次挂起的传输。(F) Avalon交换架构在clk的上升沿捕获data1。从外设在clk的上升沿捕获address3。(G) readdatavalid有效,Avalon交换架构在clk的上升沿捕获data2。Avalon交换架构发出address、read和chipselect,外设捕获address4。(H) readdatavalid有效,Avalon交换架构在clk的上升沿捕获data3。Avalon交换架构发出address、read,和chipselect,外设捕获address5。(I) readdatavalid有效,Av

14、alon交换架构在clk的上升沿捕获data4 。Avalon交换架构置chipselect无效,结束传输的队列。(J) readdatavalid无效,Avalon交换架构在此clk的上升沿不捕获数据。(K) Avalon交换架构在clk的上升沿捕获data5 ,完成最后的挂起的读传输的数据阶段。,数据阶段的可变延迟通过readdatavalid信号实现,具有可变延迟的从端口流水线读传输:地址阶段不支持固定等待周期,只支持可变等待周期其他限制:不能使用建立时间和保持时间属性不能使用三态属性,2017/12/9,23,Avalon流水线传输,Avalon流水线传输需注意的两个问题:1)流水线从

15、端口只能处理有限数量的挂起传输,可挂起传输根据从端口的传输FIFO容量设置,从端口可通过发送waitrequest信号来暂停新的传输,以防止数据溢出;2)从外设在处理挂起的读传输的同时,Avalon交换架构可以发起从端口写传输,若外设不能处理,必须发出waitrequest信号;若从外设接受了向挂起的读传输的相同地址执行的写传输,则挂起的读传输的值取决于外设的逻辑设计。,2017/12/9,24,Avalon流水线传输,Avalon流水线传输从端口流水线读传输主端口流水线读传输,具有固定延迟的从端口流水线读传输,具有可变延迟的从端口流水线读传输,2017/12/9,25,(A) 主端口提供新传

16、输地址阶段的address和read信号发起一次读传输(B) Avalon交换架构置waitrequest有效,主端口等待,保持address和read一个周期。(C) Avalon交换架构置waitrequest无效,在clk的上升沿捕获address。readdatavalid无效,主端口不捕获readdata。(D) Avalon交换架构在clk的上升沿捕获一个新的address。readdatavalid 无效,主端口不捕获readdata。(E) Avalon交换架构在clk的上升沿捕获address 。readdatavalid 有效,主端口捕获有效的readdata 。(F) readdatavalid无效,主端口不捕获readdata。(G) readdatavalid无效,主端口不捕获readdata。(H) readdatavalid有效,主端口捕获有效的readdata 。(I) 主端口提供新传输的address和read信号。同时置flush信号,忽略不需要的挂起传输(J) readdatavalid无效,主端口不捕获readdata。因主端口发出flush信号,导致Avalon交换架构清空所有的挂起的传输 。Avalon交换架构捕获新的address。(K) readdatavalid有效, 主端口捕获有效的readdata。此时没有挂起的传输。,

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

当前位置:首页 > 行业资料 > 其它行业文档

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