fbpx

[email protected]

购物车

 查看订单

  • 我的帐户
东东购 | EasternEast
  • 中文书店
    • 畅销排行榜
      • 小说 畅销榜
      • 童书 畅销榜
      • 外语畅销榜
      • 管理畅销榜
      • 法律畅销榜
      • 青春文学畅销榜
    • 热门分类
      • 社会小说
      • 成功/励志 畅销榜
      • 人物传记
      • 大陆原创
      • 绘本童书
      • 影视小说
    • 文学推荐
      • 文集
      • 戏剧
      • 纪实文学
      • 名家作品
      • 民间文学
      • 中国现当代随笔
    • 新书热卖榜
      • 小说 新书热卖榜
      • 青春文学 新书热卖榜
      • 童书 新书热卖榜
      • 管理 新书热卖榜
      • 成功/励志 新书热卖榜
      • 艺术 新书热卖榜
  • 精选分类
    • 小说
    • 保健养生
    • 烹饪/美食
    • 风水/占卜
    • 青春文学
    • 童书
    • 管理
    • 成功/励志
    • 文学
    • 哲学/宗教
    • 传记
    • 投资理财
    • 亲子家教
    • 动漫/幽默
    • 法律 Legal
    • 经济 Economics
    • 所有分类
  • 关于东东
  • 帮我找书
搜索
首页计算机/网络硬件外部设备维修手把手教你RISC-V CPU(上) 处理器设计

手把手教你RISC-V CPU(上) 处理器设计

RISC-V处理器篇延续篇,CPU自主设计,胡振波新作,系统介绍CPU设计技巧和RISC-V架构,涵盖蜂鸟E203各模块的具体实现,倪光南院士、芯原科技董事长戴伟民作序推荐。

作者:胡振波 主编 芯来科技生态组 出版社:人民邮电出版社 出版时间:2021年10月 

ISBN: 9787115568007
年中特卖用“SALE15”折扣卷全场书籍85折!可与三本88折,六本78折的优惠叠加计算!全球包邮!
trust badge

EUR €60.99

类别: 计算机/网络 新书热卖榜, 硬件外部设备维修 SKU:617f2275f0f22475083ab345 库存: 有现货
  • 描述
  • 评论( 0 )

描述

开 本: 128开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787115568007

编辑推荐

1.《手把手教你设计CPU——RISC-V处理器篇》延续篇,配套新蜂鸟E203开源项目,加入更多新内容。 2.利用通俗易懂的语言剖析了RISC-V处理器的微架构以及代码实现,为读者揭开CPU设计的神秘面纱。 3.知识体系完整,分为上下两册,覆盖RISC-V处理器软硬件开发的全流程。 4.中国工程院院士倪光南、芯原股份董事长戴伟民为本书作序推荐。

 

内容简介

本书系统地介绍了 CPU 设计技巧和新兴开源RISC-V架构,内容翔实,涵盖开源蜂鸟E203处理器各模块的具体实现,以及可扩展协处理器的实现机制。为了让读者学以致用,本书还集成了大量的实例,用实例把各个模块的实现方式贯穿起来。

本书适合从事CPU设计的工程师和技术爱好者阅读。

作者简介

胡振波,芯来科技创办人兼执行官,中国RISC-V领域的先行者,拥有丰富的处理器内核开发经验,曾长期就职于外企,担任处理器内核研发核心岗位负责人。其打造的国内RISC-V开源项目——蜂鸟E203,对国内RISC-V的普及和推广起到了巨大的推动作用。以胡振波为核心创办的芯来科技目前已经成为中国先行的RISC-V处理器内核IP和解决方案公司,推出的嵌入式CPU核系列产品处于中国RISC-V处理器研发与产业化的前列。

目  录

第 一部分 CPU与RISC-V综述

第 1章 CPU之三生三世 2

1.1 眼看他起高楼,眼看他宴宾客,眼看他楼塌了—CPU众生相 3

1.1.1 ISA—CPU的灵魂 4

1.1.2 CISC架构与RISC架构 5

1.1.3 32位架构与64位架构 6

1.1.4 ISA众生相 6

1.1.5 CPU的领域之分 11

1.2 ISA请扛起这口锅—为什么国产CPU尚未足够成熟 12

1.2.1 MIPS系—龙芯和君正 12

1.2.2 x86系—北大众志、上海兆芯和天津海光 13

