0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

逻辑电路的基础知识

e9Zb_gh_8734352 来源:CSDN博客 作者:CSDN博客 2020-10-13 11:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

FPGA (Field Programmable Gate Aray,现场可编程门阵列)是一种可通过重新编程来实现用户所需逻辑电路的半导体器件。为了便于大家理解FPGA的设计和结构,我们先来简要介绍一些逻辑电路的基础知识。

1.逻辑代数

逻辑代数中的变量称为逻辑变量,用大写字母表示。逻辑变量的取值只有两种,即逻辑0和逻辑1,0 和 1 称为逻辑常量,并不表示数量的大小,而是表示两种对立的逻辑状态,即称为逻辑0状态和逻辑1状态。逻辑代数是由和逻辑值(0和1)相关的逻辑与( AND)、逻辑或(OR)和逻辑非(NOT)三种运算形成的代数体系,也称为布尔代数。

逻辑代数分为两种:一种是从一种状态变为另一种状态的逻辑,称为一元逻辑;另外一种是两种状态中按照某种规则(比如比较大小)有倾向性的选择出其中一种状态的逻辑,称为二元逻辑。图1列出了定义逻辑与、逻辑或的二元逻辑运算以及定义逻辑非的一元逻辑运算。在这里,三种运算分别使用“·”“+”和“ˉ”运算符号来表示。逻辑与x∙y是指x和y都为1时,结果为1的运算。逻辑或x+y是指x或y至少有一方为1时,结果为1的运算。逻辑非“x(ˉ)" 是取相反逻辑值的一元运算:如果x为0则结果为1;反之,如果x为1则结果为0。

表1 逻辑运算(布尔代数的公理)

逻辑代数满足表2所示的定理。这里的符号“=”表示其两边的计算结果总是相等,即等价。如果对换逻辑表达式中的逻辑值0和1、逻辑运算“与”和“或”,对换后得到的新逻辑表达式与对换前的表达式运算顺序不变,那么新逻辑表达式就称为原逻辑表达式的对偶式。逻辑代数中,如果某定理的逻辑表达式成立,其对偶式也成立。

表2 布尔代数的定理

2.逻辑表达式

逻辑表达式是用来描述逻辑运算过程的算式,由逻辑运算符、任意数量的逻辑变量以及必要的括号和常数值0或1组合而成。对于包含n个逻辑变量X1,X2,X3…Xn的逻辑表达式来说,我们先在其各个逻辑变量内代入逻辑值0或1,形成任意组合(共2n组),然后依照逻辑表达式的计算步骤计算这些组合,就可以得到值为0或1的计算结果。也就是说,逻辑表达式定义了具有某种逻辑功能的逻辑函数F(X1,X2,X3…Xn)。在逻辑表达式中,没有括号的情况下,逻辑与的计算优先于逻辑或。逻辑与的运算符“·”也可省略。

任何逻辑函数都可以由逻辑表达式来描述,而且描述同一逻辑函数的逻辑表达式可以有多个。逻辑表达式的标准形式指的是通过增加表达式形式上的限制,使得一个逻辑函数只有一个逻辑表达式与之对应的情况。逻辑表达式中,逻辑变量以原变量或反变量的形式出现。原变量和反变量统称为字面量( literal)。字面量的逻辑与(每个字面量不能出现多次)叫作与项,与项的逻辑或运算叫作积之和。包含所有字面量的与项称为最小项,由最小项构成的积之和称为标准积之和(标准积)。将标准积的逻辑与和逻辑或对调即为标准和之积。字面量的逻辑或(每个字面量不能出现多次)叫作或项,或项的逻辑与运算叫作和之积。包含所有逻辑变量的或项称为最大项,由最大项构成的和之积称为标准和之积(标准和)。

3.真值表

除了逻辑表达式,逻辑函数的描述方法还包括真值表和逻辑门。针对逻辑函数所有可能的输入组合一一列出输出值,我们就可以得到真值表。对于组合逻辑电路,只要列出所有可能的输入和对应的输出值,就可以完整地描述电路功能。因此,电路功能通常使用真值表描述。输入的个数为n时,真值表的组合数为2n。真值表中,需要记入每组输人值所对应的输出值。

