欢迎来到天天文库
浏览记录
ID:11537435
大小:750.18 KB
页数:6页
时间:2018-07-12
《程序计数器pc与地址寄存器ar实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、武汉轻工大学数学与计算机学院计算机组成原理实验报告学校: 武汉轻工大学 院系:数学与计算机学院 班级:软件工程13xx班 姓名: xx 学号: 13051xxxx指导老师: 郭峰林2015年11月23日实验三程序计数器PC与地址寄存器AR实验【实验环境】1.Windows2000或WindowsXP2.QuartusII9.1sp2、DE2-115计算机组成原理教学实验系统一台。【实验目的】1.掌握地址单元的工作原理。2.掌握的两种工作方式,加1计数和重装计数器初值的实现方法;3.掌握地址寄存其从程序计数器获得数据和
2、从内部总线获得数据的实现方法。【实验原理】程序计数器(PC)是用于存放下一条指令所在单元的地址的地方。为了保证程序(在操作系统中理解为进程)能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。而程序计数器正是起到这种作用,所以通常又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的一条指令所在的内存单元地址送入PC,因此程序计数器(PC)的内容即是从内存提取的第一条指令的地址。当执行指令时,CPU将自动修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数,以便使其保持的
3、总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1。当程序转移时,转移指令执行的最终结果就是要改变PC的值,下一条从内存取出的指令将由转移指令来规定,而不像通常一样按顺序来取得因此程序计数器的结构应当是具有寄存信息和计数两种功能的结构。转移指令执行后的PC值就是转去的地址,以此实现转移,有些机器中也称PC为指令指针IP(InstructionPointer)。地址寄存器(AR)用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,
4、所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。 当CPU和内存进行信息交换,即CPU向内存存/取数据时,或者CPU从内存中读出指令时,都要使用地址寄存器和数据缓冲寄存器。同样,如果我们把外围设备的设备地址作为像内存的地址单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样使用地址寄存器和数据缓冲寄存器。地址寄存器的结构和数据缓冲寄存器、指令寄存器一样,通常使用单纯的寄存器结构。信息的存入一般采用电位-脉冲方式,即电位输入端对应数据信息位,脉冲输入端对应控制信号,在控制信号作用下,瞬时地
5、将信息存入寄存器。本实验采用总线多路开关联接方式地址单元主要由三部分组成:程序计数器PC、地址寄存器AR和多路开关BUSMUX。图3.1程序计数器/地址寄存器原理图程序计数器PC用以指出下一条指令在主存中的存放地址,CPU正是根据PC的内容去存取指令的。因程序中指令是顺序执行的,所以PC有自增功能。程序计数器提供下一条程序指令的地址,如电路图所示,在T4时钟脉冲的作用下具有自动加1的功能;在LDPC信号(高电平1)的作用下可以预置lpm_counter计数器的初值(如子程序调用或中断相应等)。当LDPC为高电平时,l
6、pm_counter计数器装入data[]端输入的数据。aclr是lpm_counter计数器的清0端(使q[7..0]输出为0),高电平有效(高电平清零);aclr为低电平时,允许lpm_counter计数器正常计数。地址寄存器AR锁存访问内存SRAM的地址。地址寄存器AR中的地址来自两个渠道,一是程序计数器PC的输出,通常是下一条指令的地址;二是来自于内部数据总线的数据,通常是被访问操作数的地址。为了实现对两路输入数据的切换,在FPGA的内部通过总线多路开关BUSMUX进行选择。LDAR与多路选择器的sel相连,
7、当LDAR为高电平,选择程序计数器的输出(lpm_counter输出);当LDAR为低电平时,选择内部数据总线的数据。多路选择器BUSMUX,当sel端为“1”时,多路选择器选择datab[]输出到result[];当sel端为“0”时,多路选择器选择dataa[]输出到result[]。数据输出时需要用到带清除端8D型触发器74273(74273功能表见附录2)。clrn为低电平时,使74273输出为0。关于lpm_counter元件介绍:1)lpm_counter是LPM元件库的可调参数计数器元件,其最大计数位宽
8、为32bit,最小计数时钟周期达8ns(125MHz,使用EPM7032LC44-6实现);实现加、减或可逆计数;同步或异步清零/置数功能可选;通过参数设置,实现任意进制、输出位宽不超过32bit的加、减或可逆同步/异步计数器。2)lpm_counte引脚及功能描述1pm_counter元件的引脚端中,只有时钟端是必选的,需要外界提供计数信号;
此文档下载收益归作者所有