自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Verilog学习笔记 HDLBits——Build a circuit from a simulation waveform

Practice翻译:这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。Solution。

2022-08-06 23:27:37 580 1

原创 Verilog学习笔记HDLBits——Finding bugs in code

Practice翻译:这个8位宽的2对1多路复用器不能工作。修复bug

2022-08-04 22:47:31 307

原创 Verilog学习笔记HDLBits——Building Larger Circuits

翻译:构建一个从0到999(包括999)的计数器,周期为1000个周期。复位输入是同步的,应该将计数器复位为0。q

2022-08-03 23:13:18 412

原创 Verilog学习笔记HDLBits——Finite State Machines(1)

一、Finite State Machines## 1.Simple FSM 1(asychronous reset)**Practice**:This 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 same as fsm1s, but usin

2022-07-24 14:57:15 648

原创 Verilog学习笔记HDLBits——More Circuits

Practice翻译Rule90是一道根据一些有趣的规则来生成一维序列的题目。规则很简单一维序列中元素有1、0两种状态,分别对应开、关状态。在每个时钟边沿到来时刻,元素的下一个状态为元素相邻两个元素的异或。下表更详细地给出了跳变的规则(可以视为状态转移表),元素下一个状态可以视作输出,输入为元素本身的状态与相应两个相邻元素的当前状态。(“Rule90”这个名字来自表中“nextstate下一状态”这一栏01011010是十进制的90。)Solution0]q);...

2022-07-22 19:35:34 434

原创 Verilog学习笔记HDLBits——Shift Registers

线性反馈移位寄存器是一种移位寄存器,通常带有几个异或门来产生移位寄存器的下一个状态。GaloisLFSR是一种特殊的排列方式,其中带有“点击”的位与输出位异或以产生下一个值,而不带“点击”的位则发生移位。如果抽头位置是精心选择的,LFSR可以使“最大长度”。最大长度为n位的LFSR在重复之前会经过2n-1个状态(永远不会达到全零状态)。1、LFSR定义1.抽头的数量必须为偶数;2.抽头之间不能成对出现必须是互质的;若设定初始种子为100,则下一个状态为继续加油!!!!!httpshttps。...

2022-07-22 14:43:00 1465

原创 Verilog学习笔记HDLBits——Counters

Practice翻译构建一个4位二进制计数器,从0到15(包括15),周期为16。复位输入是同步的,应该将计数器复位为0。Solution0]q);q

2022-07-21 14:42:29 1068

原创 Verilog学习笔记HDLBits——Latches and Flip-Flops

D触发器是一种存储位并周期性更新的电路,通常位于时钟的上升沿,当使用一个带时钟信号的always块时,逻辑合成器创建D触发器(参见alwaysblock2)。D触发器是“一团组合逻辑后面跟着一个触发器”的最简单形式,其中组合逻辑部分只是一条线。1、后面几题判断上升沿和下降沿的需要多练习,最后一题要好好理解。继续加油!!!!!httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。...

2022-07-20 15:18:48 530

原创 Verilog学习笔记HDLBits——Karnaugh Map to Circuit

本节的练习为卡诺图,卡诺图是逻辑函数的一种图形表示。一个逻辑函数的卡诺图就是将此函数的最小项表达式中的各最小项相应地填入一个方格图内,此方格图称为卡诺图。1、遇到卡诺图时,可以先考虑化简得出最简逻辑表达式。表达式可用最小项之和与最大项之积表达。2、本节的练习还是比较简单的,只要画出最简逻辑表达式就行了,当题目提供的卡诺时,注意观察卡诺图的00、01、10、11的位置,有的卡诺图摆放的位置不一样。继续加油!!!!!httpshttpshttpshttpshttpshttpshttps。...

2022-07-19 17:20:49 905

原创 Verilog学习笔记HDLBits——Arithmetic Circuits

加法器是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。继续加油!!!!!httpshttpshttpshttpshttps。...

2022-07-19 15:59:07 497

原创 Verilog学习笔记HDLBits——Multiplexers

