当前位置: 首页 > article >正文

CISCRISC? CPU架构有哪些? x86 ARM?

编者按:鉴于笔者水平有限,文中难免有不当之处,还请各位读者海涵。

是为序

我猜,常年混迹CSDN的同学应该不会没听说过CPU吧?

但你真的了解CPU吗?那笔者问你CPU有哪些架构呢?

如果你对你的答案不是很确定,那刚好,不妨跟随笔者来大致了解一下吧~

下面开始正文。

CISC/RISC

照例,先抛出几个问题,带着问题来阅读本文,效果会更好。

  • 目前市面上有哪些CPU厂商呢?
  • 他们所采用的CPU架构又是哪些呢?
  • 不同的CPU架构下面又有哪些CPU品牌呢?

话不多说,让咱们来一一解密。

先说说CPU厂商,在PC和服务器领域,Intel和AMD是耳熟能详的,在移动消费领域有基于ARM架构进行设计的TI、ST、NXP等等,它们都是头部的CPU厂商。当然,还有国产的CPU厂商,后面会介绍到。

再来说说CPU架构,那什么是CPU架构?

CPU架构是CPU厂商给属于同一系列的CPU产品设定的一个规范,其目的是为了区分不同类型的CPU。

我们知道,CPU是为了执行计算机指令而诞生的,根据计算机指令集的不同呢,市面上的CPU可以分为两大阵营:CISC和RISC。

CISC: Complex Instruction Set Computer, 复杂指令集计算机

CISC指令集的设计理念是:尽可能减小指令的数量,让每一条指令实现更复杂的功能,从而降低CPU向内存取指令的频率,进而减小程序的执行时间,提升计算性能。为了让某一条指令能实现更复杂的功能,CISC的指令设计采用变指令长度。而这必然对CPU硬件电路设计提出了非常高的要求,往往需要非常复杂的控制、解码、执行电路。

基于任何事情都可以用二八定律来描述,计算机指令集也不例外。据实际统计,CISC中只有20%的指令才会被经常使用,而剩下的80%则较少使用。也就是说,为了实现那极少使用的80%的指令,代价是复杂的硬件控制电路和编译器设计,这值得吗?

基于此,一种新的CPU设计理念——RISC便诞生了。

RISC: Reduced Instruction Set Computer, 精简指令集计算机

RISC指令集的设计理念是:只保留必要的指令,采用固定长度指令设计,将复杂的功能实现上交给软件去实现。其好处便是指令集、硬件电路、编译器设计简单了。缺点是实现同样的功能,需要更多的指令,代码密度更低。

CISC和RISC孰优孰劣的争论持续了许多年,它们两个虽然谁都不服谁,各自占据着自己的领域。比如,以CISC x86架构为主的Intel/AMD统治着PC和服务器领域,而以RISC架构为主的ARM则统治着移动消费领域。尽管它们互相看不顺眼,但是随着科技的发展,CISC和RISC也在相互借鉴对方的优势,它们之间的界限也越来越模糊

好,关于CISC和RISC,咱们就先讲到这里,感兴趣的同学,也可以去了解了解它们的爱恨历史,也颇为有趣 (参考文章后面的英文参考链接)。

CPU架构

前面我们知道了CPU的指令集可以分为:CISC和RISC。这是指令集层面上的划分。CPU除了指令集,还包括各种组件,如ALU,EU、寄存器、Cache等等。它们的组织方式也会影响CPU的架构,即同一个指令集下面,CPU厂商又可以生产不同架构的CPU。具体来讲,目前市面上基于CISC指令集的CPU主要是x86架构,比如 Intel的x86,x86-64和AMD的amd64。而RISC下面则有ARM,MIPS,PowerPC,RISC-V等多种CPU架构。

下图简单列举了国内外的一些CPU架构。

接下来,笔者参考网上资料,简单总结了一下各主流CPU架构的一些特点。先声明,这些特点只是大概的,了解即可,可能不足,也可能不正确,也可能过时了。当然,如果读者乐意,也欢迎留言指出。

好,那么咱们开始。

x86

x86 架构采用CISC指令集,由Intel公司于 1978 年推出,也就是8086/8088系列,故后面将该系列称为x86系列。它最初设计用于个人电脑,但后来也被用于服务器、工作站和其它设备。x86 架构的特点包括:

  • 兼容性:x86 架构具有很强的兼容性,这意味着可以在不同的 x86 处理器上运行相同的软件。这使得 x86 架构成为一种非常流行的架构,因为用户可以轻松地升级他们的处理器而无需更换软件。
  • 性能:x86 架构的性能非常高,这使得它非常适合于运行复杂的应用程序,比如视频剪辑、渲染、高性能计算、AI算力等领域
  • 功耗:x86 架构的功耗相对较高,这使得它不适合于使用电池供电的设备。
  • 复杂性:x86 架构非常复杂,这使得它很难设计和制造 x86 处理器。
  • 生态:由于x86架构的兼容性,其软硬件生态杠杠滴!

