自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 [HDLBits做题]Writing Testbenches

编写一个testbench,创建一个模块dut的实例(可以使用任何实例名称),并创建一个时钟信号来驱动模块的时钟输入。时钟的周期为10ps,时钟应初始化为0,其第一次转换为0变1.我的理解是要求testbench一开始应对T触发器进行重置,然后在上升沿时输出1。编写一个测试平台,实例化一个T触发器,并将重置T触发器,然后将其切换到1状态。编写一个testbench,实例化模块q7并生成上述输入信号。不过不符合题目要求。

2023-11-22 00:03:05 127

原创 [HDLBits做题]Reading Simulations --- Build a circuit from a simulation

4输入1输出,输入波形遍历了所有16种可能,可以直接写出输出为高电平时的情况(也可画卡诺图),无法化简,故直接写结果即可。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。下图是一个组合电路的仿真波形,确定电路的功能并完成它的代码。

2023-11-19 15:48:31 74 3

原创 [HDLBits做题]Reading Simulations --- Finding bugs in code

这个组合电路应该识别键0到9的8位键盘扫描码。它应该指出10个按键中是否有一个有效,如果有效则检测是哪个按键。下面代码描述的8位宽2-to-1多路复用器不工作,找出bug并修改。这个4-to-1多路复用器无法正常工作,请修改其中的错误。下面是无法工作的有0标志位的加法器,请修复bug。你可以使用一个没有错误的2-to-1多路复用器。这个三输入的与非门不工作,修改其中的错误。

2023-11-19 15:38:21 67 1

原创 [HDLBits做题]Building Larger Circuits

作为能够控制移位寄存器的FSM的一部分,我们希望能够在检测到正确的位模式时使能移位寄存器4个时钟周期。下面提供的是预期输入和输出的示例。此时,状态机必须置done为高电平以通知用户定时器已经超时,并且等待直到输入ack为高电平,然后复位以寻找开始序列的下一次出现。此时,当定时器超时时电路应将done信号置位高电平,并且等待直到ack输入为1,然后复位以启动查找序列1101的下一次出现。之后,状态机的counting置高电平以指示其正在等待计数器,并且一直等待到done_counting为高电平。

2023-11-19 14:56:52 63 1

原创 [HDLBits做题]Sequential Logic --- Finite State Machines (III)

(上接2.5Finite State Machine(II))

2023-11-08 23:54:01 96 1

原创 [HDLBits做题]Sequential Logic --- Finite State Machines (II)

周内杂事太多,找了借口想着周末刷刷题。结果周末看了球,大连人队降级了,十分难过,又找了借口没做题。好吧,颓废了一周,那么新的一周,收拾好心情,重新出发!(上接2.5Finite State Machine(I))

2023-11-08 00:45:54 77 1

原创 [HDLBits做题]Sequential Logic --- Finite State Machines (I)

此时,因为没有地面了,他会坠落(aaah=1),然后当他再次回到地面时继续沿着之前的方向行走,在挖掘时被撞到没有任何影响,同样的在坠落或是没有地面时也不会响应挖掘。尤其是如果旅鼠坠落超过20个周期然后接触地面,它将会狗带,并将会停止步行、坠落、挖掘的行为(即全部的四个输出都为0),一直到FSM得到重置。在跌倒时被碰撞不会影响行走的方向,并且在与地面消失(但尚未跌倒)相同的周期中被碰撞,或者当地面在跌倒状态中重新出现时,也不会影响行走的方向。下图是一个有两个状态的摩尔状态机,一个输入,一个输出。

2023-10-24 23:17:18 60 4

原创 [HDLBits做题]Sequential Logic ---More Circuits

在每个时钟周期,每个单元的下一个状态是由左右两个邻居的异或决定的。下表表达了这个规则更详细的内容,其中下一个状态的值是它本身和左右两个邻居值的函数。在此电路中,创建一个512单元的系统q[511:0],并在每个时钟周期前进一个步长。在此电路中,创建一个512单元的系统q[511:0],并在每个时钟周期前进一个步长。在每个时钟周期,每个单元的状态会发生改变。下表表达了这个规则更详细的内容,其中下一个状态的值是它本身和左右两个邻居值的函数。这个游戏是一个二位网格上进行的,每个单元格内为1(存活)或0(死亡)。