①多路选择器是常见的选通器件,主要用于通道的扩展、复用;②多路选择器又叫多路选择开关,可以根据需要选通某一路或者某几路从而达到通道扩展或者复用的目的;③常见的有二选一、四选一、八选一等;1、在使用移位符时,需要切记移位是不能够嵌套使用的,举例要assignout=in1>>(in2...

2022-07-16 15:57:03 760

原创 Verilog学习笔记 HDLBits——Basic Gates

在前面的练习中,我们使用了简单的逻辑门和几个逻辑门的组合。这些电路是组合电路的例子。组合意味着电路的输出是其输入的函数(在数学意义上)。这意味着对于任何给定的输入值,只有一个可能的输出值。因此,描述组合函数行为的一种方法是显式列出输入的每个可能值的输出。这是真值表。对于一个有N个输入的布尔函数,有2^N种可能的输入组合。真值表的每一行列出一个输入组合,所以总有(2^N)行。输出列显示了每个输入值的输出。上面的真值表适用于三输入一输出的函数。对于8种可能的输入组合,每一种都有8行,还有一个输出列。...

2022-07-16 13:52:18 259

原创 Verilog学习笔记 HDLBits——More Verilog Features

Verilog有一个三元条件运算符(?😃if_trueif_false)这可以用于在一行中根据条件(amux!)从两个值中选择一个,而不用在组合always块中使用if-then。Examples(0?35).(sel?ba)~qq;Anext=w?BA;Bnext=w?AB;endcase1、generate语句的用法继续加油!!!!!httpshttpshttpshttps。...

2022-07-15 23:42:23 491

原创 Verilog学习笔记 HDLBits——Procedures

由于数字电路由用线路连接的逻辑门组成,因此任何电路都可以表示为一些模块和赋值语句的组合。然而,有时这并不是描述电路最方便的方式。过程块提供了描述电路的另一种语法。组合逻辑always等价于assign语句,因此总有一种方法可以用两种方式表达组合电路。使用哪一种语法的选择主要是哪种语法更方便的问题。过程块内部代码的语法与外部代码不同。过程块拥有更丰富的语句集(例如,if-then, case),不能包含连续的赋值*,但也引入了许多新的非直观的错误。(*过程式连续赋值确实存在,但与连续赋值有所不同,且不可综合

2022-07-14 16:20:01 557

原创 Verilog学习笔记HDLBits——Module:Hierarchy

到目前为止,您已经熟悉了模块,它是一种通过输入和输出端口与外部进行交互的电路。更大、更复杂的电路是由更小的模块和连接在一起的其他模块(如赋值语句和总是块)组成更大的模块来构建的。这就形成了一个层次结构,因为模块可以包含其他模块的实例。Practice: create one instance of module mod_a, then connect the module’s three pins (in1, in2, and out) to your top-level module’s three po

2022-07-14 12:03:31 1029

原创 Verilog学习笔记 HDLBits——Vertors

矢量用于使用一个名称对相关信号进行分组,以使操作更方便。例如,wire[7:0] w;声明一个名为w的8位向量,它在功能上等价于拥有8条独立的w。声明向量时,需将维数(向量由信号组成,所以也可称位宽)放在向量名之前,且一般以 [n-1:0] 的格式来声明n维(位)的向量。注意,vector的声明将维数放在vector的名称之前,这与C语言相比是不同的。Practice: Build a circuit that has one 3-bit input, then outputs the same vect

2022-07-13 23:49:05 550

原创 Verilog学习笔记 HDLBits——Basics

一、Basics1.Simple wirePractice: Create a module with one input and one output that behaves like a wire.翻译:创建一个一输入一输出的模块,输入in和输出out为wire信号。

2022-07-12 16:19:03 609

原创 Verilog学习笔记 HDLBits——Getting Started

HDLBits是一个Verilog在线学习网站,你可以直接在网站上编辑代码(Write your solution here框里),并进行综合仿真(点Submit,支持Quartus和Modelsim),查看波形图等(提交后会在下方显示)。Practice: Build a circuit with no inputs and one output. That output should always drive 1 (or logic high).翻译:建立一个输出为1的电路。Solution(不唯一

2022-07-12 14:38:26 273

空空如也

空空如也

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

TA关注的人

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