Verilog刷题笔记14

这篇具有很好参考价值的文章主要介绍了Verilog刷题笔记14。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目:
One drawback of the ripple carry adder (See previous exercise) is that the delay for an adder to compute the carry out (from the carry-in, in the worst case) is fairly slow, and the second-stage adder cannot begin computing its carry-out until the first-stage adder has finished. This makes the adder slow. One improvement is a carry-select adder, shown below. The first-stage adder is the same as before, but we duplicate the second-stage adder, one assuming carry-in=0 and one assuming carry-in=1, then using a fast 2-to-1 multiplexer to select which result happened to be correct.

In this exercise, you are provided with the same module as the previous exercise, which adds two 16-bit numbers with carry-in and produces a carry-out and 16-bit sum. You must instantiate three of these to build the carry-select adder, using your own 16-bit 2-to-1 multiplexer. add16

Connect the modules together as shown in the diagram below. The provided module has the following declaration: add16

module add16 ( input[15:0] a, input[15:0] b, input cin, output[15:0] sum, output cout );

Verilog刷题笔记14,笔记
解法:

module top_module(
    input [31:0] a,
    input [31:0] b,
    output [31:0] sum
);
    wire [15:0]sum1,sum2,sum3;
	wire sel;
	add16 add161 (
		.a(a[15:0]), 
		.b(b[15:0]), 
		.cin(0), 
		.sum(sum1), 
		.cout(sel) 
	);  
	add16 add162 (
		.a(a[31:16]), 
		.b(b[31:16]), 
		.cin(0), 
		.sum(sum2), 
		.cout() 
	); 
	add16 add163 (
		.a(a[31:16]), 
		.b(b[31:16]), 
		.cin(1), 
		.sum(sum3), 
		.cout() 
	); 
	always@(*) begin
		case(sel)
			0 : sum = {sum2,sum1};
			1 : sum = {sum3,sum1};
		endcase
	end
  
endmodule

结果:
Verilog刷题笔记14,笔记文章来源地址https://www.toymoban.com/news/detail-802311.html

到了这里,关于Verilog刷题笔记14的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 代码随想录刷题 Day14

    二叉法的前中后序的遍历, 前中后所说的是根节点输出的顺序;  有两种遍历方式, 1. 递归法 (自己调用自己,本质是用栈) 代码比较简单,但是需要创建一个额外的函数来进行自己调用自己的过程;用递归法的话三种遍历方式只需要改变代码的位置就可以。 Leetcode 对应

    2024年02月08日
    浏览(29)
  • 【HDLBits 刷题 1】Verilog Language(1)Basics 部分

    目录   写在前面 Basics Simple wire  Four wires  Inverter  AND gate  NOR gate  Declaring wires  7485 chip HDLBits 作为 Verilog 的刷题网站,非常适合初学者拿来练习,不仅可以学到基础的语法,还可以让自己写出的代码更直观,直接映射到电路中,因此在这段时间每周会抽出一点时间来把这个

    2024年02月10日
    浏览(30)
  • 【HDLBits 刷题 2】Verilog Language(2)Vectors 部分

    目录 写在前面 Vectors Vector0 Vector1 Vector2 Vectorgates Gates4 Vector3 Vectorr  Vector4 Vector5 来到了 Verilog 语法的矢量部分,这部分仍然比较简单,所以只给出题目、代码和仿真结果,其他不多赘述。 构建一个具有一个3位输入的电路,然后输出相同的矢量,并将其拆分为三个单独的1位输

    2024年02月07日
    浏览(27)
  • 【Verilog刷题篇】硬件工程师进阶1|序列检测

    硬件工程师近年来也开始慢慢吃香,校招进大厂年薪总包不下30-40w的人数一大把!而且大厂人数并没有饱和! - 本期是【Verilog刷题篇】硬件工程师进阶1|序列检测,有不懂的地方可以评论进行讨论! 推荐给大家一款刷题、面试的神器 ,我也是用这一款神器进行学习 Verilog硬件

    2024年02月03日
    浏览(32)
  • 【Verilog刷题篇】硬件工程师从0到入门3|组合逻辑复习+时序逻辑入门

    硬件工程师近年来也开始慢慢吃香,校招进大厂年薪总包不下30-40w的人数一大把!而且大厂人数并没有饱和! - 本期是【Verilog刷题篇】硬件工程师从0到入门3|组合逻辑复习+时序逻辑入门,有不懂的地方可以评论进行讨论! 推荐给大家一款刷题、面试的神器 ,我也是用这一款

    2024年02月03日
    浏览(27)
  • 算法刷题Day14 二叉树的前序、中序、后序遍历(递归、迭代、统一迭代方法)

    二叉树的定义 递归 迭代 普通的遍历(包括前序,中序和后续)迭代方法都需要借助到栈 统一迭代 统一迭代使用标记法,在栈中要处理的结点压入空指针 递归 迭代 中序遍历的迭代方法稍微特殊一点 中序遍历是左中右,先访问的是二叉树顶部的节点,然后一层一层向下访问

    2024年02月15日
    浏览(37)
  • HDLBits刷题Day14,3.2.2.5 Counter 1-12 - 3.2.2.6 Counter 1000

    3.2.2.5 Counter 1-12 本题参考HDLBits:在线学习 Verilog (二十一 · Problem 100 - 104) - 知乎 问题描述 设计一个具有以下输入和输出的 1-12 计数器: 复位同步高电平有效复位,强制计数器为 1 启用设置为高以使计数器运行 clk上升沿触发时钟输入 Q[3:0]计数器的输出 c_enable, c_load, c_d[3

    2024年03月17日
    浏览(29)
  • 刷题笔记(跑路人笔记)

    刷题笔记第一道题跟后面没啥关系 但是后两道关系比较明显 最后一道题看不懂的朋友请多看看倒数第二道题 连接 一个规律=-=而非思想,叫 三趟逆置法 想要旋转数组元素的前K个只需要 先逆置N-K项 再逆置K项 再整体逆置 首先说一下旋转和逆置的区别 以数组: 1,2,3,4,5,6,7,8为例

    2024年02月02日
    浏览(29)
  • Verilog学习笔记(5):Verilog高级程序设计

    串行加法器: 一个四位串行加法器由4个全加器构成。全加器是串行加法器的子模块,而全加器是由基本的逻辑门构成,这些基本的逻辑门就是所说的叶子模块。这个设计中运用叶子模块(基本逻辑门)搭建成子模块(全加器),再用子模块搭建成所需要的电路(串行加法器

    2024年02月11日
    浏览(30)
  • 「Verilog学习笔记」根据RTL图编写Verilog程序

    专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网 观察题目给出的RTL图,主要的器件是两个D触发器,一个与门。D触发器含有异步复位信号,且为低电平有效。data_in输入到D触发器,D触发器的输出Q是前一时刻的data_in,即data_in打一

    2024年03月24日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包