当前位置:首页 > 工业技术
Xilinx FPGA 权威书籍指南  基于Vivado 2018 集成开发环境
Xilinx FPGA 权威书籍指南  基于Vivado 2018 集成开发环境

Xilinx FPGA 权威书籍指南 基于Vivado 2018 集成开发环境PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:何宾编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:7121349379
  • 页数:531 页
图书介绍:
《Xilinx FPGA 权威书籍指南 基于Vivado 2018 集成开发环境》目录

第1章 Xilinx新一代UltraScale结构 1

1.1 UltraScale结构特点 1

1.2 可配置逻辑块 2

1.2.1 可配置逻辑块的特点 2

1.2.2 多路复用器 6

1.2.3 进位逻辑 9

1.2.4 存储元素 13

1.2.5 分布式RAM 16

1.2.6 只读存储器(ROM) 18

1.2.7 移位寄存器 21

1.3 时钟资源和时钟管理模块 23

1.3.1 时钟资源 26

1.3.2 时钟管理模块 28

1.4 块存储器资源 29

1.5 专用的DSP模块 33

1.6 SelectIO资源 36

1.7 高速串行收发器 41

1.8 PCI-E模块 43

1.9 Interlaken集成块 43

1.10 Ethernet模块 43

1.11 系统监控器模块 44

1.12 配置模块 44

1.13 互联资源 45

第2章 Vivado集成设计环境导论 46

2.1 Vivado系统级设计流程 46

2.2 Vivado功能和特性 48

2.3 Vivado中电路结构的网表描述 49

2.4 Vivado中工程数据的目录结构 50

2.5 Vivado中Joumal文件和Log文件功能 50

2.5.1 Joumal文件(Vivado.jou) 50

2.5.2 Log文件(Vivado.log) 51

2.6 Vivado两种设计流程模式 52

2.6.1 工程模式和非工程模式不同点比较 53

2.6.2 工程模式和非工程模式命令的不同 53

2.7 Vivado中的XDC文件 55

2.7.1 XDC的特性 55

2.7.2 XDC与UCF比较 55

2.7.3 约束文件的使用方法 56

2.7.4 约束顺序 56

2.7.5 XDC约束命令 58

2.8 Vivado集成设计环境的启动方法 59

2.9 Vi vado集成设计环境主界面 60

2.10 Vivado设计主界面及功能 63

2.10.1 流程处理主界面及功能 63

2.10.2 工程管理器主界面及功能 64

2.10.3 工作区窗口 66

2.10.4 设计运行窗口 67

2.11 Vivado支持的属性 68

第3章 Vivado工程模式基本设计实现 76

3.1 创建新的设计工程 76

3.2 创建并添加一个新的设计文件 80

3.3 RTL详细描述和分析 85

3.3.1 详细描述的实现 85

3.3.2 生成HDL例化模板 87

3.4 设计综合和分析 89

3.4.1 综合过程的关键问题 89

3.4.2 设计综合选项 89

3.4.3 执行设计综合 92

3.4.4 综合报告的查看 96

3.5 设计行为级仿真 97

3.6 创建实现约束 102

3.6.1 实现约束的原理 102

3.6.2 I/O规划器功能 103

3.6.3 添加引脚约束 104

3.6.4 添加简单的时钟约束 109

3.7 设计实现和分析 111

3.7.1 设计实现原理 112

3.7.2 设计实现选项 112

3.7.3 设计实现及分析 117

3.7.4 静态时序分析 123

3.8 设计时序仿真 126

3.9 生成编程文件 127

39.1 配置器件属性 127

3.9.2 生成可编程文件 128

3.9.3 生成可编程文件选项 128

3.10 下载比特流文件到FPGA 130

3.11 生成并烧写PROM文件 132

第4章 Vivado非工程模式基本设计实现 136

4.1 非工程模式基本命令和功能 136

4.1.1 非工程模式基本命令列表 136

4.1.2 典型Tcl脚本的使用 137

4.2 Vi vado集成开发环境分析设计 138

4.2.1 启动Vivado集成开发环境 138

4.2.2 打开设计检查点的方法 139

4.3 修改设计路径 139

4.4 设置设计输出路径 140

4.5 读取设计文件 140

4.6 运行设计综合 141

4.7 运行设计布局 142

4.8 运行设计布线 144

4.9 生成比特流文件 145

4.10 下载比特流文件 145

第5章 创建和封装用户IP核流程 148

