1、 - 1 - 1 设计题目的理论分析 设计一个三人表决逻辑电路,要求: 三人 A、B、C 各控制一个按键,按下为“1”,不 按为“0”。 多数 (2) 按下为通过。 通过时 L1, 不通过 L0。 用与非门实现。 使用 Simulink 进行简单的仿真。 这个题目是是对一个简单的数字电路的设计。可以用基本的逻辑门电路按照逻辑表达 式进行搭建,完成需要的功能。 组合逻辑电路的设计一般可按以下步骤进行: (1)逻辑抽象。将文字描述的逻辑命令转化成真值表的逻辑抽象。首先要分析逻辑 命题,确定输入、输出变量;然后用二值逻辑的 0、1 两种状态分别对输入。输出变量进 行逻辑赋值,即确定 0、1 的具体含
2、义;最后根据输出与输入之间的逻辑关系列出真值表。 (2) 选择器件类型。 根据命题的要求和器件的功能及其资源情况决定采用哪种器件。 (3)根据真值表和选用的逻辑器件的类型,写出相应的逻辑函数表达式。当采用 SSI 集成门设计时,为了获得最简单的设计结果,应将逻辑函数表达式化简,并变换成为与门 电路相对应的简单式。 (4)根据逻辑函数表达式及选用的逻辑器件画出逻辑电路图。 (5)使用仿真软件进行仿真检测,确认其逻辑功能的正确性。 对于本课题来说, 可以将每人表决的意见用 0、 1 表示, 不妨设该人同意某项议题为 1, 反对某项议题为 0。同时,也可将最后的表决结果用 0、1 表示,不妨设该议题
3、被表决通过 为 1,没通过为 0。这样我们便可根据表决的规定(两人以上同意才能通过)来列出表决 结果 L 与每个人表决意见 A、B、C 的真值表,如下图所示: - 2 - 表 1 表决结果的真值表 A B C L 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 根据所列真值表,画出卡诺图: 图 1:表决结果的卡诺图 根据卡诺图和设计要求(使用与非门)写出逻辑函数表达式: ABACBCABACBCL (1) 得到表达式后,从表达式中看出,输入的表决信号经过三个两输入与非门和一个三输 入与非门得到输出信号。 根据表达式
4、分析电路构成后,使用 Altium Designer 软件绘制该表决电路的电路原理 图,如下图所示: BC A 00 01 11 10 0 0 0 1 0 1 0 1 1 1 - 3 - 图 2 表决电路原理图 - 4 - 2 Simulink 仿真 2.1 Simulink 介绍 Simulink 是基于 MATLAB 的框图设计环境,可以用来对各种动态系统进行建模、分析和 仿真,它的建模范围广泛,可以针对任何能够用数学来描述的系统进行建模。 2.2 仿真操作 (1)打开 MATLAB 操作软件,点击工具栏中的 Simulink 图标进入 Simulink 的操作环境。 (2) 弹出Simu
5、linkLibraryBrowser的窗口后, 点击标题栏下方的 file按钮, 选择新建 model, 弹出仿真绘图区,如下图所示。 图 3 仿真操作图(1) (3) 在Simulink文件库窗口左边的文件库中选择SimulinkLogic and Bit Operations选项, 然后在右边的元件选择区选择 Logical Operator 图标,将其拖动至仿真绘图区。本电路共需 要 4 个门电路,所以重复上述操作 3 次,使仿真绘图区有 4 个门电路元件。 - 5 - 图 4 仿真操作图(2) (4)在 Simulink 文件库窗口左边的文件库中选择 SimulinkSignal Ro
6、uting选项,在右边 的元件选择区选择 Manual Switch图标,将其拖动至仿真绘图区。本电路共需要 3 个单刀 双掷开关,所以重复上述操作 2 次,使仿真绘图区有 3 个单刀双掷开关。 图 5 仿真操作图(3) (5)在 Simulink 文件库窗口左边的文件库中选择 SimulinkSources 选项,在右边的元件 选择区分别选择 constant 和 ground 两个图标,分别将其拖至仿真绘图区。 - 6 - 图 6 仿真操作图(4) (6)在 Simulink 文件库窗口左边的文件库中选择 SimulinkSinks 选项,在右边的元件选 择 Display图标,将其拖动至仿真绘图区。本电路共需要 4 个逻辑电平显示器,所以重复 上述操作 3 次,使仿真绘图区有 4 个逻辑电平显示器。 图 6 仿真操作图(5) (7)在仿真绘图区双击 Logical Operator 图标,在弹出的对话框中修改属性,本电路需要 与非门,所以将 Operator 设置为 NAND,然后将输入脚数改为 2,再点 apply和 OK。重复 两次上述操作, 使