描述逻辑函数的逻辑表达式可以有许多个,而描述逻辑函数的真值表却是唯一的。虽然一个逻辑表达式只描述一个逻辑函数,但一个逻辑函数可以通过无数的等价逻辑表达式来描述。实现真值表所定义的功能的电路称为查找表( Look-up Table, LUT), 是当前主流FPGA的基本单元。

从真值表推导逻辑表达式的形式有两种:“积之和表达式”与“和之积表达式”。在真值表输出为1的行中取输人变量的与项(最小项),然后将这些最小项相或,即可得到标准积之和表达式;相对地,在真值表输出为0的行中取输人变量的反变量的或项(最大项),然后将这些最大项相与,即可导出标准和之积表达式。图1中的示例展示了如何从真值表推导逻辑表达式。

图1 真值表推导逻辑表达式示例

逻辑电路是一种离散信号的传递和处理,以二进制为原理、实现数字信号逻辑运算和操作的电路。分组合逻辑电路和时序逻辑电路。前者由最基本的“与门”电路、“或门”电路和“非门”电路组成,其输出值仅依赖于其输入变量的当前值,与输入变量的过去值无关—即不具记忆和存储功能;后者也由上述基本逻辑门电路组成,但存在反馈回路—它的输出值不仅依赖于输入变量的当前值,也依赖于输入变量的过去值。

4.组合逻辑电路

逻辑电路根据是否包含记忆元件,分为组合逻辑电路和时序逻辑电路。组合逻辑电路不包含记忆元件。其时间点的输出(逻辑函数值)仅取决于当时的输入,而与电路以前状态无关,而与其他时间的状态无关。组合逻辑电路允许有多个输入/输出,其内部由用于计算逻辑与( AND)、逻辑或(OR)和逻辑非(NOT)等基本逻辑函数的逻辑门( gate),以及门电路间的连线组成。逻辑与、逻辑或和逻辑非3种运算相对应的逻辑门分别被称为与门、或门和非门。此外,其他较为常见的二项运算逻辑门还有与非(NAND)门、或非(NOR)门、异或( EXOR)门等。与非门用来计算逻辑与的否定,或非门用来计算逻辑或的否定,而异或门用来计算异或逻辑。表3列出了这些逻辑门的符号(MIL符号)、真值表和逻辑表达式。我们使用“⊕”表示逻辑异或的运算符号。表中用来表示二项运算的2输人门电路符号,也可以用于表示具有3个以上输人的运算逻辑。目前主流的LSI技术CMOS中除了基本的与非门、或非门,还有OR-AND-NOT、AND-OR-NOT等复合门电路。

表3 逻辑门的符号、真值表、逻辑表达式

任何逻辑电路都可以由积之和表达式来描述。因此,使用NOT-AND-OR组合而成的组合逻辑电路可以实现任何逻辑函数,这种方式被称为AND-OR逻辑电路或AND-OR阵列。实现AND-OR逻辑电路的器件有PLA ( Programmable Logic Array,可编程序逻辑阵列)等。

对于一个逻辑表达公式或逻辑电路,其真值表是唯一的,但其真值表对应的逻辑电路或逻辑表达式可能有多种实现形式,所以,一个特定的逻辑问题,其对应的真值表是惟一的,但实现它的逻辑电路是多种多样的。在实际设计工作中,如果由于某些原因无法获得某些门电路,可以通过变换逻辑表达式变电路,从而能使用其他器件来代替该器件。同时,为了使逻辑电路的设计更简洁,通过各方法对逻辑表达式进行化简是必要的。组合电路可用一组逻辑表达式来描述。设计组合电路直就是实现逻辑表达式。要求在满足逻辑功能和技术要求基础上,力求使电路简单、经济、可靠、实现组合逻辑函数的途径是多种多样的,可采用基本门电路,也可采用中、大规模集成电路。其一般设计步骤为:

