文档视界 最新最全的文档下载
当前位置:文档视界 › 实验2 存储器设计与仿真

实验2 存储器设计与仿真

实验2 存储器设计与仿真
实验2 存储器设计与仿真

预做实验报告2 存储器设计与仿真

一、实验目的

理解并掌握寄存器堆的基本电路结构及其设计方法,学会使用Verilog HDL 对电路进行行为建模、结构建模以及仿真测试。 二、实验内容

利用Verilog HDL 设计一个寄存器堆模型,并进行仿真测试。要求该寄存器堆具有32个32位的寄存器,并具有2个读端口和1个写端口。要求采用层次化的建模方法,即先搭建低层模块,然后再逐级搭建高层模块。 三、实验环境

PC 机1台、Modelsim 仿真软件1套。 四、实验步骤 1、电路结构设计 寄存器堆外框图:

寄存器堆内部结构图:

N1<4:0>

N2<4:0> WE CLK

2、建立Verilog模型

module registerfile(Q1,Q2,DI,clk,reset,writeen,AD,A1,A2);

output[31:0] Q1,Q2;

input[31:0] DI;

input clk,reset,writeen;

input[4:0] AD,A1,A2;

wire[31:0] decoderout;

wire[31:0] regen;

wire[31:0]

q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q17,q18,q1 9,q20,q21,q22,q23,q24,q25,q26,q27,q28,q29,q30,q31;

decoder dec0(decoderout,AD);

assign regen[0]=decoderout[0] & writeen;

assign regen[1]=decoderout[1] & writeen;

assign regen[2]=decoderout[2] & writeen;

assign regen[3]=decoderout[3] & writeen;

assign regen[4]=decoderout[4] & writeen;

assign regen[5]=decoderout[5] & writeen;

assign regen[6]=decoderout[6] & writeen;

assign regen[7]=decoderout[7] & writeen;

assign regen[8]=decoderout[8] & writeen; assign regen[9]=decoderout[9] & writeen; assign regen[10]=decoderout[10] & writeen; assign regen[11]=decoderout[11] & writeen; assign regen[12]=decoderout[12] & writeen; assign regen[13]=decoderout[13] & writeen; assign regen[14]=decoderout[14] & writeen; assign regen[15]=decoderout[15] & writeen; assign regen[16]=decoderout[16] & writeen; assign regen[17]=decoderout[17] & writeen; assign regen[18]=decoderout[18] & writeen; assign regen[19]=decoderout[19] & writeen; assign regen[20]=decoderout[20] & writeen; assign regen[21]=decoderout[21] & writeen; assign regen[22]=decoderout[22] & writeen; assign regen[23]=decoderout[23] & writeen; assign regen[24]=decoderout[24] & writeen; assign regen[25]=decoderout[25] & writeen; assign regen[26]=decoderout[26] & writeen; assign regen[27]=decoderout[27] & writeen; assign regen[28]=decoderout[28] & writeen; assign regen[29]=decoderout[29] & writeen; assign regen[30]=decoderout[30] & writeen; assign regen[31]=decoderout[31] & writeen;

register reg0(q0,DI,clk,reset,regen[0]); register reg1(q1,DI,clk,reset,regen[1]); register reg2(q2,DI,clk,reset,regen[2]); register reg3(q3,DI,clk,reset,regen[3]); register reg4(q4,DI,clk,reset,regen[4]); register reg5(q5,DI,clk,reset,regen[5]); register reg6(q6,DI,clk,reset,regen[6]); register reg7(q7,DI,clk,reset,regen[7]); register reg8(q8,DI,clk,reset,regen[8]); register reg9(q9,DI,clk,reset,regen[9]); register reg10(q10,DI,clk,reset,regen[10]); register reg11(q11,DI,clk,reset,regen[11]); register reg12(q12,DI,clk,reset,regen[12]); register reg13(q13,DI,clk,reset,regen[13]); register reg14(q14,DI,clk,reset,regen[14]); register reg15(q15,DI,clk,reset,regen[15]); register reg16(q16,DI,clk,reset,regen[16]); register reg17(q17,DI,clk,reset,regen[17]); register reg18(q18,DI,clk,reset,regen[18]);

register reg19(q19,DI,clk,reset,regen[19]);

register reg20(q20,DI,clk,reset,regen[20]);

register reg21(q21,DI,clk,reset,regen[21]);

register reg22(q22,DI,clk,reset,regen[22]);

register reg23(q23,DI,clk,reset,regen[23]);

register reg24(q24,DI,clk,reset,regen[24]);

register reg25(q25,DI,clk,reset,regen[25]);

register reg26(q26,DI,clk,reset,regen[26]);

register reg27(q27,DI,clk,reset,regen[27]);

register reg28(q28,DI,clk,reset,regen[28]);

register reg29(q29,DI,clk,reset,regen[29]);

register reg30(q30,DI,clk,reset,regen[30]);

register reg31(q31,DI,clk,reset,regen[31]);

mux_32

mux0(Q1,q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q1 7,q18,q19,q20,q21,q22,q23,q24,q25,q26,q27,q28,q29,q30,q31,A1);

mux_32

mux1(Q2,q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q1 7,q18,q19,q20,q21,q22,q23,q24,q25,q26,q27,q28,q29,q30,q31,A2); endmodule

module decoder(decoderout,waddr);

output[31:0] decoderout;

input[4:0] waddr;

reg [31:0] decoderout;

always @ (waddr)

case(waddr)

5'd0: decoderout=32'b0000_0000_0000_0000_0000_0000_0000_0001;

5'd1: decoderout=32'b0000_0000_0000_0000_0000_0000_0000_0010;

5'd2: decoderout=32'b0000_0000_0000_0000_0000_0000_0000_0100;

5'd3: decoderout=32'b0000_0000_0000_0000_0000_0000_0000_1000;

5'd4: decoderout=32'b0000_0000_0000_0000_0000_0000_0001_0000;

5'd5: decoderout=32'b0000_0000_0000_0000_0000_0000_0010_0000;

5'd6: decoderout=32'b0000_0000_0000_0000_0000_0000_0100_0000;

5'd7: decoderout=32'b0000_0000_0000_0000_0000_0000_1000_0000;

5'd8: decoderout=32'b0000_0000_0000_0000_0000_0001_0000_0000;

5'd9: decoderout=32'b0000_0000_0000_0000_0000_0010_0000_0000;

5'd10: decoderout=32'b0000_0000_0000_0000_0000_0100_0000_0000;

5'd11: decoderout=32'b0000_0000_0000_0000_0000_1000_0000_0000;

5'd12: decoderout=32'b0000_0000_0000_0000_0001_0000_0000_0000;

5'd13: decoderout=32'b0000_0000_0000_0000_0010_0000_0000_0000;

5'd14: decoderout=32'b0000_0000_0000_0000_0100_0000_0000_0000;

