screen_计算机组成与体系结构_第8周_星期四_第2大节_原文 2026年01月01日 16:37 好,咱们开始上课。这节课咱们接着上一节内容学习。上节课我们主要是讲了一个主存储器的基本构成。一句话,用这张图我们可以看到,我们说我们的存储器只包含三块内容的。也就是说存储器存放信息的第二个是有关地址密码和驱动电路,能够完成CPU发出的地址信号。利用地址译码驱动电路转变一个地址信息,转变成我们村主体相应的存储单元的选通信号键。这是地址驱动一码头今天我们会讲究的具体处理方案。
当我存储器通过地址密码选通电路找到我的特定存储单元,然后我干什么呢?根据我的读写控制命令完成数据的读书或者写入,这就是我们这部分内容的一个特点,就是我们上节课讲一个核心内容。除此之外,我们还描述了有关这个存储单元的概念。就存储单元的概念,大家注意一下,我们这里有存储字和存储起,还有这个陈述单元。
首先大家要明确这个存储字这个概念是怎么得到的。他们描述的是当CPU发生一次读写操作,对应我要读整体读出八位或者16位。这个整体我们对应的叫存储字。你说到底存储字是几位不确定,就看你CPU的能力了。是一个16位的CPU还是一个32位,还是64位的?根据我们CPU的能力来确定他发出一个地址信息,我获取的数据信息。这是存储字与之对应的存放存储字,或者存放存储字节对应的这个存储空间。
我们有个名字叫存储单元是吧?事实上这存储单元准确的讲是对应的是存储字的概念。而存储字节是由于他要处理非数值型数据,因此。一个非数值非数值数据,对于西方来说是一个字节的量,因此它有存储字节是吧?存储字节是八位这是确定的。但是存储字到底是16位还是32位,还是64位,这跟CPU的性能这方面,所有的存储单元集合我们称为存储体,这是几个概念。这是我们上节课除此之外,这个就对应了我们存储容量的存储量。我之前说过。
第二是存取速度,有存取时间和存周期两个概念。就存取时间和存取周期,一般来说存取周期对应的时间花费要大于存取时间是吧?这个我们上节课已经结束了。大家知道除此之外,我们还有一个概念就是有关数据传输,叫做云带宽。
上节课已经提到过,在咱们存储器有数据传输率的概念,到了我们的外设也有数据传输输入的概念。而且这个概念最大的一个特点是什么?难度不大,需要牢记它的定义,凡按照定义去进行计算,但是整体就是这通过这十几年的咱们这个研究生入学考试,可以看一下有关数据传输率的考题。每年基本上隔一年有,这出的频率非常高。
但是从我们评卷的角度来说,很多同学是忘了数据传输率的计算公式。因为主存的数据传输计算公式,外设的数据传输率公式。外设可能我说的很宏观,还要细分。为什么?磁盘、DIA存储器等等等等具体设备。当你和具体设备结合以后,数据传出去往往公式会有变化。
很多同学记不住,导致他做不出相应的题目难度。他其实我们上课就一句话。但是你可以看到这几年408这个考试,数据传输率是经常要考的一个知识点,基本上每一年他都要考,不是说每一年至少隔一年考一次,是没有任何问题的。
好,下面咱们看一下数据的宽度和。我们说过了在现代的计算机里,一般来说我们有两个概念,一个是字的概念,一个是字节的概念。字节的概念主要针对什么?非数值型数据。对于这个数值型数据来说,我们依然是喜欢用字的概念。刚才我说过了,字的概念对应的是CPU发出一次读写操作。我一次性通过这个读写操作它所获取到的所有能量。
一般来说,比如说这里大家可以看一下8086,它的数据是16位80比如说RPM303X系列的,那么它的一个存储器是32位是吧?因此对于这样的数据就是说当一个存储字。当一个存储字。可能是16位,也可能32位,也可能是64位。现在一般咱们用的都是64位操作系统。
当一个存储字它包含多个字节,那么你字地址和你包含的哪一个字节地址是一致的呢?事实上我们知道对于刚才我们说的,比如说一个存储字有32位或者是64位甚至更多。那么这32位数据或64位数据。比如这32位是吧,32位数据它一定是连续存放的四个字是吧?那么这个字存储字字地址到底和哪一个字节地址去对应的。
大家看一下,像这说白了这个三十二数据,事实上如果按照字节,比如说这是N是吧,这是N加1,N加2,N加3OK。那么字地址是应该等于NN加1、N加2还是N加3?大家说其实你作为这个系统的设计者,你想让它等于几就可以的。理解没有原则性的问题。但是注意一下,为了简化我后期的处理,通常就是跟我说了。比如这1 32位这自己去可以等于N也可能等于N加1,也可能等于N加2,也可以等于N加3。这四种方案理论上都是对的是吧?
理论上都是对的,但是从实际的我们处理的便利性来说,我们最终把4种方案变成两种方案。也就是说我的自定制要么等于什么?N要么等于N加3。就是两头?中间业绩做,但是你处理前要麻烦又很多。因此我们一般来说我们自己住就等于两头字节所对应的这个信息。这两头就对应了我们所谓的大端方案和小端方案。大端就是对应的N加3,这种小端就等于N比如说我们8086就属于小端,RBM的机器就属于大端。这大家可以看一下。
这个大端和小端方案就是这个我们简单的说一下。比如说RDM370这个计算机,正好是用属于这个大招的方案是吧?这个我就再不多说,像英特尔叉86它就属于小文化。这个我们就简单说一下。好,下面我们讨论一下在我们有效的存储空间假定这里咱们可以看到题干。我们说我们首先我们主图空间是按照自觉坚持,这是一个前提。
主数据在主存中有3种存放方式,这分别是这个大家可以看一下我们题干,我们假定我们的存储字是64位。比如说CPU发出一个存储字的地址信息,我可以读出64位的数据信息。这是极端情况下,但是在实际操作过程中,我可能又要处理数值型数据,也可以非数据处理,非数值数据。比如说我处理西文,就英文单词,它是八位的信息。比如说我处理汉字,它是一个16位信息,还有一些数据是32位数据。还有我们有肉刺,比如说我们C圆的长整形,可能就64位,标准的整形是32位。也就是说在尽管我们说我们存储字是64位的,但是实际的我们所处理的数据在61个1个CPU发出一个地址信号以后,我可以读出64位的数据。
在这个前提下,但是我们在实际处理数据的时候,可能真是会遇到处理一个字节、两个字节、四个字节、八个字节的各种情况。可能我分别举例了,假定我这数据我给你这么一批数据对吧?我们在这先为了讲这个数据在主控中存放的,我们先用不同颜色进行一个信息的标注。比如说字节信息,我用这种特色,这是字节八位16位,我们称为半字,用黄色、蓝色用30表示单字32位,64位用绿色。我们就假定比如说我现在根据我数据处理,比如我写一段C源的程序,那么我要往文件中写入新闻字母中文一个长整型的数据?标准整形的数据等等等等。他这些数据对应的数这个数据长度是字节、半字、双字单字单字单字字节单字。看一下给你这些数据,你如何在储存空间里面进行存放。
咱们可以看一下,实际上我们从第五章开始,在咱们的教科书上会出现咱们计算机国内,就是咱们中国大陆版计算机组成与其结构教学的经典的三板斧原则。我先这三反腐原则是我先搞出两种极端方案,这两种极端方案各有优缺点。第三种方案是前面两种极端方案的某种综合作为最佳方。在咱们中国内各个高校的,凡是用国内咱们中国人自己编的教科书,基本上你都可以到处看到这种三反腐原则的教学设计方案。
国外的这个金融体系结构的数据跟咱们的国内套路不太一样。国外的它更讲究宏观是吧?微观的东西不讲,就通过你构建一个什么自己设计的一个CPU,通过指令来实现相关内容的学习。事实上对比了对国内外的很多高校的咱们这门课,咱们属于比较传统的,以讲解各种知识点为主。但是很多高校他肯定是以动大家动手干活为主?说一千道一万,也不干活都懒得听,那么各有利弊?各有利弊。事实上咱们由于这个要求跟国有很多学校不一样,我们自然就是采用目前这种策略,这个也是咱们。
计算计算机学院软件计算机组成及结构课程组的统一的一个共识。好,咱们看一下这一批数据,按照我所说的三盘股原则。他会给出哪三种?首先第一种方案每个人都能想到,就所谓的不浪费存储器资源的主动。换句话说,这四种不同长度的数据一个挨着一个进行存放。比如说刚才我说的那就是数据?字节、半字、双字单字单字单字字节单字。
存放这种方式每个人都能想得到。第一个是一个字节八位?第二个数据是一个半次16位,我就挨个就第一个画面我放第二个,第三个是双字,我占用了第一个存储字段五个字节,第二个字节是三个字节,放完了一个双字,紧接着是一个单字32位的。然后我又放了一个16位的半字,接着我又放一个32位的。这个32位的单字又是一个字节,紧接着又是一个32位的单字。
这种方式大家发现这张图上我们发现。除了一个字节的信息之外,双字、单字、半字都有可能被分隔放到两个存储字里,是吧?从这图上没看出来。这带来什么代价?这个优点大家都可以看到,我的储存空间和存储空间有限的存储空间的利用率是100%。
但是比如说这个双字,我这个双字在第一个存储字上我有一部分内容,第二存储字上我有一部分内容。那么就意味着CPU要读读完整的这一个双路的数据,那么需要发出两个地址信息读两次才能把这个双字数据读出来。同样这个36岁的半字也是要读两次。这个32位的单子需要多少次?
也就第一种方案优点,主从空间不浪费。但是在我们访问双字单字和半个字的时候,需要跨越两个重组字,就意味着我们存储器的读写访问速度被降低了一半,就降低了一倍,降低一倍就相当于原来的2分之11。那么本来是高速的CPU等待低速的存储器的东西,你这种不浪费资源的方式是不是导致了我的CPU访问内存速度进一步的降低。你还说不浪费存储器资源的这种存放处理方法,极端情况下会使CPU访问内存组降低一倍,这是他最大的问题。既然我们知道这个不浪费存储器资源这种方式会导致我们CPU访问效率降低一倍,怎么办?我就引出了第二种方式。
第二种方式我们称为是从存储至起始位置开始存放。我们所有数据在一个存储字的起始位置进行存放。它保证了所有数据在一个存取周期里面我完成读写操作?它是在保证我的正常读写速度前提下,我们的初始设计。咱们可以看一下。还是我们刚才这个数据,在所有数据在每个存储字70的就开始存放。这种方式正好的解决了我们第一种方案的访问性能降低一倍的问题,这个就很好讲。
但是与第一种方案相比,它的是不是存宝贵的储存空间,会大量的被浪费。大家发现除了双字之外,别的存放信息至少浪费50%的存储空间。就除了房子之外,你看其他的这个是单子是32 5,浪费了50%。如果是半字浪费了75%,若是字节的话浪费了80%吧?那么这种资源的浪费是相当夸张的?
大家看一下,这刚才我说了,这是我们三板股原则。也就说第一种极端是第一种方案,每个人都能想到,针对第一种方案的不足,我给出这个极端方案。第二个方案是解决第一种方案的痛点,然后又带来了新的问题是吧?带来新的问题。我们说第一种方案是第二种方案是两种极端方案都不是最佳方案。按照三板斧原则,第三项就是我们认为比较合理有效的方案合理有效的方案。所谓的边界对齐原则,编制对的数据情况。这种方式大家注意一下。
第三种方案它是在保持我们第二方案的优点的基础上,提高储存空间的利用率。大家一定要搞清楚它的这个出发点,就是我保留第二种方案的优点,就所有数据在一个存储周期内完成读写。在满足这个前提下,我提高储存空间的利用率。具体讲大家可以看一下,比如说双字最后的三位是就是000,这个是二进制的编号是吧?最末三个是29位数据是000,就是双字单字要求是它对应的这个地址信息。最末两位为00,单单次是最低位为零。这种方式保证了所有的数据在一个存取周期内完成读写。
这是刚刚我说这是我们给出第三种方案的一个前提条件是吧?这跟我们第二种方案是完全一致的。在这基础上利用刚才我们这种规则来提高我的祖宗空降军。
我们首先给出了这存储字,按照字节编制的信息。大家注意一下,0到39,这是我们的十进制?你把这些十进制转变成二进制,比如说0000,那么八是不是1000?16 1后面四个,他都他他这16进制。你把这些主送单元的地址你翻译成十翻译成二进制以后,你会发现它的特点。
根据我们的规则,大家发现我们第一个是放一个字节?对于字节来说,刚才我们按照我们前面的要求,他没有要求,比如说他随便放。然后第二个数据是一个什么?半字半至16位,我们要求它最低位为零。那么大家看这是标二,编号为二的,就是实际是二转变成10,转变成25乘1 0是吧?正好是我们要求这是一个字节,就是半个字节信息的存放汽车位置,然后是双子,再然后是一个单字32位,32位要求低两位的这个起始地址,起始地址的第一两位为00是吧?这是在这儿。
那么下一个数据是什么呢?又是一个16个数据,我按照要求去做。同理。
我们把这个图画出来,大家发现第三种方案是在满足所有的存储信息。在一个读写收入期内完成读写之后,我尽可能提高储存空间的利用率。这种方案比起这种方案,它依然有存储空间的浪费。但是比起第二个,它的主动空间任务要高很多。这种方案是我们的最佳方案。
我们讲这个东西就是给大家提个醒,在咱们国内各个高校的,就咱们中就国内老师编写的所有的计算机总体结构教书,基本上你都会到处看到这种三板斧原则。前面两种方案是极端的两种方案,第三种方案是前面两种方案的一种,就是一种综合最终的结果是吧?这是我们要求大家掌握的话。事实上从咱们这节课开始,你会发现在每基本上每一章节里面都有类似的三板斧。发大家掌握这种学习规则。好,这是这块。下面咱们看一下这个第三节。
第三节因为这个第五章,咱们同学手头应该是有老版的教材,基本上老板的PPT我不记得我上节课发没发,我没发。应该来说我们的教学内容差不多。但是杨总我看一下他的课件,主要是对于开始这块他增加的比较多。但是这些增加的内容,由于我们教学时间有限,我们挑主要的一部分去讲。
而且可以这么说,第我在上课之前,你把第五章给大家布置了。实际上我们过去我们第五章还要包括咱们现在教材的定位章的内容。但是大家注意一下,咱们人民就人民邮电出版社出的这本教材的第六章的题,我们不做要求,第六章题不做要求。为什么?我就可以这么说,只要你没有做过,我随便把第六章的随便一道题我搬到正考上,就期末考试我翻译到十分。我估计在座的各位不是打击在座的各位,10%的同学能拿到分数身上基本上就没戏了,为什么呢?
第六章的课后作业就是考研真题,408考试的真题。你们可以看一下408考试真题有多少?第六章课后的习题就是408考试的真题。你可以看难度是吧?我们不做要求,那个是比较综合的。基本上咱们408计算机组成的考分是45分,其中是十一道选择题。因为每道选择题是两分22分,然后是两道大题,二十两道大总共23分,就相当于一道11分,一道12分,基本上就每年我们就判了两道大题。
第六章的课后作业你可以看一下,你上去像这种题,你做对题到是吧?平均1到1011分、12分的考题,北京市的平均得分率是不到4分,平均得分率。而且这都是老师想办法给你放水,给你放出来的。如果按照我平时的评判标准。不到4分的平均分,我给你砍掉一半分分钟的。是因此大家可以看一下,然后我们的期末考试我不会不会这么去搞,我估计我搞一下估计大都炸锅了,没必要是吧?学生什么样是你们是?我们不做这种强制性的要求,但是我就说408这考试的题长什么样,我都告诉你这样子了是吧,你自己去模仿对吧?
除了第六,第六章是最为典型的,是第八章。第八章的从27题开始,你就可以看一下27题、26题、27题。这些都是考验身体是吧?就是这本教材我没有参与编写,所有老师都是我们一开始就是做这个408。计算机组成月份的老师是吧?包括我们就到那时候都会见面。换句话说,今年大概就还有这事,到时候到咱们再说。
好,我们说了咱们的这这个但是相当说一下我们第六章的作业,我们不做特别强制的要求。大家可以看一下,作为思考题。但是第五章的作业我们是有要求的那第五章的作业他考核的是一个另外的主要的点,就是有关主存储器的设计问题。这第五章主要大家掌握主存储器的设计问题。
第六章我们要求比较简单,只要求开始的计算的问题,什么cache的命中率,具有开始的一个计算机存储系统的它的效率问题等等。就主要的是主要是最基本的。那么咱们老板就是老板,咱们手头同学手里有的,咱们这PPT那些都错了,是吧?我们期末考试不做任何的要求,不仅是你们下学期继科那边也是这样是吧?只不过像我的标了,就每年我只上咱们软工的同学。因为我已经上了二十多年了,继科也上了,但我一般我不不太愿意去上给他们去上。因为到了上半年我是比较忙的,比较忙的,我就不太愿意弄这些事。好,咱们看一下这个第三节。
第三节这一节应该来说与原来的PPT相比,我们现在的内容做了非常简单的描述。说白了过去我们还点一下,但是现在基本上点都不点。在主存储器的分类里面,大家注意一下,我们主存主存储器通常分为RAM和ROM。ROM我们称为随机存储器,ROM叫做只读存储器。主存储器是包含这两部分的是吧?就跟一句这句话我是不是可以出到选择题是吧?CPU可以对于IM的任何一个单元进行读操作和写操作,读写操作。RM只能读不能写,这个将大家注意一下。
下面咱们看一下IM的记忆单元,IM的记忆单元大家注意一下。我们根据记忆单元的设计材料的不同,事实上我们G单元交易有貌似管型和TTL型两种。那么对于IM我们过去在讲记忆单元是分为两种形式进行学习的。
第单元就IM的G单元。首先IM分为静态和动态两种,其中静态就s rum,大家注意一下,s rum就静态IM的记忆单元用的是什么双稳态触发器来进行数据保存。咱们过去可能大家说手头可能有蓝颜色的精华版。对于这块咱们过去教科书有专门的两三页书去讲这个双稳态速发射器的电路图是吧?这个一万的记忆单元的电路,它的设计的设计图纸。但是在新版的这些原有版里面的这块是基本上变成了三行字。但是我们只需要大家知道就行了。就是X软指的是静态,不要对象叫静态软,那么低RAM叫动态软静态状。
我们第一单元是双稳态触发的器状态的触发器。而这个动态rum是用什么电三极电容来进行信息存储的。因为电容大家学过中学物理,电容是两个不相交的,两个极。一个电容的一极是全是正电荷,另一极全是负电荷,是吧?那么根据电容的工作特性,你要维持两极的正电荷、负电荷合,你需要动态的给它进行补电。在我们低温这个补电过程。我们称为刷新操作。刷新操作在咱们教科书上后面会讲。
刷新操作就指的是针对什么?堤乱动态软的三级电容器电荷电荷补充。一般来说S2用于高速缓冲存储器和小容量的这个内存,小容量的内存的设计。而地砖是用于大容量的内存系统设计?这样咱们内存事实上由ddr一代到现在ddr 5代,每隔几年小差不多小十年就会升四级?实际上现在大家电脑上基本上如果不是最新的电脑,就不是这一两年买的电脑,基本上是ddr 4为主,现在是1.5居多。这个向大家要知道一点。
下面咱们讨论一下动态rum刷新操作,实际上是动态run。我们讲动态上的刷新,首先大家明确这个动态的特质是貌似管型。这里是什么有毛丝管的电路构成的,而且是什么利用电山体电容那上面的电荷的存储信息,在针对这个DRM的三级电路进行电路补充,我们把它称为刷新。大家一定要明确,并不是所有的地段都有这个特性。那么它特别是mos管型的山鸡电容,基于山鸡电容进行信息表表征的,我们对它做进行你不要弄了半天,觉得咱们这有缺陷是吧?这就是咱们国内这些相关的高校老师共同认可的这个项目计划教学大纲。这个应该是咱们国内所有高校教师教教材都是这样要求的。因此我们一一说起来就只能破了他。
好,下面大家注意一下,由于我这里的刷新是对于什么?山极电流进行电荷补充,那么它最大的特点是什么?这个电荷补充是以存储体质证,以行为单位。我进行调查,就我要补充调查这一行的整体,这一行的所有信息,我都要进行补充垫付的操作。好,先休息五分钟,下午休息。
没教过这个同学,帮你把你的教下。
对。
老师说就是做那个,不是这个,我们都每次教都是交给默认这一次。对。
陈奕磊同学来了吗?陈奕磊同学。陈一磊同学,四班的陈一磊同学。
陈奕雷。
哪位同学待会儿下课以后找我一下。
你是说这个不说。就是那个。你回头把你材料拿给我看一下,一会你一会儿你就给我,因为我不能判定他是否出现,因为这个东西。这个很熟悉,对,考试里面是这样的。
好,咱们下面看一下刷新。刚才我已经讲过了,对于刷新操作,由于它是对于三级电容器件的补充,它不是逐个对于这个存储单元进行操作,而是对于存储的每一行,你要补充电荷的时候是按照行。当然有的同学是不你不能按列,如果你设计是案例,你也可以都没关系。它是作为一行一行的作为整体我进行调整和补充。这是我们现在的要求,就是我们的对于用猫屎管型动态RAM,我对它的三级电容芯电路补充。
我们引出了刷新这个概念。而且我们是以存储起居证的一行为单位进行调查。而且这个刷新的优先级高于什么存储单元的读写操作。也就是当这个存储器有刷新操作,还有一个读写请求操作。我首先先完成刷新操作之后,再完成读写操作是吧?大家可以想一下,能不能把读写操作和刷新操作优先级调过来,是不能调的是吧?这种现在不显示。
好,对于刷新方式我们又给出了三种方案,分别称为集中式、分散式和异步式。刚才我讲了三板斧,这里就出现了三板斧。你对于这3版3种方式的预期是什么?我想每个同学应该是自己是心中有数,对吧?在咱们教科书的后面都会在各个方面都会出现这种三板斧式的问题的解决。
首先第一次应用三板五模式,看一下刷新方式。假定我有一个存储芯片,它具有1024个记忆单元。这一个鸡单元具有一个山机建模是吧。那么这1024个记忆单元,我们把它设计成一个32行乘以32列的举证是吧?有就是可能有一个为什么你要把它设计成举方近似于方阵的形式?对,32行乘以32点值,它的行数和列数相同是吧?
到后面我们会讲他为什么进行这样的设计,为什么进行这样的设计,都是有原因的?也就是说这1024个单元把它在设计过程中设计成一个32行乘以32页的存。就是就这三加的这就是这1000加4 10单元设计成32至32页的这个举证。
按照我们前面的描述,我们的刷新是按照行进行刷新。而且我们假定或者我们约定,我们刷新一行所对应的时间花费等同于一个存取周期。那么我们在这默认把它对猫屎管型电容,我的刷新周期是500纳秒,也是等于0.5倍是吧?也就说我一个刷新完成一次刷新需要0.5微秒,也就说我们画出了这32行32页。
咱们看一下所谓的集中式刷新。是怎么去做的?首先大家注意一下,其中是刷新。是指在最大容许的刷新间隔内,按照存储芯片容量的大小集中安排若干个刷新周期刷新时停止读写操作。
首先大家从这个描述上看,最大刷新金额是多少?就电容就是帽子管型,基于半导体,我们一般是半的半导体材料。最常规的我们教学中就分成两种,一个是毛管型的,还有一个TTLTTL型。
对mos管型的这个电容来说,它的电荷的持续时间最多是2毫秒。2毫秒就是这里的最大刷新键就是电容。这个电容它的正电荷负电荷的持续时间,就是如果不给他通过外界增加的电荷的一个前提下,它的这个正电荷负电荷的有效保存时间是2毫秒。换句话说,电容在每隔2毫秒你要对它进行刷新一次。那么好,2毫秒除以0.5微秒大概多少?2毫秒除以0.5秒,大概在2毫秒中,我可以20台4000个存储周期,都在2毫秒内我可以完成4000千次的读写访问。对于这4000个存续周期里面,其中前面3968个存取周期,我完全正常的主存的读或者写操作。而最后的这32个周期集中安排刷新正确的及工程款是吧?
那么这种方案优点是什么?我CPU进行读写访问操作时不受刷新工作的影响。那么此时系统存储时间比较系统比较快或速度比较高。缺点在我们进行刷新过程的时候,C这个存储器是拒绝执行CPU的读。写访问要求的。由于我刷新过程中我不能进行读写操作,那么这个时间段我们称为死区,所以死区之后不能完成读写操作。
为什么?因为我们说过了,刷新操作优先级高于读写操作,而且因为我这要那四个存储芯片,存储单元就是一K是吧?在于我们内存现在在现在这个前提下就非常小了。那大家发现当我的存储芯片容量越来越大,那么对应的这个死区就越来越长了。
你是11224这一一K个存储单元,1K,现在动不动就是就比如说我们早期32兆内存,64兆内存,256兆内存,一G内存。现在大家一般笔记本最常见的基本上就16G内存,对不对?要在专业稍微再大一点。咱们的笔记本有同学有32G的是吧?那么你想一想,如果这16G的内存,你要按照这种逻辑的话,他死去要多大死去要多大吧?
因此我说集中式刷新优点,读写操作不受刷新操作影响。但是随着存储器的容量增大,对应的死区对应的时间就越长,也就说这种方案最大的缺陷死去越来越少。那么大家注意下,在这一个集中的刷新,大家一定要牢记毛细管型动态软它的最大发生频率是2毫秒。
我进行一次读写访问,它对应的周期是0.5微秒。2毫秒除以0.5微秒单位不一样是吧?然后呢差,拆怎么说拆毫秒,一毫秒等于多少微秒,应该大家都知道吧,毫秒微秒纳,一毫秒等于1000微秒,0.5,约20 0.5每秒等于四千多,等于4000。那么对于金融刷新,大家可以看一下,这两毫秒是这么安排的。前3968个周期完成读写,最后三个周三12周期我还清。它的缺点主要是死区随着主从空间的增大会越来越大好。既然这种方案它的词随着容量越来越大,那么怎么办呢?
我们给出了第二刷新方案。所谓的分散式刷新,分散刷新是将我们的刷新操作分散到每一个存取周期。也是在这种方案里面,我们的刷存取周期一分为二,前0.5微秒我完成正常的读写操作,后0点5分秒完成刷新操作。大家可以看一下,这种方式优缺点,大家可以归纳这种现象优点。它是相当于对于存储周期我进行了扩容。这个程序周期的一半完成读写操作,另一半完成刷新操作。那么这种方案是不是解决了死去?我就说我把刷新操作放入了存储周期里面就不存在死区,这是它的优点。
缺点大家也发现有两个缺点,第一,我刷新周期原始0点五六秒,现在变成100秒。是不是我的读写性能降低了100秒,这是原来一半?原来0.5秒就能完成,现在我变成一一微秒完成,我的读写性能降低了五倍,这是第一点。第二点,我的刷新,你看因为我每次刷新都是按照行刷新,我32微秒就完成了一次存储器的刷新?你用200秒除以32,也就是说在两微秒里面这个存储单元做一次刷新和做N次刷新效果都是一样的。
比如这种分散式刷新还有一个缺陷就是什么?刷新过于频繁。在更多次刷新操作中有且只有一次是有价值的,剩下的都是无用功。这是我们分散刷新的缺点?一个是加强了审理周期,第二刷新过频繁,没有充分利用2毫秒的创新。是因为我说过了,在2毫秒内补充一次电荷可以补充N次电荷,性能都是一样的。你怎么说?在这N次电荷补充过程中,只有一次有效,剩下N减一次都是无无用功?
这是第二个方案的优缺点。第一种方案死去过长,第二种方案没有死去,但是刷新频率过高,浪费了很多读写访问的时间?浪费很多读写访问时间。因此我们就给出了第三种方案,叫做异步刷新。
异步刷新是前面两种方案的综合,是充分利用最大刷新间隔,将我们集中式的那32次刷新均匀的分布到整个刷新间隔里面。大家可以看一下这个图,这32个刷新的刷新操作他自己设计的。我先做62微秒的读写操作,那么62微秒我大概能够完成什么?124次读写访问对吧?然后后面加给他安排一次的刷新操作,也就是说我们这把原来集中的这32次刷新操作均匀的分布到2毫秒的这这个空间里面。我62每秒进行读写操作,0.5微秒进行刷新,然后再进行62。
为了多些规范我的刷新,那么这种方案大家发现。发现这种性能跟前面两种相比,依然它出现了死区问题。但是这种死区只占用一个读写访问周期。那么相比起集中式刷新,它是四驱CPU是能够承受的。就说白了延迟一个读写访问周期,CPU是可以承受的。因此我们说异步刷新是我们要求大家掌握的所谓的最佳解决方案。
相邻的两行的刷新间隔是什么?用最大的刷新间隔时间也就是2毫秒去除以我的存储器矩阵的行数就得到了相邻两行的刷新间隔。在这儿就是2毫秒除以32等于0.2 26二六十二点5微秒。其中62微秒读写,这个0.5微秒刷新。大家可以看一下。这种方案是有死区,但是死区只是对应的只是延迟CPU访问的一个周期。CPU和人寿。
好,这是动态刷新。下面咱们看一下有关刷新控制。刷新操作是由外部的存储仪器,外部的刷新控制电路产生刷新地址,逐行循环刷新的。这种这是一种方案。还有一种是利用芯片内部的这个刷新地址计数器动态控制刷新。但无论是刚才我说的,无论是存储器外部刷新控制电路提供刷新地址然后进行刷新,还是芯片内部的刷新计数器提供地址进行刷新。
无论哪一种刷新操作,都是我们存储体内部的行为。对CPU是透明的,什么意思?CPU感知不到。那么大家看看这个就这个是存储体自我维持状态的一种手段,它的优先级高于CPU的访问,而且CPU是不感知这件事要刷新操作,对CPU是透明的这是第一点。
第二点,我们刷新操作是对存储体的成绩,单单的取证如何进行的。那么什么叫装逼?就是当我选中某一行中,这一行中就在这一行中所有记忆单元同时进行电话补充,就同时进行刷新。你总是刷新操作只需要行地址,不需要列地址。这是这一块。
除此之外,一般来说我们的主存储器,大家发现我们的内存条一般来说在内存条上它的存储芯片不只是一个。当我进行低端刷新的时候,是所有芯片同时进行刷新。因此我们在讨论刷新问题的时候,是以单个芯片容量作为切入点进行计算。
因为大家再看一下,我们这个内存一般是一条内存,一条上面2 ddr三代四代就一般现在讲究是单面,就一面是那个PCB的印刷版的任何电路那个电路图,另一个是放在四个或者八个芯片。早期的ddr 2代或者早期ddr 3代有的是双面,就一个PC版的两面都有存储芯片。无论哪一种,大家注意一下,也就说我们一句话,我们目前内存中一个所谓的内存条上面有多个存储芯片。那我们进行刷新问题讨论是以单个芯片的容量度进行讨为什么?因为刷新操作可以什么这个存储器所有的芯片同步同时进行。然后你容量大小是一致的话,一般我们现在这个存储内存的PCB板上的所谓的这个芯片颗粒,它的容量都是一样大。它便于方便它的设计是吧?好,下面咱们讲一个RAM,就是因此212114这个存储芯片,那么我们看一下这个芯片它是怎么进行设计。
好,那么等我们再说。首先我们看一下IM半导体随机存储器芯片的地质问题,就我们分析,因为我们这大家注意刚才我讨论的刷新?讨论完刷新以后,下面我们就从这个地址信号入手?
从刚才我们主存的主存储器的框架来看,CPU完成这个存储器的读写访问操作。首先要给出访问?我们职工中一半部分就是有关访问地址的问题。咱们看一下访问地址。CPU发出的访问地址是通过存储器的地址,信号线的输入端导入存储器的。
咱们看一下,比如说我们这里列举了若干个容量的存储芯片,看一下它对应的存储静止信号线分别是多少。比如说我某一个存储期限是1024乘以4。对于热存储芯片,大家看一下12024是他的这个存储字的这个存储字有多少?1024个,每个存储字14位是吧?
那么对于要访问这1024个地址信息,我需要多少根地址线呢?十根就是线,为什么二的10次方?比如说我容量64K01的存储芯片,那么它对应的地址线是16根。因为二的16次方等于64K的对吧?这个应该大家应该都很熟悉。
下面咱们看一下,我们重点先讨论一下地址信号线的设计问题。为什么要讨论地址信号线的设置问题?比如说对于有十根的,就比如这里1024乘以4账存储芯片。比如说我一个地址译码驱动电路,我的输入端是一个十位地址是吧?输入端是十位地址,那十位地址应该说这十位地址在输出的时候它有1000。0 24个。地址输出信号是吧?1000 024地址输入信号,我这是十根,这只才是十根地址信号线,你就有一千多个,这是信号线。
如果我这里变成16根了。这个地址译码器的输出线是多少根?64K是多少?65536。我才是16根地址的输入信号,地址输入信号线是吧?我输出就要六万多根。那么16位地址1980年出现的8086第一代PC机地址是多少位?是20位。20位或者16位地址信号线,你想一下,光16位就叫输出六万多根,六万多根的地址输出的选择线路。
站在工业界我能够造出来?我芯片现在做的越来越小?你想我们50年四十多年以前,1980年,那时候我们的这个工艺各方都不行。很小的芯片,比如指甲盖大小的芯片,你说你一个地址译码驱动电路就要六万多根的地址信号的输出,我做的出来吗?显然在实验室你可以做出来,在工业界理论上也可以做出来。但是工业界的人没有人这么干的,为什么呢?我做出来没人要,因为成本太高是吧?那么对于这种形式。
对于这种形式,比如说16根地址线。16个地址下,我的地址选择信号,按照最原始的人设计,它要输出六万多根的地址,选通的输出。显然我工程能力是做不到的那我怎么办呢?
对于DRAM来说,首先我们把我的芯片设计成方正,那么每个芯片既有行地值又有列地值,我们怎么办?具体讲地方是将地质线分成相等的两部分。一般我们的地质情况下是一个偶数,16位、32位或者64位是吧?那么我就把它总分,比如16位,大家就看一下16位,我一评分是八位对吧?有的人说你这说的太理想化了,有没有15位?13位也有可能,但对于比如15位,我可能会把它们就是评分?那么我就把它近似平有15位,一个是七位,一个是八位是吧?在净值比分。
对于刚才我们说16位地址信号线,我们地段的设计是在工程设计过程中将地质线分成相等的两部分,分两次从相同顶角输入。这是为什么呢?16位地址若一次性的输入,我输出的线路条数是六万多的。但是地址我一分为二,16位置我分为高八位和低八位分别处理。那么高八位地址,我的地址输出线只有256位。这个在工程设计制造能力我是很容易能够满足的,是吧?我先处理高八位的地址,然后再处理低八位地址。尽管我的地址解析速度要慢一点,但是对应的我的生产制造就有关地址密码、地址译码器的制造成本和费用降低了很多?
原来是六万多根,我变成你要八个输入,它输出是256,降低了多少倍?几百倍,665536除以256,两百多倍。那你想想你这个从无论从他的实现难度也罢,还是它的处理这个容易程度来说,它降低了很多。只不过是使我们的这个地址要分两次。
是大家看一下,我们是将地址信号线大家看一下,我们将地址分成相等两部分,分两次从相同的引脚,就是地址一码的输入端输进去。只不过每次的输出我分别这个每次的输入分别称为行列、行地址和列地址,分别选中主存单元的航向的选通信号线或者是列项的选通信号线。内容地址复用技术使得这个地方每增加一根基脂线,实际上增加了2倍,扩充了四倍。
我们把这个思路给大家描述一下,下面咱们看一下地址密码。我们刚刚只是说就说了一个理论思路,下面我们把这理论思路进行一个落地。我们看一下地址译码的过程,所谓的地址译码过程,我们主存储器的地址译码过程是通过地址译码电路将CPU送进来的地址信号翻译成存储单元的选通信号。比如说我用地址码器,比如说这个16位到65536,我这16位输进的是CPU发热地址信号,那么输出的是什么?我相信冲入单元的闪光信号。当然我们这16位有点夸张了,一般是对于这种单一码方式。全大家看什么叫单一码,就所谓自选法。
这种采用单一码方式,我们比较早期的,也就说我们这存储器的结构是一种字结构。它是具有N个M个字的存储器。这M字是容量多少?是M行列列。就我发出一个地址信号,能够卷通这个存储字上的地位,就说白了有B的二进制状态。那么这种单译码方式是属于最为简单的。就是每个人就是我们在每想进行双一网之前,基本上套路都成为单一?只要发现地址,这个地址比如说我1024乘,我给你一个十位的地址信号,十位的地址信号以后我会给出一个通过这个D解码器,使得有一个D码器的输出信号是有效的。那么这个有效信号输给我们的G单元电路,那么我会激活四个。
这个存储记单激活4000单元,从这四个记忆单里面读出二进制一个状态。而这个双一码主要解决随着我的这个CPU发出的地址的位置增加。那么我们怎么去合理降低地址译码器的输出线的条数?刚才我们就以16位的为例,大家可以看到我们将K位地址分成接近相等的两段,一段用于水平方向的X地址,供X地址译码器译码。另一个用于垂直方向作为Y地址线供YD译码器的译码。也就是说当某一个记忆单元中,某一个记忆单元的它的X地址信号线和Y地址信号线同时有效的话,那么这个订单也意味着对什被选中是吧?
我们在这讨论了采用单一码和双一码。比如说都是一个16位弟子?16位地址单一码,那么它对应是65503 16个地址信号。输出线每根线都对应着电位的驱动力设备,你六万多根线就对应六万多个驱动设备,而金双一马同样都是16位是吧?二的80次方256,大家可以看到是6万变成256。因为这个复用尽管是我写了两盒,但是复用它是一套设备,但事实上可以用256个地址业器的输出线以及它的驱动电路。从工程实践成本来说,它的完成同样一个工作,它对应的硬件设计成本不复杂程度降低了很多。这就是为什么我们采用双翼码的原因,利用双意码可以大幅度减少地址译码器的输出信号线的条数以及驱动器的数量。这点相关注一下。
好,下面是IM的读写时序,这个大家仔细看一下是吧?读操作。那么大家注意下这怎么看?
首先这都是什么低电频有效。我精读操作大家可以看一下。首先我发出地址信号?比如这第一件事低电平有效,先是地质信号线有效。比如低电平有效之后,在发出片选信号也是有效以后,那么就是WEC且容许信号。WEC说当这个信号为第一件的时候,我写入操作,而WEC属于高信号,对应的我进行读操作吧?然后数据进行读出,那么写操作大家发现是地址信号和WE信号同时有效。大家可以看到同时有效,同时有效也在第一时间段我住,然后再进行骗取,然后进行数据。
对,就是大家看一下这个轴图,都看一下这个图的垂直方向的它的信号的延迟是吧?那么大家可以看一下读操作或者写操作,咱们先说读操作,读操作是。我先是给出地址信号和写容的信号,这两个同时发出。然后地质信号稳定之后,我再进行骗取行稳定,债权完成以后就选通了。
因为我地址信号发出来以后,可能同时激活若干个芯片。那我在实际操作过程中,这几种芯片并不是每一个都有效。我要根据片选信号再明确指定具体的存储。这是有一个相互关系的。可能现在你说的有点抽象,等我们讲存储器设置的时候大家就看明白。
这是读写操作,大家看一下,就是在书上讲一堆就是这个事。第二个房间大家也看一下,这个有问题。DD RAM和s RAM就是地址信号过去是一条s run是一条,d run是两条。就是s one是一条是吧?D run是两条,就是行有行地址和列地址两种形式。当同时有效时候再进行读写后,这下自己看一下。
对于半导体指纹存储器,咱们要求不高,只要求大家知道ROM的分类就行了。RM最大的特点是非易失性,什么意思呢?即使电源断电,ROM这个半导体充电器的信息也不会丢失。对于ROM的分类我们分为三种,分别是眼模式、一次可编程式和可擦写的三位。
这打一个不恰当比,我们就是类似于光盘进行描述。比如说前些年或者咱们现在大家我不知道大家买过这种杂志,是吧?比如说一些游戏杂志,它杂志一般来说游戏杂志一般在卖,就是纸质的游戏杂志在卖的时候,一般在杂志后面会给你贴一张光盘的?那张光盘大家发现他的目标是什么,让大家去试试用。然后现在这个套路跟大家不一样,像二十多年以前的话,基本上都是这个套路。那么买杂志送光盘,现在一般都大家都在网网上下游戏去去玩。
对于这种。这个杂志社随着纸质出版物发行附赠给你的光盘,就属于第一种方式演模式的。就所谓的指挥光盘也是这光盘内容是按照杂志社事先对要求的写入的游戏信息是吧?你只要拿过来直接用就行了是吧?写完以后这任何人包括杂志上都不可能改变,就是所谓的这个眼膜式睾丸。就这种还有一种叫一次可编程的RN所以聘用这种方式就是大家去市场上或者网上买的那种刻录盘是吧?刻录盘我不知道以前我们交这个计算机组成作业的时候,以单以班为单位交流的时候,很多就很多班的班长就是以刻盘,到时候给我交好到这五分钟,待会再去。
这是你吗?
以后做好写的指示。
这个把件。不不不,你怎么能找出来?就把这个先截图,截图不知道吗?就是你保存的保存,对,造成批改。咱们一般考试的时候,肯定是。
大家可以看一下,这种一次可编程的,就类似于我们这种,咱们顺便卖的这种刻录盘。我们需要用专门的设备进行编程写入。通常情况下大家可以看一下,对于聘用来说,它这种一次性可编程的,用大家看一下厂家在生产批的时候,他默认的是将所有的数据默认设置为零。我编程的时候只是将我所需要的位置由零变一就OK了。这样子我们这个相对来说这个就相对来说简单一点。
最后一种我们称为可擦洗可编程的E披露对吧?我们只要讲分类,对于这种可擦写可编程的一批录,大家注意一下,它数据擦写分为点擦写和面擦写。比如说用紫外线擦洗,这就属于面擦洗,就通过紫外线对于一批用照射会破坏掉这个紫外线下端的所有信息。他只要有紫外线一照射,所有信息将丢失,这是一种面擦洗。
还有种是电擦写,就是这种方式只是对特定需要修改的数据做擦写操作。比如说我可以按数据块,也可以按照存储单元等等进行少量数据的修改。这是当这些都需要专用的设备是吧?为什么我们要讲这个?其实这个程序在完成设计之前,我们有可能做多次修改,只有当稳定以后我们才逐步去做。但是现在这是早期,现在一般来说说这种可擦擦写可编程的一批论用的是比较多的。包括现在我们每一台计算机主机上,就是启动计算基金自我检测的BROS把钥匙?他用就是所谓的。
一批录,那么最大的特点是什么呢?比如说还是给你把机箱打开,一般在主板上有有块你扣下来,你会发现你在系统里面的数据丢失,这是第一点。第二点,你可以利用一些专用的,比如说一般好一点的这个。
这个计算机的生产厂商,比如说新派大一般他都会为你这台机器或者你这块主板提供非常时非常长的时间的后期维护。比较戴尔的是吧?我十年以前买的这盖尔的台式工作站?十年以后他还依然提供百20个程序补丁修改和这个一般来说像从国内很多厂家根本不会给你这么长时间。一般来说相同情况下,国内厂家对于主板就提供五年的质保了之后他就不管了,就说这个就是这个我们用的还比较多,还有种闪存,这个我就再不啰嗦了。
这些啰啰嗦嗦的,我们就是说咱们可以想象从开上课到现在一个数据访存取的方式?我们告诉你三板斧的原则。第二,我们的动态上的刷新也是38要掌握。刚才我们的数据,我们的双面的方式就解决了这个工程问题。
下面有了这些附件以后,下面我们看到本章最为重要的一些有关主存储器连接控制这一章这一节的学习。在这一节里面我们重点讨论是什么?主存储器的设计问题。
主存储器的设计问题。一句话,目前我们构成一个容量比较大的储存。比如说现在我们谈的什么16G32G内存,你会发现你去中关村买的内存条是吧?可以看一下在一个PCB的一印刷板上面,它会放置比如说四个或者八个或者16个容量相同的存储芯片是吧?有容量比较小的存储器芯片,通过某种扩展连接设计形成一个容量比较大的存储器。这就是我们第四节所讲的内容结果。
我们讲的这里讲的这所有芯片的容量都比较小。但是你放大了跟市面上卖的这些存储器的处理套路基本差不多。对于这种有关存储器设计,这大家都想我们尽管讲。在上课之前我已经布置了第五章的作文。这些作业就是围绕我们5.4这一节有关储存容量扩展这个问题进行的一个演化。这块每年都是我们重点要考核的知识点,但是每一年都有同学翻车是吧?
对于这个主存储器的扩展,首先第一件事我们要根据存储器的容量和芯片的容量去计算我需要的总的存储芯片的数量。就要用利用这个公式,总片子等于总容量去除以芯片容量。大家看一下这个可能觉得没有什么,但是注意一下在第五章在做习题的时候,大家一定要注意这个公式,活学活用,你用好它,我们后面讲东西都很理解,你要掌握不好可能会出问题。
好,我们在这里先讲两种极端设计方案,第一种方案我们称为未扩展。什么叫胃宽?是在位处方向进行扩展,就讲叫扩大自长。什么叫扩大自查?
我比如说我给你的是1024乘以4的芯片。我如果给你。八个1024乘44芯片我进行未扩展。那么这八个这个102404芯片我做这样的一个连接方式,将这八个总理芯片的地址信号线、片场信号线、读写控制线进行了并联,只是将芯片的数据线单独列出。刚刚我说的是每一个芯片都是1024乘以4。那八个的话,按照这种连接方式,你看我的地址信号线这种信号都在一起。所以并联我发出一个地址信号,相当于我同时命中这八个芯片。那么原来我一个芯片只能访问四位信息,现在我发出同样一个十位位置,我能访问4乘以8 32位数,这就是还没有关系。
这个问题举个小小例子。咱们先看一下我PPT上这个例子。他说我用64K乘一个s run构成64K乘8的存储器。我这个我想在座的每个同学都会算是吧。但是我强调一件什么事呢?强调利用我们刚才的这个是就这个公式,总片数等于总容量除以芯片容量。大家看一下,我利用这个公式我能得到什么?没有,但是这个是不是考小学生?
不是,我们是有原因的,我的存储器容量是64K乘8是吧?我除以芯片的容量是64K乘1。大家看我点一遍,我将陈浩前的做消除,陈浩后面做相,它等于什么?64K除以64K乘以8除以1,那么再等于什么呢?再再等于1乘以8。这1乘8和8有区别吗?
这个我们描述成我的芯片的设计是一行86。一行八列,我的芯片是这么不值得。一行八列。一行八列。竖K。实际上我们在做做了这个之后,我们还要列一张表,就是列账目表。对,画出存储器、存储芯片的容量地址、地址线的条数、数据线的条数。
比如说也是对于这道题,大家在草稿纸上首先给我把这个要弄出来一行八列。这告诉你我的存储芯片是怎么在图上画的,再列出这张表,我们知道我的存储器和存储芯片分别有多少根指信号线,多根数据信号线,是吧?这是非常关键的一件事。第一步我利用存储芯片的这个计算公式,写出IM乘以N这样的一个芯片的一个总数量的一个乘法公式是吧?乘法公式以后,然后再用这个小表格安行三列的,如果不看见,就应该是NN好三点。因为你这里是只有一个存储器,一个存储形象是吧?就只能描述一个存储器。实际上我们在实际设计过程中把复杂一点,总共存储器里面我会使用多种存储芯片来拼接?
OK考试画这张图怎么样?画上面的图是不是会把你们手画废了,是吧?要画成这样。结果考试的时候。既不长这样也不长这样。然后我们说第二种这种方案。为什么我说既不长上面那样,也不长下面那样呢?第一大家是麻烦,没有人画这个麻烦的图是吧?既然我说不长这样的原因在哪呢?
很多人在画图的时候就画一个方框框没了你看我这话是不是有地址信号的输入,是吧?根据信号限制,这应该对信号是一个单向单方向的,有向箭头,数据线是双方向的信箭头,还有片子信号、读写控制信号,对吧?你说考试的时候这些你都不过标,永远不要就画一个方框框。你说考试我能给你分吗?考试的时候,所以现在我你看我前两天还说说有些同学,我会发现每次说都是白。来的同学该记的都记了,不来的同学考试的时候还是不会记,是吧?那只能就看他的水平了?
也就是说这张图。我们用方图可以代表上图,但是通过画一个方框框这事就算完了。你要考试大家可以想一想,你要换做你就给我画一个框,画一个方框框,然后旁边什么信号都不什么信息都不标注。你说这道题,老师我某某题做对了,我也画了,怎么不给我分,对吧?你想你这些信息都不标注,我能给你分吗?对不对?这不光是在座的各位,我觉得今天过来说平时坚持上课的同学都不会犯这样的错误。不来的同学和我们每年408集体阅卷的时候所看到的你考不上都是原因的对吧?
同样一件事为什么画墙了?那对这道对这张图大家可以记住,我们要求我们用方框框表示存储芯片没问题。但是在这个存储芯片中,你应该要注意几个标注。
一个是存储芯片的容量,比如说我的64K乘1,你要做标准对吧?64K乘一坐标。第二地质信号线片向信号线WEC或者是什么R杠WC这样的读写控制情况已经做过了,还有数据线交。
跟我们传统最终的不一样的标准,就大概就是我们画的粗箭头。考生你去画没必要,我们可以把这种粗箭头画成,用这个红颜色标注?细线头你比如你画把这个翻过来画成细的氮气的箭头就可以了。像这个要画成气的双向线,就是我们画的要。
好,大家可以看一下我这张图。给出了这八个芯片的设计,大家可以看一下,是不是我设计成一行八列,是吧?一行八列。大家看一下,我每一个芯片做了标注。当然我们说你这一行发力是八个芯片,你都画没必要。那么像我们这个图还可以再简化,怎么简化呢?我把这个就是我画了三个芯片是吧?你也会画成两个芯片,就画一头一尾。
你看这个芯片它的数据广角是D0?这个芯片是第七就第六的,这个可以去掉是吧?而这大家可以看一下,这这个我可以这个我可以去掉,但是你发现我每个芯片的容量,我是不是做了标注都是64K乘1。
上面大家看一下,这是这几个芯片,它的这是第零,这是第七。上面的这根线是第0到17,这项的总的数无限是吧?然后读写在这个上面16分是A0到A15是吧?这个我刚刚我说了可以画细线,单是单位下来,这是双向曲线的这是单向线。然后CS非片选信号线进入到每一个芯片上,然后是写读写好写,同时信号就是right enable是吧?就那个OK。
大家看,当CU访问该存储器时,发出的地址信号线和控制信号线同时传给发的芯片,选中每一个芯片的同一个单元格。其单元内容同时被读出或写入。这是我的第一种所谓的胃扩张。
还一种我们称为自扩展。自扩展就是在自主方向进行扩展,就是为什么不变?大家可以看一下,我们自刚才我们未扩展是所有的都是并联,对吧?除了数据线之外,所有的并联而自扩展,大家看一下它区别在哪。自扩展中的地址线数据线读写控制线并联什么单独拿出来的是什么片?你选信号线,就刚才的CSC要拿出来对吧?比如说这里我用16K乘8的S是不能64K乘8的存储器。咱们看一下,我还是用这个计算公式给大家写一写。
我们这里是64乘8去除以16K乘8,这是六十六,这是八,除下来是变成了4乘以1,这怎么理解呢?4乘1就是四行一列。四行一列。
那么有了这个之后,紧接着我要画一个刚才的我们那个表是吧?对,现在就是两行三个表,分别描述一下存储器它的地址信号线的条数、数据信号线的条数,存储芯片的地址信号线条数和数据信号线的条数。我们把这个给它给出来。大家发现自扩展它的区别,刚才我未扩展是不是数据信号线数量不一样,而地址信号而我的自扩展是我的地址信号线不一样,是吧?大家可以看一下,我的存储器给你16根地址信号,存储芯片只给你14根不一样。不一样是吧,不一样的,那多出来了两根。干什么去?多去多穿的了,都干什么去琢磨。
好,当然这张图是不规范的?按照我的要求肯定是不行的,事实上我们给出了最终的设计方案。大家看一下这。四个芯片是不是构成了一个四行八列的心这个举证四行八列的举证。按照咱们刚才的设计方式,同一行上我进行未扩展,不同行我进行自扩展,这是我们的规矩是吧?大家可以看一下这张图,大家看一下,我再强调每个芯片你的你都要标注它的容量,16K乘8是吧?为什么?因为这道题比较简单,我就是相同容量的芯片。
真的在考试时候,比如咱们做课后练习的时候,你会发现芯片就存储器设计过程中,我选用的芯片容量都有差别,不是唯一的是吧?那么大家看,首先我做了每一个芯片容量的标注,然后大家看一下刚才我们说的这八这四个芯片的地址信号线数地址信号线、数据信号线都是并联。大家看一下数据信号线是不是说都是第一到第七是吧?那么每一个芯片A到A13 14根电线信号线就直连了。
当然我们说了我的存储芯片存储器是16个地质信号下,那么高位A15A14接入一个24译码器的输入端,24译码器的输出端有四个输出,分别接CS0、CCS1、KCS2、CC3飞显示。我的这个存储器发出的高倍率多于存储芯片用到的多余的部分,接入一个译码器,接入译码器完成片选信号的选择。也就是说原来我进行未扩展的时候,我发出去的地址,所有在同一行上所有项目同时都被选中。而我进行自扩展的时候,由于这两位弟子在任意时刻只有一个片信号有效,是吧?因此。只有特定芯片上的某一个单元类型是吧?就没有片信号线。
我发出这个A0到A13,是不是这四个芯片上对应单元都就对应单元都被选中了,但是再给他加了一片隐形方法,这里面又不清楚OK,只有说这存储单元里面它的地信号线有效,它的片段信号线有效,两个同时有效以后,对应的评审单元才被选中。否则不能操作OK。那么我们在这讨论的单独讨论的是什么?未扩展和自扩展。下面咱们看一下每个芯片他的地址分配,这个我就再不啰嗦了。真实的情况下,我们在实际的工程实践过程中和我们实际的考试过程中,我们同时要求大家掌握自卫,同时扩展。就在设计我们一个容量比较大的空气时,我要完成自卫的同时扩展。此时大家注意一下,我们一开始我在黑板上写的计算公式就发充分发挥它的作用了。比如说这里的我们用60用16K乘4的芯片构成一个64K乘8的存储器。那么咱们一起来看一下是吧?
还是这个公式,存储器的容量是64乘8,存储芯片16K乘4。前面是64除以16,后面是8除以4,就变成了4乘以2。也就是说对于自卫同时扩展的时候,我们利用我们芯片的计算公式给出这样的一个举证。
他描述什么?我进行自卫扩展的时候,我要设计成四行两列的芯片,设置同一行为扩展,不同行自扩展。也说这个计算公式你要这么用,那就OK了,这是第一步是吧?我知道这芯片应该把它设成四行两列的占比芯片设计。第二个它的信号线我们用这张表给出。大家可以看一下,此时我的存储器是16根地址线,八根数据线,存储芯片是14根地址线线四根数据线。
Ok有了这些东西之后,我可以快速的画出我们的存储器的设计图。而第五章我们要求写这些东西或做一些必要的计算之后,我们最终要以画图画出这张图为准。大家看一下这张图是不是我八个芯片设计成四行两列的芯片矩阵?相同一行的两个芯片是未扩展,不同行是自扩展,这就是自卫混合扩展。大家看一下,此时他的数据信号线单独来画,地质信号线要单独量化?还是我们用的是第一位A0到A13直接接芯片,高位A14A15通过一个21码器去接什么?
同一行上的所有芯片,你看这ACS0飞接了第一行的两个芯片,那么我们说大家注意下四行八列,我片选信号在选空的时候,是这个片选信号同时命中该行上的若干个形象。因为它是一个什么未扩展,同一行上的新的是未扩展片取信号是什么并联。自扩展现场信号是单独去分离掉。这张图。这张图也是一张非常关键的。
讲到现在咱们计算机组织及结构的大题,大家可以想一下。我基本上都弄差不多了。按照期末考试的要求,我是五五开,50分填空选择基本概念小的计算,还有50分的是大气。第三章是吧?纸类系统的设计问题,有效地址的计算机,这第三章第四章咱们刚交作业,二进制的乘除法。第五章存储器设计?每年都是这些东西。
我们一句话,我们没有按照408考试的要求去要求大家,我真要求估计你们会造反,对吧?但是。但是我们有要求,除了我考勤我不太关注。我的说法是秋后算账你不来,但是考试能过了,我也不为难你。但是考试不过你也不来,那没办法是吧?这个你找谁说这么一个从头发好,第五章的最主要的内容我们就讲完了。
但是我们还留了一个小尾巴,就是有关讨论片选信号线的问题。片段信号线,我们在讲未扩展、自扩展、自卫混合扩展的情况。在这三种情况下,事实上我们选举这些都是恰到好处。
就是存储器的所有的地址信号讲,我通通都已经用上了。是不是?说说比如说我存储器是16位地址信号线的输入,那么每个芯片我最多是14根,剩下的两个高又做了片区。但是在真实的设计环境中有可能我给你的存储器的地址信号线为主比较多。比如20位地址,而存储芯片只有14根,我多出来。就是高位的地质情况下,我怎么进行处理?事实上就是我们下面这一节要讨论的问题,这一节也是比较关键是吧?
那么大家一定要明确,从我们之前的讨论过程中,我们发现我的片选信号线是来自于CPU发出的地址信号的高位部分。我发出的高位部分?低位部分我没有做这定位部分主要用于片内地址,就明信片内的地址是吧?
我们这里就重点讨论片选信号的一个设计方案。我们教科书上给出了三种设计方案,限权法、权益码法和部分码法。在这儿我们就在这里说的很清楚了,片段信号来自于高位地址是吧?在这还有大前提,比如说我CPU发出的是20位地址。或者更多,比如再多三四个月都行。而我的芯片只需要14根或者12根,随便就是说白了我的存储器。这个就CPU发射地址信号远多于存储器的需要量。在这个前提下我们进行讨论。
大家听清楚,就是我的CPU发射地址信号线远多于我进行存储器设计所需要实际对第二在这个条在这个前提下我们进行一个讨论,我们分别称为线权法、码法和部分密码。法线权法大家看一下,就除了用于片内寻址的低位地址,高位进行片选信号,大家可以看一下,比如说这里我给了是二,就是CPU发出了20位地铁信号线,而我存储芯片只需要11分钟,那么我们多出来会多出来若干个是吧?A11到A19都多出来了。那么对于骗权法,大家可以看一下,我们这里就是我们这个假定我们这里这存储器进行什么自扩进行自扩扩充容量是吧?
它怎么去做呢?它有四个芯片,它对应的是一号芯片,它偏用了接A11这个地理情况下,这是零号一号芯片接A12,二号芯片接A13,三号芯片接A14。大家注意一下,它是用高位地址直连芯片的,也就是说因为我们A11到A14是16米幢2的4次方16种状态。但是大家发现如果这一片款证去接的话,我只有因为我要保证任意时刻只有一个是吧?因此就16种状态,只能有4种是合法状态,剩下都是非法。哪4种呢?我会在这里列出来,1110110110110111生涯状态都是非法状态。
那我说这个是有什么作用呢?这个和后面地址拼接会得到什么样的结果呢?每一个芯片每一个具体芯片,它对应的地理范围是不连续的现象。有最大的一个特点就是说我对应的芯片的地址取值范围不连续。这种方案尽管是解决了我的片选信号的设备问题,但是由于片源信号不连续是造成不久在使用存储器的时候是很不方便的对吧?因为我们联系到了连续的存空间,我才方便我进行数据操作。你不连续的时候我处理特别麻烦是吧?这一块是这种所谓的限权法。
第二个我们称为权益麻烦。那具体是说除了用于片内寻址的低位数据线之外,其他全部高位地址线作为地址译码器的输入。通过地址译码器输出以后,作为芯片的骗一点信号。刚才就以刚才什么意思,我给你20根地址线,刚才我只用了11根分开的地。这样一种情况下,利用权益麻烦过程去做,大家可以看一下。
我怎么做呢?我要传一码法,事实上我只需要13公里的信号线,而A13到A19如果是权益码法的话,我必须指定他的是零还是1。那么大家看一下,我A13到A19我全为零,就相当于我把这几个拐角,七个拐角我直接接就全变成这个机电器。当然你说我全把它接接一个电源,跟政府信息建立高等级权威医院联系。
当然你说权益麻烦最大的特点,我存储CPU发出多少根地址线,我把每根地址线怎么用都要安排明白,这就是权益麻烦那部分。一麻烦就是说A13到A19我不管了,你爱是谁就是谁,是吧?这就是权益麻烦和部分不麻烦。
由于时间关系,我们这部分内容我只能放到下一次,再给他发个施工时间讲一讲。咱们第五章的作业就可以做了,是吧?可能有个别场景有一道题可能你跟这有关系,大家可以先看一看。当然我们下次再不交作业了,是吧?大家都等我一下,好下课。
我和那个就是机房签订医疗期的继承协议。29日,对,就高高的挺高的,高度挺高。就如果说这个他最后是不是的明天的。数据的。转移。
解决这个程序的变更。下面。下面。公诉人。
正确的是上楼已经完成上楼路线通常需要两个数据。第一个是错的是吧?因为逻辑上你是单独的一个操作,通常把两个操作数左移左右,这个应该会,这个是不是。授权权利通常是。
转转就转移给的只能是总共为有。
谁好像错了,是对的,还错那医生说都是说地税。因为这个说白了转移和指定的交易这个关于子澄讲说白了我们这个相当于是一个诉讼。这片证明这个通用文件可以复印操作,他不是应该是不是就转了这个PC然后开始调用的子程序。就转移指令解决调用次序,这是没有问题。但是指针调用法规,这是这个是相当于我调用的共享模块去解决调调用的次序是不对的。就是说你把这个转移协议审定不行,但是执行教育的法律责任条件不去。对他那个东西去调用的时候,他是先给了一个转移成转移过去之后,他还会再有一个返回去。转移指令是转移指灯是灯笼重开的,转移指的是转移指令,我转移指令比如沟通一句,这个嘴唇焦虑就一般靠AAA相当是一个真正的路。