在通过verilog语言完成芯片设计,且通过测试平台设计(编写testbench)对所设计的芯片施加激励和观测输出后,需要在计算机上模拟芯片设计,以判断所编写的代码是否符合预期。
在计算机上模拟芯片设计需运用仿真工具,常用的eda仿真工具主要由三家集成电路公司提供,分别是mentor graphics、cadence、synopsys。
mentor graphics的产品是modelsim,该产品主要在windows系统上运行,也可以在linux系统上运行,适合初学者使用。
cadence的产品是nc-sim,该产品主要在linux系统上运行,也可以在windows系统上运行。
synopsys的产品是vcs,该产品主要在linux系统上运行,不能在windows系统上运行。
上文提及的linux系统和windows系统是eda仿真工具的两种主要操作系统。
windows系统主要运用于可编程逻辑器件,如cpld、fpga的仿真,这是因为进行验证的工程师(芯片生产前需要进行验证,目的是防止实际生产的芯片出现漏洞导致百万元到千万元人民币的损失)主要使用windows系统。可编程逻辑器件的仿真工具主要是modelsim。
linux系统主要运用于asic设计,即专用集成电路设计的仿真,因为芯片设计到生产过程中使用的仿真以外的其他工具均支持linux系统,所以asic设计的仿真也主要使用linux系统。
根据课程推荐,asic设计人员或有学习更专业仿真工具想法的人员最优选择是nc-sim和vcs这两种专业软件。课程由于证书(license)限制,只能使用modelsim的教学版进行芯片仿真讲解。
modelsim中内嵌有教程和用户手册,如果需要学习modelsim更高级的功能可以查找用户学习手册,网络上也有高级教程可供学习和参考。
图片来源:学堂在线《ic设计与方法》
仿真的步骤如下:
(1)设置环境。包括在软件里设置相应的工程环境,设置相应的库文件,库文件是其他人员已完成的设计文件,当设计芯片需要某些已设计完成的文件时,可以调用库文件。
(2)编写verilog代码。编写verilog代码既可以使用文本编辑工具,也可以使用modelsim中提供的代码编辑工具。
(3)编译。编译的目标是将verilog代码转化成计算机上可以执行的程序。
(4)仿真。在仿真工具中模拟电路执行过程。
(5)分析仿真结果。分析仿真结果是比较重要的步骤。分析仿真结果的目的是检查电路模拟的结果是否正确,是否符合预期的设计目标。分析仿真结果的方法有多种:最直接的方法是用波形的方式检查,更高层次的方法包括数据流图(以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程)、有限机(全称有限状态机,是一种用于进行对象行为建模的工具,作用是描述对象在其生命周期内所经历的状态序列,以及如何响应来自外界的各种事件),或用比较高效的方法定位故障发生的位置。
图片来源:学堂在线《ic设计与方法》
2019年半导体产业将进入商业循环对稳定的一个阶段
英特尔聚力整合实现可持续的异构计算
美国 5G 为何与 4G 相差无几?
比天价护肤品更管用,日本家用美容仪推荐
计算机视觉应用之OpenCV基础教程
芯片设计之仿真工具
iphone8什么时候上市?iphone8最新消息:iphone8给我们带来的这个四大惊喜,我们必须要知道
非接触式传感器技术有哪些新进展
天马:OLED和mini-LED在车载上应用的趋势如何?
东莞市英联电子有限公司简介
黄铁军:未来二十年AI的智力或将超过人类?
DS89C430/DS89C450超高速闪存微控制器存储器接口时序
金融科技在5G到来之后该怎样发展
万有理论:物联网设备互联的“生态链”
在智能产品领域中温湿度传感器的应用
华硕RTX 3060 Ti GAMING显卡测评介绍
智能网联汽车产业发展态势如何?
8.15亿!宁德时代斩获华晨宝马电池产能建设项目订单
樱花锁业DZ-6688电子锁简介
Aigtek安泰:高精度电压源如何选型的