Nowoczesne interfejsy komputerów wbudowanych
| TechnikaZarówno wytwórcy jak i użytkownicy komputerów wbudowanych muszą wybierać pomiędzy licznymi standardami magistrali, interfejsów i systemów łączności. Zadanie to utrudnia wielka liczba przemian technologicznych, związanych z szybkim przechodzeniem obecnie od połączeń równoległych do szeregowych. Na wstępie niniejszego artykułu opisano najważniejsze interfejsy stosowane w większości wbudowanych systemów wykorzystujących procesory x86. W dalszej części wypunktowano zalety i wady obecnych i przyszłych unormowań wbudowanych aplikacji komputerowych oraz zwrócono uwagę na ważne dla projektanta szczegóły.
Podjęcie przez projektanta systemu cyfrowego każdej decyzji co do tego, jaki interfejs będzie on wykorzystywać, wiąże się z kompromisem pomiędzy wymaganiami co do wielkości i elastyczności działania, oszczędnością zasilania i osiągami, dostępnością i kompatybilnością w przyszłości, a także elementami marketingu i rzeczywistymi potrzebami. Wytwórcy komputerów wbudowanych spotykają się obecnie z radykalnymi zmianami, tworzącymi nowe perspektywy. Interfejsy szeregowe zastępują równoległe, a niektóre ukończone już opracowania muszą najpierw sprawdzić swoją przydatność w urządzeniach wbudowanych. Twórcy nowych projektów i produktów muszą mieć wiedzę na temat licznych standardów interfejsów i starannie je rozważyć i dobrać. Można je jednak sklasyfikować ze względu na poziom, na którym działają: interfejs w chipie, na płytce, w urządzeniu peryferyjnym, czy w sieci.
W ostatnich latach przemysł komputerowy przestawia się ze standardów interfejsów równoległych na szeregowe. Zmiany te mają dalekosiężne konsekwencje dla producentów komputerów wbudowanych, którzy muszą się zdecydować, jak długo będą podtrzymywać starsze standardy, które podzespoły peryferyjne będą dostępne w przyszłości, czy nowe standardy będą kompatybilne z konstrukcjami wbudowanymi i jak mogą być one sprawdzane w procesie opracowywania. Ważne miejsce zajmują nowe standardy szeregowe poziomu płytki drukowanej:
- PCI przechodzące w PCI Express (PCIe)
- ISA przechodzące w Low Pin-Count Bus (LPC)
- TTL przechodzące w Digital Video Output (DVO) oraz poziomu urządzeń peryferyjnych:
- IDE P-ATA w Serial Advanced Technology Attachment (SATA)
- LPT, Floppy, PS/2 w USB
- PC Card w ExpressCard
Tabela 1. Najważniejsze interfejsy poziomu płytki drukowanej dla systemów embedded | |||||
---|---|---|---|---|---|
Typ | Szybkość | Rodzaj transmisji | Liczba przewodów | Maksymalna długość [cm] | Liczba odbiorników |
ISA | (16 bit/8MHz), 16MB/s (teoretycznie), 4-8MB/s (w praktyce) | Równoległy, pojedynczy, 3,3V (5V) | 87 | 30 | 5-10 |
LPC | 4MB/s | Szeregowy, pojedynczy, 3,3V | 6-13 | 30 | 5-10 |
PCI | 32 bit/33MHz, 133MB/s (teoretycznie), 70MB/s (w praktyce) | Równoległy, pojedynczy, 3,3V (5V) | 70 | 30 | 4-8 (liczba przerwań) |
AGP (2/4/8) | 32 bit/(2/4/8)x66MHz, 533-3132MB/s | Równoległy, pojedynczy | 1 | ||
PCIe (1 tor) | 250MB/s dwukierunkowo | Szeregowy, różnicowy | 4 | 30 | 1 |
Z punktu widzenia rozwiązań komputerów wbudowanych przydatność nowych standardów jest ograniczona, a przysparzają one nowych trudności przy opracowywaniu systemów. Ocena interfejsu dla komputerów wbudowanych w warunkach przemysłowych zależy od szeregu podstawowych czynników. Od strony fizycznej kryteria tej oceny to szybkość przesyłu danych (w MB/s), liczba przewodów, rodzaj transmisji, maksymalna i minimalna długość przewodów, a także liczba elementów wchodzących w skład systemu, adresów i przerwań. Natomiast od strony integracji istotnymi kryteriami są dostępność elementów, przydatność w warunkach środowiska przemysłowego, podatność na zaburzenia EMC, rodzaj złączy i przewodów, kompatybilność wsteczna, koszty integracji i części, a także istnienie potrzebnego oprogramowania. W tabelach 1 i 2 przedstawiono najważniejsze interfejsy poziomu płytki drukowanej dla systemów komputerów wbudowanych z procesorami klasy x86.
W trakcie projektowania systemów wbudowanych warto stosować podejście modułowe z wykorzystaniem szeregu standardów magistrali i/lub przystosowalności magistrali szeregowych i równoległych. Do konwencjonalnych urządzeń peryferyjnych powinny być stosowane interfejsy LPC i PCI, a gdy wymagany jest ISA, połączenia powinny być dokonywane za pośrednictwem mostków lub FPGA. Używanie PCIe jest zalecane w przypadku stosowania wydajnych kart graficznych lub innych szybkich procesów, jak Gigabit, Firewire, czy układy graficzne.
Tabela 2. Interfejsy poziomu płytki drukowanej dla systemów embedded | |||||
---|---|---|---|---|---|
Typ | Obszar zastosowań | Złącze i kabel | Zalety | Wady | Dostępność |
ISA |
|
|
|
| Malejąca liczba elementów dla rozwiązań firmowych |
LPC |
| Nie normalizowane | Zredukowana dług. przewodów | Problemy z kompatybilnością oprogramowania dla LPC do ISA | B. dobra |
PCI |
|
|
|
| B. dobra |
AGP (2/4/8) | Tylko do kart graficznych | Specjalne sloty AGP | Brak innych zastosowań | B. dobra dla grafiki | |
PCIe (1 tor) |
| Sloty PCIe |
| Surowe wymagania rozwojowe |
|
Interfejs wideo
Każdy nowoczesny system wbudowany jest wyposażony w interfejs wideo jednym z odmiennych standardów. Interfejsy te ściśle łączą się z aplikacją i muszą spełniać jej odmienne wymagania. Jak pokazano w tabeli 3, decydujące czynniki, potrzebne do wyboru interfejsu wideo, zależą od chipsetu, BIOS-u i wyświetlacza, czy fizycznych parametrów, takich jak długość przewodów, rozdzielczość i taktowanie.
Warunki sterowania wyświetlaniem w nowoczesnych systemach x86 zmieniają się. Będące do dziś w użyciu wbudowane sterowniki grafiki są eliminowane, a nowe chipsety i kontrolery grafiki nie współpracują już z interfejsami TTL. Przystosowanie do BIOS-u staje się coraz bardziej złożone i coraz trudniejsze dla producenta do wykonania. Ponadto sterowniki systemu operacyjnego również stają się coraz bardziej skomplikowane. Nowoczesne wyświetlacze są wyposażone w mechanizm automatycznej detekcji, taki jak DDC/EDID, a wymagania osiągów graficznych (szerokość pasma) także wzrastają.
W przyszłości standardowym interfejsem zewnętrznego monitora będzie DVI-I. Dla LCD będzie to LVDS lub DVL. Potrzebne będzie sprawdzanie danych monitora, generacja Extended Display Identification Data (EDID) i integracja funkcji DDC (magistrala I2C). Nowa ta technika ma kilka zalet. Rozwiązanie jest sprzętowo niezależne od wyświetlacza, umożliwia automatyczne rozpoznawanie jego danych (np. rozdzielczości) poprzez BIOS lub system operacyjny i nie wymaga żadnej adaptacji oprogramowania. Jego wadą natomiast jest wzrost złożoności sprzętowej.
Tabela 3. Standardy interfejsów wideo | |||||
---|---|---|---|---|---|
Typ | Obszar zastosowań | Złącze i kabel | Zalety | Wady | Dostępność |
TTL |
| Proste połączenia wtykowe itp. | Tani | Przestarzały, małe długości przewodów, nieustanowione sygnały | Niemal nie stosowane w nowoczesnych kontrolerach graficznych |
VGA | Standardowy sygnał dla monitorów analogowych | Kable wstążkowe, do 5m | Szeroko stosowany, przyjęty standard | Podatny na zakłócenia, surowe wymagania dla kabla, ograniczone pasmo | Duża |
DVI | Sterowanie nowoczesnych monitorów LCD | Złącza DVI, kable ekranowane, do 12m | Odporny na zakłócenia, przyjęty standard, szerokie pasmo | Złożone sterowanie wyświetlaczem, szerokie złącze | Duża |
LVDS | Bezpośrednie połączenie LCD z systemem | Proste połączenia wtykowe, skrętki, kable wstążkowe do 8m | Bezpośrednie sterowanie LCD | Zmienne kodowanie | Duża |
Interfejs IO i audio
Przy projektowaniu nowych systemów z interfejsem użytkownika generalnie powinien być preferowany USB, coraz częściej bowiem zastępuje się nim PS/2. W zastosowaniach audio magistrala AC97 Intela nadal zachowuje często używaną i prostą możliwość stosowania kodeków do różnych potrzeb.
Do obsługi urządzeń pamięci masowej w szerokim zakresie jest używany interfejs EIDE/ATA. Enhanced Intelligent Drive Electronics (EIDE) definiuje własności elektryczne interfejsu, a Advanced Technology Attachment (ATA) definiuje jego protokół. W roku 1998 ANSI do standardu ATA dla przyłączanych napędów CD/DVD z użyciem EIDE dodał AT Attachment Packet Interface (ATAPI). Zestawienie standardów ATA przedstawiono w tabeli 4.
Przy porównywaniu ATA i SATA (tabela 5) należy pamiętać, że transfer danych szybszy niż 33,3MB/s (UDMA2) jest rzadko wykorzystywany w systemach wbudowanych, ponieważ wyższe szybkości (ATA4 lub UDMA2) wymagają specjalnego 80-przewodowego kabla. Kable te nie nadają się do aplikacji wbudowanych.
Dlatego przy opracowywaniu systemów nadal warto jako standardowego stosować interfejsu EIDE/ATA, ponieważ przewiduje się, że twarde dyski będą używane jeszcze długo. A ponadto 44-stykowe złącza i kable EIDE doskonale sprawdzają się w trudnych warunkach (wstrząsy i wibracje). SATA nadaje się tylko do systemów z napędami zewnętrznymi, czy o dużych szybkościach transmisji. Nie mniej, używanie zatrzaskowych złączy SATA jest godne polecenia.
Tabela 4. Zestawienie standardów ATA | ||||||
---|---|---|---|---|---|---|
ATA-1 | ATA-2 | ATA-3 | ATA-4 | ATA-5 | ATA-6 | |
Tryby PIO | 0, 1, 2 | 3,4 | – | – | – | – |
Tryby DMA | 0, 1, 2, Multiword 0 | Multiword 0 | – | – | – | – |
Tryby UltraDMA | – | – | 0, 1, 2 | 3, 4 | 5 | |
Maks. szybkość transmisji | 11,1 MB/s | 16,6MB/s | 16,6MB/s | 33,3MB/s | 66,6MB/s | 100MB/s |
Kabel | 40-przewodowy | 40-przewodowy | 40-przewodowy | 40/80-przewod. | 80-przewodowy | 80-przewodowy |
Norma ANSI, rok | X3.221, 1994 | X3.279, 1996 | X3.298, 1997 | NCITS 317-1998 | NCITS 340-2000 | NCITS 347-2001 |
Funkcje | – | Blokada przesyłu, LBA, identyfikacja napędu | SMART, niezawodność | CRC, kabel 80-przewod. | – | 48-bit LBA |
Nazwa obiegowa | ATA/IDE | ATA/IDE | ATA/IDE | Ultra DMA/33 | Ultra DMA/66, ATA 66 | Ultra DMA/100, ATA/100 |
PC-Card a ExpressCard
Nazwa ExpressCard jest nazwą nadaną dodatkowej karcie rozszerzającej, opracowanej przez stowarzyszenie PCMCIA, która w przeciągu kilku lat ma zastąpić karty PC. Ma ona wymiar równy połowie zwykłej karty PC i stosuje się w niej interfejsy PCI Express i USB 2.0. Interfejs USB 2.0 nadaje się przede wszystkim do kart Bluetooth i pamięci Flash. Szybki wariant PCI Express jest przeznaczony dla urządzeń o dużej szybkości transmisji, jak 1394 czy Gigabit Ethernet. Karta ta, zdefiniowana już wraz z kartą PC, może być przyłączana pod napięciem, a jej wyrafinowany system zarządzania zasilaniem umożliwia oszczędne korzystanie z dostępnej energii, co przydaje się w aplikacjach mobilnych.
Głównymi zaletami ExpressCard jest duża szybkość transmisji, uniwersalne zastosowanie i korzystny współczynnik kształtu. Pomimo niewielkiej jeszcze liczby aplikacji tej techniki, przed ExpressCard rozciągają się interesujące widoki w średniej perspektywie, zwłaszcza przy wykorzystaniu ich jako wysokiej jakości wymienne karty peryferyjne systemu.
Tabela 5. Porównanie standardów ATA i SATA | ||
---|---|---|
EIDE/ATA | SATA | |
Szybkość | 33MB/s (UDMA2) do 100MB/s (UDMA 5) | 150MB/s, 300MB/s (SATA II) |
Kabel | Wstążka 44-przewodów (0-40cm), wstążka 80-przewodów (0-20cm) poczynając od UDMA3 (66MB/s) | Specjalny 7- przewodowy kabel SATA (do 1m) |
Sygnały | Równoległe, pojedyncze, 5V | Szeregowe, różnicowe, 0,5V |
Zalety |
|
|
Wady |
|
|
(KKP)