本书从全可编程片上系统(APSoC)器件的概念和结构特点入手,介绍典型APSoC器件——Zynq-7000系列高性能嵌入式芯片的体系结构和片上资源,包括对其两个主要组成部分[可编程逻辑(PL)部分和处理系统(PS)部分]的结构,以及PL、PS两部分协同设计为嵌入式系统设计带来优势的详细介绍。此外,本书分别详细介绍PL、PS两部分各自单独开发和协同开发的方法以及软、硬件工具,并通过大量的开发实例,向读者展示了基于APSoC的高性能嵌入式系统的详细设计思路、方法和步骤。
更多科学出版社服务,请扫码获取。
2006年于东南大学仪器工程学院,获博士学位
目录
第1章 全可编程片上系统 1
1.1 全可编程片上系统的概念和特点 1
1.1.1 全可编程片上系统的概念 1
1.1.2 全可编程片上系统的技术特点 1
1.1.3 用全可编程片上系统器件构建嵌入式系统的优势和缺点 3
1.2 Zynq-7000系列APSoC的体系结构 6
1.2.1 Zynq-7000系列中的PS部分 8
1.2.2 Zynq-7000系列中的PL部分 10
1.2.3 Zynq-7000系列中PL和PS部分的连接 13
1.3 Zynq-7000系列APSoC的片上公共资源 16
1.3.1 时钟系统 16
1.3.2 复位信号 19
1.3.3 电源 21
1.4 Zynq-7000系列的启动方式和流程 21
1.4.1 Zynq-7000系列的启动方式选项 22
1.4.2 Zynq-7000系列的启动流程 22
1.5 本章小结 24
第2章 FPGA与硬件描述语言Verilog HDL 25
2.1 FPGA原理和基本结构 25
2.1.1 FPGA的发展历史和现状 25
2.1.2 FPGA的工作原理 26
2.1.3 FPGA芯片结构 27
2.1.4 FPGA的开发方法和流程 28
2.2 Verilog HDL简介 30
2.2.1 Verilog HDL概述 30
2.2.2 Verilog HDL程序基本结构 31
2.3 Verilog HDL基本语法规则 35
2.3.1 标识符、关键词和注释 35
2.3.2 数字与逻辑数值 36
2.3.3 数据类型 40
2.3.4 表达式 47
2.3.5 表达式中运算符的优先级别 54
2.4 Verilog HDL建模方式 55
2.4.1 结构描述 56
2.4.2 行为描述 62
2.4.3 数据流描述 71
2.5 常见数字电路模块的Verilog HDL实现 71
2.5.1 运算电路的设计 71
2.5.2 编码器的设计 72
2.5.3 二进制译码器的设计 75
2.5.4 计数器的设计 77
2.5.5 有限状态机 78
2.6 逻辑功能的仿真验证 85
2.7 本章小结 88
第3章 集成开发环境Vivado的基本使用方法 89
3.1 Vivado概述 89
3.1.1 Vivado的两种工作模式 89
3.1.2 Vivado的主要特征 92
3.2 Vivado的基本设计流程 93
3.2.1 利用Vivado开发FPGA的设计流程 93
3.2.2 Vivado的主界面及功能 94
3.3 基于Verilog HDL的电路设计与实现 96
3.3.1 半加器的设计与Verilog HDL建模举例 96
3.3.2 创建项目并输入设计 98
3.3.3 仿真验证设计项目 100
3.3.4 综合、实现设计项目 103
3.4 IP核的管理 107
3.4.1 IP核分类 107
3.4.2 定制IP 108
3.5 本章小结 110
第4章 全可编程片上系统的开发方法与流程 111
4.1 基于APSoC的嵌入式系统开发方法概述 111
4.1.1 需求分析到详细说明 112
4.1.2 体系结构设计 112
4.1.3 软、硬件子系统设计和实现 113
4.1.4 软、硬件系统集成与测试 115
4.2 PL部分纯逻辑的开发方法 115
4.2.1 PYNQ-Z2硬件开发板 115
4.2.2 纯逻辑开发流程 116
4.3 PS部分应用程序的开发方法 133
4.3.1 PS部分外设应用开发 133
4.3.2 PS部分UART的应用程序的开发流程 134
4.4 本章小结 143
第5章 全可编程片上系统的软硬件协同设计 144
5.1 EMIO的使用和BOOT文件的制作 144
5.1.1 EMIO原理 144
5.1.2 功能要求和电路原理 145
5.1.3 EMIO开发流程 145
5.1.4 用SDK生成启动镜像文件BOOT.bin 150
5.2 AXI设备设计 153
5.2.1 AXI基本知识 153
5.2.2 功能要求和电路原理 155
5.2.3 AXI设备(PWM控制器)的开发流程 156
5.3 PL到PS部分的中断设计 167
5.3.1 APSoC器件中断基础知识 167
5.3.2 功能要求和电路原理 169
5.3.3 PL到PS部分中断的开发流程 170
5.4 本章小结 176
第6章 高层次综合器 177
6.1 高层次综合器的概念与特点 177
6.1.1 为什么需要高层次综合器 177
6.1.2 高层次综合器产生的电路模块 178
6.1.3 使用高层次综合器的开发流程 179
6.1.4 高层次综合器的核心工作 180
6.2 高层次综合器的设计流程 184
6.3 基于高层次综合器的硬件优化 192
6.4 本章小结 202
第7章 全可编程片上系统嵌入式开发实例 203
7.1 频率连续可变的任意信号发生器 203
7.1.1 设计要求 203
7.1.2 DDS基本原理及其实现方法分析 203
7.1.3 模拟输出(DAC)硬件电路及其在PL部分的控制电路设计 206
7.1.4 用BRAM配置成双口RAM 211
7.1.5 PS部分的设计 213
7.1.6 运行结果 216
7.2 基于APSoC和射频捷变收发器的射电望远镜接收机 217
7.2.1 项目背景 217
7.2.2 射电望远镜接收机算法设计 218
7.2.3 接收机系统设计 220
7.2.4 实测结果 225
主要参考文献 226