《RISC-V架构与嵌入式开发快速入门_胡振波著》学习笔记

第一章 进入32位时代,谁能成为下一个8051

1.CPU与CORE的区别

CPU:处理器,泛指集成处理器核与其他外设模块或者存储器等、较完整的soc;

CORE:处理器核,指的是处理器内部最核心的部分,是真正的处理器内核,主要参与运算、寻址和跳转等关键处理部分的工作;

2.CPU的灵魂-指令集架构(Instruction Set Architecture,ISA)

指令集:一组指令的集合,指令指处理器能进行操作的最小单元,比如加减乘除操作或者读写存储器数据等处理器能完成的最小单元的基本操作;

指令集架构:简称架构、处理器架构,用于使用不同的处理器硬件实现方案来设计不同性能的处理器,处理器硬件实现方案又称微架构,主要体现在硬件电路设计、硬件门电路工艺、和实现生产成本等,而只要遵循统一的指令集架构下,软件代码可无需做出修改便可以实现移植;所以,指令集架构构成处理器底层硬件与运行在上面的软件之间的桥梁与接口,也就是现在计算机处理器中重要的一个抽象层;

《RISC-V架构与嵌入式开发快速入门_胡振波著》学习笔记_第1张图片

3.CISC与RISC

指令集架构主要分为复杂指令集(Complex Instruction Set Computer,CISC)和精简指
令集(Reduced Instruction Set Computer,RISC),两者的主要区别如下:

>>CISC 不仅包含了处理器常用的指令,还包含了许多不常用的特殊指令。其指令数目
比较多,所以称为复杂指令集;
>> RISC 只包含处理器常用的指令,而对于不常用的操作,则通过执行多条常用指令的
方式来达到同样的效果。由于其指令数目比较精简,所以称为精简指令集;

 4.基本上所有现代指令集架构都选择使用RISC 架构的原因:

>>在 CPU 诞生的早期,CISC 曾经是主流,因为其可以使用较少的指令完成更多的操作。
但是随着指令集的发展,越来越多的特殊指令被添加到CISC 指令集中,CISC 的诸多缺点
开始显现出来。譬如:
1)典型程序的运算过程中所使用到的 80%指令,只占所有指令类型的20%,也就是说,
CISC 指令集定义的指令,只有20%被经常使用到,而有80%则很少被用到;
2)那些很少被用到的特殊指令尤其让 CPU 设计变得极为复杂,大大增加了硬件设计的
时间成本与面积开销;

5.   32位与64位架构

        处理器架构的位数是指通用寄存器的宽度,其决定了寻址范围的大小、数据运算能力的强弱。譬如:

1)32 位架构的处理器,其通用寄存器的宽度为32 位,能够寻址的范围为2^32Byte,即4GB
的寻址空间,运算指令可以操作的操作数为32 位。

注:处理器指令集架构的宽度和指令的编码长度无任何关系。并不是说64 位架构的指令长度为64 位(这是一个常见的误区)。从理论上来讲,指令本身的编码长度越短越好,因为可以节省代码的存储空间。因此即便在64 位的架构中,也大量存在16 位编码的指令,且基本上很少出现过64 位长的指令编码;

6.RISC-V与其他开放架构有何不同

1.免费开放;

2.OpenRISC 是OpenCores 组织提供的基于GPL 协议的开放源代码RISC 处理器,它具有
以下特点。
• 采用免费开放的 32/64 位 RISC 架构。
• 用 Verilog HDL(硬件描述语言)实现了基于该架构的处理器源代码。
• 具有完整的工具链。
OpenRISC 被应用到很多公司的项目中,可以说,OpenRISC 是应用非常广泛的一种开
源处理器实现。

7.本章学习感悟

1.开放而免费RISC-V 架构使得任何公司与个人均可受用,极大地降低了CPU 设计的准入门槛;

2.开源意味着无需交专利费用,所以对于芯片原厂设计公司,采用RV架构实现产品的预期功能需求,并且与采用arm架构的设计所达到的性能不相上下,此时RV的优势就特别明显;

3.开源也利于大家集思广益,提出新方法,激发大家创新的热情,为行业发展带来一定的促进作用;

你可能感兴趣的:(risc-v)