matlab® 和 simulink® 方便了半导体器件的设计空间探索和自上而下设计,使工程师们能够相互协作,结合运用建模方法和抽象级别来描述、分析、仿真和验证其多域系统。域包括模拟、数字、射频、软件和热;抽象级别下至晶体管,上至算法。
在 matlab 和 simulink 中定义的系统模型、验证环境和测试用例可以在 eda 工具中以多种方式重用,包括协同仿真、导出模型、测试平台和测试向量,以及 c 和 hdl 代码生成。这些途径整合了系统设计、验证和实现工作流程,有助于工程师大幅加快设计迭代、减少项目延迟风险,并实现规格和设计变更的持续集成。
“使用 mathworks 工具,我们找到了最佳算法。由于模型运行速度比电路仿真器快很多,我们更快地捕获到实现错误,从而缩短了上市时间。”
cory voisine, allegro microsystems
使用 matlab 和 simulink 进行半导体开发
数字设计
对数字系统进行建模和仿真,可利用无线、视觉和信号处理算法,以及大量的数学和三角函数和复杂的状态控制逻辑。使用适当的抽象级别构建模型,在准确度和仿真速度之间实现合理权衡。快速探索设计空间,就系统架构和量化做出正确的选择。可以导入现有 verilog®、vhdl® 和 c/c 模型,从而实现持续集成。
使用 matlab 和 simulink 执行片上系统 (soc) 硬件/软件协同设计和仿真,在此过程中综合考虑 soc 架构以及任务执行和 os 的影响。借助此功能,在产品开发流程早期,就可以对软件性能和硬件使用情况进行高保真分析。
模拟和混合信号设计
使用 matlab 与 simulink,将模拟、数字、软件和射频组件组合在一起进行仿真,从而加快评估多个备选设计方法,并优化系统性能。
以 mathworks® 参考模型和库为起点,设计和分析 adc、pll、电力变换器和 serdes 等混合信号组件。探索系统级别的架构权衡,评估相位噪声、抖动、非线性、泄漏和配时错误等物理损伤的影响,并对不同条件和场景下的电路行为进行验证。
在 ic 和 pcb 设计环境(例如 cadence® virtuoso® ams designer 和 cadence® pspice®)中重用 matlab 和 simulink 模型和测试平台。加速实现过程,并弥合系统工程与 asic 设计之间的差距。
射频集成电路 (rfic) 和系统设计
使用 s 参数、规格书或物理属性等测量数据来设计、分析和仿真射频系统。构建 rfic 收发机的模型,并将其与数字信号处理算法和控制逻辑相集成,以准确地仿真自适应架构,例如自动增益控制 (agc)、数字预失真 (dpd) 和可调匹配网络。将射频前端与天线阵列相集成,以便对架构进行建模,并在此过程中考虑近场和远场耦合。
使用 matlab 和 simulink,您可以对射频系统进行不同抽象级别的建模。电路包络仿真可用于对任意拓扑结构的网络进行高保真度、多载波仿真。谐波平衡分析可以计算作用于增益以及二阶和三阶截断点(ip2 和 ip3)的非线性效应。等效基带库支持进行快速的离散时间仿真,以验证单载波级联射频系统的性能。
matlab 还提供符合 lte、5g、wlan 和蓝牙标准的函数、app 和参考示例,用于多种通信系统的建模、仿真和验证。您可以配置、仿真、测量和分析端到端通信链路。您还可以创建并重用一致性测试平台来验证设计、原型和实现是否符合射频标准。
电池管理系统
电池管理系统 (bms) 负责保证电池在各种充放电条件和环境条件下的安全运行、性能和使用寿命。simulink 建模和仿真功能支持 bms 开发,包括单电芯等效电路公式和参数化、电子电路设计、控制逻辑、自动代码生成以及验证和确认。
另外,可以从 simulink 模型生成 c 代码或 hdl,以便对系统或微控制器进行快速原型开发。这使您能够对硬件在环 (hil) 测试进行实时仿真,在硬件实现之前验证算法。
验证
通过定义验证环境、测试用例和形式化属性,以结构化方式验证 matlab 和 simulink 模型。借助回归工具和形式化引擎,您可以在设计流程的早期发现 bug。借助覆盖率衡量和需求可追溯性工具,您可以量化验证结果。
您可以从 matlab 或 simulink 将系统模型、验证环境和测试用例导出为 systemverilog dpi-c 或 uvm 组件,并在 hdl 仿真器(如 cadence® xcelium、siemens® questa 或 synopsys® vcs)中将其作为驱动程序、检查器或参考模型加以重用。借助 hdl 协同仿真,您还可以将 matlab 和 simulink 模型与其 verilog 或 vhdl 表示形式进行比较。
rtl 实现
专注于优化算法的硬件架构而不是写代码:渐进优化并验证数字系统模型,然后将它们转换为 rtl 代码。一旦完成算法硬件架构的功能验证,自动代码生成就能确保您的意图得到正确实现。与手动编码相比,此工作流程不仅有助于快速探索不同的架构选项,还可以使整个过程更加敏捷,能快速适应变化。
半导体制造
成品率是整个半导体运营中最重要的因素。利用 matlab 和 simulink,您可以开发、集成和部署使用深度学习、预测性维护和图像处理等技术的系统。这些系统可以加强半导体工艺控制,提高产品成品率;可以部署带有故障检测功能的光刻系统,将维护开销降到最低;可以估计机器的剩余使用寿命,提高设备可靠性。
半导体测试
使用 matlab 进行半导体的平台测试。利用 matlab,您可以通过仪器驱动程序或基于文本的命令直接与测试设备进行通信。matlab 中产生的波形可以传输到仪器作为待测设计 (dut) 的激励。另一方面,仪器可以采集来自 dut 的测量数据,并发送到 matlab 进行后处理、分析和可视化。您也可以根据 lxi、pxi 和 axie 标准自动执行测试、验证硬件设计和构建测试系统。