Mnożenie dwóch liczb 64-bitowych przy zastosowaniu automatu synchronicznego Orkiszewski Marcin.

Slides:



Advertisements
Podobne prezentacje
mgr inż. Sylwester Laskowski
Advertisements

Sumatory + Półsumator A B S C A B S (suma) C (przeniesienie)
Mgr inż.Marcin Borkowski Podstawy Java Część II
POWIAT MYŚLENICKI Tytuł Projektu: Poprawa płynności ruchu w centrum Myślenic poprzez przebudowę skrzyżowań dróg powiatowych K 1935 i K 1967na rondo.
Język ANSI C Funkcje Wykład: Programowanie komputerów
UKŁADY ARYTMETYCZNE.
Wykonał : Marcin Sparniuk
Liczby pierwsze.
Domy Na Wodzie - metoda na wlasne M
Rejestry, liczniki i sumatory.
Metody numeryczne Wykład no 1.
 DOBRE, TAŃSZE, DOSTĘPNE.
klasa3a3b3c3d ang 3d fr.3e3f3k3m3s Zad 13,462,752,623,573,822,762,722,623,322,76 Zad 22,611,51,550,851,761,51,091,062,251,33.
Podatki i opłaty lokalne w 2010 roku
ARKUSZ KALKULACYJNY Sprawdzian umiejętności Prawidłowe odpowiedzi.
NOWE TECHNOLOGIE NA USŁUGACH EDUKACJI Publiczna Szkoła Podstawowa nr 3 w Grodkowie Zajęcia w ramach projektu NTUE.
UŁAMKI DZIESIĘTNE porównywanie, dodawanie i odejmowanie.
Informatyka Stosowana
Budowa komputera Wstęp do informatyki Wykład 15
PODSTAWY TEORII UKŁADÓW CYFROWYCH
Programowalne Układy Cyfrowe Ernest Jamro, Paweł Russek C3 p
Prezentacja poziomu rozwoju gmin, które nie korzystały z FS w 2006 roku. Eugeniusz Sobczak Politechnika Warszawska KNS i A Wykorzystanie Funduszy.
Zastosowania geodezyjne
Wykład 3 Rozkład próbkowy dla średniej z rozkładu normalnego
Wyższa Szkoła Informatyki I Zarządzania W Bielsku-białej
Klamki do drzwi Klamki okienne i inne akcesoria
Matura 2005 Wyniki Jarosław Drzeżdżon Matura 2005 V LO w Gdańsku
Elektronika cyfrowa i mikroprocesory
Ogólnopolski Konkurs Wiedzy Biblijnej Analiza wyników IV i V edycji Michał M. Stępień
Układy sekwencyjne pojęcia podstawowe.
Technika Mikroprocesorowa 1
Technika Mikroprocesorowa 1
NIE TAKA MATMA STRASZNA ;-)
IV OTWARTE MISTRZOSTWA OPOLA W PROGRAMOWANIU ZESPOŁOWYM
Microsoft Office Excel
Arkusz kalkulacyjny powtórzenie Małgorzata Medycka.
Projektowanie tabeli w arkuszu kalkulacyjnym
2010 © Uniwersytet Rzeszowski | 1 Temat: Autor: Jan Kowalski Ocena zagrożeń ludności cywilnej we współczesnych konfliktach zbrojnych.
EGZAMIN GIMNAZJALNY W SUWAŁKACH 2009 Liczba uczniów przystępująca do egzaminu gimnazjalnego w 2009r. Lp.GimnazjumLiczba uczniów 1Gimnazjum Nr 1 w Zespole.
Poznań, 16 maja Charakterystyka populacji Liczba szkół Uczniowie, którzy przystąpili do egzaminu Łącznie A1+A4+A5A6A7A8 lubuskie
1. Pomyśl sobie liczbę dwucyfrową (Na przykład: 62)
Analiza matury 2013 Opracowała Bernardeta Wójtowicz.
Roku szkolnego 2008/ , I c3,79 2. III c3,72 3. II d3,70 4. I d3,49 5. II b3,46 6. III a3,40 7. I b3,28 8. III b3,27 9. II c3, II.
  Prof.. dr hab.. Janusz A. Dobrowolski Instytut Systemów Elektronicznych, Politechnika Warszawska.
Spływ należności w Branży Elektrycznej
Wstępna analiza egzaminu gimnazjalnego.
EGZAMINU GIMNAZJALNEGO 2013
EcoCondens Kompakt BBK 7-22 E.
EcoCondens BBS 2,9-28 E.
Sugerowana cena detaliczna 83,00 zł netto Półbuty zawodowe skórzane FT bez wkładki antyprzebiciowej i podnoska minimalny zakup*cena zbytu netto.
Prezentacja Multimedialna
Adresowanie komórek w Excelu
User experience studio Użyteczna biblioteka Teraźniejszość i przyszłość informacji naukowej.
WYNIKI EGZAMINU MATURALNEGO W ZESPOLE SZKÓŁ TECHNICZNYCH
Komenda Powiatowa Policji
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Testogranie TESTOGRANIE Bogdana Berezy.
Procesor – charakterystyka elementów systemu. Parametry procesora.
Złożone układy kombinacyjne
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
WYKŁAD 3 Temat: Arytmetyka binarna 1. Arytmetyka binarna 1.1. Nadmiar
Dr hab. Renata Babińska- Górecka
Procesor, pamięć, przerwania, WE/WY, …
Podstawy Techniki Cyfrowej
Współrzędnościowe maszyny pomiarowe
Elementy geometryczne i relacje
Strategia pomiaru.
LO ŁobżenicaWojewództwoPowiat pilski 2011r.75,81%75,29%65,1% 2012r.92,98%80,19%72,26% 2013r.89,29%80,49%74,37% 2014r.76,47%69,89%63,58% ZDAWALNOŚĆ.
Sumator i półsumator.
Technika Mikroprocesorowa 1
Zapis prezentacji:

Mnożenie dwóch liczb 64-bitowych przy zastosowaniu automatu synchronicznego Orkiszewski Marcin

Założenia projektowe: Wykorzystanie automatu synchronicznego Wpisywanie danych w postaci liczb 16-bitowych Przechowywanie danych w wewnętrznych rejestrach układu

Algorytm mnożenia: A B C D * v x y z Az Bz Cz Dz Ay By Cy Dy Ax Bx Cx Dx + Av Bv Cv Dv …

Opis algorytmu: A ∙ B = (a1 ∙ 248 + a2 ∙ 232 + a3 ∙ 216 + a4) ∙ (b1 ∙ 248 + b2 ∙ 232 + b3 ∙ 216 + b4)

Opis algorytmu: Akumulator[31..0] = a4 ∙ b4, Akumulator[48..16] = a3 ∙ b4 + Akumulator[31..16], Akumulator[49..16] = a4 ∙ b3 + Akumulator[48..16], Akumulator[64..32] = a3 ∙ b3 + Akumulator[49..32], Akumulator[65..32] = a2 ∙ b4 + Akumulator[64..32], Akumulator[66..32] = a4 ∙ b2 + Akumulator[65..32], Akumulator[80..48] = a1 ∙ b4 + Akumulator[65..48], Akumulator[81..48] = a4 ∙ b1 + Akumulator[80..48], Akumulator[82..48] = a2 ∙ b3 + Akumulator[81..48], Akumulator[83..48] = a3 ∙ b2 + Akumulator[82..48], Akumulator[96..64] = a1 ∙ b3 + Akumulator[83..64], Akumulator[97..64] = a3 ∙ b1 + Akumulator[96..64], Akumulator[98..64] = a2 ∙ b2 + Akumulator[97..64], Akumulator[112..80] = a1 ∙ b2 + Akumulator[98..80], Akumulator[113..80] = a2 ∙ b1 + Akumulator[112..80], Akumulator[127..96] = a1 ∙ b1 + Akumulator[113..80].

Opis algorytmu: Wykonywanie operacji na podzielonych danych umożliwia sekwencyjną realizację algorytmu. Akumulacja danych w jednym rejestrze zmniejsza liczbę potrzebnych zasobów (wymagana odpowiednia kolejność dodawań). Zastosowanie mniejszych układów mnożących i sumujących. Możliwość wykonywania kilku operacji w jednym takcie zegara. Możliwość wykonywania operacji już podczas wpisywania danych.

Realizacja:

Realizacja: Wersja 1: wykonywanie jednego mnożenia i sumowania w jednym stanie automatu automat 19-to stanowy (4 stany przeznaczone na wpis danych) 8 rejestrów 16-to bitowych 1 rejestr 128-to bitowy mnożenia i dodawania wykonywane asynchronicznie

Symulacja: FFFFFFFFFFFFFFFF ∙ FFFFFFFFFFFFFFFF = FFFFFFFFFFFFFFFE0000000000000001

Realizacja: Działa !! Wyniki kompilacji (dla układu Cyclone II): 36,28 MHz 2559 LE's uuuu…..

Realizacja: Wersja 2: jak poprzednio mnożenia i dodawania wykonywane synchronicznie (16 multiplikatorów) 89.53 MHz 1292 LE's lepiej….

Realizacja: Wersja 3: obliczenia wykonywane w zależności od stanu następnego (next_state) 130,89 MHz 1288 LE's szybciej…

Realizacja: Wersja 4: automat jako multiplekser 1 multiplikator, 1 sumator! 155,62 MHz 427 LE's !!

Symulacja: Błędne wpisywanie danych (?)

Realizacja: Opóźnienia wynikają ze zbyt długiego czasu wpisywania danych tSU Wersja 5 : rejestr przed multiplekserem wejściowym Wersja 6: dane wpisywane poprzez rejestr przesuwający (co 16 bitów)

Realizacja: LE’s CLK (MHz) tSU (ns) 425 165,02 4,551 431 167,14 4,771 Rejestr przesuwający BALANCED 425 165,02 4,551 Rejestr przesuwający AREA 431 167,14 4,771 Demultiplekser za rejestrem wejściowym 446 165,73 4,728 Demultiplekser przed rejestrem wejściowym 427 155,62 4,983

Inna realizacja: automat 5 stanowy (4 stany wpis danych, 1 stan obliczeń) układ mnożący 128 bitów x 128 bitów 260 MHz 828 LE's

Podsumowanie: LE’s CLK (MHz) Wersja 1 2559 36,28 Wersja 2 1292 89.53 1288 130,89 Wersja 4 427 155,62 Wersja 5 446 165,73 Wersja 6 BALANCED 425 165,02 Wersja 6 AREA 431 167,14 Mnożenie 128 x128 828 260