文档库 最新最全的文档下载
当前位置:文档库 › 计组实验课程设计

计组实验课程设计

计组实验课程设计
计组实验课程设计

《计算机组成实验C》

课程设计

适用专业:电子信息类专业

专业:计算机科学与技术

班级:计科四班

学号:2 0 1 2 2 3 7 8

姓名:王云龙

指导教师:陈红梅

实验学期: 2014-2015第1学期

西南交通大学

信息科学与技术学院

简化计算机系统的设计

一.实验目的

通过学习简单的指令系统及其各指令的操作流程,用VHDL语言实现简单的处理器模块,并通过调用存储器模块,将处理器模块和存储器模块连接形成简化的计算机系统。

二. 实验内容

1. 用VHDL语言实现简单的处理器模块。

2. 调用存储器模块设计64×8的存储器模块。

3. 将简单的处理器模块和存储器模块连接形成简单的计算机系统。

4. 将指令序列存入存储器,然后分析指令执行流程。

三. 预习要求:1、学习简单指令集。2、学习各指令的操作流程。

四. 实验报告

1. BLOCK图

2.内存文件

内存文件中的数据:

3. 程序设计

LIBRARY ieee;

USE ieee.std_logic_1164.ALL;

PACKAGE mypack IS

CONSTANT idle : std_logic_vector(3 DOWNTO 0) :="0000";

CONSTANT load : std_logic_vector(3 DOWNTO 0) :="0001";

CONSTANT move : std_logic_vector(3 DOWNTO 0) :="0010";

CONSTANT addx : std_logic_vector(3 DOWNTO 0) :="0011";

CONSTANT subp : std_logic_vector(3 DOWNTO 0) :="0100";

CONSTANT andp : std_logic_vector(3 DOWNTO 0) :="0101";

CONSTANT orp : std_logic_vector(3 DOWNTO 0) :="0110";

CONSTANT xorp : std_logic_vector(3 DOWNTO 0) :="0111";

CONSTANT shrp : std_logic_vector(3 DOWNTO 0) :="1000";

CONSTANT shlp : std_logic_vector(3 DOWNTO 0) :="1001";

CONSTANT swap : std_logic_vector(3 DOWNTO 0) :="1010";

CONSTANT jmp : std_logic_vector(3 DOWNTO 0) :="1011";

CONSTANT jz : std_logic_vector(3 DOWNTO 0) :="1100";

CONSTANT read : std_logic_vector(3 DOWNTO 0) :="1101";

CONSTANT write : std_logic_vector(3 DOWNTO 0) :="1110";

CONSTANT stop : std_logic_vector(3 DOWNTO 0) :="1111";

END mypack;

LIBRARY ieee;

USE ieee.std_logic_1164.ALL;

USE ieee.std_logic_unsigned.ALL;

USE WORK.mypack.ALL;

------------------------cpu实体声明--------------------------------- ENTITY cpu IS

PORT(

reset : IN std_logic; --清零信号低有效

clock : IN std_logic; --时钟信号

Write_Read: OUT std_logic; --读写信号,'1'为写

M_address: OUT std_logic_vector(11 DOWNTO 0); --地址线

M_data_in: IN std_logic_vector(7 DOWNTO 0); --数据输入线

M_data_out: OUT std_logic_vector(7 DOWNTO 0); --数据输出线

overflow: OUT std_logic); --溢出标志

END cpu;

------------------------cpuRTL级行为描述--------------------------------

ARCHITECTURE RTL of cpu IS

SIGNAL IR: std_logic_vector(15 DOWNTO 0); --指令寄存器

SIGNAL MDR: std_logic_vector(7 DOWNTO 0); --数据寄存器

SIGNAL MAR: std_logic_vector(11 DOWNTO 0); --地址寄存器

SIGNAL status: integer RANGE 0 TO 4; --状态寄存器

SIGNAL PC:std_logic_vector(11 DOWNTO 0); --程序计数器

SIGNAL R0,R1,R2,R3: std_logic_vector(7 DOWNTO 0); --通用寄存器

SIGNAL A: std_logic_vector(7 DOWNTO 0); --累加寄存器

BEGIN

status_change: PROCESS(reset, clock, status )

BEGIN

IF reset = '0' THEN

status <= 0 ;

A <= (OTHERS=>'0');

MAR <= (OTHERS=>'0');

ELSIF clock'EVENT AND clock = '0' THEN

CASE status IS

WHEN 0 =>

IF IR(15 DOWNTO 12)/=Stop THEN

MAR <=pc;

END IF;

CASE IR(15 DOWNTO 12) IS

WHEN shlp|shrp =>

CASE IR(11 DOWNTO 10) IS-- Rx to A

WHEN"00"=> A<= R0;

WHEN"01"=> A<= R1;

WHEN"10"=> A<= R2;

WHEN OTHERS => A<= R3;

END CASE;

WHEN Load|Move|addx|subp|andp|orp|xorp|Swap => CASE IR(9 DOWNTO 8) IS-- Ry to A

WHEN"00"=> A<=R0;

WHEN"01"=> A<=R1;

WHEN"10"=> A<=R2;

WHEN OTHERS=> A<=R3;

END CASE;

WHEN OTHERS => NULL;

END CASE;

status <= 1;

WHEN 1 =>

CASE IR(15 DOWNTO 12) IS

WHEN Stop =>

status <=1;

WHEN Swap|Jmp|Jz|Read|Write =>

status <=2;

WHEN OTHERS =>

status <=0;

END CASE;

WHEN 2 =>

CASE IR(15 DOWNTO 12) IS

WHEN Swap =>

status <=0;

WHEN Jmp|Write|Read =>

MAR <= IR(11 DOWNTO 0);

status <= 3;

WHEN Jz =>

IF R0="00000000"THEN MAR <= IR(11 DOWNTO 0);

ELSE MAR <= PC;

END IF;

status <= 3;

WHEN OTHERS =>

status <= 3;

END CASE;

WHEN 3 =>

CASE IR(15 DOWNTO 12) IS

WHEN Jmp|Jz =>

status <=0;

WHEN Read|Write =>

MAR <= pc;

status <=4;

