51
Układy cyfrowe – informacje ogólne CAD Mariusz Rawski [email protected] http://rawski.zpt.tele.pw.edu.pl/

Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

  • Upload
    lydan

  • View
    216

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Układy cyfrowe – informacje ogólne

CAD

Mariusz Rawski

[email protected]

http://rawski.zpt.tele.pw.edu.pl/

Page 2: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

. . . Rok 1847

George BOOLE „The Mathematical Analysis of Logic” …

Mariusz Rawski

… algebra sygnałów binarnych – algebra boolowska

• Algebry Boole'a są specjalnym typem struktur algebraicznych wykorzystywanych w matematyce teoretycznej, informatyce oraz elektronice cyfrowej.

• Najprostsza algebra Boole'a ma tylko dwa elementy, "0" i "1" i stanowi narzędzie matematyczne do opisu układów cyfrowych.

2

Page 3: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

. . . Rok 1958 . . .

Jack Kilby z Texas Instruments zbudował pierwszy układ scalony …

Mariusz Rawski

(1 tranzystor, 3 rezystory i 1 kondensator)

… za co otrzymał Nagrodę Nobla z fizyki w 2000.

• Pierwsze układy scalone zawierały mniej niż 20 tranzystorów. Obecnie, chociaż wielkość układu liczy się w milimetrach kwadratowych, obwód może zawierać do kilkuset milionów tranzystorów.

3

Page 4: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

. . . Obecnie

• Telefonia komórkowa

• Usługi szerokopasmowe (wideo na żądanie, wideokonferencje, szybki dostęp do Internetu, e-commers, e-banking, podpis elektroniczny, telepraca, telenauczanie)

• Kompresja obrazów

• Kompresja sygnałów audio i mowy ludzkiej

UKŁAD CYFROWY

Mariusz Rawski

ludzkiej

• Rozpoznawanie mowy

• Kryptografia

• Zastosowania militarne

• Astronautyka

4

Page 5: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Dlaczego sygnały cyfrowe

Jak odtworzyć sygnał oryginalny

• Transmitowany sygnał s(t) jest zakłócany przez szum n(t), w wyniku czego odbierany jest zniekształcony sygnał r(t)

• Szum może pochodzić z wielu źródeł• Odtworzenie sygnału cyfrowego jest łatwiejsze

Mariusz Rawski 5

Page 6: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Konwersja sygnału

• Próbkowanie – kwantowanie w czasie czyli reprezentacja sygnału ciągłego za pomocą ciągu wartości nazywanych próbkamiwartości nazywanych próbkami

• Kwantyzacja – przypisanie wartości analogowych do najbliższych poziomów reprezentacji, co wiąże się z nieuniknioną i nieodwracalną utratą informacji

• Kodowanie – przypisanie wartości binarnych wartościom skwantowanych próbek

Mariusz Rawski 6

Page 7: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Tranzystor

VS

VGS VD

S

Rosnące VGS

Mariusz Rawski

Wzmacniacz – technologia analogowa

7

Page 8: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Tranzystor jako przełącznik

VBRAMKI = 0 V Prąd nie płynie

VBRAMKI > VPROGOWE

Prąd płynie

Mariusz Rawski

Przełącznik– technologia cyfrowa

8

Page 9: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Realizacja w technologii CMOS

• Widok w edytorze topografii

• Maski produkcyjne

Mariusz Rawski

• Maski produkcyjne

• Przekrój

Źródło: PODSTAWY MIKROELEKTRONIKIhttp://vlsi.imio.pw.edu.pl/pmk/

9

Page 10: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Bramki logiczne

• Bramki logiczne budowane są z tranzystorów

Schemat Topografia

Inwerter

Mariusz Rawski

Jaką funkcję realizuje ta bramka

4 wejściowa bramka NAND

10

Page 11: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Struktury scalone

• Układ scalony IC (integrated circuit ) zbudowany jest z warstw domieszkowanego krzemu, metalu, dwutlenku krzemu naniesionych jedna na drugą. Niektóre warstwy tworzą tranzystory inne połączenia.

