无名 发表于 2022-5-8 17:02:43

【LSP】verilog语言简述


verilog语言简述
?        verilog是硬件描述语言,并不是单纯的“敲代码”。

C语言与Verilog的最大区别
互连:在硬件系统中,互连可以将实现模块间的连接,而C语言中并没有这样的变量。Verilog的wire型变量配合一些驱动结构能有效地描述出网线地互连
并发:C语言天生是串行的,不能描述硬件之间的并发特性,C语言编译后,其机器指令在CPU的高速缓冲队列中基本是顺序执行的;而Verilog可以有效地描述并行地硬件系统。
时间:运行C 程序时,没有一个严格的时间概念,程序运行时间的长短主要取决于处理器本身的性能;而Verilog 语言本身定义了绝对和相对的时间度量,在仿真时可以通过时间度量与周期关系描述信号之间的时间关系。
HDL语言的本质
?Verilog 作为硬件描述语言,它的本质作用在于描述硬件。Verilog 虽然采用了C 语言的形式,但是它的最终描述结果是芯片内部的实际电路。所以评判一段HDL 代码优劣的最终标准是其描述并实现的硬件电路的性能(包括面积和速度两个方面 )。

?使用HDL 语言可以从算法、系统级(System Level) 、功能模块级(Function Model Level) 、行为级(Behavior Level) 、寄存器传输级( RTL , Register Transfer Level) 、门级(Gate Level) 和开关级(Switch Level) 等不同层次描述数字电路系统,然后通过EDA 工具综合、仿真并实现该系统。可以说HDL 语言的出现是数字系统设计方法的一个重大飞跃。

?Verliog语言不能仅仅在行为级上实现,也就是功能实现;写verilog必须考虑到实际的实现,也就是要在寄存器传输级去思考,这一级是是行为级的更低一级,需要考虑时延,芯片面积,功耗等方面问题,也就是脑子里要先有电路,再有verilog。也就是不仅仅在应用实现就行,需要更底层的思维。笔者在这方面也放过错误。

基于HDL的设计步骤
系统与功能模块定义(系统与功能模块描级)
行为级描述测试激励
寄存器传输级
对RTL级描述进行功能仿真
逻辑综合(使用RTL级EDA工具)
门级
综合后门级仿真
布局规划与布局布线
布局布线后的时序仿真与验证http://cdn.u1.huluxia.com/g4/M01/65/7D/rBAAdl91SiSAeLa4AACt4WdlvYs130.jpg
页: [1]
查看完整版本: 【LSP】verilog语言简述