WHEN OTHERS =>

status <=4;

END CASE;

WHEN 4 =>

status <= 0;

END CASE;

ELSE

NULL;

END IF;

END PROCESS status_change;

seq: PROCESS(reset,clock)

VARIABLE temp: std_logic_vector(8 DOWNTO 0); --临时变量

BEGIN

IF(reset='0') THEN-- 清零

IR <= (OTHERS=>'0');

PC <= (OTHERS=>'0');

R0 <= (OTHERS=>'0');

R1 <= (OTHERS=>'0');

R2 <= (OTHERS=>'0');

R3 <= (OTHERS=>'0');

MDR <= (OTHERS=>'0');

ELSIF(clock'event AND clock='1') THEN

overflow <= '0';

CASE status IS

WHEN 0=> --状态0

IR <= M_data_in & "00000000"; --取指令

PC <= PC+1; --程序计数器加1

WHEN 1=> --状态1

CASE IR(15 DOWNTO 12) IS

WHEN load =>

R0<= "0000" & IR(11 DOWNTO 8);

WHEN addx => -- Rx:= Rx + A;

CASE IR(11 DOWNTO 10) IS

WHEN"00"=>

temp := (R0(7) & R0(7 DOWNTO 0)) + (A(7) & A(7 DOWNTO 0));

R0<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN"01"=>

temp :=(R1(7) & R1(7 DOWNTO 0)) + (A(7) & A(7 DOWNTO 0));

R1<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN"10"=>

temp :=(R2(7) & R2(7 DOWNTO 0)) + (A(7) & A(7 DOWNTO 0));

R2<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN OTHERS=>

temp :=(R3(7) & R3(7 DOWNTO 0)) + (A(7) & A(7 DOWNTO 0));

R3<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN subp => -- Rx:= Rx - A;

CASE IR(11 DOWNTO 10) IS

WHEN"00"=>

temp:=(R0(7) & R0(7 DOWNTO0)) + NOT(A(7) & A(7 DOWNTO0)) + 1;

R0<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN"01"=>

temp:=(R1(7) & R1(7 DOWNTO0)) + NOT(A(7) & A(7 DOWNTO0)) + 1;

R1<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

WHEN"10"=>

temp:=(R2(7) & R2(7 DOWNTO0)) + NOT(A(7) & A(7 DOWNTO0)) + 1;

R2<=temp(7 DOWNTO 0);

overflow <= temp(8) xor temp(7);

WHEN OTHERS=>

temp:=(R3(7) & R3(7 DOWNTO0)) + NOT(A(7) & A(7 DOWNTO0)) + 1;

R3<=temp(7 DOWNTO 0);

overflow <= temp(8) XOR temp(7);

END CASE;

WHEN move =>

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<= A;

WHEN"01"=> R1<= A;

WHEN"10"=> R2<= A;

WHEN OTHERS=> R3<= A;

END CASE;

WHEN shrp =>

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<= '0' & R0( 7 DOWNTO 1 );

WHEN"01"=> R1<= '0' & R1( 7 DOWNTO 1 );

WHEN"10"=> R2<= '0' & R2( 7 DOWNTO 1 );

WHEN OTHERS=> R3<= '0' & R3( 7 DOWNTO 1 );

END CASE;

WHEN shlp =>

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<= R0( 6 DOWNTO 0 ) & '0';

WHEN"01"=> R1<= R1( 6 DOWNTO 0 ) & '0';

WHEN"10"=> R2<= R2( 6 DOWNTO 0 ) & '0';

WHEN OTHERS=> R3<= R3( 6 DOWNTO 0 ) & '0';

WHEN andp => --Rx:= Rx AND A;

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<=R0AND A;

WHEN"01"=> R1<=R1AND A;

WHEN"10"=> R2<=R2AND A;

WHEN OTHERS=> R3<=R3AND A;

END CASE;

WHEN orp => --Rx:= Rx OR A;

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<=R0OR A;

WHEN"01"=> R1<=R1OR A;

WHEN"10"=> R2<=R2OR A;

WHEN OTHERS=> R3<=R3OR A;

END CASE;

WHEN xorp => --Rx:= Rx XOR A;

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<=R0XOR A;

WHEN"01"=> R1<=R1XOR A;

WHEN"10"=> R2<=R2XOR A;

WHEN OTHERS=> R3<=R3XOR A;

END CASE;

WHEN Swap => --Swap: Rx to Ry;

CASE IR(11 DOWNTO 8) IS

WHEN"0100"=> R0<=R1;

WHEN"1000"=> R0<=R2;

WHEN"1100"=> R0<=R3;

WHEN"0001"=> R1<=R0;

WHEN"1001"=> R1<=R2;

WHEN"1101"=> R1<=R3;

WHEN"0010"=> R2<=R0;

WHEN"0110"=> R2<=R1;

WHEN"1110"=> R2<=R3;

WHEN"0111"=> R3<=R1;

WHEN"1011"=> R3<=R2;

WHEN"0011"=> R3<=R0;

WHEN OTHERS=> NULL;

END CASE;

WHEN OTHERS => NULL;

END CASE;

WHEN 2=> --状态2 CASE IR(15 DOWNTO 12) IS

WHEN Swap=> -- Swap: A to Rx

CASE IR(11 DOWNTO 10) IS

WHEN"00"=> R0<=A;

WHEN"01"=> R1<=A;

WHEN"10"=> R2<=A;

WHEN OTHERS=> R3<=A;

END CASE;

WHEN Jz|Read =>

IR(7 DOWNTO 0)<= M_data_in; -- 取双字节指令的后半部分

IF R0/="00000000"THEN

pc <= pc+1;

END IF;

WHEN Jmp =>

IR(7 DOWNTO 0)<= M_data_in;

WHEN Write =>

IR(7 DOWNTO 0)<= M_data_in;

pc <= pc+1;

MDR <= R0;

WHEN OTHERS => NULL;

END CASE;

WHEN 3=> --状态3

CASE IR(15 DOWNTO 12) IS

WHEN jmp => -- 无条件转移指令

PC <= IR(11 DOWNTO 0);

WHEN Jz => -- 条件转移指令

IF(R0="00000000") then

PC <= IR(11 DOWNTO 0);

END IF;

WHEN OTHERS => NULL;

END CASE;

WHEN 4=> --状态4

CASE IR(15 DOWNTO 12) IS

WHEN Read => R0 <= M_data_in; --读数据

WHEN OTHERS=> NULL;

END CASE;

END CASE;

END IF;

END process seq;

comb: PROCESS (reset, status)

BEGIN

IF (reset = '1' AND status = 3 AND IR(15 DOWNTO 12)= Write ) THEN Write_Read <= '1';

ELSE

Write_Read <= '0';

END IF;

END PROCESS comb;

M_address <= MAR;

M_data_out <= MDR;

END RTL;

4.仿真波形图

执行过程解释:

指令Load,Add,Move,Sub,And,Or,Xor,Shr,Shl的执行需要两个时钟周期,即两个状态0,1;

指令Swap的执行需要三个时钟周期,即三个状态0,1,2;

指令Jz,Jmp的执行需要4个时钟周期,即四个状态0,1,2,3;

指令Read,Write的执行需要5个时钟周期,即状态0,1,2,3,4;

(1)刚开始reset信号为0,所有寄存器清零,状态清零,之后reset=1,clock有效,开始取指令并执行;

(2)取地址为000H指令:Idle,无操作,pc=pc+1;

(3)取地址为001H指令:Load 5,操作为R0=5H,pc=pc+1;

(4)取地址为002H指令:Move R1,R0,操作为R1=R0=5H,pc=pc+1;

(5)取起始地址为003H指令:Read 01F,操作为R0=(01F)=39H,pc=pc+1;

(6)取地址为005H指令:Shl R1,操作为R1=(R1左移一位),操作完成后R1=0AH;

(7)取地址为006H指令:Add R0,R1,操作为R0=R0+R1,操作完成后R0=43H;

(8)取起始地址为007H指令:Write 01E,操作为(01EH)=R0=43H;

(9)取地址为009H指令:Sub R0,R1,操作为R0=R0-R1,操作完成后R0=39H;

(10)取地址为00AH指令:Swap R0,R1,操作为R1和R0的值互换,完成后R1=39H,R0=0AH;

(11)取地址为00BH指令:OR R0,R1,操作为R0=R0 OR R1,完成后R0=3BH;

(12)取地址为00CH指令:Shr R1,操作为R1=(R1右移一位),完成后R1=1CH;

(13)取地址为00DH指令:AND R0,R1,操作为R0=R0 AND R1,完成后R0=18H;

(14)取地址为00EH指令:Move R2,R0,操作为R2=R0,完成后R2=18H;

(15)取地址为00FH指令:Move R3,R1,操作为R3=R1,完成后R3=1CH;

(16)取地址为010H指令:XOR R2,R3,操作为R2=R2 XOR R3,完成后R2=04H;

(17)取起始地址为011H指令:Read 01E,操作为R0=(01EH)=43H;

(18)取起始地址为013H指令:Jz 019,操作为如果R0=00H,则跳转到起始地址为019H的指令开始执行,否则继续执行下一条指令,由于R0=43H,故不跳转,继续执行;

(19)取起始地址为015H指令:Read 01D,操作为R0=(01DH)=00H;

(20)取起始地址为017H指令:Jmp 013,操作为无条件跳转到起始地址为013H的指令(Jz 019)开始执行;

(21)取起始地址为013H指令:Jz 019,由于此时的R0=00H,故跳转到起始地址为019H的指令(Stop)开始执行;

(22)取地址为019H指令:Stop,停止执行。

5. 实验感想

计算机组成原理阵列乘法器课程设计报告

. 课程设计

. 教学院计算机学院 课程名称计算机组成原理题目4位乘法整列设计专业计算机科学与技术班级2014级计本非师班姓名唐健峰 同组人员黄亚军 指导教师 2016 年10 月 5 日

1 课程设计概述 1.1 课设目的 计算机组成原理是计算机专业的核心专业基础课。课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。 同时也巩固了我们对课本知识的掌握,加深了对知识的理解。在设计中我们发现问题,分析问题,到最终的解决问题。凝聚了我们对问题的思考,充分的锻炼了我们的动手能力、团队合作能力、分析解决问题的能力。 1.2 设计任务 设计一个4位的二进制乘法器: 输入信号:4位被乘数A(A1,A2,A3,A4), 4位乘数B(B1,B2,B3,B4), 输出信号:8位乘积q(q1,q2,q3,q4,q5,q6,q7,q8). 1.3 设计要求 根据理论课程所学的至少设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统。 (1)制定设计方案: 我们小组做的是4位阵列乘法器,4位阵列乘法器主要由求补器和阵列全加器组成。 (2)客观要求 要掌握电子逻辑学的基本内容能在设计时运用到本课程中,其次是要思维灵活遇到问题能找到合理的解决方案。小组成员要积极配合共同达到目的。

2 实验原理与环境 2.1 1.实验原理 计算机组成原理,数字逻辑,maxplus2是现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 用乘数的每一位去乘被乘数,然后将每一位权值直接去乘被乘数得到部分积,并按位列为一行每一行部分积末位与对应的乘数数位对齐,体现对应数位的权值,将各次部分积求和得到最终的对应数位的权值。 2.2 2.实验环境 2.2.1双击maxplu2II软件图标,启动软件 (1).新建工程,flie->new project ....,出现存储路径的选项框,指定项目保存路径并且为工程命名,第三行设置实体名,保持与工程名一致。点击OK

计算机组成原理课程设计

附件一 湖南工业大学 课程设计 资料袋 计算机与通信学院(系、部)2015 ~ 2016 学年第2 学期课程名称计算机组成原理指导教师杨伟丰职称教授 学生姓名顾宏亮专业班级软件1403 学号14408300328 题目复杂模型机的设计 成绩起止日期2016 年 6 月20日~2016 年6月21 日 目录清单

附件二湖南工业大学 课程设计任务书 2015 —2016 学年第2 学期 计通 学院(系、部)软件专业1403 班级 课程名称:计算机组成原理 设计题目:复杂模型机的设计 完成期限:自2016 年 6 月20 日至2016 年6 月21 日共 1 周 内容及任务1.根据复杂模型机的指令系统,编写实验程序 2.按图连接实验线路,仔细检查线路无误后接通电源。 3.写程序 4.运行程序 进度安排 起止日期工作内容2016.6.20-2016.6.21连接线路进行实验 主 要 参 考 资 料 唐朔飞.计算机组成原理.北京:高等教育出版社 指导教师(签字):年月日系(教研室)主任(签字):年月日附件三

设计说明书 计算机组成原理 复杂模型机的设计 起止日期:2016 年6月20 日至2016 年 6 月21 日 学生姓名顾宏亮 班级软件1403 学号14408300328 成绩 指导教师(签字) 计算机与通信学院(部) 2016年7月1日 设计题目:复杂模型机的设计

一、设计目的 综合运用所学计算机原理知识,设计并实现较为完整的模型计算机。 二、设计内容 根据复杂模型机的指令系统,编写实验程序,并运行程序,观察和记录运行结果。 三、预备知识 1、数据格式 8位,其格式如下: 1≤X<1。 2、指令格式 模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O指令、访问存储器、转移指令和停机指令。 (1)算术逻辑指令 (2)访存指令及转移指令 模型机设计2条访存指令,即存数(STA)、取数(LD),2条转移指令,即无条件转移(JMP)、结果 ,M (3)I/O指令 OUT指令中,addr=10时,表示选中“OUTPUT UNIT”中的数码块作为输出设备。 (4)停机指令

计组实验报告

计算机组成原理实验报告 实验1:VERILOG 设计基础 专业班级:14级计算机二班 学号:14048001 姓名:杨娜 学号:14048003 姓名:周蓉 实验地点:理工楼901 实验时间:2016年5月14日

实验十VGA显示控制器的设计 一、实验目的 1、学习VERILOG的基本语法和编程规则 2、掌握通用寄存器等常用基本数字模块的VERILOG描述和基本设计方法 3、理解带使能控制和异步清零的8位寄存器的设计原理 4、掌握使用VERILOG设计和验证带使能控制和异步清零的8位寄存器的方法 5、掌握移位寄存器的设计方法 二、实验任务 1、设计一个带使能控制和异步清零的8位寄存器REG8X,实现8位输入的锁存,在时钟的上升沿处得到一个8位的输出和一个8位的反向输出,将结果显示在发光二极管。 模块的端口描述如下: 模块的参考物理结构如下: R7 R6 R i R 0 7 6 i 0 带使能控制和异步清零的8位寄存器 模块的使用注意事项

1.数据源D(7..0)一直加在寄存器的数据输入端; 2.周期性的时钟信号Clock一直加在寄存器的时钟输入端 3.使能信号Enable控制寄存器是否接受数据。当Enable = '0'时,寄存器不 接受数据,保持原来的状态不变;当Enable = '1'时,在时钟信号Clock正 跳变时,寄存器接受并保存当时D(7..0)的数据; 4.本寄存器其它方面的功能与上述的寄存器相同。 完成的参考电路图如下:dout=q 2、设计一个有左、右移位功能的8位寄存器REGSHIFT8,并仿真验证。

三、实验内容 1、通过输入数据先进行计算,并通过实验进行验证REG8X。 (1)、将清零信号Resetn(sw17)设为0,将输入信号D(sw7~sw0)设为10101010,观察输出信号Q(ledr7~ledr0)和Qb(ledg7~ledg0),观察并记录输出。 (2)、将清零信号Resetn(sw17)设为1,在时钟信号处输入一个上升沿(按下key0),观察并记录输出。 (3)、将输入信号D(sw7~sw0)设为01010101,观察并记录输出。 (4)、在时钟信号处输入一个上升沿(按下key0),观察并记录输出。 (5)、自行完善设计表格,观察并记录测试输出。 实验数据表 2、通过输入数据先进行计算,并通过实验进行验证REGSHIFT8。 (1)、测试清零信号Resetn (2)、测试移位功能 (3)、测试寄存功能 (4)、自行设计表格观察并记录测试输出。 实验数据表

数字温度计课程设计报告

课程设计报告书 课程名称:电工电子课程设计 题目:数字温度计 学院:信息工程学院 系:电气工程及其自动化 专业班级:电力系统及其自动化113 学号:6100311096 学生姓名:李超红 起讫日期:6月19日——7月2日 指导教师:郑朝丹职称:讲师 学院审核(签名): 审核日期:

内容摘要: 目前,单片机已经在测控领域中获得了广泛的应用,它除了可以测量电信以外,还可以用于温度、湿度等非电信号的测量,能独立工作的单片机温度检测、温度控制系统已经广泛应用很多领域。 单片机是一种特殊的计算机,它是在一块半导体的芯片上集成了CPU,存储器,RAM,ROM,及输入与输出接口电路,这种芯片称为:单片机。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便的优点,使它迅速的得到了推广应用,目前已成为测量控制系统中的优选机种和新电子产品中的关键部件。单片机已不仅仅局限于小系统的概念,现已广泛应用于家用电器,机电产品,办公自动化用品,机器人,儿童玩具,航天器等领域。 本次课程设计,就是用单片机实现温度控制,传统的温度检测大多以热敏电阻为温度传感器,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路转换成数字信号才能由单片机进行处理。本次采用DS18B20数字温度传感器来实现基于51单片机的数字温度计的设计。 本文介绍了一个基于STC89C52单片机和数字温度传感器DS18B20的测温 系统,并用LED数码管显示温度值,易于读数。系统电路简单、操作简便,能 任意设定报警温度并可查询最近的10个温度值,系统具有可靠性高、成本低、功耗小等优点。 关键词:单片机数字温度传感器数字温度计

计算机组成原理课程设计报告

计算机组成原理课程设计报告JUC2模型机的微程序设计 姓名沈钰城 学号3140604029 专业信息安全 指导教师肖铁军 江苏大学计算机学院 2016年1 月 6 日

一.实验环境 1.使用的硬件实验板 (1)品牌,型号 实验板品牌:Altera 实验板型号:DE2-115 FPGA芯片品牌:Cyclone IV E FPGA芯片型号:EP4CE115 (2)FPGA在现代工业中的应用 FPGA令系统开发商的产品更快速地推向市场;更长的生命周期;灵活性,可支持各种标准和网络协议;低成本,低功耗。 在工业应用中,FPGA可取代旧的ASIC技术,提供更具成本有效性的解决方案;FPGA作为通信协处理器负责连接到以太网的工作,灵活的解决方案可以通过一个硬件平台支持多种协议;用FPGA控制马达,通过它的嵌入式处理器,实时特性和数字编码器轻松实现。 另一个典型应用是马达控制。目前世界工业电力的2/3都用来驱动电机,但只有2%的电机使用了可变速的驱动,如果使用变速电机控制每年将节约10个发电厂的能量。使用电机控制芯片技术将把工业应用的能耗效率提升到88%。系统有这样的需求:在增加以太网连接能力同时不想增加额外的器件;想要灵活的方法去控制多个马达和差异化的产品;想要一个支持马达控制和现场总线连接能力的单芯片方案。基于Cylone III的马达驱动方案通过集成了不同的算法和I/O接口可满足不同的特性需求。Altera与第三方伙伴合作,将他们提供的优化算法整合到FPGA中,一个平台可实现多个电机控制,大大提高能源利用效率 2.使用的设计软件 (1)品牌、名称、版本、发布年份 软件品牌:Altera 名称:quartus ii 版本:12.0 发布年份:2012 (2)行业对该软件的评价 Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与Cadence、ExemplarLogic、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。改进了软件的LogicLock模块设计功能,增添了FastFit编译选项,推进了网络编辑性能,而且提升了调试能力。支持MAX7000/MAX3000等乘积项器件 Quartus II设计套装的其他特性包括:DSP Builder 12.0新的数字信号处理(DSP)支持——通过系统控制台,与MATLAB的DDR存储器进行通信,并具有新的浮点功能,提高了设计效能,以及DSP效率。经过改进的视频和图像处理(VIP)套装以及视频接口IP——通过具有边缘自适应算法的Scaler II MegaCore功能以及新的Avalon-Streaming (Avalon-ST)视频监视和跟踪系统IP内核,简化了视频处理应用的开发。增强收发器设计和验证——更新了Arria V FPGA的收发器工具包支持,进一步提高收发器数据速率(对于Stratix V FPGA,高达14.1 Gbps)。 3.使用的调试工具 硬件:JUPOD调试适配器 软件:JULAB实验系统软件 江苏大学计算机学院研发

计组课设实验报告

《计算机组成原理与系统结构》课程设计 实 验 报 告 课题:两个16位二进制数加法计算 班级: 成员: 完成日期:2013年10月11日

一:课程设计步骤 1.确定设计目标 综合考虑实验条件及自身能力水平,以及设计功能的可靠性和实用性,我们小组决定将设计目标定为“两个16位二进制数相加”。分两次分别输入两个加数的低八位和高八位,输出两个16位二进制数相加的结果。 2.确定指令系统 (1)数据格式 模型机规定数据采用定点整数补码表示,字长为8位,其格式如下: 7 6 5 4 3 2 1 0 符号尾数 (2)指令格式 模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。 ①算术逻辑指令 设计九条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下: 7 6 5 4 3 2 1 0 OP-CODE RS RD 其中,OP-CODE为操作码,RS为源寄存器,RD为目的寄存器,并规定: RS或RD 选定的寄存器 00 01 10 R0 R1 R2 ②I/O指令 输入(1N)和输入(OUT)指令采用单字节指令,其格式如下: 7 6 5 4 3 2 1 0 OP-CODE addr RD 其中,addr=01时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10时,选中“INPUT DEVICE”中的数码块作为输入设备。 ③访问指令及转移指令 模型机设计两条访问指令,即存数(STA)、取数(LDA),两条颛臾指令,即无条件转移(JMP)、结果为零或有进位转移(BZC),指令格式如下: 7 6 5 4 3 2 1 0 00 M OP-CODE RD D 其中,OP-CODE为操作码,rd为目的寄存器地址(LDA、STA指令使用)。D为位移量(正负均可),M为寻址模式,其定义如下: 寻址模式有效地址E 说明 00 E=D 直接寻址

计组-加法器实验报告

半加器、全加器、串行进位加法器以及超前进位加法器 一、实验原理 1.一位半加器 A和B异或产生和Sum,与产生进位C 2.一位全加器 将一位半加器集成封装为halfadder元件,使用两个半加器构成一位的全加器 3.4位串行进位加法器 将一位全加器集成封装为Fulladder元件,使用四个构成串行进位加法器

4.超前进位加法器(4位) ⑴AddBlock 产生并行进位链中的ti(即Cthis)和di(即Cpass),以及本位结果Sum ⑵进位链(Cmaker) 四位一组并行进位链,假设与或非门的级延迟时间为1.5ty,与非门的延迟时间为1ty,在di和ti产生之后,只需2.5ty就可产生所有全部进位

⑶超前进位加法器 将以上二者结合起来即可完成,A和B各位作为各个AddBlock的输入,低一位的进位Ci-1作为本位AddBlock的C-1的输入。各个AddBlock输出的C_this和C_pass作为对应的Cmaker的thisi和passi的输入。

二、实验器材 QuartusII仿真软件,实验箱 三、实验结果 1.串行进位加法器结果 2.超前进位加法器结果

四、实验结果分析 1.实验仿真结果显示串行加法器比超前进位加法器快,部分原因应该是电路结构优化 不到位。另外由于计算的位数比较少,超前进位加法链结构较复杂,所以优势没体现出来,反倒运作的更慢一点。当位数增加的时候,超前进位加法器会比串行的更快。 2.波形稳定之前出现上下波动,应该与“竞争冒险”出现的情况类似,门的延迟和路径 的不同导致了信号变化时到达的时间有先有后,因此在最终结果形成前出现了脉冲尖峰和低谷;另外也可能部分原因由于电路结构优化的不到位所致

计算机组成原理课程设计报告完整版

计算机组成原理课程设计报告 班级:06计算机 6 班姓名:李凯学号:20063007 完成时间:2009年1月3日 一、课程设计目的 1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3.培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1.硬件 ●COP2000实验仪 ●PC机 2.软件 ●COP2000仿真软件 四、课程设计的具体内容(步骤) 1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点: COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、

累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。 模型机为8位机,数据总线、地址总线都为8位,但其工作原理与16位机相同。相比而言8位机实验减少了烦琐的连线,但其原理却更容易被学生理解、吸收。 模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。

计算机组成原理课程设计

计算机组成原理课程设 计 WTD standardization office【WTD 5AB- WTDK 08- WTD 2C】

《计算机组成原理》大作业报告 题目名称:交通灯控制系统设计 学院(部):计算机学院 专业:计算机科学与技术 学生姓名: 班级 学号 最终评定成绩: 湖南工业大计算机学院 目录 摘要 交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流

量、提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 本系统采用单片机AT89S52为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。 本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LED数码显示系统、复位电路等几大部分组成。系统除基本的交通灯功能外,还具有倒计时等功能,较好的模拟实现了十字路口可能出现的状况。 软件上采用C51编程,主要编写了主程序,LED数码管显示程序,中断程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。 1. 引言 当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。 电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,19xx年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 19xx年,又出现了带控制的红绿灯和红外线红绿灯。带控制的 4 红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。19xx年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉

计组-4位乘法器实验报告

实验4位乘法器实验报告 姓名:X XX 学号:X XX 专业:计算机科学与技术课程名称:计算机组成同组学生姓名:无 实验时间:实验地点:指导老师:XXX 一、实验目的和要求 1.熟练掌握乘法器的工作原理和逻辑功能 二、实验内容和原理 实验内容: 根据课本上例3-7的原理,来实现4位移位乘法器的设计。 具体要求:1. 乘数和被乘数都是4位 2. 生成的乘积是8位的 3. 计算中涉及的所有数都是无符号数 4.需要设计重置功能 5.需要分步计算出结果(4位乘数的运算,需要四步算出结果) 实验原理: 1.乘法器原理图

2.本实验的要求: 1.需要设计按钮和相应开关,来增加乘数和被乘数 2.每按一下M13,给一个时钟,数码管的左边两位显示每一步的乘 积 3.4步计算出最终结果后,LED灯亮,按RESET重新开始计算 三、主要仪器设备 1.Spartan-III开发板1套 2.装有ISE的PC机1台 四、操作方法与实验步骤 实验步骤: 1.创建新的工程和新的源文件 2.编写verilog代码(top模块、display模块、乘法运算模块、去抖动模块以及 UCF引脚) 3.进行编译 4.进行Debug 工作,通过编译。

5.. 生成FPGA代码,下载到实验板上并调试,看是否与实现了预期功能 操作方法: TOP: module alu_top(clk, switch, o_seg, o_sel); input wire clk; input wire[4:0] switch; output wire [7:0] o_seg; // 只需七段显示数字,不用小数点 output wire [3:0] o_sel; // 4个数码管的位选 wire[15:0] disp_num; reg [15:0] i_r, i_s; wire [15:0] disp_code; wire o_zf; //zero detector initial begin i_r <= 16'h1122; //0x1122 i_s <= 16'h3344; //0x3344 end alu M1(i_r, i_s, switch[4:2], o_zf, disp_code); display M3(clk, disp_num, o_seg, o_sel); assign disp_num = switch[0]?disp_code:(switch[1] ? i_s : i_r); endmodule

数字逻辑数字频率计的设计课程设计报告

滁州学院 课程设计报告 课程名称:数字逻辑课程设计 设计题目:数字频率计的设计 系别:网络与通信工程系 专业:网络工程(无线传感器网络方向)组别:第七组 起止日期:2012年5月28日~2012年6 月18日指导教师:姚光顺 计算机与信息工程学院二○一二年制

课程设计任务书

目录 1绪论 (1) 1.1设计背景 (1) 1.2主要工作和方法 (1) 1.3本文结构 (1) 2相关知识 (1) 2.1数字频率计概念...................................................................................................................... .. (1) 2.2数字频率计组成 (1) 3系统设计 (2) 4系统实现 (2) 4.1计数译码显示电路 (2) 4.2控制电路 (3) 5系统测试与数据分析 (5) 6课程设计总结与体会 (8) 6.1设计总结 (8) 6.2设计体会 (8) 结束语 (9) 参考文献 (9) 附录 (10) 致谢 (12)

1绪论 1.1设计背景 数字频率计是一种基础测量仪器,到目前为止已有 30 多年的发展史。早期,设计师们追求的目标主要是扩展测量范围,再加上提高测量精度、稳定度等,这些也是人们衡量数字频率计的技术水平,决定数字频率计价格高低的主要依据。目前这些基本技术日臻完善,成熟。应用现代技术可以轻松地将数字频率计的测频上限扩展到微频段。 随着科学技术的发展,用户对数字频率计也提出了新的要求。对于低档产品要求使用操作方便,量程(足够)宽,可靠性高,价格低。而对于中高档产品,则要求有高分辨率,高精度,高稳定度,高测量速率;除通常通用频率计所具有的功能外,还要有数据处理功能,统计分析功能,时域分析功能等等,或者包含电压测量等其他功能。这些要求有的已经实现或者部分实现,但要真正完美的实现这些目标,对于生产厂家来说,还有许多工作要做,而不是表面看来似乎发展到头了。 随着数字集成电路技术的飞速发展,应用计数法原理制成的数字式频率测量仪器具有精度高、测量范围宽、便于实现测量过程自动化等一系列的突出特点。 1.2主要工作和方法 设计一个数字频率计。要求频率测量范围为1Hz-10kHz。数字显示位数为四位静态十进制计数显示被测信号。先确定好数字频率计的组成部分,然后分部分设计,最后组成电路。 1.3本文结构 本文第1部分前言主要说明频率计的用处和广泛性。第2部分简要说明了本次课程设计的要求。第3部分概要设计大致的勾画出本次设计的原理框架图和电路的工作流程图。第4部分简要说明4位二进制计数器74160的原理和搭建计数译码显示电路的原理,同时分析控制电路的功能,形成控制电路图,及搭建显示电路和控制电路的组合原理图。第5部分调试与操作说明,介绍相关的操作和输入不同频率是电路的显示情况。 2相关知识 2.1数字频率计介绍 2.1.1数字频率计概念 数字频率计是一种直接用十进制数字现设被测信号频率的一种测量装置,它不仅可以测量正弦波、方波、三角波等信号的频率,而且还可以用它来测量被测信号的周期。经过改装,在电路中增加传感器,还可以做成数字脉搏计、电子称、计价器等。因此,数字频率计在测量物理量方面有广泛的应用。 2.1.2数字频率计组成 数字频率计由振荡器、分频器、放大整形电路、控制电路、计数译码显示电路等部分组成。其中的控制脉冲采用时钟信号源替代,待测信号用函数信号发生器产生。数字频结构原理框图如图3.1

计算机组成原理课程设计微程序报告

微程序控制器的设计与实现

目录 1设计目的 (3) 2设计内容 (3) 3具体要求 (3) 4设计方案 (3) 5 调试过程 (11) 6 心得体会 (12)

微程序控制器的设计与实现 一、设计目的 1)巩固和深刻理解“计算机组成原理”课程所讲解的原理,加 深对计算机各模块协同工作的认识 2)掌握微程序设计的思想和具体流程、操作方法。 3)培养学生独立工作和创新思维的能力,取得设计与调试的实 践经验。 4)尝试利用编程实现微程序指令的识别和解释的工作流程 二、设计内容 按照要求设计一指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。 三、设计要求 1)仔细复习所学过的理论知识,掌握微程序设计的思想,并根 据掌握的理论写出要设计的指令系统的微程序流程。指令系 统至少要包括六条指令,具有上述功能和寻址方式。 2)根据微操作流程及给定的微指令格式写出相应的微程序 3)将所设计的微程序在虚拟环境中运行调试程序,并给出测试 思路和具体程序段 4)尝试用C或者Java语言实现所设计的指令系统的加载、识 别和解释功能。 5)撰写课程设计报告。 四、设计方案 1)设计思路 按照要求设计指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。从而可以想到如下指令:24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出

