逻辑电路设计方法十篇-欧洲杯买球平台

时间:2023-10-20 17:26:38

逻辑电路设计方法

逻辑电路设计方法篇1

关键词:最简化;约束条件;组合逻辑电路设计;编码器;奎恩-麦克拉斯基法

中图分类号:tn710 文献标识码:b

文章编号:1004-373x(2008)06-006-02

a new method about combinational circuit synthesis

zuoquansheng

(changzhou institute of technology,changzhou,213002,china)

abstract:minimization is an important step in both asic design and in pld-based design.it is highly desirable to find the simplest implementation that is the one with the smallest number of gates or wires.a large number of constraint terms are dealt with in both asic design and in pld-based design,but the terms whose value is 1 or 0 is limited. a new method about combinational-circuit synthesis is proposed.this method can′t deal with these constraint terms.it can only deal with those terms whose value is 1 or 0.so the steps of synthesis is simplied.it is specialized utilized in those combinational circuit synthesis which has a large number of constraint terms.two actual examples are proposed to give evidence that according to this method we can minimize the steps of synthesis.

keywords:minimization;constraint condition;combinational circuit synthesis;encoder;quine-mcclusky algorithm

组合逻辑电路设计的最简化无论在asic设计和pld设计中都很重要。因为组合逻辑电路中多余的门和输入端需要asic芯片的更多面积,因而也增加了他的成本;pld的门电路是固定的,组合逻辑电路中有多余的门和输入端就需要容量更大、速度更慢、价格更高的pld。因为用一般的逻辑表达式实现的组合逻辑电路的规模随输入变量的数目增加而成指数级增加,所以直接用一般的逻辑表达式实现逻辑电路是不经济的。现在组合逻辑电路设计有很多种方法,但这些方法对那些有大量约束项的组合逻辑电路设计不是最好的。工程上常见的组合逻辑电路常有很多输入变量,对多输入变量的组合逻辑电路设计,文献\[1\]和文献\[2\]介绍的公式法和卡诺图法都不适用。这些组合逻辑电路常有很多约束条件,使用文献\[1\]介绍的奎恩-麦克拉斯基法步骤很多。例如3位二进制(8线-3线)编码器有8个输入变量i7i6i5i4i3i2i1i0,3个输出变量y2y1y0。8个输入变量i7i6i5i4i3i2i1i0е挥8种允许的组合,即00000001,00000010,00000100,00001000,00010000,00100000,01000000,10000000。另外248种组合是不允许出现的约束项。任何一个输出变量实际上只有4种组合为1,4种组合为0。又如并行比较型模/数变换器adc0881芯片中有255个时钟锁存器(可用c255c254…c2c1п硎)。这255个变量的组合数量是很大的,但他的编码器的输出是8位二进制数(用d7d6d5d4d3d2d1d0п硎),也就是说这255个变量只有256种组合是允许出现的,其他大量的组合是不允许出现的约束项。编码器的每位输出变量实际上只有128种组合为1,128种组合为0。传统的公式法和卡诺图法等组合逻辑电路设计方法主要是通过对为1的组合和约束项进行处理,对为0的组合基本不处理。对于多输入变量的组合逻辑电路设计而言,大量的约束项大大地增加了设计的复杂度。通过研究发现:利用这些有限的1和0就能设计组合逻辑电路,很多约束条件在设计时可以不用处理,这就可以大大简化逻辑电路的分析和设计。

1 新方法的基本思想

引理1 比较输出变量为1的组合与某个输出变量为0的组合,找出其中不同的变量及其组合,例如输出变量为1的组合有q=q1q2…qt,而某个输出变量为0的组合没有q=q1q2…qt,则q=q1q2…qt是该输出变量为1的组合的一个因子。

因为q=q1q2…qt在输出变量为1的组合中出现,在某个输出变量为0的组合没有出现,但不知道在其他输出变量为0的组合会不会出现,所以q=q1q2…qt可以表示这个输出变量的一部分,但不能表示这个输出变量的全部。

引理2 设q=q1q2…qt是输出变量为1的组合出现,而所有输出变量为0的组合均不出现,则该输出变量为1的组合可以用q=q1q2…qt表示。

因为q=q1q2…qt在所有输出变量为0的组合均不出现,这说明含q=q1q2…qt的所有项要么是1,要么是约束项,因而该输出变量为1的组合可以用q=q1q2…qt表示。

引理3 输出变量为1的某个组合的所有因子的与可以表示该输出变量为1的组合。

与逻辑表示只有在决定事物结果的全部条件具备时,结果才发生的因果关系。输出变量为1的某个组合的所有因子的与表示输出变量为1的这个组合出现、所有输出变量为0的组合均不出现,因而可以表示输出变量为1的这个组合。

引理4 一个输出变量所有为1的组合的或可以表示该输出变量。

2 新方法举例

例1:研究3位二进制(8线-3线)编码器,他的8个输入变量i7i6i5i4i3i2i1i0允许8种组合,发现每种组合只有一个变量为1,其余变量为零;2个或2个以上的变量为1的组合都是不允许出现的。输出变量y2y1y0у拿恳晃欢加4个组合为1、4个组合为0,其他都是约束项(见表1)。

y2的第5种组合为1,这种组合有而他为0的第1种组合没有的因子是i4,i0,i0i4;这种组合有而他为0的第2种组合没有的因子是i4,i1,i1i4;这种组合有而他为0的第3种组合没有的因子是i4,i2,i2i4;这种组合有而他为0的第4种组合没有的因子是i4,i3,i3i4;输出变量为1的这个组合所有因子的与是i4,i0i1i2i3。取其最简单的表达式,即y2的第5种组合可以表示为i4。同理可得:y2的第6种组合可以表示为i5;y2的第7种组合可以表示为i6;y2的第8种组合可以表示为i7。最后可得:y2=i4 i5 i6 i7;

同理可得:y0=i1 i3 i5 i7;y1=i2 i3 i6 i7。

例2:3位二进制数码输出的并行比较型模/数变换器的代码转换如表2所示:

d2的第5种组合为1,这种组合有而他为0的第1种组合没有的因子是c4,c3,c2,c1;这种组合有而他为0的第2种组合没有的因子是c4,c3,c2;这种组合有而他为0的第3种组合没有的因子是c4,c3;这种组合有而他为0的第4种组合没有的因子是c4。

d2的这种种组合为1的所有因子的与的最简单表达式是c4,即d2的第5种组合可以表示为c4;同理,d2的第6种组合为1的所有因子的与的最简单表达式是c4,c5,即d2的第6种组合可以表示为c4或c5;d2的第7种组合为1的所有因子的与的最简单表达式是c4,c5,c6,即d2的第7种组合可以表示为c4或c5,c6;d2的第8种组合为1的所有因子的与的最简单的表达式是c4,c5,c6,c7,即d2的第8种组合可以表示为c4或c5,c6,c7。最后得d2的最简表达式是:d2=c4。

d1的第3种组合为1,这种组合有而他为0的第1种组合没有的因子是c2,c1;这种组合有而他为0的第2种组合没有的因子是c2;这种组合有而他为0的第5种组合没有的因子是c4,c3;这种组合有而他为0的第6种组合没有的因子是c5,c4,c3。

d1的这种种组合为1的所有因子的与的最简单的表达式是c2c4或c2c3;同理,d1的第4种组合为1的所有因子的与的最简单的表达式是c1c4或c2c4;d1的第7种组合为1的所有因子的与的最简单的表达式是c6;d1的第8种组合为1的所有因子的与的最简单的表达式是c6或c7。

最后可得d1的最简表达式是:c6 c2c4。d0的第2种组合为1,这种组合有而他为0的第1种组合没有的因子是c1;这种组合有而他为0的第3种组合没有的因子是c2;这种组合有而他为0的第5种组合没有的因子是c4,c3,c2;这种组合有而他为0的第7种组合没有的因子是c6,c5,c4,c3,c2。d0的这种种组合为1的所有因子的与的最简单的表达式是c1c2。同理,d0的第4种组合为1的所有因子的与的最简单的表达式是c3c4;d0的第6种组合为1的所有因子的与的最简单的表达式是c5c6;d0的第8种组合为1的所有因子的与的最简单的表达式是c7。最后可得d0的最简表达式是:c7 c5c6 c3c4 c1c2。

3 结 语

类似的例子可以举很多,通过上述例子分析可知,利用本文介绍的方法,这些约束条件许多可以不加处理,这可以大大简化逻辑电路的分析和设计。

参考文献

[1]brian h,clive w.digital logic design\[m\].北京:人民邮电出版社,2006.

[2]阎石.数字电子技术基础\[m\].北京:高等教育出版社,2005.

逻辑电路设计方法篇2

关键词:合理;稳定;效率;逻辑函数

继电控制线路的主要作用是为生产机械服务,是生产机械在生产过程中不可缺少的重要组成部分。在自动生产流水线上或机床控制方面很多都采用继电控制方式的电气控制线路,实际生产中,继电控制线路设计是否可靠、合理、稳定,直接影响着生产效率和生产效益。我们在从事维修电工实践教学和校企合作技能培训过程中,发现很多学生和学员,甚至是有不少实际生产经验丰富的一线电工,在如何设计出合理的继电控制电路方面都存在着较大的欠缺,这说明,具体有效的线路设计是学生和学员学习中的较大难题。

