Verilog学习笔记
UCSD.KS
You are responsible for your success.
展开
-
「Verilog学习笔记」编写乘法器求解算法表达式
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,if (!endif (!data1原创 2024-01-05 12:21:27 · 748 阅读 · 0 评论 -
「Verilog学习笔记」任意奇数倍时钟分频
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网if (!if (!if (!endmodule。原创 2024-01-05 12:11:42 · 659 阅读 · 0 评论 -
「Verilog学习笔记」求最小公倍数
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网题目要求求解两个数的最小公倍数,而最小公倍数可以通过两个数的乘积除以两个数的最小公约数得到。乘法是容易计算的,所以问题变成如何求解最大公约数。可以采用辗转相减法求解,例如 :两个自然数35和14,用大数减去小数,(35,14)->(21,14)->(7,14),此时,7小于14,要做一次交换,把14作为被减数,即(14,7)->(7,7),再做一次相减,结果为0,这样也就求出了最大公约数7。原创 2024-01-04 10:35:33 · 718 阅读 · 0 评论 -
「Verilog学习笔记」异步复位同步释放
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,input d,if (!rst0原创 2024-01-03 11:09:14 · 481 阅读 · 0 评论 -
「Verilog学习笔记」串行进位加法器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input Ci ,genvar i;i < 4;wire c_2;wire sum_1;原创 2024-01-02 15:40:35 · 760 阅读 · 0 评论 -
「Verilog学习笔记」全加器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网// 对于半加器,只有输入a,b,输出和进位表示为:// S=a^b;①// C=a&b;②// 全加器,在a,b的基础上增加了进位ci输入:③④// 先将全加器中的a,b放入半加器中例化,将输入分别代入①②得到:// S1=a^b;⑤// C1=a&b;⑥// 接下来将S1和Ci放入半加器进行例化,将输入分别代入①②得到:⑦⑧。原创 2024-01-01 11:32:49 · 469 阅读 · 0 评论 -
「Verilog学习笔记」乘法与位运算
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网观察乘数的特点: 1111_1011 = 1_0000_0000 - 1 - 100endmodule。原创 2023-12-31 12:41:34 · 519 阅读 · 0 评论 -
「Verilog学习笔记」序列检测器(Moore型)
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网if (!S1 : S0;S2 : S0;S2 : S3;S4 : S0;S1 : S0;endmodule。原创 2023-12-30 16:06:25 · 606 阅读 · 0 评论 -
「Verilog学习笔记」 脉冲同步器(快到慢)
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网if (!if (!原创 2023-12-29 12:05:27 · 624 阅读 · 0 评论 -
「Verilog学习笔记」十六进制计数器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网if (!if (!endmodule。原创 2023-12-28 10:48:32 · 800 阅读 · 0 评论 -
「Verilog学习笔记」超前进位加法器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网超前进位加法器的实质是:对于输出的每一位Si 其实都可以用Si = Ai ^ Bi ^ Cin来表示 我们需要做的只是判断加法结果的最高位该取几 例如本题中 输入的两个数A和B均为四位的二进制数 对于输出结果OUT的低四位都可以用上述公式计算 而最高位才是超前进位加法器需要解决的问题 即用更短的时间计算结果的最高位module huawei8//四位超前进位加法器genvar i;generate。原创 2023-12-27 11:10:09 · 1031 阅读 · 0 评论 -
「Verilog学习笔记」状态机与时钟分频
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网endcaseif (!endmodule。原创 2023-12-26 10:45:13 · 565 阅读 · 0 评论 -
「Verilog学习笔记」时钟切换
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网reg q0, q1;if (!if (!if (!endmodule。原创 2023-12-25 11:18:56 · 551 阅读 · 0 评论 -
「Verilog学习笔记」并串转换
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网串并转换操作是非常灵活的操作,核心思想就是移位。串转并就是把1位的输入放到N位reg的最低位,然后N位reg左移一位,在把1位输入放到左移后的reg的最低位,这样循环,就可以得到,以最高位开始传输,最低位传输完成的N位数据了;并转串就是把并行的N位数据的最高位给1位输出,然后类似的循环左移就可以了。reg valid;if (!cnt原创 2023-12-24 11:06:00 · 900 阅读 · 0 评论 -
「Verilog学习笔记」序列发生器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,if (!cnt原创 2023-12-23 11:02:51 · 391 阅读 · 0 评论 -
「Verilog学习笔记」自动售卖机
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网// idle : 空闲i.e.无钱;x state : 饮料机输出饮料B但只投了5块钱;if (!(din == 1?x : idle;else if (!endmodule。原创 2023-12-22 18:56:35 · 635 阅读 · 0 评论 -
「Verilog学习笔记」使用握手信号实现跨时钟域数据传输
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网endelse beginendendendendendendmoduleendelse beginendendendendendmodule。原创 2023-12-21 11:33:38 · 1010 阅读 · 0 评论 -
「Verilog学习笔记」根据RTL图编写Verilog程序
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网观察题目给出的RTL图,主要的器件是两个D触发器,一个与门。D触发器含有异步复位信号,且为低电平有效。data_in输入到D触发器,D触发器的输出Q是前一时刻的data_in,即data_in打一拍得到data_in_reg。与门表示data_out = data_in &&!再通过一个D触发器输出,这样子处理使data_in上升沿出现的时候,data_out保持一个时钟的高电平。原创 2023-12-20 11:13:04 · 1313 阅读 · 0 评论 -
「Verilog学习笔记」游戏机计费程序
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input rst_n, //异位复位信号,低电平有效input clk, //时钟信号input set,endred原创 2023-12-19 10:57:00 · 912 阅读 · 0 评论 -
「Verilog学习笔记」交通灯
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input rst_n, //异位复位信号,低电平有效input clk, //时钟信号//用于缓存信号灯的前一时刻的数值,判断上升沿p_red原创 2023-12-18 12:27:51 · 497 阅读 · 0 评论 -
「Verilog学习笔记」流水线乘法器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网)(sum01原创 2023-12-17 16:34:09 · 724 阅读 · 0 评论 -
「Verilog学习笔记」 Johnson Counter
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网endendmodule。原创 2023-12-16 12:21:37 · 478 阅读 · 0 评论 -
「Verilog学习笔记」RAM的简单实现
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,// 一共256个位置 每个位置存放4bit的数据integer i;for (i = 0;i < 256;原创 2023-12-15 11:34:44 · 905 阅读 · 0 评论 -
「Verilog学习笔记」单端口RAM
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,input rst,input enb,integer i;i < 127;i = i + 1)else if (enb) // 使能高电平写数据end// 使能低电平读数据endmodule。原创 2023-12-15 10:57:49 · 617 阅读 · 0 评论 -
「Verilog学习笔记」加减计数器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,elseend// 题目有误 根据答案波形图 将输出打一拍后输出end// 同理 当num == 0时 下一拍number才会等于0 根据非阻塞赋值的特性 将会在下一拍输出zero = 1endendmodule。原创 2023-12-14 20:01:38 · 940 阅读 · 0 评论 -
「Verilog学习笔记」可置位计数器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,input set,endendendendmodule。原创 2023-12-13 19:54:14 · 508 阅读 · 0 评论 -
「Verilog学习笔记」简易秒表
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,elseendelse beginendendendmodule。原创 2023-12-12 21:52:46 · 587 阅读 · 0 评论 -
「Verilog学习笔记」脉冲同步电路
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网// 脉冲信号转电平信号// datain是一个单周期的脉冲信号,这样可以转换成高电平或者低电平信号。电平信号更容易做跨时钟域处理end// 电平信号打两拍再转为脉冲信号,跨时钟域传输,打拍减小亚稳态概率endelse beginendend// 前后两个时钟周期的值不一致时,异或会把输出拉高,也就等同于把跳变转变成了电平endmodule。原创 2023-12-11 09:55:40 · 1187 阅读 · 0 评论 -
「Verilog学习笔记」多bit MUX同步器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网输入数据暂存在data_reg中,使能信号data_en用打两拍的方式跨时钟域传输到时钟域B,最后data_out根据使能信号更新数据。data_en信号在A时钟域用一个D触发器暂存,然后打两拍传输到B时钟域。根据同步到B时钟域的使能信号data_en_b1,更新输出。原创 2023-12-10 19:41:44 · 763 阅读 · 0 评论 -
「Verilog学习笔记」异步FIFO
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input wclk,input [$clog2(DEPTH)-1:0] waddr //深度对2取对数,得到地址的位宽。,input [WIDTH-1:0] wdata //数据写入,input [$clog2(DEPTH)-1:0] raddr //深度对2取对数,得到地址的位宽。,output reg [WIDTH-1:0] rdata //数据输出if(wenc)endif(renc)原创 2023-12-09 14:14:05 · 656 阅读 · 0 评论 -
「Verilog学习笔记」格雷码计数器
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input clk,reg flag;原创 2023-12-08 16:26:20 · 832 阅读 · 0 评论 -
「Verilog学习笔记」同步FIFO
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网input wclk,input [$clog2(DEPTH)-1:0] waddr //深度对2取对数,得到地址的位宽。,input [WIDTH-1:0] wdata //数据写入,input [$clog2(DEPTH)-1:0] raddr //深度对2取对数,得到地址的位宽。,output reg [WIDTH-1:0] rdata //数据输出if(wenc)endif(renc)原创 2023-12-08 16:11:55 · 605 阅读 · 0 评论 -
「Verilog学习笔记」根据状态转移写状态机-二段式
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网和三段式相比,就是将输出块和次态切换块合并。flag = 0;flag = 0;flag = 0;flag = 0;原创 2023-12-07 11:27:18 · 551 阅读 · 0 评论 -
「Verilog学习笔记」根据状态转移写状态机-三段式
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网状态机可以分为Moore状态机和Mealy状态机。Moore状态机:输出只由当前状态决定Mealy状态机:输出由当前状态和当前的输入共同决定。三段式状态机是指当前状态切换、次态切换和输出更新分别由不同的块控制。本题是一个Mealy状态机。在所有状态下,当输入data==0时,次态不变;当输入data==1时,次态顺序切换。// 当前状态切换end// 次态切换elseS1 : S0;原创 2023-12-06 11:36:44 · 676 阅读 · 0 评论 -
「Verilog学习笔记」无占空比要求的奇数分频
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网endendendmodule。原创 2023-12-06 11:14:36 · 544 阅读 · 0 评论 -
「Verilog学习笔记」任意小数分频
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网// 8/9时钟切换点//偶数周期//奇数周期endendend// cnt == 0,1,2,3 out输出1endendmodule题解 | #任意小数分频#_牛客博客。原创 2023-12-05 12:08:33 · 692 阅读 · 0 评论 -
「Verilog学习笔记」占空比50%的奇数分频
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网根据题意7分频,实际上是第一次电平变化经历了4个上升沿+3个下降沿,第二次电平变化是4个下降沿+3个上升沿,所以用两个计数器就行了。分别对上升沿和下降沿进行计数,计数总共到7就可以让输出信号取反。原创 2023-12-04 10:06:17 · 583 阅读 · 0 评论 -
「Verilog学习笔记」自动贩售机2
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网自动贩售机中可能存在的几种金额:0,0.5,1,1.5,2,2.5,3。然后直接将其作为状态机的几种状态,并根据投币面额确定状态转移。当贩售机内金额大于等于1.5时,也就是S1_5及以后的状态,还应根据饮料种类做判断。如果选择的是饮料1,sel=0,则返回S0状态;如果选择的是饮料2,sel=1,则根据投入的货币继续向下转移状态。当贩售机内金额大于等于2.5时,也就是S2_5。原创 2023-12-03 11:53:54 · 397 阅读 · 0 评论 -
「Verilog学习笔记」自动贩售机1
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网自动贩售机中可能存在的几种金额:0,0.5,1,1.5,2,2.5,3。然后直接将其作为状态机的几种状态,并根据投币面额确定状态转移。需要注意的是:根据时序图,可以发现在找零时,out2输出的结果是找零数额的两倍,即找零0.5应输出1,找零1应输出2,以此类推。S1 : d3?S1 : d2?S1_5 : d3?S1_5 : d2?S2 : d3?endcaseend。原创 2023-12-02 12:26:44 · 541 阅读 · 0 评论 -
「Verilog学习笔记」时钟分频(偶数)
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网endendendendmodule。原创 2023-12-01 11:35:16 · 1106 阅读 · 0 评论