简述

  • 指令集架构标准 RISC与CISC
RISC(全称Reduced Instruction Set Computer,精简指令系统计算机)则是一套优化过的指令架构
更像是 指令集架构标准,并不是实现。
一种标准对应多种指令集架构实现
  • 指令集架构实现 体系结构 汇编指令集 指令集架构(ISA) x86 x86_64 51 arm mips powerpc avr pic risc-v ia64
x86 x86_64 51 分别是 CISC 标准的 几种实现, 是 指令集架构实现
arm mips powerpc avr pic risc-v 分别是 RISC 标准的 几种实现, 是 指令集架构实现(arm有 v5 v6 v7 版本的指令集,arm指令不是完全兼容的,所有指令集有版本区别)
ia64 是 EPIC 标准的 一种实现。
// 定义的是硬件和软件的接口,并没有指定实现。
一种指令集架构实现 对应多种微架构
将 ISA 变成真正可以使用的实物需要经过“实现”,它包括两个层面:组成和硬件。阿姆道尔 明确了 计算机体系结构 的定义.计算机体系结构 是 程序员(2019年写汇编的程序员)所看到的 计算机的属性,即概念性结构与功能特性.汇编程序员能看到的计算机属性分类1. 数据表示: 计算机硬件能够辨认和处理的数据类型(不同于编程语言中的数据类型)2. 寻址规则: 计算机在访问存储器时的访问规则,最小寻址单元,寻址方式及其表示3. 寄存器定义: 寄存器的定义,数量和使用方式4. 指令系统: 机器指令的操作类型和格式,指令间的排序和控制机构等5. 中断系统: 中断类型和中断响应硬件的功能等.6. 机器工作状态的定义和切换: 如 管态和目态.7. 存储系统: 程序员可用的最大存储容量.8. 保护信息: 信息保护方式和硬件的支持9. IO结构: IO寻址方式,数据传送的方式

简单有序的模型指令集架构
并行执行多条指令微架构
  • 微架构 微结构
微结构(processor microarchitecture)则描述的是如何设计一个处理器来符合一个体系结构
x86的P5 x86的P6 x86的Netburst
ARMv7的cortex-m ARMv7的cortex-r  ARMv7的cortex-a
一种微架构对应多种芯片
https://wenku.baidu.com/view/f18e5864bcd126fff7050b42.html
组成是从计算机设计的高阶层面而言,例如:存储系统、存储互连接、CPU(包括算术、逻辑分支、数据传输的实现)设计,有时候“组成”又被称作微架构(microarchitecture)英特尔 Nehalem、NVIDIA Kepler、ARM Cotrex-A57 都可以属于各自某系列芯片的微架构,其中 Kepler 的 ISA 是 CUDA PTX 和 Cortex-A57的 ISA 属于 ARMv8。计算机组成计算机组成涉及到计算机各个部件的关联,也就是计算机系统能分解的最小的有意义的逻辑单位1. 数据通路宽度2. 各个功能操作部件和他的共享程度3. 专用功能部件的设置4. 功能部件的并行性决定机器有效工作的效率5. 缓冲和排队技术有效的平滑各个部件中间瞬间流量的不同,也可以缓冲因为部件不同而带来的程序指令执行过程中的等待.6. 预测技术加快程序执行效率7. 可靠性技术是不是要采用多部件冗余.高可靠支撑技术8. 控制机构的组成让指令单步或同时执行让程序同时执行指令系统的实现方法分类1. 微程序(RTL)实现2. 硬件的组合逻辑电路
  • 芯片