关于x86的劣势,一位知友的文章中有提到,我觉得蛮有趣:

成也萧何,败也萧何。x86主打兼容性,导致兼容性的包袱越来越重,走得举步维艰。

站在哲学的立场来说,优点也是一种缺点,而破局的关键则在于改变。面对x86沉重的兼容性包袱和ARM的步步紧逼,AMD和Intel都在寻找新出路,未来如何,我们且看。

ARM

ARM (Advanced RISC Machine) 架构是一种精简指令集计算机(RISC)架构,由英国 ARM 公司于 1985 年推出。它最初设计用于嵌入式系统,但后来也被用于智能手机、平板电脑和其他设备。ARM 架构的特点包括:

  • 低功耗:ARM 架构的功耗非常低,这使得它非常适合于使用电池供电的设备。
  • 高性能:ARM 架构的性能非常高,这使得它非常适合于运行复杂的应用程序。
  • 小巧:ARM 架构非常小巧,这使得它非常适合于嵌入式系统。
  • 低成本:ARM 架构的成本非常低,这使得它非常适合于大规模生产。

ARM 架构的缺点包括:

  • 兼容性:ARM 架构的兼容性不如 x86 架构好,这意味着有些软件无法在 ARM 架构上运行。
  • 安全性:ARM 架构存在一些安全漏洞,这使得它容易受到攻击。

目前,由于ARM芯片价格低廉,功耗低,性能好,在移动消费等嵌入式领域拥有超过75%以上的市场份额,拥有绝对的话语权,采用ARM内核进行CPU设计的公司也有很多,比如ST (STM32系列)、TI(MSP430系列,DSP系列)、NXP等等。

MIPS

