7 faktů o faktech o binární sčítačce: plná sčítačka a poloviční sčítačka

  1. Definice a přehled zmije
  2. Druhy zmije
  3. Napůl zmije
  4. Úplné zmije
  5. BCD sčítač

Definice:

Sčítačka je zařízení, které sčítá dvě čísla a vytváří výsledek. Binární sčítač je něco, co se zabývá přidáváním binárních čísel.

Binární sčítač je digitální zařízení a je potřebný pro digitální výpočty. Operace prováděná v binárním sčítači se řídí pravidly binárního sčítání. Zde dva bity odpovídající 2n jsou přidány a výslednice je poté přidána k přenosu z 2n-1 číslice.

Pravidla binárního přidávání jsou uvedena následovně. Zde 0 je logicky nízká a 1 je logicky vysoká. A a B jsou dva vstupy.

ABY = A + B
000
011
101
110 (nést 1)
Binární přidání

Příklad operací přidání:

  • 11111 1011 + 101 10 + 1 XNUMX + XNUMX + XNUMX
  • 11111+ 1011 = 101010
  • 101010 + 101 = 101111
  • 110001 + 1 = 110010

Odpověď je tedy 110010

Druhy zmije

Tato operace sčítání je implementována různými digitálními obvody. Oni jsou -

  • Napůl zmije
  • Plná zmije
  • BCD zmije

Binární sčítač provádí nejen operace sčítání, ale také se používá v jiných digitálních aplikacích. Dekódování adresy, výpočet indexu jsou některé z jeho aplikací.

Napůl zmije

Poloviční sčítač je typ binárního sčítače, který přidává jeden bit dat a vytváří výsledek. Má dvě vstupní strany, kterými dodáváme digitální logické hodnoty, a má dva výstupy, kterými dostáváme výsledek operace. Výsledek lze zobrazit v jedné číslici. Výstup ukazuje číslici v součtu, která má stejný význam jako přidané jednotlivé číslice. Druhý výstup ukazuje přenosový bit.

Poloviční zmije Pravda tabulka

Funkce poloviční sčítačky je uvedena v následující tabulce pravdivosti.

ABSoučetNéstSoučet A & B.
000000
011001
101001
110110
Pravdivá tabulka poloviční zmije

Nyní z tabulky pravdy můžeme pozorovat, že první tři řádky mohou představovat součet pomocí jediné číslice. Na posledním řádku je součet reprezentován pomocí dvou číslic, protože má 1 jako carry. Zde je součet nulový a nést 1 musí být vzat na pozici další vyšší významnosti.

Součet = A ′ B + AB ′

Nést = AB

Takže,

Součet = A XOR B

Carry = A A B

K implementaci logiky potřebujeme jednu bránu XOR a jednu bránu AND. Bránu XOR a bránu AND lze také vyrobit pomocí univerzálních bran, jako jsou NAND a NOR. Poloviční zmije tedy může být navrženo pouze s použitím univerzálních bran.

Následující obrázek ukazuje A a B jako vstup a S jako součet a C jako přenos.

Plná binární sčítačka
Poloviční binární sčítač, zdroj obrázku - indukční zátěžNapůl zmije, označeno jako public domain, více podrobností o Wikimedia Commonsmédia

Plná zmije

Dalším typem binárního sčítače je plný sčítač. Také přidává binární data a produkuje výstup. Nyní, když jsou přidána dvě binární čísla, s výjimkou nejméně významné číslice, existuje přenos jako Ci-1 a provádět jako Ci. Plná sčítačka je navržena tak, aby zvládla přenos do každé fáze. Takto úplná objednávka překonává nedostatek poloviny sčítače manipulace s odbavením.

Plná tabulka pravdivosti zmije

AiBiCi-1SiCi
00000
00110
01010
01101
10010
10101
11001
11111
Úplná tabulka pravdivosti zmije

Plný obvod zmije

Si = Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + (A.i Bi + Ai Bi) C.i-1   + (A.i Bi + Ai Bi) C.i-1

A taška přichází jako:

Ci = Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 

Nebo C.i = (A.i Bi + Ai Bi) C.i-1   + (A.i Bi + Ai Bi) C.i-1

Nebo C.i = Ai Bi + (A.i Bi + Ai Bi) C.i-1

