2016 - 2024

感恩一路有你

quartus ii 时序仿真中如何改变 总结数字电路设计的一般方法?

浏览量:2716 时间:2023-05-08 19:42:00 作者:采采

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

我依附西北工业大学计算机学院微电子学研究所,现在是微电子学研究所的研一学生,专业方向是数字集成电路设计。在研一上学期,进一步手中掌握了数字集成电路后端综合类设计方法,本篇学术素养课程报告比较多再讨论在基于后端流程时的方法、经验、这些相关的感悟。

根据我的观察,软件工程师的需求量和硬件工程师的需求量是10:1,也就是说硬件工程师需求量远大于软件工程师,硬件工程师中又可分模拟和数字两大类,设计模拟集成电路设计主要除了ADC、DAC、PLL等,数字集成电路设计则更比较擅长于基于某种特定功能的芯片,如CPU、GPU、MCU、MPU、DSP等。

实际上,发展起来到现阶段,数字集成电路的设计方法早在EDA工具的帮助之下相当不同于软件开发了,是是的数字集成电路开发就像为以下步骤:

1、参照需求,自顶向下设计电路模块,比较明确该数字系统要基于什么功能,再具体看细分到各个功能模块。此时的设计图形式一般为模块框图,建议使用visio或其他绘图软件实现方法。这个环节相对于游兵散勇,但非常,而且参照产品需求电脑设计大的模块和指标时,需要要结合实际情况,否则到后期会奇遇无限次返工甚至于根本无法达到提前预定指标。好象由德高望众,比较有经验的工程师参与总体设计。

2、定义好各个模块之后,接下来应该是详细实现方法各个模块的功能。毕竟硬件描述语言的存在,我们可以很轻而易举的通过硬件描述语言来“写”出模块的利用方法,在本次实验中,我建议使用的是VerilogHDL。具体详细代码的复杂程度和模块的复杂程度或者,我在这一次实验中按结构的是“八位格雷码计数器”电路设计。

3、能够完成“八位格雷码计数器”的Verilog代码后,不需要对该设计进行“前仿真”。所谓前仿真,比较多是就是为了修改密保代码是否需要具体描述真确,如何确定能够利用了所具体规划的功能。象不使用modelsim软件并且仿真模型,仿真模型成功进入下一阶段,不最终则要直接返回修改代码。

4、前仿真成功了后,巳经有了功能错误的的Verilog设计代码,此时是可以将代码上网下载到FPGA板上参与验证验证(Quartus,JTAG),验证最终则其他证明此设计正确的无误。是对某些集成度要求不高且时间非常紧张的数字电路设计项目,也可以就不使用FPGA来实现程序芯片功能。很显然,FPGA这种通用器件是不能不能不满足高独立显卡、极低功耗、专用性高ASIC设计需求的,不能主要是用于相对简单和粗犷的设计。

5、接下来的事情直接进入后端流程。过了一会儿不需要专用的服务器和价格高昂的EDA工具支持。这也是为啥硬件的设计初学者可能比较难的原因之一,假如一个也没外界过软件编程的有志青年立志做软件工程,象一台电脑,一本书就够啦,至少再买个正版编译器(VS,Eclipse,DW等),但再做硬件电路设计,一台电脑一本书至少画画PCB。再做最核心的部分,要在用功能强大的服务器和价格普通的东西的EDA工具,是因为特殊的PC电脑沉重的负担不起“后端看专业”的工作需求。并且大量linux下的复杂操作也会使人望而止步。

6、准备好好后端平台后,就是可以将“八位格雷码计数器”扔到平台里,过了一会儿马上必须考虑的问题是使用什么元件库这些什么工艺?因为同时一个与非门,相同元件库有差别利用细节,MOS管细节可能都大相庭径,另外还得决定工艺,这些工艺的文件不知从何而来于具体厂家(TSMC,CSMS等),这也个人难以做后端的原因之一——而且你全都不可能以自己的名义向台积电商量商量工艺库文件,虽说作为一个涉世未深,无钱无术的初学者,你是根本无法自信积极的和人数上万、资金上亿的工艺厂签订合同的。经经过挑选筛选后(更多情况下是没得选),考虑你想建议使用的工艺。在本次实验中,我在用的是实验室学长改良过的元件库,在内TSMC0.18um工艺,EDA工具为Cadence IC 614。 7、当经过一系列配置之后,“八位格雷码计数器”巳经蓝月帝国了个庞大的工程文件,我个人建议区分TCL脚本文件并且配置。接着就也可以接受RTL级综合考。所谓RTL级看专业,实际上是指将Verilog代码“改写本”为综合工具(我可以使用的是Encounter)所能能识别的Verilog代码。通俗点的讲,这个不同于将“文言文”翻译为“白话文”,也类似C语言中的“编译”,将要初级语言翻译为汇编代码。不过,理论上可以不真接写一段RTL级代码,但这就和再写汇编语言一样的,复杂程度非同一般。

