Układy cyfrowe – informacje ogólne

Komentarze

Transkrypt

Układy cyfrowe – informacje ogólne
CAD
Układy cyfrowe
– informacje ogólne
Mariusz Rawski
[email protected]
http://rawski.zpt.tele.pw.edu.pl/
. . . Rok 1847
George BOOLE „The Mathematical Analysis of Logic” …
… 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.
Mariusz Rawski
2
. . . Rok 1958 . . .
Jack Kilby z Texas Instruments zbudował pierwszy układ scalony …
(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.
Mariusz Rawski
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
•
Rozpoznawanie mowy
•
Kryptografia
•
Zastosowania militarne
•
Astronautyka
Mariusz Rawski
UKŁAD CYFROWY
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ó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
V
S
VG
S
VD
S
Rosnące
VGS
Wzmacniacz – technologia analogowa
Mariusz Rawski
7
Tranzystor jako przełącznik
VBRAMKI = 0 V
VBRAMKI > VPROGOWE
Prąd nie płynie
Prąd płynie
Przełącznik– technologia cyfrowa
Mariusz Rawski
8
Realizacja w technologii CMOS
• Widok w edytorze topografii
• Maski produkcyjne
• Przekrój
Źródło: PODSTAWY MIKROELEKTRONIKI
http://vlsi.imio.pw.edu.pl/pmk/
Mariusz Rawski
9
Bramki logiczne
• Bramki logiczne budowane są z tranzystorów
Schemat
Topografia
Inwerter
Jaką funkcję
realizuje ta
bramka
4 wejściowa
bramka NAND
Mariusz Rawski
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)
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
Mariusz Rawski
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
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]
Mariusz Rawski
12
Technologie wytwarzania
układy programowane
przez użytkownika
(PLD)
•
•
układy projektowane
przez użytkownika
(semi-custom)
układy zamawiane
przez użytkownika
(full-custom)
Full-custom – układy zamawiane przez użytkownika.
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
Mariusz Rawski
13
Komputerowe projektowanie…
SPECYFIKACJA
FUNKCJONALNA
(HDL)
SIEĆ
LOGICZNA
SYNTEZA
FUNKCJONALNA
OPTYMALIZACJA
LOGICZNA
OPIS RTL
ODWZOROWANIE
TECHNOLOGICZNE
TRANSLACJE
SPECYFIKACJI
SYNTEZA
FIZYCZNA
Mariusz Rawski
BIBLIOTEKA
KOMÓREK
14
… projektowanie jest proste
Język opisu
sprzętu
Ograniczenia
projektowe
Synteza
automatyczna
EX
FL
Szczęśliwy inżynier
Mariusz Rawski
15
Systemy CAD
Specyfikacja HDL
Niestety tradycyjne procedury
syntezy nie są w stanie
sensownie przetworzyć
milionów bramek w
zamierzenia konstruktora
Synteza funkcjonalna
Synteza logiczna
Odwzorowanie technologiczne
FPGA
Mariusz Rawski
16
Systemy komercyjne i uniwersyteckie
Komercyjne systemy projektowania nie nadążają za rozwojem technologii.
Dlatego powstają uniwersyteckie systemy syntezy logicznej
niewygodne do bezpośredniego projektowania, ale…
…generują wyniki niekiedy 10-krotnie lepsze
I to jest główną przyczyną tego, że wykład ten
wbrew niektórym opiniom – ma ogromne znaczenie
dla praktyki projektowania układów cyfrowych
Mariusz Rawski
17
Podział układów cyfrowych
Układy
programowalne
Mariusz Rawski
Standard Cell
Full Custom
18
L
GA
FPGA
PLD
Programmable Logic Devices
Mariusz Rawski
EX
PAL
FL
Układy programowalne
EPLD
FPGA
Field Programmable Gate Arrays
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
jedną z technologii full-custom lub semicustom do realizacji wyspecjalizowanych
układów
Mariusz Rawski
układy projektowane
przez użytkownika układy zamawiane
(semi-custom)
przez użytkownika
(full-custom)
ASIC
20
Prosty układ jako przykład
y = x1x2x3 + x1x3 + x2x3
•
•
•
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
Mariusz Rawski
21
Czy można inaczej?
x1
D
x2
C
x3
B
A
MATRYCA OR
(PROGRAMOWALNA)
y = x1x2x3 + x1x3 + x2x3
MATRYCA AND
(PROGRAMOWALNA)
Mariusz Rawski
y
Q3 Q2 Q1 Q 0
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.
Osiągają pojemność pozwalającą realizować w
jednym układzie systemy o złożoności setek
tysięcy bramek
FPLD
PLD
„Fabryka na biurku”
układy programowane
przez użytkownika
(PLD)
Mariusz Rawski
23
Układy programowalne wyrównują szanse…
Mariusz Rawski
24
Budowa układów MAX
I/O OUTPUT ENABLE
SYST EM CLOCK
PRESET
D
P
Q
TO
I/O
ARRAY CLOCK
CONTR OL
BLOCK
C
CLEAR
From
inputs
From
PIA
Expander I/O and
Product Macrocell
Terms Feedback
8
AND
Array
8
8
macro
cell
macro
cell
macro
cell
PLD
Mariusz Rawski
25
Budowa układów FLEX
I/O Element
(IOE)
IOE
IOE
IOE
IOE
IOE
IOE
Fast Track
Interconnect
IOE
IOE
IOE
IOE
Embedded
Array
Block
Logic Element
(LE)
IOE
IOE
IOE
IOE
Embedded
Array
Block
Logic Array Block
(LAB)
Cascade Out
IOE
IOE
IOE
IOE
IOE
IOE
Logic
Array
DATA1
DATA2
DATA3
DATA4
Look-Up
Table
(LUT)
Cascade In
Carry IN
Cascade
Chain
LE Out
PR
Q
CLR
Programmable
Register
Carry Out
Carry Chain
Preset
Clear
Clock
Mariusz Rawski
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.
• 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
Mariusz Rawski
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.
• 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.
Mariusz Rawski
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.
• Ł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).
Mariusz Rawski
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
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.
Mariusz Rawski
30
Układy FPLD vs. ASIC
Full Custom
Pojemność,
Szybkość,
Złożoność,
Koszt
ASIC
CPLD
FPGA
PLD
Koszt projektu, Czas implementacji projektu
Mariusz Rawski
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,
Adres
Interfejs pamięci
rejestry,
Dekod ery
adresu
automaty FSM.
Interfejs
Standardowy
mikrop roceso r
Dane
uP
Multipleksery
Rejestry
Sterowanie
wyś wietlacza
UART
A/D i D/A
kontroler
FPLD
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.
Mariusz Rawski
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,
Adres
dźwięku,
sekwencji wideo.
Standardow y
mikroprocesor
Dane
Koprocesor
graficzny
uP
Sterowanie
Zalety FPLD:
realizacja różnych funkcji
w tym samym sprzęcie,
łatwość modernizacji,
łatwość rozbudowy o nowe funkcje
Mariusz Rawski
Moduł kontroli
dostępu do
pamięci
obr azu
Pemięć
danych
Generator
adresów
Pemięć
wy nikó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.
Wejścia
Układ ste rowania
Zalety FPLD:
opłacalne w przypadku
małych serii,
łatwość opisu w języku HDL.
Ścieżka
danych
FPLD
Mariusz Rawski
Wyjścia
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 konfiguracje
zasobów przechowywane
w pamięci konfiguracji,
ładownie konfiguracji
potrzebnej w danej chwili,
System zar ządzający
Pamięć konfiguracji
Konfiguracja 1
Konfiguracja 2
Konfiguracja 3
(aktywna)
Konfiguracja 4
Konfiguracja 5
FPLD
Mariusz Rawski
35
•
Obliczenia rekonfigurowalne
Systemy realizujące jądra procesorów
opracowane przez użytkownika, których
zestaw instrukcji i architektura jądra
może być modyfikowana w zależności
od potrzeb uruchamianego
oprogramowania.
Zestaw i nstru kcji
wykonyw anyc h z
wy korzy staniem
ją dra pr oceso ra
Proc esor
z modułem
steru jącym
i
zestawem
instrukcji
podsta wowy ch
int main (){
flat flag;
prinf();
fft(flag);
...
}
FPLD
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
Mariusz Rawski
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.
•
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.
Mariusz Rawski
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
Koncepcja sys temu
cyfroweg o
Opis projektu:
Symu lacja funk cjonalna
- schemat
- opis HDL
- weryfik acja pop rawnoś ci
- ewentualne os zacowanie
paramertów czasowych
Impleme ntacja:
- transformacja opisu
- synteza logiczna
- partitioning/fitting
- ruting
- plik programujący
Symu lacja czas owa
- parametry czas owe po
etapie rozlokaowania logiki
w układzie
Wery fikacj a w s ystem ie
- analiza współpracy z innymi
elementami sprzetowy mi I
oprogramowaniem
Progr amowanie układ u
EX
FL
Wery fikacj a projektu
Projekt układu może być podany w formie schematu
graficznego 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:
– 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.
Mariusz Rawski
40
Implementacja projektu
Koncepcja sys temu
cyfroweg o
Opis projektu:
Symu lacja funk cjonalna
- schemat
- opis HDL
- weryfik acja pop rawnoś ci
- ewentualne os zacowanie
paramertów czasowych
Impleme ntacja:
- transformacja opisu
- synteza logiczna
- partitioning/fitting
- ruting
- plik programujący
Symu lacja czas owa
- parametry czas owe po
etapie rozlokaowania logiki
w układzie
Wery fikacj a w s ystem ie
- analiza współpracy z innymi
elementami sprzetowy mi I
oprogramowaniem
Progr amowanie układ u
EX
FL
Wery fikacj a 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.,
– 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.
Mariusz Rawski
41
Weryfikacja projektu
Koncepcja sys temu
cyfroweg o
Opis projektu:
Symu lacja funk cjonalna
- schemat
- opis HDL
- weryfik acja pop rawnoś ci
- ewentualne os zacowanie
paramertów czasowych
Impleme ntacja:
- transformacja opisu
- synteza logiczna
- partitioning/fitting
- ruting
- plik programujący
Symu lacja czas owa
- parametry czas owe po
etapie rozlokaowania logiki
w układzie
Wery fikacj a w s ystem ie
- analiza współpracy z innymi
elementami sprzetowy mi I
oprogramowaniem
Progr amowanie układ u
EX
FL
Wery fikacj a 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
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ł.
Mariusz Rawski
42
Programowanie układu
Koncepcja sys temu
cyfroweg o
Opis projektu:
Symu lacja funk cjonalna
- schemat
- opis HDL
- weryfik acja pop rawnoś ci
- ewentualne os zacowanie
paramertów czasowych
Impleme ntacja:
- transformacja opisu
- synteza logiczna
- partitioning/fitting
- ruting
- plik programujący
Symu lacja czas owa
- parametry czas owe po
etapie rozlokaowania logiki
w układzie
Wery fikacj a w s ystem ie
- analiza współpracy z innymi
elementami sprzetowy mi I
oprogramowaniem
Progr amowanie układ u
EX
FL
Wery fikacj a projektu
– 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
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.
Mariusz Rawski
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.
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.
Mariusz Rawski
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
- EXEMPLAR LOGIC-VENDOR
INCENTIVE PROGRAM (VIP)
- D & R DESIGN-REUSE.
•
Mariusz Rawski
•
•
•
•
•
•
•
•
•
•
-
TILAB
inSILICON CORPORATION
SIBER CORE TECHNOLOGIES
DIGITAL COMMUNICATION
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
– Transforms
– Trig Functions
Mariusz Rawski
•
Math Functions
– Accumulators
– Adders & Subtracters
– Arithmetic & Logic Unit
– Comparators
– Complementers
– Dividers & Reciprocal
Functions
– Format Conversions
– Integrator
– Multipliers
– Square Root
46
Mariusz Rawski
47
Mariusz Rawski
48
Evatronix S.A.
Sztuka komputerowego tworzenia
Rola wirtualnych komponentów w projektowaniu
systemów scalonych
49
Mariusz 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...
...airbus A380
gdzie pełni rolę podstawowej arterii wymiany danych pomiędzy wszystkimi
urządzeniami sterującymi i kontrolnym samolotu 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
studiujących!
Mariusz Rawski
51

Podobne dokumenty