Operace ALU. INP 2008 FIT VUT v Brně

Podobné dokumenty
Sčítačky Válcový posouvač. Demonstrační cvičení 6

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

1 z :27

Architektura počítačů Logické obvody

Aritmetické operace a obvody pro jejich realizaci

Pohled do nitra mikroprocesoru Josef Horálek

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

Architektura počítačů Logické obvody

Y36SAP 2007 Y36SAP-4. Logické obvody kombinační a sekvenční používané v číslicovém počítači Sčítačka, půlsčítačka, registr, čítač

KOMBINAČNÍ LOGICKÉ OBVODY

Struktura a architektura počítačů (BI-SAP) 4

Násobení. MI-AAK(Aritmetika a kódy)

Způsoby realizace této funkce:

Sekvenční logické obvody

Struktura a architektura počítačů (BI-SAP) 6


SEKVENČNÍ LOGICKÉ OBVODY

Příklady popisu základních obvodů ve VHDL

BI-JPO (Jednotky počítače) Cvičení

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Princip funkce počítače

VY_32_INOVACE_CTE_2.MA_19_Registry posuvné a kruhové. Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl

Struktura a architektura počítačů (BI-SAP) 10

MODERNIZACE VÝUKY PŘEDMĚTU ELEKTRICKÁ MĚŘENÍ

Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru

B. Sčítání,odčítání adoplňkovýkód

Úvod do informačních technologií

Úvod do informačních technologií

Registry a čítače část 2

5. Sekvenční logické obvody

Úloha 9. Stavové automaty: grafická a textová forma stavového diagramu, příklad: detektory posloupností bitů.

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Algebra blokových schémat Osnova kurzu

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Strojový kód. Instrukce počítače

Profilová část maturitní zkoušky 2014/2015

3. Sekvenční logické obvody

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09

LOGICKÉ SYSTÉMY PRO ŘÍZENÍ

2.7 Binární sčítačka Úkol měření:

Profilová část maturitní zkoušky 2015/2016

Témata profilové maturitní zkoušky z předmětu Souborná zkouška z odborných elektrotechnických předmětů (elektronická zařízení, elektronika)

Principy počítačů I - Procesory

Typy a použití klopných obvodů

Zvyšování kvality výuky technických oborů

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051

Dělení. INP 2008 FIT VUT v Brně

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení

PARALELNÍ PROCESY A PROGRAMOVÁNÍ

Y36SAP Y36SAP-2. Logické obvody kombinační Formy popisu Příklad návrhu Sčítačka Kubátová Y36SAP-Logické obvody 1.

Hardware - komponenty počítačů Von Neumannova koncepce počítače. Von Neumannova koncepce počítače

SČÍTAČKA, LOGICKÉ OBVODY ÚVOD TEORIE

Osnova přednášky. Univerzita Jana Evangelisty Purkyně Základy automatizace Vlastnosti regulátorů

Řetězené zpracování. INP 2008 FIT VUT v Brně

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Číslicové obvody základní pojmy

Čísla, reprezentace, zjednodušené výpočty

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

Procesor z pohledu programátora

Úvod do architektur personálních počítačů

E. Pohyblivářádováčárka

Architektura počítače

Datové struktury 2: Rozptylovací tabulky

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Architektury počítačů a procesorů

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Jak do počítače. aneb. Co je vlastně uvnitř

SPARTAN - 3 Xilinx FPGA Device

Reprezentace dat. INP 2008 FIT VUT v Brně

Architektura počítačů

Procesor. Procesor FPU ALU. Řadič mikrokód

Mikrokontroléry. Doplňující text pro POS K. D. 2001

VzorTest-1. Prohlídka náhledu

LOGICKÉ OBVODY

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

PROGRAMOVATELNÉ LOGICKÉ OBVODY

OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ

BDIO - Digitální obvody

ASYNCHRONNÍ ČÍTAČE Použité zdroje:

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení. N Měřicí a řídicí technika 2012/2013. Logické proměnné

LOGICKÉ OBVODY X36LOB

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Struktura a architektura počítačů (BI-SAP) 5

Aritmetika s velkými čísly na čipové kartě

Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP

Logické funkce a obvody, zobrazení výstupů

Profilová část maturitní zkoušky 2015/2016

Pohled do nitra mikroprocesoru

Y36SAP - aritmetika. Osnova

Inovace a zkvalitnění výuky směřující k rozvoji odborných kompetencí žáků středních škol CZ.1.07/1.5.00/

PROTOKOL O LABORATORNÍM CVIČENÍ - AUTOMATIZACE

