YL19874
9787115480521 9787115364692
手把手教你设计CPU——RISC-V处理器篇
内容简介
本书是一本介绍通用CPU设计的入门书,以通俗的语言系统介绍了CPU和RISC-V架构,力求为读者揭开CPU设计的神秘面纱,打开计算机体系结构的大门。
本书共分为四部分。一部分是CPU与RISC-V的综述,帮助初学者对CPU和RISC-V快速地建立起认识。二部分讲解如何使用Verilog设计CPU,使读者掌握处理器核的设计精髓。三部分主要介绍
蜂鸟E203配套的SoC和软件平台,使读者实现蜂鸟E203 RISC-V处理器在FPGA原型平台上的运行。四部分是附录,介绍了RISC-V指令集架构,辅以作者加入的背景知识解读和注解,以便于读者理
解。
本书不仅适合CPU或芯片设计相关从业者阅读使用,也适合作为大中专院校相关师生学习RISC-V处理器设计(使用Verilog语言)和CPU设计的指导用书。
图书目录
一部分 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的领域之分 10
1.2 ISA请扛起这口锅——为什么国产CPU尚未足够成功 12
1.2.1 MIPS系——龙芯和君正 12
1.2.2 x86系——北大众志、兆芯和海光 13
1.2.3 Power系——中晟宏芯 13
1.2.4 Alpha系——申威 14
1.2.5 ARM系——飞腾、华为海思、展讯和华芯通 14
1.2.6 背锅侠ISA 15
1.3 人生已是如此艰难,你又何必拆穿——CPU从业者的无奈 17
1.4 *敌是多么寂寞——ARM统治着的世界 18
1.4.1 独乐乐与众乐乐——ARM公司的盈利模式 18
1.4.2 小个子有大力量——无处不在的Cortex-M系列 21
1.4.3 移动*者——Cortex-A系列在手持设备领域的巨大成功 23
1.4.4 进击的巨人——ARM进军PC与服务器领域的雄心 25
1.5 东边日出西边雨,道是无晴却有晴——RISC-V登场 25
1.6 原来你是这样的“薯片”——ARM的免费计划 28
1.7 旧时王谢堂前燕,飞入寻常百姓家——你也可以设计自己的处理器 28
2章 大道至简——RISC-V架构之魂 29
2.1 简单就是美——RISC-V架构的设计哲学 30
2.1.1 无病一身轻——架构的篇幅 30
2.1.2 能屈能伸——模块化的指令集 32
2.1.3 浓缩的都是精华——指令的数量 32
2.2 RISC-V指令集架构简介 33
2.2.1 模块化的指令子集 33
2.2.2 可配置的通用寄存器组 34
2.2.3 规整的指令编码 34
2.2.4 简洁的存储器访问指令 34
2.2.5 *效的分支跳转指令 35
2.2.6 简洁的子程序调用 36
2.2.7 无条件码执行 37
2.2.8 无分支延迟槽 37
2.2.9 零开销硬件循环 38
2.2.10 简洁的运算指令 38
2.2.11 优雅的压缩指令子集 39
2.2.12 特权模式 40
2.2.13 CSR寄存器 40
2.2.14 中断和异常 40
2.2.15 矢量指令子集 40
2.2.16 自定制指令扩展 41
2.2.17 总结与比较 41
2.3 RISC-V软件工具链 42
2.4 RISC-V和其他开放架构有何不同 44
2.4.1 平民英雄——OpenRISC 44
2.4.2 豪门显贵——SPARC 44
2.4.3 名校优生——RISC-V 45
3章 乱花渐欲迷人眼——盘点RISC-V商业版本与开源版本 46
3.1 各商业版本与开源版本综述 47
3.1.1 Rocket Core(开源) 47
3.1.2 BOOM Core(开源) 49
3.1.3 Freedom SoC(开源) 50
3.1.4 LowRISC SoC(开源) 50
3.1.5 PULPino Core and SoC(开源) 50
3.1.6 PicoRV32 Core(开源) 51
3.1.7 SCR1 Core(开源) 51
3.1.8 ORCA Core(开源) 51
3.1.9 Andes Core(商业IP) 52
3.1.10 Microsemi Core(商业IP) 52
3.1.11 Codasip Core(商业IP) 53
3.1.12 蜂鸟E200 Core与SoC(开源) 53
3.2 总结 53
4章 开源RISC-V——蜂鸟E200系列低功耗Core与SoC 54
4.1 与众不同的蜂鸟E200处理器 55
4.2 蜂鸟E200简介——蜂鸟虽小,五脏俱全 56
4.3 蜂鸟E200型号系列 57
4.4 蜂鸟E200性能指标 58
4.5 蜂鸟E200配套SoC 59
4.6 蜂鸟E200配置选项 60
二部分 手把手教你使用Verilog设计CPU
5章 先见森林,后观树木——蜂鸟E200设计总览和顶层介绍 65
5.1 处理器硬件设计概述 66
5.1.1 架构和微架构 66
5.1.2 CPU、处理器、Core和处理器核 66
5.1.3 处理器设计和验证的特点 66
5.2 蜂鸟E200处理器核设计哲学 67
5.3 蜂鸟E200处理器核RTL代码风格介绍 68
5.3.1 使用标准DFF模块例化生成寄存器 68
5.3.2 推荐使用assign语法替代if-else和case语法 70
5.3.3 其他若干注意事项 71
5.3.4 小结 72
5.4 蜂鸟E200模块层次划分 72
5.5 蜂鸟E200处理器核源代码 73
5.6 蜂鸟E200处理器核配置选项 73
5.7 蜂鸟E200处理器核支持的RISC-V指令子集 74
5.8 蜂鸟E200处理器流水线结构 74
5.9 蜂鸟E200处理器核顶层接口介绍 74
5.10 总结 77
6章 流水线不是流水账——蜂鸟E200流水线介绍 78
6.1 处理器流水线概述 79
6.1.1 从经典的五级流水线说起 79
6.1.2 可否不要流水线——流水线和状态机的关系 81
6.1.3 深处种菱浅种稻,不深不浅种荷花——流水线的深度 81
6.1.4 向上生长——越来越深的流水线 82
6.1.5 向下生长——越来越浅的流水线 83
6.1.6 总结 83
6.2 处理器流水线中的乱序 83
6.3 处理器流水线中的反压 84
6.4 处理器流水线中的冲突 84
6.4.1 流水线中的资源冲突 84
6.4.2 流水线中的数据冲突 85
6.5 蜂鸟E200处理器的流水线 86
6.5.1 流水线总体结构 86
6.5.2 流水线中的冲突 87
6.6 总结 87
7章 万事开头难吗—— *切从取指令开始 88
7.1 取指概述 89
7.1.1 取指特点 89
7.1.2 如何快速取指 90
7.1.3 如何处理非对齐指令 91
7.1.4 如何处理分支指令 92
7.2 RISC-V架构特点对于取指的简化 97
7.2.1 规整的指令编码格式 97
7.2.2 指令长度指示码放于低位 97
7.2.3 简单的分支跳转指令 98
7.2.4 没有分支延迟槽指令 100
7.2.5 提供明确的静态分支预测依据 100
7.2.6 提供明确的RAS依据 101
7.3 蜂鸟E200处理器的取指实现 101
7.3.1 IFU总体设计思路 102
7.3.2 Mini-Decode 103
7.3.3 Simple-BPU分支预测 105
7.3.4 PC生成 109
7.3.5 访问ITCM和BIU 111
内容简介
《自己设计制作CPU与单片机》是一本为有志于计算机CPU设计的人员所写的书,不论你是狂热的友,还是精明的计算机专业工作者。
《自己设计制作CPU与单片机》以作者几十年学习设计制作CPU与通用单片机的经历,来告诉你如何从无到有地设计属于你自己的CPU和可以运行用户程序的单片机。书中以作者的十几个CPU设计工程为主线,展示了精简指令系统RISC和复杂指令系统CISC计算机CPU的设计方法。既有硬件编程,又有原理图设计,适合软硬件人员学习计算机核心技术之用。
《自己设计制作CPU与单片机通过实例告诉读者,如何创造性地进行计算机产品CPU的立意和设计,介绍了人机交互和操作系统内核的设计方法。这是一本对要全面掌握计算机技术的人员而言必读的CPU设计制作之书。
图书目录
前 言
上篇 CPU设计制作入门
第1章 自己就能设计制造CPU
1.1 自己设计制作CPU有啥意义
1.2 我设计制作CPU的经历
1.3 电子电路设计制作的新变化
1.4 自己设计CPU的条件
1.5 创新CPU设计的意义
第2章 进入硬件设计的天地
2.1 搭建自己的制造工厂
2.2 设计制造CPU需要热身
2.3 硬件设计语言Verilog HDL
2.4 Verilog HDL语句和模块
2.5 Verilog HDL其他常用语句
第3章 自己创造CPU的方法
3.1 深刻理解CPU的结构
3.2 自创CPU的一般步骤
3.3 如何设计自己的指令系统
3.4 指令分析的一般性总结
3.5 让CPU运行程序
第4章 一个简单CPU的设计
4.1 创建一个CPU设计工程
4.2 剖析这个CPU设计程序
4.3 CPU行为的描述方法
4.4 如何让CPU运行软件程序
4.5 CPU设计工程小结
第5章 自制通用CPU与单片机
5.1 实体结构与器件应用
5.2 通用CPU指令系统设计
5.3 用汇编程序检验CPU设计
5.4 外设与CPU接口设计
5.5 设备驱动程序设计
5.6 时钟设计
5.7 开发板连接程序设计
5.8 FPGA引脚连接
5.9 操作系统内核设计
5.10 烧制CPU制作单片机
。。。。
评分
评分
评分
评分
评分
评分
评分
评分
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有