2016 - 2024

感恩一路有你

verilog零基础教程 可编程硬件描述语言主要包括哪俩种?

浏览量:2328 时间:2023-07-08 15:33:02 作者:采采

可编程硬件描述语言主要包括哪俩种?

硬件描述语言概述随着半导体技术的发展,数字电路已经从中小型集成电路发展到可编程逻辑器件(PLD)和专用集成电路(ASIC)。数字电路的设计方法也发生了变化,从传统的手工转变为使用EDA工具作为设计平台的。随着EDA技术的发展,用硬件语言设计PLD/FPGA已经成为一种趋势。目前主要的硬件描述语言有VHDL和Verilog HD。硬件描述语言概述。;利用硬件描述语言与原理图输入法的关系硬件描述语言的发展过程硬件描述语言概述随着半导体技术的发展,数字电路从中小型集成电路发展到可编程逻辑器件(PLD)和专用集成电路(ASIC)。数字电路的设计方法也发生了变化,从传统的手工转变为使用EDA工具作为设计平台的。随着EDA技术的发展,用硬件语言设计PLD/已经成为一种趋势。目前主要的硬件描述语言是Verilog HDL。VHDL开发较早,语法比较严格,而Verilog HDL是在C语言基础上开发的硬件描述语言,语法比较自由。与verilog HDL相比,VHDL 的写作规则比Verilog 但是Verilog 的免费语法也很容易让少数初学者犯错误。国外很多电子专业在本科阶段会教VHDL,研究生阶段会教verilog。从国内来看,VHDL的参考书比较多,很容易找到资料,而Verilog HDL的参考书相对较少,给学习Verilog HDL带来一些困难。从EDA技术的发展来看,出现了用于CPLD/FPGA设计的硬件C语言编译软件。虽然还不成熟,很少使用,但可能成为继VHDL和Verilog之后,设计大规模CPLD/FPGA的又一手段。硬件描述语言用途HDL有两个用途:系统仿真和硬件实现。如果程序只用于模拟,那么几乎所有的语法和编程方法都可以使用。但是如果我们的程序是用于硬件实现的(比如用于FPGA设计),那么就必须保证程序。

总结数字电路设计的一般方法?

我来自西北工业大学计算机学院微电子研究所。现在我是微电子学院一年级的学生。我的专业是数字集成电路设计。研究生一上学期,掌握了数字集成电路后端综合设计方法。本学术素养课程报告主要探讨了实现后端过程中的方法、经验和相关感悟。

一般来说,软件工程师和硬件工程师的需求需求是10:1,说明硬件工程师的需求远远小于软件工程师。硬件工程师分为模拟和数字。模拟集成电路设计主要包括ADC、DAC、PLL等。,而数字集成电路设计更倾向于实现特定功能的芯片,如CPU、GPU、MCU、MPU、DSP等。

事实上,在这个阶段,数字集成电路的设计方法已经非常类似于借助EDA工具进行软件开发。典型的数字集成电路开发一般包括以下步骤:

1.根据需求,自上而下设计电路模块,明确数字系统需要实现哪些功能,再细分成各个功能模块。这时候的设计形式一般是框图,用visio或者其他绘图软件实现。这个环节虽然松散,但是很重要,因为在根据需求设计大模块和指标的时候,一定要结合实际情况,否则后期会经过无限的返工,甚至达不到预定的指标。一般由德高望重、经验丰富的工程师进行整体设计。

2.定义好每个模块之后,接下来就是实现每个模块的功能。由于硬件描述语言的存在,我们可以很容易地 "写作与写作通过硬件描述语言的模块实现方法。在这个实验中,我使用了Verilog HDL。特定代码的复杂性与模块的复杂性有关。在这个实验中,我采用了 "八位格雷码计数器 "。

3.在完成了 "八位格雷码计数器 ",有必要 "预模拟和模拟设计。所谓预仿真,主要是验证代码描述是否正确,计划的功能是否真正实现。一般使用modelsim软件进行仿真。如果模拟成功,将进入下一阶段。如果不成功,它将需要返回到修改后的代码。

4.预仿真成功后,即可得到功能正确的Verilog设计代码。此时可以将代码下载到FPGA板上进行验证(JTAG Quartus),证明设计是正确的。对于一些集成度要求不高,时间非常紧的数字电路设计项目,可以直接用FPGA实现芯片功能。显然,FPGA这种通用器件可以 不能满足ASIC高集成度、低功耗、高专用性的设计要求,只能用于相对简单粗糙的设计。

5.接下来,进入后端流程。这时候就需要专门的服务器和昂贵的EDA工具。这也是硬件设计入门难的原因之一。如果一个没有接触过软件编程的有志青年立志做软件工程,一般一台电脑一本书就够了,最多买个正版编译器(VS,Eclipse,DW等。),但是做硬件电路设计,一台电脑一本书最多能画PCB。要成为核心部分,必须使用强大的服务器和昂贵的EDA工具,因为普通的个人电脑可以 买不起 "后端集成 "。而且linux下大量复杂的操作会让人望而却步。

