基于Matlab的逻辑电路设计与仿真.docx
- 文档编号:1939953
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:45
- 大小:638.61KB
基于Matlab的逻辑电路设计与仿真.docx
《基于Matlab的逻辑电路设计与仿真.docx》由会员分享,可在线阅读,更多相关《基于Matlab的逻辑电路设计与仿真.docx(45页珍藏版)》请在冰豆网上搜索。
基于Matlab的逻辑电路设计与仿真
基于MATLAB的逻辑电路设计与仿真
摘要
MATLAB具有强大的图形处理功能、符号运算功能和数值计算功能。
MATLAB工具几乎涵盖了整个科学技术运算领域。
其中系统的仿真(Simulink)工具箱是从底层开发的一个完整的仿真环境和图形界面。
在这个环境中,用户可以完成面向框图系统仿真的全部过程,并且更加直观和准确地达到仿真的目标。
此次,以数字电路中的逻辑电路为线索来学习Simulink,了解了许多数字电路中常用模块的使用方法.电路中除具有逻辑运算功能的组合电路外,还必须有能够记忆电路状态的存储单元或延迟单元,这些存储或延迟单元主要由本次设计所用到的触发器来实现。
D触发器、RS触发器、JK触发器等这些时序逻辑电路中常用的器件在Simulink中都有相应的仿真模块,除此之外,用户还可以自行设计封装模块来一步一步完成更大的电路系统,实现更强大的逻辑功能。
利用MATLAB软件,通过设计图形用户界面(GUI),说明Matlab功能强大、简单实用、调节容易、可视性好,可大大提高计算效率,缩短编程时间,是一种简便实用的计算工具,可成功地应用于信号处理中,在教学和研究等领域具有广泛的应用前景和一定的推广价值。
关键词:
MATLAB、Simulink、逻辑电路、GUI
Abstract
MATLABhasapowerfulgraphicsprocessingcapabilities,symboliccomputingandnumericalcomputingfunctions.MATLABtoolsarecoveringalmosttheentirescientificandtechnicalcomputing.Onesystemsimulationtoolboxisfromthebottomofthedevelopmentofacompletesimulationenvironmentandthegraphicalinterface.Inthisenvironment,theusercancompletesystemsimulationblockdiagramfortheentireprocessandachieveamoreintuitiveandaccuratesimulationofgoal.Thistime,withdigitalcircuitsinthelogiccircuitsforcluestolearnSimulink,learnedalotincommondigitalcircuitmoduleisused.Sequentialcircuits,inadditiontofeatureswithalogicalcombinationofthecircuit,butalsomustbeabletorememberthestateofthecircuitmemorycellordelayunit,thestorageordelayunitsprimarilyusedinthedesignofthisflip-floptoachieve.Dflip-flops,RSflip-flop,JKflip-flopsequentiallogiccircuitssuchasthosecommonlyusedindevicesinSimulink,thesimulationhasacorrespondingmodule,inaddition,Userscanalsodesigntheirownpackagemodulestepbysteptocompletealargercircuitsystemtoachievemorepowerfullogicfunction.
Throughthedesignofgraphicaluserinterface(GUI)byUsingMatlab,wecanlearnthatMatlabispowerful,simple,practical,easyadjustment,visibility,andcangreatlyimprovethecomputationalefficiencyandshortentheprogrammingtimeisasimpleandpracticaltool,canbesuccessfullyappliedtosignalprocessing,intheteachingandresearchinareassuchastheapplicationofawiderangeofprospectsandthepromotionofacertainvalue.
Keywords:
MATLAB,Simulink,logiccircuits,GUI
第一章绪论
本设计利用MATLAB及Simulink仿真软件强大的图形处理功能,符号运算功能和数值计算功能,实现常见的逻辑电路如编码器、译码器、数据选择器、触发器、锁存器等逻辑电路的设计及仿真。
本设计通过Simulink仿真软件使用常见的与、或、非等基本逻辑单元,延时信号、时钟信号等信号源和示波器完成以上各种逻辑电路的设计和仿真,同时通过MATLAB汇编语言实现以上各基本逻辑电路的逻辑表达式,并在给定输入信号的情况下完成并验证各基本逻辑电路的功能。
通过程序设计和波形输入输出仿真两种方法来共同完成各种基本的逻辑电路的设计。
第二章设计目的、内容和思想
2.1设计的目的和内容
2.1.1设计目的
(1)在了解MATLAB语言的基础上进一步掌握和精通MATLAB;
(2)利用MATLAB强大的程序设计和仿真分析功能完成常见的逻辑电路的设计及仿真。
(3)学会使用Sinulink和GUI的基本应用和设置。
2.1.2设计的内容
深入研究和掌握数字逻辑电路的理论知识,并根据已知条件利用MATLAB的强大的图形处理功能,符号运算功能和数值计算功能,实现以下逻辑电路的设计和仿真:
(1)组合逻辑电路设计与仿真
8线3线编码器
3线8线译码器
7段数码管
四选一数据选择器
(2)时序逻辑电路的设计与仿真
2位并行寄存器
4位移位寄存器
双向移位寄存器
扭环计数器
2.2设计思想
本设计以Simulink仿真系统中的基本逻辑元件、时钟信号和示波器为核心进行编码器、译码器、数据选择器及2位并行寄存器、4位移位寄存器、双向移位寄存器、扭环计数器的输入输出波形的设计和仿真,同时以MATLAB汇编语言和各种基本组合逻辑电路的逻辑表达式为基础实现组合逻辑电路的设计并验证其逻辑功能。
第三章MATLAB简介
MATLAB的名称源自MatrixLaboratory,它是一种科学计算软件,专门以矩阵的形式处理数据。
MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用MATLAB产品的开放式结构,可以非常容易地对MATLAB的功能进行扩充,从而在不断深化对问题认识的同时,不断完善MATLAB产品以提高产品自身的竞争能力
MATLAB是MATLAB产品家族的基础,它提供了基本的数学算法,例如矩阵运算、数值分析算法,MATLAB集成了2D和3D图形功能,以完成相应数值可视化的工作,并且提供了一种交互式的高级编程语言——M语言,利用M语言可以通过编写脚本或者函数文件实现用户自己的算法。
利用M语言还开发了相应的MATLAB专业工具箱函数供用户直接使用。
这些工具箱应用的算法是开放的可扩展的,用户不仅可以查看其中的算法,还可以针对一些算法进行修改,甚至允许开发自己的算法扩充工具箱的功能。
目前MATLAB产品的工具箱有四十多个,分别涵盖了数据采集、科学计算、控制系统设计与分析、数字信号处理、数字图像处理、金融财务分析以及生物遗传工程等专业领域。
Simulink是基于MATLAB的框图设计环境,可以用来对各种动态系统进行建模、分析和仿真,它的建模范围广泛,可以针对任何能够用数学来描述的系统进行建模,例如航空航天动力学系统、卫星控制制导系统、通讯系统、船舶及汽车动力学系统等等,其中包括连续、离散,条件执行,事件驱动,单速率、多速率和混杂系统等等。
Simulink提供了利用鼠标拖放的方法建立系统框图模型的图形界面,而且Simulink还提供了丰富的功能块以及不同的专业模块集合,利用Simulink几乎可以做到不书写一行代码完成整个动态系统的建模工作。
Stateflow是一个交互式的设计工具,它基于有限状态机的理论,可以用来对复杂的事件驱动系统进行建模和仿真。
Stateflow与Simulink和MATLAB紧密集成,可以将Stateflow创建的复杂控制逻辑有效地结合到Simulink的模型中。
在MATLAB产品族中,自动化的代码生成工具主要有Real-TimeWorkshop(RTW)和StateflowCoder,这两种代码生成工具可以直接将Simulink的模型框图和Stateflow的状态图转换成高效优化的程序代码。
利用RTW生成的代码简洁、可靠、易读。
目前RTW支持生成标准的C语言代码,并且具备了生成其他语言代码的能力。
整个代码的生成、编译以及相应的目标下载过程都可以自动完成,用户需要做的仅仅使用鼠标点击几个按钮即可。
MathWorks公司针对不同的实时或非实时操作系统平台,开发了相应的目标选项,配合不同的软硬件系统,可以完成快速控制原型(RapidControlPrototype)开发、硬件在回路的实时仿真(Hardware-in-Loop)、产品代码生成等工作。
另外,MATLAB开放性的可扩充体系允许用户开发自定义的嵌入式系统目标,利用Real-TimeWorkshopEmbeddedCoder能够直接将Simulink的模型转变成效率优化的产品级代码。
代码不仅可以是浮点的,还可以是定点的。
MATLAB开放的产品体系使MATLAB成为了诸多领域的开发首选软件,并且,MATLAB还具有300余家第三方合作伙伴,分布在科学计算、机械动力、化工、计算机通讯、汽车、金融等领域。
接口方式包括了联合建模、数据共享、开发流程衔接等等。
MATLAB结合第三方软硬件产品组成了在不同领域内的完整解决方案,实现了从算法开发到实时仿真再到代码生成与最终产品实现的完整过程。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
3.1MATLAB程序设计
MATLAB有两种工作方式:
一种是交互式的命令行工作方式;另一种是M文件的程序工作方式。
在前一种工作方式下,MATLAB被当做一种高级数学演算纸和图形表现器来使用,MATLAB提供了一套完整的而易于使用的编程语言,为用户提供了二次开发的工具,下面主要介绍MATLAB控制语句和程序设计的基本方法。
用MATLAB语言编写的程序,称为M文件。
M文件有两类:
命令文件和函数文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Matlab 逻辑电路 设计 仿真