background image

 
 

 

TECHNIKA CYFROWA 2 

OPRACOWANIE 

Opracowanie do wykładu Mazurkiewicza

      

background image

magistrala 

1.  UKŁADY PAL (Programunable Array Logic) 

 
Zbudowane są z programowalnych linii iloczynu – term, połączonych trwale z wejściami 
nieprogramowalnej matrycy bramek OR. (słabość wada układów PAL) Zwykle posiadają 
sprzężenie zwrotne za OR-em. Rozwiązanie to umożliwia zwiększenie ilości wejść do bramek 
OR. Pozwala to też na sumowanie iloczynów o większej ilości zmiennych, niż wartość 
nominalna.  
 
Programowalne przełączanie wejść/wyjść, dzięki trójstawowym elementom wyjściowym. 
 
W układach PAL mogą pojawić się przerzutniki (najczęściej typu D) taktowane wspólnym 
zegarem synchronicznym. Wejścia połączone z wyjściem matrycy OR. Wyjścia połączone z 
elementem końcowym ich obecność umożliwia realizacja układów sekwencyjnych XOR do 
sterowania. 
 
SHARING – próba walki z największą wadą układów PAL – stałymi połączeniami AND-OR. 
Polega ona na wykorzystywaniu dodatkowych bramek EX-OR. 
 
Układy PAL oznaczone X-em charakteryzują się większą liczbą wyjść niż klasyczne. Na każde 
wyjście przypada mniej iloczynów. Układy te działają z umiarkowaną szybkością przy czym 
mają duży pobór prądu. Brak sprzężeń zwrotnych i buforów trójstanowych. 
 
Wyspecjalizowane PAL-e to najczęściej dekodery. Funkcja nie jest złożona, więc wystarczają 
same AND-y. Ważna jest szybkość działania. Uniwersalność = wiele zbędnych bramek. Brak 
sprzężeń zwrotnych i buforów trójstanowych. 
 

2.  SIMD (Single Instruction, Multiple Data) 

 
Architektury specjalizowane do operacji macierzowych, przetwarzania sygnałów w czasie 
rzeczywistym. Zbór jednostek PE (procesów elementarnych) 
Połączonych w regularną siatką, globalnie synchronizowanych. 
Każdy PE jest połączony tylko z sąsiadami dane/częściowe wyniki przesyłane w takt 
wspólnego zegara. 
Wyniki uzyskiwane stopniowo (struktura) 
 
- tablica z częściowym rozpowszechnieniem danych 
 
 
 
 
 
 
 
 
- tablica hexagonalna  
 
 
 
 
 
 

-tablica przetwarzania potokowego / 
warefront 
 
 
 
 
 

PE 

PE 

PE 

PE 

PE 

PE 

background image

 

Komunikacja 
między PE 

Komunikacja 
wewnętrzna 

budowa 

Stopień 
wykorzystania 

Inne 

Częściowe 
rozpowszechnianie 

Punkt-punkt 
Magistrala 

Magistrala 

Rozbudowane 
układy 
sterujące 

Ponad 50% 

 

Hexogonalna 

Punkt-punkt 

Procesory 
brzegowe 

Prosta 

Powyżej 50 % 

Duża liczba PE 

Przetwarzanie 
potokowe 

Punkt-punkt 

Tylko 
procesory 
brzegowe 

Prosta 

Przynajmniej 
50% 

 

warefront 

Punkt-punkt 
 

Procesory 
brzegowe 

 

50% 

Dobra skalowalność  
Łatwa programowalnosć 
Dobre parametry FiC 

rozpowszechnianie 

Magistrale 

Magistrale 

Rozbudowane 
układy 
sterujące 

Wysoki 

Łatwa implementacja 
algorytmów 

 

 