在继电控制线路设计中,不少设计人员采用的是经验设计法。此法在设计比较简单的控制线路时有较大优势,但在设计比较复杂的控制线路时显现出一定的局限性。第一,对设计者要求高,需要设计者熟悉工业系统中各种典型的控制线路和丰富的实践经验及设计技巧的积累;第二,设计效率低,在工程应用上不方便,要求设计人员在设计过程中要反复修改完善,通过不断试验论证来满足生产工艺要求,耗费大量的时间和精力;第三,设计方案不可靠、不经济,由于经验以感性认识为主,不具理性认识的系统性,经常造成所得的方案不合理、不经济现象出现。基于经验设计法在实际应用中的局限性,我们在多年的一体化教学及具体实践培训过程中,总结出采用逻辑函数设计方法进行继电控制线路的设计取得了较好的成效。

一、逻辑函数设计法应用基础

数字电路研究的是开关电路,电路中对应的两种状态是“开通”与“关断”,在逻辑函数中用二元常量“1”和“0”表示。而在继电控制线路中,控制电路主要是对受控电器进行开通、关断控制。相关交流接触器或继电器受电或失电引起触点“动断”或“动合”产生的电路逻辑状态的变化,元器件的动作状态类似于逻辑函数中的“1”和“0”的两种数字状态,故在继电控制线路的设计中可以引用数字电路中的逻辑函数的关系进行相关继电线路的设计。所谓继电线路的逻辑函数设计法,就是按照生产工艺的要求,利用逻辑代数的关系来分析设计继电控制线路。这种设计方法特别适用于较复杂的生产工艺所要求的自动生产或组合机床控制线路的设计。采用逻辑函数设计法得到的控制线路设计简要、经济、安全、稳定、可靠。在实际应用中应根据具体情况,尽可能减少所用器件数目和种类,这样可以使安装好的电路结构紧凑,达到工作可靠而且经济的目的,所得到的电路设计结果比经验设计法有明显的优点,能得到生产工艺所要求的最佳设计方案。

二、逻辑函数设计的基本原理及要求

逻辑函数的理论基础是逻辑代数,逻辑运算的三种基本形式为与(逻辑乘)、或(逻辑加)、非(逻辑反)。这三种关系的不同逻辑组合形式得到的表达式构成了继电线路逻辑电路图的基础。

逻辑电路图,是由若干个基本逻辑符号及它们之间的连线构成的图形。实际生产中,设计者往往将电气控制线路中元件触点的“开通”“关断”状态的变化作为逻辑变量。就整体而言,继电控制逻辑电路的输出量与输入量之间的关系是一种因果关系,故输出的状态与输入的变量可以用逻辑表达式来描述。

1.三种基本逻辑关系表达形式

(1)逻辑与关系。

(2)逻辑或关系。

当一件事件的几个条件中只要有一个条件得到满足,这件事就会发生。图1的b中使km得电的逻辑表达式为:km=sb1 sb2。

(3)逻辑非关系。

当一件事情的发生以其相反条件为依据,即二者之间是处于对应的逻辑关系。图1的c中km得电的逻辑表达式为:km=

实际电路中,一个继电控制电路,往往是由各种元器件不同的逻辑状态组合而成。

2.逻辑规定

(1)各种电磁元件的线圈通电状态的逻辑关系为“1”,失电时的逻辑关系为“0”。

(2)各种控制按钮、开关触头、接触器或继电元件的自身触点闭合的逻辑状态规定为“1”,各触点的断开逻辑状态规定为“0”。

(3)元件的动断触点的状态均用“非”状态表示,即。

(4)x开。

(5)x关。

能使继电器失电的关断信号,若此信号由“1”“0”转变使继电器关断,取原变量;若逻辑状态由“0”“1”转变,取其反变量;当使继电器失电的关断信号不止一个时,这些判断信号的逻辑关系是“或”关系。

三、逻辑函数设计法设计步骤及应用分析

现以一个企业生产应用实例进行说明:

1.生产工艺设计要求

某自动生产流水线有两台电机m1与m2,为实际操作方便要求能够实现两地控制,第一台电机m1先行启动,运行3分钟后,第二台电机m2自动启动运行;正常生产结束时,必须第二台电机m2要先停车,否则第一台电机不能停车,第二台电机m2停车3分钟后第一台电机m1自动停车,要求线路中有必要的电气保护环节。

2.继电控制线路逻辑设计步骤

在状态表中,所有器件在初始位都不得电,上图中状态转换信号包含主令信号与执行元件动作时自身辅助触头所引起的状态变化信号。实际生产中,可根据具体需要设置中间继电器为中间记忆单元,以确保设计出的继电控制线路既可行又安全。上表中,km1控制电机m1的通断状态,km2控制电机m2的通断状态。

(3)根据状态表列写出各元器件动作的逻辑表达式。

①km1的逻辑函数表达式。

(5)规范电路设计标准,完善电路设计功能。

根据以上步骤分析可知:在设计过程中,运用逻辑函数设计法,设计者就有一个比较系统的设计思路,大大提高线路的设计成效,从而缩短线路的设计时间;采用逻辑函数设计法,可简化继电控制线路,减少很多不必要的经济费用,同时还可以极大地提高线路运行的可靠性、安全性,在较复杂的生产工艺的继电控制线路上有较大的使用价值。

参考文献:

[1]陈伯时.电力拖动自动控制系统[m].北京:机械工业出版社,1997.

[2]阎石.数字电子技术基础[m].北京:高等教育出版社,2006.

逻辑电路设计方法篇3

关键词: 组合逻辑电路;电路设计;multisim;仿真;交通信号灯;监控器

中图分类号:tp391 文献标识码:a 文章编号:1009-3044(2013)29-6625-04

1 概述

数字电子技术已广泛应用于各个专业技术领域,组合逻辑电路是数字电路重要的组成部分,也是时序逻辑电路设计的基础,在实践中被广泛应用。组合逻辑电路的输出仅与当前的输入状态有关,而与输入之前的信号状态无关,因此组合逻辑电路没有记忆功能,在其电路中没有反馈延迟电路[1-2]。

multisim的前身是ewb(electronics workbench)软件,是美国国家仪器(ni)有限公司推出的以windows为基础的交互式spice仿真和电路分析软件,专用于原理图捕获、交互式仿真、电路板设计和集成测试[3-5]。multisim软件包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。

本文以交通信号灯监控器为例,分别运用与非门74ls00、中规模集成数据选择器74ls151和中规模集成译码器74ls138为主要元件设计三种实现监控交通信号灯状态的控制电路,并利用multisim 12.0软件进行仿真测试。

2 组合逻辑电路的设计

2.1 组合逻辑电路设计的一般步骤

组合逻辑电路设计主要是将用户的具体设计要求用逻辑函数加以描述,再用具体的电路加以实现的过程。组合逻辑电路的设计可分为小规模集成电路、中规模集成电路、定制或半定制集成电路的设计[6]。其设计的一般步骤可用图1来表示:

1)首先对命题要求进行分析,确定输入变量、输出变量的个数和状态,并以真值表的形式列出;

2)根据真值表写出逻辑函数表达式;

3)通过逻辑化简,写出最简的逻辑函数表达式;

4)根据逻辑功能要求以及实际情况,选择合适的门器件,把最简的表达式转换为相应的表达式;

5)根据表达式画出该电路的逻辑电路图。

2.2 组合逻辑电路的设计方法

组合逻辑电路可以采用分立元件实现,随着微电子技术的迅速发展和集成电路工艺水平的提高,单块芯片的集成度越来越高,价格越来越便宜,也可用通过小规模集成电路ssi,中规模集成电路msi、定制或半定制集成电路等来实现[7]。

本文以监控交通信号灯工作状态的监控器为例分析组合逻辑电路的设计方法。交通信号灯是交通信号中的重要组成部分,是道路交通的基本语言,每一组交通信号灯由红、黄、绿三盏灯组成。正常工作情况下,任何时刻必有一盏灯点亮,而且也仅有一盏灯亮。当出现其他状态时,电路发生故障,这时监控器发出故障信号以提醒维护人员前去修理。

2.2.1 命题分析

根据交通信号灯监控器的工作原理,确定红、黄、绿三盏灯的状态为输入变量,分别用a、b、c表示;取故障信号为输出变量,用f表示。

假设:a、b、c取1时,表示灯亮,a、b、c取0时,表示灯不亮;f为1时,表示工作状态正常,f为1时表示发生故障。

2.2.2 列写真值表

根据命题分析列出逻辑真值表,如表1所示。

计算机工程应用技术\jxy02.jpg> (1)

运用卡诺图化简,可得简化的逻辑函数表达式:

2.2.4把最简的表达式转换为相应的表达式

