为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Stratix IV GX 器件的RapidIO 动态数据速率重配置参考设计

2013-08-07 22页 pdf 888KB 71阅读

用户头像

is_849782

暂无简介

举报
Stratix IV GX 器件的RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 AN-617-1.0 应用笔记 © 2010 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX are Reg. U.S. Pat. & Tm. Off. and/or trademarks of Altera Corporation in the U.S. and other countries...
Stratix IV GX 器件的RapidIO 动态数据速率重配置参考设计
Altera 公司 2010 年 12 月 AN-617-1.0 应用笔记 © 2010 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX are Reg. U.S. Pat. & Tm. Off. and/or trademarks of Altera Corporation in the U.S. and other countries. All other trademarks and serv www.altera.com/common/le accordance with Altera’s stand without notice. Altera assume service described herein excep version of device specification 101 Innovation Drive San Jose, CA 95134 www.altera.com Stratix IV GX 器件的 RapidIO 动态 数据速率重配置参考 ice marks are the property of their respective holders as described at gal.html. Altera warrants performance of its semiconductor products to current specifications in ard warranty, but reserves the right to make changes to any products and services at any time s no responsibility or liability arising out of the application or use of any information, product, or t as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest s before relying on any published information and before placing orders for products or services. RapidIO 动态数据速率重配置参考设计演示了如何通过使用 ALTGX_RECONFIG 宏功能以 及 Stratix® IV GX EP4SGX230KF40C3ES 信号完整性收发器开发板,来对 RapidIO® MegaCore® 功能模块数据速率进行重配置。ALTGX_RECONFIG 宏功能支持在运行阶段对 数据速率进行修改,而无需重编译您的设计。 本应用笔记包含以下几部分内容: ■ “ 功能描述 ” ■ “ 使用参考设计”( 第 11 页 ) ■ “ 验证的测试用例 ( 双板连接 )”( 第 16 页 ) f 要了解关于 RapidIO MegaCore 功能的详细信息,请参考 RapidIO MegaCore Function User Guide. 功能描述 参考设计采用 Nios® II 嵌入式处理器来控制动态重配置过程。通过对 Nios II 处理器 提供软件命令,来处理和执行数据速率重配置。重配置过程触发了 ALTGX_RECONFIG 宏 功能,以使用所需的数据速率对 RapidIO MegaCore 功能收发器进行重配置。 参考设计通过采用通道和时钟管理单元锁相环 (Channel and CMU PLL) 重配置模式来 对 RapidIO MegaCore 中的收发器进行重配置。Channel and CMU PLL 重配置模式使用 存储器初始化文件 (.mif) 来更改收发器设置,例如数据速率。参考设计重配置 RapidIO MegaCore 功能的发送 (TX) 和接收 (RX) 通道。 Subscribe 2 功能描述 系统体系机构 图 1 显示了系统体系结构的示意图。 下面章节对主系统组件在参考设计中所起的作用作了描述。 Nios II 处理器 当发出一个数据速率重配置命令时,Nios II 处理器就会处理并执行动态数据速率重配 置过程。 DMA 读组件 DMA 读组件将 RapidIO MegaCore 功能模块的 I/O 从读端口上的数据发送到 RX 数据存储 器。 数据源 ( 定制组件 ) 数据包源定制组件生成了 I/O 突发传送数据包,发送至 RapidIO MegaCore 功能写端 口。 图 1. 系统体系结构概观 Nios II Processor DMA Read Packet Source (Custom component) JTAG UART Reconfiguration Controller Components involved in dynamic data rate reconfiguration process. srio_softctrl (User logic) RapidIO MegaCore Function RX Buffer (Custom component) Program and Memory (On-chip Memory) RX Data (On-chip Memory) System Interconnect Fabric SOPC Builder System Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 功能描述 3 JTAG UART JTAG UART 组件提供了实现器件与 Nios II 终端进行通信的接口。Nios II 终端是连接 到 RapidIO MegaCore 功能驱动器的用户接口。 程序和存储器 ( 片内存储器 ) 程序和存储器组件用于存储 Nios II 处理器的软件程序代码。当下载软件程序代码时, 该组件存储这些代码,而 Nios II 处理器执行这些代码。 RX 缓冲器 (定制组件 ) RX 缓冲器定制组件存储从 RapidIO MegaCore 功能的读主端口中读取的数据以及在写主 端口中写入的数据。 RX 数据 (片内存储器 ) RX 数据片内存储器存储从 DMA 读组件中读取的数据。 用于动态数据速率重配置的相关组件在下面章节中将作介绍。 动态数据速率重配置组件 这一章节对下列动态数据速率重配置组件作了介绍: ■ srio_softctrl ( 用户逻辑 ) ■ RapidIO MegaCore 功能 ■ 重配置控制器 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 4 功能描述 图 2 显示了 srio_softctrl, 重配置控制器和 RapidIO MegaCore 功能组件上的信号。 srio_softctrl ( 用户逻辑 ) srio_softctrl用户逻辑将重配置指令发送到重配置控制器,同时也发送复位信号,来 对 RapidIO MegaCore 功能进行复位。该用户逻辑与 Avalon® Memory- Mapped (Avalon- MM) 接口相连接,来将 Nios II 处理器中的重配置软件命令传递到重配置控制器。 1 要在SOPC Builder系统中创建一个定制组件,srio_softctrl用户逻辑提供了可以被组 件编辑器识别,并用于与其他组件进行通讯的 Avalon- MM 接口信号。导线管中的导出 信号 (reset_srio_n除外 ) 连接到重配置控制器。 reset_srio_n信号连接到 RapidIO MegaCore 功能的主复位。 f 要了解关于创建一个基于SOPC Builder系统的Verilog HDL文件的新组件的详细信息, 请参考 Quartus II 手册的 Volume 4: SOPC Builder。 图 2. srio_softctrl, 重配置控制器和 RapidIO MegaCore 功能信号 re co nf ig _f ro m gx b re co nf ig _t og xb re co nf ig _d on e re co nf ig _e na ra te _r ec on fig [1 :0 ] reset_srio_n srio_softctrl (User logic) RapidIO MegaCore Function Transceiver SOPC Builder System reconfig_data[15:0] Controller (User logic) ALTGX_RECONFIG Megafunction Reconfiguration Controller reconfig_done reconfig_address[5:0] write Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 功能描述 5 RapidIO MegaCore 功能 RapidIO MegaCore 功能通过链路搭档来建立一个 RapidIO 链路。另外,RapidIO MegaCore 功能也将 Avalon-MM 接口上的传输数据转换成相应的 RapidIO 传输数据,并 且在 RapidIO 串行链路上发送这些传输数据。RapidIO MegaCore 功能将 RapidIO 串行 链路上的 RapidIO 传输转换成 I/O 突发传输,并将这些突发传输呈现在相应的 Avalon-MM 从端口或者主端口。 在该参考设计中,RapidIO MegaCore 功能包含下列的默认参数设置: ■ 初始数据速率: 2.5 GBaud ■ 参考时钟频率: 156.25 MHz ■ 模式选择: 1× Serial 重配置控制器 重配置控制器模块是由 ALTGX_RECONFIG 宏功能和控制器 ( 用户逻辑 ) 组成,接收来自 srio_softctrl用户逻辑的指令并对收发器进行重配置。 ALTGX_RECONFIG 宏功能 ALTGX_RECONFIG 宏功能对 RapidIO MegaCore 功能中的收发器进行重配置。要想重配置 收发器, ALTGX_RECONFIG 宏功能必须有用于发送到 RapidIO MegaCore 功能的正确的 配置设置,.mif 文件包含这些配置设置。参考设计使用 Channel and CMU PLL 重配置 模式, reconfig_mode_sel端口值设置为 101。 控制器 ( 用户逻辑 ) 控制器包括用户定义逻辑,来获得指定 RAM 中的 .mif 的内容。在重配置过程中,控制 器根据 srio_softctrl用户逻辑中的 rate_reconfig[1:0]输入信号来选择 .mif 文 件。 控制器加载在 ALTGX_RECONFIG 宏功能中选择的 .mif 文件内容。 参考设计提供了四个 .mif 文件,按照 RapidIO Specification, 2.1 的要求,使用不 同的数据速率 —5.000, 3.125, 2.500 和 1.250 GBaud— 来指定收发器配置设置。该 参考设计使用的 .mif 文件位于 reconfig_mif 文件夹中。 共有四个 RAMs,每一个 RAM 存储一个 .mif 文件。当在板级上运行设计时,您可以从 RAM 上访问 .mif 文件的内容。 f 要了解关于例化多个.mif文件的详细信息,请参考Stratix IV器件手册的第2卷中的 Stratix IV Dynamic Reconfiguration 章节。 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 6 功能描述 图 3 显示了控制器的体系结构。 图 3. 控制器组件体系结构 .mif (Data rate = 5.0 GBaud) RAM A Controller rate_reconfig[1:0] M ultiplexer .mif (Data rate = 2.5 GBaud) RAM C .mif (Data rate = 1.25 GBaud) RAM D .mif (Data rate = 3.125 GBaud) RAM B ALTGX_RECONFIG Megafunction Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 功能描述 7 动态重配置过程 图 4 显示了 RapidIO MegaCore 功能动态数据速率重配置的工艺流程。 当在 nios2-terminal 中输入 rate_reconfig < 所需数据速率 >命令时,Nios II 处理 器通过 Avalon- MM 接口发送命令到 srio_softctrl用户逻辑,以开始重配置过程。当 在 nios2-terminal 中输入软件命令 rate_reconfig< 所需数据速率 > 时 , srio_softctrl用户逻辑会拉起 reconfig_ena信号,reconfig_ena信号然后开始重配置 过程,并对 rate_reconfig[1:0]信号中所需的数据速率进行编码。 rate_reconfig[1:0]信号是一个多路复用选择信号,用于确定选择哪一个 .mif 文件。 控制器选择了相应的 .mif 文件后 , 将 .mif 文件内容加载到 ALTGX_RECONFIG 宏功能。 ALTGX_RECONFIG 宏功能通过 reconfig_togxb信号来使用新的收发器设置对 RapidIO MegaCore 中的收发器进行重配置。 当控制器加载 .mif 文件时 , 控制器会拉起发送到 ALTGX_RECONFIG 宏功能的写信号。 控制器在每一个写周期中,只将 .mif 文件内容的一个字写入到 ALTGX_RECONFIG 宏功 能。这一过程会一直重复,直到将所有内容写入到 ALTGX_RECONFIG 宏功能。 图 4. 动态数据速率重配置工艺流程 开始重配置 接收Nios II 命令 控制器根据重配置数据速率 来选择.mif文件 ALTGX_RECONFIG宏功能重配置 RapidIO MegaCore 功能中的收发器 完成重配置 空闲 控制器写入.mif文件内容到 ALTGX_RECONFIG宏功能 是 否完成所有.mif文件 内容的写入? Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 8 功能描述 当控制器完成了 .mif 文件内容的写入 ,ALTGX_RECONFIG 宏功能会拉起 reconfig_done 信号,以表明重配置过程已经成功地完成。 内部信号 表 1 列出了第 4 页图 2 所示的动态数据速率重配置组件的内部重配置信号。 表 1. 动态数据速率重配置组件的内部重配置信号 信号 说明 rate_reconfig[1:0] 2 位控制信号,表明 RapidIO MegaCore 功能收发器被重配置成的数 据速率。 2'b00 = 5.000 GBaud 2'b01 = 3.125 GBaud 2'b10 = 2.500 GBaud 2'b11 = 1.250 GBaud reconfig_ena 使能重配置过程。当 srio_softctrl用户逻辑拉起这一信号时, rate_reconfig信号的值有效。 reconfig_done 状态信号,表明重配置过程已经完成,重配置控制器返回到空闲状 态。 reconfig_address[5:0] 提供.mif文件内容地址给控制器,以得到 .mif 文件内容的指定字。 write 连续的脉冲信号,使.mif文件内容的字在每一个脉冲中都被写入到 ALTGX_RECONFIG 宏功能。 reconfig_data[15:0] 将重配置 .mif文件内容数据从控制器加载到 ALTGX_RECONFIG 宏功 能。 reconfig_togxb ALTGX_RECONFIG 宏功能上的重配置信号总线,用于重配置 RapidIO MegaCore 功能收发器。 reconfig_fromgxb RapidIO MegaCore 功能收发器上的重配置信号总线输出,提供重配 置数据给 ALTGX_RECONFIG 宏功能。 reset_srio_n 低电平有效信号,当被下面其中的一个条件触发时,会对 RapidIO MegaCore 功能进行复位: ■ 软件复位 (16 Avalon- MM 系统时钟周期 ) ■ 硬件复位 ■ 重配置过程期间复位 (保持复位直到重配置过程完成 ) Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 功能描述 9 Nios II 嵌入式处理器的软件应用 C 编程文件 srio_main_full.c 包含了 Nios II 嵌入式处理器的软件应用。软件应用文 件支持对 Nios II 嵌入式处理器发送软件命令以执行各种任务,例如执行动态数据速 率重配置。当运行参考设计时,srio_main_full.c 文件位于 software_app 文件夹中, 并被下载到 Nios II 嵌入式处理器。 表 2 列出了用于该参考设计的软件命令。需要在 nios2-terminal 中输入软件命令,来 指示 Nios II 嵌入式处理器以及其它子系统模块执行特定任务, 时钟和复位 参考设计中的时钟与复位系统包含一个 156.25- MHz 收发器时钟和一个 50- MHz 频率时 钟。您可以从 Stratix IV GX 信号完整性开发板上获得两个时钟频率的时钟源。 156.25-MHz 收发器时钟连接到专用 156.25-MHz 收发器时钟 (G38),50-MHz 时钟连接到 板级上的专用 50-MHz 核心时钟 (AR22)。 通过连接 156.25- MHz 收发器时钟与 RapidIO MegaCore 功能中的收发器可以实现高速 数据传输。Avalon- MM 系统时钟使用 50- MHz 频率时钟 (clk_50) 来运行 , 如图 5所示。 clk_50 时钟连接到 reconfig_clk以及 clk信号。 表 2. Nios II 嵌入式处理器的软件命令 软件命令 说明 h 列出所有的可用指令。 start 数据包源模块开始发送数据包至 RapidIO MegaCore 功能。 stop 数据包源模块停止发送数据包至 RapidIO MegaCore 功能。 init RapidIO 内部寄存器的初始化。要了解关于已配置的指定寄存器的详细信息,请参考 srio_main_full.c 文件。 link 检查 RapidIO 链路的状态。 如果链路接通 ,返回的命令 = Link Up ; 如果链路断开 ,返回的命令 = Link Down。 r 软件复位。复位 RapidIO MegaCore 功能。 rate_reconfig< 所需的数据速率 > 开始数据速率重配置过程。重配置后,RapidIO MegaCore 功能将在所需的数据速率下运行。 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 10 功能描述 图 5 显示了支持 RapidIO MegaCore 功能的动态数据速率重配置的时钟和复位系统。 参考设计将时钟输入连接到 clk_50。您也可以将这些时钟独立地连接到设计的不同 源。 重配置过程需要 7,800 时钟周期来完成。当重配置过程开始时,RapidIO MegaCore 功 能自动进入复位,同时 RapidIO 链路断开。复位期间,RapidIO MegaCore 功能中的 FIFO 缓冲器也会被清零。如果任何的数据包在 RapidIO MegaCore 功能中的处理被搁置 下来 (发送前或者接收后),那么 FIFO 缓冲器的清零操作可能会导致数据丢失。 1 重配置前,Altera 建议应当避免发送数据至 RapidIO MegaCore 功能,并且等待接收来 自 RapidIO MegaCore 功能的所有未决的相应数据包,以防止数据丢失。 在 ALTGX_RECONFIG 宏功能重新拉高 reconfig_done信号后,重配置过程完成。接下 来,RapidIO MegaCore 功能中的复位状态机便开始链路恢复过程。复位状态机确保了 链路的锁相环 (PLL) 及频率在链路建立前被锁定。您可以在第 19 页图 10 到第 21 页 图 12 中的波形图中观测这些重配置与复位过程。 图 5. 动态数据速率重配置的时钟和复位系统 图 5 注释 : (1) Avalon- MM 系统时钟与 SOPC Builder 系统中的组件相连。 (2) 软件复位是来自 nios2-terminal 的软件命令。 (3) 这是一个低电平有效信号。以下任何一种情况的发生都会触发这一复位信号:硬件复位,软件复位,或 者复位接下来的重配置。 Hardware Reset USER_PB0 (AW28) Software Reset (1) (3) (2) clk_rapidio (156.25 MHz) clk_50 (50 MHz) reset_srio_n Avalon-MM System Clock Reconfiguration Controller SOPC Builder System srio_softctrl (User logic) Transceiver RapidIO MegaCore Function reconfig_clk ALTGX_RECONFIG Megafunction clk Controller Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 使用参考设计 11 另外, srio_reset_n信号会在下列任何情况发生后,对 RapidIO MegaCore 功能的复 位进行控制。 ■ 使用外部 reset_n管脚的硬件复位 ■ 软件复位命令 1 这两个复位操作对 RapidIO MegaCore 功能进行复位,但没有对嵌入在 RapidIO MegaCore 功能中的收发器进行重配置。 使用参考设计 下面章节介绍了如何设置以及使用参考设计: ■ “ 硬件要求 ” ■ 软件要求 ■ 安装参考设计 硬件要求 该参考设计通过采用 Stratix® IV GX EP4SGX230KF40C3ES 信号完整性收发器开发板, 来对动态数据速率重配置过程进行演示。可以通过下面其中的一个方法来验证重配置 过程: ■ 单板连接 ■ 双板连接 单板连接 在单板连接的方法中,TX 与 RX 端口通过外部回环相连接,并且共享同一时钟源和收发 器通道。当 ALTGX_RECONFIG 宏功能使用需要的数据速率动态地重配置收发器时,会改 变 TX 与 RX 端口的通道和 PLL 设置。与此同时,TX 与 RX 端口上的数据速率也会改变。 对收发器中需要的数据速率进行配置后,RapidIO MegaCore 功能将 RapidIO 链路重新 建立在新的运行数据速率下。 图 6 显示了单板连接。 图 6. 单板连接 Stratix IV GX Signal Integrity Transceiver Development Board External Loopback (High-speed Serial Interface through BMA cable) RX port (rd rapidio) TX port (td rapidio) Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 12 使用参考设计 双板连接 在双板连接的方法中,采用两个 Stratix IV GX EP4SGX230 信号完整性收发器开发板 来演示参考设计。第一个 ( 板级 A) 是测试板级,第二个 ( 板级 B) 是控制板级。 图 7 显示了板级 A 和 B 上的 TX 与 RX 端口的连接情况。您可以在板级 A 与板级 B 上对 同一设计进行编程。两个板级上的默认数据速率为 2.5 GBaud。由于板级 A 和板级 B 上 的 RapidIO MegaCore 功能的初始数据速率是相同的,因此链路可以被建立。 图 7 显示了双板连接。 您可以通过 JTAG 电缆对板级 B 上的参考设计进行编程和下载。编程和下载完成后,拔 掉 JTAG 电缆的电源,并保持板级 B 作为控制板级。然后,编程和下载板级 A 上的参考 设计。这两个板级使用 SMA 连接器作为高速 RapidIO 链路。SMA 连接器是: ■ TX port: GXB1 - TX4 ■ td_rapidio(p) - AD36 ■ td_rapidio(n) - AD37 ■ RX port: GXB1 - RX4 ■ rd_rapidio(p) - AE38 ■ rd_rapidio(n) - AE39 软件要求 参考设计需要下列软件: ■ Quartus® II 9.1 ■ RapidIO MegaCore 9.1 ■ Nios II Embedded Design Suite 9.1 安装参考设计 这一章节对如何安装参考设计进行了介绍。 图 7. 双板连接 Stratix IV GX Stratix IV GX RX port (rd_rapidio) Board A (Device Under Test) TX port (td_rapidio) TX port (td_rapidio) RX port (rd_rapidio) High-speed Serial Interface through SMA Cable Board B (Control) Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 使用参考设计 13 altera_srio_reconfig_ref_design.zip 文件包含该参考设计需要的所有文件。 在指定的工程目录下解压缩 altera_srio_reconfig_ref_design.zip 文件。解压缩后, 工程目录包含的子目录如图 8 所示。 运行参考设计 请按照下列步骤来运行参考设计: 1. 将 JTAG 电缆连接到器件。如果使用双板级连接,则将 JTAG 电缆连接到板级 B。 2. 要开始 Nios II 命令壳 , 需要在 Windows 的 Start 菜单上指向 All Programs > Altera > Nios II EDS , 然后点击 Nios II Command Shell。 3. 跳转到 /software_bsp 文件夹。 4. 输入下面命名来执行用于建立该参考设计所要求的硬件抽象层 (HAL) 驱动程序的脚 本: ./create-this-bsp r 5. 跳转到 /software_app 文件夹。该文件夹包含 srio_main_full.c, srio_regs.h 和 create-this-app 文件。 6. 输入下面命令来执行用于编译 srio_main_full.c 中驱动程序软件的脚本: ./create-this-app r 图 8. 目录结构 dma .sopc_builder incremental_db pkt_checker db altera_srio_reconfig_ref_design Installation directory reconfig_mif pkt_source reset rx_buffer rapidio_library software_app software_bsp srio_stats Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 14 使用参考设计 7. 请按照下面步骤来对器件编程,下载软件映像,以及开始 Nios II 终端会话: a. 在命令壳中输入下面命令来对器件编程: nios2-configure-sof -d 1 ../srio_2500_x1.sof r b. 输入下面命令将软件映像下载到器件中: nios2-download --device=1 -g srio_test.elf r c. 通过输入下面命令来开始 Nios II 终端对话,从而与器件中的 Nios II 处理器 进行通讯。 nios2-terminal --device=1 r d. 如果使用双板级链接,那么现在需要将 JTAG 电缆从板级 B 连接到板级 A。在同 一 Nios II 命令壳中,对板级 A 重复步骤 a 到步骤 c。 8. 打开 Quartus II 软件。在 Tools 菜单中 , 点击 SignalTap II Logic Analyzer 来 打开 SignalTapTM 嵌入式逻辑分析器文件 stp1.stp。stp1.stp 文件包含一列随着 重配置过程的变化而变化的内部信号。通过查看这些信号上的活动以确认是否执行 了重配置。您也可以在第 19 页图 10 到第 21 页图 12 中查看这些信号。 9. 在 nios2-terminal 中输入下面的命令来重配置 RapidIO MegaCore 功能的数据速 率: rate_reconfig r 1 所需的数据速率可以是 1250,2500,3125, 或者 5000。 如果使用相同的数据速率重配置 RapidIO MegaCore 功能,那么 Nios II 处理器会执行 重配置以及复位过程,但是最终的数据速率将不会改变。如果使用不支持的数据速率 来重配置 RapidIO MegaCore 功能,那么 Nios II 终端会显示例 1 中的错误信息: 例 1. 错误信息 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 使用参考设计 15 要检查速率重配置之前和之后的当前链路的状态,需要在 nios2-terminal 中输入 Link。如果链路被建立,则返回的命令显示 Link Up, 请参考例 2。如果链路断开,返 回的命令显示 Link Down。 如果只使用一个板级来进行重配置,那么可以在所有的情况下建立链路,这是因为 TX 与 RX 端口是使用相同的数据速率重配置的。如果通过已建立的链路在两个板级上运行 两个设计,那么在重配置过程之后,链路能够接通也能够断开,这取决于已重配置的 所需数据速率是否与另一个端口上的数据速率相同。 1 在 nios-2 终端对话中输入 r来使用软件复位命令。 例 2. 成功的 Link Up Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 16 验证的测试用例 ( 双板连接 ) 验证的测试用例 ( 双板连接 ) 运行参考设计后,可以通过执行测试用例 1 和 2 来验证动态数据速率重配置过程。 如果链路搭档的数据速率不一样,那么 RX 端口无法锁定频率,并且 RapidIO 链路会断 开。然而,如果链路搭档的数据速率相同,那么 RapidIO MegaCore 功能会成功地建立 一个链路。 图 9 显示了测试用例 1 和 2 的双板连接。 测试用例 1:测试 TX 端口 测试用例 1 的初始数据速率为 2.500 GBaud. 这一测试用例的目的在于测试板级 A 的 TX 端口。如果将板级 A 的初始数据速率重配置成 1.250 GBaud, 那么由于板级 A 和 B 运行 在不同的数据速率下,因此链路会断开。板级 A 的 TX 端口上的数据速率被重配置为所 需的数据速率,但是板级 B 的 RX 端口上的数据速率保持不变。因此,数据速率无法同 步,链路会断开。 通过使用 SignalTap II 嵌入式逻辑分析器,您可以监控 port_initialized信号上的 测试结果。如果将数据速率从 1.250 GBaud 重配置成 2.500 GBaud, 那么您可以监控 RapidIO MegaCore 功能中的重置序列,并且可以观测相应的链路何时被重建。 表 3 显示了测试用例 1 的测试条件。 图 9. 双板连接的测试用例 Stratix IV GX Stratix IV GX RX port (rd_rapidio) Board A (Device Under Test) TX port (td_rapidio) TX port (td_rapidio) RX port (rd_rapidio) High-speed Serial Interface through SMA Cable Board B (Control) Test Case 2 Test Case 1 Test Case 1: Testing TX port Test Case 2: Testing RX port 表 3. 测试用例 1 的测试条件 板级 步骤 链路 (port_initialized 信号 ) A 和 B 使用 2.500-GBaud 设计进行配置 Lock (1’b1) A 从 2.500 GBaud 重配置成 1.2500 GBaud Lost lock (1’b0) A 从 1.250 GBaud 重配置成 2.500 GBaud Lock (1’b1) Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 验证的测试用例 ( 双板连接 ) 17 测试用例 2:测试 RX 端口 测试用例 2 的初始数据速率为 2.500 GBaud。这一测试用例的目的在于测试 RX 端口。 如果将板级 B 的初始数据速率配置成 1.250 GBaud, 则运行在 2.500- GBaud 数据速率的 板级 A 会失去链路。请注意,板级 B 是采用所需的数据速率配置的,并且没有被重配 置。您可以准备另一个运行在 1.250- GBaud 数据速率的 .sof 文件,并将这个 .sof 文 件编程到板级 B。如果板级 B 的 TX 端口有一个不同的数据速率,则链路会断开。 要想重新建立链路,您必须使用相同的数据速率来重配置板级 A,这里使用 1.250 GBaud。如果板级 A 的 RX 端口上的所需数据速率与板级 B 的 TX 端口上的数据速 率相匹配,则链路会被重新建立。 表 4 显示了测试用例 2 的测试条件。 f 要了解关于SignalTap II嵌入式逻辑分析器的详细信息,请参考Quartus II手册第3卷 中的 Design Debugging Using the SignalTap II Embedded Logic Analyzer 章节。 波形实例 本章节提供了动态数据速率重配置过程的 SignalTap II 信号和波形。 表 5 对第 19 页 图 10 到 第 21 页图 12 中所示的信号作了说明。 表 4. 测试用例 2 的测试条件 板级 步骤 链路 (port_initialized 信号 ) A 和 B 使用 2.500-GBaud 设计进行配置 Lock (1’b1) B 将 1.250 GBaud .sof 文件编程到板级 B Lost lock (1’b0) A 从 2.500 GBaud 重配置成 1.2500 GBaud Lock (1’b1) 表 5. SignalTap II 嵌入式逻辑分析器上显示的已选择信号 (1/2) 信号 说明 port_initialized 表明成功地完成了串行 RapidIO 初始化序列。链路被建立。 reset_state_machine 监控复位后的收发器 PLL 和频率的锁定状态。当 RapidIO MegaCore 功能锁定收发器 PLL 和频率时,RapidIO 链路被建 立。 softctrl|reset_srio_n( 注释 1) 当被下面其中一个条件触发时,进行复位: ■ 软件重置 ■ 硬件重置 ■ 重配置过程 softctrl|sys_mnt_s_......( 注释 1) 用户逻辑上的Avalon-MM 信号,来自 SOPC Builder 系统 (Nios II 处理器 )。 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 18 验证的测试用例 ( 双板连接 ) reconfig|reconfig_ena( 注释 2) 使能动态数据速率重配置过程。另外,也表明了 rate_reconfig[1:0]信号有效,以及 srio_softctrl 用户逻辑上的输出和到重配置控制器的输入。 reconfig|rate_reconfig( 注释 2) 一个表明当前重配置数据速率的内部信号。当 srio_softctrl用户逻辑拉起 reconfig_ena信号时, rate_reconfig值表明要重配置的当前数据速率,并表明 值是有效的。 下面的值表明当前数据速率: ■ 0h: 5.000 GBaud ■ 1h: 3.125 GBaud ■ 2h: 2.500 GBaud ■ 3h: 1.250 GBaud reconfig|reconfig_done( 注释 2) 表明重配置过程完成。返回所有的状态和输出信号到它们的默认值。 controller|……( 注释 3) 控制器中来自.mif 文件的数据,地址和信号。这些信号被输入到 ALTGX_RECONFIG 宏功能。 表 5注释 : (1) 从 Nios II 处理器到 srio_softctrl用户逻辑 (SOPC Builder 系统中的 Avalon 总线 )的信号。 (2) 从 srio_softctrl 用户逻辑(SOPC Builder 系统 ) 到控制器的管道信号。 (3) 从控制器到 ALTGX_RECONFIG 宏功能的信号。 表 5. SignalTap II 嵌入式逻辑分析器上显示的已选择信号 (2/2) 信号 说明 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 验证的测试用例 ( 双板连接 ) 19 图 10 到第 21 页图 12 显示了动态数据速率重配置过程的 SignalTap II 波形。 图 10 显示了动态数据速率重配置过程开始时的 SignalTap II 逻辑分析器波形实例。 通过将 reconfig_ena信号设置成 SignalTap 文件中的触发点来获得这一波形。 如果要开始重配置过程,则需要在 nios2- terminal 中输入软件命令 rate_reconfig< 所 需的数据速率 >。当输入软件命令时,Nios II 嵌入式处理器提示 srio_softctrl用户 逻辑拉起 reconfig_ena信号。 rate_reconfig信号被重配置成 1.250 GBaud (3h)。在 控制器接收到 rate_reconfig和 reconfig_ena信号后,在 ALTGX_RECONFIG 宏功能开 始一系列的写脉冲。随着控制器上每一个写脉冲的生成, reconfig_data和 reconfig_address 信号对ALTGX_RECONFIG宏功能中选择的.mif文件内容进行加载,并 且对收发器进行重配置。 当重配置过程开始时, srio_softctrl用户逻辑会发送复位信号,以对 RapidIO MegaCore 功能进行复位。RapidIO 链路断开并且置低 port_initialized信号,保持复 位直到完成重配置过程。 图 10. 动态数据速率重配置过程的开始 ( 注释 1) 图 10 注释: (1) 取代第 17 页表 5 中所表示的 5.0 GBaud,rate_reconfig信号的初始值为 0h,由于寄存器复位。 rate_reconfig信号的值仅在 reconfig_ena信号(1’b1) 拉起时有效, 使 rate_reconfig信号能够被发送到控制器进行处理。 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 20 验证的测试用例 ( 双板连接 ) 图 11 显示了动态数据速率重配置过程完成后的 SignalTap II 逻辑分析器的波形实 例。通过将 reconfig_done信号设置成 SignalTap 文件中的触发点来获得这一波形。 当 ALTGX_RECONFIG 宏功能接收来自控制器的已选择的 .mif 文件内容时,通过 reconfig_togxb信号来重配置 RapidIO MegaCore 功能中的收发器。ALTGX_RECONFIG 宏 功能写入 .mif 文件中所有内容,以完成重配置过程。ALTGX_RECONFIG 宏功能对收发 器进行完全重配置后,拉起 reconfig_done信号,以表明重配置过程已经完成。 srio_softctrl用户逻辑中的状态机将 reconfig_ena信号置低,srio_softctrl用户逻 辑以及重配置控制器返回到空闲状态。 当重配置过程完成时, reset_srio_n信号释放 RapidIO MegaCore 功能上的复位。 RapidIO MegaCore 功能然后会尝试锁定收发器 PLL 以及频率,以重新建立链路。 图 11. 动态数据速率重配置完成后 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 使能重配置 21 图 12 显示了当链路被重建时 SignalTap II 逻辑分析器的波形实例。通过将 port_initialized信号设置成 SignalTap 文件中的触发点来获得这一波形。 如果数据速率在 TX 和 RX 端口上的相同,RapidIO MegaCore 功能会锁定收发器 PLL 以 及频率,来重新建立链路。RapidIO MegaCore 功能拉高 port_initialized信号以指 明链路被建立并且可以使用。现在,RapidIO MegaCore 功能就能够以所需的数据速率 发送和接收数据。 使能重配置 本章节提供了为您的设计实现重配置过程时,可能用到的额外信息。 1 参考设计按照以下步骤提供了包含最终结果的 SRAM 目标文件 (.sof)。 请按照下列步骤来重配置 RapidIO MegaCore 功能中的收发器: 1. 例化 SOPC Builder 系统中的 RapidIO MegaCore 功能。 2. 生成 SOPC Builder 系统。 3. 在 rapidio hierarchy 下 , 点击 rapidio_riophy_gxb 来运行 ALTGX 参数编辑器。 图 12. 当链路被重建时 Altera 公司 2010 年 12 月 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 22 文档修订历史 4. 要使 ALTGX_RECONFIG 宏功能够重配置收发器中的 Channel and CMU PLL, 在 ALTGX_RECONFIG 参数接口的 Reconfiguration settings 标签中,开启 Enable Channel and Transmitter PLL reconfiguration. 5. 点击 Finish,重新生成收发器文件。 请按照下列步骤来例化 ALTGX_RECONFIG 宏功能以及选择 Channel and CMU PLL 重配置 模式: 1. 在 Tools 菜单中 , 点击 MegaWizard Plug-In Manager。 2. 点击 Next。 3. 在宏功能列表中 , 点击 I/O category 旁边的 + 图标 , 然后选择 ALTGX_RECONFIG。 点击 Next。 4. 在 ALTGX_RECONFIG 参数编辑器的 Reconfiguration settings 标签中,开启 Channel and TX PLL select/reconfig。 ALTGX_RECONFIG 宏功能通过 reconfig_togxb和 reconfig_fromgxb信号与 RapidIO MegaCore 功能中收发器交换数据。其它信号连接到控制器,以获得已选择的 .mif 文件 中的重配置数据。 f 要了解关于ALTGX_RECONFIG宏功能的详细信息,请参考Stratix IV器件手册第2卷中的 Stratix IV Dynamic Reconfiguration 章节。 1 如果您的设计需要不同的收发器设置 ( 例如,如果您的设计使用一个与参考设计中指定 频率不同的时钟频率 ),Altera 建议使用所需的收发器设置,来重新生成用于四个数据 速率的四个 .mif 文件。必须重新生成 .mif 文件,这是因为 reconfig_mif 文件夹中的 .mif 文件包含仅用于 RapidIO MegaCore 功能的收发器设置。 f 要了解关于例化多个 .mif 文件的详细信息,请参考 Stratix IV 器件手册第 2 卷中的 Stratix IV Dynamic Reconfiguration 章节。 文档修订历史 表 6 显示了本应用笔记的修订历史。 表 6. 文档修订历史 日期 版本 修订内容 2010 年 12 月 1.0 首次发布。 Stratix IV GX 器件的 RapidIO 动态数据速率重配置参考设计 Altera 公司 2010 年 12 月 Stratix IV GX器件的RapidIO动态 数据速率重配置参考设计 功能描述 系统体系
/
本文档为【Stratix IV GX 器件的RapidIO 动态数据速率重配置参考设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索