6.在后端平台准备好之后,您可以将 "八位格雷码计数器 "进了站台。这时候应该马上考虑什么组件库和流程?因为同一个与非门,不同的元件库有不同的实现细节,MOS管的细节可能差别很大。另外,一定要考虑流程。这些工艺文件来自相关制造商(TSMC、CSMS等)。),这也是个人能够 不要做后台——因为你几乎不可能以自己的名义与TSMC讨论工艺库文件。毕竟,作为一个没有经验,没有钱和技能的初学者,你可以 不自信,有几万人。仔细筛选后(很多情况下没得选),确定你要用的流程。在这个实验中,我使用了我的高级实验室改进的组件库和TSMC 0.18um技术,EDA工具是Cadence IC 614。

7.经过一系列的配置后, "八位格雷码计数器 "已经变成了一个巨大的工程文件。我建议使用TCL脚本文件进行配置。然后可以进行RTL级合成。所谓RTL级合成其实指的是 "重写 "Verilog代码转换成可以被合成工具识别的Verilog代码(我用的是Encounter)。一般来说,这类似于翻译 "古典文学与艺术进入 "白话文与汉语和 "编译与编辑在C语言中,就是把一种高级语言翻译成汇编代码。当然,理论上可以直接写RTL级的代码,但是和直接写汇编语言一样复杂。

8.RTL级合成完成后,将RTL Verilog导入到Encounter中进行真正的后端合成。导入RTL码后,还需要解释标准单元库的LEF文件,定义电源和地的线名。这时候就需要一个MMMC config配置,过程比较复杂,主要是配置相关文件和设备状态(TT、ss、FF等。).

9.完成导入配置,然后是芯片版图设计,即布图。Floorplan需要设置一些基本的参数,比如芯片的长宽(面积),引脚留的空间,芯片利用率等等。长宽比建议为0.2-5,复杂电路利用率为0.85,一般电路为0.90,简单电路为0.95。

10.电力计算,电力线路排列的依据,主要为环形和条形。比如数字电路芯片功耗55mW,冗余增加到2倍左右。设计为100mW,电源为1.8V,电流约为60mA,即总供电线路为60 U,如果每条线路为10u,则有六条供电线路,每侧一条,中间四条。遭遇有一个特殊的接线配置器。接线后,可以先申请,再取消重复尝试。

11.排列IO引脚。如果没有提前导入IO,可以重新导入(TCL)或者自行调整。

12.前置,因为Verilog中往往有很多模块,每个模块对应一个布局模块。布局时要注意一些布局原则。布局一般可以通过简单的拖动来完成。 "八位格雷码计数器 "只有一个模块,所以它不 不需要复杂的布局。

13.布局是一个不断修改和改进的过程。放置是在前置后进行,然后是后置。布局之后,需要时钟树综合(CTS)。时钟树综合的目的是使每个信号在约束时间内传输到下一个顺序单元,否则会影响芯片的主频(主频是设计前确定的指标),然后在Post-CTS中调整不满足时钟约束的部分的布线。

14.布局后路由,即路由。特殊走线,需要先走线,再后置。这些步骤在某种程度上是 "点击按钮 "和 "配置参数,但是后端合成一定要头脑清醒,知道为什么要点击这些按钮,要配置什么参数。

15.经过多次迭代,配置好IO引脚后,就可以填充整张图片,用各种金属层覆盖不用的区域。单人 "八位格雷码计数器 "由于其结构简单而具有较大的未覆盖面积。

16.至此,Encounter中的后端综合已经完成,网表可以导出为GDSII格式,为了检查DRC和LVS,还需要 "网表 "转换成示意图格式。

17.将后端集成的GDSII文件导入Virtuoso。Virtuoso是一款模拟集成电路设计软件。将GDSII文件导入该软件有两个主要目的。首先,你可以做 "后期模拟与设计在Virtuoso中验证概念芯片经过后端综合的一系列流程后是否能达到设计要求。此时仿真已经考虑到了延迟、电阻、功耗等实际问题。如果仿真有问题,需要返工修改,必要时重新布线。在 "后期模拟与设计通过后,芯片应由刚果共和国和LVS检查。DRC是看是否符合所选工艺的要求,因为在实际情况下,有些理论值是不现实的,比如太细的导线无法制作,栅极间距过短可能导致短路,导线与各种金属层之间的电容会影响电路功能。LVS是比较布局和图式。C之间的拓扑关系是否不一致。第二,以后设计数模混合芯片时便于混合设计,因为模拟集成电路直接在Virtuoso中进行,最后可以将两者结合起来设计数模混合集成电路。

18.检验后,您可以联系工艺供应商进行加工,如TSMC。一般处理需要跟上企业的业务流程。大约一个月后,芯片加工完毕,然后进入测试阶段。焊接,测试,验证芯片指标,提出改进方案。

至此,一个数字集成电路从概念到实物的全过程已经完成,每一步都值得研究和回味。从24解码器到复杂的CPU,过程基本相同。一个学期后的学习,我基本掌握了这个流程。未来我们会更加努力,在这个专业上继续前进,培养核心竞争力。

设计 芯片 硬件 集成电路 文件

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。