精华内容
下载资源
问答
  • 时序逻辑电路分析和设计

    千次阅读 2017-06-15 12:10:43
    专题一:时序逻辑电路分析和设计 说明:由于CSDN文本限制,反变量均写为`X(注意X前面有`);内容、图片可能不完全显示,原版word文档请点击更多文章。 链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208 ...

    专题一:时序逻辑电路的分析和设计

    说明:由于CSDN文本限制,反变量均写为`X(注意X前面有`);内容、图片可能不完全显示,原版word文档请点击更多文章。

    链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208

    <!-- 链接失效请发邮件至2867555086@qq.com -->

    一、时序逻辑电路的基本分析方法

    1.基本步骤

    Step 1:写出各触发器的控制函数(又称驱动方程);

    Step 2:结合各类型触发器的特性方程和控制函数写出各触发器的状态方程;

    Step 3:若电路有输出变量,则写出电路的输出函数;

    Step 4:根据触发器的状态方程作状态转换表;

    Step 5:根据状态转换表做出状态转换图;

    Step 6:根据题目要求,若有要求画出时序波形图,则根据状态转换表并结合触发器触发方式画出时序波形图;

    Step 7:观察状态转换图得到时序逻辑电路的功能;

    Step 8:最后一步说明该时序逻辑电路能否自启动。

    2.几个名词的含义

    ①触发器的控制函数(驱动方程)

    例如对于JK触发器,特性方程为Qn+1= J`Qn+ `KQn

    根据所给电路图,得到控制端的表达式(这里是JK)即为该触发器的控制函数。

    ②触发器的特性方程

    描述触发器次态与现态的函数关系。

    (几种触发器的特性方程见P271本章小结第4点)

    ③触发器的状态方程

    将所得控制函数带入到触发器特性方程得到的结果。

    ④状态转换表

    本质是真值表,其中输入变量为现态Q0n~Qmn(m=1,2,3, …),输出变量为次态Q0n+1~Qm n+1、输出变量Y。有几个触发器就有几个现态,几个次态变量(即m=触发器总个数)。

    ⑤状态转换图

    描述现态到次态的转化过程,每个状态为一个圈,根据状态转换表连接各个圈。圈与圈之间用箭头连接,同时若有输入输出变量,则在箭头上方标上输入/输出。

    ⑥时序波形图

    描述Q0~Qm随着CP脉冲变化情况的波形图(要注意触发器在上升沿还是下降沿有效)。

    ⑦自启动

    无效状态间形成了循环,一旦某些干扰造成落入无效循环,那么再也回不到有效状态,也就不能正常工作了,具体判断方法见后。

    3.结合例题应用上述步骤

    eg. 见P283 [例5.1.1]

    Step1:图中共有3个触发器FF0、FF1、FF2。结合电路连接可以得到:

    对于FF0,J0 = Q2n    K0 = Q2n

    对于FF1,  J1 = Q0n    K1= Q0n

    对于FF0,J2 = Q1n   K2 = Q1n

    这样就得到了各个触发器的控制函数(驱动方程)。

    Step2:本题全部使用JK触发器,特性方程为Qn+1 = J `Qn + `K Qn  从而得到5.1.5各触发器的状态方程。

    Step3:图示有输出变量Y, 根据电路图可得到5.1.2的输出方程。

    Step4:根据5.1.5和5.1.2得到表5.1.1状态表。

    Step5:根据表5.1.1作出状态转换图。

    000的下一个状态是001, 此时输出为1。则作从000到001的箭头,且无输入变量,输出变量为1,因此在箭头上方标上 /1;

    再从001开始,从转换表来看,001的下个状态是001,此时输出为1。则紧接着在001后写下001,并作从001到011的箭头,在箭头上方标上/1;

    再从011开始,011的下一个状态是111,此时输出为1。则在011后写下111,并作箭头,标上/1;

    接下来类似,每次按照状态转换表,将现态与次态对应的状态写在一起,并用箭头连接,并在箭头上标上输入/输出,一直到状态100转化为状态000结束。

    此时,构成了一个由6个状态形成的环,即为图5.1.3的 (a) 图。接下来,找到转换表上剩下的不在所画圈内的状态,同样按照上述步骤画图,得到(b)图。

    Step6:时序波形图的画法见前章。注意本题触发器下降沿触发,且次态依赖于现态变化,从而得到图5.1.1的时序图。

    Step7:观察状态转换图可知,该图的功能是构成十进制0、1、3、7、6、4的循环,形成一个模六计数器。

    Step8:由图5.1.3的状态转换图可知,无效状态010、101间构成了死循环,因此该电路不能够自启动。

    4.能否自启动的判断方法

    对于计数器,我们记计数长度为N,电路用到的触发器个数为m。

    ①若N=2m,则该电路能够自启动;

    ②若N<2m,将不在圈内的余下N-2m个状态依次带入状态转换表,观察是否构成无效循环。若是,则不能自启动;反之可以自启动。

    二、时序逻辑电路的基本设计方法

    1.基本步骤

    Step 1:明确设计电路功能,作出基于功能涉及到的所有编码排序的状态转换图;

    Step 2:判断电路是否有输入或输出变量,并根据状态转换图画出状态转换表;

    Step 3:根据状态转换表,分离出各触发器输出量Q0~Qm(m=1、2、3…)、输出变量Y的卡诺图并化简,得到各个触发器的状态方程;

    Step 4:选用恰当的触发器(一般选用JK触发器),通过将每个触发器的输出量Qi变形并与所选触发器的特征方程比对,得到各触发器的控制函数;

    Step 5:画电路图。根据选用的各个触发器的控制函数及输出函数,借助逻辑门电路连接电路图;

    Step 6:根据状态转换图,判断所设计的电路能否自启动。

    2.几个名词的含义

    ①编码排序

    这里提到的编码排序是答题者根据题目要求的功能自行设计的编码,用二进制码表示,二进制位数由状态数确定。例如功能需要7个状态,则二进制位数设为3;需要15个状态,二进制位数设为4。

    3.结合例题应用上述步骤

    我们以P393 [题5.8]为例。

    Step1:由于电路要求的功能以状态转换图的形式给出,因此第一步可以省略;

    Step2:由状态转换图可知要设计的电路无输入与输出变量,得到状态转换表如下图所示:

    Q2n

    Q1n

    Q0n

    Q2n+1

    Q1n+1

    Q0n+1

    0

    0

    0

    0

    0

    1

    0

    0

    1

    0

    1

    1

    0

    1

    0

    X

    X

    X

    0

    1

    1

    1

    1

    1

    1

    0

    0

    0

    0

    0

    1

    0

    1

    X

    X

    X

    1

    1

    0

    1

    0

    0

    1

    1

    1

    1

    1

    0

     

    Step3:由上图可分离出Q0n+1,Q1n+1,Q2n+1的卡诺图如图所示:

    Q2n/Q1n Q0n

    00

    01

    11

    10

    0

    1

    1

    1

    X

    1

    0

    X

    0

    0

    Q0n+1

    Q2n/Q1n Q0n

    00

    01

    11

    10

    0

    0

    1

    1

    X

    1

    0

    X

    1

    0

    Q1n+1

    Q2n/Q1n Q0n

    00

    01

    11

    10

    0

    0

    0

    1

    X

    1

    0

    X

    1

    1

    Q2n+1

    通过卡诺图并化简可得:

    Q0n+1 = `Q2n

    Q1n+1 = Q0n

    Q2n+1 = Q1n

    Step4:选用JK触发器(Qn+1 = J `Qn + `K Qn

    Q0n+1 = `Q2n= `Q2n(Q0n+`Q0n)= `Q2`Q0n+`Q2nQ0n

    因此对于FF0:J0 = `Q2n;K0 = Q2n

    Q1n+1 = Q0n =Q0n(Q1n+ `Q1n)= Q0n`Q1n+ Q0Q1n

    因此对于FF1:J1 = Q0n ;K1= `Q0n

    Q2n+1 = Q1n= Q1n (Q2n+`Q2n)= Q1n `Q2n+ Q1n Q2n

    因此对于FF2:J2=Q1n;K2=`Q1n

    Step5:画电路图。根据触发器状态方程得到如下图所示的电路,设计的电路为同步时序逻辑电路,所有触发器共用一个CP脉冲。

    Step6:判断能否自启动。不在圈内的状态有010、101。他们之间构成了圈,如下图所示,因此该电路不能自启动。

    010         101

    三、需要注意的几点

    ①不论是时序逻辑电路的设计还是分析,都必须在最后加上对电路能否自启动的分析,对于不能自启动的,要把无效状态之间形成的环画出来后说明不能自启动;

    ②在设计时序逻辑电路时,画电路图要注意触发器的触发方式,是上升沿出发还是下降沿触发,且若为下降沿触发,需要再CP端画上小空心圆圈;

    ③所有专题都需要结合书本复习。

    四、对应课后习题答案

    注:下面提供的答案步骤与上述步骤有不符,但强烈建议同学们严格按照上述步骤解题,把每一步都写出来。

    课本P393~P394

    链接:https://pan.baidu.com/s/1jJhtwqE 密码:w208

    <!-- 链接失效请联系我 2867555086@qq.com -->

    再次感谢孙道清和徐德琴老师的指导!

                         作者:LeoHao

                          单位:安徽师范大学数学计算机科学学院


    展开全文
  • 概念 百度百科对数据库设计的给了如下的描述: 数据库设计(Database Design)是指对于一个给定的应用环境,...数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数...

    概念

    百度百科对数据库设计的给了如下的描述:

    数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。

    数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。

    现在的web应用大多数都是基于数据库的,一般大牛不会去写代码的,而是进行应用的设计,数据库的设计就是应用中十分重要的一环。数据库设计好了之后,建立模型,然后编码也可以开始了。

    我等小菜鸡在这个时候也是来学习一下数据库设计的知识,说不定那天就要自己去整个系统出来呢?

    回到之前的概念上来,我们里解构一下

    数据库模式:我只知道数据库有几个设计的范式,不好意思都忘光了,好像最多都有7个范式了,两者应该有共同的地方。

    存储数据:数据库一个最基本的功能不就是数据的存储与检索么?

    应用需求:数据库可以有哪些操作:增删改查,现实生活中的人类活动(不要走极端,比如分子原子,细胞的运动轨迹之类的)几乎都可以用数据库来记录和处理,数据库一个牛逼之处就是可以满足人们对事务的追求。对我一个比较震撼的地方就是Activity工作流那块,工作流是人类活动中比较常见的,如果你用过activity的话,你就会明白它的底层就是靠几张表去支撑的。

    数据库应用系统:现在牛叉的应用几乎上都是数据库应用系统,即使你的应用啥实际的功能都没有,你的有个用户登陆系统吧,你说要不要数据库吧。所以说,不要整天唧唧歪歪那个语言好用那个不好用,都只是用来进行事务、逻辑的处理的,如果你嫌不好用,可以自己写一个咯。

     

    数据库的设计内容那么多项,我曾也参与过一些需求,但是规模不大,也就3、4张表的设计,那家伙就是分析了需求就开始物理结构的设计啊,一边设计数据库,一边编码,刚开始的时候模型变化地比较频繁。在这里要提高功力感觉还是要系统地学习一下才好。

     

    下面的学习都将以mysql为例。

     

    以下列举参考资料

     数据库设计入门经典

    数据库设计与开发

    数据库设计教程

    数据库设计解决方案入门经典

    数据库课程设计

    设计有效的数据库系统

    MySQL核心技术

    数据库系统实现

    MySQL开发者 SQL权威指南

     

    展开全文
  • 一份好的用例是设计出来的,是测试人员思路方法的集合,而非测试逻辑和需求的罗列。 测试用例设计的几个准则 1、用例设计=思路。 强调测试的场景,测试方法。 2、测试步骤化。 此处说的测试步骤,不是说每条测试...

    测试工作最为基础核心的内容就是设计测试用例,什么样的测试用例是好的测试用例?我们一般会认为数量越少,发现缺陷越多的用例就是最好的用例。

    那么我们如何才能设计出好的测试用例呢?

    一份好的用例是设计出来的,是测试人员思路和方法的集合,而非测试逻辑和需求的罗列。

    测试用例设计的几个准则

    1、用例设计=思路。

    强调测试的场景,测试方法。

    2、测试步骤化。

    此处说的测试步骤,不是说每条测试用例都要写明测试步骤,而是指那些通过测试步骤的调整会出现缺陷的地方需要重点关注测试步骤,比如添加操作,单纯的添加功能是OK的,但是先删除一条数据,再添加相同的数据就失败了,这个就涉及到操作步骤了。

    3、用例流程化。

    此过程依托于完整的业务流程图,每个分支就是一条支流,通过业务端发起的请求,最终都会流向一条分支,而流程化就是将这些分支梳理为测试场景,通过覆盖测试场景来覆盖业务逻辑。

    测试用例设计的步骤

    1、明确原始需求。

    原始需求是软件的使用者(客户)的需求,在需求文档基础+本质理解才能真正理清楚需求要实现什么样的目的,以此为出发点才能不偏离需求本质;

    2、拆分原始需求。

    在需求测试阶段,如果按照需求测试策略对需求梳理一遍之后,对于所有的需求点应该都已经很清楚了,将这部分的需求点罗列出来,就可以作为需求粗的测试点;

    3、梳理业务逻辑。

    现在比较多的前端业务都来源于接口所返回的数据,前端最多的时候也就是根据返回数据做一些相应的显示和计算,所以如果对页面设计测试用例,那么需要关注接口数据的完整性和正确性对页面的影响,而接口本身的测试则要归纳到接口测试用例设计环节。

    • 接口没有返回数据时,页面如何处理;

    • 接口返回的参数不完整,比如返回包有list结构,此作为前台展示列表数据的依据,但是list为空;

    • 接口返回包中没有需求的参数名称

    这个地方有一个原则,需要注意,即前后端分离和前后端测试集合。

    • 前后端分离,有专门的接口测试人员来保证接口功能的正确性。此时作为前端测试人员,只需要保证接口返回数据正确时,页面显示正确;接口返回数据异常时,页面显示正确;调用接口的数据正确即可;

    • 前后端半分离,接口也做测试,但是是使用自动化工具,保证基本的参数正确性与通畅性,而对于接口的逻辑需要前端配合测试。

    此时作为前端测试人员,就需要了解接口的实现逻辑,如数据的处理逻辑,存储结构等。据此来设计前端测试用例,必要时也要绕开前段,直接调用接口模拟前段测试。

    综上所述,对业务逻辑的理解程度,取决于业务的结构,在理解了业务逻辑后,补充对应需求点的业务逻辑测试点。

    4、区分页面测试和业务逻辑类测试

    页面层级的测试遵循以下的方法:

    • 整体界面测试:就是去验证整体的界面是否和设计图一致;

    • 界面元素测试

    • 控件操作验证:如对控件能否操作、操作是否正常的验证;

    业务逻辑(功能)等级的测试遵循以下方法:

    • 任何情况下都必须使用边界分析法,出问题最多的就在边界值;

    • 必要时用等价类划分方法补充一些测试用例;

    • 用错误推测法再追加一些测试用例;

    • 对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例

    现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。

    展开全文
  • 今天主要内容是组合逻辑电路基础知识:分析、设计和冒险 逻辑分析 根据给定组合逻辑电路图,确定其逻辑功能,找出输出与输入之间关系 分析步骤 1. 确定给定电路是组合电路:没有反馈路径存储单元,即...

    今天的主要内容是组合逻辑电路的基础知识:分析、设计和冒险

    下一讲我们将会看看一些具体实例。

    如有错误,欢迎大家指正,我将会及时修改。

    一起开始吧。

    在这里插入图片描述

    逻辑分析

    根据给定的组合逻辑电路图,确定其逻辑功能,找出输出与输入之间的关系

    分析步骤

    在这里插入图片描述

    1. 确定给定的电路是组合电路:没有反馈路径和存储单元,即没有从一个门的输出到另一个门的输入的连接
    2. 根据所给的逻辑电路图,写出输出逻辑函数表达式。一般从输入端开始,逐级写出各级门电路的输出函数,直到整个电路的输出端
    3. 根据输出逻辑表达式,写出该电路的真值表
    4. 根据真值表或逻辑函数表达式分析电路功能

    举个例子

    在这里插入图片描述

    1. 该电路是组合电路
    2. 写出输出逻辑函数表达式:
      在这里插入图片描述
    3. 列出真值表
      在这里插入图片描述
    4. 分析其功能
      奇校验电路

    逻辑设计

    逻辑分析的逆过程,根据给定的逻辑功能要求,确定一个能实现这种功能的最简逻辑电路

    设计步骤

    在这里插入图片描述

    1. 由实际问题列出真值表
    2. 由真值表写出输出函数逻辑表达式
    3. 化简、变换输出函数逻辑表达式
    4. 结合题目条件画出逻辑图

    举个例子

    用与非门设计一个三变量表决电路(表决即少数服从多数)

    1. 由实际问题列出真值表
      在这里插入图片描述
    2. 由真值表写出输出函数逻辑表达式
      卡诺图登场
      在这里插入图片描述
    3. 化简、变换输出函数逻辑表达式
      在这里插入图片描述
    4. 结合题目条件画出逻辑图
      在这里插入图片描述

    冒险

    毛刺:由于时间延迟等原因发生了瞬时的输出错误而产生的窄脉冲
    在这里插入图片描述

    分类

    在这里插入图片描述

    消除方法

    如果消除了静态冒险,动态冒险也能消除,所以下面仅考虑静态冒险

    在这里插入图片描述
    注意:
    1. 功能冒险是由电路的逻辑功能决定的,因此不能用修改逻辑设计的方法来消除
    2. 功能冒险是需要有大于1个的输入变量发生变化,而逻辑冒险是仅有一个输入变量发生变化

    展开全文
  • 熟悉QuartusⅡVHDL文本设计过程,学习简单组合逻辑电路的设计、仿真测试方法。 二、实验内容 1.基本命题 完成2选1多路选择器文本编辑输入(mux21a.vhd)仿真测试等步骤。最后在实验系统上进行硬件测试,验证...
  • 本书从算法计算基本概念出发,讲述把复杂算法逐步分解成简单操作步骤,最后由硬线逻辑电路系统来实现该算法技术方法。这种硬线逻辑电路系统就是广泛应用于各种现代通信电子设备与计算机系统中专用集成...
  • 数据库设计步骤

    2011-03-13 09:24:00
    数据库设计的内容: 数据库的结构设计:是指根据给定的应用环境,进行数据库的模式伙子模式的设计。它包括数据库的概念设计、逻辑设计和物理设计。又称为静态模型设计 数据库的行为设计:是指确定数据库用户的...
  • 实验四 模型机时序部件实现一、实验目的二、实验内容三、实验方法(一)实验方法(二)实验步骤四、实验过程A. SMB. 指令计数器PCC. 通用寄存器组D. RAM五、实验结论 一、实验目的 熟悉计数器、寄存器 RAM ...
  • 二、领域模型:构建原有业务系统的逻辑模型,主要是识别业务概念及对象之间关系,用以表达原有系统"做什么"的内容,主要使用简单UML类图进行表示。 三、用例模型:根据上述内容,界定系统边界系统Actors...
  • 实验三 数字电路与逻辑设计——加法器实现一、实验目的二、实验内容三、实验方法1、 实验方法2、 实验步骤四、实验过程(一)4位并行加法器1、 编译过程2、 波形仿真3、 时序仿真(二) 四位串行加法器1、 编译...
  • 练习一 简单组合逻辑设计 练习二 简单时序逻辑电路设计 练习三 利用条件语句实现较复杂时序逻辑电路 练习四 设计时序逻辑时采用阻塞赋值与非阻塞赋值区别 练习五 用always块实现较复杂组合逻辑电路 ...
  • 数据仓库-逻辑模型设计(粗讲)

    千次阅读 2019-07-09 18:51:04
    逻辑建模能直接反映出业务部门需求,同时对系统物理实施有着重要指导作用,它作用在于可以通过实体关系勾勒出企业数据蓝图。 数据仓库逻辑建模的内容主要有: 1.分析主题域 在概念模型设计中,我们...
  • 第9章和第10章分别以定时器和接口电路设计为例,详述了用VHDL语言设计复杂电路的步骤和过程;第11章简单介绍了VHDL语言93版和87版的主要区别;第12章介绍了MAX+PlusⅡ的使用说明。 本书以数字逻辑电路设计为主线,用...
  • 数据库结构设计的步骤 数据库设计范式 数据库第一范式 数据库第二范式 数据库第三范式 数据库设计的目的 实战 需求说明 需求分析及逻辑设计 需求分析及逻辑设计-反范式化设计 反范式化设计总结 范式化...
  • 后台产品更加注重是业务逻辑的清晰功能实现,而前端产品对视觉设计和交互设计有更高要求。下面开始,介绍自己总结后台产品的设计方法与思路(就像前面所言,更多还有其他前辈知识,先在此道谢)。需求...
  • 该存储库包含生成文件校验。 不要在ServiceNow实例之外版本库中编辑文件。 如果由于存在在ServiceNow实例外部编辑文件而导致无法导入存储库,合并了来自不同修订版本文件合并提交或与校验不匹配...
  • 逆变器:逆变器的主要由控制逻辑电路、驱动电路功率部分所组成的,电源设计的难点主要是在驱动电路的多路电源供给。 本文主要针对车载充电机部分进行展开。 第一部分车载充电机 比如我们拿出一个典型的新能源汽车...
  • 测试用例的设计方法主要有:黑盒测试法白盒测试法 黑盒测试也称功能测试,黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面软件功能进行测试。 白盒测试又称结构测试、透明盒测试、逻辑...
  • 线进行观测分析,实现对 FPGA 设计的全局规划细节分析。 实现步骤 逻辑分析仪主要有以下几个阶段: 1,预触发阶段。 2,触发并采集阶段。 3,采集结束并上传到电脑。 4,用户界面显示并解析。 在vivado 中可以使用...
  • 算法基本逻辑结构-概述

    千次阅读 2013-11-30 22:49:57
     引用百度百科的算法定义:算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。  我们可以用自然语言来...
  • 第四章已经学习了组合逻辑电路的分析与设计的方法,这一章我们来学习时序电路的分析与设计的方法。在学习时序逻辑电路时应注意的重点是常用时序部件的分析与设计 这一章的内容共分为两节,它们是:§6、1:同步时序...
  • 数字逻辑实验报告

    2016-11-18 17:21:48
    数字逻辑实验报告:触发器功能+七段显示译码电路+数据选择器及其应用+移位寄存器+译码器及其应用+组合逻辑电路的设计。为方便资源观看,请解压后在word文档中将照片另存为图片,(实验目的,实验内容,实验数据...
  • 编写网络应用程序基本步骤 1、需求分析 2、定义业务数据静态数据结构 3、实现业务逻辑即动态数据结构 4、选择传输协议:UDP还是TCP,或者HTTP 5、设计传输信息结构,包含编解码如JSON、XML,并考虑传输效率压缩等...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 646
精华内容 258
关键字:

逻辑设计的步骤和内容