1.2.3 Power系—中晟宏芯 14

1.2.4 Alpha系—申威 14

1.2.5 ARM系—飞腾、海思、展讯 14

1.2.6 RISC-V系—平头哥、芯来科技 16

1.2.7 背锅侠ISA 16

1.3 人生已如此艰难,你又何必拆穿—CPU从业者的无奈 18

1.4 无敌者是多么寂寞—ARM统治着的世界 19

1.4.1 独乐乐与众乐乐—ARM公司的盈利模式 19

1.4.2 小个子有大力量—无处不在的Cortex-M系列 22

1.4.3 移动王者—Cortex-A系列在手持设备领域的巨大成功 23

1.4.4 进击的巨人—ARM进军PC与服务器领域的雄心 25

1.4.5 ARM当前发展 26

1.5 东边日出西边雨,道是无晴却有晴—RISC-V登场 26

1.5.1 缘起名校 26

1.5.2 兴于开源 27

1.5.3 本土发展 29

1.6 旧时王谢堂前燕,飞入寻常百姓家—你也可以设计自己的处理器 30

第 2章 大道至简—RISC-V架构之魂 31

2.1 简单就是美—RISC-V架构的设计理念 32

2.1.1 无病一身轻—架构的篇幅 32

2.1.2 能屈能伸—模块化的指令集 34

2.1.3 浓缩的都是精华—指令的数量 34

2.2 RISC-V架构简介 35

2.2.1 模块化的指令集 35

2.2.2 可配置的通用寄存器组 36

2.2.3 规整的指令编码 36

2.2.4 简洁的存储器访问指令 37

2.2.5 高效的分支跳转指令 38

2.2.6 简洁的子程序调用 38

2.2.7 无条件码执行 39

2.2.8 无分支延迟槽 40

2.2.9 零开销硬件循环指令 40

2.2.10 简洁的运算指令 40

2.2.11 优雅的压缩指令子集 41

2.2.12 特权模式 42

2.2.13 CSR 42

2.2.14 中断和异常 42

2.2.15 P扩展指令子集 43

2.2.16 矢量指令子集 43

2.2.17 自定义指令扩展 43

2.2.18 比较 43

2.3 RISC-V软件工具链 44

2.4 RISC-V和其他开放架构有何不同 47

2.4.1 平民英雄—OpenRISC 47

2.4.2 豪门显贵—SPARC 48

2.4.3 身出名门—MIPS 48

2.4.4 名校优生—RISC-V 49

第3章 乱花渐欲迷人眼—盘点RISC-V商业版本与开源版本 50

3.1 各商业版本与开源版本综述 51

3.1.1 Rocket Core 51

3.1.2 BOOM Core 53

3.1.3 Freedom E310 SoC 54

3.1.4 LowRISC SoC 54

3.1.5 PULPino Core与SoC 54

3.1.6 PicoRV32 Core 55

3.1.7 SCR1 Core 56

3.1.8 ORCA Core 56

3.1.9 Andes Core 56

3.1.10 Microsemi Core 56

3.1.11 Codasip Core 57

3.1.12 Nuclei Core 57

3.1.13 蜂鸟E203处理器核与SoC 58

3.2 小结 59

第4章 开源RISC-V—蜂鸟E203处理器核与SoC 60

4.1 与众不同的蜂鸟E203处理器 61

4.2 蜂鸟E203处理器简介—蜂鸟虽小,五脏俱全 62

4.3 蜂鸟E203处理器的性能指标 64

4.4 蜂鸟E203处理器的配套SoC 64

4.5 蜂鸟E203处理器的配置选项 66

第二部分 手把手教你使用Verilog设计CPU

第5章 先见森林,后观树木—蜂鸟E203处理器核设计总览和顶层 70

5.1 处理器硬件设计概述 71

5.1.1 架构和微架构 71

5.1.2 CPU、处理器、Core和处理器核 71

5.1.3 处理器设计和验证 71

5.2 蜂鸟E203处理器核的设计理念 72

5.3 蜂鸟E203处理器核的RTL代码风格 73

5.3.1 使用标准DFF模块例化生成寄存器 73

5.3.2 推荐使用assign语法替代if-else和case语法 75

5.3.3 其他若干注意事项 77

5.4 蜂鸟E203模块层次划分 77

5.5 蜂鸟E203处理器核的源代码 78

5.6 蜂鸟E203处理器核的配置选项 78