硬件通常是指电脑的规格,包括具体的逻辑设计、封装技术,同一系列的产品可能有相同的 ISA、近乎一样的微架构,但是存在某些具体规格的差别,例如NVIDIA Tegra 3,有 AP30、AP33、T30、T33、T30S、T33S、T30SL 等具体的型号,它们都属于 Tegra 3 微架构,但是频率规格、内存规格等地方都有差别。
指令集架构实现 微架构             芯片型号Armv4           ARM7                S3C44B0
ARMv5           ARM920T             S3C2440&&S3C2410
ARMv6           ARM1176JZFS     S3C6410
ARMv7           Cortex-M3           STM32F103zgt6
ARMv7           Cortex-A8           s5pv210
ARMv7           Cortex-A9           exynos4412 AppleA5
ARMv7           Qualcomm Scorpio/Krait  MSM8060/MSM8960
ARMv7           苹果Swift微架构      A6ARMv8         Apple Cyclone/Typhoon/Twister/Fusion/Bionic A7/A8/A9/A10/A11
ARMv8           Cortex-A35/A53/A57/A72/A73/A55/A75
ARMv8           高通 Kryo
ARMv8           nVidia  Project DenverARMv8           A53           骁龙410/骁龙630
ARMv8           A55           紫光展锐SC9863A
ARMv8           A57           骁龙808/Exynos7420
ARMv8           A72           骁龙650/麒麟955
ARMv8           A73           Exynos7872/骁龙835
ARMv8           A75           联发科G80/骁龙845
ARMv8           A76           麒麟990 5G/骁龙675
ARMv8           A77           Enynos980/骁龙690G/麒麟9000
ARMv8           A78           骁龙888/天玑1200/exynos2100ARMv9(2021-3-31凌晨发布)           RISC-V          Bumblebee           GD32VF103C8U6//高效能之路:让核心微架构同时间内能够有效处理更多的指令计算机实现CPU 内存的 物理形态(长宽高,功耗,工作温度)器件的集成度和速度信号传输(光电,无线输出)器件,模块,插件,地板的划分与连接涉及的专用器件(风扇,水冷铜管,空调)电源,冷却微组装技术微机装配技术等
  • 例子

arm 对应不断迭代的 指令集 ,属于架构范畴.然后arm V7 是 第七版的指令集,也即第七版的架构cortex-a15 是 微架构,这个微架构是arm发布的而 exynos 4412 就是针对 cortex-a15 最出来的 一个芯片
  • 同样ARM架构,为何苹果处理器更强

详述

  • 指令集架构标准 定义了什么
RISC 定义了 精简指令集?
CISC 定义了 复杂指令集?
  • 指令集架构实现 定义了什么
- 体系结构(computer architecture)定义的是硬件和软件的接口,并没有指定实现。RISC-V即定义的体系结构。- ISA定义的内容:指令编码,内存模型,IO模型,逻辑寄存器数量和功能,控制寄存器,特权级别。- 一条指令都包含什么: 指令功能,操作对象(立即数,普通寄存器,特殊寄存器,内存), 环境变量(标志位,特权级别),指令编码。- 指令的功能分类:逻辑指令,数学指令,控制指令,内存指令,IO指令,特殊指令。- 是CISC还是RISC- 每一种二进制指令具体是什么例如:armv5 在cpu架构方面定义了 寄存器(37个) 指令集(ARM和THUMB和Jazelle) 异常(7个) 处理器状态(3个) 处理器工作模式(7个)  数据类型(字,32bit 半字,16bit byte,8bit) 大小端 同步原语 饱和整数运算 ARM寻址方式
  • 微架构 定义了什么
- CPU微架构包括缓存管理,缓存设计,乱序执行,超标量,超流水线,内存控制,分支预测等众多的极其复杂的电路,这些结构的电路的效率是直接决定CPU性能的
- 微结构(processor microarchitecture)则描述的是如何设计一个处理器来符合一个体系结构。体系结构并不定义微结构。
- 定义了 所有的二进制指令 的具体实现。
- 流水线将 取值译码执行 分为更多的工位。如果是10个工位,就是10级流水线
- 多发乱序流水线
- 多线程流水线(超线程 SMT ) // intel Hyper-Threading
- 多核
- 特殊流水线:VLWI, vector, GPU
- 多核,超标量,指令分支预测,乱序执行,多层次存储 动态调度 线程级并行化 SIMD(数据级并行)存储系统分层结构
- 超标量原来做了20个工位,一条流水线,现在double一下,出来了两条流水线。然后这就是2路超标量
  • 芯片厂家(假定该厂家只能在封装微架构,不能修改微架构) 定义了什么
