ASIC开发设计流程
1. 使用语言:VHDL/verilog HDL
2. 各阶段典型软件介绍:
a) 输入工具: Summit Summit 公司
b) 仿真工具: VCS, VSS Synopsys 公司
c) 综合器: DesignCompile, BC Compile Synopsys 公司
d) 布局布线工具: Dracula, Diva Cadence 公司
e) 静态时序分析: Prime Time Synopsys 公司
f) 测试: DFT Compile Synopsys 公司
3. 流程第一阶段:项目策划
形成项目任务书(项目进度,周期管理等)。流程:【市场需求–调研–可行性研究–论证–决策–任务书】。
4. 第二阶段:总体设计
确定设计对象和目标,进一步明确芯片功能、内外部性能要求,参数指标,论证各种可行方案,选择最佳方式,加工厂家,工艺水准。流程:【需求分析–系统方案–系统设计–系统仿真】。
5. 第三阶段: 详细设计和可测性设计
分功能确定各个模块算法的实现结构,确定设计所需的资源按芯片的要求,速度,功耗,带宽,增益,噪声,负载能力,工作温度等和时间,成本,效益要求选择加工厂家,实现方式,(全定制,半定制,ASIC,FPGA等);可测性设计与时序 分析可在详细设计中一次综合获得,可测性设计常依据需要采用FullScan,PartScan等方式,可测性设计包括带扫描链的逻辑单元,ATPG,以及边界扫描电路BoundScan,测试Memory的BIST。流程:【逻辑设计–子功能分解–详细时序框图–分块逻辑仿真–电路设计(算法的行为级,RTL级描述)–功能仿真–综合(加时序约束和设计库)–电路网表–网表仿真】。
6. 第四阶段:时序验证与版图设计
静态时序分析从整个电路中提取出所有时序路径,然后通过计算信号沿在路径上的延迟传播,找出违背时序约束的错误(主要是SetupTime 和 HoldTime),与激励无关。在深亚微米工艺中,因为电路连线延迟大于单元延迟,通常预布局布线反复较多,要多次调整布局方案,对布局布线有指导意义。
流程:【预布局布线(SDF文件)–网表仿真(带延时文件)–静态时序分析–布局布线–参数提取–SDF文件–后仿真–静态时序分析–测试向量生成】
7. 第五阶段:加工与完备
1. 设计输入
1) 设计的行为或结构描述。
2) 典型文本输入工具有UltraEdit-32和Editplus.exe.。
3) 典型图形化输入工具-Mentor的Renoir。
4) 我认为UltraEdit-32最佳。
2. 代码调试
1) 对设计输入的文件做代码调试,语法检查。
2) 典型工具为Debussy。
3. 前仿真
1) 功能仿真
2) 验证逻辑模型(没有使用时间延迟)。
3) 典型工具有Mentor公司的ModelSim、Synopsys公司的VCS和VSS、Aldec公司的Active、Cadense公司的NC。
4) 我认为做功能仿真Synopsys公司的VCS和VSS速度最快,并且调试器最好用,Mentor公司的ModelSim对于读写文件速度最快,波形窗口比较好用。
4. 综合
1) 把设计翻译成原始的目标工艺
2) 最优化
3) 合适的面积要求和性能要求
4) 典型工具有Mentor公司的LeonardoSpectrum、Synopsys公司的DC、Synplicity公司的Synplify。
5) 推荐初学者使用Mentor公司的LeonardoSpectrum,由于它在只作简单约束综合后的速度和面积最优,如果你对综合工具比较了解,可以使用Synplicity公司的Synplify。
2) 指定的布线资源应被使用
3) 由于PLD市场目前只剩下Altera,Xilinx,Lattice,Actel,QuickLogic,Atmel六家公司,其中前5家为专业PLD公司,并且前3家几乎占有了90%的市场份额,而我们一般使用Altera,Xilinx公司的PLD居多,所以典型布局和布线的工具为Altera公司的Quartus II和Maxplus II、Xilinx公司的ISE和Foudation。
4) Maxplus II和Foudation分别为Altera公司和Xilinx公司的第一代产品,所以布局布线一般使用Quartus II和ISE。
6. 后仿真
1) 时序仿真
2) 验证设计一旦编程或配置将能在目标工艺里工作(使用时间延迟)。
3) 所用工具同前仿真所用软件。
7. 时序分析
4) 一般借助布局布线工具自带的时序分析工具,也可以使用Synopsys公司的 PrimeTime软件和Mentor Graphics公司的Tau timing analysis软件。
8. 验证合乎性能规范
1) 验证合乎性能规范,如果不满足,回到第一步。
9. 版图设计
1) 验证版版图设计。
2) 在板编程和测试器件。
1. 使用语言:VHDL/verilog HDL
2. 各阶段典型软件介绍:
a) 输入工具: Summit Summit 公司
b) 仿真工具: VCS, VSS Synopsys 公司
c) 综合器: DesignCompile, BC Compile Synopsys 公司
d) 布局布线工具: Dracula, Diva Cadence 公司
e) 静态时序分析: Prime Time Synopsys 公司
f) 测试: DFT Compile Synopsys 公司
3. 流程第一阶段:项目策划
形成项目任务书(项目进度,周期管理等)。流程:【市场需求–调研–可行性研究–论证–决策–任务书】。
4. 第二阶段:总体设计
确定设计对象和目标,进一步明确芯片功能、内外部性能要求,参数指标,论证各种可行方案,选择最佳方式,加工厂家,工艺水准。流程:【需求分析–系统方案–系统设计–系统仿真】。
5. 第三阶段: 详细设计和可测性设计
分功能确定各个模块算法的实现结构,确定设计所需的资源按芯片的要求,速度,功耗,带宽,增益,噪声,负载能力,工作温度等和时间,成本,效益要求选择加工厂家,实现方式,(全定制,半定制,ASIC,FPGA等);可测性设计与时序 分析可在详细设计中一次综合获得,可测性设计常依据需要采用FullScan,PartScan等方式,可测性设计包括带扫描链的逻辑单元,ATPG,以及边界扫描电路BoundScan,测试Memory的BIST。流程:【逻辑设计–子功能分解–详细时序框图–分块逻辑仿真–电路设计(算法的行为级,RTL级描述)–功能仿真–综合(加时序约束和设计库)–电路网表–网表仿真】。
6. 第四阶段:时序验证与版图设计
静态时序分析从整个电路中提取出所有时序路径,然后通过计算信号沿在路径上的延迟传播,找出违背时序约束的错误(主要是SetupTime 和 HoldTime),与激励无关。在深亚微米工艺中,因为电路连线延迟大于单元延迟,通常预布局布线反复较多,要多次调整布局方案,对布局布线有指导意义。
流程:【预布局布线(SDF文件)–网表仿真(带延时文件)–静态时序分析–布局布线–参数提取–SDF文件–后仿真–静态时序分析–测试向量生成】
7. 第五阶段:加工与完备
流程:【工艺设计与生产–芯片测试–芯片应用】
1. 设计输入
1) 设计的行为或结构描述。
2) 典型文本输入工具有UltraEdit-32和Editplus.exe.。
3) 典型图形化输入工具-Mentor的Renoir。
4) 我认为UltraEdit-32最佳。
2. 代码调试
1) 对设计输入的文件做代码调试,语法检查。
2) 典型工具为Debussy。
3. 前仿真
1) 功能仿真
2) 验证逻辑模型(没有使用时间延迟)。
3) 典型工具有Mentor公司的ModelSim、Synopsys公司的VCS和VSS、Aldec公司的Active、Cadense公司的NC。
4) 我认为做功能仿真Synopsys公司的VCS和VSS速度最快,并且调试器最好用,Mentor公司的ModelSim对于读写文件速度最快,波形窗口比较好用。
4. 综合
1) 把设计翻译成原始的目标工艺
2) 最优化
3) 合适的面积要求和性能要求
4) 典型工具有Mentor公司的LeonardoSpectrum、Synopsys公司的DC、Synplicity公司的Synplify。
5) 推荐初学者使用Mentor公司的LeonardoSpectrum,由于它在只作简单约束综合后的速度和面积最优,如果你对综合工具比较了解,可以使用Synplicity公司的Synplify。
以上属于数字前端,以下属于数字后端
5. 布局和布线
1) 映射设计到目标工艺里指定位置2) 指定的布线资源应被使用
3) 由于PLD市场目前只剩下Altera,Xilinx,Lattice,Actel,QuickLogic,Atmel六家公司,其中前5家为专业PLD公司,并且前3家几乎占有了90%的市场份额,而我们一般使用Altera,Xilinx公司的PLD居多,所以典型布局和布线的工具为Altera公司的Quartus II和Maxplus II、Xilinx公司的ISE和Foudation。
4) Maxplus II和Foudation分别为Altera公司和Xilinx公司的第一代产品,所以布局布线一般使用Quartus II和ISE。
6. 后仿真
1) 时序仿真
2) 验证设计一旦编程或配置将能在目标工艺里工作(使用时间延迟)。
3) 所用工具同前仿真所用软件。
7. 时序分析
4) 一般借助布局布线工具自带的时序分析工具,也可以使用Synopsys公司的 PrimeTime软件和Mentor Graphics公司的Tau timing analysis软件。
8. 验证合乎性能规范
1) 验证合乎性能规范,如果不满足,回到第一步。
9. 版图设计
1) 验证版版图设计。
2) 在板编程和测试器件。