计算机组成原理课程设计(桂电)求负数平方和CISC

上传人:无*** 文档编号:129851076 上传时间:2022-08-03 格式:DOC 页数:126 大小:741KB
收藏 版权申诉 举报 下载
计算机组成原理课程设计(桂电)求负数平方和CISC_第1页
第1页 / 共126页
计算机组成原理课程设计(桂电)求负数平方和CISC_第2页
第2页 / 共126页
计算机组成原理课程设计(桂电)求负数平方和CISC_第3页
第3页 / 共126页
资源描述:

《计算机组成原理课程设计(桂电)求负数平方和CISC》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计(桂电)求负数平方和CISC(126页珍藏版)》请在装配图网上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date计算机组成原理课程设计(桂电)求负数平方和CISC计算机组成原理课程设计(桂电)求负数平方和CISC计算机组成原理课程设计报告题 目:求负数平方和CISC模型院 系:计算机科学与工程学院专 业:计算机科学与技术指导教师:陈智勇 2014年3月30号目 录1课程设计的题目与内容12课程设计完成的内容13系统开发环境及VHDL语言介绍14系统总体设计25MAX PLUS

2、II软件编译仿真测试和结果分析96遇到的问题及解决办法117 心得体会118 参考文献129 附录12一:课程设计的题目及内容题目输入包含5个整数(有符号数)的数组M,输出所有负数的平方和。 要求采用定长CPU周期、联合控制方式,并运行能完成一定功能的机器语言源程序进行验证,机器语言源程序功能如下:五个有符号数从外部输入,一定要使用符号位(比如说SF),并且要使用负的时候转移(比如说JS)或不为负的时候转移(比如说JNS)指令;采用三数据总线结构的运算器,采用RAM,先将输入数据依次存放在RAM的某一连续的存储区域内,再依次读出判断是否为负数,若为负数再求其平方和。二:课程设计的要求1.完成系

3、统的总体设计,画出模型机数据通路框图;2.设计微程序控制器(CISC模型计算机)的逻辑结构框图; 3.设计机器指令格式和指令系统; 4.设计时序产生器电路; 5.设计所有机器指令的微程序流程图; 6.设计操作控制器单元; 在CISC模型计算机中,设计的内容包括微指令格式(建议采用全水平型微指令)、微指令代码表(根据微程序流程图和微指令格式来设计)和微程序控制器硬件电路(包括地址转移逻辑电路、微地址寄存器、微命令寄存器和控制存储器等。具体电路根据微程序控制器的逻辑结构框图、微指令格式和微指令代码来设计)。7.设计模型机的所有单元电路,并用VHDL语言(也可使用GDF文件-图形描述文件)对模型机中

4、的各个部件进行编程,并使之成为一个统一的整体,即形成顶层电路或顶层文件; 8.由给出的题目和设计的指令系统编写相应的汇编语言源程序;9.根据设计的指令格式,将汇编语言源程序手工转换成机器语言源程序,并将其设计到模型机中的ROM中去;10.使用EDA软件进行功能仿真,要保证其结果满足题目的要求;(其中要利用EDA软件提供的波形编辑器,选择合适的输入输出信号及中间信号进行调试。)11.器件编程,并在EDA实验平台上进行操作演示三:系统开发环境及语言介绍Max plus IIMax+plus是Altera公司上一代的PLD开发软件,Max+plus界面友好,使用便捷,主要用于设计新器件和大规模CPL

5、D/FPGA).使用MAX+PLUSII的设计者不需精通器件内部的复杂结构。设计者可以用自己熟悉的设计工具(如原理图输入或硬件描述语言)建立设计,MAX+PLUSII把这些设计转自动换成最终所需的格式。其设计速度非常快。对于一般几千门的电路设计,使用MAX+PLUSII,从设计输入到器件编程完毕,用户拿到设计好的逻辑电路,大约只需几小时。在Max+plus上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。设计处理一般在数分钟内内完成。特别是在原理图输入等方面,Maxplus2被公认为是最易使用

