计算机组成原理相联存储器的设计.docx

上传人:b****1 文档编号:2424461 上传时间:2022-10-29 格式:DOCX 页数:19 大小:317.97KB
下载 相关 举报
计算机组成原理相联存储器的设计.docx_第1页
第1页 / 共19页
计算机组成原理相联存储器的设计.docx_第2页
第2页 / 共19页
计算机组成原理相联存储器的设计.docx_第3页
第3页 / 共19页
计算机组成原理相联存储器的设计.docx_第4页
第4页 / 共19页
计算机组成原理相联存储器的设计.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

计算机组成原理相联存储器的设计.docx

《计算机组成原理相联存储器的设计.docx》由会员分享,可在线阅读,更多相关《计算机组成原理相联存储器的设计.docx(19页珍藏版)》请在冰豆网上搜索。

计算机组成原理相联存储器的设计.docx

计算机组成原理相联存储器的设计

目录

第1章总体设计方案2

1.1设计原理2

1.2设计思路3

1.3设计环境4

第2章详细设计方案5

2.1顶层方案图的设计与实现5

2.1.1创建顶层图形设计文件5

2.1.2器件的选择与引脚锁定5

2.1.3编译、综合、适配6

2.2功能模块的设计与实现7

2.2.1输入寄存器的实现7

2.2.2存储体的设计与实现8

2.2.3数字比较器的实现10

2.2.4查找结果寄存器的实现12

2.3仿真调试13

第3章编程下载与硬件测试15

3.1编程下载15

3.2硬件测试及结果分析15

参考文献17

附录(电路原理图)18

第1章总体设计方案

1.1设计原理

相联存储器(ContentAddressedMemory),它是一种按内容访问的存储器,可以根据数据记录地一部分内容查找其它部分的内容。

在相联存储器中,每个存储的数据记录都是固定长度的字,每个字由若干字段组成,每个字段描述了用一个对象的属性,也称一个内容。

相联存储器的结构框图如图1.1所示。

输入寄存器(CR)

...

数字比较器

...

查找结果寄存器(SRR)

译码选择电路

存储体

图1.1相联存储器原理框图

 

它主要实现将输入寄存器(CR)的信息与存储体的信息作比较,相匹配的置为“1”,不匹配的置为“0”,将结果送入查找结果寄存器(SRR)中,并输出结果。

1.2设计思路

根据相联存储器的原理特点,即按照内容寻址,因此可以将相联存储器分为以下几个部分:

输入寄存器,译码选择电路,存储体,数字比较器,查找结果寄存器。

输入寄存器(CR):

用来存放检索字,其位数和相联存储器的字长相等。

译码选择电路:

用3-8译码器进行译码电路选择,如当置输入端B2B1B0为“000”,时钟脉冲信号为高电位时,可以向存储体第一个单元地址输入八位二进制的字信息,同时其他的存储单元的信息被屏蔽掉。

当置输入端B2B1B0为“001”时,时钟信号为高电位时,可以向存储体第二个单元地址输入八位二进制的字信息,同时其他的存储信号单元被屏蔽掉。

存储体(AMU):

用于存放待检索的数据,由八个八位二进制存器构成,以便快速存取。

数字比较器:

将检索的内容和从存储体中读出的所有单元内容的相应位进行比较,如果有某个存储单元的信息和检索项一致,就把符合寄存器的相应位置“1”,表示该字匹配 ;否则置“0”,表示不匹配。

查找结果寄存器(SRR):

用来存放待检索项与存储体的信息中相符合的单元的寄存器地址,其位数等于相联存储器的存储单元总数,每一位对应一个存储单元,位的序列数即为相联存储器的单元地址。

 

  设存储体由8个字构成,字长为8位的二进制数。

CR为比较寄存器,字长也为8位,存放要比较的两个数。

首先向输入寄存器输入一个八位二进制的字,然后通过3—8译码器选择电路依次将八个八位二进制数输入到存储体中。

将输入到输入寄存器的字通过比较寄存器分别与存储体里的八个字检索比较,若匹配,则输出信号置1,否则置0。