逻辑电路图是根据逻辑函数表达式得出的,因此画逻辑电路图之前要根据逻辑功能要求以及实际情况确定元件,将最简的表达式转换为与所选用元件相对应的表达式。

1)选用与非门实现

选用集成与非门74ls00、74ls20实现交通信号灯监控器,将输出与输入之间的逻辑关系转换为与非表达式。通过表达式变换,得到式3。

数据选择器是一种多路输入、单路输出的逻辑部件。它在控制信号作用下,从多个输入数据中选一个送到输出端。式4给出了数据选择器输出与输入的逻辑关系,其中,a0、a1、……ak表示控制信号,y表示输出信号,di为数据输入信号,mi为控制信号的最小项表示,2k=n。

从表达式4中可以看出,其输出实际上是数据输入与地址输入的最小项相与的关系,所以数据选择器可以实现各种组合逻辑功能。选用中规模集成数据选择器74ls151可实现交通信号监控器。74ls151是八选一数据选择器,对式1进行变换,可得式5:

[f =abc abc abc abc abc =m0 m3 m5 m6 m7 =m0?1 m1?0 m2?0 m3?1 m4?0 m5?1 m6?1 m7?1] (5)

由式5可以看出,选用74ls151实现交通信号监控器需使f=y,a=a2,b=a1,c=a0,则有d0=d3=d5=d6=d7=1,d1=d2=d4 =0。

3)选用变量译码器实现

变量译码器是组合逻辑电路中一个重要的器件,它是一个将n个输入变为2n个输出的多输出端的组合逻辑电路。变量译码器的输出与输入之间的逻辑关系可用式6表示:

(6)

其中,yi 是输出端,mi是关于输入变量an-1,an-2,……,a0的最小项,0

由于译码器电路的输出列出了该电路的所有最小项表达式,而任何一个组合逻辑电路都可以写成最小项表达式的形式,因此我们可运用译码器电路实现各种组合逻辑电路。选用中规模集成译码器74ls138来实现交通信号灯监控器。由于74ls138的输出是反变量形式,低电平有效,因此变换式1得:

[f=abc abc abc abc abc=m0 m3 m5 m6 m7 =m0 m3 m5 m6 m7=m0?m3?m5?m6?m7] (7)

使74ls138的三个数据输入端分别为:a=a2,b=a1,c=a0,且三个使能端有效,则74ls138中的8个输出可分别与交通信号灯监控器输出的最小项一一对应。

2.2.5 根据表达式画出逻辑电路图

为了便于逻辑电路图的验证,利用multisim 12.0设计逻辑电路图。根据2.2.4小节中三种设计方法的相应表达式:式3、式5、式7画出逻辑电路图,分别如图2、图3、图4所示。

图2~图4中的xlc1 为逻辑转换仪,它是multisim软件的一种虚拟装置,可以接入交通信号灯监控器的输入与输出端,测试与验证其逻辑功能。通过逻辑转换仪中的“逻辑电路转换为真值表”的功能分别验证了图2~图4的逻辑功能,得到的真值表相同,如图5所示,该电路真值表及逻辑函数表达式与设计的要求一致。

2.3设计方法分析比较

选用不同的元件最后设计出的电路形式虽然差别很大,但是实现的逻辑功能却相同。选用如本文选用的74ls00、74ls20等ssi来实现电路,所用的集成电路芯片数量多,线路复杂,通用性不强,仅能够适应某一特殊的函数要求。在用ssi设计电路时,要力求逻辑门电路的数量、种类以及输入端的数量均应达到最少。

选用msi设计组合逻辑电路,如本文选用的74ls151、74ls138,可以减少元件的数目,具有较强的通用性,可靠性高,易于设计、生产、调试和维护[8]。

3 组合逻辑电路的仿真

对于设计好的组合逻辑电路,不仅可以通过 multisim中的逻辑转换仪来验证,还可以在multisim窗口中搭建电路来仿真。从multisim元件库在已经绘制好的逻辑电路图中添加电源、地、电阻、发光二极管等电器元件并进行连线,得到仿真电路图。由于篇幅有限,文中只给出了用74ls138实现交通信号灯监控器的仿真电路图,如图6所示。

在仿真过程中,s1、s2、s3三个开关在全部打开、全部闭合以及任意两个闭合的情况下,发光二极管就会亮,此时表示交通信号灯出现故障。

4 结束语

本文以交通信号灯监控器为例分析了组合逻辑电路设计的过程并进行了multisim仿真测试。可以看出组合逻辑电路设计中,要实现相同的逻辑功能可根据实际情况选用不同的设计方法;同时,借助于eda软件multisim,可以显著提高电路设计工作的效率,为组合逻辑电路的设计仿真提供了一定的借鉴方法。

参考文献:

[1] 王毓银.数字电路逻辑设计[m].北京:高等教育出版社,2002.

[2] 魏淑桃.计算机电路基础[m]. 北京:高等教育出版社,2008.

[3] 周润景,郝晓霞.multisim&labview 虚拟仪器设计技术[m].北京:北京航空航天大学出版社,2008.

[4] 石嘉顺.基于multisim 环境下的电路设计与仿真[j].计算机仿真,2007,24(12):306-308.

[5] 王延才.基于multisim 的电路仿真分析与设计[j].计算机工程与设计,2004,25(4):65-67.

[6] 黄进文.组合逻辑函数的实现方法讨论[j].宝山师专学报,2004,23(2):42-46.

逻辑电路设计方法篇4

逻辑运算继电器触点的实现电路: 

       关键词:电气论文,逻辑设计法,真值表   1 逻辑关系

     (3)真值表 

用逻辑变量的真正取值反映逻辑关系的表格成为真值表。 

用继电器接点实现逻辑代数的基本事项。 

①逻辑1和继电器的常开触头闭合相对应。 

②逻辑0和继电器的常开触头断开相对应。 

③逻辑“非”的实现可以使用常闭接点。 

(4)由三种基本运算得出的逻辑代数公理(基本运算规则) 

0 0=0 0·0=0 0 1=1 0·1=0 

1 0=1 1·0=0 1 1=1 1·1=1 

2 应用实例 

(1)要求:按下sb1,指示灯hl1点亮;按下sb2,指示灯hl1和hl2点亮;按下sb1和sb2后指示灯hl2点亮。 

(2)使用器件:按钮开关2个,电磁式中间继电器2个,指示灯2个。 

(3)设计步骤 

①列出控制元件与执行元件的动作状态真值表(表4) 

②写出逻辑表达式(与或表达式) 

③化简(使用公式法、卡诺图法或电路图法) 

(a)公式法: 

(b)卡诺图法,如图1所示:hl2=ka2 

(c)电路图法:(按下面顺序进行化简,如图2所示) 

④画电路图,如图3所示。 

⑤实现电路,验证电路的正确性。 

逻辑电路设计方法篇5

关键词: 量子门 量子可逆电路 量子多值逻辑 通用门库

近30年来,人们已提出了多种量子门,如toffoli门[1],fredkin门,peres门等,并给出了量子门的代数特征。如何使用指定量子门库中的量子门自动生成量子代价较小的量子可逆逻辑电路,其本质就是量子可逆逻辑电路综合技巧问题。shende将可逆电路综合转化为置换问题,并提出三量子可逆逻辑电路综合最优算法;yang在此基础上利用gap软件实现了三量子最小长度和最小代价可逆逻辑电路综合算法。然而目前大多数算法只是在综合三量子电路时效果很好,随着综合量子比特数的增加,综合量子可逆逻辑电路的时空复杂度将进一步增加。在综合四量子电路时,yang等人利用广度优先搜索和双向综合技术,使用cnp量子门库可综合最长为12的四量子偶置换最优电路,这已是较好结果;李等人使用cnp量子门库,在广度优先搜索的基础上,巧妙构造哈希函数并利用线置换和向变换进行无损压缩可快速生成最大长度为16的最优四量子偶置换电路,这是目前已知的最好结果。目前人们还未设计出通用高效的多量子电路综合算法,这是量子电路设计中急需解决的重要问题之一,因为它的设计实现不仅可以降低制造量子电路的成本,而且能提高多量子可逆电路设计的效率。

目前比较有代表性的量子可逆电路构造方法有以下几种[2]。

穷举法、rm方法、群论分解方法、探索法,通过比较知穷举法综合结果好,能达到最优,但时间空间开销大;真值表和rm方法构造巧妙,综合速度快,但结果不尽理想,需要辅以优化;群论方法新颖高效,算法收敛迅速(有限步结束),但构造复杂,较为繁琐,需要的门库规模大;其他方法也均是在综合的效果和效率之间寻求一个平衡点,这个平衡点如何选取,则应该以实践中的具体需求情况为依据。

构建量子可逆逻辑电路主要有构造与优化两个过程,有些算法是先构造再优化,还有一些算法则是构造与优化同时进行。通常所得到的量子电路并不是最优电路,如何有效地优化电路,成为量子电路领域的另一个研究重点。iwama、maslov、maslov等都对电路优化程度作出了杰出贡献。