• Wskaźnikiem technicznego zaawansowania procesu wytwarzania układów scalonych jest minimalna długość kanału tranzystora wyrażona w mikrometrach lub nanometrach – długość kanału jest nazywana rozmiarem charakterystycznym (lub technologicznym)

Mariusz Rawski

technologicznym)• W zależności od stopnia rozbudowania, układy scalone

dzieli się na:– SSI (small scale integration) - zawierający do 10 bramek

przeliczeniowych – MSI (medium scale integration) - układ zawiera do 100

bramek przeliczeniowych (wymiary się nie zmieniają),– LSI (large scale integration) od 100 do 1000 bramek

przeliczeniowych w jednej strukturze,– VLSI (very large scale integration) ponad 10 000 do 1 mln

bramek przeliczeniowych

11

Page 12: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Proces produkcyjny

– wytworzenie podłoża – plastra monokrystalicznego półprzewodnika.

– proces epitaksji – wytwarzanie cienkiej warstwy półprzewodnika o przeciwnym typie przewodnictwa

– maskowanie – wytworzenie maski, która umożliwi selektywne domieszkowanie (wykorzystuje się fotolitografię lub wycinanie wiązką elektronową)

– domieszkowanie – dyfuzja

Mariusz Rawski

– domieszkowanie – dyfuzja domieszek lub implantacja jonów

– wykonanie połączeń – warstwy przewodzące

– montaż i testowanie

[Źródło :"integrated circuit: manufacturing steps in sequence." Online Art. Encyclopædia Britannica Online. 11 Sept. 2007]

12

Page 13: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Technologie wytwarzania

• Full-custom – układy zamawiane przez użytkownika.• Semi-custom – układy projektowane przez użytkownika.

układy programowaneprzez użytkownika

(PLD)

układy projektowaneprzez użytkownika

(semi-custom)

układy zamawianeprzez użytkownika

(full-custom)

Mariusz Rawski

• Semi-custom – układy projektowane przez użytkownika.– Standars-cell – układ jest konstruowany z komórek standardowych wybieranych z

biblioteki zawierającej podstawowe bramki logiczne, multipleksery 2 na 1czy 1-bitowe pełne sumatory.

– Gate array – układ budowany jest z macierzy jednakowych komórek zwanych komórkami podstawowymi spełniającymi funkcję bramki logicznej; dopasowanie polega na zaprojektowaniu połączeń między komórkami.

• FPLD – układy programowane przez użytkownika.• Off-the-shelf – układy standardowe o ustalonej i ograniczonej funkcjonalności

13

Page 14: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Komputerowe projektowanie…

SPECYFIKACJAFUNKCJONALNA

(HDL)

SYNTEZAFUNKCJONALNA

SIEĆLOGICZNA

OPTYMALIZACJALOGICZNA

Mariusz Rawski

OPIS RTL

TRANSLACJESPECYFIKACJI

ODWZOROWANIETECHNOLOGICZNE

SYNTEZAFIZYCZNA

BIBLIOTEKAKOMÓREK

14

Page 15: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

… projektowanie jest proste

Język opisusprzętu

Synteza

Ograniczeniaprojektowe

Mariusz Rawski

Syntezaautomatyczna

Szczęśliwy inżynier

FLEX15

Page 16: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Systemy CAD

Specyfikacja HDL

Synteza funkcjonalna

Niestety tradycyjne procedury Niestety tradycyjne procedury syntezy nie są w stanie syntezy nie są w stanie sensownie przetworzyć sensownie przetworzyć

milionów bramek w milionów bramek w zamierzenia konstruktorazamierzenia konstruktora

Mariusz Rawski

Synteza logiczna

Odwzorowanie technologiczne

FPGA16

Page 17: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Systemy komercyjne i uniwersyteckie

Komercyjne systemy projektowania nie nadążają za rozwojem technologii.

Dlatego powstają uniwersyteckie systemy syntezy logicznejniewygodne do bezpośredniego projektowania, ale…

