Computer Logical Organization 简明教程

Combinational Circuits

组合电路是一种电路,我们在电路中组合不同的门,例如编码器、译码器、多路复用器和解复用器。组合电路的一些特性如下 -

  1. 组合电路在任何时间瞬间的输出仅取决于输入端子上的电平。

  2. 组合电路不使用任何存储器。输入的上一个状态不会对电路的当前状态产生任何影响。

  3. 组合电路可以有 n 个输入和 m 个输出。

Block diagram

combinational circuit blockdiagram

我们接下来将详细阐述几个重要的组合电路。

Half Adder

半加器是一种有两个输入和两个输出的组合逻辑电路。半加器电路旨在将两个单比特二进制数 A 和 B 相加。它是加两个 single 位数字的基本构建模块。此电路有两个输出 carrysum

Block diagram

halfadder blockdiagram

Truth Table

halfadder truthtable

Circuit Diagram

halfadder circuitdiagram

Full Adder

全加器旨在克服半加器电路的缺点。它可以将两个单比特数字 A 和 B 以及进位 c 相加。全加器是一个有三个输入和两个输出的组合电路。

Block diagram

fulladder blockdiagram

Truth Table

fulladder truthtable

Circuit Diagram

fulladder circuitdiagram

N-Bit Parallel Adder

全加器只能将两个单数字二进制数连同进位输入一起相加。但在实际中,我们需要将比一个比特长得多的二进制数相加。要加两个 n 位二进制数,我们需要使用 n 位并行加法器。它使用了级联的多位全加器。上一位全加器的进位输出连接到下一位全加器的进位输入。

4 Bit Parallel Adder

在框图中,A0 和 B0 表示四位字 A 和 B 的最低有效位。因此,全加器-0 是最低级。因此,其 Cin 已被永久设为 0。其余连接与 n 位并行加法器的连接完全相同,如图所示。四位并行加法器是一种非常常见的逻辑电路。

Block diagram

fourbitadder blockdiagram

N-Bit Parallel Subtractor

可以通过取要减去的数的 1 或 2 的补数来进行减法。例如,可以通过将 B 的 1 或 2 的补数加到 A 来执行减法 (A-B)。这意味着我们可以使用二进制加法器来执行二进制减法。

4 Bit Parallel Subtractor

首先将要减去的数字 (B) 通过反相器传递以获得其 1 的补数。然后,四位加法器将 A 和 B 的 2 的补数相加以产生减法。S3 S2 S1 S0 表示二进制减法 (A-B) 的结果,进位输出 Cout 表示结果的极性。如果 A > B,则 Cout = 0,二进制形式 (A-B) 的结果则 Cout = 1,结果为 2 的补数形式。

Block diagram

fourbitsubstractor blockdiagram

Half Subtractors

半减法器是一种有两个输入和两个输出(差值和借位)的组合电路。它产生输入处两个二进制比特之间的差值,并且还生成一个输出(借位)以指示是否借用了 1。在减法 (A-B) 中,A 称为被减数位,B 称为减数位。

Truth Table

halfsubstrator truthtable

Circuit Diagram

halfsubstrator circuitdiagram

Full Subtractors

全减法器克服了半减法器的缺点。全减法器是具有三个输入 A、B、C 和两个输出 D 和 C' 的组合电路。A 是“被减数”、B 是“减数”、C 是前一阶段产生的“借位”,D 是差值输出,C' 是借位输出。

Truth Table

fullsubstrator truthtable

Circuit Diagram

fullsubstrator circuitdiagram

Multiplexers

多路复用器是一种特殊类型的组合电路。有 n 个数据输入、一个输出和 m 个选择输入,其中 2m = n。它是一种数字电路,可选择 n 个数据输入中的一个并将其路由到输出。n 个输入中之一的选择通过所选输入来完成。根据应用于所选输入的数字代码,从 n 个数据源中选择一个并将其传输到单个输出 Y。E 称为选通或使能输入,它对于级联非常有用。它通常是一个低电平有效端,这意味着在低电平时,它将执行所需的操作。

Block diagram

n onemultiplexer blockdiagram

多路复用器有多种变化

  1. 2 : 1 multiplexer

  2. 4 : 1 multiplexer

  3. 16 : 1 multiplexer

  4. 32 : 1 multiplexer

Block Diagram

two onemultiplexer blockdiagram

Truth Table

two onemultiplexer truthtable

Demultiplexers

解复用器执行多路复用器的反向操作,即它接收一个输入并将其分配到多个输出上。它只有一个输入、n 个输出、m 个选择输入。一次只能通过选择线选择一个输出线,并且输入传输到所选输出线。解复用器等效于单刀多位开关,如图所示。

解复用器有多种变化。

  1. 1 : 2 demultiplexer

  2. 1 : 4 demultiplexer

  3. 1 : 16 demultiplexer

  4. 1 : 32 demultiplexer

Block diagram

one twodemultiplexer blockdiagram

Truth Table

one twodemultiplexer truthtable

Decoder

译码器是一种组合电路。它具有 n 个输入和最多 m = 2n 个输出。译码器与没有任何数据输入的解复用器相同。它执行与编码器完全相反的操作。

Block diagram

decoder blockdiagram

以下是译码器的示例。

  1. Code converters

  2. BCD 到七段译码器

  3. Nixie tube decoders

  4. Relay actuator

2 to 4 Line Decoder

2 到 4 线译码器的框图如图所示。A 和 B 是两个输入,D 到 D 是四个输出。真值表解释了译码器的操作。它显示每个输出仅对特定的输入组合为 1。

Block diagram

two fourdecoder blockdiagram

Truth Table

two fourdecoder truthtable

Logic Circuit

two fourdecoder logiccircuit

Encoder

编码器是一种组合电路,设计用于执行解码器的逆运算。编码器有 n 条输入线和 m 条输出线。编码器生成与数字输入数对应的 m 位二进制码。编码器接受 n 个输入数字字,并将其转换为 m 位另一个数字字。

Block diagram

encoder blockdiagram

以下是编码器的示例。

  1. Priority encoders

  2. Decimal to BCD encoder

  3. Octal to binary encoder

  4. Hexadecimal to binary encoder

Priority Encoder

这是一种特殊类型的编码器。优先考虑输入线。如果同时出现两个或多个输入线为 1,则将考虑具有最高优先级的输入线。有四个输入 D0、D1、D2、D3 和两个输出 Y0、Y1。在四个输入中,D3 具有最高优先级,而 D0 具有最低优先级。这意味着,如果 D3 = 1,则无论其他输入如何,Y1 Y1 = 11。类似地,如果 D3 = 0 且 D2 = 1,则无论其他输入如何,Y1 Y0 = 10。

Block diagram

priorityencoder blockdiagram

Truth Table

priorityencoder truthtable

Logic Circuit

priorityencoder logiccircuit