【Verilog】语法tips

Verilog初学建议 (墙裂推荐!!!感动到哭泣!)

1.=和<=(类似vhdl:=和<=)

=为阻塞赋值,类似vhdl的:=。<=为非阻塞赋值。

建议设计组合逻辑电路时用阻塞赋值,设计时序电路时用非阻塞赋值。

建议同一个变量单一地使用阻塞或者非阻塞赋值。

2.tips

1、不使用初始化语句;

2、不使用延时语句;

3、不使用循环次数不确定的语句,如:forever,while等;

4、尽量采用同步方式设计电路;

5、尽量采用行为语句完成设计;

6、always过程块描述组合逻辑,应在敏感信号表中列出所有的输入信号;

7、所有的内部寄存器都应该可以被复位;

8、用户自定义原件(UDP元件)是不能被综合的。

3.赋值

连续性赋值语句逻辑结构上就是将等式右边的驱动左边的结点。因此连续性赋值的目标结点总是综合成由组合逻辑驱动的结点。Assign语句中的延时综合时都将忽视。

过程性赋值只出现在always语句中。

4.进位:

通常会将进行运算操作的结果比原操作数扩展一位,用来存放进位或者借位。如:

Wire [3:0] A,B;

Wire [4:0] C;

Assign C=A+B;

C的最高位用来存放进位。

5.循环:

只有for-loop语句是可以综合的。

6.异步复位:

建议不要在异步时对变量读取,即异步复位时,对信号赋以常数值。

7.块

一.顺序块

顺序块有以下特点:

1)      块内的语句是按顺序执行的,即只有上面一条语句执行完后下面的语句才能执行。

2)      每条语句的延迟时间是相对于前一条语句的仿真时间而言的。

3)      直到最后一条语句执行完,程序流程控制才跳出该语句块。

顺序块的格式如下:

begin

语句1;

语句2;

......

语句n;

end

其中:

        块名即该块的名字,一个标识名。其作用后面再详细介绍。

        块内声明语句可以是参数声明语句、reg型变量声明语句、integer型变量声明语句、real型变量声明语句。

二. 并行块

并行块有以下四个特点:

1)      块内语句是同时执行的,即程序流程控制一进入到该并行块,块内语句则开始同时并行地执行。

2)      块内每条语句的延迟时间是相对于程序流程控制进入到块内时的仿真时间的。

3)      延迟时间是用来给赋值语句提供执行时序的。

4)      当按时间时序排序在最后的语句执行完后或一个disable语句执行时,程序流程控制跳出该程序块。

并行块的格式如下:

fork

语句1;

语句2;

.......

语句n;

join

其中:

•        块名即标识该块的一个名字,相当于一个标识符。

•        块内说明语句可以是参数说明语句、reg型变量声明语句、integer型变量声明语句、real型变量声明语句、time型变量声明语句、事件(event)说明语句。

在fork_join块内,各条语句不必按顺序给出,因此在并行块里,各条语句在前还是在后是无关紧要的。

8.易错:

注意指定wire或者reg数组数!!!

9.数组定义顺序

[0:6]~=[6:0]区别注意

10.不等于 !=

11.output是属于wire型的,只能用于组合逻辑,你此处用于时序逻辑应该同时声明为reg型,如下:output reg [7:0] dout

12.this signal is connected to multiple drivers

错误原因: wire型变量赋初值

此类错误系将某同一个reg变量在多个个always块中进行了赋值操作,此类程序是不可综合的,因此须修改程序。

切记,对于同一个reg型变量只能在一个always块中对其值进行修改,当然在其它块中可以引用其值!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容

  • 喜欢中餐厅不知道为什么,就是喜欢,喜欢那么真实的薇姐、晓明哥。喜欢亮哥那些接地气的每一道菜,看完以后觉得做菜是一件...
    丫头yuer阅读 322评论 1 2
  • 楔子 繁华功名千般好,不如青灯木鱼声。 梵音渺渺超度恶,唯有心田诞莲花。 慢步走在寺院的青石...
    霓裳舞海棠阅读 642评论 0 3
  • 01“十年磨一剑”是在生活中经常提到的一句短语,意思是,做事追求完美,精益求精。但对于产品或者写作而言,“十年磨一...
    WildeYoung阅读 257评论 0 0