1、计算机体系结构实验报告计算机体系结构 实验报告 计算机实验教学中心实验名称FIFO存储器实验地点信息楼418实验日期2015.10一、 实验目的掌握FIFO 存储器的工作特性和读写方法二、 实验设备PC、唐都实验箱三、 实验原理本实验用 FPGA 芯片来实现一个简单的 8 位4 的 FIFO,器件的接口信号如图 3-2-1,内部逻辑图如下图 3-2-2。其各信号的功能为:EMPTY:FIFO 存储器空标志,高电平有效。FULL:FIFO 存储器满标志,高电平有效。RST:清 FIFO 存储器为空。FIFOWR:FIFO 存储器写入信号,低电平有效。FIFORD:FIFO 存储器读信号,低电平有
2、效。ID0ID7:FIFO 存储器输入数据线。OD0OD7:FIFO 存储器输出数据线。四、 实验操作及运行结果1、按实验连接图接线。注意:连线时实验箱电源要处于关闭状态。2、确保接线正确后,将实验箱连到电脑:电源线+串口电缆(com口)+并口Jtag下载线(打印机口),并打开实验箱电源。3、在软件Quartus II 8.0中选择“File-Open Project”选项,按照以下路径查找实验过程中需要下载到FPGA中的数据“C:TangDuCMXFPGAFIFOFIFO.qpf(.sof)”(该路径为“FIFO实验”的全路径,以后每次试验都需要用到的公共路径名为“C:TangDuCMXFP
3、GA”),打开该文件后,单击软件中的“Programmer”选项,单击“Start”完成下载。如果下载成功在界面Progress中可以看到100%的标志字样。4、运行结果接线图中B03 和B04 是FIFO 空状态、满状态指示信号,分别接到扩展单元指示灯E0、E1 上,用来反映FIFO 当前的状态。1)实验时,按动系统右下脚的CLR 清零开关可使读、写信号计数清零。这时指示灯E0 亮,表示FIFO 为空。2)使用CON 单元编号为SD27 到SD20 的开关模拟输入总线给出一个数据,按动时序与操作台单元的开关ST,可将该数写入到FIFO 中。这时指示灯E0 灭,表示FIFO 中已经有数据存在,
4、说明当前FIFO 的输出是有效的;依次写四次后,满标志置位,这时指示灯E1亮。3)然后连续按动开关KK,给出读信号,将顺序读出所存的四个数,扩展总线的数据显示灯EB7 到EB0 显示所读出的数据,四个数全部读出后,空标志置位,E0灯亮。检查执行是否与理论值一致。五、 实验中出现的问题和解决方法在实验中我们小组遇到了安装USB转串口驱动程序的问题,后参照老师给予的文档成功安装了驱动程序。在连线过程中,有一根线出现了短路,导致实验结果运行错误,后经我们排查后发现,其中的一根导线断裂,更换后,成功运行实验。 我饿们这次实验掌握FIFO 存储器的工作特性和读写方法,达到了实验目的,提高了小组成员的动手
5、能力,收获很大。实验名称多通路运算器和寄存器堆实验地点信息楼418实验日期2015.10一、实验目的掌握多通路的运算器与寄存器堆的工作原理及设计方法2、实验设备PC、唐都实验箱3、实验原理从 IN 单元读入一个数据,存入 R0;从 IN 单元读入另一个数据,存于 R1;将 R0 和 R1 相加,结果存于 R0;将 R0 和 R1 相加,结果存于 R3,同时打入暂存器 A 中;再将 R0 的值送 OUT 单元显示。根据指令要求,得出用时钟进行驱动的状态机描述,即得出其有限状态机,如图 1-2-4 所示。下面分析每个状态中的基本操作:S0:空操作,系统复位后的状态S1:IN-R0;从 IN 单元往
6、 R0 中打一个数S2:IN-R1; 从 IN 单元往 R1 中打一个数S3:R0 -A, R1 -B;同时把 R0、R1 中的数打入暂存器 A、B 中S4:A+B-R0;将 A+B 的结果送往 R0S5:A+B-R3,A+B-A; 增加暂存器旁路,将 A+B 的结果送往 R3 的同时打入暂存器 A中S6:R0-OUT;把 R0 中的数送入输出单元显示。4、实验操作及运行结果1、把时序与操作台单元的“MODE”短路块插上,使系统工作在四节拍模式,按实验连接图接线。注意:连线时实验箱电源要处于关闭状态。2、确保接线正确后,将实验箱连到电脑:电源线+并口Jtag下载线(打印机口),并打开实验箱电源
7、。3、在软件Quartus II 8.0中选择“File-Open Project”选项,按照以下路径查找实验过程中需要下载到FPGA中的数据“C:TangDuCMXFPGAALU® ALU®.qpf(.sof)”,打开该文件后,单击软件中的“Programmer”选项,单击“Start”完成下载。如果下载成功在界面Progress中可以看到100%的标志字样。4、用串口电缆连接实验箱和电脑打印机口,接通电源,打开软件CMX,进行串口测试(如果串口线未连接或者串口线故障则自动弹出错误信息对话框):端口串口选择COM1或者COM2;然后,测试串口通讯是否成功:端口串口测试。5、如果串
8、口通讯成功,在PC 机上运行TD-CMX,进入联机软件界面,选择菜单命令“【实 实验连接图验】【ALU®实验】”,打开数据通路图。6、首先按CON单元的开关进行系统清零,状态机为态。然后,采用单节拍运行方式来观察数据流通。1)用连接成的双通道双端口运算器和双端口寄存器堆的结构实现以下一段程序:从IN 单元读入一个数据,存入R0;从IN 单元读入另一个数据,存于R1;将R0 和R1 相加,结果存于R0;将R0 和R1 相加,结果存于R3,同时打入暂存器A 中;再将R0 的值送OUT 单元显示2)根据指令要求,得出用时钟进行驱动的状态机描述,即得出其有限状态机S0:空操作,系统复位后的状态S
9、1:IN-R0;从IN 单元往R0 中打一个数S2:IN-R1; 从IN 单元往R1 中打一个数S3:R0 -A, R1 -B;同时把R0、R1 中的数打入暂存器A、B 中S4:A+B-R0;将A+B 的结果送往R0S5:A+B-R3,A+B-A; 增加暂存器旁路,将A+B 的结果送往R3 的同时打入暂存器A中S6:R0-OUT;把R0 中的数送入输出单元显示3)每个状态运行4个周期(T1T4),即每个状态按次单节拍运行按钮。请在S1和S2状态,通过单元的开关分别输入两个数(比如和)。观察数据通路图中数据的变化,并检查是否与状态的描述相符合。最后观察OUT液晶单元是否显示正确(如果从IN单元输
10、入的两个数分别为1和3,则OUT单元输出应该为4)。五、实验中出现的问题和解决方法在实验中我们小组连接完线路后,正常运行,直到最后一步无法正常显示结果,但结果已在ALU中正常显示,却没办法在out中显示,我猜测,一定是数据总线和out总线的连接出现了问题,于是我们检查了这两个部分,发现在out单元,有一根先出现了短路,更换导线后,结果正常显示。 这次实验我们明白掌握多通路的运算器与寄存器堆的工作原理及设计方法,通用软件更加直接明了的看见其运行过程。收获很大。实验名称基于RISC技术的模型机设计实验地点信息楼418实验日期2015.11一、实验目的掌握RISC 处理器的指令系统特征和一般设计原则
11、二、实验设备PC、唐都实验箱三、实验原理1指令系统设计本实验采用 RISC 思想设计的模型机选用常用的八条指令:MOV、ADD、NOT、AND、OR、 LOAD、SAVE 和 JMP 作为指令系统,寻址方式采用寄存器寻址及直接寻址两种方式。指令格式采用单字节及双字节两种格式:单字节指令(MOV、ADD、NOT、AND、OR、JMP)格式如下:其中,OP-CODE 为操作码,RS 为源寄存器,RD 为目的寄存器,并规定: 双字节指令(LOAD、SAVE)格式如下其中括号中的 1 表示指令的第一字节,2 表示指令的第二字节,OP-CODE 为操作码,RS为源寄存器,RD 为目的寄存器,P 为操作数
12、地址,占用一个字节。根据上述指令格式,表 2-3-1 列出了本模型机的八条机器指令的具体格式、汇编符号和指令功能:其中 LOAD 和 SAVE 指令中的 M 位用来判断操作的对象,当 M=0 时 LOAD 和 SAVE 指令是对 IO 进行操作,当 M=1 时 LOAD 和 SAVE 指令是对存储器进行操作。系统采用外设和主存储器各自独立编码的编址方式,I/O 译码单元由采用地址总线高两位作二四译码来实现,原理图如图 2-3-1 所示。由于用的是地址总线的高两位进行译码,I/O 地址空间被分为四个区,如表 2-3-2 所示:2RISC 处理器的模型计算机系统设计本处理器的时钟及节拍电位如图 2
13、-3-2 所示,数据通路图如图 2-3-3 所示,是采用双总线结构来构建 RISC 处理器的,其指令周期流程图可设计如图 2-3-4 所示,在通路中除控制器单元由FPGA 单元来设计实现外,其它单元全是由这里实验系统上的单元电路来实现的。 3 控制器设计(1)数据通路图中的控制器部分需要在 FPGA 中设计。(2)用 VHDL 语言设计 RISC 子模块的功能描述程序,顶层原理图如图 2-3-5:4、实验操作及运行结果1、把时序与操作台单元的“MODE”短路块拔掉,使系统工作在三节拍模式,按实验连接图接线。注意:连线时实验箱电源要处于关闭状态。2、确保接线正确后,将实验箱连到电脑:电源线+并口
14、Jtag下载线(打印机口),并打开实验箱电源。3、在软件Quartus II 8.0中选择“File-Open Project”选项,按照以下路径查找实验过程中需要下载到FPGA中的数据“C:TangDuCMXFPGARISC RISC.sof”,打开该文件后,单击软件中的“Programmer”选项,单击“Start”完成下载。如果下载成功在界面Progress中可以看到100%的标志字样。4、用串口电缆连接实验箱和电脑打印机口,接通电源,打开软件CMX,进行串口测试(如果串口线未连接或者串口线故障则自动弹出错误信息对话框):端口串口选择COM1或者COM2;然后,测试串口通讯是否成功:端口
15、串口测试。5、如果串口通讯成功,在PC 机上运行TD-CMX,进入联机软件界面,选择菜单命令“【实 实验连接图验】【RISC实验】”,打开数据通路图。6、在CMX软件界面中,通过选择【转储】【装载】将文件C:TangDuCMXSampleRISC模型机设计实验.txt 装入指令区。数据装载成功会在输出区有提示信息。7、上述txt文件将以下程序段读入指令区: 地址(H) 内容(H) 助记符 说明00 50 LOAD INR001 40 02 51 LOAD INR103 40 04 06 MOV R1R205 18 ADD R0+R2R006 60 SAVE R0OUT07 8008 58 LO
16、AD 10R009 100A 70 JMP R0PC10 00实验数据流通图8、采用两种方法来观察数据流动:1)将时序与操作单元的开关KK1、KK3置为运行档,开关KK2置为单拍档。先按动CON单元的总清零开关CLR,程序从00H地址开始运行。按动ST按钮单步运行,每按动一次按钮,观察数据流通图,分析数据与控制信号是否正确(是否实现了第步的程序段功能)。在执行程序时,需要在IN单元输入两个数据(对应最开始的两条LOAD指令,IN输入的数据分别送入R0、R1)。)采用单节拍运行方式来观察数据流通。每条指令运行三个周期。观察数据流通图,分析数据与控制信号是否正确。五、实验中出现的问题和解决方法在实验中我们小组遇到了无法安装 RISC.sof的问题,后参照老师给予的文档成功安装了驱动程序。在实验中我们在实验电路的连接过程中发现了很多问题,后经一一排除,这次实验的连线很多,我们努力做到了细心仔细,没有出现过连线失误,很快将试验线路连接好,成功做出实验。 我饿们这次实验掌握RISC 处理器的指令系统特征和一般设计原则, 达到了实验目的,提高了小组成员的动手能力,对我们了解risc处理器的帮助很大,收获很大。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1