吉吉影音色情电影
吉吉影音色情电影
你的位置:吉吉影音色情电影 > 科目三 裸舞 > 黑丝 写真 筹画机组成旨趣——第4章-存储器

黑丝 写真 筹画机组成旨趣——第4章-存储器

发布日期:2025-04-08 12:39    点击次数:159

黑丝 写真 筹画机组成旨趣——第4章-存储器

4.1 概述4.1.1 存储器分类

图片黑丝 写真

4.1.2 存储器的脉络结构

图片

4.2 主存储器4.2.1 概述1. 主存的基本组成

图片

2. 主存和CPU的讨论

图片

3. 主存中存储单元地址的分拨

0x12345678如安在主存储器中进行存储?

两种模式:

大端(存储)模式:是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中小端(存储)模式:是指数据的低位保存在内存的低地址中,而数据的高位,保存在内存的高地址中

图片

这边冷漠使用C说话进行贯串;环境为:VS2019

膨胀:

两种方法判断机器存储是大端一经小端

/*** 复返1为小端*/int check_up(){ int i = 1;//0x00000001 内存中示意地址为:0x01000000 char* p = (char*)&i; //01 return *p;}int main(){ int ret = check_up(); if (ret == 1) { printf('小端'); } else { printf('大端'); } return 0;}
int check_up(){    union un	{		char c;		int i;	}u;	u.i = 1;	return u.c;}int main(){	int ret = check_sys();	if (ret == 1)	{		printf('小端');	}	else	{		printf('大端');	}	return 0;}

一般x86架构的筹画机采选小端花式

假定一台机器地址线为24根

寻址花式

寻址规模

按字节寻址

224=16MB

若字长为16

按字寻址

8MW

若字长为32

按字寻址

4MW

按字节寻址,默许一个字为8bit(即字长为8),是以规模为:224=16MB(兆字节)

按字寻址,我个东说念主贯串:把按字治愈为按字节;因为字长为16,是以-为2个Byte,是以寻址规模为:8MW(兆字 Word),也不错写成:16MB,不外在这里 1W=2Byte;依此类推

4. 主存的时刻方针存储容量 主存 存放二进制代码的总位数存储速率存取时间造访时间读出时间写入时间存取周期 // 连气儿两次孤立的存储器操作(读或写)所需的最小间隔时间读周期写周期存储器的带宽4.2.2 半导体存储芯片简介1. 基本结构

图片

读写收尾线:将CPU的收尾信号传给读写电路地址线:将CPU需要的地址传输到译码驱动中,然后由译码驱动进行翻译,然后进行寻址,是单向的地址线的数目决定了存储单元的数目,假如有8根地址线:0000 0000 整个有几种摆设组合,即2的8次方。每一种组合王人对应一个存储单元。数据线:将存储体中的数据读出,放入CPU;将CPU筹画完毕的数据存入存储体。是双向的。数据线的数目决定了存储单元的大小,即一个存储单元大约存若干数据。比如八根数据线0000 0000, 进行一次读取的花式。片选线:一个半导体存储器是有多个芯片组成的,是以在调用一个存储器中的具体的存储单元时,细目是哪一个芯片2. 筹画芯片的容量

芯片容量 = 地址线的寻址才略 * 数据线的数目 = 存储单元的数目 * 每一个存储单元的容量

如下所示,把柄地址线和数据线筹画芯片的容量:2^10*4=1K*4...

图片

3. 片选线的作用让某一个芯片或者某些芯片同期进行责任

图片

试验存储单元容量:如图,16K x 1位的芯片,整个有16K个存储单元,每一个存储单元有1位。若要存储八位数据,将八个存储单元进行并联,每一个存储芯片存储八位数据中的一位。每一次读取数据王人同期读取八位芯片地一位,谐和输出就是八位。

图片

4. 译码驱动花式线选法

图片

重正当

图片

4.2.3 当场存取存储器(RAM)1. 静态RAM(SRAM)基本单元电路的组成

存储0和1信号的花式:静态RAM保存的0和1的旨趣就是使用触发器。T1~T4为4根管子组成的双稳态触发器,不易丢失或者是损耗,它在两头存储信息,左端保握输入信号的非,右端保存原输入信号。

移码驱动花式:重正当——分别通过行地址和列地址的连系选中才能输出,每一份存储单元王人对应一个行列地址坐标(行地址X,列地址Y)。

T5和T6是行地址遴荐开关:当接通的时候,对应的信号不错通过两头分别经过行遴荐开关输出到列遴荐开关断绝。

T7和T8是列地址遴荐开关:当开关接通时,允许数据从双稳态触发器两头输出,经过行地址遴荐器,再通过列地址遴荐器,达成最终的输出。唯独行、列被选中的某个单元存储电路,在其行列通门同期被通达时,才能进行读出信息和写入信息的操作。

读写开关,通过输入对应的读写收尾信号遴荐是否通达,通过数据。

图片

回来:一个SRAM的基本单元需要由8个电路基本元件组成

静态RAM的基本读操作

图片

静态RAM的基本写操作

图片

静态RAM例如——Intel 2114Intel 2114 外本性

图片

在Intel 2114芯片中,WE为读写收尾信号,其中低电平为写,高电平为读。CS为片选信号,唯独CS信号是低电平的时候Intel 2114芯片才会选中,芯片左侧A0-A9是10条地址线,不错看出芯片是1K的存储,右侧是4根数据线,不错读出和写入4位信号,因此不错看出,芯片的存储容量为1K X 4位 。

Intel 2114 RAM 矩阵 (64 × 64) 读

以 Intel 2114芯片 组成的 RAM 矩阵 (64 × 64) ,行地址有64个,列地址一共分为4组,每一组一共有16列。如下图,当行地址线为000...0(64个)时,芯片的第一滑被全部选中

图片

当列地址线为000...0(16个)时,每组中的第一列全部被选中,即0,16,32,48被选中

图片

当 WE为读信号(高电平),读电路灵验, CS片选信号为低电平时,芯片被选中,行列交叉点地址的信号便通过电路通路被读出来

图片

Intel 2114 RAM 矩阵 (64 × 64) 写

Intel 2114 RAM 矩阵的写跟读基本上是一致的,仅仅WE被换成了写信号(低电平),从I/O数据线写入数据

图片

2. 动态RAM(DRAM)

动态RAM保存0和1的方法是电容,当电容保存电荷时为1,不保存电荷(没充电)时为0;

常见的动态RAM基本单元电路有三管式和单管式两种,他们共同的特质是靠电容存储电荷的旨趣来寄存信息。

三管式动态RAM电源电路

图片

信息读出

淌若预充电信号灵验,T4开关通达,V(DD)进行充电,会对读数据线进行充电,读数据线灵验(变成高电平,示意为1),淌若进行读出,读遴荐线灵验,T2开关被通达。

淌若C(g)当中莫得保存有电容(存储0),那么T1开关为低电平(示意为0),T1开关不会被买通,读数据线仍然保握高电平,读出的数据为1;淌若C(g)电容当中保存有电荷(存储为1),那么T1开关为高电平(示意为1),此时T1和T2开关同期放电,使得读数据线由高电平变成了低电平(示意为0),由这个过程,咱们不错看出读出的信息和原存的信息是违犯的。(跟读放大器关连)

图片

信息写入

淌若进行写入,写遴荐线灵验,T3开关被通达,写数据线贯通过T3开关向C(g)进行充电或者放电。淌若写遴荐线是高电平,那么写入的信号就是高电平,相通,淌若写遴荐线是低电平,写入的即是低电平。因此写入与输入信息换取。

三管DRAM实例——Intel 1103 读

三管动态 RAM 芯片 (Intel 1103) 一共有A0~A9 10个 地址线,因此芯片的存储容量为1K; 每次读出和写入王人为一位信号,因此是1K x 1位容量的芯片。行地址经过译码后,每一滑王人对应了两个收尾信号,一个是读遴荐信号和一个是写遴荐信号,读和写分别使用不同的信号进行收尾。如图,是对第0行第0列的地址进行读数据的电路图,第0行第0列的数据经过读收尾线投入到读写收尾电路进行输出。

刷新放大器:使用电容存储电荷的旨趣示意0和1时,电容会走电,一段时间后,电容里边的信号会褪色,因此需要按时使用刷新放大器对电容信号进行重写。

图片

三管DRAM实例——Intel 1103 写

写入信号,淌若行地址为11111,即行地址为31,那么第31行全部被选中,通盘的写遴荐线灵验,给出列地址为00001,那么第31行的第一列的原件为咱们需要写入数据的操作原元件。数据通过D端进行输入,经过读写收尾电路,通过写数据线被写入到指定原件的位置。

图片

单管DRAM电源电路

读出:C(s)当中淌若保存了电荷(示意1),那么数据线读出就是高电平。

写入:单管动态RAM中字线是收尾线,淌若字线充电,T开关被通达,C(s)不错进行充电或者放电。

图片

单管DRAM 4116 (16K × 1位)外本性

单管动态 RAM 4116 (16K × 1位)的7位行地址和列地址分两次传送,第一次传送7位行地址,保存在行地址缓存器当中,第二次传送列地址,保存在列地址缓存器当中;行地址和列地址分别经过行译码和列译码以后,选中给定的存储单元进行输入和输出。

图片

I/O缓存器,缓存了输入和输出数据,勾搭I/O缓存器两头的数据输入和输出寄存器不错收余数据的输入和输出。时序与收尾:由行选中信号RAS、列选中信号CAS和读写信号WE组成,分别生成了行时钟、列时钟和写时钟,收尾了芯片里面的读和写操作。单管DRAM实例——Intel 4116(16K x 1位)读

下图是单管动态 RAM 4116 (16K × 1位) 芯片读图示,防止:其中横线电路为列遴荐信号,竖线电路为行遴荐信号。

RAM 4116芯片中的读放大器的责任旨趣为跷跷板电路,其傍边两侧电平违犯。

淌若行地址给出的是0111111(一个0,6个1),那么第63行被选中;然后给出列地址为7个0,那么第0列将被选中,第0列的列选信号灵验,对应开关被通达。数据就会经过读放大器的右侧(0变成1),经过列选开关,送入到读/写线上,然后经过I/O缓冲,通过输出驱动送出来。

图片

单管DRAM实例——Intel 4116(16K x 1位)写

下图是单管动态 RAM 4116 (16K × 1位) 芯片写图示,跟读数据的逻辑基本一致,数据经过读放大器时(1变成0),读出时(0变成1),经过两次反向,使得读写数据保握正确。

图片

回来:假如你念念往DRAM中写入1,其确实DRAM中存的是0

读出时,你读到的是1,其确实DRAM中存的是0

动态RAM的刷新

为什么要刷新?

电容存储电荷的旨趣示意0和1时,电容会走电,一段时间后,电容里边的信号会褪色,因此需要按时进行动态RAM刷新完成对电容信号的重写。

动态RAM刷新只跟行地址关连,跟列地址无关。每次刷新的王人是一滑的数据,而不是某一个存储单元的数据。

鸠合刷新

所谓鸠合是刷新就是把刷新时间鸠合在一齐进行操作,如图,动态RAM在2ms内对128行进行鸠合式刷新,2ms内一共是4000个存储周期(1个存取周期为0.5微秒),前3872个周期不错供CPU或者I/O进行读写操作,后128个周期专用于进行鸠合式刷新,这段时间内CPU或者I/O王人不不错与动态RAM进行数据信推辞换,因此这段时间也被称为死区。以下即是死区比重的筹画收场

图片

向日葵视频在线观看漫步刷新

漫步式刷新就是把刷新时间漫步放在一个读写周期内,如图,T(c)为一个读写周期,t(M)为数据的读写操作,t(R)为刷新操作。漫步刷新本体上把底本的读写周期时间进行了延迟,使得芯片的刷新频率飞腾,芯片性能下落。唯独的优点是,漫步刷新莫得死区。

图片

异步刷新(漫步刷新与鸠合刷新相结合)

在2ms的周期内,芯片的总刷新行数为128行,因此,咱们把这个时间分红128份,芯片每隔15.6us(微秒)就需要刷新一滑。在15.6us时间内,刷新时间不错放在职何一个周期上,因此相配于一个鸠合式刷新的花式,而相干于通盘时间周期2ms来说,这种花式又是一种漫步式刷新。

图片

3. 动态RAM和静态RAM的相比

图片

动态RAM的单元电路由一个晶体管和一个电容组成,总体相比绵薄;静态RAM相比复杂,每一个单元单路包含6个晶体管,是以集成度相比低。从芯片引脚上来说,动态RAM行地址和列地址不错分别进行传送,简陋了引脚数目,减少了封装体积。关联词,动态RAM行地址和列地址分别进行传送时,奢靡了实行时间。动态RAM仅仅对电容进行充电、放电和刷新,因此功耗相比低,而静态RAM需要由6条晶体管协同责任,晶体管进行责任时需要保握通电,因此所需功耗相比大。动态RAM对电容进行充电需要奢靡时间且行列地址需要传送两次,比静态RAM使用触发器的责任旨趣速率要慢。

因此,把柄动态RAM和静态RAM的特质,咱们一般遴荐动态RAM四肢主存,静态RAM四肢缓存Cache(加速速率)。

4.2.4 只读存储器(ROM)1. 概述

只读存储器(Read-Only Memory,ROM)以非控制性读出花式责任,只能读出无法写入信息。信息一朝写入后就固定下来,即使堵截电源,信息也不会丢失,是以又称为固定存储器。

ROM所存数据时时是装入整机前写入的,整机责任过程中只能读出,不像当场存储器能快速便捷地改写存储内容。ROM所存数据踏实 ,断电后所存数据也不会篡改,况兼结构较绵薄,使用便捷,因而常用于存储多样固定方法和数据。

只读存储器的发展历程黑丝 写真

图片

2. 只读存器的类型掩模ROM(MROM)——只能读

这种ROM是由制造厂家愚弄一种掩膜时刻写入方法的,掩膜ROM制成后,用户弗成修改,把柄制造工艺不错将它们分为MOS型和双极型两种。MOS型ROM功耗小、速率慢,适用于一般微机系统;而双极型则速率快、功耗大,适用于速率较高的筹画机系统。

图片

上图是掩膜型ROM组成的旨趣图,图中是个绵薄的4x4位MOS(或双极型)管ROM,采选单译码结构,A0、A1译码后可译出四种现象,输出4条遴荐线,可分别选中4个单元,每个单元有4位输出。图中所示的矩阵中,在行和列的交点,有的连有MOS管,有的莫得,这是工场把柄用户提供的数据对芯片图形(掩膜)进行二次光刻所决定的,是以称为掩膜ROM。

MOS型ROM, 行列遴荐线交叉处有 MOS 管为“ 1 ” ,行列遴荐线交叉处无 MOS 管为“ 0 ”

PROM(一次性编程)

可编程只读存储器 (英语:Programmable read-only memory),缩写为 PROM 或 FPROM,是一种电脑存储记念晶片,它允许使用称为PROM编程器的硬件将数据写入拓荒中。在PROM被编程后,它就只能专用那些数据,况兼弗成被再编程,这种记念体用作永恒存放程式之用。时时会用于电子游戏机、或电子辞书这类可翻译说话的居品之上。

采选控制性编程,且只能编程一次,淌若编程有诞妄,只能从头购买芯片。

图片

EPROM(屡次行编程)

EPROM采选N型沟说念浮动栅MOS电路,需要保存0,D端加正电压,形成浮动栅,需要保存1,D端不加正电压,不形成浮动栅。

编程完成后,EPROM只能用强紫外线映照来擦除。通过封装顶部能看见硅片的透明窗口,很容易识别EPROM,这个窗口同期用来进行紫外线擦除。不错将EPROM的玻璃窗瞄准阳光直射一段时间就不错擦除。

图片

EEPROM(屡次性编程)

EEPROM (Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种掉电后数据不丢失的存储芯片。 EEPROM 不错在电脑上或专用拓荒上擦除已有信息,从头编程。一般用在即插即用。

常用在接口卡中,用来存放硬件诞生数据。

也常用在谨防软件作歹拷贝的'硬件锁'上头。

EEPROM的特质

电可擦写局部擦写全部擦写Flash Memory(闪速型存储器)

快闪存储器(英语:flash memory),是一种电子式可铲除方法化只读存储器的样式,允许在操作中被屡次擦或写的存储器。这种科技主要用于一般性数据存储,以及在筹画机与其他数字居品间交换传输数据,如储存卡与U盘。

闪存是一种非易失性存储器,即断电数据也不会丢失。因为闪存不像RAM(当场存取存储器)一样以字节为单元改写数据,因此弗成取代RAM。

闪存卡(Flash Card)是愚弄闪存(Flash Memory)时刻达到存储电子信息的存储器,一般应用在数码相机,掌上电脑,MP3等袖珍数码居品中四肢存储介质,是以面貌工整,有如一张卡片,是以称之为闪存卡。

3. 几种只读存储器绵薄对比EPROM 价钱低廉 集成度高——屡次编程,紫外线擦除EEPROM 电可擦洗重写——局部擦除和全部擦除Flash Memory 比 EEPROM快 具备 RAM 功能4.2.5 存储器与CPU的勾搭1. 存储器容量的膨胀位膨胀——增多存储字长

位膨胀的观点是为了增多存储字的字长。

假定当今有1K(1024个)*4位的存储芯片(容量为4096bit)若干,要念念组成一个1K*8位的存储器,咱们不错使用两片1K*4位的存储芯片来组成,如下图

图片

咱们通过片选信号CS同期选中两片存储芯片,同期进行8位数据的读出和写入,例如,每片芯片有10跟地址线,4跟数据线,它们的勾搭花式如下:

图片

关于如上例子,位膨胀的要津就是将两个存储芯片当成一个存储芯片来用,让两个存储芯片同期责任,同期被选中,同期作念读操作,同期作念写操作,要念念保证同期,就是把两个芯片的片选CS,用换取的信号进行勾搭。

字膨胀——增多存储字的数目

假定当今有1K*8位的存储芯片若干,要念念组成一个2K*8位的存储器,咱们不错使用两片1K*8位的存储芯片来组成,如下图

图片

每一个存储芯片的容量是1K*8位,咱们要组成一个2K(11位2进制位)*8的存储器,而存储芯片的每一派的容量是1K(10位二进制位),因此咱们需要使用两片1K*8位的存储芯片来组成,如图:

图片

整个有11条地址线,关于A10,咱们将它当成片选信号线,当A10=0时,片选选中左边的存储芯片责任,右边不责任,当A10=1时,通过一个取反,片选遴荐右边的芯片责任,这从外部看来就是从 0 0000000000 ~ 1 1111111111 刚好是从0~2047共2K个存储单元,每一个存储单元存放8位的二进制代码。

字、位膨胀

假定当今有1K*4位的存储芯片若干,要组成4K*8位的存储器,咱们不错使用8片1K*4位的存储芯片来组成。当先拿两片,来组成1K*8位这么一组芯片,接着,咱们需要4组来组成4K*8位的存储器。

那么何如进行勾搭呢?

其实就是将上述两种方法进行空洞,4K*8的存储器,4K(即12根地址线),8bit,就是8根数据线,1K*4bit的芯片有需要10根地址线,也就是说系统给出的从A0-A11 12根地址线,其中的10根A0-A9是径直送到芯片当中组成1K*8的一个小的存储器,剩余的2根地址线(4个地址)A11-A10,咱们用来作念片选信号,如下图

图片

4K的空间咱们分拨到了4个存储器当中,每个存储器包含了两片1K*4bit的存储芯片,

第一个存储器的规模为 00 0...0(10个0)~00 1...1(10个1)第二个存储器的规模为 01 0...0(10个0)~01 1...1(10个1)第三个存储器的规模为 10 0...0(10个0)~10 1...1(10个1)第四个存储器的规模为 11 0...0(10个0)~11 1...1(10个1)

由A11和A10来判断要造访的地址在哪一个存储器当中,咱们采选译码器进行译码,当

A11 =0 A10=0 遴荐第一个存储器A11 =0 A10=1 遴荐第二个存储器A11 =1 A10=0 遴荐第三个存储器A11 =1 A10=1 遴荐第四个存储器2. 和CPU勾搭地址线的勾搭:由于CPU地址线一般多于存储芯片地址线,因此一般CPU低位地址线与存储芯片相接,高位地址线用作收尾信号。数据线的勾搭读/写敕令线的勾搭:CPU读/写敕令线一般可径直与存储芯片的读/写收尾端详接,时时高电平为读,低电平为写。片选线的勾搭:由于存储器是由好多存储芯片组成的,存储芯片的片选收尾线和CPU的高位地址关连,CPU的高位地址线经过译码器译码,和访存收尾信号共同作用,产活命储芯片的片选信号。访存收尾信号,例如,低电平灵验时,造访存储器;高电平灵验时,造访I/O。合理遴荐存储芯片:系统方法区应该遴荐ROM ,用户方法区遴荐RAM。其他,比如时序、负载等3. 例题

图片

解题要领:

① 写出对应的二进制地址码

CPU有16根地址线,讲明芯片的寻址规模是16 x 16 = 64 K;MREO四肢访存收尾信号,低电平时造访存储器(顶方的横线示意),高电平时造访I/O;

系统缓存区:6000H~67FFH换算成地址规模 ——> 67FFH - 6000H= (67FFH+1-6000H) = 800H = 8 x 16 x 16 = 2 x 2^10 = 2K;

用户缓存区:6800H~6BFFH换算成地址规模 ——> 6BFFH - 6800H= (6BFFH+1-6800H) = 400H = 4 x 16 x 16 = 1 x 2^10 = 1K;

以上为10进制的换算,咱们换成对应的二进制示意为:

图片

② 细目芯片的数目及类型

把柄地址规模的容量以及该规模在筹画机中的作用,遴荐存储芯片。

把柄6000H~67FFH为系统方法区的规模,应遴荐1片2K x 8 位的ROM,若遴荐其他的ROM,王人超出了2K x 8 位的系统方法区规模。

把柄6800H~6BFFH为用户方法区的规模,选2片 1K x 4位的RAM芯片恰好知足1K x 8位的用户方法区条件

③ 分拨地址线

将CPU的低11位地址A10~A0与2K x 8 位的ROM地址线相接;将CPU的低10位地址A9~A0与2片 1K x 4位的RAM地址线相接。剩下的高位地址与访存收尾信号MREQ共同产活命储芯片的片选信号。

图片

④ 细目片选信号

图片

图片

4.2.6 存储器的校验1. 为什么要进行校验?

以内存为例,内存是电子拓荒,信息保存在电容当中,若采选静态RAM,则是保存在四管的触发器当中。若内存所处的电磁环境相比复杂,或在空间环境下受到带电粒子的打击,可能变成电容的充放电或触发器的翻转,存在在存储器的信息可能会出错。

2. 编码的最小距离

编码的检测才略和纠错才略与恣意两组正当代码之间二进制位的最少相反数关连。

先讲明注解什么是相反数:

假定有2个二进制数:0011、0101;

我念念把0011改成0101,我只须把0011中的第2位和第3位改成 1 和 0 就行

是以这两个数之间的相反数为 2

讲明注解:

正当集合 {000 , 001 , 010 , 011 , 100 , 101 , 110 , 111} ,在此麇鸠合,篡改恣意一个代码,比如改为001,001在正当麇鸠合,是以不论改哪一个代码,总能在麇鸠合找到对应的正当代码,因此这组正当代码,最少相反数为1,弗成检测出诞妄,即 检0位错,纠0位错。

正当集合 {000 , 011 , 101 ,110},在此麇鸠合,篡改恣意一个代码,比如改为001,001不在正当麇鸠合,那么不错检测出诞妄,关联词弗成细目是麇鸠合哪一个代码发生了诞妄,因为通盘的正当代码篡改一位后,王人不错变成001,通盘两组正当代码之间二进制位的最少相反数为2时, 检1位错,纠0位错。

正当集合 {000 , 111} ,在正当麇鸠合,篡改恣意一个代码,比如改为001,001不在正当麇鸠合,那么不错检测出诞妄,而且把柄诞妄率错一位的机率为90%的统计,咱们以为是代码000诞妄了一位,因此,两组正当代码之间二进制位的最少相反数为3时, 检1位错,纠1位错 。

检错纠错位数和码距之间的关系

L - 1 = D + C (D>=C,检测诞妄的位数老是大于等于校阅诞妄的位数)

L ——> 编码的最小距离D ——> 检测诞妄的位数C ——> 校阅诞妄的位数

因此,咱们不错知说念,淌若念念要检1位错,纠1位错,编码的最小距离为3。

3. 汉明码校验奇偶校验

所谓的奇偶校验,就是在原校验数据上添加一位1或者0,使数据中的1的个数为奇数个或者偶数个。为奇数个为奇校验,为偶数为偶校验。

图片

以偶校验为例,上图,添加一位1后,使校验数据中的1的个数为偶数个,淌若秉承的收场1的位数不为偶数,那么不错检修出原数据出现了诞妄。

另外,为了更进一步细分诞妄校验,咱们不错把原校验数据进行分组,如上,咱们把校验数据分离为2组,分别添加校验位。

汉明码筹画

汉明码校验是一种非分离花式(组与组之间是有访佛的)

汉明码的观点是大约校阅一位误码( 汉明码默许一串数据只错一位)。假定信息码共有 n 位,汉明码共有 r 位,那么整个的码长为 n + r 位。为能检测出 n + r 位编码中其中一位的诞妄,汉明码必须大约示意至少 n + r + 1 种现象,其中 n + r 种示意 n + r 位编码中有一位诞妄,另外还需要一种来示意通盘编码正确无误。则汉明码的长度需要知足下列关系:

2^r >= n + r + 1

信息码 n 位,汉明码 r 位,整个码长 n + r 位

汉明码位置

汉明码的校验码的位置必须是在2^n位置(n从0启动,分别代表从右边数起的第1,2,4,8,16...),信息码也就是在非2^n位置。

图片

例如:对1,2,3,4,5,6,7进行汉明码校验,按照二进制编码,淌若二进制码的第一位为1,分为第一组,二进制编码的第二位为1,分为第二组,依此类推...

图片

分完组后,校验码的位置必须是在 2^n的位置,咱们知说念最大数7的二进制码为111,因此,把柄汉明码长度需要知足的关系式:2^r >= 3 + r + 1;不错求得校验码的最小长度为3位;

例:

求 0101 按 “偶校验” 树立的汉明码

∵ n = 4

把柄 2^r ≥ n + r + 1

得 r = 3;即校验码有3位

汉明码排序如下:

咱们知说念,校验码有3位,先在1,2,4位占据校验码的3个位置,空余的位置把需要校验的二进制码依次填充上去。先看第一个校验码,第一组校验1,3,5,7位,排序中,3,5,7的位置为011,把柄偶校验原则,咱们只需在前面补0就不错,那么0就是第一个校验码。把柄此方法,不错得出后两个校验码为10;

图片

因此,不错求得0101 的汉明码为 01 0 0 101

汉明码纠错

已知秉承到的汉明码为 0100111 , (按妃耦原则树立)试问条件传送的信息是什么 ?

纠错过程如下:

7位汉明码,数据码占4个,是以校验码的个数为3,一组一个校验码,即分组为3;

把柄偶校验的原则,咱们分别对每一位的信息进行异或运算:

图片

这边就有一个问题:为什么这边算出来来的校验码是011,关联词淌若径直看汉明码的第0、1、4位为:010?

讲明注解:

校验位也可能出错,淌若传送的信息就是错的,那么校验位也会出错;

P1:0、0、1、1 安妥偶校验 = 0

P2:1、0、1、1 不安妥偶校验 = 1

P3:0、1、1、1 不安妥偶校验 = 1

(或者将4个数字进行异或一样的效力)

校验码是011,也就是说,第二组和第三组存在诞妄,第二组和第三组共有的数据是第6位的数据, 可校阅为 01001 0 1;也不错将3位校验码摆设成:110,治愈为十进制为6,是以是第6位出错

故要传送的信息为 01 0 0 101 ;去除校验位,即为0101

准确来说应该是 01 0 1 101;校验位可不纠错

4.2.7 普及访存速率的措施1. 单字体系统

原假定存储字长等于机器字长,也就是说CPU一次从存储器当中只能取出一条教唆(与机器字长绝顶的数据)

单体多字系统:把存储器的存储字长加长(增多存储器的带宽),比如,CPU为16位,存储字长咱们不错缱绻成64位,CPU每一次造访存储器,王人不错造访出4个机器字(4条教唆),下一次再取教唆时,就不错从数据寄存器当中读取教唆。

单体多字系统的流毒:

CPU淌若需要存储16位数据,需要先把数据放在单字长寄存器中,再放入数据寄存器中,然后再存储到存储体中,淌若念念要幸免无关的48位数据被修改,还要缱绻更复杂的硬件逻辑。淌若CPU读取的教唆不是连气儿的存储的教唆,那么取出的阔绰教唆就是用不到的教唆。

图片

2. 单体鼎新->多体并行系统高位交叉——用于存储容量拓展

轨则对存储体进行编码(编完第一个存储体,再编第二个存储体),前两位00为存储体的编号,后四位为存储体中的地址的编号,每一个存储体王人有单独的数据寄存器和地址寄存器,能孤立处理读写信号,从而达到4个存储体并行责任的效力。

不及:淌若按序存储和按序读取,那么4个存储体中,可能存在有一个存储体稀奇劳苦,而其他几个存储体稀奇安闲的情况。

高位交叉的旨趣就是上文中提到的:存储器容量膨胀中字、位膨胀

图片

低位交叉——用于带宽造访速率普及

对高位交叉进行鼎新,横向对存储体进行编码(第一个存储体和第二个存储体治安进行编码),前四位为存储体中的地址的编号,后两位为存储体的地址。

图片

低位交叉的特质: 在不篡改存取周期的前提下,增多存储器的带宽

图片

上图显现了,在一个访存周期内,可分为4个小访存时间,每个小的访存时间不错分别收尾一个存储体进行读写。

设四体低位交叉存储器,存取周期为 T,总线传输周期为 τ ,为达成活水线花式存取,应知足 T = 4 τ 。

图片

连气儿读取 4 个字所需的时间为 T + (4 - 1) τ

回来:采选单体多字系统普及访存速率观点的前提是, 教唆和数据在主存内必须是连气儿存放的,一朝遭受升沉教唆、或者操作数据弗成连气儿存放,这种方法的效力就不彰着。

3. 高性能存储芯片SDRAM(同步DRAM)

在系统时钟的收尾下进行读出和写入—— CPU 毋庸恭候

RDRAM

由 Rambus 开发,主要处罚 存储器带宽 问题

带 Cache 的 DRAM

在 DRAM 的芯片内 集成 了一个由 SRAM 组成的 Cache ,成心于 猝发式读取 (连气儿的存储单元进行读取)

4.3 高速缓冲存储器4.3.1 概述

为什么要使用高速缓冲存储器?

图片

使用高速缓冲存储器,需要解雇方法造访的局部性旨趣,即条件CPU使用的教唆,大部分王人大约在缓存中找到。

三种不同类型的局部性:

时间局部性(Temporal Locality):淌若一个信息项正在被造访,那么在近期它很可能还会被再次造访。 方法轮回、堆栈等是产生时间局部性的原因。空间局部性(Spatial Locality):在最近的来日将用到的信息很可能与当今正在使用的信息在空间地址上是控制的。轨则局部性(Order Locality):在典型方法中,除升沉类教唆外,大部分教唆是轨则进行的。轨则实行和非轨则实行的比例大要是5:1。此外,对大型数组造访亦然轨则的。 教唆的轨则实行、数组的连气儿存放等是产生轨则局部性的原因。4.3.2 Cache的责任旨趣

主存与缓存按块存储,块的大小换取,块内陆址换取。

cache的结构其实和内存的结构类似,也包含地址和内容,仅仅cache的内容除了存的数据(data)以外,还包含存的数据的物理内存的地址信息(tag),因为CPU发出的寻址信息王人是针对物理内存发出的,是以cache中除了要保存数据信息以外,还要保存数据对应的地址,这么才能在cache中把柄物理内存的地址信息查找物理内存中对应的数据。(虽然为了加速寻找速率,cache中一般还包含一个灵验位(valid),用来标记这个cache line是否保存着灵验的数据)。一个tag和它对应的数据组成的一滑称为一个cache line。如下图所示,下表中的一滑就是一个cache line。

图片

知说念了cache的结构之后,如安在cache中去寻找对应的数据呢?绵薄起见,咱们先遴荐径直映射的cache组成花式(参见下文)进行下文的分析。

当先关于一段物理内存(block),该物理内存上的每个字节的地址分离为以下几段:

图片

这么的话物理内存中的数据到cache的映射关系如下图所示:

图片

上图四的映射原则就是:把柄物理地址的中间三位(index字段)来定位刻下数据应该在cache的哪一滑,把物理地址的tag字段和该地址对应的内容放入对应的cache line的tag字段和data字段,并把相应的valid位置置为1。那么在之后进行cache寻找的时候就不错把柄cache line的tag字段来鉴识刻下line中的数据是数据哪个block的。

上图四中的地址00 000 00~11 111 11按照图三的原则进行地址分离:地址的最高两位为Tag字段;中间三位为index字段;最低两位为Block Offset 字段。

由于Block Offset是两位,也就是一个block的大小是2²=4个字节的数据,也就是一个cache line的data字段包含4个字节的数据;index为3位,讲明cache共包含2³=8个组(关于径直映射的cache,也称为8个行);很彰着,cache的一个行中只能存储1 块(Block )=4字节的数据,关联词按照图四的映射花式,会有2^(tag位数) = 2^2 = 4块的数映射到合并个行,此时通过Tag字段的相比来辨别是不是咱们要取数据的地址,淌若不是的话,也就是发生了cache的缺失。

如图四的Block 0和Block 1的index字段王人是000,按照上头的表面它们王人应该映射到第 000=0行(这儿的行也就是组,因为图四是径直映射的cache),关联词当今第0行的内容是K、L、M、N,也就是Block 1的内容,为什么呢?仔细看该cache line的tag=01,映射到第0行的块唯独Block 1的tag字段=01,是以不错得知此时该cache line中存储的数据是Block 1的数据,此时淌若CPU发出的访存苦求是造访Block 0 的话,也就是发生了缺失。此时进一步定量分析的话,共有4个数据块竞争使用cache 第0行的位置,也就是说cache的射中率为25%。

上头的过程回来起来就是:

物理内存的索引字段(Index)遴荐cache 的行,通过对比物理内存和cache line的Tag来判断是否射中。块偏移字段(Block Offset)不错从cache line的数据块中遴荐期许数据。防止在这个过程中cache的index是不占空间的,它就类似于物理内存的地址,关于物理内存来说是通过地址去寻找数据,关于cache来说,是通过index来找到对应的cache line,或者更日常的讲就是:cache line的地址对应的就是物理内存的index字段。

此时该cache的容量筹画如下:每一个cache line的数据字段占4个字节,共2³=8行,是以数据占据4×8=32个字节,一个cache line中tag字段和valid位占2+1=3bit,通盘cache的tag+valid=3bit×8行=24bit=3Byte,时时情况下咱们王人是以cache中数据部分占的空间示意cache的容量,也就是32字节,关联词本体上,它还异常多占用了3字节的存储空间。

上头一大段空话说的就几下几点:

tag:决定块(block)的个数index:决定存在Cache哪一滑(Cache line)offset:决定Cache中data的大小(字节为单元)index+offset:决定每个块有若干个数据1. Cache的射中率

主存讲理存 按块存储, 块的大小换取;缓存共有 C 块,主存共有 M 块 ,主存 M 块的数目>>(远雄壮于) 缓存 C块的数目

图片

射中: 主存块 调入 缓存,主存块与缓存块 确立 了对应关系,用 标记纪录 与某缓存块确立了对应关系的 主存块号

未射中: 主存块与缓存块 未确立 对应关系,主存块 未调入 缓存

Cache 的射中率 :CPU 欲造访的信息在 Cache 中的 比率 ,射中率 与 Cache 的 容量 与 块长 关连 ,一般每块可取 4 ~ 8 个字 , 块长取一个存取周期内从主存调出的信息长度

2. Cache –主存系统的效力

效力 e 与 射中率 关连

图片

设 Cache 射中率 为 h , 造访 Cache 的时间为 t c , 造访 主存 的时间为 t m

图片

4.3.3 Cache的基本结构

将主存地址映射到缓存中称为地址映射,将主存地址变换成缓存地址称为地址变换,当新的主存块需要调入缓存中,而它的可用位置又被占用时,需把柄替换算法处罚调入问题。

图片

4.3.4 Cache的读写操作读操作

淌若射中缓存,径直从缓存中得覆信息,淌若没射中,从主存中查找信息。淌若缓存Cache满,把柄替换算法,把从主存中读取的信息放入缓存。

Cache的读操作经过图

图片

写操作

写直达法(Write – through)

写操作时数据既写入 Cache又写入主存, 写操作时间就是造访主存的时间 , Cache块退出时,不需要对主存实行写操作,更新计策相比容易达成。

优点:主存讲理存数据永恒保握一致瑕玷:合并时间内可能对合并主存进行反复的写

写回法(Write – back)

写操作时只把数据写入 Cache 而不写入主存,当 Cache 数据被替换出去时才写回主存, 写操作时间就是造访 Cache 的时间, Cache块退出时,被替换的块需写回主存,增多了Cache 的复杂性。

优点:写操作时间就是造访 Cache 的时间瑕玷:主存讲理存数据不一致,多系统情况下会出现数据一致性问题Cache的鼎新对Cache进行分级,增多Cache的级数分立缓存,把教唆 Cache和数据 Cache分开,幸免在活水的过程中变成资源打破。4.3.5 Cache-主存的地址映射径直映射

主存中的恣意块映射到缓存中的唯独块,每个主存块只与一个缓存块相对应,关联词达成绵薄。

特质:不纯真,每个主存块只能与固定对应某个缓存块,即使还空着好多位置也弗成使用。这使得径直映射的块打破概率最高,空间愚弄率最低。

图片

全相联映射

径直映射的另一个顶点,不错把主存数据块装入 Cache 中的任何位置。

全相联映射花式的优点是相比纯真,Cache 块的打破概率低,空间愚弄率高,射中率也高,瑕玷是地址变换速率慢,达成资本高。

图片

组相联映射

组相联映射是径直映射和全相联映射相结合的花式,将主存和cache王人分红若干段,况兼使他们每组所包含的块数王人绝顶,组之间采选全相联映射,组内块之间采选径直映射。

径直映射和全相接映射的折中。

图片

4.3.6 替换算法FIFO(First In First Out):解雇先入先出原则,若刻下Cache被填满,则替换最早投入Cache的阿谁。LRU(Least Recently Used):最近最少被使用的被替换,也就是替换终末一次造访时间最久远的阿谁。LFU(Least Frequently Used):最不常使用的被替换,也就是昔日某个时间窗口里援用次数最少的阿谁。4.4 赞助存储器4.4.1 概述

例如:磁盘、光盘、硬盘

特质:不径直和CPU交换信息;断电后能保存信息

4.4.2 硬磁盘存储器1.硬磁盘存储器的类型固定磁头和出动磁头可换盘和固定盘2. 硬磁盘存储器结构

图片

磁盘收尾器

秉承主机发来的敕令,治愈成磁盘驱动器的收尾敕令达成主机和驱动器之间的数据样式治愈收尾磁盘驱动器读写

磁盘收尾器是主机与磁盘驱动器之间的接口:对主机(通过总线)

对驱动器(拓荒接口)

4.4.3 光盘存储器1. 概述

采选光存储时刻;愚弄激光写入和读出

第一代光存储时刻 采选非磁性介质 不可擦写第二代光存储时刻 采选磁性介质 可擦写2. 光盘存储旨趣只读型和只写一次型 热作用 (物理和化学)可擦写光盘 热磁效应4.5 补充

简述用户找一个数据,筹画机里面实行过程:

CPU寄存器 -> Cache -> RAM的MDR -> RAM -> 辅存

本章完

兴趣与未来黑丝 写真

本站仅提供存储管事,通盘内容均由用户发布,如发现存害或侵权内容,请点击举报。