verilog和c语言注释,Verilog HDL | 简介与基本语法

本文介绍了Verilog HDL的基础知识,它是一种类C语言,用于硬件设计。Verilog代码通过综合转化为硬件实现,具有并行执行特点和高可复用性。文章讲解了Verilog的基本语法,包括模块定义、输入输出、参数、时序逻辑和组合逻辑的描述,以及赋值语句、条件语句、循环语句和结构语句的使用,强调了非阻塞赋值在时序逻辑中的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

致谢:本笔记基于龚黎明的系列讲解视频。

1 Verilog简介(Verilog语法学习者可跳过该节)

Verilog是一门类C语言

Verilog是一门类C语言,语法与C接近,但Verilog是硬件设计语言,与C实质不同。

Verilog代码对应硬件实体。比如在Verilog里写的a+b,最后会得到由硬件实现的加法器

Verilog代码到硬件的过程叫综合。综合就是将Verilog代码转化为硬件实现

Verilog并行执行

HDL: Hardware Description Language

9c3515d4d1da

Verilog HDL使硬件设计师们得以专注于逻辑,而不需要考虑硬件层面的实现。同样的代码只要经过不同的库综合,就可以在不同的硬件上运行。因此Verilog的代码具有极高的可复用性。

9c3515d4d1da

使用Verilog的绝大多数开发都处于寄存器传输级。

软核、固核与硬核

软核(Softcore):功能经过验证的、可综合的、实现后电路结构总门数在5000门以上的Verilog HDL模型。

固核:在某一种现场可编程门阵列(FPGA)器件上实现的,经验证是正确的总门数在5000以上的电路结构编码文件。

硬核:在某一种专用的半导体集成工艺(ASIC)的器件上实现的,经验证是正确的总门数在5000以上的电路结构掩膜

显然,在具体实现手段和工艺技术尚未确定的逻辑设计阶段,软核具有最大的灵活性。因此,发展软核的设计和推广软核的重用技术是非常有必要的。

自顶向下(Top-Down)设计

9c3515d4d1da

(对上图的讲解:P2 | 2:55)

2 Verilog基本语法

Verilog语法概述

行为级描述/寄存器传输级(RTL)描述/系统级描述:把module当成黑盒,描述module输入与输出的关系。门级实现由综合工具推断,常常能做到最优。

结构级描述/门级描述:把module作为白盒,而描述组成module的门电路(部件)

module (in1, in2, ..., out1, out2)

input in1, in2, ...;

output out1, out2, ...;

...

endmodule

// 注释1

/* 注释2 */

基本语法

Verilog区分大小写

Verilog的关键字都是小写

module, endmodule定义一个基本模块,两个关键字间的语句是对该模块的描述。定义模块方便复用。

parameter关键字定义一个参数,增强模块的通用性

output, input关键字指定输入输出

always @(posedge/negedge clk)语句,每当clk出现上升/下降沿时,就执行接下来的语句块(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值