数字电路(基本概念和知识总揽)1、数字信号:指的是在时间上和数值上都是离散的信号;即信号在时间上不连续,总是发生在一序列离散的瞬间;在数值上量化,只能按有限多个增量或阶梯取值。(模拟信号:指在时间上和数值上都是连续的信号。)2、数字电路主要研究电路输入、输出状态之间的相互关系,即逻辑关系。分析和设计数字电路的数学工具是逻辑代数,由英国数学家布尔1849年提出,因此也称布尔代数。3、逻辑代数有三种最基本的运算:与、或、非。基本逻辑的简单组合称为复合逻辑。4、逻辑代数三个基本规则:代入规则、反演规则和对偶规则。5、化简电路是为了降低系统的成本,提高电路的可靠性,以便使用最少集成电路实现功能。6、把若干个有源器件和无源器件及其导线,按照一定的功能要求制作在同一块半导体芯片上,这样的产品叫集成电路。最简单的数字集成电路就是集成逻辑门,以基本逻辑门为基础,可构成各种功能的组合逻辑电路和时序逻辑电路。7、TTL门电路:是目前双极型数字集成电路使用最多的一种,由于输入端和输出端的结构形成都采用了半导体三极管,所以也称晶体管-晶体管逻辑门电路。TTL与非门是TTL门电路的基本单元。最常用的集成逻辑门电路TTL门和CMOS门。8、集成逻辑门,按照其组成的有源器件的不同可分为两大类:一类是双极性集体管逻辑门,主要有TTL门(晶体管-晶体管逻辑门)、ECL门(射极耦合逻辑门)、I2C门;另一类是单极性绝缘栅场效应管逻辑门,简称MOS门。问题集锦1、同步电路和异步电路的区别是什么?同步电路:存储电路中所有触发器的时钟输入端都接同一个时钟脉冲源,因而所有触发器的状态的变化都与所加的时钟脉冲信号同步。异步电路:电路没有统一的时钟,有些触发器的时钟输入端与时钟脉冲源相连,这有这些触发器的状态变化与时钟脉冲同步,而其他的触发器的状态变化不与时钟脉冲同步。2、什么是线与逻辑,要实现它,在硬件特性上有什么具体要求?将两个门电路的输出端并联以实现与逻辑的功能成为线与。在硬件上,要用OC门来实现,同时在输出端口加一个上拉电阻。由于不用OC门可能使灌电流过大,而烧坏逻辑门。3、解释setup和holdtimeviolation,画图说明,并说明解决办法。Setup/holdtime是测试芯片对输入信号和时钟信号之间的时间要求。建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setuptime.如不满足setuptime,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。如果holdtime不够,数据同样不能被打入触发器。建立时间(SetupTime)和保持时间(Holdtime)。建立时间是指在时钟边沿前,数据信号需要保持不变的时间。保持时间是指时钟跳变边沿后数据信号需要保持不变的时间。如果数据信号在时钟沿触发前后持续的时间均超过建立和保持时间,那么超过量就分别被称为建立时间裕量和保持时间裕量。4、什么是竞争与冒险现象?怎样判断?如何消除?(汉王笔试)在组合逻辑中,由于门的输入信号通路中经过了不同的延时,导致到达该门的时间不一致叫竞争。产生毛刺叫冒险。判断方法:代数法、图形法(是否有相切的卡诺圈)、表格法(真值表)。如果布尔式中有相反的信号则可能产生竞争和冒险现象。冒险分为偏“1”冒险和偏“0”冒险解决方法:一是添加布尔式的消去项;二是在芯片外部加电容;三是加入选通信号。5、名词:SRAM、SSRAM、SDRAM:(SRAM:静态RAM;DRAM:动态RAM;SSRAM:SynchronousStaticRandomAccessMemory同步静态随机访问存储器。它的一种类型的SRAM。SSRAM的所有访问都在时钟的上升/下降沿启动。地址、数据输入和其它控制信号均于时钟信号相关。这一点与异步SRAM不同,异步SRAM的访问独立于时钟,数据输入和输出都由地址的变化控制。SDRAM:SynchronousDRAM同步动态随机存储器6、FPGA和ASIC的概念,他们的区别。答案:FPGA是可编程ASIC。ASIC:专用集成电路,它是面向专门用途的电路,专门为一个用户设计和制造的。根据一个用户的特定要求,能以低研制成本,短、交货周期供货的全定制,半定制集成电路。与门阵列等其它ASIC(ApplicationSpecificIC)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验等优点。7、单片机上电后没有运转,首先要检查什么?a、首先应该确认电源电压是否正常。用电压表测量接地引脚跟电源引脚之间的电压,看是否是电源电压,例如常用的5V。b、接下来就是检查复位引脚电压是否正常。分别测量按下复位按钮和放开复位按钮的电压值,看是否正确。c、然后再检查晶振是否起振了,一般用示波器来看晶振引脚的波形;经过上面几点的检查,一般即可排除故障了。如果系统不稳定的话,有时是因为电源滤波不好导致的。在单片机的电源引脚跟地引脚之间接上一个0.1uF的电容会有所改善。如果电源没有滤波电容的话,则需要再接一个更大滤波电容,例如220uF的。遇到系统不稳定时,就可以并上电容试试(越靠近芯片越好)。8、什么是同步逻辑和异步逻辑?同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。9、你知道那些常用逻辑电平?TTL与COMS电平可以直接互连吗?常用逻辑电平:12V,5V,3.3V;TTL和CMOS不可以直接互连,由于TTL是在0.3-3.6V之间,而CMOS则是有在12V的有在5V的。CMOS输出接到TTL是可以直接互连。TTL接到CMOS需要在输出端口加一上拉电阻接到5V或者12V。10、如何解决亚稳态。答:亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发器进入亚稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在亚稳态期间,触发器输出一些中间级电平,或者可能处于振荡状态,并且这种无用的输出电平可以沿信号通道上的各个触发器级联式传播下去。解决方法主要有:(1)降低系统时钟;(2)用反应更快的触发器(FF),锁存器(LATCH);(3)引入同步机制,防止亚稳态传播;(4)改善时钟质量,用边沿变化快速的时钟信号;(5)使用工艺好、时钟周期裕量大的器件。11、锁存器、触发器、寄存器三者的区别。触发器:能够存储一位二值信号的基本单元电路统称为“触发器”。锁存器:一位触发器只能传送或存储一位数据,而在实际工作中往往希望一次传送或存储多位数据。为此可把多个触发器的时钟输入端CP连接起来,用一个公共的控制信号来控制,而各个数据端口仍然是各处独立地接收数据。这样所构成的能一次传送或存储多位数据的电路就称为“锁存器”。寄存器:在实际的数字系统中,通常把能够用来存储一组二进制代码的同步时序逻辑电路称为寄存器。由于触发器内有记忆功能,因此利用触发器可以方便地构成寄存器。由于一个触发器能够存储一位二进制码,所以把n个触发器的时钟端口连接起来就能构成一个存储n位二进制码的寄存器。区别:从寄存数据的角度来年,寄存器和锁存器的功能是相同的,它们的区别在于寄存器是同步时钟控制,而锁存器是电位信号控制。可见,寄存器和锁存器具有不同的应用场合,取决于控制方式以及控制信号和数据信号之间的时间关系:若数据信号有效一定滞后于控制信号有效,则只能使用锁存器;若数据信号提前于控制信号到达并且要求同步操作,则可用寄存器来存放数据。12.全加器、半加器:不考虑低位来的进位的加法称为半加。函数表达式:1,CiSABABAB全加器:考虑低位来的进位的加法称为全加函数表达式:11,()iiiiiiiiiiSABCCABCAB13.时序电路按输出变量的依从关系可分为迷里型和摩尔型两类,迷里型的输出是输入变量及现态的函数。而摩尔型电路的输出仅与电路状态的现态有关。14.几种触发器类型:RS触发器状态方程:1nddnQSRQ;约束方程:0ddRS。时钟控制的RS触发器状态方程:1nnQSRQ;约束方程:0RS。D触发器状态方程:1nQDT触发器状态方程:nTQJK触发器状态方程:1nnnQJQKQ15.555定时电路:具有静态电流小,输入阻抗极高,电源电压范围较宽等特点。16.单稳态电路的主要应用是定时、延时和波形变换。17.多谐振荡器:5个指标:脉冲周期、脉冲幅度、脉冲宽度、上升时间、下降时间。18.施密特电路的主要应用是波形变换、整形、幅值选择。19.CCDCharge-coupledDevice电荷耦合元件。CMOSComplementaryMetalOxideSemiconductor互补金属氧化物半导体20.FPGA结构一般分为三部分:可编程逻辑块(CLB)、可编程I/O模块和可编程内部连线。21.大规模可编程器件主要有CPLD和FPGA两类,其中CPLD通过可编程乘积项逻辑实现其逻辑功能。基于SRAM的FPGA器件,每次上电后必须进行一次配置。FPGA内部阵列的配置一般采用在电路可重构技术,编程数据保存在静态存储器(SRAM),掉电易失。22.Quartus编译器编译FPGA工程最终生产两种不同用途的文件,它们分别是.sof和.pof。sof是SRAMObjectFile,下载到FPGA中,断电丢失。pof是ProgrammerObjectFile,下载到配置芯片中,上电重新配置FPGA23.FPGA过程中的仿真有三种:行为仿真、逻辑仿真、时序仿真。24.IP核在EDA技术和开发中占有很重要的地位,提供VHDL硬件描述语言功能块,但不涉及实现该功能模块的具体电路的IP核为软件IP。25.IC设计中同步复位与异步复位的区别:异步复位是不受时钟影响的,在一个芯片系统初始化(或者说上电)的时候需要这么一个全局的信号来对整个芯片进行整体的复位,到一个初始的确定状态。而同步复位需要在时钟沿来临的时候才会对整个系统进行复位。26.多时域设计中,如何处理信号跨时域?不同的时钟域之间信号通信时需要进行同步处理,这样可以防止新时钟域中第一级触发器的亚稳态信号对下级逻辑造成影响,其中对于单个控制信号可以用两级同步器,如电平、边沿检测和脉冲,对多位信号可以用FIFO,双口RAM,握手信号等。跨时域的信号要经过同步器同步,防止亚稳态传播。例如:时钟域1中的一个信号,要送到时钟域2,那么在这个信号送到时钟域2之前,要先经过时钟域2的同步器同步后,才能进入时钟域2。这个同步器就是两级d触发器,其时钟为时钟域2的时钟。这样做是怕时钟域1中的这个信号,可能不满足时钟域2中触发器的建立保持时间,而产生亚稳态,因为它们之间没有必然关系,是异步的。这样做只能防止亚稳态传播,但不能保证采进来的数据的正确性。所以通常只同步很少位数的信号。比如控制信号,或地址。当同步的是地址时,一般该地址应采用格雷码,因为格雷码每次只变一位,相当于每次只有一个同步器在起作用,这样可以降低出错概率,象异步FIFO的设计中,比较读写地址的大小时,就是用这种方法。如果两个时钟域之间传送大量的数据,可以用异步FIFO来解决问题。我们可以在跨越ClockDomain时加上一个低电平使能的LockupLatch以确保Timing能正确无误27.给了reg的setup,hold时间,求中间组合逻辑的delay范围.Setup/holdtime是测试芯片对输入信号和时钟信号之间的时间要求。建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setuptime.如不满足setuptime,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。时holdtime不够,数据同