首页 > 其他分享 >【读书笔记】《Verilog HDL数字设计与综合(第二版 本科教学版)》第一章:Verilog HDL数字设计综述

【读书笔记】《Verilog HDL数字设计与综合(第二版 本科教学版)》第一章:Verilog HDL数字设计综述

时间:2022-11-12 23:34:12浏览次数:42  
标签:读书笔记 RTL 电路 Verilog 设计 HDL 描述

一、数字电路CAD技术的发展历史

真空管

晶体管,

集成电路(Integrated Circuit, IC)

小规模集成电路(Small Scale Integrated, SSI):逻辑门数量很少

中规模集成电路(Medium Scale Integrated, MSI):单个芯片布置上百个逻辑门

  电子设计自动化(Electronic Design Automation, EDA)

大规模集成电路(Large Scale Integrated, LSI):单个芯片布置数千个逻辑门

  手工完成电路版图设计,在面包板上完成逻辑仿真。

超大规模集成电路(Very Large Scale Integrated, VLSI):单片集成超过10万个晶体管

  计算机辅助电路验证;用计算机进行电路版图的布局布线;计算机图形终端进行门级设计;模块化设计,从底层到高层,最终完成顶层设计。

二、硬件描述语言的出现

硬件描述语言(Hardware Description Language, HDL)

80年代后,逻辑综合工具发展,设计者可使用HDL在寄存器传输级(Register Transfer Level, RTL)对电路进行描述。

使用硬件描述语言来描述电路的功能和数据的流向,由逻辑及综合工具自动综合出由逻辑门及其互相连接构成的电路结构细节。

HDL在系统设计中的应用:仿真电路板、互联总线、现场可编程逻辑门阵列(Field Programmable Gate Arrays, FPGA)以及可编程阵列逻辑(Programmable Array Logic, PAL)等。通常,使用HDL单独设计每个芯片,然后通过仿真来验证整个系统的功能

三、典型设计流程

 

设计重点:手工对RTL描述的优化。

设计者只需在非常抽象的层次使用HDL对电路的算法进行描述,然后再EDA工具的帮助下完成从行为级描述道最终芯片结构的转换。

四、硬件描述语言的意义

通过使用硬件描述语言(HDL):

(1)设计者可在非常抽象的层次上对电路进行描述

在RTL级进行电路描述而不必选择特定的制造工艺,逻辑综合工具可将设计转换为任意工艺的版图(门级网表),出现新工艺也只需要进行转换即可。

(2)可在设计周期的早期对电路的功能进行验证

易于对RTL描述进行优化和修改,在电路设计的早期发现和排除绝大多数设计错误。

(3)类似于计算编程,带有文字注释的源程序便于开发与修改

五、Verilog HDL的优点

Verilog HDL是一种通用的硬件描述语言,语法与C语言类似

Verilog HDL允许在同一个电路模型内进行不同抽象层次的描述(开关级、门级、RTL级、行为级,等等);

编程语言接口(Programming Language Interface, PLI)是Verilog语言最重要的特性之一,它使得设计者可以通过自己编写C代码来访问Verilog内部的数据结构。可根据自己需要使用PLI配置Verilog仿真器。

六、硬件描述语言的发展趋势

随着数字电路速度和复杂性提升,最好能从更高的抽象层次对电路进行描述(只需从功能角度进行设计,由EDA工具完成具体实现细节)。

逻辑综合工具:从RTL描述生成门级网表(RTL级设计是基于HDL的主流设计方式)。

行为级综合工具:直接对电路的算法和行为进行描述,由EDA工具再各设计阶段进行转换和优化(尚未被业界广泛采用)。

形式验证断言检查formal verification and assertion checking):使用形式化的数学方法来验证Verilog HDL描述的正确性,并对RTL描述与综合后得到的门级网表电路行为的等价性进行检查。

断言检查允许将检查规则嵌入RTL描述中。

用Verilog HDL进行设计描述的需求将不会消失:对于像处理器这样的超高速、对时序有着严格要求的电路来说,逻辑综合工具生成的门级网表并不是优化的。此时需要直接在RTL描述中嵌入门级描述,以达到优化的效果

 

 

 

标签:读书笔记,RTL,电路,Verilog,设计,HDL,描述
From: https://www.cnblogs.com/steven913/p/16884872.html

相关文章

  • Head First Java 读书笔记
    第13章:Swing什么是Swing组件?组件(Component),也称作元件。它们就是那些放在界面上与用户进行交互的东西,如Button/List等。事实上,这些GUI组件,都来自于java.swing.JC......
  • Head First Java 读书笔记 14章
    第14章:序列化与文件的输入输出对象可以被序列化,也可以展开。对象有状态和行为两种属性,行为存在于类中,而状态存在于个别的对象中。本章将讨论以下两种选项:1.如果只有自己......
  • 《码出高效》Chapter2面向对象-读书笔记
    《码出高效Java开发手册》第2章面向对象OOP理念抽象封装继承多态抽象是程序员的核心素质之一,体现在对业务的建模能力,以及对架构的宏观掌控力。抽象是OO思想......
  • 【《硬件架构的艺术》读书笔记】01 亚稳态的世界
    听说这本书对数字IC设计中的常见问题讲的非常清楚易懂,看了目录感觉确实都是数字设计中一些关键问题,而且一共才217页,争取这个月看完吧。书的PDF资源:链接:https://pan.baidu......
  • 程序员的修炼之道:从小工到专家 读书笔记五
    第五章 弯曲或折断解耦与得墨忒(tei)耳法则1、把你的代码组织成最小单位(模块),并限制他们之间的交互。如果随后必须替换某个模块,其他模块仍能够继续工作。2、应使耦合减至......
  • 《Go 语言并发之道》读书笔记(一)
    已经把《Go语言并发之道》通读了一遍,非常不错的一本书,对于理解掌握Go语言的并发知识有很大的帮助,接下来我会把书中有用的知识通过代码示例出来,把一些比较好的知识点记录下......
  • Head First Java 读书笔记
    第11章:异常处理如果你把有风险的程序代码包含在try/catch块中,那么编译器会放心很多。try/catch块会告诉编译器你确实知道所调用的方法会有风险,并且也已经准备好要处理......
  • [转载学习] Verilog-SystemVerilog中的force和release语法
    Verilog-SystemVerilog中的force和release语法本文属于转载,版权属于原博主—狮子座硅农(LeoICer)&星星在人间,博客原地址https://blog.csdn.net/qianniuwei321/article/de......
  • 《代码大全》读书笔记1
    之所以阅读这本书,是想在阅读风格较为轻松的《程序员修炼之道》之后阅读一本更细致、更严肃的“进阶”读物。  *第一部分打好基础 第一章欢迎进入软件构建的世界......
  • 《代码大全2》读书笔记2
    第五章软件构建中的设计 > 设计的限制:设计是一个“险恶”的问题:只有通过解决或至少部分解决,才能明确地定义它。设计中会有很多错误和修正的过程。设计有诸多限制,要......