我的大学之计算机组成原理系列NO.4

课题:总线传递实验
一、实验目的
1.完成数据在总线上的传递并理解其运行过程
2.掌握采用总线结构进行信息传递的方法

二、实验设备
1.装有 ISE Design Suite 14.7 的计算机一台
2.EDK-3 SA ISE 实验平台

三、实验任务
1.实现总线传递控制模块设计
2.验证数据在总线上的传递过程

四、实验原理
在这里插入图片描述
各部件之间信息的传递功能:
(1) I—>O,P
(2) P—>M
(3) I—>M
(4) M—>P

显示管:
在这里插入图片描述
1.操作现象
按下sw3,随着数值的改变,高低电平的变化,数据在总线上呈现不同的传递,因而有不同的输出。
2.个人理解:
数码管显示器从左往右为PMOI:
I为74LS244,是TTL八同相三态缓冲器/ 线驱动器,其CMOS器件对应为74HC244, 常作为单片机的输入输出数据缓冲器,在选通时输入数据送到总线上,在非选通时对总线呈高阻态,没有存储功能。
P、M、O为74LS273,是一种带清除功能的8D触发器, 1D ~8D为数据输入端,1Q~8Q为数据输出端,正脉冲触发,低电平清除,常用作8 位地址锁存器具有存储功能。
在这里插入图片描述
在这里插入图片描述
Sw3数值为0时:未输入;
Sw3数值为1时:I中传入0111;
Sw3数值为2时:因为M未通过,I中数据传入O与P;
Sw3数值为3时:P数据传入M,O低电平清除;
Sw3数值为4时:I传入M;
Sw3数值为0时:M数据传入P.

五、部分代码
定义时序产生模块:

module TimingGen( 
    input Clk,     //System Clock 40Mhz 
 input Button,      //  setep clock  
   input Rstn,       //  reset, low active
input Clk_sel,   // sequence timing or step timing select
output [6:0] Bit1_seg,  //  Display 
    output t1, 
    output t2, 
    output t3, 
    output t4, 
 output Clk_m1 
    ); 
 // wire Clk_m1; 
 wire Clk_i,Clk_ii; 
 wire PB_R; 
// wire t1,t2,t3,t4; 
  GenClk_i Clk_i_Module ( 
    .Clk_s(Clk),  
    .Clk_i(Clk_i),  
    .Rstn(Rstn) 
    ); 
GenClk_ii Clk_ii_Module ( 
    .PB_R(PB_R),  
    .Clk(Clk),  
    .Clk_ii(Clk_ii) 
    ); 
 
ClkSel ClkSel_Module ( 
  .Clk_s(Clk), 
    .Clk_i(Clk_i),  
    .Clk_ii(Clk_ii),  
    .Clk_m1(Clk_m1),  
    .Clk_sel(Clk_sel) 
    ); 
Bit1_Display Bit1_Display_Module ( 
    .Clk_s(Clk),  
.Clk_m1(Clk_m1),  
 .Bit1_seg(Bit1_seg),  
    .Rstn(Rstn), 
  .w1(t1), 
  .w2(t2), 
  .w3(t3), 
  .w4(t4) 
    ); 
Debouncer Debouner_Module ( 
    .Clk_s(Clk),  
    .PB(Button),  
    .PB_state(),  
    .PB_up(PB_R),  
    .PB_down() 
);
           endmodule

74LS273 :

module ls273(clk_s,Clock,Clear,D,Q); 
 input clk_s,Clock,Clear; 
  input [3:0] D; 
 output [3:0] Q; 
  reg [3:0] Q; 
always@(posedge clk_s ) 
  begin 
   if (Clock==1) begin 
    if (Clear==0)  
     Q<=4'b0000; 
    else 
     Q<=D; 
   end 
 end 
endmodule 

74LS244 :

module ls244(G,A,Y); 
  input G; 
  input [3:0] A; 
  output [3:0] Y; 
  assign Y=(G==0)?A:'bz; 
endmodule 

六、问题思考
1.限制数据在总线中传递的因素有哪些?
材料因素;时钟频率;字长;串并行方式。

2.如果要提高数据传递的并行性,可以采用哪些方案?
提高频率,缩短周期,增加字长,并行传输。
切换SW17到off端,重新实验观察实验现象,分析变化原因。
Sw3的数值会自动增加,手动脉冲变为自动脉冲;从代码看,实验的时钟周期开始自动变换。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值