集成电路设计的系统级建模与仿真
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2
功能要求
行为设计 (Verilog/VHDL)
不满足 行为仿真
满足 综合、优化
网表 不满足
时序仿真 满足
版图自动 布局、布线
不满足 后仿真
满足
流片、封装、测试
功能要求
系统建模 (Matlab等)
不满足 电路仿真
满足 手工设计
版图 不满足
后仿真 满足
流片、封装、测试
VLSI数字集成电路设计
模拟集成电路设计
2020/1/30
共 107 页
5
二、系统级建模工具----Matlab
• Matlab语言简介 • Matlab基本知识 • Matlab的编程 • Matlab动态仿真工具Simulink
2020/1/30
共 107 页
6
Matlab语言简介
• MATLAB 的名称源自 Matrix Laboratory ,它是 一种科学计算软件,专门以矩阵的形式处理数据。
2020/1/30
共 107 页
3
为什么需要系统级设计?
随着集成电路工艺和数字信号处理技术的不断发展,
1、电路的规模越来越大,系统构成越来越复杂。 2、晶体管级电路仿真消耗很长时间,效率低下。 3、采用行为级描述电路将降低仿真时间。
行为级模型足以表述各个电路模块的功能,通过行为 级仿真可以在功能上预先验证所设计的系统是否能够满足 要求。
2020/1/30
共 107 页
8
2020/1/30
共 107 页
9
Matlab 基本知识
1、命令窗口 在matlab 提示符“>>”下,键入matlab命令。例
如输入一个3X3的矩阵: a=[1,2,3;4,5,6;7,8,9]
数据放在方括号内,行与行间分号间隔,数值间空格或逗号间隔。
Matlab语言是与大小写有关的语言,即变量A和a是两 个完全不同的变量。 应该注意的是:一般情况下,所有的函数名均由小写 字母组成。
Simulink仿真基础
• 工程中的控制系统需要专用的系统建模软件,准 确地建模,对其进行进一步的分析与仿真。
• 1990年,Matlab加入新的控制系统模型图输入与 仿真工具 ,1992年正式将该软件更Simulink。
• Simulink的两个含义:Simu(仿真)和Link(连 接),可以在模型窗口上绘制出所需要的控制系 统模型,然后利用SIMULINK提供的功能来对系 统进行仿真和分析。
• 其基本元素是无需定义维数的矩阵
• 包括Toolbox的各类应用问题的求解工具。
• MATLAB 被广泛地应用于科学计算、控制系统、 信息处理等领域的分析、仿真和设计工作
2020/1/30
共 107 页
7
• Matlab最重要的特点是易于扩展,它允许 用户自行建立完成指定功能的M文件,从而 构成适合于其他领域的工具箱。
Biblioteka Baidu
2020/1/30
共 107 页
17
2020/1/30
共 107 页
18
Simulink的公共模块库
• 信源模块(Source) • 信宿模块(Sinks) • 连续模块库(Continuous) • 信号路由(Signal Routing) • 离散模块库(Discrete) • 数学运算模块库(Math operations)
2020/1/30
共 107 页
10
2、图形窗口
当调用一个产生图形的函数时,Matlab会自动建立一个图形窗 口。这个窗口可分裂成多个窗口,并可以在它们之间选择,这 样在一个屏幕上可以显示多个图形。
2020/1/30
共 107 页
11
Matlab的toolboxes
• 数值分析 • 数值和符号计算 • 工程与科学绘图
目录
一、集成电路设计的一般流程
二、系统级建模工具----Matlab 三、系统级建模工具----Verilog-A 四、建模仿真实例
2020/1/30
共 107 页
1
一、集成电路设计的一般流程
集成电路设计中不同的抽象级别: 结构或系统级 晶体管级(电路) 器件物理级
2020/1/30
共 107 页
• 通过M文件可以扩展 MATLAB 功能,使 MATLAB 能够同其他高级编程语言例如 C/C++ 语言进行混合应用。
• 利用 M 语言还开发了相应的 MATLAB 专业工具 箱函数供用户直接使用。
More resource: http://www.mathworks.com/matlabcentral/fileexc hange/loadCategory.do
• More resource:
http://www.mathworks. com/web_downloads/
• 控制系统的设计与仿真 • 数字图像处理 • 数字信号处理
• 通讯系统设计与仿真 • 财务与金融工程 • 滤波器设计
• Link For ModelSim
2020/1/30
共 107 页
12
Matlab的编程
• MATLAB Compiler 是能够将M 语言编译生成为 函数库、可执行文件 COM 组件等等。
• 端口及子系统库(Ports and Subsystems)
• 查表模块库(Look-Up Table)
• 用户定义函数模块(User-Defined Functions)
• 非线性模块库(Discontinuities)
2020/1/30
共 107 页
19
simulink专业模块库
• CDMA参考模块 • 通讯电路模块 • 控制系统工具 • DSP模块 • TI DSP应用箱 • Motorola DSP模块 • 模糊逻辑模块 • S参数模型
2020/1/30
共 107 页
4
IC设计过程中系统工程师的地位
• 产品功能的定义和模块的划分 • 设计并验证系统的可行性 • 分配各个模块的性能指标 • 整个解决方案中芯片设计环节的组织者
系统工程师在IC设计中具有非常重要的地位,他们一般是工作经验丰富的 IC设计工程师,他们能够根据自己的经验积累恰当的选择系统架构,恰当 的选择建模原型及高阶非理想因素来获得最接近真实情况的指标定义。
2020/1/30
共 107 页
13
M文件语法简介
• Matlab提供近20类基 本命令函数 包括:通用函数、基本 数学函数、矩阵操作 函数,绘图函数等等
• 充分使用help
2020/1/30
共 107 页
14
2020/1/30
共 107 页
15
一个简单的例子
2020/1/30
共 107 页
16