5.7 蜂鸟E203处理器核支持的RISC-V指令子集 79

5.8 蜂鸟E203处理器核的流水线结构 79

5.9 蜂鸟E203处理器核的顶层接口 79

5.10 小结 82

第6章 流水线不是流水账—蜂鸟E203处理器核流水线 83

6.1 处理器流水线概述 84

6.1.1 从经典的5级流水线说起 84

6.1.2 可否不要流水线—流水线和状态机的关系 86

6.1.3 深处种菱浅种稻,不深不浅种荷花—流水线的深度 86

6.1.4 向上生长—越来越深的流水线 87

6.1.5 向下生长—越来越浅的流水线 88

6.2 处理器流水线中的乱序 88

6.3 处理器流水线中的反压 88

6.4 处理器流水线中的冲突 89

6.4.1 流水线中的资源冲突 89

6.4.2 流水线中的数据冲突 90

6.5 蜂鸟E203处理器的流水线 91

6.5.1 流水线总体结构 91

6.5.2 流水线中的冲突 92

6.6 小结 92

第7章 万事开头难— 一切从取指令开始 93

7.1 取指概述 94

7.1.1 取指特点 94

7.1.2 如何快速取指 95

7.1.3 如何处理地址不对齐的指令 96

7.1.4 如何处理分支指令 97

7.2 RISC-V架构特点对于取指的简化 102

7.2.1 规整的指令编码格式 102

7.2.2 指令长度指示码放于低位 102

7.2.3 简单的分支跳转指令 103

7.2.4 没有分支延迟槽指令 104

7.2.5 提供明确的静态分支预测依据 105

7.2.6 提供明确的RAS依据 105

7.3 蜂鸟E203处理器的取指实现 106

7.3.1 IFU总体设计思路 106

7.3.2 简单译码 108

7.3.3 简单BPU 110

7.3.4 PC生成 114

7.3.5 访问ITCM和BIU 116

7.3.6 ITCM 120

7.3.7 BIU 120

7.4 小结 121

第8章 一鼓作气,执行力是关键—执行 122

8.1 执行概述 123

8.1.1 指令译码 123

8.1.2 指令执行 123

8.1.3 流水线的冲突 124

8.1.4 指令的交付 124

8.1.5 指令发射、派遣、执行、写回的顺序 124

8.1.6 分支解析 126

8.2 RISC-V架构的特点对于执行的简化 126

8.2.1 规整的指令编码格式 127

8.2.2 优雅的16位指令 127

8.2.3 精简的指令个数 127

8.2.4 整数指令的操作数个数是1或2 127

8.3 蜂鸟E203处理器的执行实现 127

8.3.1 执行指令列表 128

8.3.2 EXU总体设计思路 128

8.3.3 译码 129

8.3.4 整数通用寄存器组 135

8.3.5 CSR 138

8.3.6 指令发射、派遣 139

8.3.7 流水线冲突、长指令和OITF 143

8.3.8 ALU 149

8.3.9 交付 162

8.3.10 写回 162

8.3.11 协处理器扩展 162

8.4 小结 163

第9章 善始者实繁,克终者盖寡—交付 164

9.1 处理器中指令的交付、取消、冲刷 165

9.1.1 指令交付、取消、冲刷 165

9.1.2 指令交付的常见实现策略 166

9.2 RISC-V架构特点对于交付的简化 166

9.3 蜂鸟E203处理器中指令交付的硬件实现 167

9.3.1 分支预测指令的处理 168

9.3.2 中断和异常的处理 171

9.3.3 多周期执行的指令的交付 171

9.4 小结 172

第 10章 让子弹飞一会儿—写回 173

10.1 处理器的写回 174

10.1.1 处理器写回功能简介 174

10.1.2 处理器常见写回策略 174

10.2 蜂鸟E203处理器的写回硬件实现 174

10.2.1 终写回仲裁 175

10.2.2 OITF模块和长指令写回仲裁模块 176

10.3 小结 179

第 11章 哈弗还是比亚迪—存储器 181

11.1 存储器概述 182

11.1.1 谁说处理器一定要有缓存 182

11.1.2 处理器一定要有存储器 183

11.1.3 ITCM和DTCM 185

11.2 RISC-V架构特点对于存储器访问指令的简化 186

11.2.1 仅支持小端格式 186

11.2.2 无地址自增/自减模式 186

11.2.3 无一次读多个数据和一次写多个数据的指令 186

