第1章 数据传输技术综述与发展趋势 1
1.1 数据传输技术简介 1
1.1.1 并行传输技术简介 1
1.1.2 串行传输技术简介 6
1.2 高速串行传输技术的应用需求 10
1.2.1 高速并行传输的技术瓶颈 10
1.2.2 高速串行传输的技术优势 12
1.3 高速串行传输技术的推动力 13
1.3.1 I/O技术的不断改进 13
1.3.2 多重相位技术 15
1.3.3 线路编码技术 16
1.3.4 扰码传输技术 18
1.3.5 发送预加重技术 19
1.3.6 接收均衡技术 22
1.4 高速数据串行传输的解决方案 24
1.5 本章小结 24
第2章 常用高速串行传输接口协议简介 26
2.1 XAUI协议简介和应用 26
2.1.1 以太网技术的发展历程 26
2.1.2 XGMII接口简介与分析 27
2.1.3 XAUI协议的技术优势 28
2.1.4 XAUI协议详解 29
2.2 Interlaken协议应用简介 31
2.2.1 Interlaken协议简介 31
2.2.2 Interlaken协议数据格式 33
2.2.3 Interlaken接口信号简介 36
2.3 SATA协议简介和应用 36
2.3.1 SATA协议简介 36
2.3.2 SATA协议分层模型 38
2.3.3 SATA接口信号说明 40
2.4 PCI-Express协议简介和应用 41
2.4.1 PCI-Express协议简介 41
2.4.2 PCI-Express协议分层模型 42
2.4.3 PCI-Express Slot物理接口简介 44
2.5 RapidIO协议简介和应用 45
2.5.1 RapidIO协议简介 45
2.5.2 RapidIO分层模式说明 47
2.5.3 RapidIO接口信号描述 51
2.6 Aurora协议简介和应用 52
2.7 ATCA机箱的背板串行技术 53
2.7.1 PICMG3.0规范简介 53
2.7.2 ATCA机箱的背板接口标准 54
2.8 本章小结 55
第3章 Virtex-6 GTX收发器的功能结构和应用概述 56
3.1 Virtex-6 GTX收发器的功能和结构 56
3.1.1 Virtex-6 GTX收发器的功能简介 56
3.1.2 Virtex-6 FPGA中的GTX架构 57
3.1.3 Virtex-6 GTX收发器的内部电路结构 57
3.2 TX发送端的功能和结构说明 59
3.2.1 TX Interface接口说明 60
3.2.2 TX发送端的时钟结构 62
3.2.3 TXOUTCLK时钟应用说明 64
3.2.4 TX发送端的复位过程描述 66
3.2.5 TX发送端的8b/10b编码器 68
3.2.6 TX发送端的缓冲区介绍 70
3.2.7 TX发送端的PRBS模式产生器 71
3.2.8 TX发送端的极性控制功能 73
3.3 RX接收端的功能和结构简介 73
3.3.1 RX接收端的功能说明 73
3.3.2 RX接收端的时钟电路结构 74
3.3.3 RX极性控制 76
3.3.4 RX接收端的PRBS模式检测器 76
3.3.5 RX接收端的字节和字对齐功能 77
3.3.6 RX接收端的LOS状态机 80
3.3.7 RX接收端的8b/10b解码器 81
3.3.8 RX接收端的弹性缓冲区 82
3.3.9 RX接收端的时钟纠正功能 86
3.3.10 RX接收端的通道绑定功能介绍 88
3.3.11 RX接收端的复位初始化 93
3.3.12 RX Interface接口说明 94
3.4 本章小结 96
第4章 XAUI核的功能简介和应用说明 98
4.1 XAUI协议应用简介 98
4.2 Xilinx XAUI核功能简介 99
4.2.1 Xilinx XAUI核应用概述 99
4.2.2 Xilinx XAUI核功能描述 100
4.3 XAUI核的接口信号描述 101
4.3.1 XAUI接口信号概述 101
4.3.2 用户端接口简介 102
4.3.3 GTX收发器接口简介 105
4.3.4 MDIO管理接口简介 105
4.3.5 配置和状态接口信号 106
4.3.6 时钟和复位接口简介 108
4.4 XAUI核内部时钟结构 108
4.5 XAUI核的定制和创建 109
4.5.1 XAUI核的生成 109
4.5.2 建立XAUI核仿真工程 112
4.5.3 自生成数据的XAUI核仿真说明 113
4.6 本章小结 117
第5章 Xilinx PCI-Express核简介 118
5.1 Xilinx PCI-Express核学习导读 118
5.2 Xilinx PCI-Express核概述 119
5.2.1 Xilinx PCI-Express核的技术优势 119
5.2.2 Xilinx PCI-Express核总览 120
5.3 Xilinx PCI-Express核的协议层次简介 121
5.3.1 Xilinx PCI-Express核的协议层次 121
5.3.2 Xilinx PCI-Express核的配置空间简介 122
5.4 Xilinx PCI-Express 核的顶层接口信号 125
5.4.1 Xilinx PCI-Express核的系统接口信号 125
5.4.2 Xilinx PCI-Express接口信号 125
5.5 Xilinx PCI-Express核的AXI4接口信号 129
5.5.1 Xilinx PCI-Express核的公共接口信号 129
5.5.2 Xilinx PCI-Express核的事务发送接口信号 130
5.5.3 Xilinx PCI-Express核的事务接收接口信号 132
5.6 Xilinx PCI-Express核的其他接口信号 133
5.6.1 Xilinx PCI-Express核的物理层接口信号 133
5.6.2 Xilinx PCI-Express核的配置接口信号 136
5.6.3 Xilinx PCI-Express核的中断接口信号 139
5.6.4 Xilinx PCI-Express核的差错报告信号 140
5.6.5 Xilinx PCI-Express核的动态配置接口信号 141
5.7 Xilinx PCI-Express协议的TLP格式 142
5.7.1 TLP概况 142
5.7.2 TLP格式介绍 142
5.7.3 TLP类型和格式字段编码字段介绍 143
5.7.4 Length字段与字节使能字段介绍 144
5.7.5 其他协议字段简介 146
5.7.6 TLP包格式查询表 146
5.8 本章小结 149
第6章 Xilinx PCI-Express核的生成与定制 150
6.1 Xilinx PCI-Express核的例化 150
6.1.1 集成核Endpoint结构概述 150
6.1.2 集成核Rootport结构概述 152
6.1.3 Xilinx PCI-Express核的生成 154
6.1.4 Xilinx PCI-Express核的仿真 156
6.1.5 Xilinx PCI-Express核的实现 157
6.1.6 Xilinx PCI-Express核的字典结构和内容 158
6.2 Xilinx PCI-Express核的自定义生成 163
6.2.1 Xilinx PCI-Express核的基本参数设置 164
6.2.2 Xilinx PCI-Express核的基地址寄存器 165
6.2.3 Xilinx PCI-Express核的配置寄存器设置 171
6.2.4 Xilinx PCI-Express核的高级设置 179
6.3 程控输入/输出示例设计 181
6.3.1 Xilinx PCI-Express核的PIO系统概述 181
6.3.2 Xilinx PCI-Express核的PIO 硬件 182
6.3.3 Xilinx PCI-Express核的PIO 应用 186
6.4 本章小结 191
第7章 Xilinx PCI-Express核事务层接口设计 193
7.1 事务层TLP格式简介 193
7.1.1 TLP的字节序 193
7.1.2 TLP的相关说明 194
7.2 事务层TLP的传送 195
7.2.1 TLP 传送的基本操作流程 195
7.2.2 连续事务的发送 197
7.2.3 发射通路的源节制 198
7.2.4 发射通路的目标节制 198
7.2.5 发射通路的源中止 199
7.2.6 目的端事务忽略 200
7.2.7 发射通路上的错误标记 200
7.2.8 发射通路的流传输 201
7.2.9 附加 ECRC的事务 201
7.3 事务层TLP包的接收 201
7.3.1 TLP 接收的基本操作流程 201
7.3.2 接收通路的数据节制 203
7.3.3 连续事务的接收 204
7.3.4 接收通路的重排序 205
7.3.5 接收通路的EP和 TLP Digest字段使用 206
7.3.6 接收通路的基地址寄存器匹配 206
7.3.7 接收通路的Link-Down事件 207
7.4 本章小结 208
第8章 基于Xilinx PCI-Express核的应用设计 209
8.1 物理层控制和状态接口设计 209
8.1.1 链路改变设计考虑 209
8.1.2 链路改变方式 210
8.2 配置空间信号设计 214
8.2.1 直接映射到配置接口的寄存器 214
8.2.2 设备控制和状态寄存器定义 214
8.2.3 配置端口对其他寄存器的访问 217
8.3 额外数据包处理的要求 218
8.4 用户错误报告设计 219
8.4.1 错误类型介绍 219
8.4.2 错误类型分类 222
8.5 电源管理设计 223
8.5.1 电源管理模式分类 223
8.5.2 程控电源管理 223
8.6 中断请求设计 225
8.6.1 传统中断模式 226
8.6.2 MSI中断模式 227
8.6.3 MSI-X中断模式 228
8.7 链接训练及链路翻转设计 228
8.7.1 链接训练支持 228
8.7.2 链路翻转支持 229
8.8 时钟复位设计 229
8.8.1 复位分类 229
8.8.2 时钟控制 230
8.9 动态配置设计 232
8.9.1 DRP接口的读/写 232
8.9.2 DRP接口的其他考量 233
8.9.3 DRP地址映射 233
8.10 核的约束设计 239
8.10.1 用户约束文件的内容 239
8.10.2 移植需要的修改 240
8.11 本章小结 242
第9章 Virtex-6 GTX收发器的时钟和电源设计 243
9.1 Virtex-6 GTX输入时钟结构和应用设计 243
9.1.1 输入参考时钟的内部结构 243
9.1.2 输入参考时钟的应用说明 244
9.1.3 GTX收发器的输入时钟接口信号和属性 247
9.1.4 单个外部输入参考时钟的GTX使用模型 249
9.1.5 多个外部输入参考时钟的GTX使用模型 250
9.1.6 多个Quad交叉使用输入参考时钟模型 251
9.2 GTX的PLL锁相环结构和功能描述 252
9.3 Virtex-6 GTX的回环测试模式 254
9.4 Viretex-6 GTX的单板设计指导 255
9.4.1 引脚描述和设计准则 255
9.4.2 终端电阻校准电路 256
9.4.3 未使用的GTX收发器管理 257
9.4.4 模拟电源的引脚连接 257
9.4.5 未使用的Quad引脚连接处理 259
9.4.6 Quad应用的优先级 260
9.5 参考时钟设计概述 261
9.5.1 时钟源选择概述 261
9.5.2 参考时钟接口连接方式 262
9.6 模拟电源电路设计 263
9.6.1 模拟电源设计概述 263
9.6.2 电源稳压器选择 263
9.7 本章小结 264
第10章 Xilinx IBERT调试工具应用详解 266
10.1 Xilinx IBERT调试工具的功能简介 266
10.2 Xilinx IBERT核的基本结构 267
10.3 Xilinx IBERT核的生成说明 268
10.4 Xilinx IBERT核生成实例 268
10.4.1 IBERT核的生成 268
10.4.2 基于IBERT的GTX扫描测试 274
10.5 本章小结 277
附录A 278
参考文献 283