verilog语言简述

verilog语言简述

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

C语言与Verilog的最大区别

  1. 互连:在硬件系统中,互连可以将实现模块间的连接,而C语言中并没有这样的变量。Verilog的wire型变量配合一些驱动结构能有效地描述出网线地互连
  2. 并发:C语言天生是串行的,不能描述硬件之间的并发特性,C语言编译后,其机器指令在CPU的高速缓冲队列中基本是顺序执行的;而Verilog可以有效地描述并行地硬件系统。
  3. 时间:运行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的设计步骤

  1. 系统与功能模块定义(系统与功能模块描级)
  2. 行为级描述测试激励
  3. 寄存器传输级
  4. 对RTL级描述进行功能仿真
  5. 逻辑综合(使用RTL级EDA工具)
  6. 门级
  7. 综合后门级仿真
  8. 布局规划与布局布线
  9. 布局布线后的时序仿真与验证
posted @   习惯科夫  阅读(3022)  评论(0编辑  收藏  举报
编辑推荐:
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.