matlab实现布尔真值表的排列,MATLAB在数字电路仿真中的应用

M AT LAB 在数字电路仿真中的应用

李 杰① 韦志棉② 黄行键

摘 要

数字电路的验证和调试是一件繁琐的工作费时费力又需一些昂贵的仪器。本文采用M A TLAB 附带的仿真工具Si m ulink 进行数字电路的验证、调试、仿真、省时、省力、成本低。

f5a71085a7745a4f6e7576eeee2e866b.png

关键词 M A TLAB 数字电路 Si m ulink 仿真优化和调试数字电路,验证数字电路正确与否是每一个数字电路工程师都需要做的工作,工程师们通常的做法是:用面包板搭接电路,或者将元器件焊接到预先设计好的印刷板电路上进行测试,修改,完善。第一种方法往往由于连线多易造成连线错误,接触不良而造成功能失常;第二种方法则往往由于设计-焊接-调试-改线的多次反复而花费大量的时间精力。本文采用M A TLAB 附带的仿真工具Si m ulink 进行数字电路的仿真、验证、调试,从而避免了上述两种方法的缺点,大大降低了成本。

M A TLAB 是1980年C leve M o ler 和他的同事共同推出

的功能十分强大的仿真语言,现在,它已成为世界上应用最广泛的工程计算软件。作为M A TLAB 的重要组成部分,

Si m ulink 是对动态系统进行建模,仿真和分析的一个重要的

软件包,它提供了友好的界面和大量的模块,且简单易学,用户建模仿真只要从模块库中用鼠标点击拖动所选模块,进行组合就可以实现系统的仿真。Si m ulink 提供的基本模块包括信号源库(Source )、接收模块库(Sink i )、连续系统模块库

(Continuo s )、离散系统模块库(D iscrette )等。用户根据需要

可以从模块库中选择所需要的模块来组成自己的系统;也可以封装自己的模块,自定义自己的模块库,以实现系统的仿真。

一、数字电路仿真的方法和技巧

11基本数字电路模块

Si m ulink 提供的用于数字电路仿真的常用模块有信号

源、输出设备。触发器、寄存器。常用信号原有时钟CLOCK 、阶跃信号、脉冲发生器、信号发生器;用的最多的输出设备是示波器;D 触发器、R -S 触发器、J -K 触发器在Extras 库的

F li p -F lop s 组中;基本的数字逻辑运算模块和算术运算模

块:与(AND )、或(OR )、与非(NAND )、或非(NOR )、异或

(XOR )、加(A dd )、减(Sub )、乘(M ul )、除(D iv )等则在F ixed -

Po int 模块库中。

用示波器(Scope )观察信号有多种方法和技巧,用户可以用游离示波器观察信号,方法是:首先将示波器悬空,设好示波器参数,然后用鼠标单击某模块间连线,选择[Si m ulati on ]菜单中的[Start ]进行仿真,此时示波器所显波形即为该连线上的信号波形。在仿真过程中,如果想观察另一连线上的信号,用鼠标单击另一连线使其显示出小黑方块句柄即可。另外还可以用一个示波器观察多路信号(如图3(a )所示),只不过需将多路信号通过多路开关(M ux )引到示波器中去。在仿真的过程中,如果想仔细观察某一段波形,可以用鼠标点击这段波形的开始出,按着鼠标不放,移动鼠标斜拉出一个矩形,则该矩形内的波形被放大。

图1 数字电路仿真常用模块

2.自定义数字电路模块

自定义功能模块有多种方法,其中的一种是将现有的多个功能模块组合起来,形成新的模块,这样可以简化图形,减少功能模块的个数,另外也可以建立自己的模块库,为以后搭接数字仿真电路提供方便。

在Extras 模块库的F li p -F lop s 组中,包括D 触发器、R

-S 触发器、J -K 触发器、

同步R S 触发器等时序逻辑电路的基本单元,可以以这些触发器为基本元件组成如寄存器,

计数器等具有单一功能的器件,也可以组成功能复杂的系统。但Si m ulink 提供的这些器件具有一定的缺陷,在有外部反馈时会形成代数环,需要加以改造才能完成仿真。下面以D 触发器和R -S 触发器为例说明如何完善这些模块。(1)D 触发器

实际的D 触发器有两个特点:一是在时钟脉冲到来之前它保持原来的状态不变:二是它具有一定的延迟。在数字电路的仿真中,通过分析仿真波形发现Si m ulink 提供的D 触发器模块不具备实际D 触发器所具有的第二个特点,因此需要在Q 输出端加一延迟单元(U nit D elay )。用加一延迟单元后

①②韦志棉 北京航空航天大学无人机研究所 高级工程师 北京 100083

李 杰 北京航空航天大学电子工程系 硕士 北京 100083

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值