此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR 和EMRD决定是将DBUS数据写到EM中,还是 从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR 和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT 里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。 FEN:将标志位存入ALU内部的标志寄存器。 X2:X1:X0: X2、X1、X0三位组合来译码选择将数据送到DBUS

计算机组成原理课程设计

常规型微程序控制器组成实验 一、实验目的 (1)掌握时序产生器的组成原理。 (2)掌握微程序控制器的组成原理。 (3)掌握微指令格式的化简和归并 二、实验电路 1.TEC—4计算机组成原理实验系统的时序电路如下图所示。电路采用2片GAL22V10(U6、U7),可产生两级等间隔时序信号T1-T4和W1-W4,其中一个W由一轮T1-T4循环组成,它相当于一个微指令周期或硬布线控制器的一拍,而一轮W1—W4循环可供硬布线控制器执行一条机器指令。 2.微指令格式 根据给定的12条机器指令功能和数据通路总体图的控制信号,采用的微指令格式见下图。微指令字长共35位。其中顺序控制部分10位:后继微地址6位,判别字段4位,操作控制字段25位,各位进行直接控制。微指令格式中,信号名带有后缀“#”的信号为低有效信号,不带有后缀“#”的信号为高有效信号。

3.微程序控制器电路 对应微指令格式,微程序控制器的组成见下图。控制存储器采用5片EEPROM 28C64(U8、U9、U10、U11、U12) 三、实验设备 (1)TEC-4计算机组成原理实验系统一台 (2)双踪示波器一台 (2)直流万用表一只 (3)逻辑测试笔一支 四、实验任务 (1)按实验要求连接实验台的数码开关K0—K15、按钮开关、时钟信号源和微程序控制器。 注意:本次实验只做微程序控制器本身的实验,故微程序控制器输出的微命令信号与执行部件(数据通路)的连线暂不连接。连线完成后应仔细检查一遍,然后才可加上电源。 (2)观察时序信号。 用双踪示波器观测时序产生器的输入输出信号:MF,W1—W4,T1—T4。比较相位关系,画出其波形,并标注测量所得的脉冲宽度。观察时须将TJ1接低电平,DB、DZ、DP开关均置为0状态,然后按QD按钮,则连续产生T1、