目前对量子二值逻辑可逆电路综合算法的研究较多,但对于多值逻辑量子电路综合技术的研究较少[3]。其中的原因主要有:第一,人们已习惯于经典计算中的二值逻辑,利用多值逻辑进行计算不符合人们常规的思维和计算方式;第二,对于多值逻辑的理解与应用本身就是困难的,涉及多值逻辑理论及群、环、域等代数理论,量子可逆电路的设计又具有相当难度,规模较大,复杂性较高,其中又要解决量子的自然属性(如消相干现象等)对计算的负面影响。所以将多值逻辑应用于量子电路,设计具有相当复杂性的多值逻辑量子电路也是困难的。然而,量子具有多种可观测的属性,例如光子的偏振方向,电子的自旋方向,电子所处于的能级等,因而具有多个复杂的自由度,利用多能级描述量子位也更自然。由于量子实验物理的发展进步及测量技术的不断完善,对于量子在各个属性上的测量的精准度大大提高,使得量子高维基态(即多值逻辑量子态)的应用成为可能。另一方面,量子多值逻辑的应用能够极大提高量子并行计算的能力(理论上比二值逻辑更强大),并可在存储和处理量子信息时提供更大的灵活性,又可以无辅助位的方式用两位量子门和一位量子门建立多量子电路,使得多量子电路的物理实现成为可能。对多值量子可逆逻辑电路综合的研究正在兴起。

量子可逆电路本质上是置换电路[4],在此基础上可根据一些特定功能构造量子专用电路,专用电路的设计实现及应用可加速运行算法,并对量子寄存器或量子芯片等的设计作出一些贡献。目前已设计出量子全加器、量子全减器及受控集成量子加减电路,它们是构建量子计算机的基本单元。在量子纠错编码和容错计算中可根据纠错码的生成矩阵和校验矩阵,分别生成编码电路和解码电路。2005年何等人通过分解蝴蝶矩阵和转置矩阵独立实现了基于haar小波多尺度分析的完整量子电路。2006年cheng等人用bitonic方法快速构造大规模的量子排序电路,给出的线路模型清晰地反映出算法消耗资源的情况。2007年khan等人给出了利用三值逻辑feynman和toffoli门实现的三值逻辑全加器,基于此又实现了带有部分前瞻的三值逻辑并行加法器,并展示了将此电路用作并行减法器的方法。2008年khan提出综合量子四值逻辑加法/减法器的递归电路。之后khan又提出量子四值逻辑比较器,比较器是著名的grover量子搜索算法的关键功能模块―oracle的组成部分,也是基于比较的各种算法及控制器的基本模块。当然,由于量子电路设计的复杂性,目前综合出的专用电路还不多,并且给出的大多数的电路并非最简形式。

尽管对于量子可逆电路的研究已取得了一些成果,但目前对于构建量子可逆电路的量子门及通用门库的研究还不深入,对于量子可逆电路的生成方法和优化方法的研究还处于起步阶段。对其中的一些问题,如多值逻辑的嵌入与应用,电路优化策略,综合算法复杂性的深入分析与证明等,只是进行了初步的探索。虽出现了一些欧洲杯买球平台的解决方案,但并不十分成熟,还有一些领域未曾涉及,所以需要进一步深入研究。

参考文献:

[1]李志强,陈汉武,徐宝文等.基于hash表的量子可逆逻辑电路综合的快速算法[j].计算机研究与发展,2008,vol.45-2:2162-2171.

[2]何雨果,孙吉贵.基于haar小波的多尺度分析量子电路[j].科学通报,2005,vol.50-20:2314-2316.

逻辑电路设计方法篇6

关键词:数字逻辑;实践教学;课程体系;实验创新

中图分类号g642.423;tn79 1 文献标志码a doi:10.3969/j.issn.1672-4550.2016.02.037

数字逻辑课程是电子信息类专业的基础必修课,是各个专业的入门硬件课程,在课程体系中起着支撑作用。数字逻辑课程的主要内容是数字逻辑电路的分析与设计,分为组合逻辑和时序逻辑两个主要部分[1]。由于课程的主要理论知识都是在硬件电路的基础上进行讲解的,因此数字逻辑课程实验是课程教学的一个重要环节,只有有了有效的实践环节才能保证理论知识的真正掌握,让学生能够灵活地进行数字电路的设计和分析。

1计算机专业数字逻辑课程的特点

对于计算机专业来说,数字逻辑课程是计算机组成原理、系统结构、嵌入式系统等课程的先导课,有着很重要的基础支撑作用[2]。相对于其他电子类专业来说,数字逻辑课程在计算机专业的课程体系、教学内容和实验环节上有着自身的特点。

1.1数字逻辑是整个课程体系的基础之一

传统的计算机专业课程体系的层次分为计算机专业基础类课程、计算机软硬件理论基础类课程和计算机应用技术类课程[3]。该层次是按照课程的内容和应用来划分的。从目前比较强调计算机系统能力培养这一角度出发,计算机课程可分为计算机系统基础课程、重组内容的核心课程和侧重不同计算系统的若干相关平台应用课程[4]3个层次。不管是传统的层次还是系统能力培养的角度,数字逻辑都是一门基础课程,被放到课程体系的重要位置。从课程内容和应用来说,数字逻辑以离散数学为理论基础,是计算机硬件系列课程的入门和起始,向后衔接了计算机组成原理等课程;从系统层次来说,数字逻辑是计算机底层系统具体实现的基础,为计算机软硬件系统理论提供底层硬件支持。

1.2数字逻辑以计算机硬件设计为目标

计算机专业教学不仅仅要求学生会使用计算机,还要求能够理解计算机系统硬件的工作原理,并能够设计计算机系统。这是计算机专业区别于其他专业的一个主要特点。因此,数字逻辑课程的教学是以计算机硬件设计为目标的,实验教学过程中也会比较偏向计算机相关部件的介绍,比如算术逻辑单元alu、寄存器堆的设计、状态机等,为后续计算机组成原理课程提供基础[5]。

1.3以系统设计为主的教学以及实验内容层次跨度大

数字逻辑课程安排的内容从基本的门电路到复杂的系统设计都有所涉及,课程内容以及实验安排都有着比较大的跨度,要求学生能够理解基本的电路理论知识,更重要的是能够设计和分析数字电路。在具体的教学和实验过程中,门电路的内部构成,比如三极管如何工作等内容,并不作为主要的介绍对象,只需要学生了解即可;而高层次的电路系统设计则被作为一个重要内容,如何分析和设计这些电路是课程和实验主要关心的内容。1.4数字逻辑是理论和实践结合的课程数字逻辑课程的主要内容是介绍一些具体的数字电路,包括组合逻辑电路和时序逻辑电路,其理论知识都有着实际对应的硬件电路实现。因此,数字逻辑是一门实践性很强的课程,如果没有实际的动手操作过程,是很难更好地理解课程中的理论知识的。

2数字逻辑实验教学

由于实验是数字逻辑课程不可或缺的组成部分,各高校的数字逻辑课程基本上都安排了相应的实验教学内容,根据具体情况不同,所使用的实验模式、实验技术和实验内容有所不同。

2.1实验模式选择

传统的实验模式是使用具体的实验硬件设备,学生通过在具体硬件设备上操作来完成实验内容。目前,国内有很多高校和厂家都有相应的实验设备。另外一种实验模式是采用虚拟化的方案,利用计算机仿真、虚拟现实等技术对实验教学内容进行模拟,从而达到降低实验教学成本,提高教学质量的目的[6]。目前,国内有很多所高校都在进行这方面的尝试[7]。它可以通过网络完成远程教育、网络教学的实验教学任务[8]。通过虚拟化实验可以解决实验经费、实验设备不足等问题,并且实验更新也比较方便快捷,但是虚拟化实验有着比较严重的问题:学生对具体硬件电路没有切身体会,缺乏直观印象;虚拟实验很难准确地仿真实际硬件工作情况,比如毛刺的产生、按键的抖动等;通过模拟,学生难以对硬件进行调试,无法培养他们的实际操作能力。对于数字逻辑课程的学生而言,因为是初次接触硬件,对硬件还没有直观的了解,缺乏切身体会,所以实际的硬件操作是非常必要的。在课程实验中,我们选择了传统的实验模式,使用具体真实的硬件实验设备,强调实际动手操作的过程,帮助学生更好地建立起硬件的概念,同时作为辅助,实际硬件实验之前,使用仿真软件进行实验的模拟,提高实验的效率。

2.2实验技术与设备