5'd15: decoderout=32'b0000_0000_0000_0000_1000_0000_0000_0000; 5'd16: decoderout=32'b0000_0000_0000_0001_0000_0000_0000_0000; 5'd17: decoderout=32'b0000_0000_0000_0010_0000_0000_0000_0000; 5'd18: decoderout=32'b0000_0000_0000_0100_0000_0000_0000_0000; 5'd19: decoderout=32'b0000_0000_0000_1000_0000_0000_0000_0000; 5'd20: decoderout=32'b0000_0000_0001_0000_0000_0000_0000_0000; 5'd21: decoderout=32'b0000_0000_0010_0000_0000_0000_0000_0000; 5'd22: decoderout=32'b0000_0000_0100_0000_0000_0000_0000_0000; 5'd23: decoderout=32'b0000_0000_1000_0000_0000_0000_0000_0000; 5'd24: decoderout=32'b0000_0001_0000_0000_0000_0000_0000_0000; 5'd25: decoderout=32'b0000_0010_0000_0000_0000_0000_0000_0000; 5'd26: decoderout=32'b0000_0100_0000_0000_0000_0000_0000_0000; 5'd27: decoderout=32'b0000_1000_0000_0000_0000_0000_0000_0000; 5'd28: decoderout=32'b0001_0000_0000_0000_0000_0000_0000_0000; 5'd29: decoderout=32'b0010_0000_0000_0000_0000_0000_0000_0000; 5'd30: decoderout=32'b0100_0000_0000_0000_0000_0000_0000_0000; 5'd31: decoderout=32'b1000_0000_0000_0000_0000_0000_0000_0000; endcase

endmodule

module register(q,data,clk,reset,en);

output[31:0] q;

input[31:0] data;

input clk,reset,en;

dff u0(q[0],data[0],clk,reset,en);

dff u1(q[1],data[1],clk,reset,en);

dff u2(q[2],data[2],clk,reset,en);

dff u3(q[3],data[3],clk,reset,en);

dff u4(q[4],data[4],clk,reset,en);

dff u5(q[5],data[5],clk,reset,en);

dff u6(q[6],data[6],clk,reset,en);

dff u7(q[7],data[7],clk,reset,en);

dff u8(q[8],data[8],clk,reset,en);

dff u9(q[9],data[9],clk,reset,en);

dff u10(q[10],data[10],clk,reset,en);

dff u11(q[11],data[11],clk,reset,en);

dff u12(q[12],data[12],clk,reset,en);

dff u13(q[13],data[13],clk,reset,en);

dff u14(q[14],data[14],clk,reset,en);

dff u15(q[15],data[15],clk,reset,en);

dff u16(q[16],data[16],clk,reset,en);

dff u17(q[17],data[17],clk,reset,en);

dff u18(q[18],data[18],clk,reset,en);

dff u19(q[19],data[19],clk,reset,en);

dff u20(q[20],data[20],clk,reset,en);

dff u21(q[21],data[21],clk,reset,en);

dff u22(q[22],data[22],clk,reset,en);

dff u23(q[23],data[23],clk,reset,en);

dff u24(q[24],data[24],clk,reset,en);

dff u25(q[25],data[25],clk,reset,en);

dff u26(q[26],data[26],clk,reset,en);

dff u27(q[27],data[27],clk,reset,en);

dff u28(q[28],data[28],clk,reset,en);

dff u29(q[29],data[29],clk,reset,en);

dff u30(q[30],data[30],clk,reset,en);

dff u31(q[31],data[31],clk,reset,en);

endmodule

module dff(q,data,clk,reset,en);

output q;

input data,clk,reset,en;

reg q;

always @ (posedge clk)

begin

if (reset)

q=0;

else if (en)

q=data;

else

q=q;

end

endmodule

module

mux_32(q,q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q 17,q18,q19,q20,q21,q22,q23,q24,q25,q26,q27,q28,q29,q30,q31,raddr); output[31:0] q;

input[31:0]

q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q17,q18,q1 9,q20,q21,q22,q23,q24,q25,q26,q27,q28,q29,q30,q31;

input[4:0] raddr;

reg [31:0] q;

always @(raddr or q0 or q1 or q2 or q3 or q4 or q5 or q6 or q7 or q8 or q9 or q10 or q11 or q12 or q13 or q14 or q15 or q16 or q17 or q18 or q19 or q20 or q21 or q22 or q23 or q24 or q25 or q26 or q27 or q28 or q29

or q30 or q31)

case(raddr)

5'd0: q=q0;

5'd1: q=q1;

5'd2: q=q2;

5'd3: q=q3;

5'd4: q=q4;

5'd5: q=q5;

5'd6: q=q6;

5'd7: q=q7;

5'd8: q=q8;

5'd9: q=q9;

5'd10: q=q10;

5'd11: q=q11;

5'd12: q=q12;

5'd13: q=q13;

5'd14: q=q14;

5'd15: q=q15;

5'd16: q=q16;

5'd17: q=q17;

5'd18: q=q18;

5'd19: q=q19;

5'd20: q=q20;

5'd21: q=q21;

5'd22: q=q22;

5'd23: q=q23;

5'd24: q=q24;

5'd25: q=q25;

5'd26: q=q26;

5'd27: q=q27;

5'd28: q=q28;

5'd29: q=q29;

5'd30: q=q30;

5'd31: q=q31;

endcase

endmodule

3、设计测试文件

