计算机体系结构

定义

计算机体系结构主要包含以下几个方面:指令系统结构、计算机硬件结构、CPU微结构、并行处理结构、计算机性能分析等。其中,指令系统结构是指计算机中所有指令的集合,它是计算机体系结构的基础;计算机硬件结构是指计算机中各种部件的组成和相互连接方式;CPU微结构是指CPU内部各个部分的组成和相互连接方式;并行处理结构是指多处理器系统中各处理器之间的相互协作方式;计算机性能分析是指对计算机系统性能进行评估和分析。

计算机体系结构(Computer Architecture)是描述计算机各组成部分及其相互关系的一组规则和方法,是程序员所看到的计算机属性。计算机体系结构主要研究内容包括指令系统结构(Instruction Set Architecture,简称ISA)和计算机组织结构(Computer Organization)。

构造运算器

运算器,也被称为算术逻辑部件(ALU),在计算机中起着至关重要的作用。它是负责执行各种算术和逻辑运算操作的部件,包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作。此外,运算器内常设若干可以寄存数据的寄存器,用于临时保存数据。

电路图

三元运算器

多元运算器 

ALU 

根据所代入的值不同而获得不同的结果

云算器是cpu的核心,更与cpu的性能有关联

构造内存

DFF

时间是计算机里面设置好的,现实生活中的时间是连续的,计算机里面的时间是离散的,叫 cycle。因为计算机中的时间是离散的,即计算机是基于数字信号来处理信息的,这意味着他只在特定的时间点上有定义,而不是连续的时间范围内,因此需要cycle规定离散时间间隔

sequential logic

时序逻辑单元,普通(组合)的逻辑组件和DFF的组合(或者是单独的DFF):

 

 

构造Bit 

构造寄存器

构造RAM(内存)

 ​​​​​​

  1. 如果是16个寄存器,那么k的长度(宽度)是4;
  2. 0-15个寄存器;
  3. 1111 = 15
  4. 如果是32个寄存器,那么k的宽度是5
  5. 寄存器0,寄存器1,寄存器2,... 寄存器15;
  6. 取第0个寄存器:0000
  7. 取第2个寄存器:0010
  8. 取第15个寄存器:1111

查找次数

  1. 内存的查找次数取决于内存的大小,
  2. 如果从RAM8里面找寄存器,例如输入的K=001,那么找的是第1个寄存器;
  3. 如果从RAM64里面找寄存器,例如输入的K=001010,那么找到的是第2(010)个RAM8里面找第1个(001)寄存器。
  4. 内存越大,查找的次数越多。

缓存的局部性原理

概念

  1. 能从“近”的地方取就不会到“远”的地方去。
  2. 1. 空间局部性;
  3. sum = sum + a[i];主要指的是a[i]
  4. 2. 时间局部性;
  5. sum = sum + a[i];主要指的是sum;

例子 

import time
import random
import numpy as np
import timeit
# 创建一个大型的二维数组
size = 3000
twoDarray = np.random.rand(size, size)
# 对行求和
def sum_rows():
    return np.sum(twoDarray, axis=1)
# 对列求和
def sum_columns():
    return np.sum(twoDarray, axis=0)
#测量执行时间
rows_time = timeit.timeit(sum_rows, number=size)
columns_time = timeit.timeit(sum_columns, number=size)
print(f"列求和时间:{columns_time}")
print(f"行求和时间:{rows_time}")

Counter

指令-hacker

寄存器操作

  1. add R1, R2 ; R2 = R1 + R2
  2. Store R1, @A; 代表把寄存器里面的值放到内存地址是A的内存里面, Mem[A]= R1
  3. Add R1, M[200]; 代表Mem[200] = Mem[200] + R1
  4. Add 73, R1;R1 = R1+73;

控制流

  1. 101 Load R1, 0;
  2. 102 Add 1, R1
  3. ...
  4. 156 Jump 102
  5. JGT R1, 0, count // Jump if R1 > 0

一行汇编的代码对应一行机器码

  1. D+1;JLE ---> 1110011111000110

寄存器分析

 寄存器越多越好,寄存器多就可以减少去内存获取存储数据,从而提高缓存的利用率;

CPU的构成

 

内存和设备

内存里面有数据和指令

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值