Mariusz Rawski

…generują wyniki niekiedy 10-krotnie lepsze

I to jest główną przyczyną tego, że wykład ten wbrew niektórym opiniom – ma ogromne znaczeniedla praktyki projektowania układów cyfrowych

17

Page 18: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Podział układów cyfrowych

Mariusz Rawski

Full CustomStandard CellUkłady programowalne

18

Page 19: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Układy programowalne GAL FLEX

EPLDPAL

FPGA

FPGAPLD

Mariusz Rawski

P L Drogrammable ogic evices F P G Aield rogrammable ate rrays

19

Page 20: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Jak było do niedawna?

Do niedawna użytkownik mógł wykorzystać:

• układy SSI lub MSI do implementacji względnie małego układu logicznego za pomocą wielu układów scalonych albo VLSI do implementacji bardziej złożonych systemów

Mariusz Rawski

• jedną z technologii full-custom lub semi-custom do realizacji wyspecjalizowanych układów

układy projektowaneprzez użytkownika

(semi-custom)

układy zamawiane

przez użytkownika(full-custom)

ASIC

20

Page 21: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Prosty układ jako przykład

y = x1x2x3 + x1x3 + x2x3

Mariusz Rawski

• W technologii MSI potrzeba kilku elementów scalonych np. z serii 74XXX i obwodu drukowanego

• W technologii full-custom wystarczy ogólna charakterystyka działania, dostawca zaprojektuje indywidualny ułożenie w krzemie każdego tranzystora i połączeń

• W technologii semi-custom można wcześniej „skomponować” układ z elementów bibliotecznych tworząc gotowy schemat rozmieszczenia i połączeń; dostawca wykona strukturę scaloną zgodnie ze schematem

21

Page 22: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Czy można inaczej?

MATRYCA OR(PROGRAMOWALNA)

D C B A

y = x1x2x3 + x1x3 + x2x3

x1 x2 x3

Mariusz Rawski

Q3 Q2 Q1 Q0

MATRYCA AND(PROGRAMOWALNA) y

22

Page 23: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Jak to możliwe?

Obecnie dostępna jest inna możliwości tworzenia systemów cyfrowych

UKŁADY PROGRAMOWALNE

• Układy posiadające możliwość reprogramowania i rekonfiguracji.

FPLD

Mariusz Rawski

• Osiągają pojemność pozwalającą realizować w jednym układzie systemy o złożoności setek tysięcy bramek

• „Fabryka na biurku”

FPLD

układy programowaneprzez użytkownika

(PLD)

PLD

23

Page 24: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Układy programowalne wyrównują szanse…

Mariusz Rawski 24

Page 25: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Budowa układów MAX

Frominputs

FromPIA

ExpanderProductTerms

I/O andMacrocellFeedback

I/O OUTPUT ENABLESYST EM CLOCK

PRESET

ARRAY CLOCK

CLEAR

D QP

C

TOI/O

CONTR OLBLOCK

Mariusz Rawski

ANDArray

macrocell

8

macrocell

8

macrocell

8

PLD

25

Page 26: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Budowa układów FLEX

I/O Element(IOE)

Logic Element(LE)

EmbeddedArrayBlock

Fast TrackInterconnect

IOE IOE IOE IOE IOE IOE

IOE

IOE

IOE

IOE

IOE

IOE

IOE

IOE

Mariusz Rawski

LogicArray

Logic Array Block(LAB)

EmbeddedArrayBlock

IOE IOE IOE IOE IOE IOE DATA1DATA2DATA3DATA4

Cascade In

Carry IN

PresetClearClock

Look-UpTable(LUT)

Carry Chain

CascadeChain

PR

CLR

Q

Cascade Out

LE Out

Carry Out

ProgrammableRegister

26

Page 27: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Cechy układów FPLD i ASIC

• Pojemność