目前,国内高校的数字逻辑实验教学中使用的硬件设备主要采用两种方式:1)传统的使用小规模通用逻辑器件,比如74系列的芯片进行电路搭建拼装实验,要求学生按照实验内容根据给定的芯片进行逻辑设计[9]。这种方式需要学生设计并实际动手连接电路,同时使用仪器进行调试,有着很好的亲身体验过程。通过这一过程可以很好地提高学生的操作和调试能力,但是由于是给定的芯片,学生的设计受到一定的限制,限制了自由发挥的空间。2)采用可编程芯片进行实验。在eda软件平台上使用硬件描述语言进行数字电路的设计,由eda工具自动完成逻辑编译、逻辑化简、逻辑综合及优化、逻辑仿真,直至对特定目标芯片的适配编译、逻辑映射和编程下载等工作[10]。使用这一方式可以使学生摆脱传统方式中繁琐的物理连线与查错,同时逻辑设计及实现有了更自由地发挥空间,可以进行更高层次的设计。但是这一方式由于主要是在软件上进行设计,使学生缺乏对实际硬件电路的直观认识,并不利于学生动手能力的培养。这两种方式各有优缺点,第一种方式是第二种方式的基础,只有有了实际的硬件直观印象和动手能力,才能更好地进行第二种方式的设计。因此,在实际的实施中,所使用的实验设备上既保留了小规模的电路搭建实验,也引入了可编程实验。

2.3实验部署

在具体的实验安排部署上,主要遵循从易到难,从门电路到复杂电路的设计规律,实验内容也分为组合逻辑和时序逻辑两个方面,都会有加法器、计数器等经典实验内容。所安排的具体实验内容和具体实验操作有一定的差别,采用实际硬件设备的一般会安排仪器使用和门电路特性实验,采用可编程器件的都会安排一些设计性比较强的实验内容。

3数字逻辑实验实施

在数字逻辑课程实验教学中,针对学生的学习层次和兴趣,结合计算机专业特点和课程需要,我们对数字逻辑实验的课程体系、实验内容等进行了一系列的改革和探索,实验教学过程强调层次化教学,强调创新能力和系统能力培养。

3.1课程体系

在课程体系上,设置了不同的实验和理论课程,如图1所示。开设了数字逻辑实验课,将实验从理论课中分离出来,形成一门独立的实验课程。该课程依托于理论课程,专注于数字逻辑的基础实验内容,要求所有的本科生都必须选修,通过该课程可以帮助学生夯实数字逻辑基础,为今后的专业课程,如计算机组成原理等课程学习打下基础。在理论课程的设置中,为了满足学生对数字逻辑的不同需求,设置了两个不同层次的课程,一门是数字逻辑课程,为传统的教学内容,满足基本的专业教学需要;另一门课程是数字逻辑设计课程,针对那些对硬件设计感兴趣的学生,不仅包含了数字逻辑的内容,而且增加了很多课程设计,需要学生投入较多的精力,完成一些复杂的实验内容。这两门课程在教学计划上是并列的,学生只需要选修一门即可。

3.2实验设置

基于上述课程设置,在实验内容的设置上各门课程有着各自的需求和特点,下面主要介绍各课程的实验安排与实验设备。3.2.1数字逻辑实验数字逻辑实验课程是学生的必修环节,也是学生的第一门硬件实验课程。在实验教学中主要强调基础实验内容和实际动手操作能力,培养学生科学的实验方法和良好的实验习惯,因此,在实验安排上设置了很多插接线路的内容,要求学生使用仪器进行硬件调试,在实验过程中掌握一般的数字电路设计和调试方法;同时也设置了一部分可编程器件实验,让学生接触一些先进的硬件设计方法。实验内容安排如表1所示。实验设备采用我们自行设计的硬件设备,如图2所示。该硬件设备整合了小规模通用逻辑器件的连线实验与可编程逻辑器件实验,采用了方便简捷的连线方式,结构简单明了、操作方便、实用性强,非常适合于进行数字逻辑基础实验。该实验设备保留了74系列芯片的实验内容,让学生通过实际搭接电路对硬件操作有直观认识,同时要求学生在实验预习时使用仿真软件对设计的电路进行仿真。在连线方式上放弃了以往面包板连线的方式,采用成品连接端子和连接孔,不需要学生再进行剥线,线路连接起来也更加方便。我们在实验设备上加入了可编程逻辑器件,实验教学中也引入了相应的实验内容,要求学生使用可编程器件完成通用逻辑器件的实验,体会两种设计方式的区别。3.2.2数字逻辑数字逻辑课程是传统的理论课程,适用于所有的本科学生,由于已经有了数字逻辑实验课程,因此课程只安排了一个课程设计“彩灯创意无限”。该课程设计是一个创新创意实验,要求学生使用发光二极管或灯阵完成一个有可展示度的设计[11],强调设计的创意。在课程设计中,学生可以使用实验设备上提供的点阵,也可以自己制作电路板。学生通过彩灯实验,完成了很多精彩的实验,如贪吃蛇、数字魔方、3d立体图形等。3.2.3数字逻辑设计选修数字逻辑设计课程的学生大部分都对硬件设计有兴趣。课程除了更深入的理论课程教学以外,课程的后半时段专门安排为实验课,让学生进行一些复杂的数字电路实验设计。在实验过程中也是采用具有更大规模可编程逻辑器件的实验设备,如图3所示。该实验设备为远程硬件统一平台[12],有着丰富的资源和接口,可以让学生有很大的设计自由度。在具体的实验教学中,先期安排几个简单的、基本的实验内容,包括点亮数字人生、vga显示、键盘输入,主要目的是让学生熟悉实验设备。然后,将学生分组进行课程设计实验,具体实验内容是学生自主设计的,要求他们充分发挥自己的创造性和想象力,完成一个较大规模的数字电路设计。在实验过程中,包括选题、方案设计、具体实验各个方面,都需要教师进行针对的指导,以便引导学生顺利地完成实验设计,因此实验教师的工作量较大。通过这几年的实验教学,学生完成了很多创新性的内容,比如图像识别、音频播放、游戏、智能车等,使学生的硬件设计能力得到了显著的提升,同时,课程也深受学生的欢迎。

3.3实验教学效果

在实验教学的改革和探索中,根据学生的特点对学生进行不同层次的培养,在数字逻辑实验课程中巩固了基础内容,在数字逻辑设计课程中对有兴趣的学生进行更高层次的培养,在数字逻辑课程中通过创意实验来提高学生对硬件的兴趣,实验教学的整体水平得到了提高。通过几年的教学,学生的计算机硬件设计能力和学习兴趣都有了普遍的提高,对于后续课程的帮助是很大的。在计算机组成原理课程中,学生反映数字逻辑课程的实验对他们完成组成原理课程实验起到了很大的作用,尤其是选修了数字逻辑设计课程的学生在以后的实验中更显得游刃有余。

4结束语

数字逻辑是一门实践性很强的课程,在计算机专业的课程体系中占据着重要的基础地位,课程的教学和实验有着计算机专业的特点,因此,我们在实验教学过程中需要不断地探索和改革,通过不同的课程实验适应学生的需求,从而更好地衔接后续的专业课程,形成一个系统的实验教学体系,培养学生的计算机系统综合能力。

参考文献

[1]王尔乾,杨士强,巴林凤.数字逻辑与数字集成电路[m].北京:清华大学出版社,2002.

[2]李永华,李国.计算机专业《数字逻辑电路》实验教学探讨[j].实验室科学,2008,11(1):37-38.

[3]邹金安,林建兵.计算机专业课程体系建设的研究与实践[j].高教论坛,2009(1):50-52.

[4]王志英,周兴社,袁春风,等.计算机专业学生系统能力培养和系统课程体系设置研究[j].计算机教育,2013(9):1-6.

[5]唐志强.计算机专业数字逻辑实验的改革与创新[j].实验室研究与探索,2013,32(10):182-184.

[6]孙建国,武俊鹏,张国印,等.数字逻辑虚拟实验教学研究[j].计算机教育,2009(8):87-89.

[7]曾正军.基于web的数字逻辑虚拟实验平台的设计与实现[j].计算机时代,2006(1):32-33.

[8]宋善德,何力,欧阳星明,等.数字逻辑虚拟实验系统的研究与设计[j].计算机工程与科学,2004,26(7):79-81.

[9]林小平,刘艺.开设“数字逻辑”综合设计性实验的探索[j].广东工业大学学报(社会科学版),2002,2(4):52-54.

[10]吴淮,吉家成,米源.高校《数字逻辑》实验教学探讨[j].实验科学与技术,2013,11(6):284-286.

[11]田淑珍,杨士强.在硬件实验中培养学生的创新实践能力[j].计算机教育,2012(19):39-41.

逻辑电路设计方法篇7

关键词:数字逻辑;课堂教学;简单与统一

1 课程现状

数字逻辑是计算机专业本科生的一门主干课程,是计算机组成原理、微机与接口技术、可编程逻辑设计、单片机原理及应用、嵌入式系统等的先导课程。它在整个计算机硬件方面的学习中具有极为重要的地位,肩负着引导学生从了解计算机硬件组成,掌握其工作原理,一直到分析与设计数字硬件电路的重要使命。以往的教学理念是使本科学生了解和掌握从提出逻辑功能要求开始,直到使用集成电路实现特定逻辑功能为止的整个过程的完备知识。显然,这一教学理念是一种完全以应用为主的教学方式,主要目标在于培养计算机工程的应用人才。

