
HDLBits
HDLBits系列专题个人解答
李锐博恩
退网中
展开
-
HDLBits 系列(0)专题目录
本篇博文是近来总结HDLBits系列的目录,点击蓝色字体即可进入查看具体内容。HDLBits 系列(1)从HDLBits中获取灵感,整顿自己,稳步前行HDLBits 系列(2)如何避免生成锁存器?HDLBits 系列(3)Priority Encoder(Case/Casez)HDLBits 系列(4)如何设计一定不会产生Latch的组合逻辑?HDLBits ...原创 2020-01-02 16:07:40 · 2931 阅读 · 0 评论 -
HDLBits 系列(44)状态机补录
文章目录前言原题复现题目解析状态转移图设计文件前言今天补一个状态机的题目,也是这个系列的题目之一,但是由于之前对题目有点疑惑,今天得到博友反馈,让我明白了这个题目的意思,记录一下。原题链接原题复现Consider a finite state machine that is used to control some type of motor. The FSM has inputs x ...原创 2019-12-16 21:23:54 · 1884 阅读 · 1 评论 -
HDLBits 系列(43)找 bug 专题
文章目录例题1原题复现题目分析改进之后例题2原题复现题目分析改进程序例题3原题复现题目分析改进程序例题4原题复现题目分析改进程序例题5原题复现题目分析改进程序例题1原题复现原题链接This 8-bit wide 2-to-1 multiplexer doesn’t work. Fix the bug(s).module top_module ( input sel, in...原创 2019-12-15 16:06:59 · 2072 阅读 · 0 评论 -
HDLBits 系列(42)根据仿真波形来设计电路之时序逻辑
文章目录前言电路设计1原题复现题目解析我的设计电路设计2原题复现题目解析我的设计电路设计3原题复现题目解析我的设计电路设计4原题复现题目解析我的设计前言上篇博文讨论了组合逻辑的情况,最后留了几个题目,我也没做,感觉繁杂,有兴趣的可以挑战一下,地址为:上篇博文链接这篇博客,可以说是上篇博客的姊妹篇,简单的讨论下时序逻辑的类型,通过仿真波形来设计电路是一类题目,也应该是我们应该具备的电路设计能...原创 2019-12-14 21:17:34 · 2839 阅读 · 14 评论 -
HDLBits 系列(41)根据仿真波形来设计电路之组合逻辑
文章目录Sim/circuit1原题复现我的设计Sim/circuit2原题复现题目分析我的设计Sim/circuit3原题复现题目分析我的设计Sim/circuit4原题复现题目分析Sim/circuit1这个题目让我想起了当时的华为面试题目,就是这类题目的变形,但是当时就是没有想起来怎么做?还是太菜,见过的题目太少。后面经过面试官的提示才恍然大悟,这算是一次教训吧,我再也忘不了这种题目了...原创 2019-12-13 23:23:25 · 2768 阅读 · 5 评论 -
HDLBits 系列(40)如何写 TestBench 文件?
目录序言变量定义时钟设计设计输入模块例化实战演练序言由于入门的测试文件很简单,所以一直以来也都是直接给出测试文件,直到今天才想着去总结一个测试文件的写法。这篇博客将根据HDLBits的题目来总结如何书写Testbench文件,肯定有不完善的地方,仅仅作为一次总结吧。TestBench文件,又称为TB文件,是用来对设计文件进行测试的程序,它与设计文件不同的地方在于,它使用的语法可以是不可综合的...原创 2019-12-13 18:22:58 · 3415 阅读 · 1 评论 -
HDLBits 系列(39)求解带有奇校验的串口接收数据的简化电路设计
目录求助原题我的方案状态转移图我的设计等待你的方案?求助原题先给出原题:(蓝色字体,即是链接本身)We want to add parity checking to the serial receiver. Parity checking adds one extra bit after each data byte. We will use odd parity,...原创 2019-12-11 16:52:49 · 2006 阅读 · 4 评论 -
HDLBits 系列(38)值得一看的状态机设计题目
目录背景原题复现我的方案状态转移图我的设计更新方案FPGA/IC群推荐背景这是这个系列中的一个状态机的题目,但是相比于给了你完整状态转移图之类的题目,这个题目还是稍微有点难的,我实在不知道该怎么给这个博客起个什么名字?我在线等一个简单的方式去解决今天的问题,而如题所说,我用最无能的方式来解决这个问题,但简单的方式一定存在。2019/12/16更新...原创 2019-12-10 22:25:12 · 2472 阅读 · 8 评论 -
HDLBits 系列(ending)此系列我的答案
我把账号借给你看看总体答案吧。原创 2019-12-15 16:09:06 · 3752 阅读 · 6 评论 -
HDLBits 系列(37)此系列关于独热码的题目的疑问?
目录背景我的做法第一题第二题第三题解决办法第一题第二题第三题推荐背景目前为止,关于状态机独热码的题目,几乎没一个题目能做对,这令我疑惑?是不是题目的答案有问题?在此请大家一试?(已解决,谢谢)我的做法第一题第一题(点击蓝色字体进入题目链接做答)本人答案:module top_module ( input [6:1] y,...原创 2019-12-10 18:31:26 · 2573 阅读 · 2 评论 -
HDLBits 系列(36)Arbitration circuit implemented by FSM
目录原题复现审题我的设计设计解释原题复现原题复现:Consider the FSM described by the state diagram shown below:This FSM acts as an arbiter circuit, which controls access to some type of resource by three r...原创 2019-12-10 17:02:52 · 1435 阅读 · 0 评论 -
HDLBits 系列(35)Lemmings Game
目录背景Lemmings1前言原题复现我的设计Lemmings2Lemmings3背景这是一个Lemmings的简单游戏,我们通过状态机可以设计这个游戏,从简单到复杂,一步一步实现这个游戏。Lemmings1前言Lemmings1想要往左走,可是遇到左侧的障碍后,便向右转向;在向右走的过程中,如果遇到右侧的障碍,同理左转向。头脑简单的Lemmings...原创 2019-12-09 12:32:38 · 1719 阅读 · 0 评论 -
HDLBits 系列(34)Serial two's complememter(Mealy and Moore FSM)
目录Mealy 状态机原题复现我的设计Moore 状态机原题复现状态转移图我的设计Mealy 状态机原题复现原题复现:The following diagram is a Mealy machine implementation of the 2's complementer. Implement using one-hot encoding....原创 2019-12-09 12:16:17 · 2882 阅读 · 4 评论 -
HDLBits 系列(33)Sequence Recognition with Mealy FSM
目录原题复现状态转移图我的设计测试原题复现原题重现:Implement a Mealy-type finite state machine that recognizes the sequence "101" on an input signal named x. Your FSM should have an output signal, z, that is as...原创 2019-12-09 10:36:46 · 1786 阅读 · 0 评论 -
HDLBits 系列(32)Sequence recognition(序列检测)
目录原题复现审题状态转移图我的设计原题复现原题复现:Synchronous HDLC framing involves decoding a continuous bit stream of data to look for bit patterns that indicate the beginning and end of frames (packets). See...原创 2019-12-08 16:50:03 · 2050 阅读 · 0 评论 -
HDLBits 系列(31)Serial Receiver and Datapath
目录序言原题复现我的设计序言上篇博文:HDLBits 系列(30)Serial Receiver写了串行接收器如何接收8位串行数据,正确接收8位串行数据后给一个接收完毕标志信号,这篇博文来继续进一步输出正确接收的串行数据,在done有效时刻输出并行的8bit数据。特别容易实现,对上篇博客的代码进行略微添加即可。需要注意的是这种uart协议先发送的bit位为低bit位...原创 2019-12-07 20:40:23 · 1722 阅读 · 0 评论 -
HDLBits 系列(30)Serial Receiver
目录序言原题复现翻译状态转移图我的设计设计解释序言所谓的串行接收器(Serial Receiver),类似,或者根本就是Uart的协议的一种形式,Uart的接收器部分,如何实现呢?原题复现原题传送:In many (older) serial communications protocols, each data byte is sent along ...原创 2019-12-07 19:59:01 · 2182 阅读 · 0 评论 -
HDLBits 系列(29)PS/2 mouse protocol(PS/2 packet parser and datapath)
目录序言原题传送题目解释我的设计序言上篇博客:HDLBits 系列(28)PS/2 mouse protocol(PS/2 packet parser)只对PS/2 mouse protocol的数据流检测到了之后输出检测到了的标志done,但是没有输出检测数据,这一篇博客接着设计。原题传送Fsm ps2dataNow that you have a ...原创 2019-12-07 18:19:07 · 1703 阅读 · 3 评论 -
HDLBits 系列(28)PS/2 mouse protocol(PS/2 packet parser)
目录原题复现审题状态转移图我的设计原题复现原题传送The PS/2 mouse protocol sends messages that are three bytes long. However, within a continuous byte stream, it's not obvious where messages start and end. Th...原创 2019-12-07 16:02:18 · 1789 阅读 · 0 评论 -
HDLBits 系列(27)孰对孰错 之 Fsm onehot?
目录前言原题复现审题我的设计测试吐槽最后的解决方案前言今天的这个问题,并没有满意的解决,路过的朋友,看出问题所在的,可以给个评论,谢谢。原题复现Fsm onehot下面是一个最基础的状态机的一部分,这是一个题目,我们用最常规的方式来解决它。原题传送审题上图是一个状态转移图,我们用给出的输入输出模型来实现这个状态机,确切的说,这不是一个完整...原创 2019-12-06 21:00:01 · 2669 阅读 · 7 评论 -
HDLBits 系列(26)独热码有限状态机实现的两种方式
目录序言原题复现设计1设计2最后一句话序言这篇博客的标题起的,好像就是为独热码而讨论的,其实不然,下面给出一个题目,用任何方式的状态编码都可以,但是我就想讨论下用独热码来实现。一种写法是上篇博客写的那样,用简单的方式实现状态转移。原题复现先给出原题:The following is the state transition table for a Moo...原创 2019-12-01 21:12:51 · 1932 阅读 · 0 评论 -
HDLBits 系列(25)独热码有限状态机实现的简单方式
目录原题重现一点解释最终实现原题重现The following is the state transition table for a Moore state machine with one input, one output, and four states. Use the following one-hot state encoding: A=4'b0001, B=4'...原创 2019-12-01 20:36:11 · 3164 阅读 · 1 评论 -
HDLBits 系列(24)进入FSM(有限状态机)的世界入口
目录Fsm1Fsm1sFsm2Fsm3combFsm1This is a Moore state machine with two states, one input, and one output. Implement this state machine. Notice that the reset state is B.This exercise is the s...原创 2019-11-28 17:17:33 · 3673 阅读 · 0 评论 -
HDLBits 系列(23)3 输入的 LUT
目录原题复现审题我的设计原题复现In this question, you will design a circuit for an 8x1 memory, where writing to the memory is accomplished by shifting-in bits, and reading is "random access", as in a typica...原创 2019-11-27 19:45:53 · 2700 阅读 · 0 评论 -
HDLBits 系列(22) Shift register
目录Shift register1Shift register2Shift register1实现下面的电路:module top_module ( input clk, input resetn, // synchronous reset input in, output out); reg q1, q2, q...原创 2019-11-27 19:12:15 · 1768 阅读 · 0 评论 -
HDLBits 系列(21)LFSR(线性反馈移位寄存器)
目录5 bit LFSR3 bit LFSR32 bit LFSR5 bit LFSRA linear feedback shift register is a shift register usually with a few XOR gates to produce the next state of the shift register. A Galois LFSR is...原创 2019-11-27 17:19:13 · 5038 阅读 · 1 评论 -
HDLBits 系列(20)移位寄存器(逻辑移位、算术移位、循环移位)
目录4 bit的右移寄存器设计100 bit循环移位寄存器算术移位寄存器4 bit的右移寄存器设计先给出一个4位右移寄存器的设计题:Build a 4-bit shift register (right shift), with asynchronous reset, synchronous load, and enable.areset: Resets shift r...原创 2020-06-13 23:04:05 · 2825 阅读 · 0 评论 -
HDLBits 系列(19) 12小时时钟的Verilog设计
目录背景原题复现审题我的设计设计解释欢迎加入背景这篇博客设计一个12小时的时钟,通过例化4bit BCD码计数器来设计,如果你给予的时钟周期是1s,则能够当做时钟来用哦。原题复现原题如下:Create a set of counters suitable for use as a 12-hour clock (with am/pm indicator)....原创 2019-11-26 21:38:44 · 2567 阅读 · 1 评论 -
HDLBits 系列(18) BCD码计数器的设计
目录原题复现审题我的设计原题复现先给出原题:Build a 4-digit BCD (binary-coded decimal) counter. Each decimal digit is encoded using 4 bits: q[3:0] is the ones digit, q[7:4] is the tens digit, etc. For digits [3...原创 2019-11-25 16:43:48 · 3174 阅读 · 1 评论 -
HDLBits 系列(17) 计数器的级联实现1000分频的分频器
目录原题复现审题我的设计原题复现原题From a 1000 Hz clock, derive a 1 Hz signal, called OneHertz, that could be used for the digital wall clock. Build the frequency divider using modulo-10 (BCD) counters and...原创 2019-11-24 23:20:57 · 3314 阅读 · 0 评论 -
HDLBits 系列(16)Something about Counter
目录原题复现题目1我的设计题目2审题我的设计原题复现题目1一般的计数器我就不说了,这里看下面的要求:Build a decade counter that counts from 0 through 9, inclusive, with a period of 10. The reset input is synchronous, and should re...原创 2019-11-24 22:38:25 · 1777 阅读 · 0 评论 -
HDLBits 系列(15) 如何设计一个双边沿采样的电路?
目录背景原题复现审题我的设计1我的设计2背景曾经专门写过这个话题,可是今天在练习HDLBits时候,又发现了这个问题,但是以前的思路我已经忘了,不得不回顾。FPGA中如何实现双边沿采样?奇怪的是我竟然之前用过的方法,今天我已经想不通为什么了?直接见原题吧:原题复现You're familiar with flip-flops that are tri...原创 2019-11-24 21:59:37 · 2475 阅读 · 0 评论 -
HDLBits 系列(14) Latch and Dff and Edge detect
目录D LatchDFF + GATEMux + DFFMUX2 + DFFFSMJK 触发器Edgedetect(边沿检测)双边沿检测D LatchImplement the following circuit:这是一个锁存器,高电平跟随,低电平保持,于是设计:module top_module ( input d, ...原创 2019-11-24 20:16:16 · 2716 阅读 · 0 评论 -
HDLBits 系列(13) All about DFF
目录DFFDff8Dff8r确定复位值的DFFDff8arDff16e终于到了时序逻辑的部分,但是有些设计是最最基础的,多说一句话都多,所以只是列出来,到了适当的时候,会给出说明。DFFD触发器是一种存储位的电路,并在时钟信号的(通常)上升沿定期进行更新。Verilog描述:module top_module ( input clk, /...原创 2019-11-24 17:39:33 · 2246 阅读 · 0 评论 -
HDLBits 系列(12)All about Karnaugh Map
目录题目1原题复现我的设计题目2原题复现我的设计题目1这篇博文主要就是练习一下卡诺图的东西,然后选取几个经典的案例吧,如下:原题复现Implement the circuit described by the Karnaugh map below.d的意思就是不关系,也即do not care的意思。把有利于化简的d看做1,否则为0比较能够化简出...原创 2019-11-24 17:08:20 · 1751 阅读 · 0 评论 -
HDLBits 系列(11)All about Adder
目录半加器全加器Binary Ripple-Carry Adder多位加法器有符号加法溢出Adder100Bcdadd4最后想说的一些话半加器Create a half adder. A half adder adds two bits (with no carry-in) and produces a sum and carry-out.mod...原创 2019-11-24 14:55:47 · 2408 阅读 · 1 评论 -
HDLBits 系列(10)(Mux256to1)多路选择器的固定思维,你别想太多!
目录抛砖引玉思维陷阱很有意义的语法讨论最后想说的一些话抛砖引玉本文有一个诡计,先让我把你代入到多路选择器中,见如下一个小问题:Create a 16-bit wide, 9-to-1 multiplexer. sel=0 chooses a, sel=1 chooses b, etc. For the unused cases (sel=9 to 15), set al...原创 2019-11-23 22:34:54 · 4633 阅读 · 11 评论 -
HDLBits 系列(9)Gates and Vector
目录原题复现我的设计原题复现这篇博文意义不大,纯粹练习一下,用逻辑门对向量(多比特数据)的操作。在 in[99:0]中为您提供了100位输入向量。我们想知道每个位与其邻居之间的一些关系:out_both:此输出矢量的每一位都应指示相应的输入位及其左侧的邻居是否均为“ 1”。例如,out_both [2]应该指示in [2]和in [3]是否都为1。由于in [3]在左边没有...原创 2019-11-23 17:28:00 · 1487 阅读 · 0 评论 -
HDLBits 系列(8)真值表产生工具推荐
目录原题复现审题我的设计工具推荐原题复现工具,也只能作为一个参考的工具,我们感谢它的存在,给了我灵感与思路,复习或者纠错等。关于真值表这一个话题,HDLBits这个网站讲的也确实通俗例如:组合表示电路的输出仅是其输入的函数(在数学意义上)。 这意味着对于任何给定的输入值,只有一个可能的输出值。 因此,描述组合函数行为的一种方法是显式列出输入的每个可能值的输出。 ...原创 2019-11-23 14:40:12 · 2485 阅读 · 0 评论 -
HDLBits 系列(7)对for循环以及generate for的各种实践
本节内容主要讲解for和generate for的用法原创 2019-11-22 21:48:24 · 2790 阅读 · 1 评论