实验三 构造ALU.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三 构造ALU

实验三 构造ALU 实验目的: 学会用已存在的芯片构造自己想要的芯片 实现HalfAdder芯片 实现FullAdder芯片 实现Add16芯片 实现Inc16芯片 实现ALU芯片 实验器材: 硬件:安装了JDK的PC机一台 软件:1. 软件包tecs-software-suite-2.5.zip中的硬件仿真器 2. 实验三测试包 实验步骤: 1. 实现HalfAdder芯片 HalfAdder芯片API 芯片名: HalfAdder 输 入: a,b 输 出: sum,carry 功 能: sum=LSB of a+b carry=MSB of a+b 参考实现原理图: 参考实现代码: CHIP HalfAdder { IN a, b; OUT sum, // LSB of a + b carry; // MSB of a + b PARTS: And(a=a,b=b,out=carry); Xor(a=a,b=b,out=sum); } 2. 实现FullAdder芯片 FullAdder芯片API 芯片名: FullAdder 输 入: a,b,c 输 出: sum,carry 功 能: sum=LSB of a+b+c carry=MSB of a+b+c 参考实现原理图: 参考实现代码: CHIP FullAdder { IN a, b, c; OUT sum, // LSB of a + b + c carry; // MSB of a + b + c PARTS: And(a=a,b=b,out=tp1); And(a=c,b=a,out=tp2); And(a=b,b=c,out=tp4); Or(a=tp1,b=tp2,out=tp3); Or(a=tp3,b=tp4,out=carry); Xor(a=a,b=b,out=tp5); Xor(a=tp5,b=c,out=sum); } 3. 实现Add16芯片 Add16芯片API 芯片名: Add16 输 入: a[16],b[16] 输 出: out[16] 功 能: out=a+b,不处理溢出情况。 参考实现原理图: 参考实现代码: CHIP Add16 { IN a[16], b[16]; OUT out[16]; PARTS: FullAdder(a=a[0],b=b[0],c=false,sum=out[0],carry=tp1); FullAdder(a=a[1],b=b[1],c=tp1,sum=out[1],carry=tp2); FullAdder(a=a[2],b=b[2],c=tp2,sum=out[2],carry=tp3); FullAdder(a=a[3],b=b[3],c=tp3,sum=out[3],carry=tp4); FullAdder(a=a[4],b=b[4],c=tp4,sum=out[4],carry=tp5); FullAdder(a=a[5],b=b[5],c=tp5,sum=out[5],carry=tp6); FullAdder(a=a[6],b=b[6],c=tp6,sum=out[6],carry=tp7); FullAdder(a=a[7],b=b[7],c=tp7,sum=out[7],carry=tp8); FullAdder(a=a[8],b=b[8],c=tp8,sum=out[8],carry=tp9); FullAdder(a=a[9],b=b[9],c=tp9,sum=out[9],carry=tp10); FullAdder(a=a[10],b=b[10],c=tp10,sum=out[10],carry=tp11); FullAdder(a=a[11],b=b[11],c=tp11,sum=out[11],carry=tp12); FullAdder(a=a[12],b=b[12],c=tp12,sum=out[12],carry=tp13); FullAdder(a=a[13],b=b[13],c=tp13,sum=out[13],carry=tp14); FullAdder(a=a

文档评论(0)

80019pp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档