计算机组成原理实验仪的cache接口设计_第1页
计算机组成原理实验仪的cache接口设计_第2页
计算机组成原理实验仪的cache接口设计_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理实验仪的cache接口设计

在传统的计算机组成原理课程中,主储存器的阅读和扩展实验通常只开放。而对于Cache的组成和工作过程,一般只着重于原理性的授课,然而由于Cache的地址映射较为抽象,学生在准确理解上问题较多,因此,设置Cache实验成为必要。在传统计算机组成原理实验仪上,通过添加和改进电路,可以开设Cache实验。论文就在添加了Cache后,如何实现主存与Cache的接口设计作了讨论。1cache的添加实验所涉及的组成原理实验仪属于开放式、单元化结构,这为开设Cache实验而进行改进提供可能性。实验仪包括很多独立的单元(UNIT),单元之间可以通过排线相连。用于实验的主存储器即是一个独立的单元,主存容量为256×8位(一片6116构成)。实验仪为8位机器,系统总线8位(B7~B0),数据总线(D7~D0)和地址总线(A7~A0)复用。总线上挂有一个存储器地址寄存器MAR单元,用于从总线上接收和保存存储器的8位地址,而存储器的8位数据线则直接挂到总线。在添加了Cache后,系统结构如图1所示。图中,存储器与CPU交换一个数据的周期是四个时钟周期T1~T4,而Cache与CPU交换一个数据的周期是两个时钟周期T1~T2。Cache容量16B,每行2B,采用2路组相联地址映射,写策略采用写贯穿法(Write-through),替换算法采用LRU算法。MAR的地址同时提供给主存储器单元和Cache,Cache的地址映射机构则根据主存地址和CPU读写信号WE#,返回读命中信号RH、读不命中信号RNH、写命中信号WH、写不命中信号WNH,均为高电平有效。当读命中时,由Cache将8位数据送总线;当读不命中时,由主存将8位数据送总线,同时,主存读出的16位数据装入Cache的行。当写命中时,总线上的8位数据同时写入主存和Cache(写贯穿);当写不命中时,只写主存,不写Cache。2基于cache的已发业务分析为增加主存与Cache之间的带宽,实验在一片6116存储器的基础上,添加一片6116SRAM、两个总线收发器和若干门电路,这些电路可以通过面包板搭建,也可以通过CPLD器件实现,在此不做讨论。图2给出了主存储器的结构和接口电路。6116存储器芯片共有11根地址线和8根数据线,但是由于实验仪的主存容量只有256×8位,因此我们将两片6116进行位并联连接,形成128×16位的主存格局。为此,两片6116只使用7根地址线,并接自外部地址线A7~A1(由MAR提供)。外部地址线A0用于生成两个信号:高字节使能BEH#和低字节使能BEL#,其逻辑表达式为:由图上可以看出,BEH#和BEL#既参与两片6116的片选译码,又决定了三态总线收发器的收发和开关。因此,两片6116是以两体交叉的编址方式来组织的。6116的片选信号CS#和写使能信号WE#,分别由CPU的片选使能CE#和读写信号WE#引入,6116的高位地址线A10~A7和输出使能OE#则接地。首先分析工作时的数据通路:(1)在Cache读命中时,直接从Cache的“字节数据”端口读出8位数据到外部数据总线D7~D0(实验时连至系统总线B7~B0)。(2)当Cache读未命中时,则从两片6116读出16位数据,一面通过Cache的高低字节数据端口装入Cache的某一行,另一面通过对应的总线收发器输出所要访问的8位数据到外部数据总线。(3)当发生写操作时,由于采用写贯穿策略,所以无论是否命中Cache,都要写主存,因此,必须控制对应的收发器,接收数据总线上要写入的8位数据。同时,为保证准确写入高字节(A0=1)或者低字节(A0=0),务必使得两片6116中只有相应的一片的片选有效。另外,当Cache写命中时,还要通过Cache的“字节数据”端口向Cache写入数据。由以上分析,可以得出两片6116的片选CS1#和CS0#的真值表,如表1。由此推导出逻辑表达式:对于高低字节总线收发器,发送(相对于主存)控制端CDTOB1#(高字节)、CDTOB0#(低字节)只在Cache读操作不命中时有效,其真值表如表2所示。对照真值表,控制信号CDTOB1#、CDTOB0#的逻辑表达式为:相对于发送控制而言,接收控制端CBTOD1#、CBTOD0#则在写操作时有效,而无论Cache是否命中。其真值表如表3所示。同理,得出控制信号CBTOD1#、CBTOD0#的逻辑表达式为:在这里,总线收发器可以采用某种双向三态缓冲器,例如74LS245等等,此时要根据芯片的具体情况,相应的控制信号可以直接由CDTOB1#、CDTOB0#、CBTOD1#、CBTOD0#通过组合电路产生,在此不再赘述。3监控主机的平均速度分析为配合Cache的设置,对主存进行上述的改造和接口设计之后,使得Cache能够在读访问不命中时,以原来2倍的数据总线宽度与存储器交换数据。因此,在保证Cache自身的高速访问的基础上,又进一步提高了CPU访问主存的平均访问速度。本文以体现程序访问的局部性原理的循环程序为例,分析CPU访问主存的平均速度。设时钟周期的宽度为T,CPU的循环程序顺序访问主存的m个连续地址单元,循环执行n遍,若m=10,n=5,则:(1)当系统不设置Cache时,CPU访问的总时间(2)当系统设置Cache后,CPU访问的总时间(3)当系统设置Cache并对主存作以上改进后,CPU访问的总时间表4列出了m和n发生变化时,三

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论