@2017libin
2019-06-23T10:07:12.000000Z
字数 1578
阅读 75
计组
1)掩模式ROM(PROM):利用开关状态表示0/1。
2)一次性编程ROM(PROM):熔丝的闭合/断开状态表示0/1。
3)反复擦除编程ROM(EPROM):浮空的栅极存储信息,充满电荷表示0,否则表示1。
由于掩膜式ROM和一次性变成的ROM比较简单,这里就不进行展开讨论,下面我们来看一下可擦除的ROM。
存储信息:利用浮空栅G1里面的电荷量,有电子则表示0,否则表示1。
初始值:全为1
改写数据:
写0:当D端加上几十伏的脉冲电压,沟道中会造成雪崩产生大量的高能电子。此时G2栅极中加上正电压,可使沟道中的电子注入G1。
写1(擦除):用光子能量较高的紫外线对G1栅极进行照射,G1中的电子获得足够的能量穿过氧化层回到衬底。
特点:
1. 当存储数据为0时,电路无法导通。当存储为1时,电路可以导通。
2. G1栅极被,包围着可永存存储电子。
存储信息:浮空栅极G1有电子表示存储1,否则存储0。
初始值:全为1
改写数据:
写0:漏极D接20正脉冲,G2栅极接地,G1栅极上的电子可以通过隧道返回衬底。
写1:G2栅极接20v正脉冲时,通过隧道效应,电子由衬底进入到G1栅极中。(G1栅极与漏极D之间有一层极薄的氧化层,可以产生隧道效应)
特点:G1内有电子时不能导通,表示存储1。
相同点:
1. 栅极都是用多晶硅。
2. 都是用电荷量表示信息。、
3. 出厂时都是全1。
4. 导通相同,都是G1栅极没有电子时导通。
不同点:
1. 原理不同,EPROM是利用雪崩效应来进行写0,而EEPROM是通过隧道效应写1。
2. 信息表示不同,EPROM有电子表示0,而EEPROM有电子时表示1。
1)为什么要使用cache?因为使用cache可以高速的给cpu提供指令和数据,加快了程序的执行速度。
2)为什么cache可以高速?因为cache是由高速的SRAM组成的,地址的转换功能都是由硬件来实现的!
3)为什么可以使用cache?因为程序运行中具有空间和时间局部性。
4)cpu读取数据过程:首先cpu向cache读取字,若没有则向主存读取同时将这个字放入到cache中。这里注意一点就是,cpu与cache之间交换数据单位是字,而cache与主存之间交换数据方式是块。(若干个字)
5)性能指标:cache的命中率,若cache的命中率达到100%,则此时访问cache/主存的平均时间就等于访问cache的时间,这也是我们所追求的状态。
6)如何提高性能?使用高效的地址映射方式!下面我们来看三种映射方式:
cpu读取字的地址被分为两部分,tag|块内地址。快内字地址位数是根据块的大小决定的,而tag位数由主存的块数决定。
特点:
1)放入cache的块,块号(tag)和块内容一起拷贝到cache的某一行中。
2)在cache中,tag用相联存储器存储,而数据使用SRAM存储。
cpu读取字的地址被分为三部分,tag|行号|块内字地址。行号的位数由cache的行数决定,而tag+行号的位数是由块数决定,块内字地址位数还是由块的大小决定。
特点:
1)将某个块放入cache中时,不用将整个块号(tag|行号)存储,只要存储块号中的tag就可以了!
字地址分为3部分:tag|组号|块内字地址。组号由cache的组个数决定,而tag+行号的位数由主存中的块数决定,块内字地址位数还是由块的大小来决定。
特点:
1)跟直接相联一样,只需要存储tag和数据就好了。
小tip:因为来cache中查找有没有这个字是根据tag来比较的,所以全相联需要存储整个块号也就是tag,而后面两种的话tag位数是少于块号的,所以没有必要存储整个块号!