新書推薦:
《
牛津立法研究手册
》
售價:NT$
1630.0
《
制度为什么重要:政治科学中的新制度主义(人文社科悦读坊)
》
售價:NT$
290.0
《
梦醒子:一位华北乡居者的人生(1857—1942))(第2版)
》
售價:NT$
340.0
《
啊哈!原来如此(中译本修订版)
》
售價:NT$
290.0
《
部分识别入门——计量经济学的创新性方法
》
售價:NT$
345.0
《
东野圭吾:变身(来一场真正的烧脑 如果移植了别人的脑子,那是否还是我自己)
》
售價:NT$
295.0
《
推荐连接万物
》
售價:NT$
290.0
《
严复与福泽谕吉启蒙思想比较(王中江著作系列)
》
售價:NT$
750.0
|
編輯推薦: |
本书由PerceptIn公司的技术专家与清华大学等高校的学者联袂撰写,提出FPGA是机器人应用的最佳计算基板。本书全面概述基于FPGA的机器人计算加速器设计,证明了FPGA是加速神经网络的理想选择,也是加速运动规划内核的理想选择。此外,本书还介绍了PerceptIn为自动驾驶汽车开发车载计算系统所做的努力。
|
內容簡介: |
本书全面概述基于FPGA的机器人计算加速器设计。本书首先对FPGA技术的背景进行介绍,然后深入介绍基于FPGA的机器人感知神经网络加速器设计,并对机器人感知中的各种立体视觉算法及其FPGA加速器设计进行讨论,验证了FPGA是加速神经网络的理想选择。接着,介绍在FPGA中实现并集成现有算法的关键原语的通用定位框架,并讨论运动规划模块,证明了FPGA是加速运动规划内核的理想选择。之后,探讨如何在多机器人探索任务中使用FPGA,以及PerceptIn为自动驾驶汽车开发车载计算系统所做的努力。最后,介绍过去20年中FPGA在太空机器人中的应用。本书适合机器人领域的研究者、工程师以及高校相关专业的学生阅读及参考。
|
關於作者: |
刘少山 PerceptIn公司创始人兼首席执行官。他在自动驾驶技术和机器人学方面发表了70多篇研究论文,拥有40多项美国专利和150多项国际专利。他是IEEE计算机协会杰出演讲人、ACM杰出演讲人,还是IEEE自动驾驶技术特别技术社区的创始人。他拥有加利福尼亚大学尔湾分校博士学位。
万梓燊 佐治亚理工学院电气与计算机工程博士在读。他对超大规模集成电路设计、计算机体系结构、机器学习和边缘智能有着广泛的研究兴趣,重点关注自主机器的能效、鲁棒性硬件和系统设计。他曾获得DAC 2020和CAL 2020最佳论文奖。他拥有哈佛大学硕士学位。
俞波 PerceptIn公司首席技术官。他目前的研究兴趣包括机器人和自动驾驶汽车的算法及系统。他是IEEE自动驾驶特别技术社区的创始成员。他拥有清华大学博士学位。
汪玉 清华大学电子工程系长聘教授、系主任。他的研究兴趣包括特定应用硬件计算、并行电路分析和功率/可靠性感知系统设计方法。他曾获得ASPDAC 2019、FPGA 2017、NVMSA17、ISVLSI 2012最佳论文奖,并且是2018年DAC 40岁以下创新者奖的获得者。他是Deephi Tech(2018年被Xilinx收购)的联合创始人。他拥有清华大学博士学位。
|
目錄:
|
目 录
Robotic Computing on FPGAs
译者序
前言
作者简介
第1章 概览 1
1.1 传感 3
1.2 感知 4
1.3 定位 5
1.4 规划和控制 5
1.5 机器人应用中的FPGA 6
1.6 深度处理流水线 7
1.7 小结 8
第2章 FPGA技术 10
2.1 FPGA技术简介 10
2.1.1 FPGA的类型 11
2.1.2 FPGA的架构 11
2.1.3 FPGA的商业应用 13
2.2 部分重配置 14
2.2.1 什么是部分重配置 14
2.2.2 如何使用部分重配置 15
2.2.3 实现高性能 17
2.2.4 实际案例研究 21
2.3 在FPGA上运行ROS 21
2.3.1 ROS 21
2.3.2 ROS兼容的FPGA 23
2.3.3 优化ROS兼容的FPGA的
通信延迟 25
2.4 小结 26
第3章 感知—深度学习 27
3.1 为什么选择FPGA用于深度
学习 28
3.2 基础:深度神经网络 29
3.3 设计方法和标准 30
3.4 面向硬件的模型压缩 32
3.4.1 数据量化 32
3.4.2 权重缩减 34
3.5 硬件设计:高效架构 35
3.5.1 计算单元设计 35
3.5.2 循环展开策略 38
3.5.3 系统设计 40
3.6 评估 43
3.7 小结 46
第4章 感知—立体视觉 47
4.1 机器人的感知 47
4.2 机器人的立体视觉 49
4.3 FPGA上的局部立体匹配 50
4.3.1 算法框架 50
4.3.2 FPGA设计 52
4.4 FPGA上的全局立体匹配 52
4.4.1 算法框架 52
4.4.2 FPGA设计 53
4.5 FPGA上的半全局匹配 53
4.5.1 算法框架 53
4.5.2 FPGA设计 53
4.6 FPGA上的高效大规模立体
匹配 56
4.6.1 ELAS算法框架 56
4.6.2 FPGA设计 57
4.7 评估和讨论 58
4.7.1 数据集和准确性 58
4.7.2 功率和性能 61
4.8 小结 62
第5章 定位 63
5.1 预备知识 63
5.1.1 背景 63
5.1.2 算法概述 65
5.2 算法框架 67
5.3 前端FPGA设计 71
5.3.1 概述 71
5.3.2 利用任务级并行性 72
5.4 后端FPGA设计 73
5.5 评估 74
5.5.1 实验设置 74
5.5.2 资源消耗 75
5.5.3 性能 76
5.6 小结 77
第6章 规划 78
6.1 运动规划背景概述 78
6.1.1 概率路线图 79
6.1.2 快速探索随机树 80
6.2 利用FPGA实现碰撞检测 81
6.2.1 运动规划计算时间剖析 81
6.2.2 基于通用处理器的解决
方案 82
6.2.3 基于专用硬件加速器的
解决方案 83
6.2.4 评估和讨论 89
6.3 利用FPGA实现图搜索 91
6.4 小结 93
第7章 多机器人协作 95
7.1 多机器人探索 95
7.2 基于FPGA多任务的INCAME
框架 98
7.2.1 ROS中的硬件资源冲突 99
7.2.2 带ROS的可中断加速器(INCAME) 100
7.3 基于虚拟指令的加速器中断 102
7.3.1 指令驱动加速器 103
7.3.2 如何中断:虚拟指令 105
7.3.3 何处中断:在SAVE/
CALC_F后 105
7.3.4 延迟分析 106
7.3.5 虚拟指令ISA 108
7.3.6 指令编排单元 109
7.3.7 虚拟指令示例 110
7.4 评估和结果 110
7.4.1 实验设置 110
7.4.2 基于虚拟指令的中断 113
7.4.3 基于ROS的多机器人
探索 115
7.5 小结 115
第8章 自动驾驶汽车 116
8.1 PerceptIn案例研究 116
8.2 设计约束 117
8.2.1 车辆概览 117
8.2.2 性能要求 118
8.2.3 能耗和成本因素 119
8.3 软件流水线 121
8.4 车载处理系统 122
8.4.1 硬件设计空间探索 122
8.4.2 硬件架构 124
8.4.3 传感器同步 126
8.4.4 性能特征 128
8.5 小结 129
第9章 太空机器人 130
9.1 太空计算的辐射容错 130
9.2 基于FPGA的太空机器人算法
加速 132
9.2.1 特征检测和匹配 133
9.2.2 立体视觉 133
9.2.3 深度学习 134
9.3 FPGA在太空机器人任务中的
应用 135
9.3.1 火星探测车的任务 135
9.3.2 火星科学实验室的任务 136
9.3.3 火星2020的任务 137
9.4 小结 138
第10章 总结 139
10.1 本书主要内容回顾 139
10.2 展望未来 140
参考文献 142
|
內容試閱:
|
前 言
Robotic Computing on FPGAs
在本书中,我们全面介绍了先进的基于FPGA的机器人计算加速器设计,并总结了其采用的优化技术。对于将FPGA用于机器人应用,我们拥有丰富的研究经验,包括学术研究和商业部署。例如,我们已经证明,通过软硬件协同设计,与CPU和GPU实现相比,FPGA的性能和能效提高了10倍以上。我们还率先在FPGA实现中使用了部分重配置(PR)方法,以进一步提高设计灵活性并降低开销。此外,我们已经成功开发并交付了由FPGA驱动的商业机器人产品,证明了FPGA具备高可靠性、高适应性和高能效,这也证明FPGA拥有可胜任机器人计算加速任务的巨大潜力。
我们认为FPGA是机器人应用的最佳计算基板,有以下几点原因。第一,机器人算法仍在快速发展,因此任何基于ASIC的加速器都会比先进的算法落后数月甚至数年,而FPGA可以根据需要进行动态更新。第二,机器人的工作负载是高度多样化的,因此任何基于ASIC的机器人计算加速器都很难在短期内实现规模经济;而在某种加速器能够达到规模经济之前,FPGA是一种具有成本效益和能耗效益的替代方案。第三,与已实现规模经济的片上系统(SoC)(例如移动SoC)相比,FPGA具有显著的性能优势。第四,PR允许多个机器人工作负载分时共享FPGA,从而允许一个芯片服务于多个应用,进而降低整体成本和能耗。
FPGA的功率很小,通常内置在内存较小的小型系统中。它们具有大规模并行计算的能力,并能利用感知(如立体匹配)、定位(如SLAM)和规划(如图搜索)内核的特性,可以去除额外的逻辑,从而简化端到端的系统实现。针对硬件特性,研究者提出了多种算法,它们能以硬件友好的方式运行,并实现类似的软件性能。因此,与CPU和GPU相比,FPGA既能满足实时性要求,又能实现高能效。此外,与ASIC不同,FPGA技术具有现场编程和重新编程的灵活性,不需要对修改后的设计进行重新制造。PR进一步提高了这种灵活性,允许通过加载部分配置文件来修改运行中的FPGA设计。通过使用PR,可以在运行时对FPGA的一部分进行重新配置,而不会影响在未重新配置的设备上运行的应用程序的完整性。因此,PR支持不同的机器人应用分时共享FPGA的一部分,从而提高能效和性能,使FPGA成为适合动态和复杂机器人工作负载的计算平台。由于FPGA相对于其他计算基板的优势,它已被成功应用于商业自动驾驶汽车和太空机器人应用。FPGA提供了前所未有的灵活性,大大缩短了设计周期,降低了开发成本。
本书共10章,全面概述了FPGA在机器人感知、定位、规划和多机器人协作任务中的应用。除了独立的机器人任务外,本书还详细介绍了如何将FPGA应用于机器人产品中,包括商用自动驾驶汽车和太空探索机器人。
刘少山
2021年6月
|
|