(1) 分析设计要求,列真值表;

(2) 进行逻辑和必要变换。得出所需要的最简逻辑表达式;

(3) 画逻辑图。

常用的逻辑组合电路包括,算数运算电路(半加器、全加器和加法器)、编码器、译码器、数据选择器、数据分配器、和数值比较器

5. 时序逻辑电路

含有记忆元件的逻辑电路被称为时序逻辑电路。在组合逻辑电路中,当前的输出只取决于当前的输人。而在时序逻辑电路中,只知道当前的输人并不足以确定当前的输出。也就是说,时序逻辑电路是一种过去的电路状态(之前的输入)也会对输出产生影响的逻辑电路。

时序逻辑电路分为同步时序逻辑电路和异步时序逻辑电路这两种。同步时序逻辑电路中,输人和内部状态的变化由时钟信号控制同步进行,而异步时序逻辑电路则不需要时钟信号。由于FPGA电路设计一般使用同步时序逻辑电路,所以这里我们不对异步时序逻辑电路进行过多讨论,而我们常用的时序逻辑电路主要有触发器、计数器、寄存器和顺序脉冲发生器等。

时序逻辑电路的输出值由输人值和记忆元件的状态值共同决定。也就是说,时序逻辑电路中过去的输人所形成并保留下来的状态对当前的输出具有影响。这种逻辑电路可描述为图2所示的有限状态机模型。图2a所示的模型为米勒( Mealy )型时序逻辑电路,图2b 所示的模型为摩尔(Moore)型时序逻辑电路。米勒模型的输出由内部状态和输人共同决定,而摩尔模型的输出仅由内部状态决定。米勒模型的状态数通常比摩尔模型的少,因此有电路规模较小的优点。然而由于输人会立刻反映到输出,所以逻辑元件或不等长的布线所带来的信号延迟等容易引起信号竞争,进而导致非预期的错误输出(冒险)。相比之下,摩尔模型直接使用记忆状态的输出,因此电路速度快且不易发生冒险。但摩尔模型由于状态数量多,电路规模也相对较大。

图2 时序逻辑电路模型

责任编辑人:CC

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 逻辑电路
    +关注

    关注

    13

    文章

    503

    浏览量

    44328

原文标题:理解FPGA的基础知识——逻辑电路