6、,人机界面最友善的PLD开发软件,特别适合初学者使用使用Maxplus2基本上也是以上几个步骤,可简化为:(1设计输入(2)设计编译(3)设计仿真(4)优化(5)布局布线(6)后仿真(7)生产 VHDL 全称超高速集成电路硬件描述语言(英语:VHSIC hardware description language),在基于复杂可编程逻辑器件、现场可编程逻辑门阵列和专用集成电路的数字系统设计中有着广泛的应用。VHDL语言诞生于1983年,1987年被美国国防部和IEEE确定为标准的硬件描述语言。自从IEEE发布了VHDL的第一个标准版本IEEE 1076-1987后,各大EDA公司都先后推出了自己

7、支援VHDL的EDA工具。VHDL在电子设计行业得到了广泛的认同VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其

8、他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点 四:系统总体设计嵌入式CISI模型机系统总体设计嵌入式CISC系统控制器的逻辑结构框图 模型机的指令系统和所有指令的指令格式设计输入指令(IN1)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 RdMOV指令格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 Rd立即数im取数指令(LAD)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码RsRd相加指令(ADD)格式:15 14 13 1211 109 87

9、 6 5 4 3 2 1 0操作码RsRd加1指令(INC)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd减1指令(DEC)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd非零条件转移指令(JNZ)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr传送指令(STO)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rs地址addr无条件转移指令(JMP)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr输

10、出指令(OUT1)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rs存数指令(STOI)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码RsRd乘法指令(IMUL)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码Rd判断箱号位转移(TEST)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr非负条件转移指令(JNS)格式:15 14 13 1211 109 87 6 5 4 3 2 1 0操作码 地址addr模型机规定数据的表示采用定点整数补码表示,单字

11、长为8位,其格式如下: 76 5 4 3 2 1 0符号位尾数对于Rs或Rd的格式我们规定如下:Rs或Rd选定的寄存器00R001R110R211R3其中S2,S1,S0表示的是算术逻辑运算单元ALU,其功能表为:S2S1S0功能000X+Y001X-Y010X+1011X-1100SF101XY110SF=TEMP(7)111YY指令系统表如下指令助记符指令格式功能15-1211 109 87-0IN1 Rd0001Rd输入设备RdMOV Rd,im0010Rdim立即数RdLAD (Rs),Rd0011RsRd(Rs)RdADD Rs,Rd0100RsRd(Rs)+(Rd)Rd,锁存标志位

12、INC Rd0101Rd(Rd)+1Rd,锁存标志位DEC Rd0110Rd(Rd)-1Rd,锁存标志位JNZ addr0111addr若不等,则addrPCSTO Rs,addr1000Rsaddr(Rs)addrJMP addr1001addraddrPCOUT1 Rs1010Rs(Rs)输出设备STOI Rs,(Rd)1011RsRd(Rs)(Rd)IMUL Rd,Rd1100Rd(Rd) (Rd)RdTESTRd1101Rd(RD)TEMP SF标志位JNS addr1110addr若不为正,则addrPC时序产生器时序信号产生器用于产生多级食醋系统中需要的时序信号,本实验采用的是微程

13、序控制器的时序产生器,如下图微程序控制器的设计全过程微程序控制器的设计包括以下几个阶段:(1)机器指令的微程序流程图(2)设计微指令格式和微指令代码表(3)设计地址转移逻辑电路(4)设计微程序控制器中的其它逻辑单元电路,包括微地址寄存器、微命令寄存器和控制存储器(5)设计微程序控制器的顶层电路(由多个模块组成)。地址转移逻辑电路的设计地址转移逻辑电路是根据微程序流程图中的棱形框部分及多个分支微地址,利用微地址寄存器的异步置“1”端,实现微地址的多路转移。由于微地址寄存器中的触发器异步置“1”端低电平有效,与A5A0对应的异步置“1”控制信号SE6SE1的逻辑表达式为: SE6= ZFP(3)T

14、4SE5=ZFP(2)T4SE4=I15P(1)T4SE3=I14P(1)T4SE2=I13P(1)T4SE1=I12P(1)T4汇编程序代码设计如下:MOV R1,11H ;寄存器R1用于存放RAM的某个连续区域的首地址MOV R2,5H ;寄存器R2用于存放循环次数L0: IN1 R0;寄存器R0用于接收外部输入的数据STOI R0,(R1);将R0中的数存放入R1中RAM的地址处INC R1 ;将地址加1,跳到下一个地址DEC R2 ;将循环次数减1JNZ L0 ;循环不结束再重新跳回接收外部数据,循环结束则继续下面操作MOV R0,0 ;寄存器R0用于存放结果MOV R1,11H ;寄

15、存器R1用于存放数据已存入RAM的某个连续区域的首地址MOV R2,5H ;寄存器R2用于存放循环次数L1:LAD (R1),R3;寄存器R3用于存放刚才存入RAM的数据INC R1 ;将地址加1,跳到下一个地址TEST R3 ;测试符号标志位SF,判断其是否为负数JNS L2 ;若不为负则跳转,取出下一个数IMUL R3,R3 ;若为负则将该数求平方和ADD R3,R0 ;将平方和加入R0L2:DEC R2 ;将循环次数减1JNZ L1 ;循环次数没有完成,则跳回去再取数STO R0,10H ;将R0存放的结果放回到RAM中10H的地址处END:OUT1 R0;输出R0的结果内容JMP EN

16、D ;不断循环对应的地址秒机器代码表:地址(十六进制)汇编语言源程序机器代码00MOV R1,11H0010000100010001 01MOV R2,5H001000100000010102L0: IN1 R0000100000000000003STOI R0,(R1)101100010000000004INC R1010100010000000005DEC R2011000100000000006JNZ L0011100000000001007MOV R0,0001000000000000008MOV R1,11H001000010001000109MOV R2,5H00100010000

17、001010AL1: LAD (R1),R300110111000000000BINC R101010001000000000CTEST R311010011000000000DJNS L211100000000100000EIMUL R3,R311001111000000000FADD R3,R0010011000000000010L2:DEC R2011000100000000011JNZ L1011100000000101012STO R0,10H100000000001000013END:OUT1 R0101000000000000014JMP END10010000000100111

18、0 微程序流程图如下 :11 微指令格式如下:微地址LOADLDPCLDARLDIRLDRiLDPSWRs_BS2S1S0ALU_BSW_BLED_BRD_DCS_DRAM_BCS_IADDR_BP1P2uA5uA000110100100011111101100001100010100010111111000002100010100011111110000003101000000011111111000F041000111000011111110000051000111010011111110000061000111011011111110000071000001000111111110100

19、0810100010001111111000110901000010001111111000000A10000000001101111100000B10100011100111111100110C10001111110111001100000D10000111100110011100000E10000001000110011100000F1000101000111100110000100100001000111111100000111000000000111001110000200100001000111111100000五: MAX PLUS ii软件编译仿真测试和结果分析Top图如下 通过

20、创建二甲双胍仿真时序图 top.scf.,可以实现模型机的功能仿真,从图中可以看出cpu处理数据和数据的具体流向的每一个过程,如下是仿真的输出波形,具体结果和分析如下:六:遇到的问题及解决办法 由于设计的比老师给的稍微要复杂,多加了三条机器码,和一个P测试,难度提升了不少,在设计时从简单原则出发,又积极的寻问老师才确定下来要用的汇编代码和所要用的机器代码,以及微程序流程图,微程序指令等,但问题紧跟着来了,对于从来没有接触过VHDL语言的我来说,在进行编码,调试,编译的时候限入了困景,还有就是crom元器件的生成,是怎么由连接图转化而成的,最后在同学和老师的帮助下,基本熟悉了这些操作。但这么多的

21、二进制对于任何人来说一次性输入能保证不会出错的我相信没有谁敢打保票,我也不例外,在调试的时候发现结果运行的不是预期的,在经过了各种猜想和排查才发现有个微指令输入错误.七:心得体会两周的实验,一晃而过,本来一开始也感觉没什么压力,也是慢慢地做,有时间才去弄一下,但自从有大神们早早就验收时,一种无形的压力催使自己要多花点时间,早点把它搞定,最终也在老师给定的期限内做出来了。 通过本次课程设计,对CPU的执行和操作过程有个基本的了解,掌握了CISC模型机的用途和工作原理,认识了max plus II软件的使用和操作,对自我的设计实践能力有了显著的提高。此外这次课程设计还使我对上学期所学的计算机组成原

22、理的知识得到了提高,加深了对微程序,和微指令章节的知识有了深刻的理解,好些当时不懂的问题现在都已经搞清楚了,对计算机工作原理有了更新的认识。也体会到了作为一个大学生,要想学有所得,就得学习主动,不要什么都希望别人亲自传授,面对问题要自己去努力解决,多问问身边的同学,多动手查查,多上网找找,所以要想成功就得事事做到细心,耐心,恒心。已经大三了,在学校的时间已经不多了,要抓紧剩下的时间,别让自己的大学一事无成,为了自己的人生目标,只要坚持努力,总有一天会实现的,相信自己。八:参考文献1计算机原理课程设计 陈智勇,周向红,陆二庆编 西安电子科技大学出版社 20062 计算机组成原理 陈智勇 陈宏 王

23、鑫编 西安电子科技大学出版社 20093基于VHDL语言与Quartus 软件的可编程逻辑器件应用与开发 郑燕, 郝建国党建华著国防工业出版社 出版时间 2007九:附录ADDR源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ADDR IS PORT( I15,I14,I13,I12:IN STD_LOGIC; FZ,FS,T4,P1,P2,P3:IN STD_LOGIC; SE6,SE5,SE4,SE3,SE2,SE1:OUT STD_LOGIC);END ADDR;ARCHITECTURE A OF ADDR ISBEGIN SE6=N

24、OT (NOT FS) AND P3 AND T4); SE5=NOT (NOT FZ) AND P2 AND T4); SE4=NOT ( I15 AND P1 AND T4); SE3=NOT (I14 AND P1 AND T4); SE2=NOT (I13 AND P1 AND T4); SE1=NOT (I12 AND P1 AND T4);END A;ALU源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_SIGNED.all;ENTITY ALU

