硬件角度看计算机组成结构和工作原理

注:

        本人发现身边很多初级甚至中级硬件工程师虽然从事计算机电路设计工作,但是不完全理解计算机组成架构和工作原理,个人觉得这对计算机相关产品的设计和个人发展非常不利。因此本公众号的“计算机硬件”合集在头一篇文章中会简单介绍计算机组成架构和工作原理。本文先抛出计算机理论提出和计算机的"计算"如何实现这两个问题,这有助于读者尤其初学者理解计算机组成架构和工作原理。

        当你对计算机组成架构和工作原理有一定了解后,你才能对计算机最小工作系统、不同机型的计算机架构和互连系统、内存及高速外围接口设计、调测试等有更清晰的理解和可靠性的设计。


计算机理论提出

  1. 1936年,阿兰.图灵提出了一种数学上的抽象的计算机模型,这个模型被称为图灵机,并在数学上验证了其理论上的可能性,现在所有的计算机运行原理都符合图林机的运作原理,图灵也因为在计算机上巨大成就,计算机科学界的最高奖也被称为“图灵奖”(计算机之父),这个奖有计算机科学界的“诺贝尔奖”之称。

  2. 1946年冯·诺依曼提出计算机在工程上被实现的可能性,并给出了一个完整的计算机基本组成结构,即冯诺·依曼结构,冯诺依曼给出了这个计算机在工程上的实现结构后,很多的学院和厂家就开始着手计算机具体设计工作。(具体架构和组成部分说明详见下文“计算机基本组成结构”


计算机中的计算如何实现

注:为了读者理解,此处主要从宏观的角度来看计算机如何计算,不单指CPU的行为。

  1. 计算机的计算,指的就是各种数学运算

            数学可以描述现实世界一切的东西,科学家使用数学来描述所有事物,事实上计算机也是这样的。计算机中的各种图片、声音、视频等都是以数据形式存在的,计算机计算的过程其实就是处理这些数据的过程,比如对音视频数据进行编解码,编解码的过程中就是进行各种数学运算。在计算机里面,所有都是以数据形式被描述的,这些数据被处理的过程就是数学计算的过程

  2. 数学运算 之 算术运算与逻辑运算

        算术运算:加/减/乘/除,以及从这些加减乘除引申出来的平方,开方,微积分等运算都属于算术运算。

        算术运算作用:计算机对处理视频数据时,就会涉及加、减、乘、除等的算术运算。(所有的算术运算,都是从加法中引申来的)

        算术运算单元:计算机CPU中,专门实现算术运算的功能单元就是算术运算单元。算术运算单元的核心是加法器。

        逻辑运算:与/或/非相关的运算就是逻辑运算。

        逻辑运算作用:在现实世界中,我们时常需要做出各种判断、选择,计算机也需要做出判断、选择和控制。

        逻辑运算单元:实际上也是加法器实现的,也就是说加法器既可以实现算术运算,也可以实现逻辑运算。

总结:计算机执行各种程序的过程,其实就是对数据进行各种的算术运算和逻辑运算。


计算机基本组成结构


以冯诺·依曼结构为例

  1. 输入、输出设备:

    向计算机输入数据、从计算机输出数据。比如,通过摄像头、麦克风可以将图像和声音等转成二进制数据给计算机;通过显示器、扬声器,将二进制数据翻译成为图片、视频或声音等让人能够识别。

  2. 存储器:

    实现程序和数据存储。

  3. 运算器:

    进行算术运算和逻辑运算。

  4. 控制器:

        将程序指令转为对应的一条一条微指令,这些微指令会控制运算器等部件工作。比如:数据的算术、逻辑运算;数据的搬移(如从CPU的寄存器搬移到内存)等。


冯·诺依曼结构的计算机最小系统形象

主要组件:CPU,硬盘,内存条,键盘、鼠标,显示器。以下描述一个简单的运行过程:

  1. 开机:当你按下电源按钮时,计算机开始启动。启动过程中,操作系统从硬盘中加载到内存中,并初始化各个系统组件。

  2. 输入操作:你可以使用键盘输入指令、命令和数据,鼠标用于进行界面操作。

  3. 指令解析和执行:CPU从内存中取出指令,控制单元解析指令的操作码,并执行相应的操作。例如,如果指令是加法运算,CPU会将指定的数据从内存加载到寄存器中,进行加法运算,并将结果存回内存或寄存器中。

  4. 数据传输和处理:计算机内部的数据传输通过内部总线实现,例如从存储器读取数据到寄存器,或者从寄存器写回内存。ALU执行各种算术和逻辑运算。

  5. 输出结果:计算机将处理的结果通过显示器等输出设备展示给用户。

这个例子展示了一个简化的冯·诺依曼计算机系统,它演示了指令的存储、解析和执行过程,数据的传输和处理过程,以及用户输入和输出的过程。


总结

        大部分计算机都遵循冯·诺依曼结构,但并非所有计算机都是完全按照冯·诺依曼结构设计的。在实际应用中,存在一些变体和改进的计算机体系结构,如哈佛结构、分布式存储结构、SIMD(单指令多数据)结构。

        哈佛结构:哈佛结构是冯·诺依曼结构的一种改进,它使用独立的存储器来分别存储指令和数据,使用不同的总线进行访问。这种结构可以提高指令和数据的并行处理能力,适用于一些特定的应用领域。

        分布式存储结构:分布式存储结构将指令和数据存储在不同的物理存储器中,通过网络连接进行访问。这种结构可以提供更高的可扩展性和容错性,适用于分布式系统和并行计算环境。

        SIMD结构:SIMD结构是一种并行计算结构,它允许在单个指令下同时对多个数据进行操作。这种结构适用于一些需要高度并行计算的应用,如图形处理和科学计算。


        无论是冯·诺依曼结构、哈佛结构、分布式存储结构还是SIMD结构,计算机的基本组成部分仍然包括以下几个主要组件:CPU、存储器、输入输出设备。当前大家熟知的计算机系统中都有很多组件,其主要是为了实现更复杂的功能、满足多样化的需求以及适应技术发展的要求。这些组件在协同工作中共同构建了一个功能强大且灵活多样的计算机系统。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值