11.3 RISC-V架构的存储器访问指令 187

11.3.1 存储器读和写指令 187

11.3.2 fence指令和fence.i指令 187

11.3.3 A扩展指令集 187

11.4 蜂鸟E203处理器核的存储器子系统硬件实现 188

11.4.1 存储器子系统总体设计思路 188

11.4.2 AGU 188

11.4.3 LSU 193

11.4.4 ITCM和DTCM 195

11.4.5 A扩展指令集的硬件实现 198

11.4.6 fence与fence.i指令的硬件实现 202

11.4.7 BIU 204

11.4.8 ECC 204

11.5 小结 204

第 12章 黑盒子的窗口—总线接口单元 205

12.1 片上总线协议概述 206

12.1.1 AXI 206

12.1.2 AHB 206

12.1.3 APB 207

12.1.4 TileLink 207

12.1.5 总结比较 207

12.2 自定义总线协议ICB 208

12.2.1 ICB协议简介 208

12.2.2 ICB协议信号 209

12.2.3 ICB协议的时序 209

12.3 ICB的硬件实现 214

12.3.1 一主多从 214

12.3.2 多主一从 215

12.3.3 多主多从 216

12.4 蜂鸟E203处理器核BIU 217

12.4.1 BIU简介 217

12.4.2 BIU的微架构 218

12.4.3 BIU的源代码 218

12.5 蜂鸟E203处理器SoC总线 219

12.5.1 SoC总线简介 219

12.5.2 SoC总线的微架构 220

12.5.3 SoC总线的源代码 220

12.6 小结 221

第 13章 不得不说的故事—中断和异常 222

13.1 中断和异常概述 223

13.1.1 中断概述 223

13.1.2 异常概述 224

13.1.3 广义上的异常 224

13.2 RISC-V架构异常处理机制 226

13.2.1 进入异常 226

13.2.2 退出异常 229

13.2.3 异常服务程序 230

13.3 RISC-V架构中断定义 231

13.3.1 中断类型 231

13.3.2 中断屏蔽 233

13.3.3 中断等待 233

13.3.4 中断优先级与仲裁 234

13.3.5 中断嵌套 235

13.4 RISC-V架构中与中断和异常相关的CSR 236

13.5 蜂鸟E203处理器中异常处理的硬件实现 236

13.5.1 蜂鸟E203处理器的异常和中断实现要点 236

13.5.2 蜂鸟E203处理器支持的中断和异常类型 237

13.5.3 蜂鸟E203处理器对mepc寄存器的处理 237

13.5.4 蜂鸟E203处理器的中断接口 238

13.5.5 蜂鸟E203处理器CLINT微架构及源代码分析 239

13.5.6 蜂鸟E203处理器PLIC微架构及源代码分析 242

13.5.7 蜂鸟E203处理器中交付模块对中断和异常的处理 244

13.6 小结 248

第 14章 不起眼的其实是难的—调试机制 249

14.1 调试机制概述 250

14.1.1 交互调试概述 250

14.1.2 跟踪调试概述 252

14.2 RISC-V架构的调试机制 252

14.2.1 调试器软件的实现 253

14.2.2 调试模式 253

14.2.3 调试指令 254

14.2.4 调试模式下的CSR 254

14.2.5 调试中断 254

14.3 蜂鸟E203处理器中的调试机制 254

14.3.1 蜂鸟E203处理器中的交互式调试 254

14.3.2 DTM 255

14.3.3 硬件调试模块 256

14.3.4 调试中断处理 259

14.3.5 调试模式下CSR的实现 260

14.3.6 调试机制指令的实现 261

14.4 小结 262

第 15章 动如脱兔,静若处子—低功耗的诀窍 263

15.1 处理器低功耗技术概述 264

15.1.1 软件层面的低功耗 264

15.1.2 系统层面的低功耗 264

15.1.3 处理器层面的低功耗 265

15.1.4 模块和单元层面的低功耗 265

15.1.5 寄存器层面的低功耗 266

15.1.6 锁存器层面的低功耗 267

15.1.7 SRAM层面的低功耗 267

15.1.8 组合逻辑层面的低功耗 267

15.1.9 工艺层面的低功耗 268

15.2 RISC-V架构的低功耗机制 268

15.3 蜂鸟E203处理器低功耗机制的硬件实现 268

15.3.1 蜂鸟E203处理器在系统层面的低功耗 268