Nawet ok. 1 mln bramek w jednym układzie FPLD, znacznie więcej niż SSI i MSI lecz mniej niż w układach specjalizowanych.– Mechanizmy zapewniające programowalność wprowadzają pewną nadmiarową logikę,

która nie może być wykorzystana przez użytkownika.– Jednakże duża część powierzchni krzemu nawet w układach ASIC nie może być

wykorzystana z powodu konieczności zapewnienia powierzchni połączeniowych z końcówkami układu scalonego. Wykorzystanie tej traconej powierzchni dla zaimplementowania mechanizmów programowalności może sprawić, że nadmiar ten będzie mniejszy.

Mariusz Rawski

będzie mniejszy.

• Szybkość działania

FPLD – ponad 200 MHz, znacznie więcej niż SSI i MSI lecz znacznie mniej niż w układach ASIC.– Programowalne połączenia wprowadzają dodatkową rezystancję zaś punkty

programowalne dodatkową pojemność. – Pomimo tych niedogodności szybkość układów jest wystarczająca dla większości

zastosowań. Wprowadza się ponadto specyficzne mechanizmy niwelujące te mankamenty w sytuacjach wymagających dużych szybkości

27

Page 28: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Cechy układów FPLD i ASIC c.d.

• Czas realizacji projektu

Kilka dni lub tygodni dla FPLD w porównaniu do kilku tygodni a zazwyczaj miesięcy dla układów ASIC.– Czas projektowania systemu z wykorzystaniem układów FPLD ogranicza się w zasadzie

do opracowania projektu na wysokim poziomie abstrakcji z wykorzystaniem odpowiednich systemów CAD, które to systemy dostępne są praktycznie dla każdego.

– Na czas realizacji projektu składa się więc jedynie czas potrzebny na prototypowanie i symulacje podczas, gdy inne fazy, w tym bardzo czasochłonna faza generacji testów, przygotowania maski, produkcji struktury krzemowej, pakowania i testowania są pomijane.

Mariusz Rawski

pomijane.

• Czas prototypowania i symulacji

Podczas, gdy proces wytwarzania układów ASIC trwa tygodnie a nawet miesiące od momentu ukończenia projektu do momentu dostarczenia gotowego produktu, w przypadku układów FPLD wymaga to jedynie czasu na opracowanie projektu.– W układach FPLD modyfikacje mogą być łatwo wprowadzane w trakcie procesu

projektowania znacznie skracając tzw. czas time-to-market.– Układy FPLD zapewniają niskie koszty prototypowania, zaś układy ASIC zapewniają niski

koszt masowej produkcji. To sprawia, że często proces prototypowania wykonuje się w układach FPLD zaś dla dużych serii przenosi się projekt na platformę ASIC.

28

Page 29: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Cechy układów FPLD i ASIC c.d.

• Testowanie

Wszystkie układy scalone muszą być poddane procesowi testowania, który jest inny dla każdego projektu układu scalonego.– Powtarzalność struktury FPLD sprawia, że raz opracowany test dla danego rodzaju

układu może być stosowany dla wszystkich układów danej rodziny – inaczej, niż dla układów ASIC.

– Użytkownik nie musi tworzyć testu dla każdego specyficznego projektu jak w przypadku ASIC, ponieważ testy opracowane przez producenta układów zapewniają poprawne realizację każdego projektu użytkownika. Raz zweryfikowany układ może być produkowany w dowolnej ilości jako przetestowany układ.

Mariusz Rawski

produkowany w dowolnej ilości jako przetestowany układ.

• Łatwość modyfikacji

Zamiast dopasowywać układ poprzez proces fabrykacji w przypadku układów FPLD można to zrobić poprzez elektryczne modyfikacje.– W układach FPLD funkcja układu może być zmieniana poprzez zmianę programu

konfigurującego. W przypadku układów ASIC każda zmiana wymaga przeprowadzenia na nowo całego procesu fabrykacji.

– Przeprogramowanie układu FPLD wymaga zaledwie milisekund. Czasami można to zrobić nawet bez wyjmowania układu z systemu (programowanie w systemie).

