CN103279618B - 一种数字电路自动设计与实验仿真方法 - Google Patents
一种数字电路自动设计与实验仿真方法 Download PDFInfo
- Publication number
- CN103279618B CN103279618B CN201310223744.5A CN201310223744A CN103279618B CN 103279618 B CN103279618 B CN 103279618B CN 201310223744 A CN201310223744 A CN 201310223744A CN 103279618 B CN103279618 B CN 103279618B
- Authority
- CN
- China
- Prior art keywords
- logical
- circuit
- expression
- experiment
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明涉及一种数字电路自动设计与实验仿真方法,是以数字电路实验为基础的一种可以根据逻辑表达式自动生成逻辑电路图、并能够进行电路设计仿真的方法。本发明的方法包括四个主要步骤:输入逻辑表达式、自动或人工选择器件、自动绘制逻辑电路图及显示管脚标注、数字电路实验仿真及人工修正。本发明作为数字电路实验的辅助工具,为进行数字电路实验的用户提供了一种非常方便有效的数字电路自动设计和实验仿真方法,通过这种方法可以获得计算机仿真验证的电路原理图,解决了手绘电路图复杂和纠错难的问题。
Description
技术领域
本发明涉及一种数字电路自动设计与实验仿真方法,属于数字电路实验自动设计和仿真的技术领域。
背景技术
通常人们在做数字电路实验时,先分析实验,根据实验要求列出真值表,写出表达式并化成最简逻辑表达式,然后用所选器件或指定器件实现最简逻辑表达式,画出原理图,再按照该原理图在实验箱上完成电路连接,最后验证输入输出关系。如果二者逻辑关系不正确,则检查电路连线与设计好的原理图是否一致,如果不一致则修改设计,如果一致则需要在实验箱的电路上纠错,但是纠错比较复杂:要检查是否有漏线、器件损坏、设计问题等等,实际实验过程中常常无从查起,以致实验无法在规定的时间内完成。鉴于以上问题,如果在实验之前先在计算机上进行自动设计和实验仿真,得出目标电路图,并给定输入进行仿真,验证设计是否正确,若不正确则修改设计,直到正确为止,然后再按照正确的电路图在实验箱上连接电路。这样,就可以快速完成实验,如果再遇到问题,则可以排除设计问题,只需检查连线是否正确、是否有漏线以及所用器件是不是完好。通过这种自动设计与实验仿真方法,不仅便于纠错,还省去了画原理图的麻烦,使数字电路设计实验更简单方便。此类方法是现有数字电路自动设计与实验仿真实验中所亟待解决的问题。
发明内容
针对现有技术的不足,本发明提供一种数字电路自动设计与实验仿真方法。本发明的目的是为了方便人们进行数字电路设计实验,利用本发明做电路实验时,计算机先根据输入的逻辑表达式自动选择器件并进行人工调整,自动绘制出逻辑电路图,并给出所用器件的输入/输出管脚标注,验证设计正确后,实验人员便可按照仿真图上器件的管脚对应关系在实验箱上将器件连接起来,本发明针对设计新的数字电路进行实验时,实验过程简便快捷,便于研究。
本发明的技术方案如下
发明概述:
一种数字电路自动设计与实验仿真方法,该方法根据数字电路实验的基本步骤,借助计算机自动设计电路图并进行仿真,将电路图和仿真结果显示在屏幕上。在设计过程中计算机根据提供的逻辑表达式自动选择所需器件,并自动绘制逻辑电路图,当给定输入信号后,自动显示每个器件的输出结果和电路最终输出结果。选择器件时也可以根据实际情况直接从器件库中人工选定所需器件。
发明详述:
一种数字电路的自动设计与实验仿真方法,包括步骤如下:
(1)输入逻辑表达式:将实验要求的最简表达式化成能用指定器件实现的逻辑表达式,实验人员将该逻辑表达式输入计算机;所述的逻辑表达式包括与(&)、或(|)、非(!)、异或(^)四个逻辑运算符、括号(())和字母表示的变量组成;
(2)自动或人工选择器件:预置器件库,所述器件库包括全部数字集成电路元器件;器件与器件功能关系式或状态方程一一对应,所述的功能关系式与状态方程包括逻辑符号、括号和变量,该变量在本发明中称为形式变量;
a.计算机根据输入的逻辑表达式自动从器件库里选择器件:当读取输入的逻辑表达式后,将逻辑表达式与器件的功能关系式或状态方程对比,当二者的对应关系一致时,则选出该器件,否则排除该器件;逻辑表达式中的逻辑符号确定所选器件的类型,对比结果一致时,则将逻辑表达式中的实际变量带入器件功能关系式或状态方程中代替其形式变量,使器件具有实际意义;当一种逻辑功能对应选出了多个器件时,则人工根据实验要求或器件的实际供应情况筛选出最匹配的器件;
b.除了以上a中所述自动选择器件的方式外,人工根据逻辑表达式直接从器件库中选择器件;
根据本发明优选的,所述步骤a中“将逻辑表达式与器件功能关系式或状态方程对比”的方法为:计算机扫描输入的逻辑表达式,找出逻辑运算中优先级最低的逻辑运算符并判断该运算符的个数,根据运算符类型确定所选器件的类型,根据运算符的个数确定所选器件的个数;然后按照上述方法判断并确定剩余运算符中优先级最低的一个,选出实现该运算符功能的器件,以此类推进行器件选择直到选出最后一个器件。
(3)自动绘制逻辑电路图及显示管脚标注:选择好器件后,计算机根据逻辑表达式的逻辑关系自动将所选器件按照逻辑表达式的运算顺序连接起来,自动绘制出逻辑电路图;同时,在逻辑电路图中标出每个器件的输入表达式和输出表达式,若一个器件的输出是另一个器件的输入,则此两个器件使用同一个表达式;
(4)数字电路实验仿真及人工修正:在步骤(3)自动画好逻辑电路图后,实验人员通过计算机给定该逻辑电路一组输入信号,计算机将输入信号代入所述逻辑电路的各输入端进行仿真运算,根据逻辑电路图中器件的功能得出输出结果;同时自动显示每个器件的输出结果和逻辑电路的最终输出结果;显示中间器件的结果方便了解每个器件的功能,也便于检查电路的出错位置,根据计算机显示的每个器件的输入输出值可以判断实验箱上的电路中相应器件以及连接该器件的导线是否是完好的;
分析电路仿真结果,若仿真结果不能正确体现逻辑功能,则说明设计有误,需要修改该电路设计;若仿真结果正确,而实验箱上的实验出现错误,则实验人员检查实验箱的导线连接与计算机显示的逻辑电路图是否一致:如果不一致,则按照计算机显示的电路图修改实验箱上的连接,否则是连线不通或器件损坏,实验人员通过更换导线或器件进行修正。
根据本发明优选的,所述器件的输出结果和逻辑电路的最终输出结果与步骤(3)中标注的逻辑表达式同时显示。
本发明的有益效果:
本发明所述一种数字电路自动设计与实验仿真方法使计算机自动显示逻辑电路图,避免了手工绘图的麻烦;自动标出以变量表示的管脚标注,方便实验人员在实验箱上连接电路时直接对应管脚连接,中间如果遇到特殊情况可以间断,再连接时只需继续按照管脚标注连接即可,这样不会因中断而影响整个实验;输入信号时自动显示结果,便于检查电路的连通性,了解每一步实现的具体功能。
附图说明
图1是基于数字电路自动设计与仿真方法的流程框图;
图2是输入逻辑表达式流程图;
图3是自动选择器件流程图;
图4是自动绘制逻辑电路图并显示管脚标注流程图;
图5是数字实验仿真及人工修正流程图;
图6是逻辑表达式实例。
具体实施方式
下面结合实施例和说明书附图对本发明做详细的说明,但不限于此。
实施例1、
一种基于数字电路自动设计与实验仿真的方法,其流程框图如图1所示,具体步骤如下:
(1)输入逻辑表达式:将实验要求的最简表达式化成能用指定器件实现的逻辑表达式,实验人员将该逻辑表达式输入计算机;所述的逻辑表达式包括与(&)、或(|)、非(!)、异或(^)四个逻辑运算符、括号(())和字母表示的变量组成;
(2)自动或人工选择器件,如图3:预置器件库,所述器件库包括全部数字集成电路元器件;器件与器件功能关系式或状态方程一一对应,所述的功能关系式与状态方程包括逻辑符号、括号和变量,该变量在本发明中称为形式变量;
a.计算机根据输入的逻辑表达式自动从器件库里选择器件:当读取输入的逻辑表达式后,将逻辑表达式与器件的功能关系式或状态方程对比,当二者的对应关系一致时,则选出该器件,否则排除该器件;逻辑表达式中的逻辑符号确定所选器件的类型,对比结果一致时,则将逻辑表达式中的实际变量带入器件功能关系式或状态方程中代替其形式变量,使器件具有实际意义;当一种逻辑功能对应选出了多个器件时,则人工根据实验要求或器件的实际供应情况筛选出最匹配的器件;
b.除了以上a中所述自动选择器件的方式外,人工根据逻辑表达式直接从器件库中选择器件;
所述步骤a中“将逻辑表达式与器件功能关系式或状态方程对比”的方法为:计算机扫描输入的逻辑表达式,找出逻辑运算中优先级最低的逻辑运算符并判断该运算符的个数,根据运算符类型确定所选器件的类型,根据运算符的个数确定所选器件的个数;然后按照上述方法判断并确定剩余运算符中优先级最低的一个,选出实现该运算符功能的器件,以此类推进行器件选择直到选出最后一个器件。
(3)自动绘制逻辑电路图及显示管脚标注:如图4所示,选择好器件后,计算机根据逻辑表达式的逻辑关系自动将所选器件按照逻辑表达式的运算顺序连接起来,自动绘制出逻辑电路图;同时,在逻辑电路图中标出每个器件的输入表达式和输出表达式,若一个器件的输出是另一个器件的输入,则此两个器件使用同一个表达式;
(4)数字电路实验仿真及人工修正:在步骤(3)自动画好逻辑电路图后,实验人员通过计算机给定该逻辑电路一组输入信号,计算机将输入信号代入所述逻辑电路的各输入端进行仿真运算,根据逻辑电路图中器件的功能得出输出结果;同时自动显示每个器件的输出结果和逻辑电路的最终输出结果;显示中间器件的结果方便了解每个器件的功能,也便于检查电路的出错位置,根据计算机显示的每个器件的输入输出值可以判断实验箱上的电路中相应器件以及连接该器件的导线是否是完好的;
分析电路仿真结果,若仿真结果不能正确体现逻辑功能,则说明设计有误,需要修改该电路设计;若仿真结果正确,而实验箱上的实验出现错误,则实验人员检查实验箱的导线连接与计算机显示的逻辑电路图是否一致:如果不一致,则按照计算机显示的电路图修改实验箱上的连接,否则是连线不通或器件损坏,实验人员通过更换导线或器件进行修正。
所述器件的输出结果和逻辑电路的最终输出结果与步骤(3)中标注的逻辑表达式同时显示。
实验过程中,若实验箱内缺少某种器件,可以用相同功能的器件来代替。本发明方法可以在步骤(2)时直接人工选择可替代的器件,也可以从器件库中找到可替代的器件,然后人工在(3)中的电路上直接替换,修改电路图。
补充说明:
(i)首先建立一个器件库,该器件库包括全部数字集成电路元器件,每个器件对应一种特定功能,此功能用逻辑表达式表示,上述表达式在组合逻辑电路中称为功能关系式,在时序电路中称为状态方程;
(ii)当输入信号为高低电平时,输入/输出信号用逻辑代数中的0或1表示(采用正逻辑),当输入信号为脉冲信号时,输出信号根据逻辑关系,用0或1或脉冲信号表示;
以下是本发明所述数字电路自动设计与实验仿真方法的一个实例:
用户输入逻辑表达式,如图6所示表达式,该表达式的功能是比较分别由X2X1(记为A)和Y2Y1(记为B)组成的二进制数的大小,当A>B时输出为1,否则为0;
输入表达式后,计算机扫描表达式,找出优先级最低的逻辑符号或(|)运算符,并判断有两个同等作用和位置的或逻辑运算符,根据逻辑符号的类型及其个数选择器件,调用器件库,与器件库中的功能关系式或状态方程对比可以选出一个三输入的或门或者两个两输入的或门,根据实验要求选定其中一个器件:假设实验要求使用三输入的或门,则人工舍弃两输入的或门,保留三输入的或门;
然后判断剩余运算符中优先级最低的一个,由此类推可以得出一个双4输入与非门、一个四2输入与非门和一个非门。双4输入与非门实现表达式中三个变量的与非关系;四2输入与非门完成表达式中两个变量的与非关系;非门完成输入变量的取反功能;
确定好器件后,计算机自动将所选器件按照表达式的运算顺序连接起来,图6中表达式的电路图是计算机自动按照表达式运算顺序非运算、与非运算、或运算依次将非门、与非门、或门连接起来的;同时在图中标出每个器件的输入表达式和输出表达式;
给定一组输入信号进行仿真,得出输出结果,计算机将中间器件输出结果和电路最终结果标示在图中相应的位置。将仿真的结果与理论值对比,若二者不一致,即设计的电路不能正确体现逻辑功能,则说明设计出现了问题,需要修改设计,得出正确的表达式,再按照上述步骤得出正确的电路图;若二者一致,说明设计是正确的,这时可以按照仿真好的电路图在实验箱上完成连接。
在实验箱上完成连接后,给定输入信号,记录测试数据。如果该测试值与理论值一致,则实验成功,完成实验;当测试值与理论值不一致时,由于已经确定设计是正确的,因此只需对比仿真的电路图检查导线的连接是否正确,检查导线和器件是否完好。检查时可以根据显示的中间器件的输出结果验证某一器件或导线的好坏。
当实验箱上缺少某种器件时,再重新设计会耗费大量时间,此时可以直接用同功能的器件来代替。本发明方法是人工在器件库中找出替代器件,并在电路图上调换,也可以重新选择器件并自动绘制电路图。例如,当做上述实验时,假设缺少三输入的或门,则可以用三个两输入的或门代替。
Claims (3)
1.一种数字电路自动设计与实验仿真方法,其特征在于,该方法包括步骤如下:
(1)输入逻辑表达式:将实验要求的最简表达式化成能用指定器件实现的逻辑表达式,实验人员将该逻辑表达式输入计算机;所述的逻辑表达式包括与(&)、或(|)、非(!)、异或(^)四个逻辑运算符、括号(())和字母表示的变量;
(2)自动或人工选择器件:预置器件库,所述器件库包括全部数字集成电路元器件;器件与器件功能关系式或状态方程一一对应,所述的功能关系式与状态方程包括逻辑符号、括号和变量,该变量在本发明中称为形式变量;
a.计算机根据输入的逻辑表达式自动从器件库里选择器件:当读取输入的逻辑表达式后,将逻辑表达式与器件的功能关系式或状态方程对比,当二者的对应关系一致时,则选出该器件,否则排除该器件;逻辑表达式中的逻辑符号确定所选器件的类型,对比结果一致时,则将逻辑表达式中的实际变量带入器件功能关系式或状态方程中代替其形式变量,使器件具有实际意义;当一种逻辑功能对应选出了多个器件时,则人工根据实验要求或器件的实际供应情况筛选出最匹配的器件;
b.除了以上a中所述自动选择器件的方式外,人工根据逻辑表达式直接从器件库中选择器件;
(3)自动绘制逻辑电路图及显示管脚标注:选择好器件后,计算机根据逻辑表达式的逻辑关系自动将所选器件按照逻辑表达式的运算顺序连接起来,自动绘制出逻辑电路图;同时,在逻辑电路图中标出每个器件的输入表达式和输出表达式,若一个器件的输出是另一个器件的输入,则此两个器件使用同一个表达式;
(4)数字电路实验仿真及人工修正:在步骤(3)自动画好逻辑电路图后,实验人员通过计算机给定该逻辑电路一组输入信号,计算机将输入信号代入所述逻辑电路的各输入端进行仿真运算,根据逻辑电路图中器件的功能得出输出结果;同时自动显示每个器件的输出结果和逻辑电路的最终输出结果;显示中间器件的结果方便了解每个器件的功能,也便于检查电路的出错位置,根据计算机显示的每个器件的输入输出值可以判断实验箱上的电路中相应器件以及连接该器件的导线是否是完好的;
分析电路仿真结果,若仿真结果不能正确体现逻辑功能,则说明设计有误,需要修改该电路设计;若仿真结果正确,而实验箱上的实验出现错误,则实验人员检查实验箱的导线连接与计算机显示的逻辑电路图是否一致:如果不一致,则按照计算机显示的电路图修改实验箱上的连接,否则是连线不通或器件损坏,实验人员通过更换导线或器件进行修正。
2.根据权利要求1所述的一种数字电路自动设计与实验仿真方法,其特征在于,所述步骤a中“将逻辑表达式与器件功能关系式或状态方程对比”的方法为:计算机扫描输入的逻辑表达式,找出逻辑运算中优先级最低的逻辑运算符并判断该运算符的个数,根据运算符类型确定所选器件的类型,根据运算符的个数确定所选器件的个数;然后按照上述方法判断并确定剩余运算符中优先级最低的一个,选出实现该运算符功能的器件,以此类推进行器件选择直到选出最后一个器件。
3.根据权利要求1所述的一种数字电路自动设计与实验仿真方法,其特征在于,所述器件的输出结果和逻辑电路的最终输出结果与步骤(3)中标注的逻辑表达式同时显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310223744.5A CN103279618B (zh) | 2013-06-06 | 2013-06-06 | 一种数字电路自动设计与实验仿真方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310223744.5A CN103279618B (zh) | 2013-06-06 | 2013-06-06 | 一种数字电路自动设计与实验仿真方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103279618A CN103279618A (zh) | 2013-09-04 |
CN103279618B true CN103279618B (zh) | 2016-02-17 |
Family
ID=49062135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310223744.5A Expired - Fee Related CN103279618B (zh) | 2013-06-06 | 2013-06-06 | 一种数字电路自动设计与实验仿真方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103279618B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970945A (zh) * | 2014-04-28 | 2014-08-06 | 奇瑞汽车股份有限公司 | 一种电路图绘制方法和装置 |
CN107463725A (zh) * | 2017-06-25 | 2017-12-12 | 浙江大学 | 一种适用于模拟及射频集成电路的参数设计方法 |
CN111475994B (zh) * | 2020-03-30 | 2021-04-09 | 安徽省东科半导体有限公司 | 芯片设计中填补环的自动布局方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1521830A (zh) * | 2003-02-12 | 2004-08-18 | 上海芯华微电子有限公司 | 集成电路设计、验证与测试一体化的技术方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8306802B2 (en) * | 2006-11-02 | 2012-11-06 | Synopsys, Inc. | Method for modeling an HDL design using symbolic simulation |
-
2013
- 2013-06-06 CN CN201310223744.5A patent/CN103279618B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1521830A (zh) * | 2003-02-12 | 2004-08-18 | 上海芯华微电子有限公司 | 集成电路设计、验证与测试一体化的技术方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103279618A (zh) | 2013-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109739766B (zh) | 一种快速搭建fpga数字仿真模型的系统及方法 | |
US9754059B2 (en) | Graphical design verification environment generator | |
US9443044B2 (en) | Determining a quality parameter for a verification environment | |
US7421668B1 (en) | Meaningful visualization of properties independent of a circuit design | |
CN107203473A (zh) | 自动扩展接口测试用例的自动化测试系统与方法 | |
TW201807424A (zh) | 自動測試樣式生成的電路建模方法、非暫態電腦可讀存儲介質以及自動測試樣式生成電路 | |
CN109933521A (zh) | 基于bdd的自动化测试方法、装置、计算机设备及存储介质 | |
US9594543B2 (en) | Activity diagram model-based system behavior simulation method | |
CN105760296B (zh) | 自动化测试控制方法、装置及终端 | |
US20140214396A1 (en) | Specification properties creation for a visual model of a system | |
CN103279618B (zh) | 一种数字电路自动设计与实验仿真方法 | |
JP3825572B2 (ja) | 半導体集積回路の設計検証装置、方法及び記憶媒体 | |
CN111736064A (zh) | 一种针对pcb板的多种类型信号在线测试方法和系统 | |
US20030221173A1 (en) | Method and apparatus for detecting connectivity conditions in a netlist database | |
Spichkova et al. | Towards a human-centred approach in modelling and testing of cyber-physical systems | |
CN106407117A (zh) | 一种通用的接口测试方法 | |
Li et al. | Devbench: A comprehensive benchmark for software development | |
CN103246596A (zh) | 一种对基于时间控制的plc程序自动测试的方法 | |
CN112416734A (zh) | 测试的方法、装置以及存储介质 | |
CN114021514A (zh) | 一种spice电压或温度扫描仿真筛选瓶颈单元的方法 | |
CN108509197B (zh) | 一种测试需求视图生成方法及ate测试方法 | |
US7761845B1 (en) | Method for parameterizing a user module | |
CN109739707B (zh) | 一种测试处理方法、移动终端及存储介质 | |
CN107679264B (zh) | 一种pcb设计中辅助检查位号错位的方法 | |
CN115437621A (zh) | 基于机器人流程自动化的流程编辑方法、装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160217 Termination date: 20190606 |