HDLbits学习
文章平均质量分 94
HDLBits是一个小型电路设计练习的集合,用于使用Verilog硬件描述语言(HDL)进行数字硬件设计。早期的问题遵循教程风格,而后期的问题将越来越多地挑战您的电路设计技能。
每个问题都要求您在Verilog中设计一个小电路。HDLBits给你提交的电路模块的即时反馈。通过使用一组测试向量进
绿茶冰
这个作者很懒,什么都没留下…
展开
-
【HDLbits刷题笔记 】05-verilog语法-更多verilog功能
创建一个电路,该电路将计算 8 位字节的奇偶校验位(这将向该字节添加第 9 位)。您的加法器应添加两个 100 位 BCD 数字(打包到 400 位向量中)和一个携带,以生成 100 位的总和并执行。您将获得一个名为 bcd_fadd 的 BCD 一位数加法器,该加法器将两个 BCD 数字相加并结转,并生成总和和结转。向量的所有位进行操作,比如(a[0]和a[1]和a[2]和a[3]...),如果向量很长,这会变得乏味。构建一个具有 100 个输入的组合电路,在 [99:0] 中。原创 2023-01-05 22:16:55 · 390 阅读 · 0 评论 -
【HDLbits刷题笔记 】04-verilog语法-程序部分
例如下面的模型,if 语句中缺少 else 结构,系统默认 else 的分支下寄存器 q 的值保持不变,即具有存储数据的功能,所以寄存器 q 会被综合成 latch 结构。触发器(flip-flop),是边沿敏感的存储单元,数据存储的动作(状态转换)由某一信号的上升沿或者下降沿进行同步的(限制存储单元状态转换在一个很短的时间内)。两者都创建相同的组合逻辑。网上说casex和casez属于不可综合语句,仅针对一般电路不会出现x状态来说的,但是综合工具并不会对x,z认识这个状态,所以综合出来的电路是一样的。原创 2023-01-05 21:20:32 · 1196 阅读 · 0 评论 -
【HDLbits刷题笔记 】03-verilog语法-模块部分
此外,创建一个 4 对 1 多路复用器(未提供),该多路复用器根据以下条件选择要输出的内容:输入 d 处的值、第一个 d 字拖之后、第二个之后或第三个 D 触发器之后的值。模块的层次结构是通过在另一个模块中实例化一个模块来创建的,只要使用的所有模块都属于同一个项目(因此编译器知道在哪里可以找到模块)。在本练习中,将为您提供与上一练习相同的模块,该模块将两个带进转的 16 位数字相加,并生成一个带出数和 16 位总和。,然后将模块的三个引脚(、 和 )连接到顶级模块的三个端口(电线、 和 )。原创 2023-01-05 19:56:54 · 733 阅读 · 0 评论 -
【HDLbits刷题笔记 】02-verilog语法-向量部分
(或非正式地称为“方向”)是最低有效位是否具有较低的索引(小端序,例如 [3:0])或较高的索引(大端序,例如 [0:3])。之类的事情仍然很乏味。构建一个具有两个 3 位输入的电路,用于计算两个向量的按位 OR、两个向量的逻辑 OR 以及两个向量的逆 (NOT)。两个 N 位向量之间的按位运算复制向量每个位的操作并生成 N 位输出,而逻辑运算将整个向量视为布尔值(true = 非零,false = 零)并生成 1 位输出。构建一个具有一个3位输入的电路,然后输出相同的矢量,并将其分成三个独立的1位输出。原创 2023-01-05 18:39:56 · 1402 阅读 · 0 评论 -
【HDLbits刷题笔记 】01-verilog语法-基础部分
assign,用于连续赋值NOT gate(非门)逻辑取反符号!按位取反符号~AND gate(与门)逻辑与符号&&按位与符号&OR gate(或门)逻辑或符号||按位或符号|XNOR gate(同或门)逻辑同或符号^~XOR gate(异或门)逻辑同或符号^原创 2023-01-05 11:17:50 · 573 阅读 · 1 评论