![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HDLBits
Shelly414
被窝是青春的坟墓。——七堇年
展开
-
HDLBits练习汇总-03-电路--顺序逻辑 Edgedetect
HDLBits练习汇总-03-电路–顺序逻辑Edgedetect对于8位向量中的每个位,检测输入信号何时从一个时钟周期的0变为下一时钟周期的1(类似于上升沿检测)。在发生从0到1的跳变后,应将输出位设置为周期。这里有些例子。为了清楚起见,分别显示了in [1]和pedge [1]。边沿检测创建一个时序延迟。形成卡诺图。代码:...原创 2021-04-06 11:07:57 · 272 阅读 · 0 评论 -
## HDLBits练习汇总-03-电路--组合逻辑——Multiplexers Mux256to1v
HDLBits练习汇总-03-电路–组合逻辑multiplexersMux256to1v创建一个4位宽的256:1多路复用器。256个4位输入全部打包为单个1024位输入向量。sel = 0应该选择[3:0]中的位,sel = 1选择[7:4]中的位,sel = 2选择[11:8]中的位,依此类推。Tips:一、有这么多选项,case语句不是那么有用。二、矢量索引可以是可变的,只要合成器可以确定所选位的宽度是恒定的即可。这并不总是很擅长。错误消息“ …不是常数”表示无法证明选择宽度是常数。特别原创 2021-04-01 09:04:33 · 298 阅读 · 0 评论 -
HDLBits练习汇总-03-电路--组合逻辑---Gatesv
HDLBits练习汇总-03-电路–组合逻辑basicGatesv如下为题目:给一个四比特的输入in,主要是对比不同位之间的关系在[3:0]中获得了一个四位输入向量。想知道每个位和它的邻居之间的一些关系:out_both:本输出向量的每一位应该指示是否两个相应的输入位和它的邻居到左(较高的指数)是否都是“1”。例如,out_both [2]应该指示in [2]和in [3]是否都为1。由于in [3]在左边没有邻居,答案很明显,所以我们不需要知道out_both [3 ]。//检查是否都为1原创 2021-03-31 15:22:55 · 756 阅读 · 0 评论 -
## **HDLBits-02-Verilog语言--模块:层次结构—Procedures—Always case2
HDLBits-02-Verilog语言–模块:层次结构ProceduresAlways case2优先级编码器是一个组合电路,给定一个输入位向量时,输出第一的位置1中的向量位。例如,给定输入8’b100 1 0000的8位优先级编码器将输出3’d4,因为bit [4]是高的第一位。构建一个4位优先级编码器。对于此问题,如果所有输入位都不为高(即输入为零),则输出零。请注意,一个4位数字具有16种可能的组合优先编码器要求任何时刻只有一个输入有效,若同时有两个或更多个输入信号有效,就会造成混乱,因原创 2021-03-29 10:06:41 · 661 阅读 · 0 评论 -
HDLBits-02-Verilog语言--- Module addsub
HDLBits-02-Verilog语言–模块:层次结构Module addsub题目可以通过有选择地取反一个输入来从加法器构建加法器-减法器,这等效于将输入取反然后加1。净结果是一个可以执行两种操作的电路:(a + b + 0)和( a +〜b + 1)。如果您想更详细地解释该电路的工作原理,请参见Wikipedia。在下面构建加减法器。为您提供了一个16位加法器模块,您需要实例化两次:module add16 ( input[15:0] a, input[15:0] b, input ci原创 2021-03-28 21:19:36 · 486 阅读 · 0 评论 -
HDLBits-02-Verilog语言--模块:层次结构
HDLBits-02-Verilog语言–模块:层次结构Module shift8本练习是module_shift的扩展。现在,模块不再是仅单个引脚的模块端口,而是将带有矢量的模块作为端口,您将在其中附加导线矢量而不是普通导线。像Verilog中的其他任何地方一样,端口的向量长度不必与连接到其的电线相匹配,但是这将导致向量的零填充或局部化。本练习不使用向量长度不匹配的连接。您将获得一个my_dff8带有两个输入和一个输出的模块(实现一组8个D触发器)。实例化它们中的三个,然后将它们链接在一起以构成一原创 2021-03-28 16:19:48 · 605 阅读 · 0 评论 -
HDLBits-02-Verilog语言--模块:层次结构
HDLBits-02-Verilog语言–模块:层次结构Module pos此问题类似于上一个问题(模块)。您将获得一个名为的模块mod_a,该模块具有2个输出和4个输入(按顺序)。您必须连接6个端口的位置到顶层模块的端口out1,out2,a,b,c,并d按此顺序。您将获得以下模块:module mod_a ( output, output, input, input, input, input );按照上述模板来做。具体代码如下:使用端口位置对应方式:端口位置对应方式是被调用的模板按原创 2021-03-26 17:57:06 · 462 阅读 · 0 评论 -
HDLBits-02-Verilog语言--向量部分 Vector4
HDLBits-02-Verilog语言–向量部分*Vector4矢量反转所述并置运算符允许矢量串联起来以形成更大的载体。但是有时您想将同一事物连接在一起很多次,而做类似分配a = {b,b,b,b,b,b,b}的工作仍然很繁琐;。复制运算符允许重复向量并将它们串联在一起:{num {vector}}这种复制载体由NUM倍。num必须为常数。两组牙套都是必需的。例子:{5 {1’b1}} // 5’b11111(或5’d31或5’h1f){2 {a,b,c}}} //与{a...原创 2021-03-26 16:07:33 · 686 阅读 · 0 评论