15.3.2 蜂鸟E203处理器层面的低功耗 270

15.3.3 蜂鸟E203处理器在单元层面的低功耗 272

15.3.4 蜂鸟E203处理器在寄存器层面的低功耗 272

15.3.5 蜂鸟E203处理器在锁存器层面的低功耗 275

15.3.6 蜂鸟E203处理器在SRAM层面的低功耗 276

15.3.7 蜂鸟E203处理器在组合逻辑层面的低功耗 277

15.3.8 蜂鸟E203处理器在工艺层面的低功耗 278

15.4 小结 278

第 16章 工欲善其事,必先利其器—RISC-V可扩展协处理器 279

16.1 领域特定架构 280

16.2 RISC-V架构的可扩展性 281

16.2.1 RISC-V架构的预留指令编码空间 281

16.2.2 RISC-V架构的预定义指令 282

16.3 蜂鸟E203处理器的协处理器扩展机制—NICE 282

16.3.1 NICE指令的编码 282

16.3.2 NICE协处理器的接口信号 283

16.3.3 NICE协处理器的流水线接口 284

16.3.4 NICE协处理器的存储器接口 285

16.3.5 NICE协处理器的接口时序 286

16.4 蜂鸟E203处理器的协处理器参考示例 290

16.4.1 示例协处理器的实现需求 290

16.4.2 示例协处理器的自定义指令 291

16.4.3 示例协处理器的硬件实现 292

16.4.4 示例协处理器的软件驱动 292

16.4.5 示例协处理器的性能分析 294

第三部分 开发实战

第 17章 先冒个烟—运行Verilog仿真测试 298

17.1 E203开源项目的代码层次结构 299

17.2 E203开源项目的测试用例 300

17.2.1 riscv-tests自测试用例 300

17.2.2 编译ISA自测试用例 301

17.3 E203 开源项目的测试平台 304

17.4 在测试平台中运行测试用例 304

第 18章 套上壳子上路—更多实践 308

附录A RISC-V架构的指令集 311

附录B RISC-V架构的CSR 341

附录C RISC-V架构的PLIC 351

附录D 存储器模型背景 359

附录E 存储器原子操作指令背景 364

附录F RISC-V指令编码列表 367

附录G RISC-V伪指令列表 374

媒体评论

芯片是信息技术的引擎,推动着人类社会的数字化、信息化与智能化。

20世纪六七十年代是集成电路的飞速发展期,令人遗憾的是,我们错过了这个黄金时代。经过半个多世纪的发展,世界范围内半导体产业已经取得了巨大的成绩。由于我们错失了先发优势,因此芯片技术已经成为我国芯片行业快速发展的瓶颈。

CPU 是芯片里的运算和控制中心,其中指令集架构是运算和控制的基础。过去的数十年,世界范围内相继诞生了数十种指令集架构,大多数指令集架构为国外商业公司私有,几乎见不到开放的指令集架构。在这些架构中逐渐主导市场的是x

抢先评论了 “手把手教你RISC-V CPU(上) 处理器设计” 取消回复

评论

还没有评论。

相关产品

加入购物车

芯片验证漫游指南——从系统理论到UVM的验证全视界

EUR €58.99
加入购物车

单片机原理及接口技术(第4版)

EUR €27.99
加入购物车

电脑组装与维修从入门到精通(第4版)

EUR €48.99
加入购物车

树莓派机器人实战秘笈 第3版

EUR €43.99

东东购的宗旨是服务喜爱阅读中文书籍的海外人民,提供一个完善的购书平台,让国人不论何时何地都能沉浸在书香之中,读着熟悉的中文字,回忆着家乡的味道。


安全加密结账 安心网络购物 支持Paypal付款

常见问题

  • 货物配送
  • 退换货政策
  • 隐私政策
  • 联盟营销

客户服务

  • 联系东东
  • 关于东东
  • 帮我找书
  • 货物追踪
  • 会员登入

订阅最新的优惠讯息和书籍资讯

选择币别

EUR
USD
CAD
AUD
NZD
NOK
GBP
CHF
SEK
CNY
UAH
ILS
SAR
MXN
KRW
MYR
SGD
HUF
TRY
JPY
HKD
TWD
facebookinstagram
©2020 东东购 EasternEast.com

限时特卖:用“SALE15”优惠券全场书籍85折!可与三本88折,六本78折的优惠叠加计算。 忽略