数字设计方法概论
1、设计方法简介
基于语言的设计:1、不依赖于工艺,设计易移植;
2、便于管理,可以重用,缩短开发周期
3、对于电路的设计可以自动的综合和优化。
以下为基于ASIC的IC设计流程:
1.1 设计规格
设计规格书的内容:功能、时序、硅片面积、功耗、可测试性、故障覆盖率以及其他指导设计的相关准则。
1.2 设计划分
把大型电路划分为一个有多个相互关联的功能单元模块所组成的系统结构,其中每一个功能单元都能够具有描述其功能的行为模型,这种方法通常被称为自顶向下(top-down design)或层次化(hierarchical design)的设计方法。
1.3 设计输入
设计输入时先形成一个基于语言描述的设计,并将其以电子格式的方式存储再计算机中。verilog描述很容易进行编写、修改和替换,因而方便探索电路采用不同的实现结构。此外,综合工具本身也会自动查找具有相同功能的其他实现形式,并能产生描述改设计属性的报告文件。
主要描述方法:行为建模。
行为建模:描述电路的输入/输出模型,而不必关注其物理层和门级的实现细节。
行为建模的步骤:
(1)快速创建一个设计的行为级原型电路(而不受硬件实现细节的制约)
(2)验证其功能特性;
(3)利用一种综合工具对设计进行优化,并将设计转换成某种物理工艺。
行为建模的优点:
(1)通过综合完成一个能兼顾面积限制和时序约束的设计。
(2)行为建模还可将一个工程的各个单元在不同的抽象级别上进行仿真,提高了设计的灵活性。
1.4仿真与功能验证
仿真与功能验证分为三步:
拟定测试方案:确定测试的功能特性和如何进行测试。其内容应指定激励发生器、响应检监测器、判断被测模型的响应所需的有价值的参考依据。
建立测试平台:图形显示器以及响应监测器。
测试执行和模型验证:找出设计中的错误所在、确定描述语法的正确性、检验习惯用法、为后续的综合工作消除障碍。模型验证要求系统的彻底的展现出该模型的行为级的验证实例。
1.5设计整合与验证
将多个子功能模块进行整合,最后对其功能进行验证,此时需要重新设计针对于整个系统的testbench,对整个模块输入激励,监测穿越模块的总线,以及各个状态机的工作情况。
1.6 预综合完成
功能验证完毕,与设计无偏差时即完成了预综合。
1.7门级综合与工艺映射
综合工具去除冗余逻辑,实现设计速度的基础上追求最小的面积,并且生成单元网表或者时目标FPGA的数据库文件。
1.8后综合设计确认
将已经综合的门级描述的响应与综合之前的行为模型响应进行对比。
1.9后综合时序验证
检查电路的时序边界,验证关键信号上的通路是否能够达到要求。
1.10测试生成与故障模拟
测试:检验由于制造加工引起。
故障模拟:测试一组向量是否能够检测出一组故障向量。研究是否能够通过测试来检验出制造出的芯片工作与否。
1.11 布局与布线
将设计单元适当的放置在晶片内,并链接信号通路。此过程中也可插入时钟树和扫描链。
1.12 物理和电气设计规则检查
物理布图: 检查线宽、交叠、间隔等约束是否满足要求。
电气规则检查:扇出约束是否满足,信号完整性是否没有被电气串扰和电源栅压降所破坏。噪声电路检查判断电平瞬变特性是否存在问题,模拟分析功率耗散,以便确认芯片产生热量不会对电路造成破坏。
1.13 寄生参量
通过软件工具提取寄生电容来对电路的电气特性和时序性能进行更精确的分析。
1.14 设计完成
可以用来制造集成电路的掩膜集已经具备了。
2. IC工艺选择
(1)高性能电路的全定制版图;
(2)标准单元结构;
(3)门阵列(现场可编程或掩膜可编程),