29

Page 30: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Cechy układów FPLD i ASIC c.d.

• Niskie ryzyko

Podobnie jak w przypadku układów SSI i MSI projektant ponosi małe ryzyko związane z procesem projektowania.– Ten sam układ FPLD może być wielokrotnie wykorzystywany do realizacji różnych

funkcji i być użyty w różnych projektach.– W przypadku układów ASIC funkcjonalność jest na stałe ustalona. To sprawia, że

decyzje o wielkości serii układów ASIC muszą być przemyślane już przed datą udostępnienia układów.

• Koszt

Mariusz Rawski

• Koszt

Układy FPLD najlepiej wykorzystać do celów prototypowania i małych serii zaś dla dużych serii najlepiej wykorzystać układy ASIC.– Układy FPLD oferują niższy koszt związany z tworzeniem projektu i modyfikacjami,

jednakże większa powierzchnia krzemu i mniejsza pojemność zwiększają koszty wytwarzania.

– Technologia FPLD jest opłacalne przy seriach nie większy niż kilka czy kilkanaście tysięcy układów. Dla serii większych należy wykorzystywać układy ASIC.

30

Page 31: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Układy FPLD vs. ASIC

Pojemność,Szybkość, ASIC

Full Custom

Mariusz Rawski

Szybkość,Złożoność,Koszt

Koszt projektu, Czas implementacji projektu

PLD

CPLDFPGA

ASIC

31

Page 32: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Obszary zastosowań układów FPLD

• Logika scalająca (glue logic)

Szczególnie w początkowym okresie wykorzystywane do zastępowania logiki scalającej składającej się z wielu modułów, takich jak:� dekodery,� rejestry,� automaty FSM.

Standardowymikroprocesor

Adres

Dane

Dekoderyadresu

Multipleksery

Interfejs pamięci

Interfejs wyświetlacza

Mariusz Rawski

Typowym przykładem są interfejsy dla mikroprocesorów i mikrokontrolerów umożliwiające współpracę z innymi podsystemami takimi, jak pamięci czy układy peryferyjne.

mikroprocesor

uP

Dane

Sterowanie

Multipleksery

Rejestry UART

A/D i D/Akontroler

wyświetlacza

FPLD

32

Page 33: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

• Akceleratory sprzętowe

Dla wielu zastosowań układy FPLD pozwalają na osiągnięcie wydajności znacznie przewyższającej tą oferowaną przez mikroprocesory tradycyjne lub sygnałowe. Jest to możliwe szczególnie wtedy, gdy istnieje szansa zastosowania obliczeń równoległych.

Akceleratory wykorzystuje się w przetwarzaniu:� grafiki,� dźwięku,

� sekwencji wideo. Standardowymikroprocesor

Adres

Dane

Moduł kontrolidostępu do

pamięciKoprocesor

Pemięćdanych

Mariusz Rawski

Zalety FPLD:� realizacja różnych funkcji

w tym samym sprzęcie,� łatwość modernizacji,� łatwość rozbudowy o nowe funkcje

mikroprocesor

uP

Dane

Sterowanie

pamięci obrazu

Generatoradresów

Koprocesorgraficzny

Pemięćwyników

FPLD

33

Page 34: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

• Niestandardowe systemy przetwarzania danych

Często złożone systemy i algorytmy mogą być przedstawione z wykorzystaniem koncepcji przepływu danych (dataflow) i zrealizowane jako ścieżka przetwarzania danych kontrolowana własnym układem sterującym.

Obszary zastosowań:� przetwarzanie sygnałów

cyfrowych i obrazu,� sieci neuronowe,� inne obliczeniowo

skomplikowane algorytmy.Układ sterowania

Wejścia

Mariusz Rawski

skomplikowane algorytmy.

Zalety FPLD:� opłacalne w przypadku

małych serii,� łatwość opisu w języku HDL.

Ścieżkadanych

WyjściaFPLD

34

Page 35: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

• Wirtualny sprzęt