3.  UKŁADY PLA 

 
Programowalne obie matryce AND i OR. Większa elastyczność. Dodatkowa programowalna 
matryca AND, której linie iloczynu sterują buforami wyjściowymi i wejściowymi 
przerzutników. Blok NOT złożony z programowalnych EX-OR-ów stanowi układ polaryzacji 
wyjść. 
 

4.  UKŁADY PLS 

 
Złożone z: matryca AND dla wejść zewnętrznych AND, matryca AND dla rejestru 
zewnętrznego ANDa. Uzupełniające matryce AND i OR. Matryca OR rejestru wewnętrznego 
Ora. Matryca OR rejestru wyjściowego Ora. Bufor wyjściowy. Układ sterowania. 
 

5.  UKŁADY GAL 

Następca układów PAL. Ma możliwość wielokrotnego reprogramowania struktury logicznej. 
Złożone z matrycy programowalnych AND-ów oraz makrokomórek OLMC 
(programowalnych), które zastąpiły matrycę OR-ów. OLMC pozwalają na wybór trybu pracy 
dla każdego wyjścia osobno (kombinacyjny/rejestrowy). 
Możliwe jest łączenie makrokomórek. Obecność sprzężeń zwrotnych. Układy GAL mogą 
posiadać także makrokomórki ILMC. Zastosowanie OLMC i ILMC oraz reprogramowalność 
czynią te układy niezwykle elastycznymi o szerokim zastosowaniu. W strukturze 
wykorzystywane demultipleksery i multipleksery. 

6.  CPLD i FPGA 

 

CPLD 

FPGA 

Struktura niejednorodna 

Struktura tablicowa 

Średnia ilość zasobów 

Duża ilość zasobów 

Narzucona struktura połączeń 

Dowolność łączenia zasobów 

Duża szybkość 

Średnia szybkość  

 
 
 
 

background image

 

CPLD 
 
Składa się z programowalnej matrycy połączeni PIA otoczonej makrokomórkami. 
Makrókomórki składają siez matryc AND-OR (jak PAL), programowalnych 
przerzutników, bramek OR, XOR, multiplekserów i buforów trzystanowych. Bloki 
logiczne LAB złożone z matrycy ekspanderów i makrokomórek łączą siez PIA oraz 
blokiem I/O control Block. 
 

 

FPGA 
 
Składa się z macierzy elementów logicznych-komórek każda komórka składa się z 
uniwersalnego układu kombinacyjnego (dowolna funkcja logiczna), kilka wejść, 
jednego lub dwóch wyjść, przerzutników oraz pomocniczych multiplekserów. 
Uniwersalny układ kombinacyjny ma strukturę tablicową LUT, ważna dla procedur 
syntezy logicznej. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Technologia zrealizowania FPGA wymusza sposób realizacji funktorów logicznych. 
Opcja 1 – LUT zawierające wszystkie rozwiązania funkcji 
Opcja 2 – układ multiplekserów, funkcje 3 lub 4 zmiennych 
 
Za pomocą multiplekserów w układach FPGA mogą być realizowane także 
przerzutniki. Sam multiplekser jest realizowany w komórkach . Zasoby połączeniowe 
decydują o zaletach i wadach FPGA. W matrycach wykorzystywane są dwa typy 
połączeń: 
- programunable interconect C 
- switch matrix S 
 
 
 
 
 
 
 
 
 
 
 
 

BL 

BL 

BL 

BL 

I/O

 

I/O

 

I/O

 

I/O

 

BLOKI LOGICZNE– realizacje cyfrowe 
układy kombinacyjne i sekwencyjne  
 
MATRYCE KOMUTACYJNE – realizuje sieci 
połączeń 
 
BLOKI I/O – połączenie bloków logicznych 
z wyprowadzeniami zewnętrznymi 

background image

Pamięć wykorzystywane przez FPGA: 

RODZAJ 

WADY 

ZALETY 

ROM 

Brak możliwości modyfikacji 
zawartości, wysoki koszt 
(nowej) 