Struktura a architektura počítačů (BI-SAP) 7

Program "Světla" pro mikropočítač PMI-80

Násobičky, Boothovo překódování. Demonstrační cvičení 7

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Struktura a architektura počítačů (BI-SAP) 3

Obsah DÍL 1. Předmluva 11

Projekt realizovaný na SPŠ Nové Město nad Metují. s finanční podporou v Operačním programu Vzdělávání pro konkurenceschopnost Královéhradeckého kraje

Transkript:

Operace ALU INP 2008 FIT VUT v Brně 1

Princip ALU (FX) Požadavky: Logické operace Sčítání (v doplňkovém kódu) Posuvy/rotace Násobení ělení B A not AN OR XOR + Y 1) Implementace logických operací je zřejmá 3) Budeme se zabývat implementací posuvů a rotací řadič cin 2) Budeme se zabývat implementací sčítání 2

Poloviční sčítačka A B HA S Cout S: A C: A 0 1 0 0 1 0 B 0 1 B 3

Úplná sčítačka A B CI S Cout 0 0 0 0 0 A 0 0 1 1 0 0 1 0 1 0 B 0 1 1 0 1 CI 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 S FA Cout Cout: A 0 0 1 0 0 1 1 1 B S: A 0 1 0 1 1 0 1 0 B CI CI 4

Sériová sčítačka n-1 n bitů 0 A i B i C i Σ S i n-1 0 C i+1 paměť přenosu Jde o jednobitovou sčítačku použitou pro sériové sčítání dvou n- bitových čísel, připravených ve vstupních registrech Na výstupu S i se postupně objevují bity součtu počínaje nejnižším bitem 0, a výstup přenosu C i+1 se zachycuje na dobu jednoho taktu (T c ) v klopném obvodu (Carry Save) (Předpokládáme, že jde o synchronní sčítačku s taktem T c ) 5

Paralelní sčítačka s postupným přenosem B n-1 A n-1 B 1 A 1 B 0 A 0 C n C n-1 C 2 C 1 C 0 Σ Σ Σ S n-1 S 1 S 0 Objeví-li se u první sčítačky výstup přenosu za dobu 2, kde je přenosové zpoždění jednoho logického členu, na výstupu druhé sčítačky je to již 4, atd Výstup přenosu se u poslední sčítačky objeví za dobu 2n Pro prakticky používané šířky sčítaček 32 a 64 bitů je tato doba nepřijatelně dlouhá Je proto snaha navrhovat sčítačky s rychlým přenosem (např CLA - Carry Look - Ahead) 6

Rozšířená sčítačka Ci Ai Bi Si Pi Gi Ci+1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 0 1 1 0 0 0 1 1 0 0 1 1 1 0 0 1 0 0 0 1 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 1 0 1 1 P i - propagate carry (prostup původní hodnoty Ci na výstup Ci+1) G i - generate carry (vznik přenosu bez ohledu na hodnotu Ci) Si = Ai Bi Ci (zpoždění: 2 ) Pi = Ai Bi ( ) Gi = AiBi ( ) Ci+1 = PiCi + Gi (3 ) Ai Bi Rozšířená sčítačka: Ci+1 Si Ci Gi Pi 7

A3 4b sčítačka s CLA zpoždění 4 B3 A2 B2 A1 B1 A0 B0 4 S3 3 3 3 3 C3 C2 C1 S2 G3 P3 4 G2 P2 GP (zde již nevyužito) GG=CO (3 ) Obecně pro N-bitovou CLA: S1 4 4b CLA G1 P1 S0 2 G0 P0 C 0 =CI C 1 =C 0 P 0 +G 0 C 2 =C 1 P 1 +G 1 =C 0 P 0 P 1 +G 0 P 1 +G 1 C 3 =C 2 P 2 +G 2 =C 0 P 0 P 1 P 2 +G 0 P 1 P 2 +G 1 P 2 +G 2 C 4 =C 3 P 3 +G 3 =C 0 P 0 P 1 P 2 P 3 +G 0 P 1 P 2 P 3 +G 1 P 2 P 3 +G 2 P 3 +G 3 GP C 0 =CI C i =C 0 P i-1 +G i-1 GG=CO pro 1<i N, kde G N-1 =CO CI C0 8

