学习
文章平均质量分 69
Kshayebudong
这个作者很懒,什么都没留下…
展开
-
perl使用学习(全程更新)
perl(Practical Extraction and Reporting Language)工具:我安装的是strawberry perl 还有一种在window下常用的是activestateperl,相对于activestateperl,strawberry perl多了一些CPAN的模块。编辑器使用的是textpad8。学习:标量 浮点数小数、整数等 $a = 1.25; 对于perl语言,是严格区分大小写的,在perl语言中,不能使用逗号作为一个数字的分隔符..原创 2021-05-09 17:33:58 · 1446 阅读 · 0 评论 -
HDLbits练习记录(十三)全程更新
Circuits>Sequential Logic>More Circuits1.Rule 90原创 2021-05-09 17:33:39 · 363 阅读 · 1 评论 -
HDLbits练习记录(十二)全程更新
Circuits>Sequential Logic>Shift Registers1.4-bit shift register功能:四位移位寄存器,异步清零,同步更新值。收获:代码:module top_module( input clk, input areset, // async active-high reset to zero input load, input ena, input [3:0] data, o原创 2021-04-20 17:58:11 · 233 阅读 · 0 评论 -
HDLbits练习记录(十一)全程更新
Circuits>Sequential Logic>Counters1.Four-bit binary counter功能:四位二进制计数器,一个周期是16个,同步清零。收获:代码:module top_module ( input clk, input reset, // Synchronous active-high reset output [3:0] q); // reg [3:0]count; //原创 2021-04-18 10:21:14 · 448 阅读 · 1 评论 -
HDLbits练习记录(十)全程更新
Circuits>Sequential Logic>Latches and Flip-Flops1.D flip-flop原创 2021-04-16 18:40:59 · 336 阅读 · 0 评论 -
HDLbits练习记录(九)全程更新
Circuits>Combinational Logic>Karnaugh Map to Circuit1. 3-variable功能:将卡曼图转换成逻辑表达式,再转换成电路图。收获:代码:module top_module( input a, input b, input c, output out ); assign out = c|b|a&(~c);endmodule2. 4-variable功能原创 2021-04-15 08:44:53 · 151 阅读 · 0 评论 -
HDLbits练习记录(八)全程更新
Circuits>Combinational Logic>Airthmetic Circuits1.Half adder功能:加法器,半加器,不计算进位。收获:代码:module top_module( input a, b, output cout, sum ); assign {cout,sum} = a + b;endmodule2.Full adder功能:全加器,计算进位。收获:代码:module top原创 2021-04-14 20:07:39 · 258 阅读 · 1 评论 -
HDLbits练习记录(七)全程更新
Circuits>Combinational Logic>Multiplexers1. 2-to-1 multiplexer功能:二选一 一位选择器选择器收获:代码:module top_module( input a, b, sel, output out ); assign out = sel?b:a;endmodule2. 2-to-1 bus multiplexer功能:二选一 100位选择器收获:代码:modu原创 2021-04-14 10:46:17 · 372 阅读 · 2 评论 -
HDLbits练习记录(六)全程更新
Circuits>Combinational logic>Basic Gates1.wire功能:将输入in和输出out连接起来收获:代码:module top_module ( input in, output out);assign out = in;endmodule2.GND功能:将输出接地收获:代码:module top_module ( output out);assign out = 1'b0;e原创 2021-04-14 09:13:34 · 256 阅读 · 0 评论 -
HDLbits练习记录(五)全程更新
More Verilog Features1.Conditional ternary operator功能:学会三元运算符:? (condition? if_true: if_false)收获:三元运算符的应用。代码:module top_module ( input [7:0] a, b, c, d, output [7:0] min);//// reg [7:0]e,f;// assign min = e; // a...原创 2021-04-13 11:32:01 · 238 阅读 · 1 评论 -
HDLbits练习记录(四)全程更新
Procedures1.Always blocks(combinational)功能:收获:always模块里只能给reg型赋值,左边只能是reg型。always@(*)包含了使用的敏感信号,如果是always@(clk)那么就是指定了敏感列表。代码:// synthesis verilog_input_version verilog_2001module top_module( input a, input b, output wire out原创 2021-04-12 16:04:31 · 190 阅读 · 0 评论 -
HDLbits练习记录(三)全程更新
Modules: Hierarchy1.Modules功能:学会使用实例化模块,类似于函数。收获:不同级别的模块的调用,分为两种情况,一种是使用名字接口,另外一种是使用地址接口。使用地址接口如,mod_a instance1 ( wa, wb, wc ),对于使用地址接口容易产生一种问题就是如果模块的端口列表发生更改,那么还需要找到并更改模块实例化。使用名字接口如,mod_a instance2 ( .out(wc), .in1(wa), .in2(wb) ),这种是非常常用原创 2021-04-11 21:24:36 · 254 阅读 · 2 评论 -
HDLbits练习(二)全程更新
HDLbits练习Vector1.vectors功能:收获:wire [99:0]data; 意思是指定义100个一比特的数据wire data[99:0]; 意思是指定义一个100比特的数据代码:2.Vector in more detail功能:原创 2021-04-09 09:30:33 · 195 阅读 · 0 评论 -
HDLbits练习记录(全程更新)
HDLbits 练习记录之前就经常使用Verilog 但是是在项目中学习的,并没有真正系统性的过一遍知识点,虽然也看完了参考书,但是纸上觉来终觉浅,明知此事要躬行,于是决定开始刷一下HDLbits,为以后成为一名优秀的IC工程师打下牢固的基础。2021/3/21Getting Started(一).Getting started征途的开始。(二).OutPut Zero如果给输出量值的时候,默认其值为0。Verilog Language(一)BasicsSimple Wire线性,原创 2021-03-21 18:05:20 · 450 阅读 · 0 评论 -
学习VIVADO中自定义IP核
学习使用VIVADO和VITIS有一段时间了,今天跟着黑金教程学习了自定义IP的PWM,对于IP来说,写项目代码难免使用到,有很多模块会很经常的使用,为了降低重复的工作量,IP核成为一个必不可少的工具,关于写IP核,这里首先先写一个简单的功能进行实现,之后再写一个现在项目经常使用的成熟的IP核。在VIVADO中IP核需要根据是否需要与ps端联动从而分为两种包装方式,一种是正常包装方式,另外一种是使用AXI,这样可以与ps端联动。IP1.0(正常封装方式)端口:三输入(分别是时钟、复位和起始地址输原创 2021-04-08 11:14:23 · 1119 阅读 · 0 评论