MIPS是世界上很流行的一种RISC处理器。MIPS的意思是“无内部互锁流水级的微处理器”(microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福大学 Hennessy 教授领导的研究小组研制。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS自己只进行CPU的设计,之后把设计方案授权给客户,使得客户能够制造出高性能的 CPU。

它的基本特点是:

  1. 包含大量的寄存器、指令数和字符
  2. 可视的管道延时时隙

采用MIPS架构的公司及CPU芯片:

  • Imagination Technologies MIPS Warrior:MIPS Warrior是一款32位MIPS架构的CPU芯片,主频高达1GHz,采用40纳米工艺制造。
  • MIPS Technologies MIPS32 24K:MIPS32 24K是一款32位MIPS架构的CPU芯片,主频高达1.2GHz,采用28纳米工艺制造。
  • 联发科技MT6572:MT6572是一款32位MIPS架构的CPU芯片,主频高达1.2GHz,采用28纳米工艺制造。
  • 瑞芯微电子RK3288:RK3288是一款32位MIPS架构的CPU芯片,主频高达1.8GHz,采用28纳米工艺制造。
  • 全志科技A31:A31是一款32位MIPS架构的CPU芯片,主频高达1.2GHz,采用28纳米工艺制造。

关于龙芯,网上有资料说是自主研发的 LoongArch 架构。,也有说基于MIPS,笔者也没搞清楚,暂且按下不表。欢迎读者留言指出,谢谢~

RISC-V

RISC-V 架构是一种精简指令集计算机(RISC)架构,由加州大学伯克利分校于 2010 年推出。它最初设计用于嵌入式系统,但后来也被用于服务器、工作站和其他设备。RISC-V 架构的特点包括:

  • 开源:RISC-V 架构是开源的,这意味着任何人都可以免费使用和修改它。
  • 模块化:RISC-V 架构是模块化的,这意味着可以根据需要添加或删除指令。
  • 可扩展:RISC-V 架构是可扩展的,这意味着可以将其扩展到不同的处理器内核。
  • 低功耗:RISC-V 架构的功耗非常低,这使得它非常适合于使用电池供电的设备。
  • 高性能:RISC-V 架构的性能非常高,这使得它非常适合于运行复杂的应用程序。

采用RISC-V架构的公司及CPU芯片:

  • 阿里巴巴玄铁910:玄铁910是一款32位RISC-V处理器,主频高达1GHz,采用40纳米工艺制造,主要用于物联网设备。
  • 华为HiSilicon Hi3559A:HiSilicon Hi3559A是一款32位RISC-V处理器,主频高达1.5GHz,采用28纳米工艺制造,主要用于智能家居和安防监控设备。
  • 中兴通讯ZTE ZC310:ZTE ZC310是一款32位RISC-V处理器,主频高达1.2GHz,采用40纳米工艺制造,主要用于工业控制和汽车电子设备。
  • 兆易创新GD32V:GD32V是一款32位RISC-V处理器,主频高达200MHz,采用40纳米工艺制造,主要用于物联网设备和可穿戴设备。
  • 乐鑫科技ESP32-C3:ESP32-C3是一款32位RISC-V处理器,主频高达160MHz,采用40纳米工艺制造,主要用于物联网设备和智能家居设备。

RISC-V由于其开源特性,很多公司都采用它进行开发,但大多都是一些小设备小应用,比如物联网之类的。有知友把它比作“永远的小童星”,虽然很火,但终究长不大,好像有一定道理。

PowerPC

PowerPC 架构是一种精简指令集计算机(RISC)架构,由苹果公司、IBM 公司和摩托罗拉公司于 1991 年联合推出。它最初设计用于工作站,但后来也被用于服务器、嵌入式系统和其他设备。PowerPC 架构的特点包括:

PowerPC 是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBMPowerPC 601 微处理器POWER(Performance Optimized With Enhanced RISC)架构。二十世纪九十年代,IBM、苹果和摩托罗拉合作开发 PowerPC 芯片成功,并制造出基于PowerPC的多处理器计算机。PowerPC 架构的特点是可伸缩性好、方便灵活,有着广泛的应用范围,包括从诸如 Power4 那样的高端服务器 CPU 到嵌入式 CPU 市场(任天堂 Gamecube 使用了 PowerPC)。PowerPC 处理器有非常强的嵌入式表现,因为它具有优异的性能、较低的能量损耗以及较低的散热量。除了像串行和以太网控制器那样的集成 I/O,该嵌入式处理器与“台式机”CPU 存在非常显著的区别。

PowerPC, emmm,好像在路由器,网关上面用得比较多。

国产CPU

关于国产CPU,笔者了解的不多,大概有六种品牌,貌似龙芯最强,贴一张图,让读者有个大概的印象。

具体细节可以参考这篇文章:国产CPU之4种架构和6大品牌 - 知乎 (zhihu.com)

结语

终于看完了,真是收获满满啊,不过你不会真的以为,本文的内容就到此结束了吧?

我只能说,Too young too simple.

不信你再看看这篇文章,一个外国老哥写的:都2021年了,还把x86和ARM归为CISC和RISC? - 知乎 (zhihu.com)

附上英文原文相关链接:

  • The final ISA showdown: Is ARM, x86, or MIPS intrinsically more power efficient? | Extremetech
  • RISC vs. CISC Is the Wrong Lens for Comparing Modern x86, ARM CPUs | Extremetech

反正笔者看完后,就一个反应:合着我写的都完全过时了,白写了是吧!

但是细细想来,也不全是,毕竟自己还是对RISC、CISC以及各种CPU芯片的历史、架构和应用有了一个大致、朦胧的了解,不至于一无所知,完全抓瞎。如果读者也和我一样,那么本文的目的便达到了。

笔者后续也会尽量对本文内容进行更新。

最后,如果读者觉得本文对你有所帮助,还请帮忙点个赞,你的鼓励是笔者不懈创作的动力,谢谢~

如果没有,那笔者也只能摊摊双手,表示浪费你宝贵的时间咯,然后溜之大吉~

【全文完】


http://www.kler.cn/a/232966.html

相关文章:

  • linux c/c++最高效的计时方法
  • 俏美韵从心出发,与女性一道为健康生活贡献力量
  • 2024年11月13日
  • Unity3D学习FPS游戏(11)敌人AI巡逻(NavMesh)
  • C#程序开发,检测当前电脑已经安装的软件目录
  • node.js安装和配置教程
  • lnmp指令
  • 【5G NR】移动通讯中使用的信道编解码技术
  • 入门指南|Chat GPT 的兴起:它如何改变数字营销格局?
  • 《MySQL 简易速速上手小册》第9章:高级 MySQL 特性和技巧(2024 最新版)
  • vue3 之 商城项目—home
  • 《Docker极简教程》--Docker基础--基础知识(二)
  • Mac上几款好用的MacBook视频播放器
  • C++一维数组
  • c# DataTable 帮助类
  • 无人机在化工消防救援中的应用,消防无人机应用场景分析
  • 洛谷使用指南
  • 【GameFramework框架】四、GameFramework框架内置模块
  • 第6章 智能租房——前期准备
  • windows10安装配置nvm以达到切换nodejs的目的
  • vscode 无法远程连接waiting the server log
  • [leetcode] 32. 最长有效括号
  • 【Git】Windows下通过Docker安装GitLab
  • 计算机自顶向下 Wireshark labs——DNS
  • Arcgis使用过程中常见问题解决方法
  • ArcGIS学习(六)地理数据库