面对日新月异的科技发展、日益强化的资源环境约束、以科技创新和技术升级为核心特征的激烈国际竞争,我国自主创新能力较为薄弱的问题已经越来越成为信息化发展的瓶颈。如何提升学生的自主创新能力是当代教师责无旁贷的责任和义务,这也给传统教学的改革与创新带来巨大挑战:教师如何在教学过程中提高学生的自主创新能力?本科课程的教学如何与创新研究联系和衔接?面对这种挑战,具体到数字逻辑课程,我们又应该如何进行教学改革呢?

从数字逻辑各章的内容看,它是一门严格构建在数学基础之上的实践性很强的知识体系。在以往的教学过程中,教师更侧重于知识的讲解和电路的实现,却忽略了数字逻辑课程的这一优美之处。对于工科学生而言,他们具有较强的实际应用能力,但是对于理论体系认识与理解的不足往往制约着他们的创新能力。我们如果无法理解和体会到这种内在的简单与和谐之美,那么就不可能真切地告诉学生何为科学、何为研究,学生也就谈不上创新。笔者致力于发现数字逻辑课程各组成部分的简单之美以及整体的统一之美,并结合相应的教学方法阐述新的教学理念。

2 教学内容的认识和教学方法的改革

数字逻辑是一门数学基础知识严谨、知识结构严密、逻辑性极强、实际应用广泛的优美课程,其在数学和应用形式上的简单与统一之美,贯穿于课程的整个知识体系之中,主要包括以下几个方面。

2.1布尔代数的简单之美

逻辑代数是英国数学家布尔为了研究思维规律(数理逻辑)而提出的一套数学表达理论,把思维逻辑简化成一种极为简单的代数,从而令逻辑本身受数学形式的支配。毫无疑问,逻辑代数的问世在数学史上具有里程碑式的意义。20世纪,英国数学家罗素在其所著的《数学原理》中表示,纯数学是布尔在一部他称之为《思维规律》的著作中发现的。时至今日,布尔发明的逻辑代数已成为纯数学领域的一个主要分支。

正如我们所知,二进制是世界上最简单的计数方法,而逻辑运算是最简单的数学运算。然而如此简单的二元运算,却无可争议地支配着当前最为先进的数字技术,如超级电子计算机和全球导航系统等。逻辑代数是分析和设计数字系统中电路输出信号状态与输入信号状态之间逻辑函数关系的数学工具,可以解决数字系统分析和设计中的各种具体功能问题。尽管现在的搜索引擎都对外宣称自己如何高效、多么智能化,但是其本质都无法逃出逻辑运算的支配。这正是布尔代数的简单与统一之美:极为简单而严密的理论体系掌控着几乎所有数字系统的基本操作和运算。

教师在讲授逻辑代数的过程中,运用启发式教学方法令学生深刻地意识到这一点,从而激发学生对于数字逻辑课程的学习兴趣,提高学生的学习积极性,培养学生在理论分析和逻辑思维方面的能力。

2,2卡诺图的直观之美

尽管逻辑代数非常简单,但是随着逻辑变量不断增多,逻辑运算也随之变得越来越复杂,这也是布尔代数的魅力之一。针对复杂的逻辑运算,美国工程师卡诺发明了一种重要的分析方法——卡诺图方法,具有简单、直观、容易掌握等特点。一般地,在以往的课程教学中,教师仅将卡诺图当作逻辑函数化简的一种直观方法来讲授。

卡诺图作为代数化简方法的有益补充,着重介绍逻辑函数在卡诺图中的表示形式、卡诺图中最小项和最大项的合并原则,以及利用卡诺图化简逻辑表达式的步骤和方法。然而,其作为逻辑函数的几何表达形式这一含义却被忽略了,我们忽视了卡诺图化简方法与公式化简法的内在一致性,及其作为几何表达形式在各种实际应用中所表现出的优势。

在教学过程中,教师应更加注重介绍卡诺图作为逻辑函数的几何表达方式,其化简方法与代数化简方法在本质上是一致的;应从二者的内在联系出发,介绍卡诺图在各种实际应用中所表现出来的独特优势,加深学生对卡诺图本质的理解,增强教学效果。

2.3数字电路的对应之美

逻辑代数可以简单地表达抽象的逻辑关系,进而推演出更多更复杂的逻辑判断和运算,不但令开关电路具备了数学基础,而且为数字电路提供了强有力的数学基础。如果一些门电路能够实现最基本的与、或、非逻辑功能,那么实现更为复杂的数字系统似乎是一种必然结果。非常幸运的是,这些基本门电路的实现并不难,利用简单的二极管和三极管等就可以组合成最简单的门电路。

在形式和功能上,这些门电路和简单布尔运算是一致的,而一个数字系统的逻辑功能与其对应的复合逻辑运算也是内在统一的,这是完全无需证明的原理。这种内在一致性,在实践中所发挥出来的巨大效应,完全配得上我们最高的赞美和歌颂:如此简单的逻辑代数,如此强大的逻辑功能!因此,在教学过程中,我们应该运用启发式教学方法,引导学生意识到这种内在一致性,加深其对数字逻辑课程知识体系的认识与理解。

2,4分析和设计的对称之美

在分析和设计逻辑电路的过程中,分析和建模过程就好像是一个严格的数学、物理思维训练。对于计算机专业的学生来说,这种训练是难得的学习机会。在教学过程中,教师应该注重培养学生在分析和设计方面的能力,并且拓展学生的思路和眼界,让学生将分析和设计逻辑电路的思路与物理和数学相关学科的解题思路类比,从而令学生深刻体会到数字逻辑课程的优美与严格之处。另外,分析和设计这两个互逆过程之间的关系和区别,也是一个值得探索的问题。教师可让学生分组讨论具体电路的分析和设计这一课题,使学生加深对于整个知识体系的理解。

2.5可编程逻辑器件的抽象之美

数字逻辑作为一门实践性很强的课程,需要连接大量线路才能实现较为复杂的逻辑电路。可编程逻辑器件的出现,大大降低了人们的工作量,也提高了数字电路的灵活性。而可编程逻辑器件是一种通用的可编程数字逻辑器件,属于大规模集成电路lsi中的半定制电路。它集门电路、触发器、多路选择开关、三态门等器件和电路连线于一身,我们可以通过对其编程实现所需的数字逻辑功能。

这一思想令数字电路的设计从实际布线转变到抽象表达上,脱离了繁琐的体力劳动,仅需要表示出数字电路的逻辑运算就完全可以实现数字电路。数字逻辑这种从数学抽象(布尔代数)到实践应用(逻辑电路),再到抽象表达(可编程逻辑器件)的两次转变,实在是数学理论和实际应用的一次伟大融合。在教学过程中,教师应该就具体问题向学生展示这一过程,引导学生体会这一融合过程,激发学生的学习热情和积极性,加深学生对于数字逻辑体系的全面认知。

逻辑电路设计方法篇8

集成电路技术和计算机技术的蓬勃发展,让电子产品设计有了更好的应用市场,实现方法也有了更多的选择。传统电子产品设计方案是一种基于电路板的设计方法,该方法需要选用大量的固定功能器件,然后通过这些器件的配合设计从而模拟电子产品的功能,其工作集中在器件的选用及电路板的设计上。

随着计算机性价比的提高及可编程逻辑器件的出现,对传统的数字电子系统设计方法进行了解放性的革命,现代电子系统设计方法是设计师自己设计芯片来实现电子系统的功能,将传统的固件选用及电路板设计工作放在芯片设计中进行。从20世纪90年代初开始,电子产品设计系统日趋数字化、复杂化和大规模集成化,各种电子系统的设计软件应运而生。

在这些专业化软件中,eda(electronic design automation)具有一定的代表性,eda技术是一种基于芯片的现代电子系统设计方法。它的优势主要集中在能用hdl语言进行输入、进行pld(可编程器件)的设计与仿真等系统设计自动化上;20世纪90年末,可编程器件又出现了模拟可编程器件,由于受技术、可操作性及性价比的影响,今后eda技术会向模拟可编程器件的设计与仿真方向发展,并占据市场的一定份额。

eda技术主要包括大规模可编程逻辑器件、硬件描述语言、开发软件工具及实验开发系统4个方面。其中,大规模可编程逻辑器件是利用eda技术进行电子系统设计的载体硬件,描述语言是利用eda技术进行电子系统设计的主要表达手段,开发软件工具是利用eda技术进行电子系统设计的智能化与自动化设计工具,实验开发系统则是提供芯片下载电路及eda实验、开发的资源。

fpga结构概述

现场可编程门阵列fpga作为集成度和复杂程度最高的可编程asic。是asic的一种新型门类,它建立在创新的发明构思和先进的eda技术之上。运算器、乘法器、数字滤波器、二维卷积器等具有复杂算法的逻辑单元和信号处理单元的逻辑设计都可选用fpga实现。以xilinx的fpga器件为例,它的结构可以分为3个部分:可编程逻辑块clb(configurable logic blocks)、可编程i/o模块iob(input/output block)和可编程内部连接pi (programmable interconnect)。clb在器件中排列为阵列,周围环形内部连线,iob分布在四周的管脚上。xilinx的clb功能很强,不仅能够实现逻辑函数,还可以配置成ram等复杂的形式。