25、ISPORT( X: IN STD_LOGIC_VECTOR(7 DOWNTO 0); Y: IN STD_LOGIC_VECTOR(7 DOWNTO 0); S2,S1,S0: IN STD_LOGIC; ALUOUT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ; SF,ZF: OUT STD_LOGIC );END ALU;ARCHITECTURE A OF ALU ISSIGNAL AA,BB,TEMP:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN PROCESSBEGIN IF(S2=0 AND S1=0 AND S0=0) THEN-

26、ADD AA=X; BB=Y; TEMP=AA+BB;ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000)THEN ZF=1; ELSE ZF=0; END IF;ELSIF(S2=0 AND S1=0 AND S0=1) THEN -CMP(SUB) ALUOUT=X-Y;IF(XY) THEN SF=1; ZF=0; ELSIF(X=Y) THEN SF=0; ZF=1; ELSE SF=0; ZF=0; END IF; ELSIF(S2=0 AND S1=1 AND S0=0) THEN -INC

27、 AA=Y; TEMP=AA+1; ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=0 AND S1=1 AND S0=1) THEN -DEC AA=Y; TEMP=AA-1; ALUOUT=TEMP(7 DOWNTO 0); SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZF=0; END IF; ELSIF(S2=1 AND S1=0

28、 AND S0=0) THEN -AND TEMP=Y; SF=TEMP(7); ELSIF(S2=1 AND S1=0 AND S0=1) THEN -OR TEMP=X OR Y; ALUOUT=TEMP; SF=TEMP(7); IF (TEMP=10000000 OR TEMP=00000000) THEN ZF=1; ELSE ZFBUS ALUOUT=Y; SF=Y(7); ELSIF(S2=1 AND S1=1 AND S0=1) THEN -IMUL TEMP=Y *Y; SF=TEMP(7); ALUOUT=TEMP; IF (TEMP=10000000 OR TEMP=00

29、000000) THEN ZF=1; ELSE ZF=0; END IF;ELSE ALUOUT=00000000 ; ZF DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT DATAOUT=100000100011111111000000000; END CASE; UA(5 DOWNTO 0)=DATAOUT(5 DOWNTO 0); O(

30、20 DOWNTO 0)=DATAOUT(26 DOWNTO 6); END PROCESS;END A;CONVENT 源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CONVENT IS PORT( IRCODE:IN STD_LOGIC_VECTOR(15 DOWNTO 0); OP:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); I11,I10,I9,I8:OUT STD_LOGIC; A:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END CONVENT;ARCHITECTURE A

