欢迎来到天天文库
浏览记录
ID:52184276
大小:114.50 KB
页数:5页
时间:2020-03-24
《总线数据传输实验.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验报告实验日期:学号:姓名:实验名称:总线数据传输实验总分:一、实验设计方案Ø实验框图Ø实验原理1、SW_BUS低电平有效,此时将K[7..0]的数据送到总线,通过L[7..0]双向数据端口输出显示总线的数据,使用的芯片是74244八位单向三态缓冲器;2、R3_BUS、R2_BUS、R1_BUS低电平有效,其功能是将数据要传入的寄存器打开,若相应的lddr为1(高电平有效),将数据传入相应的寄存器;3、总线数据传输时,控制信号中只能有一个有效,寄存器的端口送至数据总线,所以每个BUS接口对应每个R寄存器的显示;4、通过读写的双重作用,实现R1和R2的数据交换。Ø表达式Reg3←Reg1;
2、Reg1←Reg2;Reg2←Reg3Ø方法一:vhdl代码libraryieee;useieee.std_logic_1164.all;entityexp_busisport(clk:instd_logic;sw_bus,r1_bus,r2_bus,r3_bus:instd_logic;k:instd_logic_vector(7downto0);lddr:instd_logic_vector(3downto1);l:inoutstd_logic_vector(7downto0));endexp_bus;architecturertlofexp_busissignalr1,r2,r3,b
3、us_Reg:std_logic_vector(7downto0);beginldreg:process(clk,lddr,bus_reg)beginifclk'eventandclk='1'theniflddr(1)='1'thenr1<=bus_reg;elsiflddr(2)='1'thenr2<=bus_reg;elsiflddr(3)='1'thenr3<=bus_reg;endif;endif;endprocess;bus_reg<=kwhen(sw_bus='0'andr1_bus='1'andr2_bus='1'andr3_bus='1')elser1when(sw_bus
4、='1'andr1_bus='0'andr2_bus='1'andr3_bus='1')elser2when(sw_bus='1'andr1_bus='1'andr2_bus='0'andr3_bus='1')elser3when(sw_bus='1'andr1_bus='1'andr2_bus='1'andr3_bus='0')else(others=>'0');l<=bus_regwhen(sw_bus='0'orr1_bus='0'orr2_bus='0'orr3_bus='0')else(others=>'Z');endrtl;Ø方法二:bdf实验原理图一、功能验证Ø波形图(图):
5、12345678910Ø操作步骤(对应波形图列表说明每步状态、有效控制信号)①设置初值,swr3r2r1_bus=1111,lddr=000,数据初始置k为00,总线输出为高阻态;②设置数据k=E1,swr3r2r1_bus=0111,lddr=001,将数据E1传至总线,通过L[7..0]显示总线数据,数据E1存入r1并显示出来;③swr3r2r1_bus=1110,lddr3=100,将R1的数据E1写入总线并存入R3,总线显示从R1传至总线的数据E1;④swr3r2r1_bus=1011,lddr=000,将R3的数据E1写入总线中;⑤设置数据k[7..0]=D2,swr3r2r1_
6、bus=0111,lddr2=010,将数据D2传至总线并存入R2,通过L[7..0]显示总线数据D2;⑥swr3r2r1_bus=1101,lddr=100,将R2的数据D2写入总线并存入R3,总线显示从R2传至总线的数据D2;⑦swr3r2r1_bus=1011,lddr=000,将R3的数据D2写入总线中;⑧swr3r2r1_bus=1110,lddr=100,将R1的数据E1传至总线并存入R3中,实现R1数据传输到R3中,并显示数据E1;⑨swr3r2r1_bus=1101,lddr=001,将R2的数据D2传至总线并存入R1中,实现R2数据传输到R1中,并显示数据D2;⑩swr3
7、r2r1_bus=1011,lddr=010,将R3的数据E1传至总线并存入R2中,实现R3数据传输到R2中,并显示数据E1,交换完毕。Ø数据记录R1R2R3初态E1HD2HR1→R3D2HE1HR2→R1D2HE1HR3→R2D2HE1HØ仿真结论波形仿真逻辑功能验证正确,通过总线数据传输的原理,用一个八位单向三态缓冲器74244和三个带三态输出的八位寄存器74374实现了数据的显示和交换。一、实验日志Ø实验问题Q1.
此文档下载收益归作者所有