Synteza logiczna w projektowaniu

Podobne dokumenty
System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

Specyfika projektowania Mariusz Rawski

Układy kombinacyjne 1

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Arytmetyka binarna - wykład 6

Układy logiczne układy cyfrowe

Układy logiczne układy cyfrowe

Technika Cyfrowa 1 wykład 1: kody. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

Funkcja Boolowska a kombinacyjny blok funkcjonalny

Techniki multimedialne

Kombinacyjne bloki funkcjonalne

Układ cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

Rekonfigurowalne systemy scalone

Układy kombinacyjne. cz.2

Elektronika (konspekt)

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Układy Logiczne i Cyfrowe

Podstawy techniki cyfrowej zima 2015 Rafał Walkowiak

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

Blok funkcjonalny to specjalizowany układ cyfrowy przystosowany do wykonania jednej lub kilku okrelonych operacji przetwarzania sygnałów binarnych.

Wielkość analogowa w danym przedziale swojej zmienności przyjmuje nieskończoną liczbę wartości.

Współczesne techniki informacyjne

Naturalny kod binarny (NKB)

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Podstawy techniki cyfrowej zima 2017 Rafał Walkowiak Synteza strukturalna wyższego poziomu

Architektura komputerów

Synteza strukturalna

Cyfrowy zapis informacji. 5 grudnia 2013 Wojciech Kucewicz 2

Kodowanie liczb całkowitych w systemach komputerowych

Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS

Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS

Architektura systemów komputerowych Laboratorium 5 Kodowanie liczb i tekstów

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

IZ1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki niestacjonarne

Teoretyczne Podstawy Informatyki

Bloki funkcjonalne. stanowią wyposażenie bibliotek komputerowych systemów projektowania. Każdy układ cyfrowy składamy z bloków funkcjonalnych ZPT

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Architektura systemów komputerowych

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

L6.1 Systemy liczenia stosowane w informatyce

Informatyka kodowanie liczb. dr hab. inż. Mikołaj Morzy

A B. 12. Uprość funkcję F(abc) = (a + a'b + c + c')a

Technika cyfrowa Układy arytmetyczne

Kodowanie informacji. Kody liczbowe

Struktura i działanie jednostki centralnej

Ćwiczenie 27 Temat: Układy komparatorów oraz układy sumujące i odejmujące i układy sumatorów połówkowych i pełnych. Cel ćwiczenia

Kombinacyjne bloki funkcjonalne - wykład 3

AHDL - Język opisu projektu. Podstawowe struktury języka. Komentarz rozpoczyna znak i kończy znak %. SUBDESIGN

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Logiczny model komputera i działanie procesora. Część 1.

Język opisu sprzętu VHDL

Systemy zapisu liczb.

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder

UKŁADY MIKROPROGRAMOWALNE

Technika Cyfrowa i Mikroprocesorowa

WSTĘP DO ELEKTRONIKI

Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008

T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002.

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Technologie Informacyjne Wykład 3

Mikrokontrolery w mechatronice. Wstępne uwagi

Temat 7. Dekodery, enkodery

PODSTAWY INFORMATYKI. Informatyka? - definicja

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Cyfrowy zapis informacji

Przykładowe pytania DSP 1

Systemy liczenia. 333= 3*100+3*10+3*1

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Politechnika Wrocławska, Wydział PPT Laboratorium z Elektroniki i Elektrotechniki

Architektura komputerów

Ćw. 1: Systemy zapisu liczb, minimalizacja funkcji logicznych, konwertery kodów, wyświetlacze.

Układy sekwencyjne. Wstęp doinformatyki. Zegary. Układy sekwencyjne. Automaty sekwencyjne. Element pamięciowy. Układy logiczne komputerów

Procesory. Schemat budowy procesora

Układy mikroprogramowane

1.1. Pozycyjne systemy liczbowe

Pracownia Komputerowa wykład IV

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski

Tranzystor JFET i MOSFET zas. działania

CPU ROM, RAM. Rejestry procesora. We/Wy. Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki

UKŁADY MIKROPROGRAMOWANE

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Arytmetyka stałopozycyjna

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

1259 (10) = 1 * * * * 100 = 1 * * * *1

Projektowanie. Projektowanie mikroprocesorów