Logický obvod CLA C 0 P 0 G 0 C 0 P 0 P 1 G 0 P 1 G 1 C 0 P 0 P 1 P 2 G 0 P 1 P 2 & 1 & & 1 & & 1 C 1 (2, 4 vstupy) C 2 (2, 8 vstupů) C 3 (2, 13 vstupů) C 0 P 0 P 1 P 2 P 3 G 0 P 1 P 2 P 3 G 1 P 2 P 3 G 2 P 3 G 3 & & & 1 & C 4 (2, 19 vstupů) G 1 P 2 & G 2 Pěkná úloha určit obecný matematický výraz pro složitost tedy pro počet vstupů u jednotlivých funkcí C i a celkové složitosti obvodu CLA 9

N-bitová sčítačka s CLA konst zpoždění 4 Cesty pro šíření postupného přenosu jsou zrušeny a na vstupy přenosu všech sčítaček se přivádějí příslušné výstupy generátoru přenosu Funkce Pi, Gi se tvoří se zpožděním, v čase 3 jsou k dispozici všechny rychlé přenosy, a součet je tedy vytvořen v čase 4 Popsané uspořádání sčítačky je nejrychlejší možné řešení Složitost (plocha) dvoustupňového generátoru přenosu však roste pro rostoucí šířku sčítačky s druhou mocninou šířky Pro šířky 32 a 64 bitů je toto řešení již nepřijatelné Byla proto navržena řešení umožňující za cenu nárůstu zpoždění zmenšit potřebnou plochu na čipu: stromový generátor přenosu výběr přenosu přeskakování přenosu (nebudeme probírat) atd 10

Hodnocení složitosti logických obvodů Jde o nalezení optimálního řešení k zadanému poměru cena výkonnost Cena popíše se součtem počtu vstupů všech použitých logických členů (Přepočet na počet členů v ekvivalentním obvodu, složeném pouze z 2-vstupovýchčlenů není správný) Výkonnost popíše se hodnotou nejdelšího přenosového zpoždění daného obvodu Tato kritéria vedou v tomto případě k rozhodnutí, jaký typ obvodů pro urychlení přenosu se použije 11

16b sčítačka se stromovým generátorem přenosů (použit 4b CLA) A15 B15 A14 B14 A13 B13 A12 B12 A11 B11 A10 B10 A9 B9 A8 B8 A7 B7 A6 B6 A5 B5 A4 B4 A3 B3 A2 B2 A1 B1 A0 B0 S15 S14 S13 S12 S11 S10 S9 S8 S7 S6 S5 S4 S3 S2 S1 S0 C15 C14 C13 C12 C11 C10 C9 C8 C7 C6 C5 C4 C3 C2 C1 C0 P15 G15 P13 G13 P11 G11 P9 G9 P7 G7 P5 G5 P3 G3 P1 G1 P14 G14 P12 G12 P10 G10 P8 G8 P6 G6 P4 G4 P2 G2 P0 G0 CLAU CLAU CLAU CLAU GP3 GG3 GC3 GP2 GG2 GC2 GP1 GG1 GC1 GP0 GG0 GC0 GP (nevyužito) GG=CO CLAU CI Přenosové zpoždění sčítačky se stromovým generátorem přenosu vede na logaritmickou složitost 12

Osmibitová sčítačka s výběrem přenosu C 8 1 C 8 0 C 8 1 & C 4 a b a b 7 7 4 4 Σ a b a b 7 7 4 4 Σ MX s s s s 7 6 5 4 0 1 C 4 a b a b a b a b 3 3 2 2 1 1 0 0 C 0 Σ s s s s 3 2 1 0 Je rozdělena na dvě 4-bitové sčítačky Horní sčítačka je zdvojená, přičemž jedna má vstup přenosu 0, a druhá 1 Obě připraví výsledek, a 4- vstupový multiplexor pak vybere jednu z nich podle hodnoty přenosu C4 Obvodovéřešení se tedy prodražilo o více než 50% Pro větší šířky sčítaček se postupuje obdobně; každý blok je zdvojen a je přidán výběrový multiplexor Výstupní přenosy z obou bloků se logicky sčítají, ale přenos z bloku se vstupem C4 = 1 (dolní sčítačka) je ještě hradlován výběrovým signálem C4 13

Operační rychlost a plocha různých typů sčítaček šířky n Typ čas plocha Postupný přenos O(n) O(n) 2 stupňový CLA 4 O(n 2 ) Stromový CLA k-nární O(log k n) O(n log k n) Přeskakování přenosu O(sqrt n) O(n) Výběr přenosu O(sqrt n) O(n) kde k je počet dílčích přenosů, které se skládají v jednom uzlu stromu 14