文章出处:【微信号:gh_873435264fd4,微信公众号:FPGA技术联盟】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    TCP三次握手和四次挥手的基础知识

    TCP 三次握手和四次挥手是网络基础知识中的基础,面试时能背出来的人很多,但真正遇到生产环境问题需要排查时,很多人就傻眼了。比如:连接建立后客户端马上断开是怎么回事?为什么 TIME_WAIT 状态的连接这么多?服务端为什么会产生大量 CLOSE_WAIT?RST 报文什么时候会出现?
    的头像 发表于 05-25 11:02 361次阅读

    芯片逻辑内建自测试技术的工作原理与核心架构

    内建自测试(LBIST)技术应运而生,它通过将测试电路植入芯片内部,使芯片能够对自身逻辑电路进行自主检测,显著降低了对ATE的依赖,在汽车电子、航空航天等高可靠性领域成为关键技术。
    的头像 发表于 03-03 14:08 524次阅读
    芯片<b class='flag-5'>逻辑</b>内建自测试技术的工作原理与核心架构

    labview编程及基础知识分享

    最近建了一个公众号,本人会在上面进行labview编程知识的分享,欢迎大家关注;公众号叫:上位机知识分享LABVIEW
    发表于 02-13 10:08

    阻燃系列基础知识

    我很荣幸有机会在这里与大家分享我对阻燃系列基础知识的研究。今天,我们将探讨的主题是“阻燃系列基础知识”。在我们日常生活中,火灾事故频发,造成巨大的财产损失和人员伤亡。因此,了解阻燃材料的基础知识对于
    的头像 发表于 02-06 08:07 768次阅读
    阻燃系列<b class='flag-5'>基础知识</b>

    【「龙芯之光 自主可控处理器设计解析」阅读体验】--LoongArch逻辑综合、芯片设计

    流程,关于逻辑综合流程的步骤及实现过程,可以参考书籍相关部分。 二.可测试型设计 可测试性设计(Design For Testability,DFT)主要是通过在芯片中加入可测试性逻辑电路,在自动测试设备
    发表于 01-18 14:15

    有源逻辑探头的具体应用

    有源逻辑探头依托内置放大电路、高输入阻抗及低噪声核心特性,专注于数字电路逻辑电平(如0/1信号)的精准捕获与分析,广泛适配研发验证、故障调试、设备维修等全流程数字
    的头像 发表于 12-16 10:29 370次阅读
    有源<b class='flag-5'>逻辑</b>探头的具体应用

    嵌入式基础知识-系统调度

    恢复任务的优先级高于正在运行任务的优先级,则会发生任务切换,将该任务将再次转换任务状态,由就绪态变成运行态。 5、总结 本篇介绍了系统调度的基础知识,包括进程的三种基本状态,进程切换,AUTOSAR与RTOS的任务切换基础知识
    发表于 12-16 08:15

    无刷电机驱动器的基础知识

    本文将从技术角度出发,对三相无刷电机的电机驱动器的作用、种类和规格进行介绍。通过本文,您可以学习到电机驱动器选型所需的基础知识
    的头像 发表于 12-10 14:13 7059次阅读
    无刷电机驱动器的<b class='flag-5'>基础知识</b>

    地线的基础知识

    )模拟地:放大器、采样保持器、A/D转换器和比较器的零电位参考点。 5)数字地:也叫逻辑地,是数字电路的零电位参考点。 6)“热地”:开关电源无需使用变压器,其开关电路的“地”和市电电网有关,既
    发表于 12-08 06:00

    RK 平台 Vendor Storage 开发指南:基础知识、流程与实用技巧

    备可靠性校验、掉电恢复等关键特性,是保障设备身份标识、功能授权等核心信息安全的重要组件。本文将从基础知识、开发流程、使用途径三方面,为开发者梳理完整的开发逻辑。 一、核心基础知识:了解 Vendor Storage 是什么? 1
    的头像 发表于 11-22 07:11 1490次阅读
    RK 平台 Vendor Storage 开发指南:<b class='flag-5'>基础知识</b>、流程与实用技巧

    视觉工程师必须知道的工业相机基础知识

    工业相机基础知识概述。
    的头像 发表于 09-19 17:04 1840次阅读
    视觉工程师必须知道的工业相机<b class='flag-5'>基础知识</b>

    咨询符合国标GB/T 4728.12-2022的逻辑电路设计软件

    背景 在大学教授《数字逻辑》,总是遇到绘逻辑电路图的问题,想适配国家标准GB/T 4728.12-2022的逻辑电路,培养学生的家国情怀,但目前的软件好像使用的都是IEEE标准,
    发表于 09-09 09:46

    电子工程师自学成才手册.提高篇

    ,数字电路基础与门电路,数制、编码与逻辑代数,组合逻辑电路,时序逻辑电路,脉冲电路,D/A转换器
    发表于 07-03 16:09

    CMOS的逻辑门如何应用在电路

    CMOS的逻辑门如何应用在电路中 前言 在如今的电子电路中,CMOS逻辑门有着接近零静态功耗和超高集成度的特点,是数字电路不可或缺的存在。其
    的头像 发表于 06-19 16:07 2033次阅读
    CMOS的<b class='flag-5'>逻辑</b>门如何应用在<b class='flag-5'>电路</b>中

    CMOS超大规模集成电路制造工艺流程的基础知识

    本节将介绍 CMOS 超大规模集成电路制造工艺流程的基础知识,重点将放在工艺流程的概要和不同工艺步骤对器件及电路性能的影响上。
    的头像 发表于 06-04 15:01 3248次阅读
    CMOS超大规模集成<b class='flag-5'>电路</b>制造工艺流程的<b class='flag-5'>基础知识</b>