计网课程设计报告书

《计算机网络技术》 课程设计报告书 设计题目: 中小型企业网络解决方案 专业班级: 姓名: _______ _ 学号: __ ___ 指导老师: ___________ 完成日期: ____________

随着市场竞争日益激烈,如何及时、准确地获取第一手信息,如何提高公司运作效率,如何有效降低公司运营成本已经越来越被中小型企业所认识。中小型企业迫切需要提高公司竞争力,需要实现公司信息化,而网络无疑为他们提供了一个很好的解决手段。企业网络化能够为企业提高办公效率,加速企业内部员工间的沟通,满足移动办公的需要。另外,互联网可以作为实现企业对外宣传、信息发布平台,跨越空间和时间的界限,快速实现客户信息反馈和客户跟踪。 二、概要设计 网络设计应该遵循以下原则:采用高性能、全交换的方案,充分满足用户要求;网络管理简单;用户采用广局域网连接方式;采用带宽压缩技术,有效降低广域网链路流量;所有网络设备均可在升级原有网络后使用,有效实现投资保护;系统安全,保密性高。

soho级企业网soho是small office home office的简称,这类网络用户数量较少且相对集中,网络布线采用双绞线即可。一般而言,soho级企业对网络的要求不高,基本实现以下功能即可:实现企业内资源共享,无纸办公,提供管理应用系统,实现企业办公自动化,能够接入internet ,收发e-mail,共享internet资源。该网络的拓扑图如图1所示。 图1 soho级网络拓扑 在图1中,通过tcl r3105路由器,用户以adsl或cable方式接入internet,未开通adsl 的地方可采用isdn方式,将r3105换成r3007。此方案的特点是结构简单,内部局域网可以采用全交换方式,实现百兆交换到桌面。另外也可以采用集线器组网。 园区级企业网园区级企业网指的是企业的部门较多,部门位置相对分散,但相互间的距离不是太远。园区级企业对网络的需求是:实现企业内资源共享,提供管理应用系统,实现企业办公自动化,建立企业e-mail系统,建立企业的对外网站,提供一个对外宣传的信息平台,接入internet,共享网络资源。园区级企业网络拓扑图如图2所示。 图2 园区级企业网络拓扑 在该方案中,企业各部门通过千兆光纤连接在一起,为避免带宽的浪费,局域网内部划分出不同的vlan,网络中心采用三层交换机解决vlan之间的通信。

