《Xilinx FPGA设计权威指南》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:何宾编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302366881
  • 页数:357 页
图书介绍:本书首次系统全面的介绍了Xilinx最新一代的集成开发环境Vivado。该平台将作为未来FPGA设计平台。本书内容包括:Vivado设计方法概述、从传统设计过渡到Vivado设计、基于IP为中心的设计流程、基于Vivado的逻辑设计流程、基于Vivado的软核嵌入式系统设计流程、基于Vivado的硬核设计流程、Vivado数字信号处理设计流程、Vivado部分可重配置设计流程、基于Vivado HLS的设计流程等。

第1章 Vivado设计导论 1

1.1 Vivado系统级设计流程 1

1.2 Vivado功能和特性 3

1.3 Vivado使用模式 4

1.3.1 Vivado工程模式和非工程模式不同点比较 5

1.3.2 工程模式和非工程模式命令的不同 5

1.4 最新的UItraScale结构 7

1.4.1 可配置逻辑块 7

1.4.2 时钟资源和时钟管理单元 9

1.4.3 块存储器资源 13

1.4.4 专用的DSP模块 15

1.4.5 输入/输出块 16

1.4.6 高速串行收发器 17

1.4.7 PCI-E模块 18

1.4.8 Interlaken集成块 18

1.4.9 Ethernet模块 19

1.4.10 系统监控器模块 19

1.4.11 配置模块 19

1.4.12 互连资源 20

第2章 V ivado工程模式和非工程模式设计流程 21

2.1 工程模式设计流程 21

2.1.1 启动Vivado集成开发环境 21

2.1.2 建立新的设计工程 22

2.1.3 Vivado设计主界面及功能 26

2.1.4 创建并添加一个新的设计文件 30

2.1.5 RTL描述和分析 34

2.1.6 设计综合和分析 36

2.1.7 设计行为级仿真 41

2.1.8 添加约束条件 45

2.1.9 XDC约束语法规则 49

2.1.10 设计实现和分析 50

2.1.11 设计时序仿真 55

2.1.12 生成编程文件 56

2.1.13 下载比特流文件到FPGA 57

2.2 非工程模式设计流程 61

2.2.1 修改路径 61

2.2.2 设置输出路径 62

2.2.3 设置设计源文件和约束 62

2.2.4 运行综合 63

2.2.5 运行布局 63

2.2.6 运行布线 64

2.2.7 生成比特流文件 64

第3章 Vivado调试流程 65

3.1 设计调试原理和方法 65

3.2 创建新的FIFO调试工程 66

3.3 添加FIFO IP到设计中 67

3.4 添加顶层设计文件 70

3.5 例化FIFO 71

3.6 添加约束文件 75

3.7 网表插入调试探测流程方法及实现 77

3.7.1 网表插入调试探测流程的方法 77

3.7.2 网表插入调试探测流程的实现 79

3.8 使用添加HDL属性调试探测流程 83

3.9 使用HDL例化调试核调试探测流程 84

第4章 基于IP的嵌入式系统设计流程 89

4.1 简单硬件系统设计 89

4.1.1 创建新的工程 90

4.1.2 使用IP集成器创建处理器系统 91

4.1.3 生成顶层HDL和导出设计到SDK 96

4.1.4 创建存储器测试程序 98

4.1.5 验证设计 100

4.2 在PL内添加外设 102

4.2.1 打开工程 102

4.2.2 添加两个GPIO实例 102

4.2.3 连接外部GPIO外设 108

4.2.4 生成比特流和导出到SDK 112

4.2.5 生成测试程序 112

4.2.6 验证设计 116

4.3 创建和添加定制IP 116

4.3.1 使用外设模板创建定制IP 116

4.3.2 使用IP封装器封装外设 122

4.3.3 修改工程设置 124

4.3.4 添加定制IP到设计 125

4.3.5 添加约束XDC 128

4.3.6 添加BRAM 129

4.4 编写软件程序 130

4.4.1 打开工程 130

4.4.2 创建应用工程 132

4.4.3 为LED_ IP分配驱动 136

4.4.4 分析汇编目标文件 138

4.4.5 验证设计 138

4.5 软件控制定时器和调试 140

4.5.1 打开工程 140

4.5.2 创建SDK软件工程 140

4.5.3 在硬件上验证操作 143

4.5.4 启动调试器 144

4.6 使用硬件分析仪调试 146

4.6.1 ILA核原理 147

4.6.2 VIO核原理 150

4.6.3 打开工程 151

4.6.4 添加定制IP 152

4.6.5 添加I LA和VIO核 152

4.6.6 标记和分配调试网络 154

4.6.7 生成比特流文件 156

4.6.8 生成测试程序 156

4.6.9 测试和调试 157