芯片的 功能模块的种类及个数及对应的引脚引出?
封装?

其他

  • 狭义的计算机体系结构(架构)(CPU架构)(处理器架构)指的是 指令集架构实现
  • 广义的计算机体系结构(架构)(CPU架构)(处理器架构)指的是 指令集架构实现 + 微架构
  • 指令集架构实现与微架构
A指令集架构实现做加法运算的指令二进制代码是10000001
B指令集架构实现的加法指令代码是10000010。你要基于A指令架构就必须把电路做成加法指令代码是10000001
电路怎么变,微架构怎么变随你,怎么实现收到10000001的指令时做加法运算随你
但这些指令集对应的代码不能变,它必须是10000001就是加法运算。这套指令集你必须全兼容才能运行基于它的程序。
  • 体系结构与微结构的互相影响

    • 比较CISC和RISC的特性。 RISC的每条指令功能复杂度基本一致,执行时间基本一致,编码长度基本一致,流水线控制简单,指令调度简单,代码密度相对CISC较小。 CISC的指令功能复杂度不一,执行时间长短不一,编码长度也不一样。直接运行导致流水线控制复杂调度困难,一般动态拆做类似RISC的微指令执行。代码密度相对RISC较高。
    • 操作数:单指令寄存器个数。从栈寻址到多寄存器寻址在代码密度,流水线调度,执行时间上的考虑。
    • 操作数:内存寻址方式。RISC的内存寻址方式单一,调度简单,可做单独流水线,但指令密度高。CISC调度方式复杂,流水线设计复杂,指令密度高。
    • 环境变量: 条件执行对流水线的影响。(第二章具体讲)
    • 指令编码:RISC编码和SISC编码,解码难度,取址难度,分支预测难度等等。(第二章具体讲RISC-V的编码设计)
    • 编译器: 编译器是指令集和高级语言的接口。 语言的抽象等级越高,ISA的使用就更加受限:ABI,systemcall,context switching。 通用逻辑寄存器的功能异化,数量对编译器的影响。
    • 操作系统:硬件资源的管理者,特权软件。 操作系统需要ISA的支持:控制寄存器,特权指令,内存模型,IO模型等等,hyervisor模式。 (更具体的,比如对VM,安全,上下文切换效率,中断和异常的定义等等,都留到第二章)

ARMv8 有几种架构

Armv8.0-A
Armv8.1-A
Armv8.2-A
Armv8.3-A
Armv8.4-A
Armv8.5-A
Armv8.6-A
Armv8.7-A

ARMv9(2021年4月1日) 提到了什么

安全
性能
能效
经济
设计自由
通用计算
矢量AI
dsp
5G
ML
Mali GPU
Ethos NPU
Armv9-A
Armv9.0-A
Armv9.2-A
SVE2

ARM7 ARM9 ARM11 区别

https://blog.csdn.net/lovecaoxing/article/details/8626850ARM7    ARMv4   3级流水线   冯诺依曼        100Mhz              一般没有MMU/720T有MMU                    无SIMD       无vfp
ARM9    ARMv5   5级流水线   哈佛结构        200Mhz              一般有MMU/ARM9940T没有MMU,有MPU       无SIMD       有vfp
ARM11   ARMv6   8级流水线   哈佛结构        350MHz-500Mhz       有MMU                                有SIMD       有vfp