Adam Korzeniewski p Katedra Systemów Multimedialnych

Elementy struktur cyfrowych. Magistrale, układy iterowane w przestrzeni i w czasie, wprowadzanie i wyprowadzanie danych.

Pracownia Komputerowa wyk ad IV

Adam Korzeniewski p Katedra Systemów Multimedialnych

Instrukcje sekwencyjne

Programowanie Układów Logicznych kod kursu: ETD6203 W dr inż. Daniel Kopiec. Pamięć w układach programowalnych

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

Architektura komputerów Reprezentacja liczb. Kodowanie rozkazów.

Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5.

KURS Hexcalcul (2) Implementacja kalkulatora kodu BCD na Hex w układzie programowalnym

Transkrypt:

Synteza logiczna w projektowaniu układów cyfrowych (pływ syntezy logicznej na jakość realizacji układów cyfrowych) X Z System cyfrowy D Z U z bloków funkcjonalnych Z Y US X U F US automat lub układ mikroprogramowany Z

rzykład syntezy strukturalnej Konwerter kodu binarnego na kod BCD: kodzie BCD (Binary Coded Decimal) każda cyfra liczby zapisanej w kodzie dziesiętnym jest przedstawiana czterobitową liczbą binarną Np. liczba 489 zostanie zapisana jako wektor binarny z wykorzystaniem 2 bitów (3 4 bity) 4 8 9 BCD Z 2

Konwerter Bin2BCD 27 BN 27 BCD BN/BCD liczby 99 Celem jest pokazanie różnych metod projektowania i wykazanie, że najlepszą realizację uzyskamy stosując zaawansowane procedury syntezy logicznej Z 3

Metoda +3 27= LDA LDB LB NE LDB := LDB LDB 5 AK LDB := LDB+3 8 Z 4

Z LDB < 5 LDB < 5 LDB < 5 LDB < 5 LDB < 5 LDB < 5 LDB 5 LDA LDB LB 2 3 4 5 6 + LDB < 5 8 LD BCD = = 27 2 7 7 5

Algorytm konwersji z kodu BN na BCD Liczba konwertowana zapisana jest w postaci binarnej SAR LOAD (LB) LDA := LDB := LK := 8 LDB 5 AK rzekształcenie polega na wykonaniu określonej liczby prostych operacji NE LDA 5 AK LDB := LDB + 3 Z ykorzystuje proste operacje na liczbach binarnych: przesunięcie w lewo, zwiększenie o 3, porównanie ze stałą. NE LDA := SHL(LDA,LDB 3 ) LDB := SHL(LDB,LB 7 ) LB := SHL(LB) LK := DEC(LK) NE LK = AK LD := LDA LDB KONEC LDA := LDA + 3 6

Algorytm konwersji SAR Rejestry LB, LDA, LDB z operacjami: zeruj wpisz, przesuń. LOAD (LB) LDA := LDB := LK := 8 LDB 5 AK Licznik LK z operacjami: ustaw, zmniejsz o. NE LDA 5 AK LDB := LDB + 3 Sumator LDA := LDA + 3 NE Komparator LDA := SHL(LDA,LDB 7 ) LDB := SHL(LDB,LB 7 ) LB := SHL(LB) LK := DEC(LK) Z NE LK = AK LD := LDA LDB KONEC 7

Opis strukturalny 4 8 8 4 4 LB R3 R2 R A S3 S2 S B LK LK = LOAD DEC MUX MUX S LB 3 4 5 LK = K 5 Σ K US U K 5 A B 4 4 Y 8 R4 Y = LD LOAD2 Z 8

Stosując rutynowe metody uzyskaną strukturę zapisujemy w języku opisu sprzętu i kompilujemy w systemie Quartus SECYFKACJA FUNKCJONALNA (HDL) SEĆ LOGCZNA SYNEZA FUNKCJONALNA OYMALZACJA LOGCZNA OS RL ODZOROANE ECHNOLOGCZNE RANSLACJE SECYFKACJ FGA 54 LEs 33 mln/sek Z 9

Konwerter Bin2BCD BN/BCD Z radycyjną metodę syntezy strukturalnej skonfrontujemy z nowoczesnymi metodami syntezy logicznej