计组课设-微指令的设计实验

计算机组成原理课程设计报告 班级:计算机/物联网 ________ 班姓名:_______ 学号:___________ 完成时间:2016.1.14 _____________________ 一、课程设计目的 1 ?在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程 序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2 ?通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3 ?培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和 除法运算功能为应用目标,在COP2000 的集成开发环境下,设计全新的指令系统并编写 对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1 .硬件 COP2000实验仪 PC机

2 .软件 COP2000仿真软件 四、课程设计的具体内容(步骤) 1?详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现 该模型机指令系统的特点: 从指令字长来看该模型机指令系统包含单字长和双字长两种格式的指令,字长为8位,对于需要访问内存的指令都是双字长的,指令系统中大多数指令是单字长;从指令操作码是 定长和变长来看,这里认为,虽然ADD A, R?和ADD A, @R?都是执行加法操作, 但他们是不同的指令,将指令格式中寻址寄存器的两位也认为是操作码的一部分,这两条指令的操作码不同。因此,指令系统的指令格式是定长操作码的,操作码为6位。 1)双字长的指令格式如下: 举例 2)单字长的指令格式如下:

计算机组成原理课程设计

江苏大学计算机组成原理课程设计报告 专业名称:网络工程 班级学号:3130610031 学生姓名:张杰 指导教师:胡广亮 设计时间:2013年6月24日—2013年7月2日