2023-10-24 00:15:00 48

原创 [HDLBits做题]Sequential Logic --- Shift Registers

将触发器的输出标记为Q[7:0]。伽罗瓦LFSR是其中一种特定情况,它的tap(抽头)位置的比特与输出比特进行异或以产生下一个值,而没有抽头位置的比特则参与正常的移位。按照题目意思,首先要构造一个8位移位寄存器,最低位Q[0]输出回到最前端D触发器的输入,包含有enable使能端控制。这个问题中,你将设计一个8x1存储器的电路,其中写入存储器是通过移入来完成的,而读取时“随机访问”,类似于典型的RAM。算数右移的时候,空位不像逻辑右移一样补零,而是补填原数据的最高位(符号位),即正数补0、负数补1。

2023-10-21 11:17:30 78 1

原创 [HDLBits做题]Sequential Logic --- Counters

围绕count4模块构造1-12的计数器,首先考虑三个内部信号,c_enable使能信号,外侧使能则内部count4也使能,所以直接可以将enable与c_enable相连;根据时序图可以看出来该计数器在上升沿计数加一,计数变零有两种情况,一是计数到15后,下一计数归零(此处的归零可以利用进位溢出,因此保持累加即可,但是如果计数范围不是2。按照题目建议设计一个一位十进制计数器bcd4,类似上一题的使用方式,借助前一个计数器输出结果作为下一个计数器的使能端信号,从而实现进位效果。

2023-10-20 00:24:41 73 2

原创 [HDLBits做题]Sequential Logic --- Latches and Flip-Flops

判断是否有边沿变化,可以采用通过一个寄存器储存前一个状态,然后通过对比当前状态来判断是否存在边沿变化,获取上升沿的状态,方式是采用与来比较当前状态和上一个状态,保证当前状态应该为1,上一个状态为0,得到的结果则是发生上升沿的情况。可以分别拆成两个边沿触发器,然后将两个边沿触发器的结果分别作为另一个边沿触发器的上一个输出状态,对比前后两个输出状态,发生变化则输出1,这里可以用异或关系来表示。你熟悉的触发器是在时钟的上升沿触发的,或者是在时钟的下降沿触发的。注:Qold是D触发器在上升沿到来之前的输出。

2023-10-17 23:09:52 114

原创 [HDLBits做题]Combinational Logic --- Karnaugh Map to Circuit

有四个输入(a,b,c,d)的单输出数字系统在输入出现2、7、15时产生逻辑1,并在出现0、1、4、5、6、9、10、13、14时产生逻辑0。数字3、8、11、12在此系统中没出现。例如7对应abcd分别被设置为0、1、1、1.在编程前先化简卡诺图,尝试写成乘积和的形式。我们无法检测你是否将卡诺图化简为最佳情况,但我们可以检查你的化简是否与卡诺图等价,也可以检查你是否能够将卡诺图转化为电路。对于下面的卡诺图,请使用一个4对1多路复用器和尽可能少的使用2对1多路复用器来实现电路。根据卡诺图将ab整理得到。

2023-10-14 00:13:57 109 1

原创 [HDLBits做题]Combinational Logic --- Arithmetic Circuits

加法器将两个3位数和一个进位相加得到一个3位和一个进位输出。假设你有两个8比特2进制补码数,a[7:0]和b[7:0],这些数字相加得到s[7:0],同时计算是否发生了(有符号数)溢出情况。提供给你一个名为bcd_fadd的BCD(二进制编码的十进制)一位加法器,他将两个BCD数字和进位相加,产生一个和和进位。加法器将两个100位数字和一个进位相加得到一个100位和以及进位输出。创建一个全加器,一个全加器将3bit(包含进位)相加并产生一个输出和进位信号。来计算,或者从位n和n-1的进位导出。

2023-10-12 17:38:16 56

原创 [HDLBits做题]Combinational Logic --- Multiplexers

HDLBits做题

2023-10-11 13:12:03 82

原创 [HDLBits做题]Combinational Logic --- Basic Gates

HDLBits Basic Gates 题解

2023-10-10 12:51:45 105

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除