Nyní zvažte, že poloviční sčítačka má vstupy A a B. Výstupní součet je S a přenos je C. Nyní výraz Si a Ci lze získat z výrazů součtu a přenosu obvodu polovičního sčítače.

Si = SCi-1 + SCi-1

Ci = C + SCi-1

Nyní, abychom implementovali celou sčítačku pomocí polovičních sčítačů, potřebujeme dvě poloviční sčítačky a jednu bránu OR. Plné implementace sčítače pomocí polovičních sčítačů je znázorněno na následujícím obrázku.

Úplný logický diagram sčítačky
Plná binární sčítačka, zdroj obrázku - Induktivní zátěžFull-zmije logický diagram, označeno jako public domain, více podrobností o Wikimedia Commons

Jak vidíme na obrázku, první sčítač (označený jako) má vstup Ai a Bi. Druhá poloviční sčítačka (označená jako-) má vstupy C i-1 a výstup sčítače první poloviny, který je S. Výstupem sčítače druhé poloviny jsou Si a SCi-1.

Nyní, SCi-1 představuje provedení. Nositel sčítače první poloviny, který je C, a nositel sčítače druhé poloviny, který je SCi-1 jsou napájeny jako vstup brány OR. Výstup brány OR je konečným provedením celého obvodu sčítače.

Paralelní binární doplňky

Pro přidání bitů v každé fázi přidávání je zapotřebí plná sčítačka, s výjimkou přidání nejméně významných číslic, na druhou stranu jsou k dokončení úplné sčítačky zapotřebí dvě poloviční sčítačky. Z toho vyplývá pravidlo, že přidání dvou n-bitových čísel bude vyžadovat 2 * m -1 počet polovičních sčítačů a m-1 čísel OR bran. Tento typ binárních doplňků je známý jako paralelní binární doplňky. Rychlost provozu těchto typů přídavných zařízení je velmi vysoká. Proto jsou v moderních výpočetních zařízeních preferovány.  

Přidejme 101 a 111 jako příklad paralelního binárního sčítače. Níže uvedený obrázek představuje přidání.

4bitová předběžná zmije
Paralelní binární sčítač, zdroj obrázku - en: Uživatel: Cburnett4-bitová sčítačka lookaheadCC BY-SA 3.0

Sčítač první poloviny (označený jako-1) přidává krajní pravé bity 1 a 1, aby vytvořil binární součet 0 a přenos 1 podle pravidel binárního sčítání. Výstup polovičního sčítače se přivádí do vstupu prvního úplného sčítače (označeného jako - 2). Další dva vstupy prvního plného sčítače jsou dva další bity, které jsou 0 a 1. Výstupy prvního plného sčítače jsou 0 jako součet a 1 jako carry. Dále jsou přiváděny do vstupu druhého plného sčítače. Další dva vstupy jsou 1 a 1. Výstupy druhého plného sčítače jsou 1 jako součet a 1 jako carry. Výsledek součtu je tedy 1100.

Nyní je třeba poznamenat, že místo poloviční sčítačky na nejméně významné pozici číslic lze použít celou sčítačku s provedeným vstupem přenosu 0.

BCD zmije

Termín BCD ve sčítači BCD znamená Binary Coded Decimal. BCD je speciální typ binárního kódování, kde každá číslice má určitý počet bitů pro reprezentaci. Hodnota BCD prvních 10 desetinných hodnot je uvedena v tabulce.

Desetinná číslice BCD  
00000
10001
20010
30011
40100
50101
60110
70111
81000
91001
PŘIDATEL BCD

Sčítač BCD má dva vstupy, které se pohybují od 0 do 9. Výstup se pohybuje od 0 do 18, a pokud se vezme v úvahu předchozí přenos, bude dosah až 19.

Tabulka pro BCD sčítač je uvedena níže.

desetinná nebo bcd sčítačka
Tabulka pravdivosti BCD sčítače

Z výše uvedené tabulky můžeme pozorovat, že od 1 do 9 jsou binární a BCD stejné. Od 10 do 19 desetinných čísel se liší binární i kódy.