Dzięki rekonfigurowalności zasoby sprzętowe na żądanie użytkownika mogą wykonywać różne zadania. Postrzega on wtedy zasoby jako większe niż są one w rzeczywistości.

� aplikacja główna +sprzęt rekonfigurowalny

� różne konfiguracjezasobów przechowywanew pamięci konfiguracji,

System zarz ądzaj ący

Pamięć konf iguracji

Mariusz Rawski

w pamięci konfiguracji,� ładownie konfiguracji

potrzebnej w danej chwili,

Konfiguracja 1

Konfiguracja 4

Konfiguracja 5

Konfiguracja 2

Konfiguracja 3(aktywna)

FPLD

35

Page 36: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

• Obliczenia rekonfigurowalne

Systemy realizujące jądra procesorów opracowane przez użytkownika, którychzestaw instrukcji i architektura jądra może być modyfikowana w zależności od potrzeb uruchamianego oprogramowania.

Zestaw i nstrukcji wykonyw anych zwykorzystaniemjądra proceso ra

Procesor z modułem steru j ącym

i zestawem instrukcji

podstawowych

int main (){ flat flag; prinf(); fft(flag); ...}

Mariusz Rawski

� wymagana dynamiczna rekonfigurowalność� nie konkurują z wydajnością procesorów dedykowanych, ale

udostępniają platformę z optymalnym podziałem funkcji między sprzęt i oprogramowanie

Zalety:� połączenie elastyczności oprogramowania z wydajnością sprzętu� dodatkowe moduły funkcjonalne położone blisko jądra procesora –

szybka komunikacja� kosynteza sprzętowo/programowa

FPLD

36

Page 37: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Projektowanie z wykorzystaniem FPLD

• Układy FPLD udostępniają zasoby składające się z identycznych komórek logicznych (logic cells) i mechanizmy łączenia ich ze sobą.

• Wielkość dostępnych zasobów i złożoność projektów realizowanych w układach wymagają narzędzi umożliwiających translację funkcji zadanych przez użytkownika w sieć zbudowaną z komórek logicznych i programowalnych połączeń formującą docelowy projekt.

• Oprogramowanie umożliwia automatyczną translację projekt dla różnych architektur FPLD.

Mariusz Rawski

architektur FPLD.

• Systemy projektowe integrują różne etapy projektowania w jednolite środowisko projektowe.

• Systemy umożliwiają projektowanie na wysokim poziomie abstrakcji, ale jednocześnie umożliwiają projektantowi analizowanie fizycznego rozmieszczenia projektu w układzie FPLD a nawet zmianę szczegółów projektu na najniższym bramkowym poziomie abstrakcji.

37

Page 38: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

• System projektowania umożliwia:� opis projektu,� translację opisu w celu realizacji projektu,� weryfikację projektu,� programowanie układu,� powtórne wykorzystanie projektów (reusability)

Mariusz Rawski 38

Page 39: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Etapy procesu projektowania

Mariusz Rawski 39

Page 40: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Opis projektu

Projekt układu może być podany w formie schematugraficznego lub w postaci pliku tekstowego zawierającego zapis w jednym z języków opisu sprzętu HDL. Wśród projektantów występuje spór o to, która z metod jest lepsza.

Jakie możliwości ma projektant:

Koncepcja systemucyfroweg o

Opis projektu:- schemat- opis HDL

Symulacja funkcjonalna- weryfik acja pop rawności- ewentualne os zacowanie paramertów czasowych

Symulacja czasowa- parametry czas owe po etapie rozlokaowania logiki w układzie

Weryfikacja w systemie- analiza współpracy z innymi elementami sprzetowymi I oprogramowaniem

Weryfikacja projektu

Programowanie układu

Implementacja:- transformacja opisu- synteza logiczna- partitioning/fitting- ruting- plik programujący

FLEX

Mariusz Rawski

Jakie możliwości ma projektant:– modelowanie układu zarówno na poziomie strukturalnym

