新書推薦:
《
推拿纲目
》
售價:NT$
1836.0
《
精致考古--山东大学实验室考古项目论文集(一)
》
售價:NT$
1112.0
《
从天下到世界——国际法与晚清中国的主权意识
》
售價:NT$
347.0
《
血色帝国:近代英国社会与美洲移民
》
售價:NT$
265.0
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:NT$
811.0
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
“御容”与真相:近代中国视觉文化转型(1840-1920)
》
售價:NT$
505.0
《
鸣沙丛书·大风起兮:地方视野和政治变迁中的“五四”(1911~1927)
》
售價:NT$
454.0
內容簡介:
本书针对人工智能硬件电路设计基础、着重介绍硬件电路相关的设计知识及SoC设计开发过程中数字前端知识,包括VHDL技术、Verilog技术及HLS技术。同时将开发SoC中常用的模块作为应用实例进行详细讲解。VHDL技术部分详细介绍了VHDL语言的背景知识、基本语法结构和VHDL代码的编写方法。另外,该部分还加入了基础电路和简单系统的设计实例,以及设计共享的内容,以便进行代码的分割、共享和重用。Verilog技术部分详细介绍了与VHDL技术部分相对应的内容,以便读者对照学习。在此基础上,本书还给出了一些应用实例,为读者深入研究SoC设计开发提供了具体的系统电路设计和验证结果。本书还在附录详细介绍了Xilinx和Altera FPGA软件环境下的操作步骤,以及在远程服务器环境中使用以上环境的操作步骤。同时附上书中涉及的所有代码,方便读者进行复现和二次开发。
關於作者:
廖永波,电子科技大学副教授。电子科技大学博士、本科,兰州大学硕士。赴澳大利亚悉尼科技大学和昆士兰科技大学、比利时IMEC、美国University of Kansas作访问学者。担任四川省电子学会副秘书长、四川省电子学会EDA专委会秘书长;担任四川省科技厅评审专家、重庆市科技厅评审专家;担任IEEE审稿人和多个国际会议分会主席。曾获评2019年度中国电子学会先进工作者、第七届大学生集成电路设计?应用创新大赛优秀指导老师奖、电子科技大学示范性微电子学院\集成电路工程项目实习实训优秀校内指导老师”。长期从事SOC芯片、微处理器芯片、FPGA芯片、读出电路芯片、温度传感器芯片、电源管理芯片等芯片的研究;对芯片设计、生产、封装和测试有丰富经验;对片上系统、微处理器设计、软硬件协同设计等有较深的理解。
目錄 :
第1部分 VHDL技术
第1章 VHDL程序的结构002
1.1 库和包集002
1.1.1 库002
1.1.2 包集004
1.1.3 库和包集的声明008
1.2 实体、构造体和配置09
1.2.1 实体010
1.2.2 构造体011
1.2.3 配置013
1.3 课后习题013
第2章 VHDL语言规则014
2.1 常量、信号和变量015
2.1.1 常量015
2.1.2 信号015
2.1.3 信号赋值语句016
2.1.4 变量018
2.1.5 变量赋值语句018
2.1.6 比较信号和变量020
2.2 数据类型020
2.2.1 标量类型020
2.2.2 复合类型025
2.2.3 存取类型029
2.2.4 文件类型032
2.2.5 保护类型033
2.3 运算操作符和属性035
2.3.1 运算操作符035
2.3.2 属性042
2.3.3 通用属性052
2.4 课后习题053
第3章 VHDL主要描述语句054
3.1 顺序语句054
3.1.1 if语句054
3.1.2 case语句056
3.1.3 比较if语句和case语句057
3.1.4 wait语句060
3.1.5 loop语句061
3.1.6 null语句064
3.2 并行语句064
3.2.1 process语句065
3.2.2 block语句067
3.2.3 generate语句069
3.2.4 component实例化语句072
3.3 子程序076
3.3.1 函数077
3.3.2 过程080
3.4 课后习题084
第4章 VHDL组合逻辑电路设计085
4.1 4-16译码器085
4.2 具有三态输出的8位4输入复用器089
4.3 16位桶形移位器091
4.4 课后习题096
第5章 VHDL时序逻辑电路设计097
5.1 带异步清零端的模10计数器097
5.2 带同步清零端的4位移位寄存器099
5.3 多路输出的时钟分频器101
5.4 课后习题104
第6章 VHDL状态机设计105
6.1 状态机基本组成部分106
6.2 状态机设计实例107
6.2.1 带同步清零端和装载端的模10计数器107
6.2.2 带异步复位端的序列检测器110
6.3 课后习题112
第7章 VHDL设计实例113
第2部分 Verilog技术
第8章 Verilog程序结构129
8.1 模块的端口定义和I/O说明131
8.1.1 模块端口的定义131
8.1.2 输入/输出(I/O)说明132
8.2 数据类型定义133
8.3 功能描述133
8.3.1 连续赋值语句(assign)133
8.3.2 过程(always)133
8.3.3 元件例化134
8.4 课后习题134
第9章 Verilog语言规则135
9.1 数字和字符串135
9.1.1 数字135
9.1.2 字符串136
9.2 数据类型137
9.2.1 取值集合138
9.2.2 网络138
9.2.3 变量141
9.2.4 向量143
9.2.5 强度144
9.2.6 数组144
9.2.7 常量145
9.2.8 命名空间146
9.3 运算符147
9.3.1 算术运算符149
9.3.2 逻辑运算符150
9.3.3 关系运算符150
9.3.4 相等运算符150
9.3.5 位运算符150
9.3.6 归约运算符152
9.3.7 移位运算符152
9.3.8 条件运算符153
9.3.9 连接与复制运算符153
9.4 属性153
9.5 课后习题155
第10章 Verilog主要描述语句156
10.1 赋值语句156
10.1.1 连续赋值156
10.1.2 过程赋值157
10.1.3 过程性连续赋值158
10.1.4 赋值对象160
10.1.5 阻塞与非阻塞161
10.2 if语句162
10.3 case语句163
10.4 循环语句165
10.5 时间控制166
10.5.1 延迟控制167
10.5.2 事件控制167
10.5.3 内部赋值定时控制169
10.6 块170
10.6.1 顺序块170
10.6.2 并行块171
10.7 结构化过程172
10.7.1 initial结构172
10.7.2 always结构173
10.7.3 task结构173
10.7.4 Function结构176
10.7.5 任务和函数的区别179
10.8 课后习题179
第11章 Verilog组合逻辑电路设计180
11.1 4-16译码器180
11.2 具有三态输出的8位4输入复用器183
11.3 16位桶形移位器184
11.4 课后习题189
第12章 Verilog时序逻辑电路设计190
12.1 带异步清零端的模10计数器190
12.2 带同步清零端的4位移位寄存器192
12.3 多路输出的时钟分频器194
12.4 课后习题196
第13章 Verilog状态机设计197
13.1 状态机基本组成部分198
13.2 状态机设计实例199
13.2.1 带同步清零端和装载端的模10计数器199
13.2.2 带异步复位端的序列检测器202
13.3 课后习题204
第14章 Verilog设计实例205
14.1 实例一(半加器)205
14.2 实例二(4-2编码器)206
14.3 实例三(优先编码器)207
14.4 实例四(乘法器)208
14.5 实例五(16位并入串出寄存器)209
14.6 实例六(行波计数器构成的13倍分频器)211
14.7 实例七(LFSR构成的13倍分频器)213
14.8 实例八(交通信号灯)214
14.9 实例九(字符序列检测状态机)219
14.10 实例十(IIC协议-主机写数据)222
14.11 实例十一(IIC协议-主机读数据)226
14.12 实例十二(可综合IIC协议读写功能实现)230
14.13 实例十三(SPI协议)239
第3部分 系统设计
第15章 HLS高层次综合246
15.1 实验一创建HLS工程250
15.1.1 步骤一:建立一个新的工程250
15.1.2 步骤二:验证C源代码256
15.1.3 步骤三:高层次综合258
15.1.4 步骤四:RTL验证260
15.1.5 步骤五:IP创建260
15.2 实验二使用TCL命令接口261
15.2.1 步骤一创建TCL文件261
15.2.2 步骤二 执行TCL文件263
15.3 实验三 使用Solution进行设计优化264
15.3.1 步骤一 创建新的工程264
15.3.2 步骤二优化I/O接口265
15.3.3 步骤三 分析结果269
15.3.4 步骤四 优化吞吐量(间隔)270
第16章 MIPS架构处理器设计273
16.1 总体结构设计275
16.1.1 MIPS架构单周期处理器数据通路设计276
16.1.2 接口定义和接口时序等280
16.2 MIPS架构单周期设计总体连接及仿真验证282
16.2.1 验证方案282
16.2.2 仿真结果及分析284
16.3 课后习题295
第17章 RISC-V架构处理器设计296
17.1 RISC-V处理器设计297
17.1.1 整体处理器设计297
17.1.2 取指阶段电路设计298
17.1.3 指令译码阶段电路设计300
17.1.4 指令执行阶段电路设计301
17.1.5 存储器访问阶段电路设计302
17.1.6 写回阶段电路设计303
17.1.7 异常和中断处理机制303
17.1.8 邻接互连机制305
17.1.9 邻接互连指令简介306
17.1.10 乘法过程简介306
17.2 基于RISC-V的邻接互连处理器仿真验证308
17.2.1 仿真平台搭建308
17.2.2 仿真方案309
17.2.3 仿真结果及分析313
17.3 课后习题316
第4部分 基于人工智能的目标检测
第18章 基于FPGA C5Soc的MobileNetV1 SSD目标检测方案设计318
18.1 背景介绍318
18.1.1 SSD模型介绍318
18.1.2 Paddle Lite简介319
18.2 方案介绍320
18.2.1 功能介绍320
18.2.2 系统设计320
18.2.3 数据量化321
18.2.4 Soc_system连接图322
18.2.5 方案创新点及关键技术分析322
18.3 硬件加速器介绍及仿真323
18.3.1 硬件加速器整体架构323
18.3.2 卷积电路324
18.3.3 硬件加速器波形抓取328
18.4 整体加速结果分析329
18.4.1 硬件加速器时序及资源报告329
18.4.2 加速结果对比与总结330
18.5 课后习题332
第5部分 附录
附录A 在ISE设计组件下编写VHDL项目的方法334
附录B 在Quartus设计组件下编写VHDL项目的方法379
附录C 人工智能边缘实验室-FPGA开发板调试403
附录D 正文中的程序代码417