现场可编程门阵列fpga是含有大规模数字电路的通用性器件。这些数字电路之间的互联网络是由用户使用更高级的软件来定义的。fpga可以进行无限次的重复编程,从一个电路到另一个电路的变化是通过简单的卸载互联文件来实现的,极大地推动了复杂数字电路的设计,缩短了故障检查的时间。

传统的数字逻辑设计使用ttl电平和小规模的数字集成电路来完成逻辑电路图。使用这些标准的逻辑器件已经被证实是最便宜的手段,但是要求做一些布线和复杂的电路集成板(焊接调试)等工作,如果出现错误,改动起来特别麻烦。因此,采用传统电子设计方案人员的很大一部分工作主要集中在设备器件之间物理连接、调试以及故障解决方面。正是因为fpga的eda技术使用了更高级的计算机语言,电路的生成基本上是由计算机来完成,将使用户能较快地完成更复杂的数字电路设计,由于没有器件之间的物理连接,因此调试及故障排除更迅速、有效。

可编程特点有助复杂电路设计

fpga能进行无限次的重复编程。因此能够在相同的器件上进行修改和卸载已经完成好的设计。在一个fpga芯片上的基本部件数量增加了很多,这使得在fpga上实现非常复杂的电子电路设计变成比较现实。由于采用fpga的eda技术所产生的性价比更高一些,从而使得最近有多家公司开始采用这项技术,并且这种增长趋势仍旧在继续。

fpga中的逻辑块是clb,逻辑块是指pld(programmable logic device)芯片中按结构划分的功能模块,它有相对独立的组合逻辑单元,块间靠互连系统联系。fpga的逻辑块粒度小,输入变量为4~8,输出变量为1~2,每块芯片中有几十到上千个这样的单元,使用时非常灵活。fpga内部互连结构是靠可编程互联p i实现逻辑块之间的联接。它的互联是分布式的,它的延时与系统布局有关,不同的布局,互联延时不同。根据fpga的不同类型,可采用开关矩阵或反熔线丝技术将金属线断的端点连接起来,从而使信号可以交换于任意两逻辑单元之间。

采用fpga技术集成设计数字电路产品最大的特点就是可以使设计和实现相统一,无须前期风险投资,而且设计实现均在实验室的eda开发系统上进行,周期很短,大大有利于现代产品的市场竞争需求,所以,fpga的应用设计,特别适应于电子新产品的小批量开发,科研项目的样机试制以及asic产品设计的验证,能够进行现场设计实现、现场仿真及现场修改。由此,受到电子产品设计工程师的广泛推崇和欢迎。

fpga的应用领域

fpga所具有的无限次可重复编程能力,灵活的体系结构,丰富的触发器及布线资源等一系列的特点使得它可以满足电子产品设计的多种需求。fpga的应用领域主要集中在替换通用逻辑和复杂逻辑、重复编程使用、板极设计集成、高速计数器、加减法器、累加器和比较器的实现、总线接口逻辑等方面。

应用和开发fpga必须对器件的性能有一个全面了解,例如对器件的容量、速度、功耗,接口要求和引脚数目等进行综合考虑,同时还要注意以下几个细节问题:

时序电路应用“上电”复位电路,保证开机加电后,置时序电路于初始状态;

器件的电源与地引脚必须并接一只0.1μf的无感电容,起滤波和去耦作用;

不能采用数目是偶数的反向器串联的方法构成“延时电路”,一则延时的时间不准确,二则自动编译时会作为冗余电路被简化掉;

主要的全局缓冲器必须由半专用的焊盘驱动,次要的全局缓冲器可以来源于半专用的焊盘或内部网线;

引脚之间严禁短路,忌用万用表直接测量器件引脚;

器件的i/ o口如被定义为输出端,忌对该端加信号,否则将损坏芯片;

低功耗的器件如接负载过大时,不仅会使所用器件的工作效率显著降低,甚至会损伤芯片。

逻辑电路设计方法篇9

(赤峰学院 物理与电子信息工程学院,内蒙古 赤峰 024000)

摘 要:本文通过电路实例介绍了multisim10软件的设计、仿真操作过程.在数字电路的理论课教学中应用multisim10软件,可以使理论与实验相结合,使教学更灵活、更有效,可以培养学生的自学能力、创新能力和综合分析能力,进一步增强学生的自主学习性,充分激发学生的创新潜能,大大提高数字电路的课堂教学质量.

关键词 :数字电路设计;multisim10软件;电路仿真;应用

中图分类号:g642 文献标识码:a 文章编号:1673-260x(2015)03-0231-03

1 引言

数字电路课程是电子技术、信息通信、自动化控制和其他部分专业的一门专业基础必修课程,其传统的教学方法是首先进行理论学习,然后进行实验操作验证所学理论知识,目的是为了培养学生在数字电子电路的设计、实现过程中,分析问题、解决问题的能力,从而提高学生在数字电子技术领域的综合设计能力.利用multisim软件分析和设计数字电路,可以方便的修改电路和元件参数,优化设计方案,加快设计过程,节约设计费用.通过教学实践已经证明了利用multisim软件进行数字电路教学,可以提高学生的综合分析能力和解决问题的能力,从而提高了数字电路的教学质量.

2 multisim10软件介绍

muhisim10软件是一种电子设计自动化(简称eda)软件,专门用于电子电路的设计与仿真.muhisim10软件是以windows为操作平台,它不仅提供了电路原理图输入和硬件描述语言模型输入的接口和比较全面的仿真分析功能,同时还提供了庞大的元器件模型库和一整套虚拟仪表(包括示波器、信号发生器、逻辑分析仪、逻辑转换器和波特图绘图仪等等),可以满足一般的模拟/数字电路以及数字-模拟混合电路的分析与设计.

multisim10软件的突出优点是用户界面友好、直观,使用非常方便,只要是熟悉windows的用户,很容易掌握其用法;而且系统高度集成,元器件和测试仪器丰富,电路分析和仿真功能强大,可以完成各种模拟电路、数字电路以及模拟/数字混合电路的设计仿真.

3 multisim10软件在数字电路教学中的应用

数字电路的理论内容包括:逻辑代数、门电路、组合逻辑电路、时序逻辑电路、脉冲信号的产生与整形电路、模数、数模转换电路等等.其中对组合逻辑电路、时序逻辑电路的分析与设计是数字电路课程的重要内容.利用multisim10软件中丰富的元器件模型可以进行电路设计,再利用multisim10软件提供的各种虚拟仪器进行电路仿真,直接将把理论知识与实验结果进行对照,加深了对抽象的理论知识的理解,从而使课堂教学效果大大改善.

3.1 multisim10软件在组合逻辑电路分析与设计中的应用

组合逻辑电路的特点是即刻输入决定即刻输出,电路中不包含记忆性元件.组合逻辑电路的分析过程包括:首先根据逻辑电路图写出输出逻辑函数,在进行逻辑函数的化简和变换,最后列出真值表或说明其逻辑功能;而组合逻辑电路的设计过程则是:根据逻辑功能描述抽象出真值表,写出输出逻辑函数表达式,再进行化简、变换,最后画出逻辑电路图.在进行包含集成器件的组合逻辑电路的分析与设计时,学生觉得较难理解.而利用multisim10软件提供的虚拟仪表——逻辑转换器,可以在逻辑函数的各种表示形式(如逻辑电路图、真值表、逻辑表达式)之间进行相互转换,使得组合逻辑电路的分析和设计变得更为简单.

比如,分析图1所示电路的功能,要求列出逻辑真值表,并写出电路的逻辑函数式.

图中74hc151是8选1数据选择器,传统的解题过程是先写出74hc151的输出函数,再将输入变量mnp和q代入公式中的最小项和数据输入端,写出输出变量z关于mnpq的表达式,再进行化简得到最简与或表达式;最后将所有的变量取值组合代入最简输出逻辑函数表达式中算出输出变量z的值,并列在表中,即可得到真值表.

现在利用multisim10来实现,先启动multisim10程序,出现用户界面后首先需要建立图1所示的逻辑电路图.我们从cmos集成电路器件库中找出74hc151、74hc04、vdd和接地端的符号,将它们放在合适的位置连成与图1完全相同的电路图,如图2所示,注意图2中的g、a、b、c与图1中的s、a0、a1、a2相对应.然后从用户界面上的仪器栏中将“逻辑转换器”击出,将电路的输入变量m、n、p、q依次接到逻辑转换器最左边的四个输入端abcd,同时将电路的输出端z接到逻辑转换器最右边的一个输出端,如图2所显示的那样.双击逻辑转换器图标,便弹出图3所示窗口,点击窗口右侧上方第一个按钮,逻辑表就出现在左侧的表格中,再点击右侧上方的第三个按钮,在窗口的底部出现化简后的逻辑表达式bd abd bc,对应图1电路的输出函数式为z=nq mnq np,至此完成题目要求,分析过程十分简便.

3.2 multisim10在时序逻辑电路分析与设计中的应用