5.1 Vivado定制IP流程 148

5.2 创建并封装包含源文件的IP 149

5.2.1 创建新的用于创建IP的工程 149

5.2.2 设置定制IP的库名和目录 150

5.2.3 封装定制IP的实现 151

5.3 调用并验证包含源文件的IP设计 155

5.3.1 创建新的用于调用IP的工程 156

5.3.2 设置包含调用IP的路径 156

5.3.3 创建基于IP的系统 158

5.3.4 系统行为级仿真 162

5.3.5 系统设计综合 165

5.3.6 系统实现和验证 166

5.4 创建并封装不包含源文件的IP 166

5.4.1 创建网表文件 166

5.4.2 创建新的设计工程 167

5.4.3 设置定制IP的库名和目录 168

5.4.4 封装定制IP的实现 168

5.5 调用并验证不包含源文件的IP设计 169

5.5.1 创建新的用于调用IP的工程 169

5.5.2 设置包含调用IP的路径 170

5.5.3 创建基于IP的系统 170

5.5.4 系统设计综合 171

第6章 Vivado高级约束原理及实现 173

6.1 时序检查概念 173

6.1.1 基本术语 173

6.1.2 时序路径 173

6.1.3 建立和保持松弛 175

6.1.4 建立和保持检查 176

6.1.5 恢复和去除检查 179

6.2 时序约束概念 180

6.2.1 时钟定义 180

6.2.2 时钟组 186

6.2.3 I/O延迟约束 189

6.2.4 时序例外 192

6.3 生成时序报告 205

6.4 添加时序约束 212

6.4.1 时序约束策略1 212

6.4.2 时序约束策略2 214

6.5 物理约束原理 219

6.5.1 网表约束 219

6.5.2 布局约束 220

6.5.3 布线约束 221

6.6 布局约束实现 223

6.6.1 修改综合属性 224

6.6.2 布局约束方法 224

6.7 布线约束实现 227

6.7.1 手工布线 227

6.7.2 进入分配布线模式 228

6.7.3 分配布线节点 230

6.7.4 取消分配布线节点 230

6.7.5 完成并退出分配布线模式 230

6.7.6 锁定LUT负载上的单元输入 231

6.7.7 分支布线 231

6.7.8 直接约束布线 233

6.8 修改逻辑实现 233

6.9 配置约束原理 235

6.10 增量编译 235

6.10.1 增量编译流程 235

6.10.2 运行增量布局和布线 236

6.10.3 使用增量编译 238

6.10.4 增量编译高级分析 240

第7章 Vivado调试工具原理及实现 241

7.1 设计调试原理和方法 241

7.2 创建新的设计 242

7.2.1 创建新的FIFO调试工程 242

7.2.2 添加FIFO IP到设计中 243

7.2.3 添加顶层设计文件 246

7.2.4 使用HDL例化添加FIFO到设计中 247

7.2.5 添加约束文件 251

7.3 网表插入调试探测流程方法及实现 253

7.3.1 网表插入调试探测流程的方法 253

7.3.2 网表插入调试探测流程的实现 255

7.4 使用添加HDL属性调试探测流程 261

7.5 使用HDL例化调试核调试探测流程 262

7.6 VIO原理及应用 267

7.6.1 设计原理 267

7.6.2 添加VIO核 268

7.6.3 生成比特流文件 271

7.6.4 下载并调试设计 272

第8章 Vivado部分可重配置原理及实现 274

8.1 可重配置导论 274

8.1.1 可重配置的概念 274

8.1.2 可重配置的应用 275

8.1.3 可重配置的特点 278

8.1.4 可重配置术语解释 280

8.1.5 可重配置的要求 282

8.1.6 可重配置的标准 283

8.1.7 可重配置的流程 285

8.2 基于工程的部分可重配置实现 285

8.2.1 设计原理 285

8.2.2 建立可重配置工程 289

8.2.3 创建新的分区定义 291

8.2.4 添加新的可重配置模块 292

8.2.5 设置不同的配置选项 294

8.2.6 定义分区的布局 298

8.2.7 执行DRC 301

8.2.8 实现第一个运行配置并生成比特流文件 302

8.2.9 实现第二个运行配置并生成比特流文件 304

8.2.10 实现第三个运行配置并生成比特流文件 304

8.2.11 实现第四个运行配置并生成比特流文件 305

8.2.12 下载不同运行配置的部分比特流 305

