计算机组成原理课程设计相联存储器的设计.docx
- 文档编号:30205354
- 上传时间:2023-08-07
- 格式:DOCX
- 页数:18
- 大小:1.78MB
计算机组成原理课程设计相联存储器的设计.docx
《计算机组成原理课程设计相联存储器的设计.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计相联存储器的设计.docx(18页珍藏版)》请在冰豆网上搜索。
计算机组成原理课程设计相联存储器的设计
沈阳航空航天大学
课程设计报告
课程设计名称:
计算机组成原理课程设计
课程设计题目:
相联存储器的设计与实现
院(系):
计算机学院
专业:
物联网技术方向
班级:
物联1305
学号:
姓名:
指导教师:
完成日期:
2016年1月15日
第1章总体设计方案1
设计原理1
设计思路2
设计环境3
第2章详细设计方案5
总体方案的设计与实现5
创建顶层图形设计文件5
器件的选择与引脚锁定5
功能模块的设计与实现8
检索寄存器的设计与实现8
屏蔽寄存器的设计与实现8
存储体的设计与实现9
比较器的设计与实现10
与门芯片的设计与实现11
第3章程序调试与结果测试12
程序调试12
程序测试及结果分析12
参考文献附录(源代码)15
第1章总体设计方案
1.1设计原理
相联存储器不按地址寻址而按照内容寻址,相联存储器由检索寄存器CR、屏蔽寄存器MR、存储体和结果寄存器SRR构成。
设存储器有8个字,8位,则CR与MR为1字8位,将要检索的内容输入到检索寄存器CR中,用屏蔽寄存器MR屏蔽掉存储体中不参与比较的位数,其余比较位不变,将这个结果与检索寄存器比较,将结果送入结果寄存器保存,根据结果寄存器的数据可以得到符合检索寄存器的数据所在的存储区域,原理如图1。
图1相联存储器原理图
1.2设计思路
检索寄存器(CR):
存放要检索的数据,位数与存储器字长一致。
屏蔽寄存器(MR):
与CR配合使用,检索位置为1,其余不参与比较的位设为0,位数与存储体字长一致,与存储体里的数据相与,得到的结果送入结果寄存器保存。
存储体:
由3-8译码器选择地址输入数据,是8乘8的结构。
结果寄存器:
存放检索寄存器和屏蔽寄存器相与的结果。
若存储体存的八个存储单元分别存着数据为:
00100110、、、、01100010、、00101001,CR中存储的数据为00010100,MR存的数据是00011100,经过比较可以发现第三个和第五个存储单元符合CR,所以输出00101000,见图2。
XXX101XXCR
00011100MR
SRR
图2相联存储器工作原理图
1.3设计环境
硬件环境:
伟福COP2000型计算机组成原理试验仪、XCV200实验板、XP系统计算机。
COP2000计算机组成原理实验系统由实验平台、开关电源、软件三大部分组成,试验台上有寄存器组R0-R3、运算单元、累加器A、暂存器B、直通/左移/右移单元、地址寄存器、程序计数器、堆栈、中断源、输入/输出单元、存储单元、微地址寄存器、指令寄存器、微程序寄存器、组合逻辑控制器、扩展座、总线插孔区、微动开关/指示灯、逻辑笔、脉冲源、20个按键、字符式LCD、
RS232口,如图3。
图3COP2000计算机组成原理集成调试软件
EDA环境:
Xilinxfoundation设计软件、COP2000仿真软件。
Xilinxfoundation是Xinlinx公司的可编程器件开发工具,该平台功能强大,主要用于百万逻辑门的设计。
该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。
设计入口工具包括原理图编辑器、有限状态机编辑器、硬件描述语言(HDL)编辑器、LogiBLOX模块生成器、Xilinx内核生成器等软件。
其功能是:
接收各种图形或文字的设计输入,并最终生成网络表文件。
设计实现工具包括流程引擎、限制编辑器、基片规划器、FPGA编辑器、FPGA写入器等软件。
实际实现工具用于将网络表转化成配置比特流,并下载到器件。
设计验证工具包括功能和时序仿真器、静态时序分析器等,可用来对设计中的逻辑关系及输出结果进行验证,并详尽分析各个时序限制的满足情况,如图4.
图4Xilinxfoundation设计平台
第2章详细设计方案
总体方案的设计与实现
本设计方案以原理图输入凡事设计出顶层方案图,以此实现相联存储器相关的逻辑功能,在XCV2000可编程逻辑芯片上实现电路。
在Xilinxfoundation开发环境上设计好电路图,把输入/输出信号分别定位到XCV2000芯片指定的引脚上,完成芯片的引脚锁定。
创建顶层图形设计文件
根据相联存储器的相关功能,顶层设计文件由以下器件组成:
11个D触发器(FD8CE),1个3-8译码器(D3-8E),8个比较器(COMP8),30个输入端口和8个输出端口封装而成的一个完整的设计实体。
该方案在Xilinxfoundation软件环境下进行软件的设计,实现顶层图形文件。
器件的选择与引脚锁定
器件的选择:
由于提供的硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,因此采用目标芯片为XilinxXCV200可编程逻辑芯片。
3-8译码器芯片如图5所示,功能表见表1。
图53-8译码器芯片
表13-8译码器功能表
A0A1A2
E
D7D6D5D4D3D2D1D0
000
1
00000001
001
1
00000010
010
1
00000100
011
1
00001000
100
1
00010000
101
1
00100000
110
1
01000000
111
1
10000000
XXX
0
00000000
FD8CE触发器如图6所示,功能表见表2。
图6FD8CE触发器芯片
表2FD8CE触发器功能表
CE
CP
CLR
Q[7:
0]
1
上升沿
0
Q[7:
0]=D[7:
0]
0
上升沿
0
不变
X
X
1
Q[7:
0]=00H
比较器芯片COMP8如图7功能表见表3。
图7比较器芯片COMP8
表3比较器COPM8功能表
A[7:
0]=B[7:
0]
EQ=1
A[7:
0]!
=B[7:
0]
EQ=0
引脚锁定:
根据引脚分配表,把顶层图形文件中的输入/输出信号依次安排到XilinxXCV200芯片指定的因脚伤,实现芯片的引脚锁定,各信号及XilinxXCV200芯片引脚对应关系如表4。
表4芯片引脚对应图
相联存储器内部信号
XCV芯片引脚
相联存储器内部信号
XCV芯片引脚
I50
P33
I4
P213
I51
P34
I0
P79
I52
P35
I1
P80
I53
P36
I2
P81
I54
P38
I3
P146
I55
P39
I8
P103
I56
P40
O10
P147
I57
P41
O11
P152
I60
P56
O12
P178
I61
P55
O13
P184
I62
P54
O14
P185
I63
P53
O15
P203
I64
P50
O16
P111
I65
P49
O17
P110
I66
P48
I72
P65
I67
P47
I73
P66
I70
P63
I74
P73
I71
P64
功能模块的设计与实现
本相联存储器是由检索寄存器、屏蔽寄存器、存储体、结果寄存器组成,各部分元件均分别单独实现功能并仿真成功之后再将各部分模块进行连接,经整体整合仿真成功后,完成了所需的电路实体。
检索寄存器的设计与实现
功能描述:
检索寄存器的字长为8位,用于存放要检索的数据,本方案采用一个8位的D触发器实现,如图8。
图8检索寄存器电路图
屏蔽寄存器的设计与实现
屏蔽寄存器字长与存储器字长一致8位,它的作用是将不参与比较的位屏蔽,屏蔽寄存器本身与比较位对应的位为1,其他位为0,当其与存储单元相与时比较位保留,其他无关位置0。
电路见图9。
图9屏蔽寄存器电路图
存储体的设计与实现
存储体通过3-8译码器D3-8E对8个D触发器实现编址功能,将输入的二进制数依次存储到寄存器中。
与屏蔽寄存器配合使用来对数据进行检索。
电路图见图10。
图10存储体电路图
比较器的设计与实现
比较器模块只要是将存储体单元和屏蔽寄存器相与的结果和检索寄存器比较,所比较结果相同则通过COMP8芯片输出高电平,如果不同则输出低电平,将数据输入到结果寄存器存放,电路图见图11。
图11比较寄存器电路图
与门芯片的设计与实现
本课设采用存储单元与屏蔽寄存器相与的结果和检索寄存器比较的方式进行检索,而数据通过总线传输不能直接用与门直接相与,所以要涉及到总线相与逻辑芯片的封装,每一个双总线相与芯片里面封装了八个与门,电路图见图12图13。
图12总线相与芯片封装图
图13总线相与内部电路图
第3章程序调试与结果测试
程序调试
最初设计时理想的检索寄存器CR和屏蔽寄存器配合使用是输入要检索的数据到CR中,然后MR自动生成0和1,1对应于检测位,0对应于不参与检测位,将VCC接入MR寄存器的,数据线,用CLR控制数据的输入与输出,但是仿真的时候总是显示总线冲突,所以放弃了这个想法,所以最终是手动输入屏蔽码。
程序测试及结果分析
要检索的内容为10XXXXXX,输入检索码(80H),屏蔽码(C0H),用I0,I1,I2作为地址线,向存储体输入数据分别为(ABH),(ACH),00010010(12H),00110100(34H),01010110(56H),00100011(23H),00010010(13H),00000010(02H)则第一和第二个存储单元符合检索条件所以对应的数据输出为1其余输出0,I3表示存储体输入的时钟信号I8表示结果寄存器的时钟信号,由此可知图14的仿真结果正确。
图14仿真波形图
利用COP2000仿真软件的变成下载功能,将得到文件下载到XCV200实验板的XCV200可编程逻辑芯片中。
利用XCV200实验板进行硬件功能测试。
相联存储器的输入数据通过XCV200实验板的输入开关实现,输出数据听过XCV200实验板的LED指示灯实现,利用表5的输入参数作为输入数据,诸葛测试输出结果,即用XCV200实验板的开关K20、K21、K22控制输入数据,开关K00~K07控制输入寄存器的内容输入,同时观察A0~A7的输出得到测试结果。
表5硬件测试结果
输入信号
输出信号
K00-K07
K10-K17
K22
K21
K20
CLK
A0-A7
00001111
00001000
0
0
0
1
00000000
00001111
00001001
0
0
1
1
00000000
00001111
00010000
0
1
0
1
00000000
00001111
00010001
0
1
1
1
00000000
00001111
00001111
1
0
0
1
00010000
00001111
00010011
1
0
1
1
00010000
00001111
00010000
1
1
0
1
00010000
00001111
00010001
1
1
1
1
00010000
检索寄存器存的数是0F,存储体中的数分别是08,09,10,11,0F,13,10,11。
对表5的数据与图15的内容进行对比,可以看出硬件测试结果是00010000,对应于十六进制数是10,由此可以看出测试结果是争取的,说明电路设计正确合理。
图15为仿真下载的结果。
图15仿真下载结果
[1]周大海.计算机组成原理实验与课程设计教程[M].北京:
北京航空航天大学出版社,2015
[2]范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:
北京邮电大学出版社,2006
[3]王爱英.计算机组成与结构[M].北京:
清华大学出版社,2006
[4]白中英.计算机组成原理[M].科学出版社,2008
[5]郑纬民.计算机系统结构[M].北京:
清华大学出版社,1992
[6]胡越明.计算机组成与设计[M].北京:
科学出版社,2006
[7]曹昕燕.EDA技术实验与课程设计[M].北京:
清华大学出版社,2006
[8]唐朔飞.计算机组成原理(第二版)[M].北京:
高等教育出版社,2008
参考文献
附录(源代码)
课程设计总结:
经过两周的努力,终于完成了这学期的《计算机组成原理》的课程设计虽然只有两周,却感觉学到了很多东西,这两周的实际操作把课堂中学到的理论知识运用起来解决实际问题,在相联存储器的实际过程中约到了如下问题:
首先是软件方面的问题,因为之前没有用过fouandation,所以在课设过程中遇到了很多问题,但是通过查书和反复练习摸索慢慢熟练掌握了软件的使用。
其次是数据总线的使用问题开始仿真结果总是显示不确定,后来询问了其他同学才得知需要对总线命名才可以正常使用,否则总线混乱当然结果不正确。
然后是芯片的选用问题,因为要设计8乘8的存储体如果用普通触发器需要64片,大大增加了电路的连接难度,后来在网上查找相关的论文,使用8位的触发器就只需要8片节省了很多时间。
总之,这次课设让我收获很多,也感谢老师的指导和同学的热情帮助,给我很多好的建议。
指导教师评语:
指导教师(签字):
年月日
课程设计成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 课程设计 相联 存储器 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)