第5章 Vivado HLS设计流程 163

5.1 高级综合工具概述 163

5.1.1 高级综合工具的功能和特点 163

5.1.2 不同的命令对HLS综合结果的影响 164

5.1.3 从C模型中提取硬件结构 166

5.2 高级综合工具调度和绑定 168

5.2.1 高级综合工具调度 168

5.2.2 高级综合工具绑定 168

5.3 Vivado HLS工具的优势 169

5.4 C代码的关键属性 170

5.4.1 函数 171

5.4.2 类型 171

5.4.3 循环 178

5.4.4 数组 179

5.4.5 端口 180

5.4.6 操作符 181

5.5 时钟测量术语说明 182

5.6 HLS关键优化策略 183

5.6.1 延迟和吞吐量 183

5.6.2 循环的处理 190

5.6.3 数组的处理 193

5.6.4 函数内联 198

5.6.5 命令和编译指示 200

5.7 基于HLS的数字系统实现 202

5.7.1 基于HLS实现组合逻辑 202

5.7.2 基于HLS实现时序逻辑 217

5.7.3 基于HLS实现矩阵相乘 223

第6章 System Generator设计流程 242

6.1 FPGA信号处理方法 242

6.2 FPGA模型设计模块 244

6.2.1 Xilinx Blockset 244

6.2.2 Xilinx Reference Blockset 244

6.3 System Generator运行环境的配置 245

6.4 信号模型的构建和实现 245

6.4.1 信号模型的构建 245

6.4.2 模型参数的设置 249

6.4.3 信号处理模型的仿真 252

6.4.4 生成模型子系统 253

6.4.5 模型HDL代码的生成 254

6.4.6 打开生成设计文件并仿真 255

6.4.7 协同仿真的配置及实现 256

6.4.8 生成IP核 259

6.5 编译MATLAB到FPGA 260

6.5.1 模型的设计原理 260

6.5.2 系统模型的建立 262

6.5.3 系统模型的仿真 264

6.6 FIR滤波器的设计与实现 265

6.6.1 FIR滤波器设计原理 265

6.6.2 生成FIR滤波器系数 266

6.6.3 建模FIR滤波器模型 267

6.6.4 仿真FIR滤波器模型 270

6.6.5 修改 FIR滤波器模型 272

6.6.6 仿真修改后FIR滤波器模型 273

第7章 Vivado部分可重配置设计流程 274

7.1 可重配置导论 274

7.1.1 可重配置的概念 274

7.1.2 可重配置的应用 275

7.1.3 可重配置的特点 278

7.1.4 可重配置术语解释 280

7.1.5 可重配置的要求 281

7.1.6 可重配置的标准 281

7.1.7 可重配置的流程 283

7.2 可重配置的实现 283

7.2.1 查看脚本 283

7.2.2 综合设计 284

7.2.3 实现第一个配置 285

7.2.4 实现第二个配置 290

7.2.5 验证配置 291

7.2.6 生成比特流 292

7.2.7 部分重配置FPGA 293

第8章 Vivado高级设计技术 295

8.1 Vivado支持的属性 295

8.1.1 ASYNC REG 295

8.1.2 BLACK BOX 295

8.1.3 BUFFERTYPE 296

8.1.4 DONTTOUCH 296

8.1.5 FSM ENCODING 297

8.1.6 FSM SAFE STATE 298

8.1.7 FULL_CASE(Verilog Only) 298

8.1.8 GATED CLOCK 298

8.1.9 IOB 299

8.1.10 KEEP 299

8.1.11 KEEPHI ERARCHY 300

8.1.12 MAX FANOUT 300

8.1.13 PARALLEL- CASE(Verilog Only) 301

8.1.14 RAMSTYLE 301

8.1.15 ROM STYLE 301

8.1.16 SHREG EXTRACT 301

8.1.17 SRL STYLE 302

8.1.18 TRANSLATE_OFF/TRANSLATE_ON 302

8.1.19 USE DSP48 302

8.1.20 在XDC文件中使用属性 303

8.2 增量编译 303

8.2.1 增量编译流程 303

8.2.2 运行增量布局和布线 304

8.2.3 使用增量编译 305

8.2.4 增量编译高级分析 307

8.3 修改布线和逻辑 308

8.3.1 修改布线 308

8.3.2 修改逻辑 314

8.4 布局约束 316

8.5 查看和分析时序报告 317

8.5.1 时序检查基础 317

8.5.2 生成时序报告 323

8.5.3 分析时序报告 327

8.6 时序约束 331

8.6.1 时钟定义 331

8.6.2 时钟组 336

8.6.3 I/O延迟约束 339

8.6.4 时序例外 341

8.6.5 时序约束实现 353

附录XDC中有效的命令 355