Schéma zapojení sčítače BCD je uvedeno níže.

  • Ve výše uvedeném diagramu je čtyřbitový binární sčítač, který má vstup jako přidaný a rozšířený. Má také vstup carry.
  • Binární sčítač poskytuje výstup sčítání a výstup carry.
  • Nyní pomocí obvodu a přenosu je obvod dále navržen tak, aby zjistil konečné přenášení.
  • Výstup je dále přiváděn do 4bitového sčítače.
  • Nyní je obvod navržen tak, aby vytvořil 1st a 4th bit přidaného čísla jako 0 a také 2nd a 3rd trochu udělat stejně jako Carry. Když je carry 1, obvod je navržen tak, že přidaný bude 0110. 6 se přidá s augendem, aby se získal BCD.

Příklad BCD

0110 + 0101 = 1011

Nyní je to neplatné jako BCD. Číslo je větší než 9. K výsledku tedy musíme přidat 6.

Konečný výsledek bude = 1011 + 0110 =

1011 + 0110 = 10001

Konečná odpověď tedy bude 10001

Vědět o subtraktorech! Klikněte zde!

VHDL implementace Half Adder a Full Adder

MODELOVÁNÍ ÚDAJŮ O POLOPOČTU BINÁRNÍCH ADDERŮ

knihovna IEEE;

použít IEEE.std_logic_1164.all;

entita half_adder_dataflow je

    Port (a: v STD_LOGIC;

           b: v STD_LOGIC;

           s: out STD_LOGIC;

           c: out STD_LOGIC);

konec half_adder_dataflow;

architektura Behavioral of half_adder_dataflow je

začít

s <= a XOR b;             

c <= a AND b;            

konec behaviorální;

POLOMINÁRNÍ BINÁRNÍ ADDER BEHAVIORAL MODELOVÁNÍ:

entita SUDIPTA_ROY_HALFADD je

    Port (A: v STD_LOGIC;

           B: v STD_LOGIC;

           C: out STD_LOGIC;

           S: out STD_LOGIC;

           Z: out STD_LOGIC);

konec SUDIPTA_ROY_HALFADD;

behaviorální architektura SUDIPTA_ROY_HALFADD je

začít

proces (A, B)

začít

if (A = '0' a B = '0') pak

S <= '0';

C <= '0';

elsif (A = '0' a B = '1')

S <= '1';

C <= '0';

elsif (A = '1' a B = '0')

S <= '0';

C <= '1';

jiný

S <= '1';

C <= '1';

konec, pokud;

konečný proces;

konec behaviorální;

MODELOVÁNÍ ÚPLNÝCH ADDERŮ

knihovna IEEE;

použijte IEEE.STD_LOGIC_1164.ALL;

entita SUDIPTA_ROY_FULLADD je

    Port (A: v STD_LOGIC;

           B: v STD_LOGIC;

           Cin: v STD_LOGIC;

           S: out STD_LOGIC;

           Car: out STD_LOGIC);

konec SUDIPTA_ROY_FULLADD;

architektura Datový tok SUDIPTA_ROY_FULLADD je

začít

S <= (A xor B) xor Cin;

Car <= (A a B) nebo (B a Cin) nebo (Cin a A);

konec datového toku;

PLNÉ ADDEROVÉ CHOVÁNÍ CHOVÁNÍ

entita SAERI_DATT_FULLADD je

    Port (A: v STD_LOGIC;

           B: v STD_LOGIC;

           Cin: v STD_LOGIC;

           S: out STD_LOGIC;

           Car: out STD_LOGIC);

konec SAERI_DATT_FULLADD;

behaviorální architektura SAERI_DATT_FULLADD je

začít

proces (A, B, Cin)

začít

if (A = '0' a B = '0' a Cin = '0') pak

S <= '0';

Auto <= '0';

elsif (A = '0' a B = '0' a Cin = '1')

S <= '1';

Auto <= '0';

elsif (A = '0' a B = '1' a Cin = '0')

S <= '1';

Auto <= '0';

elsif (A = '0' a B = '1' a Cin = '1')

S <= '0';

Auto <= '1';

elsif (A = '1' a B = '0' a Cin = '0')

S <= '1';

Auto <= '0';

elsif (A = '1' a B = '0' a Cin = '1')

S <= '0';

Auto <= '1';

elsif (A = '1' a B = '1' a Cin = '0')

S <= '0';

Auto <= '1';

jiný

S <= '1';

Auto <= '1';

 konec, pokud;

 konečný proces;

 konec behaviorální;