Konwerter Bin2BCD BCD na poziomie logicznym ejścia yjścia 2 3 4 5 6 7 8 BN/BCD * * * * 97 98 99 Z

Komputerowe projektowanie SECYFKACJA FUNKCJONALNA (HDL) SEĆ LOGCZNA SYNEZA FUNKCJONALNA OYMALZACJA LOGCZNA OS RL ODZOROANE ECHNOLOGCZNE RANSLACJE SECYFKACJ FGA 24 LEs 33 mln/sek Z 2

Mając świadomość, że metody syntezy logicznej są niedoskonałe Specyfikacja HDL Synteza funkcjonalna Specjalistyczne oprogramowanie akademickie Synteza logiczna nowocześnie wykształcony inżynier Odwzorowanie technologiczne FGA Z 3

Specjalizowana procedura dekompozycji Z # Konwerter bin2bcd.type fr.i 7.o 8.p...... LE " Decomposed project: bin2bcd "; % ranslated from DEMAN format % % arsaw University of echnology % % nstitute of elecommunications % SUBDESGN A ( in_, in_2, in_3, in_4 :NU; in_5, in_6, in_7 :NU; out_, out_2, out_3, out_4 :OUU; out_5, out_6, out_7, out_8 ) VARABLE g_, g_2, g_3, g3_ g2_, g2_2 BEGN :OUU; :LCELL; :LCELL; ---- Level ---- ABLE (in_, in_2, in_3, in_4) => (g_); B"" => B""; B"" => B"";... B"" => B""; B"" => B""; END ABLE; ABLE (in_6, g_, g2_, g2_2) => (out_7); B"X" => B"";... B"" => B""; END ABLE; END;.e rocedura dekompozycji 3 komórek (!!!) 352 mln/sek 4

Realizacja programowa SAR LOAD (LB) LDA := LDB := LK := 8 AK LDB 5 LDB := LDB + 3 NE LDA 5 AK NE LDA := LDA + 3 rocesor AMD Athlon 64X2 Dual Core 42+ 2.2 GHz 9,7 mln/sek LDA := SHL(LDA,LDB 3 ) LDB := SHL(LDB,LB 7 ) LB := SHL(LB) LK := DEC(LK) Z NE LK = AK LD := LDA LDB KONEC 5

orównanie realizacji BN2BCD Liczba elementów logicznych liczba słów Synteza strukturalna 54 LEs 33 mln/sek Synteza logiczna: system komercyjny Quartus 24 LEs 33 mln/sek system specjalizowany 3 LEs 352 mln/sek rocesor AMD Athlon 64X2 Dual Core 42+ 2.2 GHz 9,7 mln/sek Z 6

ięcej na ten temat w książce: Z 7

Filtr f5 w technice DA.type fr.i Układ mnożenia.o.p 248 zastępuje się układem kombinacyjnym R lub pamięcią ROM ej e s ROM tr + R y Z.type fr.i.o.p 248.type fr.i 7.o.p 28.....type fr.i 7.o.p 28.... 8

Bez redukcji Synteza programem Vivado 25.4.2 Dla układu Virtex-7 Z 9

o redukcji Synteza programem Vivado 25.4.2 Dla układu Virtex-7 (xc7vx33tffg57-2) Z 2

Realizacje układu AR filtru f5 Bez redukcji argumentów Z redukcją argumentów System and chip LE pcs System and chip LE pcs Vivado 25.4.2 Virtex-7 (xc7vx33tffg57-2) LU6 LU5 33 86 LU4 49 LU3 34 LU2 32 MUXF7 5 MUXF8 Vivado 25.4.2 Virtex-7 (xc7vx33tffg57-2) LU6 LU5 LU4 LU2 9 Altera Quartus Stratix V (5SEE9H42) ALU7 ALU6 ALU5 ALU4 ALU3 62 294 2675 22 677 Altera Quartus Stratix V (5SEE9H42) ALU7 ALU6 ALU5 ALU4 ALU3 5 4 6 65 6 recisionrl Synthesis 25..6 LU VREX-7 (7VX33FFG57) 95 (total) recisionrl Synthesis 25..6 VREX-7 (7VX33FFG57) LU6 LU5 LU4 LU2 9 Z Nie zapominajmy o syntezie logicznej w projektowaniu układów cyfrowych 2