书籍 基于FPGA与RISC-V的嵌入式系统设计的封面

基于FPGA与RISC-V的嵌入式系统设计PDF电子书下载

顾长怡编著

购买点数

20

出版社

出版时间

2020

ISBN

标注页数

0 页

PDF页数

330 页

图书目录

第1章 概述 1

1.1背景阐述 2

1.2 FPGA 6

1.3 RISC-V 7

1.4小脚丫FPGA开发平台 7

1.5 C/C++, Make与工具链 7

1.6嵌入式操作系统 8

1.7 Arduino集成开发环境 8

1.8模块授权方式 8

1.9 PulseRain RTL库 9

1.10资料来源 9

1.11 代码资源 10

第2章 FPGA 11

2.1 FPGA背景概述 12

2.2 FPGA与数字芯片的异同 15

2.2.1 FPGA与数字芯片在设计流程上的异同 15

2.2.2 FPGA与数字芯片在功耗上的区别 17

2.2.3 FPGA与数字芯片在性能上的区别 18

2.2.4逻辑设计规模的衡量单位 19

2.2.5避免使用锁存器 19

2.3 FPGA与CPLD的区别 20

2.4 FPGA开发中硬件设计语言的选择 20

2.4.1 VHDL与System Verilog/Verilog 21

2.4.2 H LS 22

2.4.3 System C 23

2.4.4 Chisel/SpinalHDL 23

2.5 FPGA的片上内存 24

2.6用FPGA实现双向同步SRAM接口 27

2.7 FPGA的DSP Block 29

2.8时钟与复位 30

2.9时钟域跨越 34

2.9.1单个电平信号的时钟域跨越 36

2.9.2单个脉冲信号的时钟域跨越 37

2.9.3多比特总线的时钟域跨越 39

2.10有限状态机的System Verilog模板 42

2.11高速IO与源同步总线(Source Synchronous Bus) 48

2.12 FPGA在数字信号处理中的应用 51

2.12.1数字滤波器 51

2.12.2 4倍频采样 55

2.12.3复数乘法 56

2.12.4补码,值饱和,负值,绝对值,四舍五入 56

2.12.5除法 56

2.12.6正弦函数与余弦函数 57

2.12.7 CORDIC算法 57

2.13其他技巧 59

2.13.1寄存器重定时 59

2.13.2异或树与多路复用器 60

2.13.3虚拟输入输出 61

2.13.4迁移路径 61

2.14面积与性能的平衡 62

2.14.1流水线与并行 62

2.14.2小面积设计 64

2.14.3 AT2定律 65

2.15数字逻辑与处理器各自适用的领域 65

第3章 RISC-V指令集 69

3.1 RISC-V的历史 70

3.2 8051的CISC指令集与RISC-V的比较 71

3.2.1 8051指令集简介 71

3.2.2 8051指令集对处理器设计的负面影响 73

3.2.3 RISC-V指令集对处理器设计的正面影响 76

3.3 RISC-V与其他RISC指令集的比较 78

3.4 RISC-V基础指令集(RV321与RV32E) 80

3.4.1 RV321与RV32E基础指令集简介 81

3.4.2 RISC-V地址空间 81

3.4.3 RV321通用寄存器与函数调用约定 82

3.4.4 RV321指令格式 84

3.4.5 RV321算术与逻辑指令 84

3.4.6控制转移指令 90

3.4.7内存载入与存储指令 99

3.4.8 RV321内存同步指令 101

3.4.9控制与状态寄存器指令 102

3.4.10环境调用与软件断点 104

3.4.11基础指令集的面积优化方案 104

3.5 RISC-V扩展指令集 105

3.5.1乘除法扩展(M Extension) 106

3.5.2压缩指令集扩展 107

3.6 RISC-V特权架构 116

3.6.1特权层级 117

3.6.2控制状态寄存器 118

3.6.3定时器 123

3.6.4中断与异常 125

3.6.5程序的调试 136

第4章 设计基于RISC-V指令集的Soft CPU 141

4.1 2018 RISC-V Soft CPU Contest获奖作品:PulseRain Reindeer 142

4.2适合于FPGA的设计目标 143

4.3 PulseRain Reindeer的设计策略 146

4.4 PulseRain Reindeer的RTL设计 151

4.4.1与FPGA平台相关部分 151

4.4.2独立于FPGA平台部分 152

4.4.3通用寄存器的设计 153

4.4.4 CSR寄存器的实现 155

4.4.5时钟定时器的实现 155

4.4.6流水线的设计 156

4.5处理器验证的方式 159

4.5.1黑盒(Black Box)测试与白盒(White Box)测试 159

4.5.2用Verilator做处理器内核的黑盒验证 160

4.5.3用Modelsim做处理器的白盒验证 161

第5章 外围设备接口 165

5.1 UART 166

5.2 I2C和SMBus 167

5.3 SPI 170

5.4 PWM 171

5.5 microSD存储卡 172

5.6 PS/2接口 173

5.7旋转编码器 175

5.8 7段数码管显示器 176

5.9 USB 177

5.10以太网 179

第6章 嵌入式软件开发基础 185

6.1目标文件格式 186

6.2 Link Script(编译用链接脚本) 188

6.3工具链 190

6.3.1 readelf 190

6.3.2 objdump 190

6.3.3 objcopy 191

6.4嵌入式系统中高级编程语言的选择 192

6.5 C语言在嵌入式系统中的应用 192

6.5.1 C语言的模块封装 192

6.5.2 C语言的内存对齐访问 195

6.5.3 C语言的静态编译检查 197

6.5.4 volatile与const 198

6.6 C++语言在嵌入式系统中的应用 199

6.6.1 C++语言的口水仗 199

6.6.2 C++语言对C的改进 200

6.6.3 C++语言引入的新概念和新方法 206

6.7 MAKE 212

6.7.1支持增量编译的Makefile (Makefile for Incremental Build) 212

6.7.2支持内核配置语言的Makefile 217

第7章 嵌入式操作系统的移植 231

7.1嵌入式操作系统的分类 232

7.1.1裸金属系统 232

7.1.2实时操作系统 233

7.1.3通用操作系统 234

7.2 Zephyr操作系统的RISC-V移植 234

7.2.1 Zephyr操作系统简介 234

7.2.2串行口的支持 235

7.2.3定时器的支持 238

7.2.4中断的设置 239

7.2.5修改编译链接选项 240

7.2.6样本应用程序 240

第8章 Arduino开发系统 243

8.1 Arduino的历史 244

8.2 Arduino的技术贡献 244

8.3 Arduino开发板 245

8.4 Arduino IDE集成开发环境和Arduino Language 247

8.4.1 Arduino IDE集成开发环境的工作原理 247

8.4.2 Arduino Language 250

8.5 Arduino IDE集成开发环境下第三方开发包的使用和制作 251

8.5.1 Arduino IDE第三方开发包的使用 251

8.5.2 Arduino IDE第三方开发包的制作 256

8.6 Arduino IDE集成开发环境下第三方支持库的使用和制作 263

8.6.1 Arduino IDE第三方支持库的使用 263

8.6.2 Arduino IDE第三方支持库的制作 266

第9章 综合实验平台:小脚丫STEP FPGA开发板 271

9.1 STEP CYC10开发板简介 272

9.2 RISC-V for Step FPGA 274

9.3动态内存的访问与时序约束 275

9.3.1动态内存的仿真 275

9.3.2动态内存的时钟设置 277

9.3.3动态内存的时序约束 279

9.3.4动态内存的读写测试 284

9.4处理器仿真 284

9.4.1用Verilator做仿真 284

9.4.2用Modelsim做仿真 286

9.5外围设备与中断 290

9.5.1外围设备(RTL模块)与物理设备 290

9.5.2中断映射 291

9.5.3中断处理程序 292

9.6外围设备寄存器地址列表 298

9.7串行口 299

9.8 GPIO 300

9.9 5向按键 302

9.10 7段管显示器 303

9.11三轴加速度传感器(ADXL345) 304

9.12开发板示范Sketch 305

第10章 知识产权保护 307

10.1知识产权保护的方式 308

10.2计算机指令集的知识产权保护 308

10.3逆向工程 309

10.4协议授权 310

10.4.1 GPL 310

10.4.2 LGPL 311

10.4.3 Apache 311

10.4.4知识共享 312

10.4.5双授权协议 312

查看更多关于的内容

出版社其它书籍
本类热门
在线购买PDF电子书
下载此书RAR压缩包