(sprzętowym) jak i behawioralnym (funkcjonalnym),– megafunkcje, repliki układów cyfrowych (np. serii 74XX),– produkty wirtualne, jako uniwersalne i sparametryzowane bloki

konstrukcyjne do tworzenia złożonych systemów.

40

Page 41: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Implementacja projektu

Etap obejmuje:– translację opisu wysokopoziomowego (np. HDL) na opis

niskiego poziomu (np. równania boolowskie) – umożliwia dalsze przetwarzanie projektu przez narzędzia optymalizujące,

– syntezę logiczną – optymalizacja projektu pod względem zajętości zasobów, szybkości systemu, poboru mocy, itd.,

Koncepcja systemucyfroweg o

Opis projektu:- schemat- opis HDL

Symulacja funkcjonalna- weryfik acja pop rawności- ewentualne os zacowanie paramertów czasowych

Symulacja czasowa- parametry czas owe po etapie rozlokaowania logiki w układzie

Weryfikacja w systemie- analiza współpracy z innymi elementami sprzetowymi I oprogramowaniem

Weryfikacja projektu

Programowanie układu

Implementacja:- transformacja opisu- synteza logiczna- partitioning/fitting- ruting- plik programujący

FLEX

Mariusz Rawski

zasobów, szybkości systemu, poboru mocy, itd.,– odwzorowanie technologiczne – realizacja zoptymalizowanych

równań przy wykorzystaniu dostępnych bloków budulcowych,– partitioning – ewentualny podział projektu na części,– fitting – znalezienie najlepszego rozmieszczenia bloków budulcowych

z uwzględnieniem dostępnych zasobów,– generację pliku programującego.

41

Page 42: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Weryfikacja projektu

Weryfikacja projektu odbywa się na różnych etapach przetwarzania projektu.– symulacja funkcjonalna – zweryfikowanie poprawności logicznej

projektu, przeprowadzana przed etapem podziału (partitioning) i rozmieszczenia (fitting)

– symulacja czasowa – po etapie podziału i rozmieszczenia system

Koncepcja systemucyfroweg o

Opis projektu:- schemat- opis HDL

Symulacja funkcjonalna- weryfik acja pop rawności- ewentualne os zacowanie paramertów czasowych

Symulacja czasowa- parametry czas owe po etapie rozlokaowania logiki w układzie

Weryfikacja w systemie- analiza współpracy z innymi elementami sprzetowymi I oprogramowaniem

Weryfikacja projektu

Programowanie układu

Implementacja:- transformacja opisu- synteza logiczna- partitioning/fitting- ruting- plik programujący

FLEX

Mariusz Rawski

– symulacja czasowa – po etapie podziału i rozmieszczenia system uzupełnia informacje o projekcie o dane na temat zależności czasowych, co umożliwia dokładne przeanalizowanie projektu pod względem niepożądanych efektów związanych z opóźnieniami wprowadzanymi przez rzeczywiste struktury cyfrowe,

– weryfikacja w systemie umożliwia przetestowanie układu w warunkach w jakich będzie on rzeczywiście pracował.

42

Page 43: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Programowanie układu

– Po stworzeniu pliku programującego układ jest konfigurowany i natychmiast gotowy do pracy.

– Większość technologii programowalnych wymaga odpowiedniego urządzenia programującego.

– Układy programowane w systemie nie muszą wykorzystywać fizycznego urządzenia programującego a wymagają jedynie pewnych

Koncepcja systemucyfroweg o

Opis projektu:- schemat- opis HDL

Symulacja funkcjonalna- weryfik acja pop rawności- ewentualne os zacowanie paramertów czasowych

Symulacja czasowa- parametry czas owe po etapie rozlokaowania logiki w układzie

Weryfikacja w systemie- analiza współpracy z innymi elementami sprzetowymi I oprogramowaniem

Weryfikacja projektu

Programowanie układu

Implementacja:- transformacja opisu- synteza logiczna- partitioning/fitting- ruting- plik programujący

FLEX

Mariusz Rawski

