欢迎来到天天文库
浏览记录
ID:31905248
大小:446.50 KB
页数:12页
时间:2019-01-26
《8位cpu的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.计算机组成原理实验题目8位CPU的系统设计学号1115106046姓名魏忠淋班级11电子B班指导老师凌朝东...华侨大学电子工程系8位CPU的系统设计一、实验要求与任务完成从指令系统到CPU的设计,编写测试程序,通过运行测试程序对CPU设计进行正确性评定。具体内容包括:典型指令系统(包括运算类、转移类、访存类)设计;CPU结构设计;规则文件与调试程序设计;CPU调试及测试程序运行。1.1设计指标能实现加减法、左右移位、逻辑运算、数据存取、有无条件跳转、内存访问等指令;1.2设计要求画出电路原理图、仿真波形图;二、CPU的组成结构...三、元器件的选择1.运算部件(ALU)ALU
2、181的程序代码:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYALU181ISPORT(S:INSTD_LOGIC_VECTOR(3DOWNTO0);A:INSTD_LOGIC_VECTOR(7DOWNTO0);B:INSTD_LOGIC_VECTOR(7DOWNTO0);F:OUTSTD_LOGIC_VECTOR(7DOWNTO0);COUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0);M:INSTD_LOGIC;CN:INSTD_LOGIC;CO,FZ:
3、OUTSTD_LOGIC);ENDALU181;ARCHITECTUREbehavOFALU181ISSIGNALA9:STD_LOGIC_VECTOR(8DOWNTO0);SIGNALB9:STD_LOGIC_VECTOR(8DOWNTO0);SIGNALF9:STD_LOGIC_VECTOR(8DOWNTO0);BEGINA9<='0'&A;B9<='0'&B;...PROCESS(M,CN,A9,B9)BEGINCASESISWHEN"0000"=>IFM='0'THENF9<=A9+CN;ELSEF9<=NOTA9;ENDIF;WHEN"0001"=>IFM='0'THE
4、NF9<=(A9orB9)+CN;ELSEF9<=NOT(A9ORB9);ENDIF;WHEN"0010"=>IFM='0'THENF9<=(A9or(NOTB9))+CN;ELSEF9<=(NOTA9)ANDB9;ENDIF;WHEN"0011"=>IFM='0'THENF9<="000000000"-CN;ELSEF9<="000000000";ENDIF;WHEN"0100"=>IFM='0'THENF9<=A9+(A9ANDNOTB9)+CN;ELSEF9<=NOT(A9ANDB9);ENDIF;WHEN"0101"=>IFM='0'THENF9<=(A9orB9)+(A
5、9ANDNOTB9)+CN;ELSEF9<=NOTB9;ENDIF;WHEN"0110"=>IFM='0'THENF9<=(A9-B9)-CN;ELSEF9<=A9XORB9;ENDIF;WHEN"0111"=>IFM='0'THENF9<=(A9or(NOTB9))-CN;ELSEF9<=A9and(NOTB9);ENDIF;WHEN"1000"=>IFM='0'THENF9<=A9+(A9ANDB9)+CN;ELSEF9<=(NOTA9)andB9;ENDIF;WHEN"1001"=>IFM='0'THENF9<=A9+B9+CN;ELSEF9<=NOT(A9XORB9);E
6、NDIF;WHEN"1010"=>IFM='0'THENF9<=(A9or(NOTB9))+(A9ANDB9)+CN;ELSEF9<=B9;ENDIF;WHEN"1011"=>IFM='0'THENF9<=(A9ANDB9)-CN;ELSEF9<=A9ANDB9;ENDIF;WHEN"1100"=>IFM='0'THENF9<=(A9+A9)+CN;ELSEF9<="000000001";ENDIF;WHEN"1101"=>IFM='0'THENF9<=(A9orB9)+A9+CN;ELSEF9<=A9OR(NOTB9);ENDIF;WHEN"1110"=>IFM='0'THEN
7、F9<=((A9or(NOTB9))+A9)+CN;ELSEF9<=A9ORB9;ENDIF;WHEN"1111"=>IFM='0'THENF9<=A9-CN;ELSEF9<=A9;ENDIF;WHENOTHERS=>F9<="000000000";ENDCASE;IF(A9=B9)THENFZ<='0';ENDIF;ENDPROCESS;F<=F9(7DOWNTO0);CO<=F9(8);COUT<="0000"WHENF9(8)='0'ELSE"0001";ENDbehav;
此文档下载收益归作者所有