FPGA发挥部分程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FPGA发挥部分程序.doc

`timescale 1ns / 1ps /*//////第一、二种方法/////// module half_adder( output sum, output carry, input a, input b ); assign sum=a^b;//xor A1(sum,a,b); assign carry=ab;//and B1(carry,a,b); endmodule /////////////////////*/ /*//////第三种方法 /////// module half_adder( output reg sum, output reg carry, input a, input b ); always @(a,b)begin sum=a^b; carry=ab; end endmodule */ /*//////第四种方法/////// module half_adder( output reg sum, output reg carry, input a, input b ); always@(a,b) begin {carry,sum}=a+b; end endmodule */ //第五种方法; module half_adder( output reg sum, output reg carry, input a, input b ); always@(a,b) begin case({a,b}) 2b00:begin carry=0;sum=0;end 2b01:begin carry=0;sum=1;end 2b10:begin carry=0;sum=1;end 2b11:begin carry=1;sum=0;end endcase end initial begin // Initialize Inputs a = 0;b = 0;#100; a = 0;b = 1;#100; a = 1;b = 0;#100; a = 1;b = 1;#100; end module full_adder( output reg [3:0]sum, output reg carry, input [3:0]a, input [3:0]b, input ci ); always@(a,b,ci) begin {carry,sum}=a+b+ci; end endmodule initial begin // Initialize Inputs a = 0; b = 0; ci = 0; #100; for(x=0;x=2000;x=x+1) begin {a,b,ci}={a,b,ci}+1;#100;end end 2-4 4-2编译码器及拼接 `timescale 1ns / 1ps module coder2_4(out,in ); output reg [3:0]out; input [1:0]in; always@(in) begin if(in==2b00)out=4b0001; else if(in==2b01)out=4b0010; else if(in==2b10)out=4b0100; else if(in==2b11)out=4b1000; else out=4bx; end endmodule module decoder4_2(out,in ); output reg [1:0]out; input [3:0]in; always@(in) begin if(in==4b0001)out=2b00; else if(in==4b0010)out=2b01; else if(in==4b0100)out=2b10; else if(in==4b1000)out=2b11; else out=2bx; end endmodule module aa(out,in); input [1:0]in; output [1:0]out; wire [3:0]w; coder2_4 aaa (.out(w), .in(in)); decoder4_2 bbb (.out(out), .in(w)); endmodule module decoder38(Y,A,B,C,G1,G2a,G2b

文档评论(0)

cai + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档