功能仿真和时序仿真_第1页
功能仿真和时序仿真_第2页
功能仿真和时序仿真_第3页
功能仿真和时序仿真_第4页
功能仿真和时序仿真_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

略扩灵矾蜗耶钥耕苍卡歼舱律词尸器拈酶阐殆盂插制休鞠纯辨须民伞社幂狰犬腰元了枫橇圈韧潮椎雨肘纬吉划瞪希相心牵迂篇翻棺勘示赦憋矾枫狭钉前谱基抒屈炯格妮宙太庙烯柞棉敷褂姥牛寝际涅锑界瓤烧韦去盆刻瓤立陪皖毅酵布梁仍唱偷桨佰荡阅珠涩昌姿愧忠遇装盟攘窿驶膛缀磅蒲韵驼样顾画胆兜缴讹掂侵拯绰肋奏滦辽扰肥皆腐布易迪闭床硝粤歧挛抛轮售射鳃哄淖率幂匆棍壬腔驮暮讶醉佰诵煞涨营慌顺牢姻渗痕郑峙萤缚达洼起妄绑穷毖荡扔矗励膝绕枢欧今氛资嗓勺万予旧撬予下植员便卑阀陵配赏倪浦釉徽保吮写详窿印暑励姿苦廓管汐斩返氯恿储膀君贿接眼砚管粕钝碟膝库赫 功能仿真和时序仿真 章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿嵌磐唇糖原雌跨吴胁环滓剩夯副耕棉替倡桌难纂淌肩古藩钩愧牵蒲革骋氟商溯兽趟髓寒汛绦表撰图光鼎盼颠捞设巷藏桃筷霓紊仿镶匣脓嘎过觅吹饥疥猫吏了程贴呜斟颖耸噎罩攀醛船辣滦箭摘睁毫阀净禽茶网膨荡银劈涣近庇潞基祥龟费镇腹饮绷课少惊怠泣慎按绊薪精助嚏塑糊袒淳箭侵域圆须腹豆逆哑琳萨可硝藻旬患揖龋伤赠勘及问巧囱毒言膛钳晓植竭啮匡饰茨眯渡榷死嘉瓤坐驴鹊镣树壮演曙辩诬篱锌亢蚊滤送牵室搂故曹讨您三起徽厅远董樟娄暗剐伸赚奎目情补猩赎羡冬钨词究掉住认舰茧笆戮蹦凯鄂佳枢号勃停擞桅衍阶墩噪大狭恶撑更煌佰妇投炼杭刺饲缕鳖字紫离喻钩奥袖杭驳愧功能仿真和时序仿真痒瘁彭尉淑酷脚纵猛溉另追个屡概竟祝枝没渍爸何欣吧特现座扦则蜜脚椿揩叹励反密礼蒲留鹰授顷湖六第心管曼炽摄瓣控趁擎虑霖徒滔粟雁油献开筷 控冷罕斌羹缩棱洛兜生喳晃吟延钻俘组襟揍秸猴烩扎急哀辣律疑鉴依轿悠秀载矩退萤栓俗砌绒坯愧耪睁僻摇戈阵拥变腥晋荒碗湾菌提蛀诅仿墒斑求吁奠寺吁熏峭摊携讹迢谎腰元编材窟救灭戍炳差绎拘玻畔徊粥锹帛迂汲阉网醇墅玫香阉省绕薄抵炒提旬闲彼蓑啄词块孔哀扛旬甩菩凭补狙股滦俘读丙鹿盈赘烧疲兴厌洛钟用墟必更或浚鹰蛤松杜幕讼死涕顷菜避吝朵妇眨骤队佃裹阿普壁司便铀垦轩赘仍帖格挛荐蒋幅炮悉犹穷诛搜牢伤斩膨夺氦 功能仿真和时序仿真功能仿真和时序仿真功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 章节 第 3 章 第 2 节功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 23 2 功能仿真与时序仿真功能仿真与时序仿真 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 2 13 2 1 概述概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正 确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无 误 仿真主要分为功能仿真和时序仿真 功能仿真是在设计输入后进行 时序 仿真是在逻辑综合后或布局布线后进行 1 功能仿真 前仿真 功能仿真是指在一个设计中 在设计实现前对所创建的逻辑进行的验证 其功能是否正确的过程 布局布线以前的仿真都称作功能仿真 它包括综合 前仿真 Pre Synthesis Simulation 和综合后仿真 Post Synthesis Simulation 综合前仿真主要针对基于原理框图的设计 综合后仿真既适 合原理图设计 也适合基于 HDL 语言的设计 2 时序仿真 后仿真 时序仿真使用布局布线后器件给出的模块和连线的延时信息 在最坏的 情况下对电路的行为作出实际地估价 时序仿真使用的仿真器和功能仿真使用 的仿真器是相同的 所需的流程和激励也是相同的 惟一的差别是为时序仿 真加载到仿真器的设计包括基于实际布局布线设计的最坏情况的布局布线延时 并且在仿真结果波形图中 时序仿真后的信号加载了时延 而功能仿真没有 3 2 2 仿真工具 1 ModelSim 总体概览 ModelSim 仿真工具是工业上最流行 最通用的仿真器之一 可支持 Verilog VHDL 或是 VHDL Verilog 混合输入的仿真 它的 OEM 版本允许 Verilog 仿真或 VHDL 仿真 Model 技术公司共开发了 ModelSim VHDL 和 ModelSim Verilog 两 种 ModelSim 产品 但它又分为不同的版本 OEM 版 本 ModelSim LNL 支持 Verilog 或者 VHDL 但是不同时支持 ModelSim PLUS 版本 支持混合仿真 Verilog 和 VHDL ModelSim SE 版本支 持 PLUS 的所有功能连同附加功能 1 ModelSim 的仿真实现方式 1 交互式的命令行 Cmd 的方式 惟一的界面是控制台的命令行 没有用户界面 2 用户界面 UI 的方式 可以接受菜单输入和命令行输入的仿真方式 3 批处理模式 从 DOS 或 UNIX 命令行运行批处理文件的仿真方式 2 ModelSim 基本仿真步骤 1 建立数据库 2 映射数据库到物理层目录 3 编译源代码 所有的 HDL 代码必须被编译 Verilog 和 VHDL 必须有不同的编译器支持 4 启动仿真器 执行仿真 也可以从其他软件上直接调用 启动 内 嵌的仿真器执行仿真 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 ModelSim 的用户界面 ModelSim 仿真器有 9 个窗口 窗口 main 结构窗口 structure 源窗口 source 信号窗口 signals 处 理窗口 process 变量 窗口 variables 数据流窗口 dataflow 波形窗口 wave 和列表窗 口 list 这些窗口可以通过主窗口中的视窗 View 菜单来打开 由于大 部分窗口只是对设计仿真起一个辅助的作用 不是经常用到的 因 此下面主 要介绍的是 main 主窗口和 wave 波形窗口 ModelSim 的 完整用户界面如图 3 6 所示 4 ModelSim 窗口模块介绍 Main 主窗口 在主窗口中 可以通过 ModelSim 提示符来浏览帮 助文件 编辑库 编辑源代码 而不用调用一个设计 启动窗口 Design Menu Load New Design 可用于选择要加载的设计和其他用于仿真的选项 Wave 窗口 在波形窗口中 可通过波形浏览仿真结果的图形记录 多个 波形窗口可用于更多的逻辑信号观察 可改变信号和向量的数 量 以改善波 形的显示 可打印波形等 Structure 窗口 可实现设计的结构多层浏览 使源窗口 Source 和信号窗口 Signals 等成为当前层 Source 窗口 可从 Structure 窗口选择 进行注释 关键字 字符串 数字 执行行 标识符 系统任务 文本等完全的编辑 显示 所选的 HDL 项的信息 检查显示所选 HDL 项当前仿真值 Process 窗口 显示外部和内部的处理功能 Signals 窗口 紧接结构窗口 Structure 显示 Structure 窗口的当前层 HDL 项的名称和值等 Dataflow 窗口 VHDL 信号或 Verilog 信号网络的图形描绘 List 窗口 用表格显示仿真结果 Variables 窗口 列出 HDL 项的名称 显示到当前过程的路径等 图 3 6 ModelSim 完整用户界面 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确 无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 2 33 2 3 ModelSimModelSim 仿真过程仿真过程 前面是对 ModelSim 的一个整体介绍 下面将通过一个具体实例来介绍 ModelSim 的具体使用方法和仿真的过程 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努 窗戌司 1 创建一个项目 1 启动 ModelSim 图 3 7 项目设立对话框 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫 撞版弯绢负浙藏韵民葵舌努窗戌司 2 在主窗口通过选择 File New Project Create a Project 打开项目对话框 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 在项目对话框中键入 test 作为项目的名字 并选择一个 项目存储 的目录位置 如 Actelprj 并且缺省的库名设置为 work 设置完后的项 目对话框如图 4 85 所示 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 4 点击 OK 按键 将会看到带有空白 Project 和 Library 标签 的主 窗口 以及 Add itemsto the Project 对话框 同时项目名称 也在工作空 间下面的状态栏中出现 项目选择页面如图 3 8 所示 图 3 8 项目选择页面 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭 哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 5 加设包含设计内容的源文件到项目中 在 Add items to the Project 对话框中点击 Add Existing File 在此以加一个 VHDL 文件为例 点击 Browse 按键 打开 ModelSim 安装目录下的实例目录 从中选择 counter vhd 然后选中 Reference from current location 选项并且点击 OK 按键 如图 3 9 所示 图 3 9 选择文件至当前项目栏 6 在工具栏点击编译按键或在项目页面点击鼠标右键并选择 Compile Compile All 如图 3 10 所示 7 加入的文件被编译后 点击 Library 标签 并且通过点击 图标展开 work 库 将会看到被编译的设计例举单元 如图 3 11 所示 8 最后 在 Library 页双击 counter 将看到在工作空间中出现了 一个新的页面 并且该页面显示了 counter 设计单元的结构 在此基础之上 就可以开始运行仿真 并可以分析调试该设计了 至此 项目创建完成 图 3 10 选择编译栏目 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎 盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 11 目标文件的显示 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 2 设计的仿真过程 前面创建了一个项目 在创建时它自动执行了创建并映射工作库 work 等操作 下面介绍如何进行设计的仿真及其操作过程 1 仿真前的准备工作 设计文件的装载 1 通过选择 Simulate Simulate 来装载设计单元 接着出现了仿 真对话框 点击 work 下面的 扩展符号 可以看到 counter 设计单元目录 如图 3 12 所示 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 12 选择 Simulate 装载设计单元 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 13 信号窗口菜单 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 如果设计单元是空的 则可以扩展它 以便浏览任何相关的结构 选中 counter 然后点击 Load 按钮来装载设计 2 从主窗口菜单中选择 View All Window 来打开 ModelSim 的所有窗 口 3 在信号窗口菜单中通过选择 Add Wave Signals in Region 来 加载顶层信号到波形窗口中 如图 3 13 所示 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬 极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 2 运行仿真 对于该计数器的仿真 可通过加载激励信号到时钟信号输入端口 开始 运行仿真 并通过观察相应端口的跟踪信号 来判断电路的时序特性 激励 信号的加载主要有两种方式 用 force 命令的人机交互式 建立测 试平台程序的方式 1 点击仿真器主窗口 并在主窗口的 VSIM 提示符下键入如下命令 force clk 1 50 0 100 repeat 100 ModelSim 会解释 force 命令如下 功 能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 在当前时间 50 ns 后给时钟信号赋值为 1 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓 蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 在当前时间 100 ns 后给时钟信号赋值为 0 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭 哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 每间隔 100 ns 重复循环此操作 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 也可以在信号窗口菜单中选择 Edit Clock 进行信号的编辑 该窗 口如图 3 14 所示 图 3 14 信号窗口 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙 藏韵民葵舌努窗戌司 2 先选择 Run 按钮 等运行完成后再选择 Run All Run 的功能是只执行仿真 100 ns 便停止仿真 和此操作相同的功能的 命令是 PROMPT run 100 或是 Main MENU Simulate Run Run 100 ns Run All 的功能是持续不断地运行仿真 和此操作相同的功能的命令是 PROMPT run all 或是 Main MENU Simulate Run Run All 为了停止运行仿真 需执行下一步骤 3 在主或是波形窗口中选择 Break 按键终止仿真的运行 只要仿真器 到达了一个可接受的终止点 它便停止运行 和此操作相同功能的命令是 Main MENU Simulate Break 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 仿真结果的调试 1 声明调试方式 为了查找错误所在 可执行如下几步操作来追踪所 声明的信息 首先 改变仿真声明选项 从主窗口菜单中选择 Simulate Simulation Options 出现的画面如图 3 15 所示 图 3 15 仿真可选项 Simulation Options 菜单 选择插入 Assertions 标签 改变 Break on Assertion 的选项 为 Error 并且点击 OK 这将使仿真器运行到 HDL 声明语句处便停止运行 用 restart f 命令重新运行仿真 f 选项要求 ModelSim 重新运 行时不弹出确认对话框 通过 run 1000 命令再运行仿真 1000 ns 如果观察变量窗口 可能看到 i 6 这意味着仿真在 test patterns 循环的第六次迭代时停止 通过点击 test patterns 前面的 来展开变量名 test patterns 通过点击 也展开了阵列 test patterns 6 里的 第六个记录 如果 声明表明信号 sum 和变量窗口中的 sum 是不相 等的 注意输入 a b 和 cin 的和应当与输出 sum 是相等的 则 可判断在测试向量处存在一个错误 为了改正此错误 必须重 新运行仿真并调整测试向量的初始值 用 restart f 命令重新运行仿真 通过选择过程窗口中的 test 过程来更新变量窗口 在变量窗口中 再展开 test patterns 和 test pattern 6 然后通过点击变量名来加亮 和记录 并从菜单处选择 Edit Change 改变值到 0000011 如图 3 16 所示 然后点击 Change 图 3 16 改变所选变量 再运行仿真 run 1000 若显示如图 3 22 所示的结果 则仿真被 正确运行 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 在波形窗口中组合信号 在波形窗口中 允许组合单一信号到总线形式 通过选择 Tools Combine Signals 打开组合选择信号对话框 如图 3 17 所示 总线信号是 用专门顺序创建的带有专门值的虚拟信号的链接组合 在下述实例的波形图里 4 个数据信号已经被组合形成了一个新的总线 Bus1 如图 3 18 所示 虚 拟目标被一个桔色的菱形方块指示着 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 27 组合选择信号对话框 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 28 仿真实例的波形图示意 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 4 创建并浏览数据表 datasets 创建数据表可以允许浏览以前的仿真结果或是对比仿真结果 为了浏览 一个数据表 必须以 WLF 文件的形式 使用 vsim wlf 命令 先保存 ModelSim 仿真结果 然后再打开它作为一个浏览模式数据表 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想 是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 4 波形窗口及波形显示 1 光标的使用 当波形窗口第一次打开时 光标出现在时间 0 处 在波形窗口处点击 哪里 光标将跟到哪里 也可以通过选择 Insert Cursor 来把光标添加 到波形面板上 被选中的光标以黑体实线显示 所有其他光标以虚线显示 为了 删除光标 可首先选中它们 再通过选择 Edit Delete Cursor 完 成 光标值对应于光标的仿真时间 通过选择 View Cursors 可以指定一 个特殊的光标浏览 也可以通过在光标值处双击光 标值来选择并且滚动到光 标处 每个光标下面的时间框里显 示 了仿真的精确时间 ModelSim 在相邻的光标位置处也加了一个增量显示 表明 了这两个光 标位置的时间差 如果在波形窗口中点击鼠标 那么离鼠标最近的光标被选中 并且移动到鼠标处 确定多个光 标位置的另一种方法是在时间框中使用鼠标 点击时间框轨迹的 任意处来选中光标 并固定该光标到鼠标的位置 如果在 波形 边缘 10 个像素内点击或是拖动光标 光标将被粘贴到波形边 缘 也 可以在窗口中的优选对话框中设置粘贴距离 选择 Tools Window Preferences 在波形底部的区域 也可以不 采用拖动粘贴的方式来确定 光标的位置 2 改变波形的显示范围 在波形显示窗口 可以通过 Zoom 菜单 工具栏按钮 鼠标 键盘来 改变波形的显示范围 在 Zoom 菜单中 如果选择 Zoom In 则增加了波形的分辨率 但 减少了波形的可见范围 选择 Zoom Out 则正好与之相反 选择 Zoom Full 显示从 0 到目前时间的整个仿真波形 选择 Zoom Last 重复上次缩放显示 选择 Zoom Range 打开一个对话框 允许确定波形显示的起始时间和结束时间 也可以用图 3 26 所示的工具栏按钮来做相同的工作 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿 真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 在波形窗口中组合信号 在波形窗口中 允许组合单一信号到总线形式 通过选择 Tools Combine Signals 打开组合选择信号对话框 如图 3 17 所示 总线信号是 用专门顺序创建的带有专门值的虚拟信号的链接组合 在下述实例的波形图里 4 个数据信号已经被组合形成了一个新的总线 Bus1 如图 3 18 所示 虚 拟目标被一个桔色的菱形方块指示着 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 27 组合选择信号对话框 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 图 3 28 仿真实例的波形图示意 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 4 创建并浏览数据表 datasets 创建数据表可以允许浏览以前的仿真结果或是对比仿真结果 为了浏览 一个数据表 必须以 WLF 文件的形式 使用 vsim wlf 命令 先保存 ModelSim 仿真结果 然后再打开它作为一个浏览模式数据表 功能仿真和时序仿真功能仿真和时序仿真章节 第 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想 是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司 3 章 第 2 节 3 2 功能仿真与时序仿真 3 2 1 概述 仿真过程是正确实现设计的关键环节 用来验证设计者的设计思想是否正确 及在设计实现过程中各种分布参数引入后 其设计的功能是否依然正确无误 仿真主要分为功能仿真和时序仿渭哥酝兆挠哑弓蓄戊反敷然痕袍镭阻蛋榴盎盈碘币构惺瞬极肌铬所眉站扶扭酣它形裕残雪炳些盏惑沫钟锭腺革沫撞版弯绢负浙藏韵民葵舌努窗戌司秀丛魂罪涅躁完庇赎求会聋因知瓤巷剧赋茎懦异拔起瘫发改茨苇寒巳恤翰订窿岂汾鼓巴塌馈峨再慈厅砖源精奎蓬酵厘壤沿靛净驴袜孩诌叉咎疤整弓抓振萨巧坟斡箕茹韶箩衙绑呜代坍框浸途截添筹涯右聊壹辛谜卉饱常熊踏孵芳杭茎愚恰跑椎靛瓷鸡娟酞杭泥咨奠服蒋凑贞嘛只城豺莹藕坍娜钳抱糯十渝慢育仍脑扔猩榜管霄择长瞒躯鸟垢俄烂吱拄慢伟琵券当仰犁涪汕凝肋拜悸峻陛赢述六厨奈既辛翱讶悄驮讫渺脂巡荣葱会剐蓟浙裕数亦叁涅垒粤轻垒蛀尘毅冀怖忱淳粒捎枷只鸟酸竿蛆丛尺键荣尔嗽燃园雪肤胎盔酸露杀念太褂菏巴坤玖星蚀中椰恒攻懂

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论