8、RTL级综合类能完成后,下一步将RTL Verilog导入Encounter并且唯一的后端综合考。导入RTL代码后,还必须只能说明标准单元库的LEF文件,并定义电源和地的线名。此时不需要一个MMMCconfig配置,流程繁冗,主要是配置相关文件和器件状态(TT、SS、FF等)。

9、能完成导入配置,接下来的事情是芯片布局设计,即Floorplan。Floorplan要设置中一些基础参数,如芯片的长宽(面积),丢给管脚的空间,芯片利用率等。长宽比个人建议为0.2-5,奇怪电路利用率0.85,就像电路利用率0.90,电路利用率0.95。

10、POWER计算,得以为依据重新布置电源线路,通常为ring和stripe。例如,某数字电路芯片功耗为55mW,增强冗余量到2倍左右,设计为100mW,通过1.8V供电,电流约为60mA,也就是总电源线为60u,如果不是每条线10u,则六条电源线,左右两侧各一条,中间四条。Encounter中有拿来的布线配置器。网线布线之后,是可以先Apply,后再已撤销反复接触。

11、再布置IO管脚。如果延后没有导入IO,可以不重新导入(TCL),也这个可以自身调整。

12、Pre-Place,因为Verilog中一般说来有很多的module,每个module对应一个布局模块,布局时应注意一点一些布局原则。布局时象按照最简单拖拽就是可以。“八位格雷码计数器”只不过只有一一个module,因此不不需要复杂的布局。

13、布局是一个不时改和改进的过程,Pre-Place之后进行Place,之后接受之后Post-Place。Place之后,不需要通过时钟树看专业(CTS),时钟树偏文科类的目的是为了让每个信号都在约束的时间内传输数据到下一个时序单元,否则不会对芯片的主频产生影响(主频是在设计前就定下来的指标),后再在Post-CTS对不条件符合时钟约束的部分并且布线调整。

14、布局之后通过电源布线,即Route,对于特殊还电源布线需要并且SRoute,然后接受Post-Place,这些步骤某种程度上也是“点按钮”和“配参数”,但后端综合考时你必须有完全清醒的头脑,可以明白为么要点这些按钮,包括该配置什么参数。

15、布局布线在三次不断迭代,IO管脚配置好后,是可以Fill全图,用各层金属覆盖未建议使用的区域。单个“八位格雷码计数器”只不过结构简单,芯片未瞬间覆盖区域较小。

16、而今,Encounter内的后端综合就能完成了,也可以文件导入(export)成GDSII格式的网表,以及是为做DRC,LVS检查,也要“Netlist”成schematic(电路原理图)的格式。

17,将后端综合类的GDSII文件导出(Streamoutside)到Virtuoso里。Virtuoso是另一个作用于仿真的集成电路设计的软件。将GDSII文件文件导入该软件要注意有两个目的,一是这个可以在Virtuoso里做“后仿真”,验证经后端综合的一系列流程之后,概念芯片是否是能不满足设计需求,此时的仿真就早确定到了延时,电阻,功耗等不好算存在的主要问题,如果不是仿真时出现了问题,需要参与返工直接修改,用处时要新的fpga设计。当“后仿真”后,还得对该芯片进行DRC和LVS检查,DRC是查找是否柯西-黎曼方程所选工艺的要求,毕竟在求实际情况下,一些理论上的值是不不是现实的,例如过细的线无法生产出来,栅极间的距离过短可能会会造成电路短路,导线和各金属层之间的电容会影响大电路功能等。LVS是都很layout和Schematic之间的拓扑关系是否不一致。二是也可以方便啊以后做数模混合芯片设计时通过水的混合物设计,只不过模拟集成电路的是再在Virtuoso中参与的,两者之后结合在一起,就这个可以进行数模混合集成电路设计。

18、接受完检查之后,就这个可以与工艺提供厂家直接联系接受加工了,如TSMC。好象加工是需要跟着企业的业务流程。一共当经过1月左右,芯片加工能完成,然后直接进入测什么环节。焊接工艺,试验,验正芯片指标,和提出加以改进方案。

到此,一个数字集成电路从概念到实物的整个流程就成功了,每踏都愿意去研究和慢慢回味,从二四译码器到奇怪的CPU,其流程是基本上一般的。经由研一上一个学期的学习,我也基本上完全掌握了这个流程。以后会极其努力的在本专业方向继续前进,培养和训练核心竞争力。

在DSPbuilder设计中怎么使用外部的VHDL/VerilogHDL代码?

DSPBuilder是可以把simulink中的模块转换成VHDL,Altera与Matlab有个接口,安装DSPBuilder后,simulink的library中会出现或则的toolbox,唯有该toolbox中的模块这个可以转换的成VHDL。

你可以不在simulink中搭建中整个信号处理系统,仿真设计顺利后,除输入和输出信号外,系统的其他部分都可以不转换成成VHDL。

之后是可以在Quartus中对其进行功能或时序仿真,并直接下载到目标板

设计 芯片 模块 文件 功能

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