SAP-1CPU及计算机的组成架构介绍

上传人:嘀****l 文档编号:253022563 上传时间:2024-11-27 格式:PPT 页数:49 大小:1.29MB
返回 下载 相关 举报
SAP-1CPU及计算机的组成架构介绍_第1页
第1页 / 共49页
SAP-1CPU及计算机的组成架构介绍_第2页
第2页 / 共49页
SAP-1CPU及计算机的组成架构介绍_第3页
第3页 / 共49页
点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,*,*,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,*,*,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,SAP-1 Cpu,电路设计,一,.SAP-1 CPU,及计算机的组成架构简介,二,.SAP-1 CPU,指令,.,寻址法,.,程序设计,三,.16*8,的,ROM,设计与仿真,四,.SAP-1 CPU,设计与仿真,实验目的:,实验原理,小组成员,薛宝(,20054440118,),汪威(,20054440119,),高亮(,20054440120,),吴安乐(,2005444021,),陆仁聪(,20054440122,),谢素斌(,20054440123,),吴运兴(,20054440124,),江宪清(,20054440126,),一,.SAP-1 CPU,及计算机的组成架构简介,所有寄存器是以三态,(three state),输出方式,连接至,webus,上。虽然现在不是使用传统,TTL,电路组成,而是使用,CPLD&FPGA,类型组件来实现它,这也就意味着图,1,的一些功能方块或一些控制线需要作部分调整或修改,但无论如何对于每个方块所扮演的角色,是绝对有必要了解的!,Program,counter,4,8,Input,and,MAR,4,4,16*8,RAM,Instruction,tegister,Controller/,sequencer,4,12,4,8,8,8,8,Accumulator,A,8,Adder/,subtractor,B,register,Output,register,Binary,display,8,8,8,8,8,Wbus,L,A,CLK,E,A,S,U,E,U,L,B,CLK,L,O,CLK,CLR,CLK,L,1,E,1,CE,CLK,L,M,E,P,CLR,C,P,CLK,CLK,CLK,CLR,CLR,C,P,E,P,L,M,CE L,I,E,I,L,A,E,A,S,U,E,U,L,B,L,O,图,1:SAP-1,结构,说明:,1.,程序计数器,它是一个,4Bits,的计数器,计数范围由,015,。主要功用是记录下每个执行的指令地址,并把这个地址传送至,MAR,寄存器存放。,2.,输入与,MAR(Memory Access Register),这个方块应分成两个部分,一个是接受由“输入”部分输入到,RAM,内存的外部程序和数据,另一部分“,MAR”,是用来在,CPU,执行上述所加载的程序时,暂存下一个要执行的指令地址。,3.168 RA,这个,RAM,和其它的部分构成图,10-1,的,SAP-1,计算机,而且它的内存大小共有,16,地址,8,位。所以这个,RAM,的地址总线是,4bit,地址编码是由,0000,0001,00101111,这个地址内容是由上述,MAR,传送过来,然后通过译码将地址存放的,8,位数据或指令输出至,Wbus,。,4.,指令寄存器,属于,CPU,内的控制单元,主要是将在,RAM,的,8,位数据,通过,Wbus,后读入指令寄存器,然后再把数据一分为二,较高的,4,位属于指令部分,送至下一级的“控制器”,而较低的,4,位属于数据部分,将会被送至,Wbus,。,5.,控制器,/,序列发生器,这个项目也是属于,CPU,内控制单元的一部分,这个控制器在程序执行时,负责送出整个计算机的时序信号,CLK,,而且会把指令寄存器送来的位指令,解译成,12,位的控制信号,由这组控制信号指挥其它的功能方块,完成该指令的运作。由于使用,VHDL,语言设计整个,SAR-1,,依照语法的使用,这部分会被省略,而且不会影响整个,CPU,运作。,6.,累加器,累加器是个位的缓冲寄存器,它是存放目前计算机执行的实时数据地方。不同的指令也将使它产生不同的工作方式,。,7.,加减法器,这个加减法器负责执行数学的加法和减法运算,而且运算的结果会放回“累加器”暂存。,8.B,寄存器,这个寄存器用来配合“累加器”、“加减法器”,执行“加法”或“减法”的工作。,9.,输出寄存器,这个输出寄存器的用途是,,SAP-1 CPU,执行到“输出结果”的指令时,便将“累加器”的结果传至“输出寄存器”,所以它是负责存放输出结果,当然这个存放的结果是二进制形式的。,10.,二进制显示,在图,1,的,SAP-1,计算机里,以个,LED,作程序执行结果的显示,这个算是这台计算机的输出部分,而不是,SAP-1 CPU,的功能方块。,最后就,VHDL,语言设计的观点来对图,1,作设计分类:,SAP-1 CPU,部分:,程序计数器、,MAR,、指令寄存器、控制器序列发生器、累加器、加减法器、,B,寄存器、输出寄存器。,168MAR,部分:,考虑直接改成,ROM,的形式,这是因为程序执行时,它不接受外界输入。,二,.SAP-1 CPU,指令,.,寻址法,.,程序设计,SAP-1,的,CPU,指令,共有,5,个且可分成两种类型,如表,指令,运算码,范例,说明,LDA,0000,LDA 9H,将,9H,内存的内容值加载累加器,ADD,0001,ADD BH,将,BH,的内存内容值和累加器内容值相加,再存放运算结果回累加器,SUB,0010,SUB EH,将,EH,的内存内容值和累加器内容值相减,再存放运算结果回累加器,直接寻址法,(Direct Addressing),指令,运算码,范例,说明,OUT,1110,OUT,将累加器内容输出至,“,输出寄存器,”,HLT,1111,HLT,结果,CPU,执行,零位寻址法,(Zero Addressing),范例:,试使用,SAP-1,指令,执行下列运算结果。,10+20+30-15=4B,(十六进制),解答,:,首先将运算数据,10,,,20,,,30,,,15,依序放在,9H-CH,地址里,第一个指令写在,0H,地址,功能是先将,10,加载累加器,所以指令写成:,LDA 0H,这是因为,9H,存放着数值,10,的内容,第二个指令写在,1H,地址,功能是将,20,加载,B,寄存器,然后与累加器里的,10,作相加后,再将结果,30,存回累加器,所以指令写成(地址,AH,内存数值,20,):,ADD AH,第三个指令写成在,2H,地址,功能是将,30,加载,B,寄存器,然后与累加器里的,30,作相加后,再将结果,60,存回累加器,所以指令写成(地址,BH,内存放数值,30,数据):,ADD BH,第四个指令写在,3H,地址,功能是将,15,加载,B,寄存器,然后与累加器里的,60,作相减后,再将结果,4B,存回累加器,所以指令写成(地址,CH,内存放数值,15,数据):,SUB CN,第五个指令写在,4H,地址,是将累加器数值结果,4B,作输出显示,所以指令写成:,OUT,第六个指令写在,5H,地址,功能在停止,CPU,运算,所以指令写成:,HLT,最后,整个程序和数据写在,RAM,里,机械码表示如下:,地址,汇编语言,机械码,0H,LDA 9H,0000 1001,1H,ADD AH,0001 1010,2H,ADD BH,0001 1011,3H,SUB CH,0010 1100,4H,OUT,1110 xxxx,5H,HLT,1111 xxxx,6H,XXX,xxxx xxxx,地址,汇编语言,机械码,7H,XXX,xxxx xxxx,8H,XXX,xxxx xxxx,9H,10H,0001 0000,AH,20H,0010 0000,BH,30H,0011 0000,CH,15H,0001 0101,三,.16*8,的,ROM,设计与仿真,范例,:,配合,SAP-1,指令,设计,16(Word)x8(Bit),的,ROM,使其能够执行如下预算,:,10+14+18-20=1C(Hex),地址,汇编语言,机械码,0H,LDA 9H,0000 1001,1H,ADD AH,0001 1010,2H,ADD BH,0001 1011,3H,SUB CH,0010 1100,4H,OUT,1110 0000,5H,HLT,1111 0000,6H,XXX,0000 0000,7H,XXX,0000 0000,地址,汇编语言,机械码,8H,XXX,0000 0000,9H,10H,0001 0000,AH,14H,0010 0100,BH,18H,0001 1000,CH,20H,0010 0000,对于原本,Dont care,部分,直接写入,0,这是因为,Altera,软件会将,Dont care,视为,0,处理,.,程序,:ROM16_8.VHD,LIBRARY IEEE;,USE IEEE.STD_LOGIC_1164.ALL;,USE IEEE.STD_LOGIC_ARITH.ALL;,USE IEEE.STD_LOGIC_UNSIGNED.ALL;,ENTITY ROM16_8 is,PORT(,DATAOUT :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);-Data Output,ADDR :IN STD_LOGIC_VECTOR(3 DOWNTO 0);-ADDRESS,CE :IN STD_LOGIC -Chip Enable,);,END ROM16_8;,ARCHITECTURE a OF ROM 16_8 IS,BEGIN,DATA=“00001001”WHEN ADDR=“0000”AND CE=0 -LDA,9H,“00011010”WHEN ADDR=“0001”AND CE=0ELSE -ADD,AH,“00011011”WHEN ADDR=“0010”AND CE=0ELSE -ADD,BH,“00101100”WHEN ADDR=“0011”AND CE=0ELSE -SUB,CH,“11100000”WHEN ADDR=“0100”AND CE=0ELSE -OUT,“11110000”WHEN ADDR=“0101”AND CE=0ELSE -HLT,“00010000”WHEN ADDR=“1001”AND CE=0ELSE,“00010100”WHEN ADDR=“1010”AND CE=0ELSE,“00011000”WHEN ADDR=“1011”AND CE=0ELSE,“00100000”WHEN ADDR=“1100”AND CE=0ELSE,“00000000”;,END a;,程序说明,:,实际上仍是使用,when-else,方式,以类似查表方式作,ROM,的设计,.,这个,ROM,有个,CE,使能接脚,它必须为,“0”,时,才接受读取数据的命令,.,仿真结果,:,略,四,.SAP-1 CPU,设计与仿真,SAP-CPU,在前面所提的指令,它们执行的指令周期总长度基本上都是,6,个脉冲长度,这可以用下图说明,S0,S1,S2,S3,S4,S5,(Fetch),磅,(Execute),Machine Cycle,Instruction Cycle,图,2:SAP-1,指令周期,(Instruction Cycle),时序状态,S0-S2,范围为指令周期,而时序状态,S3-S5,为指令执行周期,.,下面是每个时序状态下,SAP-1 CPU,的工作任务,:,1.,指令捉取周期,(Fetch Cy
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!