匹配信号通过查找结果寄存器(SRR)输出,我们就能找到匹配的那个字。

若存储体八个单元存储的数据分别为0000000、00000001、00000010、00000011、00000100、00000101、00000110,00000111,输入寄存器中的存储数据是00000011,通过比较器CR进行比较之后,可以知道发现检索数据与存储体中的第四个单元的内容一致,所以结果查找寄存器SRR中的第四个单元置为“1”,其余的置“0”,则匹配结果输出为:

00001000。

1.3设计环境

·硬件环境:

伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机。

·EDA环境:

Xilinxfoundationf3.1设计软件、COP2000仿真软件。

图1.2Xilinxfoundationf3.1设计平台

图1.3COP2000计算机组成原理集成调试软件

第2章详细设计方案

2.1顶层方案图的设计与实现

该设计方案采用自上而下的设计方法,顶层设计使用原理图设计输入方式,以此实现相联存储器相关的逻辑功能,在XCV200可编程逻辑芯片上实现电路。

在Xilinxfoundationf3.1开发环境上设计好电路图,把输入/输出信号分别定位到XCV200芯片指定的引脚上,完成芯片的引脚的锁定。

2.1.1创建顶层图形设计文件

构成顶层图形文件的元器件如下表2.1

表2.1元器件

元器件类型

使用元器件数目

FD8CE

10

3_8译码器

1

COMP8

8

输入端口

20

输出端口

8

VCC

3

GND

1

总线及导线

若干

由上述元器件封装而成一个完整的设计实体。

该方案在Xilinxfoundationf3.1软件环境下进行软件的设计,实现顶层图形文件。

2.1.2器件的选择与引脚锁定

(1)器件的选择

由于所提供的硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,因此采用的目标芯片为XilinxXCV200可编程逻辑芯片。

(2)引脚锁定

根据引脚分配表,把顶层图形文件中的输入/输出信号依次安排到XilinxXCV200芯片指定的引脚上,实现芯片的引脚锁定,各信号及XilinxXCV200芯片引脚对应关系如表2.1所示。

表2.2信号和芯片引脚对应关系

相联存储器内部信号

XCV200芯片引脚

IBUS0

P103

IBUS1

P102

IBUS2

P101

IBUS3

P100

IBUS4

P97

IBUS5

P96

IBUS6

P95

IBUS7

P94

B0

P73

B1

P72

B2

P71

AMBUS0

P87

AMBUS1

P86

AMBUS2

P85

AMBUS3

P84

AMBUS4

P82

AMBUS5

P81

AMBUS6

P80

AMBUS7

P79

CLOCK

P213

OBUS0

P110

OBUS1

P111

OBUS2

P203

OBUS3

P185

OBUS4

P184

OBUS5

P178

OBUS6

P152

OBUS7

P147

2.1.3编译、综合、适配

利用Xilinxfoundationf3.1设计软件对顶层图形文件进行编译,并尽量调整各器件和线的位置使其合理美观,连接完毕后进行仿真,待仿真成功后编译文件,编译成功后即可将文件下载到芯片中。

2.2功能模块的设计与实现

本相联存储器是由输入寄存器,选择比较电路,比较寄存器,存储体,查找结果寄存器组成的,设有20个输入端口和8个输出端口实现其输入和输出。

各部分元件均分别单独实现功能并仿真成功之后,再将各部分模块进行连接,经整体整合仿真成功后,完成了所需电路实体。

2.2.1输入寄存器的实现

输入寄存器是用一个元器件FD8CE组成。

FD8CE的字长为八位,用于存放检索数据,本方案用一个8位的D触发器来组成FD8CE。

(1)输入寄存器的结构图如下图2.1所示

图2.1输入寄存器图模块

(2)FD8CE的实现

一个FD8CE是使用八个1位D触发器构成的,每个1位D触发器存储一个二进制数,电路图如下图2.2所示

图2.2八位输入寄存器内部结构图

2.2.2存储体的设计与实现

该存储体一共由8个寄存器(FD8CE)组成,每个寄存器的字长为8位。