时序逻辑电路的特点是某一时刻的输出不仅与该时刻的输入有关,还与电路存储的状态有关,也就是电路中一定包含记忆性元件.时序电路的分析与设计比组合逻辑电路更复杂,学生难以理解,尤其是对计数器的分析与设计更是如此.下面我们利用multisim10软件中的虚拟仪表——逻辑分析仪进行实时的电路仿真,观察电路的输入输出波形图,画出电路的状态装换图,直接了解电路的逻辑功能,明显提高了课堂教学效果.

分析图4所示计数器电路,画出电路的时序图,说明这是几进制计数器.

在multisim10中选用ttl器件库中的74ls160、反相器7404及与非门7420构成图4中的电路,并接入信号发生器xfg1和逻辑分析仪xla1如图5所示,图5中qaqbqcqd的与图4中的q0q1q2q3对应.利用multisim10中的逻辑分析仪xla1对计数器的时钟脉冲和输出信号波形进行观察,得到图6,由此图可以发现,每隔五个时钟周期输出信号波形就重复变化一次,并在7420的输出端产生一个进位脉冲,因此这是一个五进制计数器.根据逻辑分析仪给出的输出波形画出电路的状态转换图如图7所示.

分析图4的计数器电路发现计数器采用了同步预置数的工作方式,当计数器处于qdqcqbqa= 0100状态时,用7404和7420译出ldc=0的信号,将计数器预置为q3q2q1q0=0000状态,作为计数循环的起始值.进一步分析可知这是一个五进制计数器.

由此可见,通过multisim10中的逻辑分析仪能够得到直接的输入、输出信号波形,逻辑功能一目了然,相比于常规教学教学效果更好.

4 总结

在数字电路课堂教学中使用multisim10软件,一方面可以使理论课的教学更加生动有趣,另一方面在课堂进行实验演示可以更好的吸引学生的注意力,提高学生的学习兴趣.学生通过直接观察实验仿真结果,可以更加透彻的理解数字电路的工作过程,有助于提高学生的自学能力和创新能力.

总之,利用multisim10软件对数字电路进行建模与仿真,不仅使学生明白了数字电路的功能,更清楚的掌握了数字电路的设计方法,既加深了对理论的理解,又对电路功能建立起动态、形象、直观的感性认识;因此,在数字电路课堂教学中使用multisim10软件进行电路建模、仿真、调试,通过优化电路结构和参数得出最佳的电路设计方案,使教学过程更加直观、明了,学生容易获得明确的结果,提高了数字电路的质量.

参考文献:

〔1〕聂典.multisim10计算仿真在电子电路设计中的应用[m].北京:电子工业出版社,2009.

〔2〕郭勇,许戈,刘豫东.eda技术基础[m].北京:机械工业出版社,2001.5.

〔3〕王丽.multisim10在数字电子电路课程设计中的应用[j].珠海城市职业技术学院学报,2009.15.

〔4〕周润景.multisim & labv iew虚拟仪器设计[m].北京:北京航天航空大学出版社,2008.90-91.

逻辑电路设计方法篇10

关 键 词 数字电路;软错误;防护;方法

中图分类号:tn79 文献标识码:a 文章编号:1671—7597(2013)021-083-01

随着纳米时代的到来,数字电路的制造工艺不断改革与创新,但是,革新与挑战是并存的。目前,数字电路的设计制造面临着诸多挑战,其中一项就是在达到设计标准的前提下,如何能使设计制造的电路可靠运行。

增强数字电路可靠性的方法主要是容错技术的使用,这种技术的应用是为了保证数字电路的功能不受到影响或者所受的影响最低。其原理是增加冗余资源,有效降低因故障所造成的影响。但随着工艺尺寸的改进,运用环境的变化以及海拔高度的改变,数字电路软错误率也随之受到影响,软错误率的升重影响了集成电路的可靠性,集成电路的可靠性又直接决定了计算机系统的可靠性,因此,数字电路软错误防护方法的研究逐渐成为研究热点。

1 数字电路中软错误的类型

1) 时序逻辑电路中的软错误。随着集成电路特征尺寸的缩小,工艺扰动问题日益严重,受工艺扰动的影响,芯片的软错误率增加,偏离了芯片的设计指标,由此影响了电路性能和功耗。

最常见的工艺扰动主要包括沟道长度扰动、栅氧厚度扰动以及阈值电压扰动,这三种工艺扰动所造成的软错误影响着时序逻辑单元,而最容易受影响的节点分别是sram的节点“vr”、传输门触发器的节点“s1”、动态锁存器的节点“out”以及c2mos触发器的节点“s”。通过仿真实验,研究沟道长度扰动、栅氧厚度扰动以及阈值电压扰动这三种工艺扰动对四种时序单元的软错误率的影响,实验证明,工艺不同,引起的临界电量偏差不同,从而对软错误率影响程度也不同。

2) 组合逻辑电路中的软错误。组合逻辑电路中的软错误率也受到工艺扰动的影响,随着尺寸减小,组合逻辑单元对软错误越敏感,组合逻辑单元的临界电量也越小,组合逻辑电路的三种软错误屏蔽效应也随之降低,因此,降低组合逻辑电路的软错误率也逐渐得到重视。通过实验研究发现,注入电荷量与脉冲宽度呈指数关系,这也关系影响了临界电量与逻辑门延时之间的关系,当逻辑门延时增加时,之前的逻辑门上产生的电压脉冲中宽度比较小的部分无法通过这个逻辑门传播到输出端,从而无法造成软错误。

2 数字电路软错误防护方法

数字电路软错误防护技术主要有晶体管级软错误防护技术和门级网表的软错误防护技术,这两种技术的应用原理是针对数字电路软错误,以扫描链电路的功能复用为切入点,降低软错误防护的硬件开销,通过改造扫描链电路,从而降低软错误率。

1)晶体管级软错误防护技术。晶体管级软错误防护技术主要是设计具有seu/set防护性的电路库单元,这种电路库单元的设计,需要对其防护能力进行量化,在晶体管级进行软错误率的建模计算。对于软错误防护能力的评估主要有两种手段,一是直接对电路进行辐照实验,二是使用晶体管级仿真软件进行软错误故障注入和软错误率的建模计算。对比这两种方法,运用仿真软件进行评估不仅大大降低了试验成本,而且缩短了试验周期。运用晶体管级仿真工具hspice进行软错误故障注入,即读入一个输入文件,生成一个包括模拟结果、警告信息和错误信息的列表文件,从而观察seu/set对于时序单元内部节点和输出端所产生的电压变化。时序逻辑单元的软错误防护技术主要是未经加固的静态锁存器、tmr-latch锁存器、sdt单元以及dice单元,其中dice是比较经典的晶体管级软错误防护结构。组合逻辑单元的软错误防护技术主要是基于时差的set防护技术和cswp单元。

2)门级网表的软错误防护技术。门级网表的软错误防护流程是故障注入、计算ser、进行单元替换,在故障注入环节包括对时序逻辑和组合逻辑的软故障注入,在计算ser环节需要考虑输入故障注入点、时序屏蔽、逻辑屏蔽、向量组合等诸多因素,在单元替换环节包括全部替换和部分替换,而替换策略又分为面积优先替换策略和速度优先替换策略。

软错误注入方法有很多,例如使用高能量质子束照射整个芯片,模拟宇宙射线中的种子产生的效应,或者直接使用中子束进行辐照实验等等。这些方法主要用于精确评估每个标准单元的软错误易感程度。

软错误率计算是对电路的软错误防护性能做定量分析的关键,软错误率分析包括对逻辑和ram的软错误率分析,ram的软错误率分析方法比较成熟,目前研究的难点主要在对组合逻辑的软错误率的分析。

3)基于扫描链复位的软错误防护技术。芯片的设计通常都进行可测性设计,可测性设计包括扫描设计和内建自测试,为了提高其可控性和可观测性,这两种可测性设计都需要将普通的寄存器更换成扫描寄存器。对扫描寄存器进行功能复用,可以进行软错误防护,这种防护技术就是基于扫描链复位的软错误防护技术(semrsc)。目前已有的semrsc技术主要是intel公司的biser技术,以及esff-sed和esff-sec技术。biser技术的优势在于以下几点,首先,在对扫描链进行功能复用的过程中,有效的降低了软错误防护的面积开销;其次,biser技术和ecc技术结合实用,可以将芯片级ser改善10倍;再次,biser技术可以有效降低单元级ser。esff-sed和esff-sec作为两种软错误防护方法也能有效的对数字电路的软错误进行防护。

3 总结

集成电路工艺的改进、工作电压的降低、工艺偏差的增强,使得数字电路的软错误率急速攀升,这大大影响了芯片的可靠性。本文分析了软错误的两种类型,阐明了针对不同类型的软错误所运用的多种防护技术,相信,通过不断的实验与研究,数字电路可以在达到设计标准的前提下,安全可靠的运行。

参考文献

[1]傅忠传,陈红松,崔刚,杨孝宗.处理器容错技术研究与展望[j].计算机研究与发展,2007,44(l):154-16.