`timescale 1ns / 1ns module rftest;

wire [31:0]q11,q22;

reg [31:0]data;

reg [4:0]waddr;

reg [4:0]raddr1,raddr2;

reg clk,reset,we;

registerfile r(q11,q22,data,clk,reset,we,waddr,raddr1,raddr2); always #50 clk=~clk;

initial

begin

clk=0;

reset=1;

we=0;

#120 reset=0;

data=32'd1;

we=1;

waddr=5'd0;

#100 data=32'd2;

waddr=5'd1;

#100 data=32'd3;

waddr=5'd2;

#100 data=32'd4;

waddr=5'd3;

#100 data=32'd5;

waddr=5'd4;

#100 data=32'd6;

waddr=5'd5;

#100 data=32'd7;

waddr=5'd6;

#100 data=32'd8;

waddr=5'd7;

#100 data=32'd9;

waddr=5'd8;

#100 data=32'd10;

waddr=5'd9;

#100 data=32'd11;

waddr=5'd10;

#100 data=32'd12;

waddr=5'd11;

#100 data=32'd13;

waddr=5'd12;

#100 data=32'd14;

waddr=5'd13;

#100 data=32'd15;

waddr=5'd14;

#100 data=32'd16;

#100 data=32'd17; waddr=5'd16; #100 data=32'd18; waddr=5'd17; #100 data=32'd19; waddr=5'd18; #100 data=32'd20; waddr=5'd19; #100 data=32'd21; waddr=5'd20; #100 data=32'd22; waddr=5'd21; #100 data=32'd23; waddr=5'd22; #100 data=32'd24; waddr=5'd23; #100 data=32'd25; waddr=5'd24; #100 data=32'd26; waddr=5'd25; #100 data=32'd27; waddr=5'd26; #100 data=32'd28; waddr=5'd27; #100 data=32'd29; waddr=5'd28; #100 data=32'd30; waddr=5'd29; #100 data=32'd31; waddr=5'd30; #100 data=32'd32; waddr=5'd31;

#100 we=0;

raddr1=5'd0;

raddr2=5'd1; #100 raddr1=5'd1; raddr2=5'd2; #100 raddr1=5'd2; raddr2=5'd3; #100 raddr1=5'd3; raddr2=5'd4; #100 raddr1=5'd4;

#100 raddr1=5'd5; raddr2=5'd6; #100 raddr1=5'd6; raddr2=5'd7; #100 raddr1=5'd7; raddr2=5'd8; #100 raddr1=5'd8; raddr2=5'd9; #100 raddr1=5'd9; raddr2=5'd10; #100 raddr1=5'd10; raddr2=5'd11; #100 raddr1=5'd11; raddr2=5'd12; #100 raddr1=5'd12; raddr2=5'd13; #100 raddr1=5'd13; raddr2=5'd14; #100 raddr1=5'd14; raddr2=5'd15; #100 raddr1=5'd15; raddr2=5'd16; #100 raddr1=5'd16; raddr2=5'd17; #100 raddr1=5'd17; raddr2=5'd18; #100 raddr1=5'd18; raddr2=5'd19; #100 raddr1=5'd19; raddr2=5'd20; #100 raddr1=5'd20; raddr2=5'd21; #100 raddr1=5'd21; raddr2=5'd22; #100 raddr1=5'd22; raddr2=5'd23; #100 raddr1=5'd23; raddr2=5'd24; #100 raddr1=5'd24; raddr2=5'd25; #100 raddr1=5'd25; raddr2=5'd26; #100 raddr1=5'd26;

#100 raddr1=5'd27;

raddr2=5'd28;

#100 raddr1=5'd28;

raddr2=5'd29;

#100 raddr1=5'd29;

raddr2=5'd30;

#100 raddr1=5'd30;

raddr2=5'd31;

#100 raddr1=5'd31;

raddr2=5'd0;

#200 $stop;

end

endmodule

注意:测试的完备性。

4、将设计文件和测试文件输入Modesim仿真工具,并进行编译和功能仿真。

5、观测仿真波形图,分析结果是否正确。若有错误,则修改设计文件或测试文件,重新编译和仿真。

六、实验分析与总结

七、实验思考题

仿真实验报告

上海电力学院 本科课程设计 电路计算机辅助设计 院系:电力工程学院 专业年级(班级):电力工程与管理2011192 班 学生姓名:学号: 201129 指导教师:杨尔滨、杨欢红 成绩: 2013年07 月 06 日教师评语:

目录仿真实验一 仿真实验二仿真实验三仿真实验四仿真实验五仿真实验六仿真实验七仿真实验八仿真实验九节点电压法分析直流稳态电路..........................1 戴维宁定理的仿真设计................................5 叠加定理的验证.. (8) 正弦交流电路——谐振电路的仿真......................11 两表法测量三相电路的功率............................14 含受控源的RL 电路响应的研究........................18含有耦合互感的电路的仿真实验........................21 二阶电路零输入响应的三种状态轨迹....................27 二端口电路的设计与分析 (32)

实验一节点电压法分析电路 一、电路课程设计目的 ( 1)通过较简易的电路设计初步接触熟悉Multisim11.0 。 (2)学会用 Multisim11.0 获取某电路元件的某个参数。 (3)通过仿真实验加深对节点分析法的理解及应用。 二、实验原理及实例 节点分析法是在电路中任意选择一个节点为非独立节点,称此节点为参考点。其它独立节点与参考点之间的电压,称为该节点的节点电压。 节点分析法是以节点电压为求解电路的未知量,利用基尔霍夫电流定律和欧姆定律导出(n – 1)个独立节点电压为未知量的方程,联立求解,得出各节点电压。然后进一步求出 各待求量。 下图所示是具有三个节点的电路,下面以该图为例说明用节点分析法进行的电路分析方 法和求解步骤,导出节点电压方程式的一般形式。 图1— 1 首先选择节点③为参考节点,则u3 = 0 。设节点①的电压为u1、节点②的电压为u2,各支 路电流及参考方向见图中的标示。应用基尔霍夫电流定律,对节点①、节点②分别列出节点电 流方程: 节点①i S1i S2i1i 20 节点②i S2i S 3i 2i30 用节点电压表示支路电流: u1 i1G1u1 R 1 u1u2 i 2R G 2(u1u2 ) 2 u2 i3G 3u2 R 3

计算机原理实验二 静态随机存储器实验 操作步骤

2.1 静态随机存储器实验 2.1.1 实验目的 掌握静态随机存储器RAM工作特性及数据的读写方法。 2.1.2 实验设备 PC机一台,TD-CMA实验系统一套。 2.1.3 实验原理 实验原理图如图2-1-3所示,存储器数据线接至数据总线,数据总线上接有8个LED 灯显示D7…D0的内容。地址线接至地址总线,地址总线上接有8个LED灯显示A7…A0的内容,地址由地址锁存器(74LS273,位于PC&AR单元)给出。数据开关(位于IN单元)经一个三态门(74LS245)连至数据总线,分时给出地址和数据。地址寄存器为8位,接入6116的地址A7…A0,6116的高三位地址A10…A8接地,所以其实际容量为256字节。 RD WR 图2-1-3 存储器实验原理图 实验箱中所有单元的时序都连接至时序与操作台单元,CLR都连接至CON单元的CLR 按钮。实验时T3由时序单元给出,其余信号由CON单元的二进制开关模拟给出,其中IOM 应为低(即MEM操作),RD、WR高有效,MR和MW低有效,LDAR高有效。 2.1.4 实验步骤 (1) 关闭实验系统电源,按图2-1-4连接实验电路,并检查无误,图中将用户需要连接的信号用圆圈标明。 (2) 将时序与操作台单元的开关KK1、KK3臵为运行档、开关KK2臵为‘单步’档(时序单元的介绍见附录二)。 (3) 将CON单元的IOR开关臵为1(使IN单元无输出),打开电源开关,如果听到有

‘嘀’报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。 图2-1-4 实验接线图 (4) 给存储器的00H、01H、02H、03H、04H地址单元中分别写入数据11H、12H、13H、14H、15H。由前面的存储器实验原理图(图2-1-3)可以看出,由于数据和地址由同一个数据开关给出,因此数据和地址要分时写入,先写地址,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0),数据开关输出地址(IOR=0),然后打开地址寄存器门控信号(LDAR=1),按动ST产生T3脉冲,即将地址打入到AR中。再写数据,具体操作步骤为:先关掉存储器的读写(WR=0,RD=0)和地址寄存器门控信号(LDAR=0),数据开关输出要写入的数据,打开输入三态门(IOR=0),然后使存储器处于写状态(WR=1,RD=0,IOM=0),按动ST产生T3脉冲,即将数据打入到存储器中。写存储器的流程如图2-1-5所示(以向00地址单元写入11H为例): WR = 0 RD = 0 IOM = 0 IOR = 0 LDAR = 0 WR = 0 RD = 0 IOM = 0 IOR = 0 LDAR = 1 T3= WR = 0 RD = 0 IOM = 0 IOR = 0 LDAR = 0 WR = 1 RD = 0 IOM = 0 IOR = 0 LDAR = 0 T3= 图2-1-5 写存储器流程图 (5) 依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。同写操作类似,也要先给出地址,然后进行读,地址的给出和前面一样,而在进行读操作时,应先关闭IN单元的输出(IOR=1),然后使存储器处于读状态(WR=0,RD=1,IOM=0),此时数据总线上的数即为从存储器当前地址中读出的数据内容。读存储器的流程如图2-1-6所示(以从00地址单元读出11H为例):

《管理信息系统》课程设计实验报告

《管理信息系统》课程设计实验报告 课程名称:管理信息系统 指导老师: ******* 院系:商学院 专业班级: ******** 姓名: ******** 学号: ******** 实验日期: 2011.7.11 实验地点:一机房

《管理信息系统》课程设计任务书 一.课程设计目的及意义: 《管理信息系统》课程设计是在完成《管理信息系统》课程学习之后的一次实践性教 学,是本课程理论知识的一次综合运用。通过本课程设计,能够进一步加深对信息、信息系 统、管理信息系统等基础理论知识的理解,能初步掌握结构化的生命周期法、面向对象法等 系统工程方法,进一步加强熟练应用管理信息系统的操作技能,并能够借助于管理信息系统 解决实际问题。 二.课程设计要求: 1.本课程设计时间为一周。 2.本课程设计以教学班为单位进行上机操作及实验。 3.按照任务要求完成课程设计内容。 三.课程设计任务要求: 1.任务内容:进入山东轻工业学院主页,在“网络资源”区域进入“网络教学平台”,输入各自的用户名和密码(学生学号及密码),进入本网络教学平台系统,在充分熟悉本系统 的前提下,完成下列任务要求。 2.任务要求: ①按照课程讲解的系统分析步骤和理论对本系统进行系统分析。 ②绘制不少于 3 个的主要业务流程图。 ③描述上述主要业务流程图的逻辑处理功能。 ④分析本系统的优缺点,提出改进意见,并描述改进的逻辑处理功能,绘制业务流 程图。 四.课程设计评分标准: 按照《管理信息系统课程设计大纲》的要求,本课程 1 学分,采用百分制计分,其中 任务要求②占30 分,任务要求③占30 分,任务要求④占30 分,考勤及实践表现占10 分。五.本课程设计自2011 年 6 月 27 日至 2011 年 7 月 1 日。

虚拟仿真实验方案设计

实用文档 虚拟仿真实验解决方案 华一风景观艺术工程 2017年8月

目录 第一章需求分析 (2) 一、项目背景 (2) 二、实验教学现状 (3) 三、用户需求 (3) 第二章建设原则 (5) 一、建设目标 (5) 二、建设原则 (6) 第三章系统总体解决方案 (7) 一、总体架构 (7) 二、学科简介 (8) 第四章产品优势 (14) 第五章产品服务 (16) 一、服务方式 (16) 二、服务容 (16) 三、故障响应服务流程 (17) 四、故障定义 (18) 五、故障响应时间 (18) 六、故障处理流程 (19) 七、应急预案 (19)

第一章需求分析 一、项目背景 《国家中长期教育改革和发展规划纲要(2010-2020年)》明确指出:把教育信息化纳入国家信息化发展整体战略,超前部署教育信息网络。到2020年,基本建成覆盖城乡各级各类学校的教育信息化体系,促进教育容、教学手段和方法现代化。加强优质教育资源开发与应用,建立数字图书馆和虚拟实验室。鼓励企业和社会机构根据教育教学改革方向和师生教学需求,开发一批专业化教学应用工具软件,并通过教育资源平台提供资源服务,推广普及应用。 在“十三五规划”方针政策指引下,各地陆续出台政策,强调数理化实验教学的重要性。 2016年,公布了中高考的新方案,强调义务教育阶段所有科目都设为100分,表示它们在义务教育与学生成长中同等重要,不再人为去区分主次,使学校、老师、家长、社会对每一门学科都很重重视,其中物生化实验部分占分比例为30%,高考不再文理分科。 继重磅发布此消息后,教育厅发布《关于2016年普通高中招生工作的意见》,其中明确要求理化生实验操作考试满分为30分;省初中毕业升学理化实验操作考试分数为15分,考试成绩计入考生中考录取总分;省理化实验操作10分。

实验二 数据存储器和程序存储器实验

实验二数据存储器和程序存储器实验 实验目的: 了解DSP内部数据存储器和程序存储器的结构 了解DSP指令的几种寻址方式 实验要求: 主要是对外扩数据存储器进行数据的存储、移动。该实验所需要的硬件主要是DSP、CPLD、DRAM。实验过程是:让学生通过CCS5000的DSP仿真器对DSP 进行仿真,向DSP外扩DRAM写入数据、读数据、数据块的移动,其操作结果通过CCS5000仿真界面进行观察或通过发光二极管观察其正确性。 实验步骤: 经过了实验一以后,相信各位同学对于CCS的基本操作已经了解,故在此不再赘述。 1、以Simulator方式启动CCS,打开项目文件,编译程序,加载目标代码文件。 2、打开各个观察窗口,值得注意的是,本实验需要打开三个内存窗口:Data页的0x2000(.data段)起始处、Data页的0x3000(.stack段)起始处、以及Program页的0x1f00起始处 3、按照实验一的步骤设置断点,观察方法也基本相同,下面仅对各个小段程序进行简要说明: bk0: 通过对XF引脚的置位和复位实现发光二极管的闪烁 bk1: 立即数寻址方式 bk2: 绝对地址寻址方式-数据存储器地址寻址 bk3: 绝对地址寻址方式-程序存储器地址寻址 bk4: 累加器寻址方式 bk5: 直接寻址方式(DP为基准) bk6: 直接寻址方式(SP为基准) bk7: 间接寻址方式 bk8: 存储器映射寄存器寻址方式 bk9: 堆栈寻址方式 bk10: 将程序存储器0x2000为起始地址的0x100个字复制到数据存储器的0x4000为起始地址的空间中

************************************************ * FileName: ex2.asm * * Description: 数据存储器和程序存储器实验* ************************************************ CMD文件: MEMORY { PAGE 0: VECS: origin = 0xff80, length = 0x80 PROG: origin = 0x1000, length = 0x1000 PAGE 1: DATA: origin = 0x2000, length = 0x1000 STACK: origin = 0x3000, length = 0x1000 } SECTIONS { .vectors: {} > VECS PAGE 0 .text: {} > PROG PAGE 0 .data: {} > DATA PAGE 1 .stack: {} > STACK PAGE 1 } 5000系列DSP汇编语言: .title "ex2" ;在清单页头上打印标题 .global reset,_c_int00 ;定义reset和_c_int00两个全局(外部标号),_c_int00是C ; ;行环境的入口点,该入口点在连接的rtsxxx.lib库中,DSP ;复位后,首先跳到0地址,复位向量对应的代码必须跳转 ;到C运行环境的入口点_c_int00. .mmregs ;输入存储器映象寄存器进符号表 .def _c_int00 ;识别定义在当前模块和用在其它模块中的一个或多个符号DA T0 .set 00H ;给符号DAT0设置值为00H DA T1 .set 01H DA T2 .set 02H DA T3 .set 03H DDAT0 .set 2004H DDAT1 .set 2005H DDAT2 .set 2006H DDAT3 .set 2007H PDAT0 .set 1f00H PDAT1 .set 1f01H PDAT2 .set 1f02H PDAT3 .set 1f03H .sect ".vectors" ;中断向量表, 表示以下语句行汇编进名为.vectors的初始化段, ;若用户的程序是要写进EPROM并在上电之后直接运 ;行,则必须包含Vectors.asm文件,这个文件的代码将作为IST ;(中断服务表),并且必须被连接命令文件(.cmd)分配到0 ;地址,DSP复位后,首先跳到0地址,复位向量对应的代码

系统设计实验报告

系统设计实验报告——远程在线考试系统

目录软件需求说明书························1 引言··························· 1.1编写目的······················· 1.2背景························· 1.3定义························· 1.4参考资料······················· 2 程序系统的结构························ 3 程序设计说明·························

1引言 1.1编写目的 本文档的编写目的是为远程在线考试系统项目的设计提供: a.系统的结构、设计说明; b.程序设计说明; c. 程序(标识符)设计说明 1.2背景 随着网络技术的飞速发展,现在很多的大学及社会上其它的培训部门都已经开设了远程教育,并通过计算机网络实现异地教育。但是,远程教育软件的开发,就目前来说,还是处于起步的阶段。因此,构建一个远程在线考试系统,还是有很大的实际意义的。 根据用户提出的需求,本项目组承接该系统的开发工作 a.开发软件系统的名称:远程在线考试系统 b.本项目的任务提出者:福州大学软件学院 c.用户:各类大专院校学校、中小学校。 1.3定义 远程在线考试系统 远程在线考试系统是基于用Browser/Web模式下的,可以实现考试题库管理、多用户在线考试、自动阅卷功能的系统。

1.4参考资料 ?GB 8566 计算机软件开发规范 ?GB 8567 计算机软件产品开发文件编制指南?软件设计标准 ?《ASP与SQL-Server2000》清华大学出版社?《可行性研究报告》 ?《项目计划文档》 ? 2程序系统的结构 3程序1(标识符)设计说明

湘潭大学计算机原理实验二ROM存储器与RAM存储器实验报告

计算机原理与设计 实验报告 实验二存储器实验 :XXX 学号:2013551728

班级:13级软件工程2班 实验日期:2014年10 月29 日 1.FPGA中ROM定制与读出实验 一.实验目的 1、掌握FPGA中ROM的设置,作为只读存储器ROM的工作特性和配置方法。 2、用文本编辑器编辑mif文件配置ROM,学习将程序代码以mif格式文件加载于ROM中; 3、在初始化存储器编辑窗口编辑mif文件配置ROM; 4、验证FPGA中ROM的功能。 二.实验原理 ALTERA的FPGA中有许多可调用的模块库,可构成如rom、ram、fifo等存储器结构。CPU 中的重要部件,如RAM、ROM可直接调用他们构成,因此在FPGA中利用嵌入式阵列块EAB 可以构成各种结构的存储器,ROM是其中的一种。ROM有5组信号:地址信号address[ ]、数据信号q[ ]、时钟信号inclock、outclock、允许信号memenable,其参数都是可以设定的。由于ROM是只读存储器,所以它的数据口是单向的输出端口,ROM中的数据是在对FPGA 现场配置时,通过配置文件一起写入存储单元的。图2-1-1中的ROM有3组信号:inclk——输入时钟脉冲;instruction[31..0]——lpm_ROM的32位数据输出端;a[4..0]——lpm_ROM的5位读出地址。 实验中主要应掌握以下三方面的内容: (1)ROM的参数设置; (2)ROM中数据的写入,即FILE初始化文件的编写;

(3)ROM的实际应用,在GW48_CP+实验台上的调试方法。 三.实验步骤 (1)新建工程。工程名是scinstmem.qpf。 (2)用初始化存储器编辑窗口编辑ROM配置文件(文件名.mif)。这里预先给出后面将要用到的指令存储器初始化文件:scinstmem.mif 。如下图,scinstmem.mif中的数据是机器指令代码。 scinstmem.mif中的数据 (3)模块设计。用图形编辑,使用工具Mega Wizard Plug-In Manager,定制指令存储器rom 宏功能块。设置地址总线宽度address[]和数据总线宽度q[],分别为5位和32位,并添加输入输出引脚,如图设置和连接。 ROM的结构图 在设置rom数据参数选择项file的对应窗口中(下图),用键盘输入ROM配置文件的路径(scinstmem.mif),然后设置在系统ROM/RAM读写允许,以便能对FPGA中的ROM在系统读写。

微波仿真实验报告(北邮)

北京邮电大学 微波仿真实验报告实验名称:微波仿真实验

姓名:刘梦颉 班级:2011211203 学号:2011210960 班内序号:11 日期:2012年12月20日 一、实验目的 1、熟悉支节匹配的匹配原理。 2、了解微带线的工作原理和实际应用。 3、掌握Smith图解法设计微带线匹配网络。 4、掌握ADS,通过SmithChart和Momentum设计电路并仿真出结果。 二、实验要求 1、使用软件:ADS 2、实验通用参数: FR4基片:介电常数为4.4,厚度为1.6mm,损耗角正切为0.02 特性阻抗:50欧姆 3、根据题目要求完成仿真,每题截取1~3张截图。

三、实验过程及结果 第一、二次实验 实验一: 1、实验内容 Linecal的使用(工作频率1GHz) a)计算FR4基片的50欧姆微带线的宽度 b)计算FR4基片的50欧姆共面波导(CPW)的横截面尺寸(中心信号线 宽度与接地板之间的距离) 2、相关截图 (a)根据实验要求设置相应参数

(b)根据实验要求设置相应参数 实验二 1、实验内容 了解ADS Schematic的使用和设置2、相关截图:

打开ADS软件,新建工程,新建Schematic窗口。 在Schematic中的tools中打开lineCalc,可以计算微带线的参数。 3、实验分析 通过在不同的库中可以找到想要的器件,比如理想传输线和微带线器件。在完成电路图后需要先保存电路图,然后仿真。在仿真弹出的图形窗口中,可以绘制Smith图和S参数曲线图。

实验三 1、实验内容 分别用理想传输线和微带传输线在FR4基片上,仿真一段特性阻抗为50欧姆四分之波长开路线的性能参数,工作频率为1GHz。观察Smith圆图变化。 2、相关截图 (1)理想传输线

实验二 I2C存储器实验

I2C存储器实验 实验目的 1、了解I2C总线的工作原理 2、掌握I2C总线驱动程序的设计和调试方法 3、掌握I2C总线存储器的读写方法 实验仪器 单片机开发板、稳压电源、计算机 实验原理 1、 I2C总线常识 I2C总线采用一个双线式漏极开路接口,可在一根总线上支持多个器件和主控器。所连接的器件只会把总线拉至低电平,而决不会将其驱动至高电平。总线在外部通过一个电流源或上拉电阻器连接至一个正电源电压。当总线空闲时,两条线路均为高电平。在标准模式中,I2C 总线上的数据传输速率高达100kbit/s,而在快速模式中则高达400kbit/s。 I2C总线上的每个器件均由一个存储于该器件中的唯一地址来识别,并可被用作一个发送器或接收器(视其功能而定)。除了发送器和接收器之外,在执行数据传输时,还可把器件视作主控器或受控器。主控器是负责启动总线上的数据传输并生成时钟信号以允许执行该传输的器件。同时,任何被寻址的器件均被视作受控器。 CAT24WC01/02/04/08/16是一个1K/2K/4K/8K/16K位串行CMOS EEPROM,内部含有128/256/512/1024/2048个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗,CAT24WC01有一个8字节页写缓冲器,CAT24WC02/04/08/16有一个16字节页写缓冲器,该器件通过I2C总线接口进行操作,有一个专门的写保护功能,并且器件能与400KHzI2C 总线兼容。 引脚名称和功能如图1所示。 图1 24系例I2C存储器引脚说明 通过器件地址输入端A0、A1和A2可以实现将最多8个24WC01和24WC02器件4个24WC04器件,2个24WC08器件和1个24WC16器件连接到总线上。 2、I2C总线协议 (1)只有在总线空闲时才允许启动数据传送。 (2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变。时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。 (3)起始信号 时钟线保持高电平期间,数据线电平从高到低的跳变作为I2C 总线的起始信号。 (4) 停止信号 时钟线保持高电平期间,数据线电平从低到高的跳变作为I2C 总线的停止信号。I2C 总线时序:

存储器管理实验报告.docx

操作系统实验报告 存储器管理 学院电信学院 专业计算机科学与技术 班级 14级计科一班 实验题目动态分区分配 实验组别第三组 指导老师曹华

一、实验目的 了解动态分区分配方式中使用的数据结构和分配算法,并进一步加深对动态分区存储管理方式及其实现过程的理解。 二、实验内容 用C语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程alloc()和回收过程free()。其中,空闲分区通过分区链来管理,在进行内存分配时,系统优先使用空闲区低端的空间。 请分别用首次适应算法和最佳适应算法进行内存块的分配和回收,要求每次分配和回收后显示出空闲内存分区链的情况。 三、实验主要仪器设备 软件环境:VC++6编程环境 四、实验原理及设计方案 1.实验原理: 可变分区调度算法有:最先适应分配算法,循环首次适应算法,最佳适应算法,最坏适应算法。 首次适应算法(First-fit):当要分配内存空间时,就查表,在各空闲区中查找满足大小要求的可用块。只要找到第一个足以满足要求的空闲块就停止查找,并把它分配出去; 如果该空闲空间与所需空间大小一样,则从空闲表中取消该项;如果还有剩余,则余下的部分仍留在空闲表中,但应修改区分大小和分区始址。 用户提出内存空间的申请:系统根据申请者的要求,按照一定的分配策略分析内存空间的使用情况,找出能满足请求的空闲区,分给申请者;当程序执行完毕或主动归还内存资源时,系统要收回它所占用的内存空间或它归还的部分内存空间。 最佳适应算法(Best-fit):当要分配内存空间时,就查找空闲表中满足要求的空闲块,并使得剩余块是最小的。然后把它分配出去,若大小恰好合适,则直按分配;若有剩余块,则仍保留该余下的空闲分区,并修改分区大小的起始地址。 内存回收:将释放作业所在内存块的状态改为空闲状态,删除其作业名,设置为空,并判断该空闲块是否与其他空闲块相连,若释放的内存空间与空闲块相连时,则合并为同一个空闲块,同时修改分区大小及起始地址。 每当一个进程被创建时,内存分配程序首先要查找空闲内存分区链,从中寻找一个合适的空闲块进行划分,并修改空闲内存分区链,系统根据回收区的首址,从空闲区链中找到相应的插入点,此时出现如下四种情况: (1)回收区与插入点的前一个空闲区F1相邻接,此时可将回收区直接与F1合并,并修改F1的大小; (2)回收区与插入点的后一个空闲分区F2相邻接,此时可将回收区直接与F2合并,并用回收区的首址作为新空闲区的首址,大小为二者之和; (3)回收区同时与插入点的前后两个空闲分区邻接,此时需将三者合并; (4)回收区不与任何一个空闲区邻接,此时应建一新的表项 2.主要数据结构的说明 定义一个空闲区说明表结构

Multisim仿真实验报告

Multisim仿真实验报告 实验课程:数字电子技术 实验名称:Multisim仿真实验 姓名:戴梦婷 学号: 13291027 班级:电气1302班 2015年6月11日

实验一五人表决电路的设计 一、实验目的 1、掌握组合逻辑电路——五人表决电路的设计方法; 2、复习典型组合逻辑电路的工作原理和使用方法; 3、提高集成门电路的综合应用能力; 4、学会调试Multisim仿真软件,并实现五人表决电路功能。 二、实验器件 74LS151两片、74LS32一片、74LS04一片、单刀双掷开关5个、+5V直流电源1个、地线1根、信号灯1个、导线若干。 三、实验项目 设计一个五人表决电路。在三人及以上同意时输出信号灯亮,否则灯灭,用8选1数据选择器74LS151实现,通过Multisim仿真软件实现。 四、实验原理 1、输入变量:A B C D E,输出:F;

3、逻辑表达式 F= ABCDE+ABCDE+ABCDE+ABCDE+ ABCDE+ ABCDE+ABC DE+ABCDE+ ABCDE+ ABCDE+ABCDE+ABCDE+ ABCDE+ABCDE+ABCDE+ABCDE =ABCDE+ ABCDE+ABCDE+ ABCD+ABCDE+ABCDE+ABCD+ABCDE+ ABCD+ABCD+ABCD 4、对比16选1逻辑表达式,令A3=A,A2=B,A1=C,A0=D,D3=D5=D6=D9=D10=D12=E, D 7=D 11 =D 13 =D 14 =D 15 =1,D =D 1 =D 2 =D 4 =D 8 =0; 5、用74LS151拓展构成16选1数据选择器。 五、实验成果 用单刀双掷开关制成表决器,同意开关打到上线,否则打到下线。当无人同意时,信号指示灯不亮,如下图:

计算机组成原理实验报告二半导体存储器原理实验

半导体存储器原理实验 一、实验目的: 1、掌握静态存储器的工作特性及使用方法。 2、掌握半导体随机存储器如何存储和读取数据。 二、实验要求: 按练习一和练习二的要求完成相应的操作,并填写表2.1各控制端的状态及记录表2.2的写入和读出操作过程。 三、实验方案及步骤: 1、按实验连线图接线,检查正确与否,无误后接通电源。 2、根据存储器的读写原理,按表2.1的要求,将各控制端的状态填入相应的栏中以方便实验的进行。 3、根据实验指导书里面的例子练习,然后按要求做练习一、练习二的实验并记录相关实验结果。 4、比较实验结果和理论值是否一致,如果不一致,就分析原因, 然后重做。 四、实验结果与数据处理: (1)表2.1各控制端的状态

2)练习操作 数据1:(AA)16 =(10101010)2 写入操作过程: 1)写地址操作: ①应设置输入数据的开关状态:将试验仪左下方“ INPUT DEVICE ”中的8位数据开关D7-D0 设置为00000000 即可。 ②应设置有关控制端的开关状态:先在实验仪“SWITCH UNIT ”中打开输入三态门控制端,即SW-B=0 ,打开地址寄存器存数控制信号,即LDAR=1, 关闭片选信号(CE ),写命令信号(WE )任意,即CE=1,WE=0 或1。 ③应与T3 脉冲配合可将总线上的数据作为地址输入AR 地址寄存器中:按一下微动开关START 即可。 ④应关闭AR 地址寄存器的存数控制信号:LDAR=0 。 2)写内容操作: ①应设置输入数据的开关状态:将试验仪左下方“ INPUT DEVICE ”中的8位数据开关D7-D0 设置为10101010 。 ②应设置有关控制端的开关状态:在实验仪“SWITCH UNIT ”中打开输入三态门控制端, 即SW-B=O,关闭地址寄存器存数控制信号,即LDAR=O,打开片选信号(CE )和写命令 信号(WE),即CE=0,WE=1。 ③应与T3 脉冲配合可将总线上的数据写入存储器6116的00000000地址单元中:再按一下 微动开关START 即可。 ④应关闭片选信号和写命令信号:即CE=1,WE=0。 读出操作过程: 1 )写地址操作:参考写入操作的写地址操作 2)读内容操作: ①关闭输入三态门控制端,即SW-B=1。 ②地址寄存器存数控制信号(LDAR)任意,不过最好关闭,即LDAR=0 ,防止误按脉冲信号存入数据。 ③关闭写命令信号(WE),即WE=0,打开片选信号(CE),即CE=0,不需要T3脉冲,即 不要按微动开关START。此时00000000地址的内容通过“ BUS UNIT ”中数据显示灯B7-B0 显示出来。 数据2:(55)16 =(01010101)2 写入操作过程: 1)写地址操作: ①设置输入数据的开关状态:将试验仪左下方“ INPUT DEVICE ”中的8位数据开关D7-D0 设置为

操作系统课程设计实验报告

河北大学工商学院 课程设计 题目:操作系统课程设计 学部信息学部 学科门类电气信息 专业计算机 学号2011482370 姓名耿雪涛 指导教师朱亮 2013 年6月19日

主要内容 一、设计目的 通过模拟操作系统的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可练习合作完成系统的团队精神和提高程序设计能力。 二、设计思想 实现一个模拟操作系统,使用VB、VC、CB等windows环境下的程序设计语言,以借助这些语言环境来模拟硬件的一些并行工作。模拟采用多道程序设计方法的单用户操作系统,该操作系统包括进程管理、存储管理、设备管理、文件管理和用户接口四部分。 设计模板如下图: 注:本人主要涉及设备管理模块

三、设计要求 设备管理主要包括设备的分配和回收。 ⑴模拟系统中有A、B、C三种独占型设备,A设备1个,B设备2个,C设备2个。 ⑵采用死锁的预防方法来处理申请独占设备可能造成的死锁。 ⑶屏幕显示 注:屏幕显示要求包括:每个设备是否被使用,哪个进程在使用该设备,哪些进程在等待使用该设备。 设备管理模块详细设计 一、设备管理的任务 I/O设备是按照用户的请求,控制设备的各种操作,用于完成I/O 设备与内存之间的数据交换(包括设备的分配与回收,设备的驱动管理等),最终完成用户的I/O请求,并且I/O设备为用户提供了使用外部设备的接口,可以满足用户的需求。 二、设备管理函数的详细描述 1、检查设备是否可用(主要代码) public bool JudgeDevice(DeviceType type) { bool str = false; switch (type) { case DeviceType.a: {

automod仿真实验设计

1. 实验设计 对于库存系统,管理者往往比较关心供应链的成本和产品满足率的问题。因此将年总成本和产品满足率作为该系统的响应。其中: 产品满足率= 出库总量/订单总量 供应链总成本= 总库存成本+总订货成本 = 年平均库存*单位库存持有成本+单次订货成本*年订货次数 上式中,产品满足率是指以库存来满足的那部分市场需求所占的比率。供应链总成本的计算中,认为供应链不存在缺货损失,因而不考虑缺货成本。 根据上述目标绩效,对模型的输入进行分析可知,参数K,H可能会对绩效指标产生影响。 Q 从上式可以看出,K,H会对最优订货量Q产生影响,则选取K/H来分析。 类型 因子K/H 响应供应链总成本,产品满足率 (正交实验设计) 2. 输出数据分析 该库存系统仿真为非终止型仿真,则选取批均值法进行分析。仿真运行2500天,删除前730天的数据,将剩下的数据分成4批,每批长度为365天。 统计数据 统计项批次粮食销售点企业储备库销区储备库产区储备库 库存均值1 137.5 321.1350.8393.4 2 131.8 312.0 345.7 389.1 3 136.7 320.6 355.8 398.0 4 133.9 308.6 345.4 394.1 订货次数1 58 51 43 35 2 61 5 3 46 39 3 60 52 4 4 36 4 62 5 5 48 40 区间估计

估计项 95%置信区间 均值下限上限 库存均值 销售点135.0 130.8 139.1 企业储备库315.6 305.6 325.5 销区储备库349.4 341.6 357.3 产区储备库393.7 387.8 399.5 订货次数 销售点60 58 63 企业储备库53 50 55 销区储备库45 42 49 产区储备库38 34 41 供应链总成本= 总库存成本+总订货成本=159265 估计项 95%置信区间 均值下限上限 出库量16295 15856 16734 需求16420 15914 16926 产品满足率=99.2%

实习五虚拟存储器实验报告

实习五虚拟存储器 一、实习内容 模拟分页式虚拟存储管理中硬件的地址转换和缺页中断,以及选择页面调度算法处理缺页中断。 二、实习目的 在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘)作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间总和可以超出主存的绝对地址空间。用这种办法扩充的主存储器称为虚拟存储器。通过本实习帮助同学理解在分页式存储管理中怎样实现虚拟存储器。 三、实习题目 本实习有三个题,其中第一题必做,第二、第三题中可任选一个。 第一题:模拟分页式存储管理中硬件的地址转换和产生缺页中断。 [提示]: (1) 分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作业的开始几页先装入主存且启动执行。为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚未装入主存,页表的格式为: 其中,标志——用来表示对应页是否已经装入主存,标志位=1,则表示该页已经在主存,标志位=0,则表示该页尚未装入主存。 主存块号——用来表示已经装入主存的页所占的块号。 在磁盘上的位置——用来指出作业副本的每一页被存放在磁盘上的位置。 (2) 作业执行时,指令中的逻辑地址指出了参加运算的操作数存放的页号和单元号,硬件的地址转换机构按页号查页表,若该页对应标志为“1”,则表示该页已在主存,这时根据关系式: 绝对地址=块号 块长+单元号 计算出欲访问的主存单元地址。如果块长为2的幂次,则可把块号作为高地址部分,把单元号作为低地址部分,两者拼接而成绝对地址。按计算出的绝对地址可以取到操作数,完成一条指令的执行。若访问的页对应标志为“0”,则表示该页不在主存,这时硬件发“缺页中断”信号,由操作系统按该页在磁盘上的位置,把该页信息从磁盘读出装入主存后再重新执行这条指令。 (3) 设计一个“地址转换”程序来模拟硬件的地址转换工作。当访问的页在主存时,则形成绝对地址,但不去模拟指令的执行,而用输出转换后的地址来代替一条指令的执行。当访问的页不在主存时,则输出“*该页页号”,表示产生了一次缺页中断。该模拟程序的算法如图5-1。 (4) 假定主存的每块长度为128个字节;现有一个共七页的作业,其中第0页至第3

哈工大 计算机仿真技术实验报告 仿真实验四基于Simulink控制系统仿真与综合设计

基于Simulink 控制系统仿真与综合设计 一、实验目的 (1) 熟悉Simulink 的工作环境及其功能模块库; (2) 掌握Simulink 的系统建模和仿真方法; (3) 掌握Simulink 仿真数据的输出方法与数据处理; (4) 掌握利用Simulink 进行控制系统的时域仿真分析与综合设计方法; (5) 掌握利用 Simulink 对控制系统的时域与频域性能指标分析方法。 二、实验内容 图2.1为单位负反馈系统。分别求出当输入信号为阶跃函数信号)(1)(t t r =、斜坡函数信号t t r =)(和抛物线函数信号2/)(2t t r =时,系统输出响应)(t y 及误差信号)(t e 曲线。若要求系统动态性能指标满足如下条件:a) 动态过程响应时间s t s 5.2≤;b) 动态过程响应上升时间s t p 1≤;c) 系统最大超调量%10≤p σ。按图1.2所示系统设计PID 调节器参数。 图2.1 单位反馈控制系统框图

图2.2 综合设计控制系统框图 三、实验要求 (1) 采用Simulink系统建模与系统仿真方法,完成仿真实验; (2) 利用Simulink中的Scope模块观察仿真结果,并从中分析系统时域性能指标(系统阶跃响应过渡过程时间,系统响应上升时间,系统响应振荡次数,系统最大超调量和系统稳态误差); (3) 利用Simulink中Signal Constraint模块对图2.2系统的PID参数进行综合设计,以确定其参数; (4) 对系统综合设计前后的主要性能指标进行对比分析,并给出PID参数的改变对闭环系统性能指标的影响。 四、实验步骤与方法 4.1时域仿真分析实验步骤与方法 在Simulink仿真环境中,打开simulink库,找出相应的单元部件模型,并拖至打开的模型窗口中,构造自己需要的仿真模型。根据图2.1 所示的单位反馈控制系统框图建立其仿真模型,并对各个单元部件模型的参数进行设定。所做出的仿真电路图如图4.1.1所示。

大学物理仿真实验报告概要

大学物理仿真实验报告 姓名: 学号: 班级:

实验-----利用单摆测量重力加速度 实验目的 利用单摆来测量重力加速度 实验原理 单摆的结构参考图1单摆仪,一级近似的周期公式为 由此通过测量周期摆长求重力加速度 实验仪器 单摆仪、摆幅测量标尺、钢球、游标卡尺 实验内容 一.用误差均分原理设计一单摆装置,测量重力加速度g. 设计要求: (1)根据误差均分原理,自行设计试验方案,合理选择测量仪器和方法. (2)写出详细的推导过程,试验步骤.

(3)用自制的单摆装置测量重力加速度g,测量精度要求△g/g < 1%. 可提供的器材及参数: 游标卡尺、米尺、千分尺、电子秒表、支架、细线(尼龙线)、钢球、摆幅测量标尺(提供硬白纸板自制)、天平(公用). 假设摆长l≈70.00cm;摆球直径D≈2.00cm;摆动周期T≈1.700s; 米尺精度△米≈0.05cm;卡尺精度△卡≈0.002cm;千分尺精度△千≈0.001cm;秒表精度△秒≈0.01s;根据统计分析,实验人员开或停秒表反应时间为0.1s左右,所以实验人员开,停秒表总的反应时间近似为△人≈0.2s. 二.对重力加速度g的测量结果进行误差分析和数据处理,检验实验结果是否达到设计 要求. 三.自拟实验步骤研究单摆周期与摆长,摆角,悬线的质量和弹性系数,空气阻力等因素 的关系,试分析各项误差的大小. 四.自拟试验步骤用单摆实验验证机械能守恒定律. 实验数据 摆线长+小球直径L=91.50cm

D(平均)=(1.750+1.752+1.744+1.740+1.749+1.748)÷6=1.7 47m R=D/2=0.850cm l=L-R=91.05cm t=95.91s,周期数n=50,周期T=1.92s 所以g=9.751 2ΔT/t=0.0022,ΔL/l=0.0005,所以Δg/g=0.27%,Δg=0.026 所以: g=(9.751±0.026) 实验结论与误差分析: 结论:g=(9.751±0.026),Δg/g=0.27%<1%,所以达到设计要求。 误差分析: 1.若θ>5°(即角度过大)因为T 与θ相关,当θ越大时T也越大,所以θ偏大,测量 值比值偏小。

实验二数据存储实验

实验二数据存储实验 一、实验目的 1、掌握TMS320C54的程序空间的分配; 2、掌握TMS320C54的数据空间的分配; 3、熟悉操作TMS320C54数据空间的指令。 二、实验设备 计算机,CCS 2.0版软件,DSP仿真器,实验箱。 三、实验原理 本实验指导书是以TMS320C5416为例,介绍相关的内部和外部存储器资源。对于其他类型的CPU请参考查阅相关的数据手册。 下面给出TMS320C5416的存储器分配表: 对于数据存储空间而言,映射表相对固定。值得注意的是内部寄存器都映射到数据存储空间内。因此在编程应用是这些特定的空间不能作其他用途。对于程序存储空间而言,其映射表和CPU的工作模式有关。当MP/MC引脚为高电平时,CPU工作在微处理器模式;当MP/MC引脚低电平时,CPU工作在为计算机模式。具体的存储器映射关系如上如所示。 存储器试验主要帮助用户了解存储器的操作和DSP的内部双总线结构。并熟悉相关的指令代码和操作等。 四、实验步骤与内容 1、连接好DSP开发系统,运行CCS软件;

2、在CCS的Memory窗口中查找C5416各个区段的数据存储器地址,在可以改变 的数据地址随意改变其中内容; 3、在CCS 中装载实验示范程序,单步执行程序,观察程序中写入和读出的数据存储地址的变化; 4、联系其他寻址方式的使用。 5、样例程序实验操作说明 启动CCS 2.0,并加载“exp02.out”; 图2.1 加载out文件 用“View”下拉菜单中的“Memory”查看内存单元;

图2.2 memory视图菜单 输入要查看的内存单元地址,本实验要查看0x1000H~0x100FH单元的数值变化,输 入地址0x1000H; 图2.3 memory 参数设置窗 查看0x1000H~0x100FH 单元的初始值,单击“Run”运行程序,也可以“单步”运 行程序;

软件设计与体系结构实验报告

福建农林大学计算机与信息学院 实验报告 课程名称:软件设计与体系结构 姓名:陈宇翔 系:软件工程系 专业:软件工程 年级:2007 学号:070481024 指导教师:王李进 职称:讲师 2009年12月16日

实验项目列表

福建农林大学计算机与信息学院实验报告 学院:计算机与信息学院专业:软件工程系年级:2007 姓名:陈宇翔 学号:070481024 课程名称:软件设计与体系结构实验时间:2009-10-28 实验室田实验室312、313计算机号024 指导教师签字:成绩: 实验1:ACME软件体系结构描述语言应用 一、实验目的 1)掌握软件体系结构描述的概念 2)掌握应用ACMESTUDIO工具描述软件体系结构的基本操作 二、实验学时 2学时。 三、实验方法 由老师提供软件体系结构图形样板供学生参考,学生在样板的指导下修改图形,在老师的指导下进行软件体系结构描述。 四、实验环境 计算机及ACMESTUDIO。 五、实验内容 利用ACME语言定义软件体系结构风格,修改ACME代码,并进行风格测试。 六、实验操作步骤 一、导入Zip文档 建立的一个Acme Project,并且命名为AcmeLab2。如下图:

接着导入ZIP文档,导入完ZIP文档后显示的如下图: 二、修改风格 在AcmeLab2项目中,打开families下的TieredFam.acme.如下图: 修改组件外观 1. 在组件类型中,双击DataNodeT; 在其右边的编辑器中,将产生预览;选择Modify 按钮,将打开外观编辑器对话框。 2. 首先改变图形:找到Basic shape section,在Stock image dropdown menu中选 择Repository类型. 3. 在Color/Line Properties section修改填充颜色为深蓝色。 4. 在颜色对话框中选择深蓝色,并单击 [OK]. 5. 修改图形的边框颜色为绿色 7. 单击Label tab,在Font Settings section, 设置字体颜色为白色,单击[OK] 产生的图形如下图:

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