华科微机原理实验报告

华科微机原理实验报告
华科微机原理实验报告

微机原理实验报告

课程:微机原理

指导老师

姓名:

学号:

实验名称:Lab 02: MIPS处理器部件实现A

微机原理实验报告

一、实验目的

本实验旨在实现MIPS处理器的部件—控制器和ALU,理解CPU控制器,理解ALU的原理,使用Verilog语言设计CPU控制器和ALU ,使用ISim进行行为仿真。

二、实验原理及说明

MIPS的基本架构如图1所示,包括Control,ALU这样的组合逻辑单元,也包括如instruction memory,Data memory和Registers file存储单元。本实验主要实现CPU Control和ALU两个部分。

(一)CPU控制器的实现

CPU Control单元输入为指令的opCode字段,即操作码;以及R指令的funct编码。操作码和Funct编码经过主控制单元的译码,给ALU,Data Memory,Registers ,Muxs等部件输出正确的控制信号。

图2. MIPS基本指令格式

图: 控制模块的IO定义

注:Jump指令编码是000010,Jump输出信号为1,其他输出信号都为0

图3. OpCode与控制输出的编码关系

图4. Funct,ALUOp与ALU Control编码关系

(二) ALU的实现

ALU是CPU核心的计算单元,实现诸如加,减,或,与等操作。

算术操作的编码

三、实验verilog代码

(一)CPU控制器的实现

module Ctr(

input [5:0] OpCode,

input [5:0] Funct,

output regRegDst,

output regALUSrc,

output regRegWrite,

output regMemWrite,

output regMemRead,

output regMemtoReg,

output reg Branch,

output reg Jump,

output reg [3:0] ALUControl

);

reg [1:0] ALUOp;

always @(OpCode)

begin

case(OpCode)

//R type

6'b000000:

begin

RegDst=1; ALUSrc=0; RegWrite=1; MemWrite=0; MemRead=0; MemtoReg=0;

Branch=0;

ALUOp=2'b10; Jump=0;

end

//beq

6'b000100:

begin

RegDst=1'bx; ALUSrc=0; RegWrite=0; MemWrite=0; MemRead=0; MemtoReg=1'bx; Branch=1;

ALUOp=2'b01; Jump=0;

end

//lw

6'b100011:

begin

RegDst=0; ALUSrc=1; RegWrite=1; MemWrite=0; MemRead=1; MemtoReg=1;

Branch=0;

ALUOp=2'b00; Jump=0;

end

//sw

6'b101011:

begin

RegDst=1'bx;

ALUSrc=1;

RegWrite=0;

MemWrite=1;

MemRead=0;

MemtoReg=1'bx;

Branch=0;

ALUOp=2'b00;

Jump=0;

end

//Jump

6'b000010:

begin

RegDst=0;

ALUSrc=0;

MemtoReg=0;

RegWrite=0;

MemRead=0;

MemWrite=0;

Branch=0;

ALUOp=2'b00;

Jump=1;

end

endcase

end

always @(ALUOp or Funct)

begin

casex({ALUOp,Funct})

8'b00xxxxxx: ALUControl=4'b0010;

8'b01xxxxxx: ALUControl=4'b0110;

8'b1xxx0000: ALUControl=4'b0010;

8'b1xxx0010: ALUControl=4'b0110;

8'b1xxx0100: ALUControl=4'b0000;

8'b1xxx0101: ALUControl=4'b0001;

8'b1xxx1010: ALUControl=4'b0111;

default: ALUControl=4'b0000;

endcase

end

endmodule

(二) ALU的实现

module ALU(

input [31:0] SrcA,

input [31:0] SrcB,

input [3:0] ALUCtr,

output Zero,

output reg [31:0] ALURes

);

assign Zero=(ALURes==1'b0);

always @(SrcA or SrcB or ALUCtr)

begin

case(ALUCtr)

4'b0000: ALURes=SrcA&SrcB; //AND

4'b0001: ALURes=SrcA | SrcB; //OR

4'b0010: ALURes=SrcA + SrcB; //add

4'b0110: ALURes=SrcA - SrcB; //substract

4'b0111: ALURes=SrcA

default ALURes=32'h0;

endcase

end

endmodule

四、仿真测试

1.代码

(一)CPU控制器的实现

module Ctr_tb;

// Inputs

reg [5:0] OpCode;

reg [5:0] Funct;

// Outputs

wire RegDst;

wire ALUSrc;

wire RegWrite;

wire MemWrite;

wire MemRead;

wire MemtoReg;

wire Branch;

wire Jump;

wire [3:0] ALUControl;

// Instantiate the Unit Under Test (UUT)

Ctruut (

.OpCode(OpCode),

.Funct(Funct),

.RegDst(RegDst),

.ALUSrc(ALUSrc),

.RegWrite(RegWrite),

.MemWrite(MemWrite),

.MemRead(MemRead),

.MemtoReg(MemtoReg),

.Branch(Branch),

.Jump(Jump),

.ALUControl(ALUControl) );

initial begin

// R-type Add

OpCode=6'b000000;

Funct=6'b100000;

// R-type Subtract

#10;

OpCode=6'b000000;

Funct=6'b100010;

// Lw

#10;

OpCode=6'b100011;

Funct=6'bxxxxxx;

// Sw

#10;

OpCode=6'b101011;

Funct=6'bxxxxxx;

// Beq

#10;

OpCode=6'b000100;

Funct=6'bxxxxxx;

// R-type AND

#10;

OpCode=6'b000000;

Funct=6'b100100;

// R-type OR

#10;

OpCode=6'b000000;

Funct=6'b100101;

// R-type set on less than

#10;

OpCode=6'b000000;

Funct=6'b101010;

// Jump

#10;

OpCode=6'b000010;

end

endmodule

(二) ALU的实现

module ALU_tb;

// Inputs

reg [31:0] SrcA;

reg [31:0] SrcB;

reg [3:0] ALUCtr;

// Outputs

wire Zero;

wire [31:0] ALURes;

// Instantiate the Unit Under Test (UUT)

ALU uut (

.SrcA(SrcA),

.SrcB(SrcB),

.ALUCtr(ALUCtr),

.Zero(Zero),

.ALURes(ALURes)

);

initial begin

// AND

SrcA =32'hf0f0ffff;

SrcB =32'h0000f0f0;

ALUCtr =0;

// OR

#10;

ALUCtr =4'b0001;

// Add

#10;

ALUCtr =4'b0010;

// Subtract

#10;

ALUCtr =4'b0110;

// set on less than

#10;

ALUCtr =4'b0111;

//NOR

#10;

ALUCtr =4'b1100;

//Other situation

#10;

ALUCtr =4'b1111;

end

endmodule

2.仿真截图

(一)CPU控制器的实现

(二) ALU的实现

五、实验总结

实验名称:Lab03: MIPS处理器部件实现B

微机原理实验报告

一、实验目的

本实验旨在使读者实现MIPS处理器的部件—Data memory, Instruction memory和Registers 三大存储器件。理解CPU的寄存器和内存,使用Verilog语言设计存储器件,使用ISim进行行为仿真。

二、实验原理及说明

本实验旨在使读者掌握MIPS处理器中内存和寄存器的设计。在本实验中,利用Verilog HDL语言描述硬件逻辑实现和仿真内存和寄存器。

实验由以下几个部分组成:

1.Instruction memory的实现

2.Data Memory的实现

3.Register的实现

4.有符号扩展的实现

MIPS的基本架构如图1所示,包括Control,ALU这样的组合逻辑单元,也包括如instruction memory,Data memory和Registers file存储单元。本实验主要实现三大存储单元。

处理器指令运行过程可以包括取指令、指令译码、执行、内存操作、寄存器回写,这些操作会对三种存储

设备进行读或者写,但是不会同时对同一存储设备进行读写。所以为了实现单周期的MIPS,做这样一个设计,Instruction Memory用组合逻辑实现,完成类似于ROM的功能,仅作读操作;而Data memory 和Register 的读操作用组合逻辑实现,而写操作用时序逻辑来实现。

图2. MIPS存储设备

Data memory是用来存储运行完成的数据,或者初始化的数据。其中用于控制Data memory的读写信号,可以由一个信号来控制,高低电平控制读写,分别用两个信号来控制读写

三、实验verilog代码

(一)Instruction memory的实现

module Instruction_memory(

input [31:0] ImemRdAddr,

output reg [31:0] Instruction

);

reg [31:0] InstMem [0:255];//memory space for storing instructions

//initial the instruction and data memory

initial

begin

$readmemh("instruction", InstMem,8'h0);

end

always @ (ImemRdAddr)

begin

Instruction <=InstMem[ImemRdAddr];

end

endmodule

(二)Data Memory的实现

module Data_memory(

input Clk,

input [31:0] DmemAddr,

output [31:0] DmemRdData,

input DmemWrite,

input [31:0] DmemWrData

);

reg [31:0] DataMem [0:255];

initial

begin

$readmemh("Data", DataMem,10'h0);

end

always @(posedgeClk)

begin

if(DmemWrite==1'b1)

DataMem[DmemAddr]<=DmemWrData;

end

assign DmemRdData =(DmemWrite==1'b0)? DataMem[DmemAddr]:0; endmodule

(三)Register 的实现

module register(

input Clk,

input [4:0] RegARdAddr,

input [4:0] RegBRdAddr,

input [4:0] RegWrAddr,

input [31:0] RegWrData,

input RegWrite,

output [31:0] RegARdData,

output [31:0] RegBRdData

);

reg [31:0] regFile[0:31];

initial

begin

$readmemh("register", regFile, 32'h0);

end

//write on falling clock edge

always @ (negedgeClk)

if(RegWrite==1'b1)

regFile[RegWrAddr]<=RegWrData;

assign RegARdData=(RegARdAddr !=0)?regFile[RegARdAddr]:0;

assign RegBRdData=(RegBRdAddr !=0)?regFile[RegBRdAddr]:0; endmodule

四、仿真测试

1.代码

(一)Instruction memory的实现

module Instruction_memory_tb;

// Inputs

reg [31:0] ImemRdAddr;

// Outputs

wire [31:0] Instruction;

// Instantiate the Unit Under Test (UUT) Instruction_memoryuut (

.ImemRdAddr(ImemRdAddr),

.Instruction(Instruction)

);

reg [7:0] index;

reg [31:0] InstMem [0:255];

initial begin

// Initialize Inputs

ImemRdAddr = 0;

index=0;

$readmemh("instruction", InstMem,8'h0);

// Wait 10 ns for global reset to finish #10;

for(index=0;index<=255;index=index+1) begin

#10;

ImemRdAddr<=index;

end

// Add stimulus here

end

endmodule

(二)Data Memory的实现

module Data_memory_tb;

// Inputs

regClk;

reg [31:0] DmemAddr;

regDmemWrite;

reg [31:0] DmemWrData;

// Outputs

wire [31:0] DmemRdData;

// Instantiate the Unit Under Test (UUT) Data_memoryuut (

.Clk(Clk),

.DmemAddr(DmemAddr),

.DmemRdData(DmemRdData),

.DmemWrite(DmemWrite),

.DmemWrData(DmemWrData)

);

reg [31:0] DataMem [0:255];

reg [7:0] index;

initial begin

// Initialize Inputs

Clk = 0;

DmemAddr = 0;

DmemWrite = 1;

DmemWrData = 0;

$readmemh("Data", DataMem,10'h0);

//write data into memory

for(index=0;index<=7;index=index+1)

begin

#10;

DmemAddr<=index;

DmemWrData<=index;

end

//read data from memory

DmemWrite=0;

for(index=0;index<=7;index=index+1)

begin

#10;

DmemAddr<=index;

end

end

//Clock Generator

always #2 Clk=!Clk;

endmodule

(三)Register 的实现

module register_tb;

// Inputs

regClk;

reg [4:0] RegARdAddr;

reg [4:0] RegBRdAddr;

reg [4:0] RegWrAddr;

reg [31:0] RegWrData;

regRegWrite;

// Outputs

wire [31:0] RegARdData;

wire [31:0] RegBRdData;

reg [31:0] regFile[0:31];

// Instantiate the Unit Under Test (UUT)

register uut (

.Clk(Clk),

.RegARdAddr(RegARdAddr),

.RegBRdAddr(RegBRdAddr),

.RegWrAddr(RegWrAddr),

.RegWrData(RegWrData),

.RegWrite(RegWrite),

.RegARdData(RegARdData),

.RegBRdData(RegBRdData)

);

reg [7:0] index;

initial begin

// Initialize Inputs

index=0;

Clk = 0;

RegARdAddr = 0;

RegBRdAddr = 0;

RegWrAddr = 0;

RegWrData = 0;

RegWrite = 1;

$readmemh("register", regFile, 32'h0);

// Wait 10 ns for global reset to finish

#10;

// Add stimulus here

//write data into memory

for(index=0;index<=7;index=index+1)

begin

#10;

RegWrAddr<=index;

RegWrData<=index;

end

//read data from memory

RegWrite=0;

for(index=0;index<=6;index=index+1)

begin

#10;

RegARdAddr<=index;

RegBRdAddr<=index;

end

end

//Clock Generator

always #2 Clk=!Clk;

endmodule

2.仿真截图

(一)Instruction memory的实现

(二)Data Memory的实现

(三)Register 的实现

五、实验总结

自动控制原理实验报告

《自动控制原理》 实验报告 姓名: 学号: 专业: 班级: 时段: 成绩: 工学院自动化系

实验一 典型环节的MATLAB 仿真 一、实验目的 1.熟悉MATLAB 桌面和命令窗口,初步了解SIMULINK 功能模块的使用方法。 2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。 3.定性了解各参数变化对典型环节动态特性的影响。 二、实验原理 1.比例环节的传递函数为 K R K R R R Z Z s G 200,1002)(211 212==-=-=- = 其对应的模拟电路及SIMULINK 图形如图1-3所示。 三、实验内容 按下列各典型环节的传递函数,建立相应的SIMULINK 仿真模型,观察并记录其单位阶跃响应波形。 ① 比例环节1)(1=s G 和2)(1=s G ; ② 惯性环节11)(1+= s s G 和1 5.01 )(2+=s s G ③ 积分环节s s G 1)(1= ④ 微分环节s s G =)(1 ⑤ 比例+微分环节(PD )2)(1+=s s G 和1)(2+=s s G ⑥ 比例+积分环节(PI )s s G 11)(1+=和s s G 211)(2+= 四、实验结果及分析 图1-3 比例环节的模拟电路及SIMULINK 图形

① 仿真模型及波形图1)(1=s G 和2)(1=s G ② 仿真模型及波形图11)(1+= s s G 和1 5.01)(2+=s s G 11)(1+= s s G 1 5.01 )(2+=s s G ③ 积分环节s s G 1)(1= ④ 微分环节

计算机组成原理实验报告

福建农林大学计算机与信息学院信息工程类实验报告系:计算机科学与技术专业:计算机科学与技术年级: 09级 姓名:张文绮学号: 091150022 实验课程:计算机组成原理 实验室号:___田405 实验设备号: 43 实验时间:2010.12.19 指导教师签字:成绩: 实验一算术逻辑运算实验 1.实验目的和要求 1. 熟悉简单运算器的数据传送通路; 2. 验证4位运算功能发生器功能(74LS181)的组合功能。 2.实验原理 实验中所用到的运算器数据通路如图1-1所示。其中运算器由两片74181

以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关INPUT DEVICE用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相连,数据显示灯“BUS UNIT”已和数据总线相连,用来显示数据总线内容。 图1-2中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至W/R UNIT的相应时序信号引出端,因此,在进行实验时,只需将W/R UNIT 的T4接至STATE UNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3,S2,S1,S0,Cn,LDDR1,LDDR2,ALU-B,SW-B各电平控制信号用SWITCH UNIT中的二进制数据开关来模拟,其中Cn,ALU-B,SW-B为低电平控制有效,LDDR1,LDDR2为高电平有效。 3.主要仪器设备(实验用的软硬件环境) ZYE1603B计算机组成原理教学实验系统一台,排线若干。 4.操作方法与实验步骤

微机软件实验习题与答案(完整版)

微机原理软件实验 实验1 两个多位十进制数相加的实验 实验容:将两个多位十进制数相加,要求加数和被加数均以ASCII码形式各自顺序存放以DATA1和DATA2为首的5个存单元中(低位在前),结果送回DATA1处。完整代码如下: DATAS SEGMENT ;此处输入数据段代码 STRING1 DB'input the first number:','$' STRING2 DB 13,10,'input the second number:','$' STRING3 DB 13,10,'the output is:','$' DATA1 DB 6 DUP(00H),'$' DATA2 DB 6 DUP(00H),'$' DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 LEA DI,DATA2 L0: LEA DX,STRING1;打印字符串STRING1 MOV AH,09 INT 21H INPUT1: ;输入第一个数 MOV AH,01;输入字符至AL中 INT 21H CMP AL,'/' JE L1 MOV [SI],AL INC SI

JMP INPUT1 L1: LEA DX,STRING2;打印字符串STRING2 MOV AH,09 INT 21H INPUT2: ;输入第二个数 MOV AH,01;输入字符至AL INT 21H CMP AL,'/' JE L2 MOV [DI],AL INC DI JMP INPUT2 L2: MOV SI,0 CLC;清空进位标志位CF MOV CX,6

微机原理实验报告

西安交通大学实验报告 课程_微机与接口技术第页共页 系别__生物医学工程_________实验日期:年月日 专业班级_____组别_____交报告日期:年月日 姓名__ 学号__报告退发 ( 订正、重做 ) 同组人_教师审批签字 实验一汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH,97H,64H,BBH,7FH,0FH,D8H。编程并显示结果: 如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子

程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 99223344H = xxxxxxxxH 四、实验代码及结果 1.1、实验代码: DATA SEGMENT SZ DB 80H,03H,5AH,0FFH,97H,64H,0BBH,7FH,0FH,0D8H;存进数组 SHOW DB 'THE MAX IS: ','$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA ;把数据的基地址赋给DS MOV DS,AX MOV DX,OFFSET SHOW ;调用DOS显示字符串 MOV AH,09H INT 21H MOV SI ,OFFSET SZ ;数组的偏移地址赋给SI MOV CX,10 ;存进数组的长度给CX MOV DH,80H ;将数组的第一个数写进DH NEXT: MOV BL,[SI] ;将数组的第一个数写进BL CMP DH,BL ;比较DH和BL中数的到校 JAE NEXT1 ;如果DH中的数大于BL中,将跳转到NEXT1 MOV DH,BL ;如果DH中的数小于BL中,将BL中的数赋给DH NEXT1: INC SI ;偏移地址加1 LOOP NEXT;循环,CX自减一直到0,DH中存数组的最大值 ;接下来的程序是将将最大值DH在屏幕上显示输出 MOV BX,02H NEXT2: MOV CL,4 ROL DH,CL ;将DH循环右移四位

自动控制原理实验报告

实验报告 课程名称:自动控制原理 实验项目:典型环节的时域相应 实验地点:自动控制实验室 实验日期:2017 年 3 月22 日 指导教师:乔学工 实验一典型环节的时域特性 一、实验目的 1.熟悉并掌握TDN-ACC+设备的使用方法及各典型环节模拟电路的构成方法。

2.熟悉各种典型环节的理想阶跃相应曲线和实际阶跃响应曲线。对比差异,分析原因。 3.了解参数变化对典型环节动态特性的影响。 二、实验设备 PC 机一台,TD-ACC+(或TD-ACS)实验系统一套。 三、实验原理及内容 下面列出各典型环节的方框图、传递函数、模拟电路图、阶跃响应,实验前应熟悉了解。 1.比例环节 (P) (1)方框图 (2)传递函数: K S Ui S Uo =) () ( (3)阶跃响应:) 0()(≥=t K t U O 其中 01/R R K = (4)模拟电路图: (5) 理想与实际阶跃响应对照曲线: ① 取R0 = 200K ;R1 = 100K 。 ② 取R0 = 200K ;R1 = 200K 。

2.积分环节 (I) (1)方框图 (2)传递函数: TS S Ui S Uo 1 )()(= (3)阶跃响应: ) 0(1)(≥= t t T t Uo 其中 C R T 0= (4)模拟电路图 (5) 理想与实际阶跃响应曲线对照: ① 取R0 = 200K ;C = 1uF 。 ② 取R0 = 200K ;C = 2uF 。

1 Uo 0t Ui(t) Uo(t) 理想阶跃响应曲线 0.4s 1 Uo 0t Ui(t) Uo(t) 实测阶跃响应曲线 0.4s 10V 无穷 3.比例积分环节 (PI) (1)方框图: (2)传递函数: (3)阶跃响应: (4)模拟电路图: (5)理想与实际阶跃响应曲线对照: ①取 R0 = R1 = 200K;C = 1uF。 理想阶跃响应曲线实测阶跃响应曲线 ②取 R0=R1=200K;C=2uF。 K 1 + U i(S)+ U o(S) + Uo 10V U o(t) 2 U i(t ) 0 0 .2s t Uo 无穷 U o(t) 2 U i(t ) 0 0 .2s t

计算机组成原理实验报告

重庆理工大学 《计算机组成原理》 实验报告 学号 __11503080109____ 姓名 __张致远_________ 专业 __软件工程_______ 学院 _计算机科学与工程 二0一六年四月二十三实验一基本运算器实验报告

一、实验名称 基本运算器实验 二、完成学生:张致远班级115030801 学号11503080109 三、实验目的 1.了解运算器的组成结构。 2.掌握运算器的工作原理。 四、实验原理: 两片74LS181 芯片以并/串形式构成的8位字长的运算器。右方为低4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,使低4位运算产生的进位送进高4位。低位芯片的进位输入端Cn可与外来进位相连,高位芯片的进位输出到外部。 两个芯片的控制端S0~S3 和M 各自相连,其控制电平按表2.6-1。为进行双操作数运算,运算器的两个数据输入端分别由两个数据暂存器DR1、DR2(用锁存器74LS273 实现)来锁存数据。要将内总线上的数据锁存到DR1 或DR2 中,则锁存器74LS273 的控制端LDDR1 或LDDR2 须为高电平。当T4 脉冲来到的时候,总线上的数据就被锁存进DR1 或DR2 中了。 为控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(用74LS245 实现)。若要将运算结果输出到总线上,则要将三态门74LS245 的控制端ALU-B 置低电平。否则输出高阻态。数据输入单元(实验板上印有INPUT DEVICE)用以给出参与运算的数据。其中,输入开关经过一个三态门(74LS245)和内总线相连,该三态门的控制信号为SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。 总线数据显示灯(在BUS UNIT 单元中)已与内总线相连,用来显示内总线上的数据。控制信号中除T4 为脉冲信号,其它均为电平信号。 由于实验电路中的时序信号均已连至“W/R UNIT”单元中的相应时序信号引出端,因此,需要将“W/R UNIT”单元中的T4 接至“STATE UNIT”单元中的微动开关KK2 的输出端。在进行实验时,按动微动开关,即可获得实验所需的单脉冲。 S3、S2、 S1、S0 、Cn、M、LDDR1、LDDR2、ALU-B、SW-B 各电平控制信号则使用“SWITCHUNIT”单元中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B 为低电平有效,LDDR1、LDDR2 为高电平有效。 对于单总线数据通路,作实验时就要分时控制总线,即当向DR1、DR2 工作暂存器打入数据时,数据开关三态门打开,这时应保证运算器输出三态门关闭;同样,当运算器输出结果至总线时也应保证数据输入三态门是在关闭状态。 运算结果表

微机原理实验并行IO接口设计

微机原理实验三并行I/O接口实验 姓名: 学号: 班级:

一、实验目的 1. 掌握GPIOIP核的工作原理和使用方法 2.掌握中断控制方式的IO接口设计原理 3.掌握中断程序设计方法 4.掌握IO接口程序控制方法:中断方式、查询方式、延时方式 二、实验任务 按键输入,并显示到console 用中断、查询两种方式实现按键输入,将结果显示到console窗口。 三、硬件电路 四、硬件实现步骤 1. 创建一个最小系统,启动XPS,并打开xmp工程文件。 2.添加和配置GPIO IP核。

3. 添加和配置AXI Interrupt Controller IP核。 4. 产生外部GPIO连接。 引脚约束 五、中断方式、查询方式 1. 中断方式设计思路 主程序开放microBlaze INTC,GPIO中断,不停地检测输出标志是否为1,是则输出数据到console,并将输出标志设置为0。中断服务程序读取数据(或输出数据)并设立输出标志位为1。

通过中断方式读入开关的状态,由于按键仅短暂的时间维持高电平,并且还具有抖动,因此需在中断服务程序内读入按键状态,并且为消除按键回弹产生的中断,需在中断服务程序内部暂时关闭中断,并且延时一段时间再打开中断。 2. 查询方式设计思路 主程序不停地读取GPIO和ISR寄存器,当对应位为1时,读取GPIO的数据寄存器并输出到console(xil_printf函数实现,头文件为”stdio.h”),并写ISR相应位。数据寄存器的读取通过函数Xil_In实现,而ISR相应状态为的写通过函数Xil_Out实现。 六、软件实现流程 1. 中断方式主程序实现 对各个设备进行初始化,并且开放相应的中断,注册中断服务程序以及开关状态显示等。然后通过读取中断标志进入相应中断服务程序处理中断,并在console打印相关信息。 2. 查询方式程序实现 通过不断地读取GPIO和ISR寄存器,当状态发生变化时读取数据寄存器并输出到console,并写ISR相应位。 七、软件源代码 1. 中断方式源代码 #include"xparameters.h" #include"xgpio.h" #include"xintc.h" #include"stdio.h" void Initialize(); void Delay_50ms(); void PushBtnHandler(void *CallBackRef); void SwitchHandler(void *CallBackRef); XGpio Btns,Dips;//按键BTNS外设变量 XIntc intCtrl;//定义一个XINTC外设变量 int pshBtn,pshDip; int state1,state2; int main() { Initialize(); xil_printf("\r\nRunning GpioInputInterrupt!\r\n"); while(1)

微机原理实验报告软件实验1-4

微机原理实验报告 学院:算机科学与软件教育学院 1. 掌握存储器读写方法 2. 了解存储器的块操作方法 二、实验原理 存储器读写和块操作 三、实验设备仪器及材料 计算机,WA VE 6000软件 四、实验过程 S1.asm 代码流程图 data segment Block db 256 dup(55h) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov bx, offset Block ; 起始地址 mov cx, 256 ; 清256 字节Again: mov [bx], byte ptr 0 inc bx ; 地址+1 Loop Again ; 记数减一jmp $ ;死循环code ends end start

五、实验步骤 (1) 进入Wave6000,输入程序并检查,保存程序。 (2) “编译”程序。 (3) “全速执行”程序。 (4) “暂停”程序运行,在“数据窗口(MEMOREY)”查看0400H起始的单元内容,并记录。 (5) 在指令“jmp $”处设断点。“全速执行”程序。 (6) 在“数据窗口(MEMOREY)”查看0400H起始的单元内容,记录并分析实验结果。 六、实验结果及总结 运行前:运行后: 2、调试:如何将存储器块的内容置成某固定值(例全填充为0FFH)? 总结:通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。学会内存的移动方法,也加深对存储器读写的认识。

微机原理实验报告 学院:算机科学与软件教育学院 实验 课程 名 微机原理实验成绩实验 项目名称实验二、二进制到BCD码转换 指导老 师 1. 了解BCD值和ASCII值的区别。 2. 了解如何将BCD值转换成ASCII值。 3. 了解如何查表进行数值转换及快速计算。 二、实验原理 ASCII码表 三、实验设备仪器及材料 计算机,WA VE 6000软件 data segment Result db 3 dup(?) data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov ax, 123 mov cl, 100 div cl mov Result, al ; 除以 100, 得百位数 mov al, ah mov ah, 0 mov cl, 10 div cl mov Result+1, al ; 余数除以 10, 得十位数 mov Result+2, ah ; 余数为个位 数 jmp $ code ends end start 代码流程图

自动控制原理MATLAB仿真实验报告

实验一 MATLAB 及仿真实验(控制系统的时域分析) 一、实验目的 学习利用MATLAB 进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性; 二、预习要点 1、 系统的典型响应有哪些? 2、 如何判断系统稳定性? 3、 系统的动态性能指标有哪些? 三、实验方法 (一) 四种典型响应 1、 阶跃响应: 阶跃响应常用格式: 1、)(sys step ;其中sys 可以为连续系统,也可为离散系统。 2、),(Tn sys step ;表示时间范围0---Tn 。 3、),(T sys step ;表示时间范围向量T 指定。 4、),(T sys step Y =;可详细了解某段时间的输入、输出情况。 2、 脉冲响应: 脉冲函数在数学上的精确定义:0 ,0)(1)(0 ?==?∞ t x f dx x f 其拉氏变换为:) ()()()(1)(s G s f s G s Y s f === 所以脉冲响应即为传函的反拉氏变换。 脉冲响应函数常用格式: ① )(sys impulse ; ② ); ,();,(T sys impulse Tn sys impulse ③ ),(T sys impulse Y = (二) 分析系统稳定性 有以下三种方法: 1、 利用pzmap 绘制连续系统的零极点图; 2、 利用tf2zp 求出系统零极点; 3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析 Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.

计算机组成原理实验报告(运算器组成、存储器)

计算机组成原理实验报告 一、实验1 Quartus Ⅱ的使用 一.实验目的 掌握Quartus Ⅱ的基本使用方法。 了解74138(3:8)译码器、74244、74273的功能。 利用Quartus Ⅱ验证74138(3:8)译码器、74244、74273的功能。 二.实验任务 熟悉Quartus Ⅱ中的管理项目、输入原理图以及仿真的设计方法与流程。 新建项目,利用原理编辑方式输入74138、74244、74273的功能特性,依照其功能表分别进行仿真,验证这三种期间的功能。 三.74138、74244、74273的原理图与仿真图 1.74138的原理图与仿真图 74244的原理图与仿真图

1. 4.74273的原理图与仿真图、

实验2 运算器组成实验 一、实验目的 1.掌握算术逻辑运算单元(ALU)的工作原理。 2.熟悉简单运算器的数据传送通路。 3.验证4位运算器(74181)的组合功能。 4.按给定数据,完成几种指定的算术和逻辑运算。 二、实验电路 附录中的图示出了本实验所用的运算器数据通路图。8位字长的ALU由2片74181构成。2片74273构成两个操作数寄存器DR1和DR2,用来保存参与运算的数据。DR1接ALU的A数据输入端口,DR2接ALU的B数据输入端口,ALU的数据输出通过三态门74244发送到数据总线BUS7-BUS0上。参与运算的数据可通过一个三态门74244输入到数据总线上,并可送到DR1或DR2暂存。 图中尾巴上带粗短线标记的信号都是控制信号。除了T4是脉冲信号外,其他均为电位信号。nC0,nALU-BUS,nSW-BUS均为低电平有效。 三、实验任务 按所示实验电路,输入原理图,建立.bdf文件。 四.实验原理图及仿真图 给DR1存入01010101,给DR2存入10101010,然后利用ALU的直通功能,检查DR1、

微机原理综合实验报告_nexys4_简易数字信号发生器_HUST_华中科技大学

微机原理综合项目报告 基于nexys4简易数字信号发生器 班级:通信1301班 学号: HUST 姓名:华中科技大学 指导老师: 左冬红罗杰

目录 一、项目简介 (1) 1.设计思路 (1) 2.任务分配 (1) 3.功能描述 (1) 二、项目构成及概要设计 (2) 1. 硬件模块构成 (2) 2. 软件实现流程 (2) 三、项目详细设计 (4) 1.硬件的内部构成 (4) 2.硬件平台的搭建 (9) 3.软件模块的构成及其实现 (13) 波形产生模块 (13) 频率调节模块 (15) 幅度调节模块 (16) 方波占空比调节模块 (16) 四、项目操作说明 (18) 五、附录 (19) 六、心得体会及建议 (20)

一、项目简介 1.设计思路 本次项目我们小组选择的是信号发生器,由于之前做过D/A显示锯齿波的实验,便想到在该实验的基础上进行功能的扩充,这样思路比较清晰。首先我们想到在上次实验的基础上加上方波、三角波和正弦波这几种常见波形,实现起来也与锯齿波较为类似,只是在正弦波的显示上花了点功夫,最后决定通过MATLAB取值来实现,最后能正常显示。而几种波形的切换我们则想到了开关,通过添加开关的GPIO核来获取开关的状态,预留了三位用于波形的切换。仅仅几种波形的显示是远不够的,所以我们决定添加频率的调节和幅度的调节部分,实现时发现幅度调节容易实现但频率调节有些难度,最后从代码产生波形的原理上来分析想到通过改变取样的次数来调节频率的增减,而选择用一位开关用于切换频率增加和减小,这样会节省资源。 当添加了方波后又发现其占空比也应该实现调节的功能,想到通过开发板上的按钮来实现,通过建立按钮的中断控制,来调节时间延时的增减,从而控制占空比的实现。当实现了MA TLAB取数进行正弦波的显示时,小组一位成员提出显示心形的设计想法,通过类似的思路也得到了实现。 具体的设计原理及流程后面会有详细说明。 2.任务分配 小组成员、贡献比例及具体分工: 1硬件平台的搭建,软件代码的实现以及各功能的设计 2心形显示的提出和设计,正弦波MA TLAB取值的实现 3项目整体框图的设计和绘制 实验报告、PPT以及视频的拍制则是由小组成员一起完成。 3.功能描述 该信号发生器工程能显示方波,锯齿波,正弦波,三角波以及“爱心”形状(ch1、ch2分别显示“爱心”上下部分再拼接成完整的“爱心”)。通过开发板按钮能调节各个波形的频率、幅度和方波的占空比,通过led灯能反映开关状态,通过数码管能反映当前显示的波形序号。 Switch<2>---Switch<0>:选择波形 Switch<8>---Switch<3>:调节频率 Switch<9>:控制频率增加和减小 Switch<15>---Switch<10>:调节幅度 BTNU:增加占空比 BTND:减小占空比

微机原理及应用实验报告

微机原理及应用实验报告 班级:机械1301班 姓名:黄佳清 学号:0801130117 座位号: 中南大学机电工程学院

实验一单片机仿真开发机操作和MCS-51指令系统应用 一.实验目的 1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整; 2、学会编写和输入汇编语言源程序、对输入的源程序进行汇编; 3、掌握程序的调试和运行的各种方法。 三.实验内容及步骤(完成分值:60分) 本实验秩序运行Keil uVersion2程序,设置为keil为纯软件仿真 1.新建工程项目 2.设置工程文件参数 3.编写新程序事例 4.调试程序直至能够运行出结果。 四.实验程序 AJMP MAIN ORG 0030H MAIN: MOV R0,#20H MOV R2,#0FH MOV A,#00H A1: MOV @R0,A INC R0 INC A DJNZ R2,A1 MOV R0,#20H ;暂停,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A2: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R2,A2 MOV R0,#030H ;断点,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A3: MOVX A,@DPTR MOVX @R0,A INC R0 INC DPTR DJNZ R2,A3 DO: LJMP DO END ;内部存储器数据块赋值,搬运数据块到外部存储器,再搬运回内部数据存储器。 五、附加题 1.将光标移到想要暂停的地方,MOV R0,#20H所在行,选择“执行到光

北航自动控制原理实验报告(完整版)

自动控制原理实验报告 一、实验名称:一、二阶系统的电子模拟及时域响应的动态测试 二、实验目的 1、了解一、二阶系统阶跃响应及其性能指标与系统参数之间的关系 2、学习在电子模拟机上建立典型环节系统模型的方法 3、学习阶跃响应的测试方法 三、实验内容 1、建立一阶系统的电子模型,观测并记录在不同时间常数T时的响应曲线,测定过渡过程时间T s 2、建立二阶系统电子模型,观测并记录不同阻尼比的响应曲线,并测定超调量及过渡过程时间T s 四、实验原理及实验数据 一阶系统 系统传递函数: 由电路图可得,取则K=1,T分别取:0.25, 0.5, 1 T 0.25 0.50 1.00 R2 0.25MΩ0.5M Ω1MΩ C 1μ1μ1μ T S 实测0.7930 1.5160 3.1050 T S 理论0.7473 1.4962 2.9927 阶跃响应曲线图1.1 图1.2 图1.3 误差计算与分析 (1)当T=0.25时,误差==6.12%; (2)当T=0.5时,误差==1.32%; (3)当T=1时,误差==3.58% 误差分析:由于T决定响应参数,而,在实验中R、C的取值上可能存在一定误差,另外,导线的连接上也存在一些误差以及干扰,使实验结果与理论值之间存在一定误差。但是本实验误差在较小范围内,响应曲线也反映了预期要求,所以本实验基本得到了预期结果。 实验结果说明 由本实验结果可看出,一阶系统阶跃响应是单调上升的指数曲线,特征有T确定,T越小,过度过程进行得越快,系统的快速性越好。 二阶系统 图1.1 图1.2 图1.3

系统传递函数: 令 二阶系统模拟线路 0.25 0.50 1.00 R4 210.5 C2 111 实测45.8% 16.9% 0.6% 理论44.5% 16.3% 0% T S实测13.9860 5.4895 4.8480 T S理论14.0065 5.3066 4.8243 阶跃响应曲线图2.1 图2.2 图2.3 注:T s理论根据matlab命令[os,ts,tr]=stepspecs(time,output,output(end),5)得出,否则误差较大。 误差计算及分析 1)当ξ=0.25时,超调量的相对误差= 调节时间的相对误差= 2)当ξ=0.5时,超调量的相对误差==3.7% 调节时间的相对误差==3.4% 4)当ξ=1时,超调量的绝对误差= 调节时间的相对误差==3.46% 误差分析:由于本试验中,用的参量比较多,有R1,R2,R3,R4;C1,C2;在它们的取值的实际调节中不免出现一些误差,误差再累加,导致最终结果出现了比较大的误差,另外,此实验用的导线要多一点,干扰和导线的传到误差也给实验结果造成了一定误差。但是在观察响应曲线方面,这些误差并不影响,这些曲线仍旧体现了它们本身应具有的特点,通过比较它们完全能够了解阶跃响应及其性能指标与系统参数之间的关系,不影响预期的效果。 实验结果说明 由本实验可以看出,当ωn一定时,超调量随着ξ的增加而减小,直到ξ达到某个值时没有了超调;而调节时间随ξ的增大,先减小,直到ξ达到某个值后又增大了。 经理论计算可知,当ξ=0.707时,调节时间最短,而此时的超调量也小于5%,此时的ξ为最佳阻尼比。此实验的ξ分布在0.707两侧,体现了超调量和调节时间随ξ的变化而变化的过程,达到了预期的效果。 图2.2 图2.1 图2.3

华中科技大学微机原理实验考试题库与答案

复习题(后面附有全部代码) 1.用74LS244设计一个输入接口。从输入端口读入开关状态(高表示‘1’,低表示‘0’),以十进制形式在CRT显示器上显示输入结果(0~255)。 如:输入开关状态:高高高高低低低低→ CRT显示:240 2.用74LS244和74LS273设计一个输入/输出接口,从输入端口输入原码数,转换为补码后从输出端口输出(高和亮表示‘1’,低和灭表示‘0’)。 如:输入开关状态:低高高低低高低高→ 灭亮亮灭灭亮灭亮 输入开关状态:高低低低低高低高→ 亮亮亮亮亮灭亮亮

复习题 1.用AD0809设计一个A/D接口,从5VIN输入直流电压值,在CRT显示器上以二进制形式显示采样结果。 如:输入5V→CRT显示:1111 1111 B (允许有误差) 如:输入0V→CRT显示:0000 0000 B

2.用AD0809设计一个A/D接口,从5VIN输入直流电压值,在CRT显示器上以十进制形式显示采样结果。 如:输入5V→CRT显示:255( 允许有误差) 如:输入0V →CRT显示:0 3.用AD0809设计一个A/D接口,从5VIN输入直流电压值,在CRT显示器上以0~FFFH 的形式显示采样结果。 如:输入5V→CRT显示:FFH( 允许有误差) 如:输入0V →CRT显示:00H

复习题 1.用8255设计一个输入/输出接口,C口输入原码数,转换为补码后从B口输出(高和亮表示‘1’,低和灭表示‘0’)。 如:输入开关状态:低高高低低高低高→ 发光二极管: 灭亮亮灭灭亮灭亮 输入开关状态:高低低低低高低高→ 发光二极管: 亮亮亮亮亮灭亮亮

北京邮电大学微机原理硬件实验报告

北京邮电大学微机原理硬件实验报告

实验报告一:I/0地址译码和简单并行接口 ——实验一&实验二 一、实验目的 掌握I/O地址译码电路的工作原理;掌握简单并行接口的工作原理及使用方法。 二、实验原理及内容 a) I/0地址译码 1、实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数 字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~ 287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔经过软件延时实现。 2、接线: Y4/IO地址接 CLK/D触发器

Y5/IO地址接 CD/D触发器 D/D触发器接 SD/D触发器接 +5V Q/D触发器接L7(LED灯)或逻辑笔 b) 简单并行接口 1、按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通 用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器, 8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电 路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码经过这 个输出接口输出,根据8个发光二极管发光情况验证正确 性。 3、按下面图4-2-2简单并行输入接口电路图连接电路 (74LS244插通用插座,74LS32用实验台上的“或门”)。 74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关 输出K0~K7,8个数据输出端分别接数据总线D0~D7。 4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这 个ASCⅡ码,并将其对应字母在屏幕上显示出来。 5、接线:1)输出 按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验 台逻辑或门) 2)输入 按图4-2-2接线(图中虚线为实验所需接线,74LS32为实 验台逻辑或门) 三、硬件连线图 1、I/O地址译码

计算机组成原理实验报告

计算机组成原理实验报告 ——微程序控制器实验 一.实验目的: 1.能瞧懂教学计算机(TH-union)已经设计好并正常运行的数条基本指令的功能、格式及执 行流程。并可以自己设计几条指令,并理解其功能,格式及执行流程,在教学计算机上实现。 2.深入理解计算机微程序控制器的功能与组成原理 3.深入学习计算机各类典型指令的执行流程 4.对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念 5.学习微程序控制器的设计过程与相关技术 二.实验原理: 微程序控制器主要由控制存储器、微指令寄存器与地址转移逻辑三大部分组成。 其工作原理分为: 1、将程序与数据通过输入设备送入存储器; 2、启动运行后从存储器中取出程序指令送到控制器去识别,分析该指令要求什么事; 3、控制器根据指令的含义发出相应的命令(如加法、减法),将存储单元中存放的操作数据取出送往运算器进行运算,再把运算结果送回存储器指定的单元中; 4、运算任务完成后,就可以根据指令将结果通过输出设备输出 三.微指令格式: 其中高八位为下地址字段、其余各位为控制字段、 1)微地址形成逻辑 TH—UNION 教学机利用器件形成下一条微指令在控制器存储器的地址、 下地址的形成由下地址字段及控制字段中的CI3—SCC控制、当为顺序执行时,下地址字段不起作用、下地址为当前微指令地址加1;当为转移指令(CI3—0=0011)时,由控制信号SCC 提供转移条件,由下地址字段提供转移地址、 2)控制字段 控制字段用以向各部件发送控制信号,使各部件能协调工作。 控制字段中各控制信号有如下几类: ①对运算器部件为了完成数据运算与传送功能,微指令向其提供了24位的控制信号,包括:4位的A、B口地址,用于选择读写的通用积存器3组3位的控制码I8-I6、 I5-I3、I2-I6,用于选择结果处置方案、运算功能、数据来源。 3组共7位控制信号控制配合的两片GAL20V8 3位SST,用于控制记忆的状态标志位 2位SCI,用于控制产生运算器低位的进位输入信号 2位SSH,用于控制产生运算器最高,最地位(与积存器)移位输入信号 ②对内存储器I/O与接口部件,控制器主要向它们提供读写操作用到的全部控制信号,共3位,即MRW

(完整word版)微机原理与接口技术试验学习总结

微机原理与接口技术试验学习总结 本学期微机原理的实验课程即将结束,关于微机原理课程实验的心得体会颇多。 初学《微机原理》时,感觉摸不着头绪。面对着众多的术语、概念及原理性的问题不知道该如何下手。在了解课程的特点后,我发现,应该以微机的整机概念为突破口,在如何建立整体概念上下功夫。“麻雀虽小,五脏俱全”,可以通过学习一个模型机的组成和指令执行的过程,了解和熟悉计算机的结构、特点和工作过程。 《微机原理》课程有许多新名词、新专业术语。透彻理解这些名词、术语的意思,为今后深入学习打下基础。一个新的名词从首次接触到理解和应用,需要一个反复的过程。而在众多概念中,真正关键的并不是很多。比如“中断”概念,既是重点又是难点,如果不懂中断技术,就不能算是搞懂了微机原理。在学习中凡是遇到这种情况,绝对不轻易放过,要力求真正弄懂,搞懂一个重点,将使一大串概念迎刃而解。 学习过程中,我发现许多概念很相近,为了更好地掌握,将一些容易混淆的概念集中在一起进行分析,比较它们之间的异同点。比如:微机原理中,引入了计算机由五大部分组成这一概念;从中央处理器引出微处理器的定义;在引出微型计算机定义时,强调输入/输出接口的重要性;在引出微型计算机系统的定义时,强调计算机软件与计算机硬件的相辅相成的关系。微处理器是微型计算机的重要组成部分,它与微型计算机、微型计算机系统是完全不同的概念。 在微机中,最基础的语言是汇编语言。汇编语言是一个最基础最古老的计算机语言。语言总是越基础越重要,在重大的编程项目中应用最广泛。就我的个人理解,汇编是对寄存的地址以及数据单元进行最直接的修改。而在某些时候,这种方法是最有效,最可靠的。然而,事物总有两面性,有优点自然缺点也不少。其中,最重要的一点就是,汇编语言很复杂,对某个数据进行修改时,本来很简单的一个操作会用比较烦琐的语言来解决,而这些语言本身在执行和操作的过程中,占有大量的时间和成本。在一些讲求效率的场合,并不可取。 汇编语言对学习其他计算机起到一个比较、对照、参考的促进作用。学习事物总是从最简单基础的开始。那么学习高级语言也当然应当从汇编开始。学习汇编语言实际上是培养了学习计算机语言的能力和素养。个人认为,学习汇编语言对学习其他语言很有促进作用。 汇编语言在本学期微机学习中有核心地位。本学期微机原理课程内容繁多,还学习了可编程的计数/定时的8253,可编程的外围接口芯片8255A等。学的都是芯片逻辑器件,而在名字前都标有“可编程”,其核心作用不可低估。 我想微机原理课程试验不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。但是我想他也有它的独特之处,那就是让我们进入一个神奇的世界,那就是编程。对我们来说汇编真的很新奇,很有趣,也使我有更多的兴趣学习微机原理和其

计算机组成原理实验报告册

实验一监控程序与汇编实验 实验时间:第周星期年月日节实验室:实验台: (以上部分由学生填写,如有遗漏,后果由学生本人自负) 1、实验目的 1)了解教学计算机的指令格式、指令编码、选择的寻址方式和具体功能。 2)了解汇编语言的语句与机器语言的指令之间的对应关系,学习用汇编语言设计程序的过程和方法。 3)学习教学机监控程序的功能、监控命令的使用方法,体会软件系统在计算机组成中的地位和作用。 2、实验平台 硬件平台:清华大学TEC-XP实验箱的MACH部分 软件平台:监控程序、PC端指令集仿真软件 3、实验要求 1)学习联机使用TEC-XP 教学实验系统和仿真终端软件; 2)使用监控程序的R 命令显示/修改寄存器内容、D 命令显示存储器内容、E 命令修改存储器内容; 3)使用A 命令写一小段汇编程序,使用U命令观察汇编码与机器码之间的关系,用G 命令连续运行该程序,用T命令单步运行并观察程序单步执行情况。 **代码不得写到0000——1FFF的地址单元中,如有违反将被取消当堂成绩 4、操作步骤及实验内容 1)实验箱功能开关设置及联机操作: 1. 将实验箱COM1口与PC机相连; 2. 设置功能状态开关为00110; 3. 于PC端运行; 4. 按RESET,START键,若PC端出现如下输出(如图所示),则操作成功; 图 2)仿真软件相关操作: 1. 在项目文件夹找到并启动; 图

2. 点击文件-启动监控程序; 图 4.若PC端出现如下输出(如图所示),则操作成功; 图 3)理解下列监控命令功能: A、U、G、R、E、D、T 1. A命令:完成指令汇编操作,把产生的指令代码放入对应的内存单元中,可连 续输入。不输入指令直接回车,则结束A命令(如图所示); 图 2. U命令:从相应的地址反汇编15条指令,并将结果显示在终端屏幕上(如图所 示); 图 注:连续使用不带参数的U命令时,将从上一次反汇编的最后一条语句之后接着继续反汇编。 3. G命令:从指定(或默认)的地址运行一个用户程序(如图所示); 图 4. R命令:显示、修改寄存器内容,当R命令不带参数时,显示全部寄存器和状 态寄存器的值(如图所示); 图 5. E命令:从指定(或默认)地址逐字显示每个内存字的内容,并等待用户打入 一个新的数值存回原内存单元(如图所示); 图 6. D命令:从指定(或默认)地址开始显示内存120个存储字的内容(如图所示);

2013华科光电学院考研复试分数线

光学与电子信息学院 2013年硕士研究生复试工作细则 一、复试方式及复试内容 复试包括专业知识、综合素质和能力、外语听力及口语与思想政治品德等考核内容。 1、专业考核:包括笔试和面试两部分 笔试:考试时间2.5小时,满分为100分。 报考光学工程,光电信息工程、物理电子学、电子与通信工程专业的考生,笔试科目:通信原理、激光技术、光电技术和单片机原理,每门科目50分,考生可以任选两门科目,笔试科目考试范围见: https://www.360docs.net/doc/7013461120.html,/Graduate/8/2013-03-08/164644115.html 报考微电子学与固体电子学,电子信息材料与元器件,材料物理与化学, 《电子材料物理》、半导体芯片系统设计与工艺、集成电路专业的考生,笔试科目: 《微机原理与单片机应用基础》和《微电子器件与IC设计》任选一门。 面试:应届毕业的考生,着重考核其应用专业知识分析和解决实际问题的能力及实验技能等;在职报考的考生,着重考核其专业基础是否扎实,以及了解其工作中的成绩等。 2、英语考核:英语听说能力测试,听力口语每位考生不少于8分钟。重点考察专业文献阅读能力。 具体要求见《华中科技大学硕士研究生入学考试英语听说测试实施办法》。 3、综合素质考核:全面考核考生的政治态度,思想表现,道德品质等。着重了解考生对一些重大政治事件的看法和认识,并对考生的专业思想和治学态度进行必要的考察。 英语口语测试与专业面试分开进行。 专业学位考生重点加强实践能力与参加课外科技情况。

二、复试成绩的评定 成绩的评定:采取由复试小组成员分别评分后取平均分确定。复试应综合各方面的考核结果按百分制评分。其中外语口语测试占20%,专业考核采取笔试与面试相结合,笔试成绩与面试成绩各占40%。 初、复试总成绩按初试成绩占60%,复试成绩占40%计算,其中初试四门考试总成绩应按百分制进行折算。 三、复试、录取程序 (1)公布导师名单、复试生情况及招生计划、奖学金类别信息; (2)复试生自主选择学术型和专业硕士类型、选择导师,填报志愿; (3)分别召开复试生、导师会议,介绍导师、复试生情况及相关规定; (4)组织复试、复试成绩评定; (5)复试领导小组评定综合成绩; (6)协调师生双向选择和录取类型; (复试期间由研究生院组织体检) (7)复试领导小组依复试生综合考核成绩和导师意见,讨论确定初录取名单及指导教师和获奖学金学生名单。 (8)公布初录取名单及获奖学金学生名单。 (9)提供未录取考生名单给第二志愿的学校、专业调剂。 (10)系、导师、录取学生按规定分别签订录取协议和奖学金协议。 四、凡有下列情况之一的考生,不予录取 (1)综合复试不合格者; (2)体检不合格的考生。 五、复试分数控制线

相关文档
最新文档