Řetězení aritmetických obvodů (1) Optimalizace počtu stupňů struktury pipeline Kombinační obvod R Zpoždění: P R Kombinační obvod se rozřeže na k stupňů, mezi jednotlivé stupně se musí vložit registry R pro mezivýsledky Zpoždění jednoho stupně bude tedy P/k Budeme se řídit součinitelem kvality Q = V/N 15

Řetězení aritmetických obvodů (2) K1 R K2 R Kk R P/k R P/k R P/k R Zpoždění v jedné sekci je P/k + R = T = 1/f, kde f je frekvence přivádění operandů na vstup pipeline Nová cena: původní cena operačních obvodů (C) + kcena registru (L), tedy N = C + kl, po dosazení do výrazu pro kvalitu systému dostaneme Q = V/N = 1/(P/k + R)(kL + C) = 1/(PL + PC/k + klr + RC) Nalezneme extrém tohoto výrazu, který nastává pro hodnotu k k opt = PC/LR Této přesné hodnoty v praxi nemůžeme většinou dosáhnout, protože každý aritmetický obvod má jistou strukturu, která určuje, ve kterých místech lze řezy provést Hodnota je tedy orientační, která nám říká, zda se máme ještě snažit o zvyšování počtu stupňů, nebo naopak počet stupňů snižovat Q kopt k 16

Řetězená sčítačka s postupným přenosem B n-1 A n-1 B 2 A 2 B 1 A 1 B 0 A 0 C 0 T Σ T Σ C 1 S 0 T T Σ C 3 Σ S 2 C 2 S 1 C n S n-1 17

Řetězená sčítačka s postupným přenosem - komentář Jednobitové sčítačky se postupně zařazují do samostatných stupňů a struktura se standardním způsobem doplní vloženými registr z paměťových členů typu, které umožňují taktovat synchronně sčítací strukturu pomocí hodinového signálu Složitost, tedy cena je daná počtem registrů n x n tj 2 x n x n klopných obvodů typu, tedy 2n 2 rychlost, tedy výkonnostní parametr je n Pozn Např addovy sčítačky umožňují redukovat počet paměťových prvků 18

alší operace ALU posuvy a rotace a) 16 16 ALU 16 SH-ROT 16 řízení operací 0-15 Blok posuvů a rotací je umístěn buď za výstupem ALU, nebo paralelně k bloku ALU Řídicí vstupy: směr posuvu, jeho typ (logický nebo aritmetický), a počet bitů, o které se posouvá U každého operačního bloku se musí pamatovat na operaci identity Implementace: válcový posouvač (Barrel Shifter) pomocí multiplexorů, ne posuvný registr!! b) 16 16 ALU řízení operací SH-ROT 0-15 L/R 16 19

a0 a1 0 1 2 3 x y 0 1 2 3 x y mpx mpx b0 b1 4b válcový posouvač pro rotace vpravo (zpoždění 2 ) a2 0 1 2 3 x y mpx b2 b 3 b 2 b 1 b 0 a 3 a 2 a 1 a 0 0 bit a 0 a 3 a 2 a 1 1 bit a3 2 0 1 2 3 x y mpx b3 a 1 a 0 a 3 a 2 2 bit a 2 a 1 a 0 a 3 3 bit 20

21 Možnosti realizace 16b válcového posouvače - 16 x 16-vstupový multiplexor drahé řešení, zpoždění 2-2-vst multiplexory (2,2,2,2) levnější (64 x 2-MUX), zpoždění 8 0 1 2 3 4 8 15 15 0 4 3 1 7 0, 8 0, 4 0, 2 0, 1 2 2 2 2 Τ = 8 2-MUX

Optimalizace válcového posouvače Při optimalizaci vnitřní struktury válcového posouvače se kromě základních kritérií, což je cena (počet logických členů příp počet vstupů logických členů) a přenosové zpoždění, používá pro každou technologii ještě povolené vstupní a výstupní větvení, příp ještě další kritéria Může se pak dospět ke struktuře, která používá v jednotlivých stupních muptiplexory s rozdílným počtem vstupů Je vhodné pak popisovat struktury symbolicky Jednostupňové uspořádání s 16-vstupovými multiplexory se zapíše (16), čtyřstupňové uspořádání se 2-vstupovými multiplexory jako (2,2,2,2), se 4-vstupovými MPX (4,4), smíšená struktura např (2,4,2) atd Přenosové zpoždění válcového posouvače se strukturou (2,2,2,2) je 8 jednotkových zpoždění Poznámka: Logická struktura multiplexoru je dvoustupňová, s přenosovým zpožděním 2 22