reference: https://blog.csdn.net/shanghaiqianlun/article/details/50545581
1. PCIe信号
名称 | 类型 | 描述 |
PCTP[3:0] PCTN[3:0] | PCIE_O | PCIe端口的差分发送数据 |
PCRP[3:0] PCRN[3:0] | PCIE_I | PCIe端口的差分接收数据 |
PCCLKP PCCLKN | DIFF_I | PCIe参考时钟输入 当在PCIe公共时钟模式(CLKMODE为高),PCCLKP/N要求时钟频率是100MHz 当在PCIe非公共时钟模式(CLKMOD为低),PCCLKP/N要求的时钟频率由CLKSEL[1:0]来选择,且在REFCLKP/N上的时钟频率也应该与PCCLK一样。 |
PCRSTOn | IO | 正常模式是输出模式,在测试模式是输入。 作为一个异步有效为低的复位输出,在下面两种情况下这个脚输出低: l PCIe端口检测到热复位 l PCIe端口是DL_DOWN |
PCCLK可来自于PCIe接口上的参考时钟信号,也可以来自:
ICS841N254I的QB0、QB1的输出时钟是一样的。
2.S-RIO信号
名称 | 类型 | 描述 |
SRTP[3:0] SRTN[3:0] | SRIO_O | S-RIO端口的差分发送数据 |
SRRP[3:0] SRRN[3:0] | SRIO_I | S-RIO端口的差分接收数据 |
SRRSTOn | IO | 正常操作的时候,是输入;测试模式时为输入 作为一个有效为低的异步复位输出,在下面两种情况下输出为低: l 当接收到4个连续的S-RIO复位符号的时候,这个脚为低。SELF_RST l RapidIO PLM端口实现规定的控制寄存器SELF_RST置为1时。 |
MECS | IO-PD | 异步S-RIO多播事件控制符号。它的方向由设备控制寄存器MECS_O位来控制。 作为输入,一个上升沿或者下降沿触发S-RIO MECS在S-RIO链路上发送。使用RIO_SP0_MECS_FWD.SUBSCRIPTION/MULT_CS和RIO_EM_MECS_TRIG_EN.CMD_EN来选择CMD域,应当与MECS一起设置。多MECSs与CMD域不同,它可以通过设置相应的这些域来产生。 作为输出,这个信号在收到S-RIO MECS是触发,为了触发MECS输入,仅需一个MECS_CMD值被选择。设置RIO_EM_MECS_CAP_EN.CMD_EN来选择CMD值将被传播到MECS脚,注意:在CMD_EN里,仅1bit应该被使能。 |
2. 通用信号
名称 | 类型 | 描述 |
RSTn | I-PU | 器件复位,如果断言这个信号,则Tsi721芯片的所有逻辑都会被复位。 |
REFCLKP REFCLKN | DIFF_I | S-RIO参考时钟输入,REFCLK要求的时钟频率是由CLKSEL选择的 |
REFCLK的产生:
复位信号是上电复位与按钮复位的组合:
3. I2C信号
I2C接口用于:
-
作为一个master,从EEPROM中下载配置
-
作为一个master,允许PCEe RC或者S-RIO host配置其它I2C扩展器件
-
作为一个slave,将内部寄存器空间呈现给I2Cmaster(注意:用于实验室调试,或者另一个master-driven初始化)
名称 | 类型 | 描述 |
I2C_SCL | IO-OD | I2C接口的时钟脚,最大100KHz |
I2C_SDA | IO-OD | I2C接口的数据脚 |
在评估板上,是通过一个FT2232接口芯片来制造一个I2C接口。
4. JTAG和测试接口信号
名称 | 类型 | 描述 |
TCK | I-PD | IEEE 1149.1/1149.6测试存取端口,时钟输入 |
TDI | I-PU | IEEE 1149.1/1149.6测试存取端口,串行数据输入 |
TDO | O | IEEE 1149.1/1149.6测试存取端口,串行数据输出 |
TMS | I-PU | IEEE 1149.1/1149.6测试存取端口,测试模式选择 |
TRSTn | I-PU | IEEE 1149.1/1149.6测试存取端口,复位输入 在RSTn断言期间,这个输入必须被断言,然后它可以处于其它状态 |
TEST_ON | I-PD | 测试模式脚,为低或者NC是正常操作模式 |
TEST_BCE | I-PU | 边界扫描兼容使能模式,这个输入辅助1149.6测试,在器件的正常操作模式,它必须系到VDDIO(或NC,因为这个脚内部有上拉) 0=JTAG链包括SerDes寄存器,SerDes寄存器可通过JTAG脚来存取。用于在ATE期间和实验室调试时使用一个外部JTAG控制器对SerDes寄存器调试。 1=JTAG链不包括SerDes寄存器,SerDes寄存器可存取,是通过BAR0存取内部寄存器总线 |
TEST_BIDIR_CTL | I-PU | 测试模式脚,为高或者NC是正常操作模式 |
TDO、TCK、TDI、TMS、TRST是JTAG信号,在评估板里是通过一个FT2232接口芯片来制造一个JTAG接口的。
TEST_ON接地或悬空;TEST_BIDIR_CTL悬空或接3.3V电源;TEST_BCE可以悬空(为1)或接地,通过一个跳线器来选择。
5. GPIO信号
名称 | 类型 | 描述 |
GPIO[15:0] | IO | 异步通用IO。 l 每个GPIO可配置为通用目的的IO脚 l 每个脚都能配置为输入或者输出 l 当配置为输出时候,当BDMA/SMSG/PC2SR/SR2PC遇到一个不可纠正的ECC错误或者S-RIO MAC有一个非数据内存不可纠正的ECC错误时,GPIO[0]断言为高。 l 当配置为输出时,当Tsi721 PCIe端口不在数据链路有效状态的时候,GPIO[1]断言为高。 l 当配置为输出时,当Tsi721有一个有效的中断的时候,GPIO[2]断言为高。 l 当配置为输出时,GPIO[15:3]的状态可以用软件编程。 GPIO[12:0]用于上电脚,见下一个表,这些信号在RSTn解除断言后,它们必须保持状态稳定并持续4000 REFCLKP/REFCLKN时钟周期。复位后,它们的状态被忽略。 |
GPIO映射为上电信号:
GPIIO主功能 | 上电脚(次功能) |
GPIO[3:0] | I2C_SA[3:0] |
GPIO[4] | I2C_DISABLE |
GPIO[5] | I2C_SEL |
GPIO[6] | I2C_MA |
GPIO[7] | SP_SWAP_RX |
GPIO[8] | SP_SWAP_TX |
GPIO[9] | SP_HOST |
GPIO[10] | SP_DEVID |
GPIO[12:11] | CLK_SEL[1:0] |
6. 上电信号
名称 | 类型 | 描绘 |
CLKMOD | I-PU | 时钟模式,为高的时候,Tsi721使用“PCIe common clocked mode”,当为低的时候,使用“PCIe non-common clocked mode”,这是个静态信号 |
CLKSEL[1:0] | IO | REDCLKP/REFCLKN时钟频率选择;在PCIe non-commom clock mode下,PCCLKP/PCCLKN时钟频率选择。 l 0b11 = 125MHz l 0b10 = 100MHz l 001 = 156.25MHz l 其他:保留 当使用100MHz的时候,S-RIO SerDes支持1.25/2.5/5Gbaud速率。 当使用125/156.25MHz的时候,S-RIO SerDes支持1.25/2.5/3.125/5Gbaud速率 如果使用100/125/156.25MHz时钟速率的时候,PCIe的SerDes支持2.5/5Gbaud速率 这个信号与GPIO[12:11]复用,是一个静态信号。 |
I2C_DISABLE | IO | 禁止I2C寄存器复位后加载,当断言的时候,Tsi721并不企图通过I2C总线把EEPROM的内容加载到寄存器。 0=使能从EEPROM中加载 1=禁止从EEPROM中加载 这个信号与GPIO[4]复用,是一个静态信号。 |
I2C_MA | IO | I2C多字节地址模式,如果I2C_DISABLE=0(也就是说,从EEPROM中下载),那么: 0=Tsi721使用1个字节EEPROM地址 1=Tsi721使用2个字节EEPROM地址 否则,I2C_DISABLE=1(不从EEPROM中加载) 0=Tsi721复位后由PCIe RC加载 1=Tsi721复位后由外部I2C master加载 这个信号与GPIO[6]复用,是一个静态信号。 |
I2C_SA[3:0] | IO | I2C从地址,当Tsi721作为I2C slave的时候,这些脚的值代表I2C的7bit地址 这些地址,与I2C_SEL信号一起,确定引导EEPROM的地址。 这些脚的值复位后可以通过I2C Slave configuration Register来重新编程。 这个信号与GPIO[3:0]复用,是一个静态信号。 |
I2C_SEL | IO | I2C脚选择,与I2C_SA[1,0]脚一起确定Tsi721引导EEPROM的7位地址中的低2位。 当断言的时候,I2C_SA[1:0]代表EEPROM从地址的低2位,Tsi721作为I2C master从EEPROM中下载,EEPROM从地址如下: A[6..2]=10100,A1=I2C_SA[1],A0=I2C_SA[0] 当解除断言的时候,I2C_SA[1:0]被忽略,EEPROM的低两位为缺省的00,EEPROM地址可以由软件来重载初始化 这个信号与GPIO[5]复用,是一个静态信号。 |
SP_DEVID | IO | S-RIO base deviceID控制 当SP_HOST脚为高的时候,它配置RapidIO Base deviceID CSR的复位值:CSR的BASE_ID的最低位LSB和LAR_BASE_ID域被设置为SP_DEVID,而这些域的其它位设置为0。 当SP_HOST脚为低,SP_DEVID为高的时候,它配置RapidIO Base deviceID CSR的复位值:CSR的BASE_ID和LAR_BASE_ID域被设置为1。 当SP_HOST脚为低,SP_DEVID为低的时候,它配置RapidIO Base deviceID CSR的复位值:CSR的BASE_ID域设置为0xFE,LAR_BASE_ID域被设置为0x00FE。 这个信号与GPIO[10]复用,是一个静态信号。 |
SP_HOST | IO | S-RIO host/slave控制,这个信号决定RapidIO端口通用控制CSR的HOST位: 0=Tsi721是S-RIO slave 1=Tsi721是S-RIO host 这个信号与GPIO[9]复用,是一个静态信号。 |
SP_SWAP_RX | IO | S-RIO接收Lane交换,这个信号确定RapidIO PLM端口实现规定控制寄存器的SWAP_RX位的复位值: 0=禁止S-RIO端口接收Lane交换,也就是说设置SWAP_RX[1:0]寄存器位为0b00。 1=使能S-RIO端口接收4x Lane交换,也就是说设置SWAP_RX[1:0]寄存器位为0b10。 这个信号与GPIO[7]复用。 |
SP_SWAP_TX | IO | S-RIO发送Lane交换,这个信号确定RapidIO PLM端口实现规定控制寄存器的SWAP_TX位的复位值: 0=禁止S-RIO端口发送Lane交换 1=使能S-RIO端口发送Lane交换 这个信号与GPIO[8]复用,是一个静态信号。 |
SR_BOOT | I-PD | 从S-RIO中Boot,当I2C_DISABLE也为高的时候,这个信号断言为高。 1=Tsi721 S-RIO链路在基础复位之后能立即启动训练,Tsi721自动设置器件控制寄存器的SRBOOT_CMPL位。 0=Tsi721 S-RIO链路在软件设置SRBOOT_CMPL位之后能立刻启动训练。 它是一个静态信号。 |
STRAP_RATE[2:0] | I-PU | S-RIO链路速率,这些信号控制RapidIO端口控制2 CSR的BAUD_SEL域的复位值。注意,BAUD_SEL编码不同于STRAP_RATE: l 0b111=5Gbaud l 0b110=2.5Gbaud l 0b101=1.25Gbaud l 0b010=3.125Gbaud l 其它:保留 这是静态信号。 |
7.电源
名称 | 类型 | 描述 |
VDD | 电源 | 1.0V核电源 |
VDDIO | 电源 | 3.3V/2.5V电源,用于LVTTL IO |
AVDD10 | 电源 | 1.0V PCIe和S-RIO SerDes模拟电源 |
AVDD25 | 电源 | 2.5V PCIe和S-RIO SerDes模拟电源 |
AVTT | 电源 | 1.5V PCIe和S-RIO SerDes发射器模拟电源 |
VSS | 地 | 数字和模拟共同的地 |
PCBIAS | IO | 对应的PCIe SerDes偏置电流参考。PLL矫正电路,需要通过200欧姆1% 100ppm/C精密电阻将这个脚连接到地,并要远离任何噪声源 |
SRBIAS | IO | 对应的S-RIO SerDes偏置电流参考。PLL矫正电路,需要通过200欧姆1% 100ppm/C精密电阻将这个脚连接到地,并要远离任何噪声源 |
VDD和AVDD10必须是两个电源平面,通过磁珠隔开: