计算机组成原理第6章.ppt
《计算机组成原理第6章.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第6章.ppt(68页珍藏版)》请在三一办公上搜索。
1、现代计算机组成原理,潘 明 潘 松 编著,科学出版社,第 6 章,16位CISC CPU设计,6.1 顶层系统设计,6.1.1 16位CPU的组成结构,图6-1 16位CPU结构框图,6.1 顶层系统设计,指令系统设计,(1)单字指令,1指令格式,表6-1 单字节指令格式,6.1 顶层系统设计,(2)双字指令,表6-2 双字指令格式,表6-3 双字节指令,6.1 顶层系统设计,指令系统设计,2指令操作码,表6-4 操作码功能表,6.1 顶层系统设计,指令系统设计,2指令操作码,表6-5 常用指令举例,6.1 顶层系统设计,6.1.3 顶层结构的VHDL设计,1.CPU元件的VHDL描述,【例6
2、-1】CPU_LIB.VHDlibrary IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_arith.all;package cpu_lib istype t_shift is(shftpass,shl,shr,rotl,rotr);subtype t_alu is unsigned(3 downto 0);,(接下页),6.1 顶层系统设计,6.1.3 顶层结构的VHDL设计,1.CPU元件的VHDL描述,constant alupass:unsigned(3 downto 0):=0000;constant andOp:unsign
3、ed(3 downto 0):=0001;constant orOp:unsigned(3 downto 0):=0010;constant notOp:unsigned(3 downto 0):=0011;constant xorOp:unsigned(3 downto 0):=0100;constant plus:unsigned(3 downto 0):=0101;constant alusub:unsigned(3 downto 0):=0110;constant inc:unsigned(3 downto 0):=0111;constant dec:unsigned(3 downto
4、 0):=1000;constant zero:unsigned(3 downto 0):=1001;type t_comp is(eq,neq,gt,gte,lt,lte);subtype t_reg is std_logic_vector(2 downto 0);type state is(reset1,reset2,reset3,reset4,reset5,reset6,execute,nop,load,store,move,load2,load3,load4,store2,store3,store4,move2,move3,move4,incPc,incPc2,incPc3,incPc
5、4,incPc5,incPc6,loadPc,loadPc2,loadPc3,loadPc4,bgtI2,bgtI3,bgtI4,bgtI5,bgtI6,bgtI7,bgtI8,bgtI9,bgtI10,braI2,braI3,braI4,braI5,braI6,loadI2,loadI3,loadI4,loadI5,loadI6,inc2,inc3,inc4);subtype bit16 is std_logic_vector(15 downto 0);end cpu_lib;,6.1 顶层系统设计,6.1.3 顶层结构的VHDL设计,1.CPU元件的VHDL描述,【例6-2】top.vhd
6、library IEEE;use IEEE.std_logic_1164.all;use work.cpu_lib.all;entity top isend top;architecture behave of top iscomponent memport(addr:in bit16;sel,rw:in std_logic;ready:out std_logic;data:inout bit16);end component;component cpuport(clock,reset,ready:in std_logic;addr:out bit16;rw,vma:out std_logic
7、;data:inout bit16);end component;signal addr,data:bit16;signal vma,rw,ready:std_logic;signal clock,reset:std_logic:=0;beginclock=not clock after 50 ns;reset=1,0 after 100 ns;m1:mem port map(addr,vma,rw,ready,data);u1:cpu port map(clock,reset,ready,addr,rw,vma,data);end behave;,6.1 顶层系统设计,6.1.3 顶层结构的
8、VHDL设计,2.顶层文件的原理图设计,(接下页),图6-2 CPU顶层结构图,6.1 顶层系统设计,6.1.3 顶层结构的VHDL设计,3CPU与LCD显示模块的接口,图6-3 显示模块dsp的实体结构图,6.1 顶层系统设计,6.1.3 顶层结构的VHDL设计,3CPU与LCD显示模块的接口,图6-4 LCD显示屏的数据显示,6.1 顶层系统设计,6.1.4 软件设计实例,表6-6 示例程序,表6-7 存储器初始化文件RAM_16.mif的内容,6.2 CPU基本部件设计,6.2.1 运算器ALU,表6-8 运算器ALU的功能,图6-5 运算器ALU结构图,6.2 CPU基本部件设计,6.
9、2.1 运算器ALU,图6-5 运算器ALU结构图,【例6-3】alu.vhdlibrary IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_unsigned.all;use work.cpu_lib.all;entity alu isport(a,b:in bit16;sel:in t_alu;c:out bit16);end alu;architecture rtl of alu isbeginaluproc:process(a,b,sel)begincase sel iswhen alupass=c c c c c c c c c
10、c c=0000000000000000 after 1 ns;end case;end process;end rtl;,6.2 CPU基本部件设计,6.2.1 运算器ALU,图6-6 运算器ALU的仿真波形,6.2 CPU基本部件设计,6.2.1 运算器ALU,表6-9 ALU运算仿真结果说明,6.2 CPU基本部件设计,6.2.2 比较器COMP,表6-10 比较器的运算类型,6.2 CPU基本部件设计,6.2.2 比较器COMP,图6-7比较器结构图,6.2 CPU基本部件设计,6.2.2 比较器COMP,【例6-4】COMP.VHDlibrary IEEE;use IEEE.std_
11、logic_1164.all;use IEEE.std_logic_arith.all;use IEEE.std_logic_unsigned.all;use work.cpu_lib.all;entity comp isport(a,b:in bit16;sel:in t_comp;compout:out std_logic);end comp;architecture rtl of comp isbegincompproc:process(a,b,sel)begincase sel iswhen eq=if a=b then compout if a/=b then compout if
12、a b then compout if a=b then compout if a if a=b then compout=1 after 1 ns;else compout=0 after 1 ns;end if;end case;end process;end rtl;,6.2 CPU基本部件设计,6.2.2 比较器COMP,图6-8 比较器COMP的仿真波形图,表6-11 比较器COMP的仿真波形说明,6.2 CPU基本部件设计,6.2.3 控制器CONTROL,图6-9 控制器CONTROL的实体结构图,【例6-5】control.vhdlibrary IEEE;use IEEE.st
13、d_logic_1164.all;use work.cpu_lib.all;entity control isport(clock,reset,ready,compout:in std_logic;instrReg:in bit16;progCntrWr,progCntrRd,addrRegWr,addrRegRd,outRegWr,outRegRd:out std_logic;shiftSel:out t_shift;aluSel:out t_alu;compSel:out t_comp;opRegRd,opRegWr,instrWr,regRd,regWr,rw,vma:out std_l
14、ogic;regSel:out t_reg);end control;architecture rtl of control issignal current_state,next_state:state;beginnxtstateproc:process(current_state,instrReg,compout,ready)beginprogCntrWr aluSel aluSel=zero;shiftSel=shftpass;outRegWr=1;,(接下页),next_state outRegRd outRegRd vma vma case instrReg(15 downto 11
15、)iswhen 00000=next_state regSel regSel regSel progcntrRd progcntrRd regSel regSelnext_state=incPc;,(接下页),end case;when load2=regSel vma vma regSel regSel regSel regSel outRegRd outRegRd progcntrRd outregRd outregRd vma vma=1;rw=0;,(接下页),if ready=1 then regSel progcntrRd outregRd outregRd vma vma reg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理
链接地址:https://www.31ppt.com/p-6059678.html