8.3 基于非工程的部分可重配置实现 307

8.3.1 查看脚本 307

8.3.2 综合设计 309

8.3.3 实现第一个配置 310

8.3.4 实现第二个配置 315

8.3.5 验证配置 317

8.3.6 生成比特流 317

8.3.7 部分重配置FPGA 318

8.4 部分重配置控制器PRC的原理及应用 320

8.4.1 部分重配置控制器原理 320

8.4.2 实现原理 324

8.4.3 创建和配置新的设计 325

8.4.4 添加ILA核 327

8.4.5 添加和设置PRC核 328

8.4.6 设置不同的配置选项 331

8.4.7 定义分区的布局 334

8.4.8 实现第一个运行配置并生成比特流文件 335

8.4.9 实现第二个运行配置并生成比特流文件 337

8.4.10 实现第三个运行配置并生成比特流文件 337

8.4.11 创建板支持包工程 338

8.4.12 创建应用程序工程 339

8.4.13 创建zynq_fsbl应用 343

8.4.14 创建启动镜像 343

8.4.15 从SD卡启动引导系统 345

第9章 Vivado HLS原理详解 347

9.1 高级综合工具概述 347

9.1.1 高级综合工具的功能和特点 347

9.1.2 Vivado HLS工具的优势 348

9.1.3 HLS中使用术语说明 349

9.1.4 从C中提取硬件结构 350

9.1.5 不同的命令对HLS综合结果的影响 352

9.2 高级综合工具调度和绑定 354

9.2.1 高级综合工具调度 355

9.2.2 高级综合工具绑定 355

9.3 C代码的关键属性 356

9.3.1 函数 357

9.3.2 类型 357

9.3.3 循环 364

9.3.4 数组 366

9.3.5 I/O端口 366

9.3.6 运算符 367

9.4 C代码级和RTL级算法验证 368

9.5 添加命令 370

9.6 延迟和吞吐量的概念 373

9.6.1 设计延迟 373

9.6.2 设计吞吐量 374

9.7 改善延迟 374

9.7.1 延迟最小化 374

9.7.2 用户延迟的定义 375

9.7.3 循环的处理 377

9.8 改善吞吐量 380

9.8.1 数据流优化 381

9.8.2 流水线优化 384

9.9 性能瓶颈——数组 390

9.9.1 数组分割 391

9.9.2 数组重组 394

9.9.3 数据打包 395

9.1 0改善面积和资源 396

9.10.1 绑定配置 396

9.10.2 分配命令 397

9.10.3 指定资源 397

9.10.4 函数内联 398

9.10.5 循环合并和平坦化 401

9.10.6 映射数组 401

9.10.7 任意精度整数 403

9.11 I/O类型 404

9.11.1 组合和时序逻辑设计 404

9.11.2 Vivado HLS I/O选项 405

9.11.3 模块级协议说明 408

9.11.4 端口级I/O协议 412

9.12 命令和编译指示 422

第10章 Vivado HLS实现过程详解 425

10.1 FIR滤波器不同语言的描述方式 425

10.1.1 C语言描述风格 425

10.1.2 C+++语言描述风格 427

10.1.3 SystemC语言描述风格 428

10.2 Vivado HLS不支持的操作 429

10.3 测试平台编码 431

10.4 指针的使用 432

10.5 流的使用 437

10.6 支持库 438

10.6.1 FFT 439

10.6.2 FIR 442

10.6.3 移位寄存器 446

10.6.4 线性算法库 447

10.6.5 OpenCV库 448

10.7 Vivado HLS数字系统实现 453

10.7.1 基于HLS实现组合逻辑 453

10.7.2 基于HLS实现时序逻辑 468

10.7.3 基于HLS实现矩阵相乘 476

第11章 HDMI显示屏驱动原理和实现 495

11.1 HDMI的发展历史 495

11.2 HDMI视频显示接口定义 496

11.3 HDMI链路结构 497

11.4 HDMI链路时序要求 499

11.5 HDMI编码算法 500

11.6 HDMI并行编码数据转换原理及实现 504

11.6.1 数据并行-串行转换 505

11.6.2 三态并行-串行转换器 505

11.6.3 OSERDESE2原语 505

11.6.4 TMDS信号转换模块 508

11.6.5 HDMI并行编码数据转换的实现 508

11.7 系统整体设计结构 510

附录a7-edp-1开发板原理图 512

返回顶部