利用3—8译码器的输出端分别控制8个寄存器的CE使能端,使之可以分别对每一个存储器进行写入操作。

例如:

3—8译码器输入端B0,B1,B2为010时,其输出端D2输出为“1”,使得与D2端相连的寄存器的使能端为“1”,并且CLK信号为高电位时,即可将数据总线AMBUS7~AMBUS0的数据输入到该寄存器中。

如此可以最终实现对8个寄存器的分别写入操作。

(1)存储体的电路图如下图2.3所示

图2.3存储体及译码电路结构图

(2)实现方法

利用3—8译码器的输入端B0B1B2分别控制每一个寄存器的CE使能端及时钟脉冲端产生的脉冲信号实现对八个存储单元的信息输入。

将译码器的八个输出端分别与八个寄存器的使能端相连,实现逐个信息输入。

(3)功能仿真

对存储体的输入输出进行仿真,能够实现上述功能。

仿真图如图2.4所示。

其中总线SHU[7:

0]是输入寄存器的检索信息,总线Q0[7:

0]-Q7[7:

0]分别代表存储体的从上到下的八个寄存器存储的数据。

图2.4存储体输入仿真图

2.2.3数字比较器的实现

当检索内容与待检测内容分别写入到输入寄存器与存储体以后,需要通过比较寄存器把检索数据与存储体中每一个存储单元中的数据进行匹配比较,如果发现其某个存储单元中的数据和检索数据完全一致,就把符合寄存器的相应位置“1”,表示其该数据即为想要检索的数据,否则置“0”,表示存储体中没有符合匹配要求的数据。

(1)COMP8的实现

数字比较器使用8个COMP8组成的,COMP8的功能是实现1个八位二进制数的比较。

COMP8的电路图如下图2.5所示。

图2.5数字比较器元件图

COMP8的内部结构图如下图2.6所示。

其中总线A[7:

0]是用来传输检索信息,总线B[7:

0]是用来传送存储体的待检索信息的,EQ端是用来输出比较结果,当检索信息和带检索信息相同时EQ端置“1”,否则置“0”。

图2.6数字比较器的内部实现

(2)数字比较器的实现

比较模块的部件主要用数据比较器来实现,存储体中有8个寄存器,所以比较器也相应的需要8个,字位数也是8位。

匹配比较的结果将其输出到结果查找寄存器中。

比较线路的实现方法是:

先将输入寄存器的输出总线与8个比较器的输入总线相连接,存储体中的8个寄存器的输出总线与8个比较器另一个输入总线相连接。

此时随着脉冲信号的连续进行,存储体内每输入一个存储单元,就将其接到一个比较器的另一端与输入寄存器中的数据进行比较,相同时置“1”,不同时置“0”。

直至将所有存储单元都比较完为止。

数字比较器的电路如下图所示,其中总线Q0[7:

0]~Q7[7:

0]是存储体的数据总线,总线SHU[7:

0]是输入寄存器的数据总线,总线D[7:

0]是比较结果输出总线。

图2.7数字比较器逻辑模块图、

2.2.4查找结果寄存器的实现

查找结果寄存器同样由一个8位寄存器来实现,与输入寄存器原理一样。

输入总线与数字比较器输出结果总线相连接,用来存放比较后得到的匹配信息。

(1)查找寄存器与输入寄存器的元器件一样都是FD8CE,结构图如下图2.8所示

图2.8查找结果寄存器图

(2)FD8CE的结构图如下图2.9所示

图2.9查找结果寄存器图结构图

2.3仿真调试

仿真调试主要用来验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。

(1)建立仿真波形文件及仿真信号选择

在进行功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数,当脉冲遇到上升沿时选定的仿真信号和设置的参数如表2.3所示。

表2.3仿真信号选择和参数设置

输入信号

输出信号

IBUS

AMBUS

B2

B1

B0

CLK

OBUS

3

0

0

0

0

1

FF

3

1

0

0

1

1

00000000

3

2

0

1

0

1

00000000

3

3

0

1

1

1

0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 城乡园林规划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1