当前位置:文档之家› 时序逻辑电路设计

时序逻辑电路设计

引言人类社会进步,各种仪器测试设备的以电子设备代替成为趋势,各类测试仪器都希望通过电子设备来实现。

电子设备在实现相应参数的测量时,具有简单容易操作,而且数据便于计算机处理等优点。

目前科技的飞速进展与集成电路的发展应用,有密不可分的关系。

十九世纪工业革命主要以机器节省人力,二十世纪的工业的革命则主要以电脑为人脑分劳。

而电脑的发展归于集成电路工业。

集成电路是将各种电路器件集成于半导体表面而形成的电路。

近年来集成电路几乎成为所有电子产品的心脏。

由于集成电路微小化的趋向,使电子产品得以“轻、薄、短、小”。

故集成电路工业又称微电子工业。

差不多在同时数字计算机的发展提供了应用晶体管的庞大潜在市场。

20世纪90年代以后,电子科学和技术取得了飞速的发展,其标志就是电子计算机的普及和大规模集成电路的广泛应用。

在这种情况下,传统的关于数字电路的内容也随之起了很大的变化,在数字电路领域EDA工具已经相当成熟,无论是电路内容结构设计还是电路系统设计,以前的手工设计都被计算机辅助设计或自动设计所取代。

通过长期的学习微电子专业理论知识,我们应该多动手实践把理论知识与实践相结合,加强对理论知识的把握。

本文是十进制同步计数器的设计,对十进制同步计数器的设计进行电路原理图设计以及仿真,版图设计,版图验证。

1 设计技术要求(1)项目名称:十进制同步计数器的设计(2)使用工艺:2.0um硅栅工艺(tanner)或者1.0um硅栅工艺(cadence)(3)供电电源:5V(4)输入要求:异步清除,CMOS电平(5)进行原理图设计,并完成电路的仿真(6)版图设计,完成LVS一致性检验,生成相应的GDSII文档2 设计构思及理论2.1 设计思路十进制同步计数器的设计可以细化成下列步骤:①建立最简原始状态图。

②确定触发器级数,进行状态编码。

③用状态装换卡诺图化简,求状态方程和输出方程。

④查自启动特性。

⑤确定触发类型,求驱动方程。

⑥画逻辑图。

时序逻辑电路的设计就是根据给出的具体逻辑问题,求出实现其功能的电路,所得到的结果应力求简单。

当选用小规模集成电器设计时,电路简单的标准是所用的触发器和门电路的数目最少,而且触发器和门电路的输入端数目也最少。

而使用中、大规模集成电路时,电路简单的标准使用的集成电路数目、种类最少。

而且互相间的互连线也最少。

在进行原理图的设计时应该遵循组合逻辑电路的设计规律和方法,避免出现不必要的错误。

组合逻辑电路的设计过程,一般分为如下三步进行:1. 由逻辑问题抽象出真值表2. 由真值表写出逻辑表达式并通过卡诺图进行化简3. 由化简后的逻辑表达式设计出最后的组合逻辑电路图1时序逻辑电路设计过程2.2 设计构思的理论依据计数器是利用电子学的方法测出一定时间内输入的脉冲数目将结果以数字显示。

计数器的种类也非常繁多,根据计数器中触发器时钟端的连接方式,分为同步计数器和异步计数器;根据计数器方式分为二进制计数器、十进制计数器和任意进制计数器,根据计数器的状态变化规律分为加法计数器、减法计数器和加/减计数器。

十进制同步计数器计数从0~9,当输出为9时,在下一个脉冲作用下,进位输出为1,如果预置ABCD 大于二进制数1001,在几个CLK 作用下也能回到计数状态,即同步十进制计数器具有自启动功能。

十进制同步计数器输入输出端口及功能:时钟CLK ,当CLK 的上升沿到来时,计数器加一;清零端CLRN 即复位端,当CLRN 为0时,输出A Q 、B Q 、C Q 及D Q 置0;预置控制端口LND ,当LND 为0时,计数器输出值等于预置输入值,当LND 为1时,计数器计数从预置数开始;预置输入A 、B 、C 及D ,即实现任意进制的必要输入;计数保持输入ENT 及ENP ,当二者有一个为零时,停止计数,保持计数值;计数器输出A Q 、B Q 、C Q 及D Q ;进位端CO R ,当计数值到达9时进位输出为一,否则为0。

十进制同步桂林电子科技大学课程设计论文第3页共16页计数器功能表如下表所示:表1 十进制同步计数功能表3 十进制同步计数器的原理图设计及仿真分析3.1 电路原理图设计思路及功能分析组合逻辑电路设计就是在给定逻辑功能及要求的条件下,通过多方面的设计方法,得到满足功能要求,而且是最简单的逻辑电路。

具体设计的步骤:1.逻辑抽象,就是对设计对象的输出与输入信号之间的因果关系,用逻辑函数的表示方法表示出来,其中真值表是表示逻辑函数的常用方法。

2.写逻辑函数表达式,即根据真值表按最小项或最大项规则写出设计电路的标准表达式。

3.函数化简,通过公式法和卡诺图法化简得最简逻辑表达式。

4.表达式转换,把简化后的逻辑表达式转换为满足设计要求的形式,例如化简为只用非门,或非门,与非门等基本逻辑门的形式以满足设计要求。

本次设计根据给定的条件实现十进制同步计数器计数的功能,必需要用到八个D触发器。

在设计好的十进制同步计数器计数正常输出端接一个反相器,就可以实现互补输出。

设计好基本电路原理后,先进行电路原理图(图3)仿真,看得到输出结果是否分析一致。

因为是组合逻辑电路的设计,因此在设计时要考虑到组合逻辑电路设计中经常会出现的问题,例如竞争和冒险现象。

