Upload
lydan
View
216
Download
2
Embed Size (px)
Citation preview
Układy cyfrowe – informacje ogólne
CAD
Mariusz Rawski
http://rawski.zpt.tele.pw.edu.pl/
. . . 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
. . . 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
. . . 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
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
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
Tranzystor
VS
VGS VD
S
Rosnące VGS
Mariusz Rawski
Wzmacniacz – technologia analogowa
7
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
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
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
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
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
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
Komputerowe projektowanie…
SPECYFIKACJAFUNKCJONALNA
(HDL)
SYNTEZAFUNKCJONALNA
SIEĆLOGICZNA
OPTYMALIZACJALOGICZNA
Mariusz Rawski
OPIS RTL
TRANSLACJESPECYFIKACJI
ODWZOROWANIETECHNOLOGICZNE
SYNTEZAFIZYCZNA
BIBLIOTEKAKOMÓREK
14
… projektowanie jest proste
Język opisusprzętu
Synteza
Ograniczeniaprojektowe
Mariusz Rawski
Syntezaautomatyczna
Szczęśliwy inżynier
FLEX15
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
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
Podział układów cyfrowych
Mariusz Rawski
Full CustomStandard CellUkłady programowalne
18
Układy programowalne GAL FLEX
EPLDPAL
FPGA
FPGAPLD
Mariusz Rawski
P L Drogrammable ogic evices F P G Aield rogrammable ate rrays
19
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
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
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
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
Układy programowalne wyrównują szanse…
Mariusz Rawski 24
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
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
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
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
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
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
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
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
• 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
• 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
• 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
• 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
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
• 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
Etapy procesu projektowania
Mariusz Rawski 39
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
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
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
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
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
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
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
Mariusz Rawski 47
Mariusz Rawski 48
Evatronix S.A.Sztuka komputerowego tworzenia Sztuka komputerowego tworzenia
Rola wirtualnych komponentów w projektowaniu systemów scalonych
49Mariusz Rawski
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
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