第一天:熟悉微程序的设计和调试方法 一、设计目标 1、掌握微程序的设计方法 2、熟悉利用调试软件运行、调试微程序的方法 二、操作提示 1、连接实验设备 注意:请在断电状态下连接调试电缆。 2、下载FPGA配置数据 从课程网站下载CPU.sof等文件,使用Quartus II Programmer 软件将CPU.sof下载到FPGA。 3、输入微程序 利用调试软件将微程序写入控存,微程序如下。 取指令微程序 取源操作数为立即数的微程序 取目的操作数为寄存器寻址的微程序

MOV指令的微程序(目的数寄存器寻址) 4、输入调机程序 今天的将调机程序就是一条指令:“ MOV #0001H, R1”。首先将指令翻译成机器码,根 据指令的编码规则,该指令的编码是:0761 0001。然后利用调试软件将指令码写入主存,地址从主存的0030H开始。 5、调试微程序。 利用调试软件“Step”按钮控制微指令单步执行,执行结果如图 2.3所示 2.3 例2.1 MOV指令的单步运行跟踪数据 6、分析微程序的执行结果,一般方法如下: 首先分析微程序执行流程是否正确,根据前面指令微流程的设计,理论上该指令微程序 的执行顺序应该是001→002→003→004→00B→00F→016→006→018→007→031→02D→02E→000,通过调试软件的执行结果图 2.3可以看出,该指令微程序的微指令次序是正确的。 如果执行的微指令次序不正确,那就要分析原因,检查BM和NC设置是否正确、检查uAR 的各个输入信号的值是否正确,如IR、NA等。 然后分析指令的运行结果。理论上本条测试指令执行完后,R1的值应该是0001。通过 调试软件的执行结果图 2.3可以看出,指令执行结果是正确的。如果结果不对,就需要进一 步分析每一条微指令。分析的方法是针对微指令的每一条微命令,查看相应微操作前后相关模块的数据变化是否与指令微流程一致。下面举个例子说明如何分析每条微指令的。 图 2.3的微地址为000B(uAR=000B)的控存单元所对应的内容为2008000F,即微指 令为2008000F,所代表的微操作是:PCoe,ARce,即PC的内容送IB、IB的内容送AR,理论上的正确结果应该是IB=0031, AR=0031;通过图 2.3的000B单元微指令的执行结果可 以看出,IB 的数据由上一条微指令的结果0000→0031, AR 的数据由上一条微指令的结果0030→0031,说明本条微指令执行结果是正确。 从上面的分析可以看出,要想检查运行结果是否正确,关键是要清楚理论上正确的结果 是什么。这就要求实验者对指令的微程序流程非常清楚,从而达到了理解计算机内部信息流动过程、掌握计算机工作原理的目的。所以实验者应重视实验数据的分析工作,否则就失去

