前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【日更计划085】数字IC基础题【HDL部分】

【日更计划085】数字IC基础题【HDL部分】

作者头像
空白的贝塔
发布2021-04-07 10:32:36
3290
发布2021-04-07 10:32:36
举报
文章被收录于专栏:摸鱼范式

上期答案

[174] 写一段verilog代码,用半加器组成全加器
代码语言:javascript
复制
module half_adder(input_0, input_1, sum, carry);
    input input_0, input_1;
    output sum, carry;
    assign sum = (input_0)^(input_1);
    assign carry = (input_0)&(input_1);
endmodule
 
module full_adder(input_0, input_1, input_2, sum, carry);
    input input_0, input_1, input_2;
    output sum, carry;
    reg sum_intermediate, carry_intermediate_0, carry_intermediate_1;
    half_adder ha1(input0,input1,sum_intermediate,carry_intermediate_0);
    half_adder ha2(sum_intermediate,input2,sum,carry_intermediate_1);
	assign carry = (carry_intermediate_0)|(carry_intermediate_1);
endmodule
[175] verilog中的task和function有什么区别?
  1. function不能使用任何延时语句,task可以
  2. 由于1中的原因,function可以调用function,但是不能调用task。task可以调用task和funtion
  3. funtion可以综合,task不可以
  4. function需要有通过返回参数作为输出,但是有多个输入输出参数。task不能返回任何值,但是具有多个输入或者输出参数。

你答对了吗

本期题目

[176] systemverilog中的reg,wire和logic有什么区别?
[177] bit和logic有什么区别?

欢迎在留言区给出你的答案,正确答案将在下一期公布,或者到下面的文章获取答案

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 摸鱼范式 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 上期答案
  • 本期题目
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档