fizycznego urządzenia programującego a wymagają jedynie pewnych inteligentnych mechanizmów umożliwiający załadowanie konfiguracji do układu bez konieczności wyjmowania go z systemu, a nawet bez konieczności wyłączania systemu.

– Tego typu konfiguracja możliwa jest przy wykorzystaniu mikroprocesora, mikrokontrolera, czy złącza JTAG.

43

Page 44: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Technika produktów wirtualnych

Układy reprogramowalne oraz języki opisu sprzętu stały się postawą koncepcji produktu wirtualnego -systemu, funkcji lub układu, który nie istnieje w rzeczywistości materialnej, ale potencjalnie może być zrealizowany w każdej chwili.

Mariusz Rawski

Rynek własności intelektualnej IP(Intellectual Property) zawartej w układach zaprojektowanych i oferowanych do sprzedaży w postaci kodów źródłowych języków HDL.

44

Page 45: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Firmy i stowarzyszenia projektujące wirtualne układy dla urządzeń reprogramowalnych

• - ALTERA MEGAFUNCTION• PARTNERS PROGRAM• - XILINX ALLIANCE CORE• - COMMON LICENSE CONSORTIUM• - IP CATALYST PROGRAM

• - TILAB• - inSILICON CORPORATION• - SIBER CORE TECHNOLOGIES• - DIGITAL COMMUNICATION • TECHNOLOGIES

Mariusz Rawski

• - IP CATALYST PROGRAM• - EXEMPLAR LOGIC-VENDOR• INCENTIVE PROGRAM (VIP)• - D & R DESIGN-REUSE.

• TECHNOLOGIES• - ARC CORES• - VIRTUAL IP GROUP INC.• - IP SEMICONDUCTORS• - ALCATEL TECHNOLOGY • LICENSING

• W Polsce: - Evatronix

45

Page 46: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Oferta IP dla potrzeb DSP

• Digital Signal Processing

– Building Blocks

– Correlators

– Demodulation

– DSP Processors

– DSP ProtoType & Development Hardware Products

– Filters

– Modulation

• Math Functions

– Accumulators

– Adders & Subtracters

– Arithmetic & Logic Unit

– Comparators

– Complementers

– Dividers & Reciprocal Functions

– Format Conversions

Mariusz Rawski

– Modulation

– Transforms

– Trig Functions

– Integrator

– Multipliers

– Square Root

46

Page 47: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Mariusz Rawski 47

Page 48: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Mariusz Rawski 48

Page 49: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Evatronix S.A.Sztuka komputerowego tworzenia Sztuka komputerowego tworzenia

Rola wirtualnych komponentów w projektowaniu systemów scalonych

49Mariusz Rawski

Page 50: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Komponenty wirtualne firmy Evatronix

W roku 2002 Evatronix S.A. opracowała wirtualny komponent kontroler Ethernet MAC (Media Access Control) 10/100Mbit. Komponent ten został zastosowany w...

gdzie pełni rolę podstawowej arterii wymiany danych pomiędzy wszystkimiurządzeniami sterującymi i kontrolnym samolotu A380.

...airbus A380...airbus A380

Mariusz Rawski 50

Page 51: Układy cyfrowe –informacje ogólne - Mariusz Rawskirawski.zpt.tele.pw.edu.pl/pl/system/files/Uklady_cyfrowe_informacje... · OPIS RTL TRANSLACJE SPECYFIKACJI ODWZOROWANIE ... y

Wyzwania i szanse

Realizacje różnych układów np. kryptograficznych, DSP, w strukturach

PLD/FPGA (jako produkty własności intelektualnej), z zastosowaniem

nowoczesnych metod syntezy logicznej, a w szczególności

Uniwersyteckich Systemów Syntezy Logicznej, to – ze względu na

dynamikę rozwoju technologii mikroelektronicznych i metod

komputerowej syntezy - szanse przede wszystkim dla aktualnie

Mariusz Rawski

komputerowej syntezy - szanse przede wszystkim dla aktualnie

studiujących!

51