Duża pojemność, nieulotna, mały 
pobór mocy 

PROM 

Łatwość wprowadzania 
danych, szybkość, nieulotna 

Ograniczona niemożliwość 
modyfikacji, mała pojemność duży 
pobór mocy, cena 

EPROM 

Przypadkowe kasowani, 
specjalne urządzenia do 
modyfikacji, ograniczona 
liczba kasowań 

Możliwa, łatwa modyfikacja, mały 
pobór mocy, duża pojemność 
nieulotna, cena 

EEPROM  Cena, długi czas zapisu, 

ograniczona liczba 
modyfikacji, średnia 
pojemność 

Modyfikacja w układzie aplikacyjnym, 
mały pobór mocy, nieulotna 

SRAM 

Wymóg ciągłego zasilania, 
cena 

Łatwy, szybki zapis, proste układy, 
duża pojemność 

DRAM 

Ciepłe zasilanie, odświeżanie 
skomplikowane aplikacje 

Łatwy, szybki zapis, cena, duża 
pojemność 

 
Układy FPGA przyjmują sygnał zaporowy z zewnątrz następnie trafia on do clocka 
Maragera, który taktuje pozostałe zapory. Ta skomplikowana struktura może 
powodować opóźnienia sygnału taktującego w odległych komórkach. 

7.  TTECHNOLOGIA TTL 

Układy zbudowane z tranzystorów bipolarnych zasilane napięciem 5V 
 
IN:     high > 2V           low < 0,8 V 
OUT: high > 2,4 V       low < 0,4 V 
 
Rozwiązania specjalne:  

 

SHOTTKY – dodanie do tranzystorów diody równolegle w obwód baza-kolektor, co 
zmienia charakterystyka przejściowa na bardziej prostokątną. 

 

SCHMITT – duża odporność na zakłócenia, napięcia progowe, histereza przekształca 
wielozmienne sygnały na impulsy o szybkich zasadach. Zmienia napięcie sinus na 
prostokąt. 

 

OC – stosowane do złożenia sumy montażowej kilku wejść. Używane w liniach 
przerwań magistrali komputerowych. Układ zachowuje się jak bramka NOR. 
 

8.  TECHNOLOGIA CMOS 

 
Układy wykorzystujące komplementarne tranzystory PMOS i NMOS bez rezystorów. Bardzo 
mała moc strat w stanie statycznym praca przy obniżonym napięciu zasilania. Większa 
szybkość działania. Zmniejsza moc strat przy wysokich częstotliwościach. Niższy poziom 
generowanych zakłóceń. Wyższa niezawodność. 
 

9.  TECHNOLOGIA ECL 

 
Układy z tranzystorami pracującymi tylko w liniowym zakresie pracy (bez 
zatkania/nasycenia). Osiągnięto to łącząc tranzystory emitorami w układy wzmacniaczy 

background image

różnicowych. To rozwiązanie charakteryzuje się dużą szybkością. Niestety jego wadą jest duży 
pobór mocy oraz niewielki margines zakłóceń (mała odległość poziomów logicznych). 
 

10. JEZYKI OPISU SPRZETU – HDL 

 
Języki wykorzystywane do opisu układów cyfrowych istnieją trzy sposoby takiego opisu: 

 

Zachowawczo/behawioralnie 

 

Strukturalnie 

 

Równaniami boolowskimi 

 

Każdy projekt musi zawierać dwie sekcje: 

 

Interfejsu 

 

Opisu logicznego 

Oraz (opcjonalnie) sekcję zmiennych lokalnych, gdzie deklarowane są zmienne 
reprezentujące sygnały i przechowujące informację wewnętrzne układu. 
 
Elementy struktury języka: 

 

Słowa kluczowe 

 

Symbole 

 

Identyfikatory 

 

Liczby 

 

Równania 

 

Wyrażenia i operatory 

 

Sygnały grupowe 

 

Tablice 

 

instrukcje