- 17
- 0
- 约1.3万字
- 约 19页
- 2018-12-25 发布于湖北
- 举报
本节讲述部分的verilog语法
主要包括
位拼接“{}”的用法
Parameter用法
Begin end语句块
同步与异步
条件语句case,if等
阻塞赋值与非阻塞赋值
边沿检测电路(双边沿触发的计数器)
按键去抖动电路设计
{}用法
在C语言中,{}是复合语句,但是在verilog中,有着不同的含义-位拼接运算符。即,将几个1位或者是多位的变量拼接成位更宽的量。
假设 a=1’b0;
b=3’b101;
c=2’b11
那么{c,b,a}=6’b11_101_0。下划线可以使结果看起来更加清晰,别无他意。
又如{c[0],b[2:1],c[1]} = 4’b1_10_1;
实例:使用{}一位全加器的设计。
全加器和半加器类似,只是在输入端还有一个进位输入端Ci,电路符号如下:
FullAdder1bit
FullAdder1bit
S
A
B
Co
Ci
回顾前面的讲述,半加器中我们使用了2位的变量temp来保存运算结果,而实际上这个temp就是Co和S的拼接,即{Co, S} = temp。这里三个1位的数相加结果最大仍然是2位,使用{Co, S}代替半加器中temp的代码如下:
module FullAdder(A,B,Ci,Co,S);
module FullAdder(A,B,Ci,Co,S);
input A,B,Ci;
原创力文档

文档评论(0)