![](https://csdnimg.cn/release/download_crawler_static/48709310/bg5.jpg)
系统级的任务,并通过 Avalon 总线与其他的系统部件相通信。外设是模块化的系统部件,
依赖于系统的需要,可以在设计的时候增加或者移除。 Avalon 外设可以是存储器、处理器,
也可以是传统的外设器件,如 UART ,PIO,定时器或总线桥。任何的用户逻辑都可以成为
Avalon 外设,只要它满足本文所述的提供与 Avalon 总线接口的地址、 数据及控制信号接口。
连接于 Avalon 总线的外设将被分配专用的端口。除了连接于 Avalon 总线的地址、数据及控
制端口之外用户也可以自行定制端口。这些于用户逻辑相连接的信号扩展了系统模块的应
用。 Avalon 外设要么是主外设,要么是从外设。主外设可以于 Avalon 上开启总线传输,其
至少有一个连接于 Avalon 总线模块的主端口。主外设也可以有一个从端口其允许此设备接
受其他连接于 Avalon 总线的主设备开启的总线传输。 而从设备只能响应 Avalon 总线传输,
而不能够开启总线传输。像存储器, UART 这样的从设备,通常只有与 Avalon 总线模块相
连接的一个从端口。在 SOPC 环境中,区分以下 Avalon 总线主设备 /从设备的外设类型是
十分重要的。
系统模块内部外设
如果 SOPC Builder 在外设库中找到了一个外设,或者设计者指定了一个用户外设的设计文
件, SOPC Builder 将自动的将此外设与 Avalon 总线模块相连接。这种外设是指系统模块之
内的外设,也就是被认为是系统模块的一个部分。与 Avalon 总线相连接的地址、数据及控
制端口是向用户隐藏的。 外设中任何附加的非 Avalon 端口将作为系统模块的端口显示于外。
这些端口可能与物理管脚直接相连或者可能与片上的其他模块相连。
系统模块外部外设
Avalon 总线外设也可以存在于系统模块之外。设计者选择将模块置于系统模块之外
可能有以下几个原因:
■ 外设在物理上位于 PLD 器件之外
■ 外设需要某些粘连逻辑( glue logic )使其与 Avalon 总线信号连接
■ 在系统模块产生的时候,外设的设计还没有完成
在这些情况下, 相应的 Avalon 总线模块信号作为系统模块的端口现于外部 (及指定的外设) 。
主端口( Master Port)
主端口是主外设上用于开启 Avalon 总线传输的一系列端口的集合。 主端口与 Avalon 总线模
块直接相连。 实际上, 一个主外设可能有一个或多个主端口及一个从端口。 这些主端口及从
端口的相互依赖关系是由对外设进行设计时决定的。 但是, 这些主、 从端口上的单独的总线
传输应该总是遵循本文所述。 本文中所提及的所有主设备传输都是指单独的主端口的 Avalon
总线传输。
从端口( Slave Port)
从端口是指在位于某一外设上的,从另一外设主端口接受 Avalon 总线传输的一系列端口的
集合。从端口也直接与 Avalon 总线模块相连接。主外设也可以有一个从端口,通过这个从
端口可以使其接受 Avalon 总线上其他主设备的传输。本文所提及的所有从设备传输都是指
单独的从端口的 Avalon 总线传输。
主-从端口对( Master-Slave Pair)
“主-从端口对” 是指通过 Avalon 总线模块相连接的一个主端口和一个从端口构成的组合。
从结构上讲,这些主、从端口与 Avalon 总线模块上的相应端口相连接。主端口的控制及数
据信号可以有效的通过 Avalon 总线模块与从端口相互作用。主、从端口之间的连接(这就
构成了主 -从端口对)是在 SOPC Builder 中所确定的。
PTF 文件、 SOPC Builder 参数及开关