Avalon总线是一种同步总线,在连接外设接口(例如USB、Ethernet接口芯片)的过程中,不可避免涉及到外设的时序关系问题。在外设寄存器读写的过程中,如何使得Avalon总线提供的chipselect、read、write、readdata/writedata、address等信号间的时序关系能够满足不同外设接口芯片千变万化的读写时序要求,是SOPC设计过程中的一个重要问题。幸好,Avalon总线提供了多种传输模式来满足这一需求:
(1)基本从端口传输模式;
(2)具有固定等待周期的从端口传输;
(3)具有外设控制等待周期的从端口传输;
(4)具有建立时问的从端口传输。
在SOPC Builder的Component Editor中提供了Avalon Slave Timing的选项:
其中,建立(setup)时间是指WR/RD 前的地址输入建立时间,等待(wait)时间是指有效的WR/RD选通脉冲的宽度,保持(hold)时间是指WR/RD 后的地址输入保持时间。
根据外设接口芯片的数据手册中提供的读写是读写时序要求,确定上述参数的设置值。一般应该以时间长度(ns/us/ms)等为单位比较合适,因为NIOS CPU软核的时钟频率根据项目情况的不同,不是那么固定。如果使用cycles作为单位,获得的时序关系可能与预想有一定程度的差别。
文章评论(0条评论)
登录后参与讨论