计网课程设计报告

课程设计(论文) 课程名称数据库课程设计 题目名称__ 仓库管理系统 __ 学生学院计算机学院 专业班级计算机科学与技术3班 学号 3109005981 学生姓名黄卫平 指导教师明俊峰 2012 年 6 月 25日成绩

目录 第一章概述----------------------------------------------------------------------------------------------------1 1.1项目背景----------------------------------------------------------------------------------------------1 1.2设计目标、内容、思路----------------------------------------------------------------------------1 第二章相关技术----------------------------------------------------------------------------------------------1 2.1 Visual Studio 2008开发工具简介-----------------------------------------------------------------1 2.2 SQL Server 2008 介绍------------------------------------------------------------------------------2 第三章系统需求分析---------------------------------------------------------------------------------------3 3.1 数据字典--------------------------------------------------------------------------------------------3 3.1.1 数据项---------------------------------------------------------------------------------------3 3.1.2 数据结构------------------------------------------------------------------------------------4 3.1.3 数据流---------------------------------------------------------------------------------------4 3.1.4 数据存储------------------------------------------------------------------------------------5 3.1.5 数据处理------------------------------------------------------------------------------------5 3.2 数据流图--------------------------------------------------------------------------------------------6 3.2.1 总数据流图---------------------------------------------------------------------------------6 3.2.2 设备管理数据流图------------------------------------------------------------------------6

相关文档
相关文档 最新文档