31、OF CONVENT ISBEGIN OP=IRCODE(15 DOWNTO 12); I11=IRCODE(11); I10=IRCODE(10); I9=IRCODE(9); I8=IRCODE(8); A=IRCODE(7 DOWNTO 0);END A;DECODER 源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DECODER IS PORT( I9,I8:IN STD_LOGIC; Y0,Y1,Y2,Y3:OUT STD_LOGIC );END DECODER;ARCHITECTURE A OF DECODER ISBEGIN

32、 PROCESS BEGIN IF(I9=0 AND I8=0) THEN Y0=1; Y1=0; Y2=0; Y3=0; ELSIF(I9=0 AND I8=1) THEN Y0=0; Y1=1; Y2=0; Y3=0; ELSIF(I9=1 AND I8=0) THEN Y0=0; Y1=0; Y2=1; Y3=0; ELSE Y0=0; Y1=0; Y2=0; Y3=1; END IF; END PROCESS;END A;F1源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY F1 IS PORT( UA5,UA4,UA3,UA2,UA

33、1,UA0: IN STD_LOGIC; D:OUT STD_LOGIC_VECTOR(5 DOWNTO 0);END F1;ARCHITECTURE A OF F1 ISBEGIN D(5)=UA5; D(4)=UA4; D(3)=UA3; D(2)=UA2; D(1)=UA1; D(0)=UA0;END A;F2 源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY F2 IS PORT( D:IN STD_LOGIC_VECTOR(5 DOWNTO 0); UA5,UA4,UA3,UA2,UA1,UA0: OUT STD_LOGIC );E

34、ND F2;ARCHITECTURE A OF F2 ISBEGIN UA5=D(5); UA4=D(4); UA3=D(3); UA2=D(2); UA1=D(1); UA0=D(0);END A;F3 源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY F3 IS PORT( D:IN STD_LOGIC_VECTOR(3 DOWNTO 0); UA3,UA2,UA1,UA0: OUT STD_LOGIC );END F3;ARCHITECTURE A OF F3 ISBEGIN UA3=D(3); UA2=D(2); UA1=D(1);

35、UA0=D(0);END A;FEN2 源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY FEN2 ISPORT(LED_B:IN STD_LOGIC;DBUS:IN STD_LOGIC_VECTOR(7 DOWNTO 0);FENOUT,OUTBUS:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END FEN2;ARCHITECTURE A OF FEN2 ISBEGIN PROCESS BEGIN IF(LED_B=0) THEN OUTBUS=DBUS; ELSE FENOUT=DBUS; END IF; END

36、PROCESS;END A;IR 源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY IR ISPORT( D: IN STD_LOGIC_VECTOR(15 DOWNTO 0); CLK: IN STD_LOGIC; Q: OUT STD_LOGIC_VECTOR(15 DOWNTO 0) );END IR; ARCHITECTURE A OF IR ISBEGIN PROCESS(CLK) BEGIN IF(CLKEVENT AND CLK=1) THEN Q=D; END IF; END PROCESS;END A;LS273 源程序:

37、LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LS273 ISPORT( D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); CLK: IN STD_LOGIC; Q: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END LS273; ARCHITECTURE A OF LS273 ISBEGIN PROCESS(CLK) BEGIN IF(CLKEVENT AND CLK=1) THEN Q=D; END IF; END PROCESS;END A;MCOMMAND 源程序:LIBRARY IEE

38、E;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;ENTITY MCOMMAND ISPORT( T2,T3,T4:IN STD_LOGIC; D:IN STD_LOGIC_VECTOR(20 DOWNTO 0); LOAD,LDPC,LDAR,LDIR,LDRI,LDPSW,RS_B,S2,S1,S0:OUT STD_LOGIC; ALU_B,SW_B,LED_B,RD_D,CS_D,RAM_B,CS_I,ADDR_B,P1,P2,P3:OUT STD_LOGIC

39、);END MCOMMAND;ARCHITECTURE A OF MCOMMAND ISSIGNAL DATAOUT:STD_LOGIC_VECTOR(20 DOWNTO 0);BEGIN PROCESS(T2) BEGIN IF(T2EVENT AND T2=1) THEN DATAOUT(20 DOWNTO 0)=D(20 DOWNTO 0); END IF; LOAD=DATAOUT(20); LDPC=DATAOUT(19) AND T4; LDAR=DATAOUT(18) AND T3; LDIR=DATAOUT(17) AND T3; LDRI=DATAOUT(16) AND T4

40、; LDPSW=DATAOUT(15) AND T4; RS_B=DATAOUT(14); S2=DATAOUT(13); S1=DATAOUT(12); S0=DATAOUT(11); ALU_B=DATAOUT(10); SW_B=DATAOUT(9); LED_B=DATAOUT(8); RD_D=NOT(NOT DATAOUT(7) AND (T2 OR T3); CS_D=NOT(NOT DATAOUT(6) AND T3); RAM_B=DATAOUT(5); CS_I=DATAOUT(4); ADDR_B=DATAOUT(3); P1=DATAOUT(2); P2=DATAOUT

41、(1); P3=DATAOUT(0); END PROCESS;END A;MMM源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MMM IS PORT( SE:IN STD_LOGIC; T2:IN STD_LOGIC; D:IN STD_LOGIC; CLR:IN STD_LOGIC; UA:OUT STD_LOGIC );END MMM;ARCHITECTURE A OF MMM ISBEGIN PROCESS(CLR,SE,T2) BEGIN IF(CLR=0) THEN UA=0; ELSIF(SE=0)THEN UA=1; E

42、LSIF(T2EVENT AND T2=1) THEN UA=D; END IF; END PROCESS;END A;全由由六个MMM即可组成一个aaMUX4_1源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX4_1 ISPORT(R0,R1,R2,R3:IN STD_LOGIC_VECTOR(7 DOWNTO 0);X:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);I11,I10:IN STD_LOGIC);END MUX4_1;ARCHITECTURE A OF MUX4_1 ISBEGIN PROCESS BEGIN IF(I11=0 AND I10=0) THEN X=R0; ELSIF(I11=0 AND I10=1)THEN X=R1; ELS

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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