组合逻辑电路的冒险是过渡性冒险,从冒险的波形上,可分为静态冒险和动态冒险。

输入信号变化前后,输出的稳态值是一样的,但在输入信号变化时,输出信号产生了毛刺,这种冒险是静态冒险。

若输出的稳态值为0,出现了正的尖脉冲毛刺,称为静态0险象。

若输出稳态值为1,出现了负的尖脉冲毛刺,则称为静态1冒险。

输入信号变化前后,输出的稳态值不同,并在边沿处出现了毛刺,称为动态险象(冒险)。

避免函数冒险的最简单的方法是同一时刻只允许单个输入变量发生变化,或者采用取样的办法。

根据以上规则,最终可以得出电路设计原理图如下:图2十进制同步计数器原理图3.2 电路原理图设计做完MAXPLUSⅡ的仿真得到输出结果满足设计要求后,用TANNER软件编辑电路原理图如附图1所示。

S—Edit提供使用者阶层性的设计环境,最高层的文件是设计文件,所有的模块电路,各个电路的符号、单元,甚至属性都可以包括在一个设计文件内。

可以自己建立自己所拥有的单元库,然后再以参考单元库的方式将所要的单元包括进来。

S-Edit的文件名称为*.sdb,一个SDB文件包括设计的信息与设定的信息,可以同时打开好几个设计文件,但是在同一个时间只可以看其中的一个设计文件。

在设计文件数据库中的每个桂林电子科技大学课程设计论文第5页共16页设计都是个模块,它可以是个基本单元,如晶体管;可以是个逻辑单元,如反相器;可以是个功能区块,如算数逻辑运算单元;也可以是我们的目标系统。

在设计文件数据库中不必包含我们所有设计上会使用到的模块,当然必须要有包含这些模块的一个(或多个)文件,当成我们设计时的单元库。

该设计文件中包含三个模块,每个模块的构成包括电路符号与电路本身,当所设计的模块是最基本的单元,如电阻晶体管等,它是不需要有电路部分的,该模块用符号来表示该单元。

如果我们所设计的模块希望能被其他模块电路调用使用,在设计完电路后面还要设计输入输出端口相对应的电路符号,这样才能被正常使用。

当设计的模块太大,要一次将所有的设计显示在窗口中会显得不适用,并且在处理上会使速度变慢,这时就要通过Tanner Tools Pro提供的页面功能。

I.模块(Module)模块是S-Edit设计文件中的主要单元,它可以是所设计的一个功能单元,如晶体管、基本逻辑门、功能区块、放大器电路,甚至是你的全部系统。

模块包含以下两种基本单元:Primitivbes 利用绘图工具所绘制的几何对象;instances 使用设计文件中的其他模块。

II.页面(Page)页面功能提供使用者将设计的电路分成数个区块,以便窗口的显示。

当你的模块设计太大或太复杂时,要一次将所有的电路显示在窗口中时,会显得不容易观看,而且在处理的速度上会变慢,这时就需要考虑将设计分散到不同的页面中,让窗口一次只显示适当大小的电路,方便设计的进行与处理。

Tanner Tools Pro就提供了页面的功能,方便使用者处理页面间电路的连接问题。

Tanner Tools pro内定的页面命名是从Page 0依次往上递增,使用者可以通过Page->Rename来更改页面名称。

当使用者要建立另一个新的页面时,使用Page->New 命令会打开新页面的对话窗口,这时你可以使用内定名称,也可以输入你要的名称。

当模块的设计有好几个页面时,可以通过Page->Open来打开该模块中的某个页面。

III.显示模式S-Edjt有两种显示模式,电路图模式和符号图模式。

当创建一个基本元件(如晶体管)或较大的功能单元(如反向器)的例化体时,我们用符号来代表在较大的模块中的较小的元件或单元。

要创建或修改符号,须在符号图模式下工作。

在建立模块的连接时,要在电路图模式下工作。

电路图表示基本元件(如晶体管)与较大的功能单元(如反向器或门)的连接关系。

要创建或观看线路图,须在电路图模式下工作。

用view->Symbol Mode命令和View->Schematic Mode命令来实现在两种显示模式问转换。

也可以用问号键(?)来实现这种转换IV 符号图模式符号由几何体,端口,与属性组成。

要创建一个符号,Modul->new命令),并进入符号图模式。

用注释工具条中的Box·(长方形),Polygon(多边形) 以及Comment(注解)等工具创建模块的图形表示。

先创建一个新的模块(用Line(线段),Circle(圆),用电路图工具条上的端口工具放置端口,作为模块与其它设计对象的连接点。

属性工具用来规定模块在输出网表中的描述。

模块的属性可以表征像长度,宽度,以及周长之类的物理参数:也可以描述如器件类型和注解之类的非物理量;还可以用来指定元件在S 贝CE ,NetTIgn ,或TPR 等网表中输出字符串的精确形式,以及注释模块在网表输出是否处在等级结构的最低级别。

V 电路图模式电路图定义模块中的原始体和较低级别模块的连接。

电路图表示较小的单元或基本元件(如晶体管)怎样连成较高级别的单元(如反向器)。

电路图由五种基本元件组成:以符号形式出现的模块例化体。

模块例化体有管脚。

管脚是用来与其它对象连接的连接点。

连线:连线用来完成模块间的连接。

端口:端口表示电路图对外的输入和输出。

在电路图中的端口必须与该端口在符号图中的名称和类型相对应。

端口还起注释电路图中节点的作用。

注释对象,包括boxes(长方形),circles(圆),polygons(多边形),1ines(线段),以及comments(注解)。

注释对象用来说明电路图。

相关主题