处理器架构 (三) 架构指令集微架构ISA 等概念相关推荐

  1. Pentium 4处理器架构/微架构/流水线 (3) - NetBurst微架构

    Pentium 4 Intel® NetBurst™ Micro-architecture Details Pentium 4处理器是Intel全新NetBurst微架构 的第一代处理器实现(其实也是 ...

  2. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (20) - IvyBridge微架构

    Intel® Ivy Bridge Microarchitecture 第三代Intel Core处理器是基于Ivy Bridge微架构的.上述的Sandy Bridge微架构的特性也都适用于Ivy ...

  3. 【架构】互联网架构三马车:微服务+消息队列+定时任务

    注:内容整理自:互联网架构:屡试不爽的架构三马车

  4. Intel Haswell/Broadwell架构/微架构/流水线 (8)-Broadwell微架构

    The Broadwell Microarchitecture Intel Core™ M处理器基于Broadwell微架构.Broadwell微架构从Haswell演进而来同时还提供了多种增强.本节 ...

  5. linux系统查看cpu微架构,Intel CPU 历代微架构名称

    1 本文由来 前段时间网上买了金士顿的系统指定内存(DDR3 1600 低电压版本1.35V), 8G x 2 = 16GB.顺利安装到了Mac Mini上,运行稳定快速.今天觉得这么大内存用在家用的 ...

  6. ARM 之十五 扫盲 ARM 架构、指令集、微架构、系统架构、ARM IP、授权方式

      ARM 架构的 MCU 用了好多年,进一步对于 ARM 架构也或多或少的有了一些了解.之前都是遇到啥问题直接去官网找对应的手册,一直没有系统的总结一下.是时候总结一下,以便进行下一步学习了! 总的 ...

  7. Intel(R) 处理器产品架构/微架构对照表

    Intel(R) 处理器与微架构对照表 2020/12/23:更新至IceLake/TigerLake微架构 2019/07/09:更新至 2nd Generation Intel® Xeon® Sc ...

  8. 「Arm Arch」 总线微架构

    全文3000字,预计阅读时长:8分钟 适用于从事ARM软硬件设计.开发.调试的工程师.教师以及学生 对于大部分开发者来讲,ARM架构知识一直存放于盲盒之中,知之甚少:而ARM架构知识是ARM结构化知识 ...

  9. 「Arm Arch」 调试微架构

    全文3000字,预计阅读时长:8分钟 适用于从事ARM软硬件设计.开发.调试的工程师.教师以及学生 对于大部分开发者来讲,ARM架构知识一直存放于盲盒之中,知之甚少:而ARM架构知识是ARM结构化知识 ...

最新文章

  1. 事务(ACID)、并发一致性问题(丢失修改、读脏数据、不可重复读、幻影读)、封锁(封锁粒度、类型、协议、MySQL 隐式与显示锁定)
  2. Spring AOP(一):概览
  3. 黑客魔术!如何黑掉一台根本不联网的电脑
  4. 【Demo】HTML5 拍照上传
  5. Linux I2C核心、总线与设备驱动
  6. jsp篇 之 指令元素和动作元素
  7. 高性能迷你React框架anujs1.0.8发布
  8. Qt制作简单的视频播放器(实现循环播放以及点击暂停)
  9. 利用python调用PSS/E进行电力系统仿真
  10. 神舟战神调节风扇热键_神舟HASEE笔记本电脑开机进入BIOS的方法与bios设置图解(F2)...
  11. matlab7.0 win10安装报错,win10系统安装Matlab7.0后出现Runtime Error警告窗口的技巧介绍...
  12. 拿webshell的一些姿势
  13. 转回来慢慢看.挑着吃.
  14. HEVC编码器设计实战-梅奥-专题视频课程
  15. hbase倒序查询_Hbase 查询Scan速度优化
  16. 【硬件设备】CPU 高速缓存知识
  17. Sublime Text3 + LiveReload + Chrome 使编写的HTML同步预览!
  18. 武汉理工计算机网络考试,武汉理工大学计算机网络试题及答案.doc
  19. MySQLJDBC反序列化漏洞分析
  20. 使用stress对服务器进行压力测试

热门文章

  1. matlab roundn函数_MATLAB中,inv,plotmax,round这些函数的功能及问法。
  2. 7-7-1 查找书籍 (20 分)
  3. 增加linux的字体
  4. [JSOI2019]节日庆典
  5. 工具变量法结果解读(IV)
  6. 聊透Spring循环依赖
  7. PHP毕业设计毕设辅导课(11):PHP For 循环
  8. 使用udig绘制道路斑马线
  9. Python 微积分数值和符号计算(计算机代数)
  10. ICMP协议简介(一)