Procesory i komputery przemysłowe - eti.pg.edu.pl - KOMPUTERY... · Architektura dedykowanych...
Transcript of Procesory i komputery przemysłowe - eti.pg.edu.pl - KOMPUTERY... · Architektura dedykowanych...
Architektura dedykowanych systemów mikroprocesorowych –
komputerowe systemy przemysłowe
Mariusz RUDNICKI – [email protected]
pok. 753 tel.: 347-26-39
Literatura
Standard DIMM-PC: • specyfikacja modułów DIMM-PC wersja 2.1; • wirtyny internetowe:
– www.kontron.pl; – www.jumtec.de.
Standard PC/104, PC-104-Plus, EBX, EPIC: • Specyfikacja PC/104 wersja 2.5; • Specyfikacja PC/104-Plus wersja 2.2; • Specyfikacja EBX Embedded Board, eXpandable wersja 2.0; • Specyfikacja EPIC Embedded Platform for Industrial ComputingTM wersja
2.0; • witryny internetowe:
– www.pc104.org; – www.diamondsystems.com; – www.axiomtek.com;
Literatura VMEbus: • Specyfikacja Std 1014-1987, IEEE Standard for A
Versatile Backplane Bus: VMEbus; • „The VMEbus Handbook” – Wade D. Peterson, 1997 –
VITA; • „Wprowadzenie do standardu VMEbus” – B. Marzec,
WNT 1994; • Witryny internetowe:
– www.vita.com; – www.gefanuc.com; – www.acromag.com; – www.kontron.pl; – www.alphitech.com.
Pojęcia
Architektura przedstawia najczęściej system w
postaci zestawu wzajemnie komunikujących się (oddziałujących na siebie) podsystemów, łącznie z fizycznym rozmieszczeniem podsystemów na sprzęcie wykonującym odpowiednie funkcje. Decyzje podjęte w fazie ustalania całościowej architektury mogą mieć istotne znaczenie dla cech systemu jako całości (jego wydajności, bezpieczeństwa, dostępności, łatwości konserwacji).
Pojęcia
System dedykowany jest systemem przygotowanym według
specyfikacji klienta i dostosowanym do jego potrzeb i oczekiwań. System dedykowany jest najlepszym rozwiązaniem w sytuacji: – braku na rynku systemów oferujących niezbędne funkcjonalności; – istniejące systemy znacznie przewyższają wymagania klienta (koszty); Tworzenie systemu dedykowanego: I etap – szczegółowa analiza potrzeb oraz wymagań klienta. II etap – projekt funkcjonalny systemu. III etap – wykonanie, zgodnie ze specyfikacją – części sprzętowej i oprogramowania. IV – testy zarówno pod kątem poprawnego funkcjonowania systemu jak i pod kątem jego użyteczności. V – zaakceptowany przez klienta produkt zostaje uruchomiony i udostępniony użytkownikom końcowym.
Pojęcia
System czasu rzeczywistego to taki, w
którym wynik przetwarzania nie zależy tylko i wyłącznie od jego logicznej poprawności, ale również od czasu, w jakim został osiągnięty. Jeśli nie są spełnione ograniczenia czasowe, mówi się, że nastąpił błąd systemu.
Co będziemy poznawać? Omawiana część wykładów z architektury dedykowanych systemów mikroprocesorowych prezentuje współczesne rozwiązania, złożonych systemów procesorowych cyfrowego przetwarzania sygnałów opartych na komputerach przemysłowych różnych standardów - powszechnie wykorzystywanych w różnych gałęziach przemysłu. Omówiona zostanie architektura komputerów przemysłowych i systemów następujących standardów : • PC/104, PC/104 Plus, EBX, EPIC; • VMEbus.
Wprowadzenie Główne zadania stawiane w/w systemom, w zastosowaniach cywilnych, to: • zarządzanie automatycznymi liniami produkcyjnymi; • sterowanie procesami technologicznymi; • zarządzanie pomiarami oraz przetwarzanie sygnałów
analogowych i cyfrowych w systemach pomiarowych i dozoru;
• nadzór nad urządzeniami pracujących w trudnych warunkach mechano-klimatycznych;
w przemyśle militarnym, to: • praca jako jednostki centralne, układy wejścia/wyjścia,
karty rozszerzeń i karty dedykowane w systemach uzbrojenia, zobrazowania taktycznego itd.
Wprowadzenie
Wyżej opisane zastosowania stawiają przed komputerami przemysłowymi duże wymagania w kwestiach: • niezawodności; • kompatybilności elektromagnetycznej - EMC; • odporności na warunki mechano-klimatyczne;
• odporności na wibracje i udary; • szeroki temperaturowy zakres pracy; • możliwość pracy przy wysokiej wilgotności; • odporność na ciężkie warunki środowiskowe: np. różnego rodzaju skażenia,
oprócz powyższych wymagań ważnymi kwestiami odnoszącymi się do tego typu urządzeń są: • czas życia produktu na rynku; • łatwość rekonfiguracji systemu poprzez zamianę modułów
odpowiednikami produkowanymi przez innego producenta.
Niezawodność
Niezawodność jest taką cechą systemu komputerowego, która powoduje, że możemy mieć uzasadnione zaufanie do jego usług.
Niezawodność
Dostępność
Pewność
Utrzymywalność
Łatwość użytkowania
Bezpieczeństwo
Atrybuty
- Poufność - Integralność
Niezawodność
• dostępność – gotowość do użycia;
• gotowość (reliability) – ciągłość serwisu;
• utrzymywalność – zdolność do przechodzenia napraw i rozwijania;
• bezpieczeństwo – brak szkodliwych konsekwencji dla otoczenia;
• poufność – ochrona informacji przed nieautoryzowanym dostępem;
• integralność – brak niedozwolonych zmian informacji;
Niezawodność
• Dostępność systemu jest miarą jego gotowości do użycia. Dostępność jest mierzona jako granica prawdopodobieństwa, że system funkcjonuje prawidłowo w określonym czasie t przy t zmierzającym do nieskończoności. Jest to tzw. dostępność stanu ustalonego w systemie.
• gdzie MTTF – średni czas do awarii (mean time to failure), a MTTR to średni czas naprawy (mean time to repair).
MTTRMTTF
MTTF
Niezawodność
Pewność systemu jest miarą jego zdolności do nieprzerwanego poprawnego działania w pewnym przedziale czasowym. Może być ona mierzona jako średni czas pomiędzy awariami (MTTF).
Niezawodność
„Utrzymywalność systemu jest jego zdolnością do
poddawania się naprawom i ewolucji. Jest to cecha trudniejsza do precyzyjnego zmierzenia, niż dwie poprzednie. Ilościową miarą utrzymywalności może być MTTR, ale to nie wszystko, biorąc pod uwagę komplikacje nieodłącznie związane z naprawą. Niektóre systemy są utrzymywane przez użytkownika, niektóre przez producenta, a istnieją też takie, które utrzymywane są w pewnej mierze przez obie strony”.
Niezawodność
Łatwość użytkowania - stanowi "zespół właściwości odnoszących się do wysiłku niezbędnego do użytkowania i do indywidualnej oceny tego użytkowania przez określony jawnie lub domniemany zbiór użytkowników". Z własnością tą łączą się pojęcia takie jak łatwość zrozumienia, łatwość szkolenia i łatwość eksploatacji
Niezawodność
Bezpieczeństwo - z punktu widzenia niezawodności, bezpieczeństwo to brak destrukcyjnych konsekwencji dla otoczenia. Leveson definiuje je jako wolność od wypadków i strat. Prowadzi to do binarnej miary bezpieczeństwa: system jest bezpieczny albo nie.
Niezawodność
Awaria jest stanem systemu, w którym jego
zachowanie jest odmienne od zamierzonego. Zauważmy, że definiujemy awarię pod względem zamierzenia, a nie pod względem specyfikacji. System może ulegać awariom na wiele różnych sposobów. Formy (tryby) awarii systemu mogą być luźno zgrupowane w trzy kategorie: •awarie domeny, •postrzeganie przez użytkownika, •konsekwencje dla otoczenia.
Niezawodność
Awarie dziedziny obejmują awarie wartości i awarie czasowe. Awaria wartości następuje, gdy wynik działania systemu jest nieprawidłowy w sensie logicznym. Awaria czasowa następuje, jeśli system dostarcza swoich usług zbyt wcześnie albo zbyt późno.
Niezawodność
Awaria zatrzymująca – system nie dostarcza żadnych usług użytkownikowi (skrajna forma awarii czasowej). Systemy fail-stop – posiadają wyłącznie awarie zatrzymujące. Systemy fail-silent – systemy nie generujące wyników po awarii.
Niezawodność
Postrzeganie awarii
Awaria konsystentna - wszyscy użytkownicy systemu zauważają awarię w ten sam sposób.
Awaria niekonsystentna - niektórzy
użytkownicy systemu zauważają awarię
inaczej niż inni.
Niezawodność
Konsekwencje dla otoczenia
Awarie łagodne
Awarie katastrofalne
System fail-safe – system, który może się
jedynie zawiesić w łagodny sposób .
Niezawodność
Błąd – stan systemu, który po pewnym
czasie prowadzi do awarii, jeżeli nie zostanie odpowiednio wcześnie naprawiony.
Niezawodność
Błędy są funkcją trzech głównych czynników: • redundancji w systemie, •aktywności systemu (błąd może odejść zanim spowoduje uszkodzenia), •akceptowalne zachowanie postrzegane przez użytkownika (np. w transmisji danych „akceptowalna stopa błędów”).
Wada może być zdefiniowana jako hipotetyczna przyczyna błędu. Wady można klasyfikować w pięciu głównych kategoriach: przyczyna, natura, faza tworzenia, granice i trwałość.
Niezawodność
KOMPATYBILNOŚĆ ELEKTROMAGNETYCZNA (EMC)
Dyrektywa kompatybilności elektromagnetycznej 2004/108/WE dotyczy urządzeń, które zawierają czynne elementy elektryczne i elektroniczne.
Zdolność ”urządzenia” do właściwego działania w swoim środowisku elektromagnetycznym bez wytwarzania zaburzeń elektromagnetycznych, które są niedopuszczalne dla jakiegokolwiek elementu tego środowiska.
Komputery przemysłowe standardu DIMM-PC
Komputery DIMM-PC stanowią alternatywę dla systemów, których budowa oparta jest na współczesnych mikrokontrolerach. W wielu rozwiązaniach minimalizują lub wręcz eliminują wady, którymi obarczone są rozwiązania bazujące na tego typu układach. Architektura tych komputerów bazuje na magistrali ISA. Standard DIMM-PC w swej koncepcji oddziela moduły CPU oraz złożone moduły I/O o dużym stopniu skomplikowania od, zazwyczaj dwuwarstwowych, płyt bazowych dedykowanych konkretnym zastosowaniom o znacznie mniejszej złożoności. W celu uproszczenia połączenia modułu CPU z urządzeniami peryferyjnymi, takimi jak przetworniki A/C, moduły I/O lub interfejsy komunikacyjne, na magistrali zdefiniowano programowalny sygnał CS (ang. chip select), który może być przypisany poprzez BIOS do odpowiednich linii adresowych. Pojedynczym sygnałem CS można zaadresować do 8 urządzeń zewnętrznych.
Komputery przemysłowe standardu DIMM-PC
Najważniejsze zalety komputerów DIMM-PC to: • zwarta konstrukcja mechaniczna płyt; • małe gabaryty płyt 40x67,6 mm; • niskie koszty budowy urządzeń; • brak konieczności stosowania złożonego
okablowania systemu; • powszechna znajomość sprzętu stosowanego w
konstrukcjach modułów DIMM-PC; • znacznie mniejsze zapotrzebowanie na energię
modułów DIMM-PC.
Specyfikacja elektryczna i klimatyczna modułów DIMM-PC
Piny zasilania: • GND – pin 6 DIMM; • VCC – pin 3 DIMM, maksymalny prąd 1,5 A;
• Napięcia zasilania: 5V DC ±5%; • Tętnienia napięcia zasilania: 100 mVpp 0-20MHz. Specyfikacja klimatyczna: • Temperatura pracy: 0 – 60 ˚C; • Temperatura przechowywania: -10 – +85 ˚C; • Wilgotność w czasie pracy: 10% – 90% (bez kondensacji); • Wilgotność podczas przechowywania: 5% – 95% (bez
kondensacji).
Typy zgodności modułów PC/104
• Zgodny z PC/104 (ang. Compliant) – dotyczy urządzeń, które spełniają wszystkie obowiązkowe aspekty specyfikacji mechanicznej i elektrycznej standardu PC/104;
• Kompatybilny z magistralą PC/104 (ang. Bus-Compatible) – dotyczy urządzeń, które nie spełniają wymagań np. co do wymiarów ale zawierają złącza magistrali i są w pełni zgodne ze specyfikacją mechaniczną i elektryczną tych złącz.
Przykładowa architektura komputera standardu PC/104 z CPU klasy x86
Prometheus: procesor 486-DX2 100
MHz;
pamięć SDRAM;
flash z BIOS’em;
lokalna magistrala PCI;
kontorler Ethernetu;
kontroler akwizycji danych;
magistrala ISA.
Przykładowa architektura komputera standardu PC/104
ATHENA II: procesor CPU;
procesor video;
pamięć SDRAM;
mostek PCI;
kontroler ethernetu;
układ akwizycji danych;
4xRS232;
kodek Audio.
Zalety PC/104
• Zwarta budowa, małe wymiary kart; • Zminimalizowana liczba elementów na kartach; • Niski pobór mocy (1-2W/moduł); • Unikatowa szyna „self-stacking” – eliminuje konieczność
stosowania platerów(backplane’ów) i obudów kart; • Szeroki asortyment kart rozszerzeń analogowych oraz
cyfrowych; • Możliwość stosowania modułów różnych producentów we
wspólnej aplikacji; • Niski koszt podzespołów w porównaniu z innymi
urządzeniami przemysłowymi; • Duża grupa producentów urządzeń PC/104 (ponad 125).
Wady PC/104
• Możliwość konstruowania systemów tylko jednoprocesorowych;
• Zbyt wolna magistrala dla niektórych zastosowań (8MB/s lub 16MB/s);
• Ograniczenie objętości przesyłanych danych do bloków 64kB (128 kB w kanałach 16-bitowych)
• Ograniczona szerokość szyny danych 8, 16 bitów;
• Ograniczone zasoby systemowe (w starszych modułach PC/104).
Wybrane aplikacje oparte na komputerach PC/104
System stabilizacji położenia anteny sonaru podkilowego MCM:
PC/104-Plus
Wraz z rozwojem sprzętu komputerowego oraz zaawansowanymi wymaganiami technologicznymi zaistniała potrzeba zwiększenia przepustowości magistrali. W szczególności dotyczyło to procesorów graficznych oraz innych szybkich urządzeń I/O takich jak kontrolery sieci. Było to bezpośrednią przyczyną dołączenia magistrali PCI do modułów PC/104, które zostały nazwane PC/104-Plus. Architektura ta umożliwia łączenie uniwersalnego sprzętu o dużej szybkości działania we współczesnych i przyszłych rozwiązań sprzętowych. Różnice w odniesieniu do PC/104: • dodatkowe złącze magistrali PCI; • wysokość komponentów na górnej warstwie płyty zredukowano z
0.435” do 0.345” na spodniej warstwie zwiększono z 0.100” do 0.190” w celu zwiększenia elastyczności modułów;
• logika sterująca szybką magistralą PCI.
PC/104-Plus
Różnice w odniesieniu do magistrali PCI Local Bus Specification:
• standardowe złącze krawędziowe 124-stykowe magistrali PCI Local Bus zastąpiono złączem 120-stykowym (4x30) o rozstawie 2 mm.
• 120-stykowe złącze PCI nie zapewnia rozszerzenia 64-bitowego magistrali PCI, sygnałów JTAG, PRSNT oraz CLKRUN.
Sygnały magistrali PCI
M66EN – w modułach, które nie pracują z sygnałem taktującym 66 MHz, styk powinien być zwarty do masy, w modułach, które mają możliwość pracy z takim sygnałem zegarowym pin ten powinien być wolny.
PC/104-Plus Rodzaje modułów: • PCI Host Module – moduł zarządzający, określa poziom sygnałów na
magistrali PCI poprzez podłączenie wszystkich linii VI/O do odpowiedniego napięcia. Podłączenie linii VI/O do napięcia 3.3V oznacza, że system używa poziomów logicznych 3.3V. Podłączenie linii VI/O do napięcia 5V oznacza, że system używa poziomów logicznych 5V. Niektóre moduły pozwalają użyć tylko jednej opcji inne umożliwiają użytkownikowi ustawić, przy pomocy jumperów, żądany poziom sygnałów I/O.
• 3.3V moduły rozszerzeń – pracują z sygnałami I/O 3.3V. Użycie modułów z sygnałami I/O 5V spowoduje zniszczenie modułów 3.3V.
• 5V moduły rozszerzeń – pracują w systemach gdzie linie VI/O podłączone są do napięcia 5V. Użycie modułów z sygnałami I/O 3.3V spowoduje zniszczenie tych modułów.
• Uniwersalne moduły rozszerzeń – pozwalają użytkownikowi wybrać odpowiedni poziom sygnałów I/O stosownie do modułu Host PCI.
Standard EBX W przeszłości projektanci zwartych systemów przemysłowych musieli wybierać pomiędzy popularnymi rozwiązaniami opartymi na „backplanach” np. VMEbus, CompactPCI, desktopowych płytach głównych np. komputery panelowe i innych podobnych rozwiązaniach. Rozmiary i pobór mocy skutecznie ograniczały znalezienie właściwego rozwiązania projektowanych systemów wbudowanych. W wyniku nacisków producentów systemów przemysłowych oczekujących na pojawienie się taniego a za razem popularnego i uniwersalnego sprzętu powstało właściwe rozwiązanie Embedded Board eXpandable. Standard EBX daje możliwość tworzenia rozwiązań, które spełniają wymagania systemów przemysłowych, wykorzystują trendy na rynku komputerów wbudowanych i oferują wygodę, elastyczność, zmniejszenie ryzyka oraz skalowalność projektowanych systemów.
Specyfikacja mechaniczna standardu EBX
Płyta EBX jest podzielona na strefy przeznaczone różnym interfejsom i komponentom. Każdą ze stref i przypisaną jej funkcję definiują kolejne ilustracje i opis poniżej. Specyfikacja definiuje maksymalne wysokości komponentów w każdej ze stref. Wysokości te nie mogą być przekraczane przez żadne elementy znajdujące się w danej strefie. Dopuszczalne maksymalne wysokości specyfikuje poniższa tabela. Wiele płyt zgodnych ze specyfikacją EBX pełni funkcję jednopłytowych komputerów zawierających rozszerzenia pamięci, złącza PC Card, porty Ethernet, porty masowych urządzeń magazynujących i urządzeń pomocniczych oraz interfejsów CRT i LCD. Komputery EBX nie wymagają implementacji wszystkich tych funkcji, jednak specyfikują, w których miejscach muszą być one umieszczone. Przestrzeganie tych wytycznych ułatwia współpracę produktów różnych producentów.
EPIC – Embedded Platform for Industry ComputingTM
Specyfikacja EPIC definiuje płyty komputerów, klasy ang. Single Board Computer, średniego rozmiaru z szeroką gamą układów rozszerzeń I/O. Wymiary tych płyt mieszczą się pomiędzy gabarytami przemysłowego standardu PC/104 a formatem płyt EBX Single Board Computer. Płyty o takich wymiarach dają możliwość stosowania procesorów o dużej mocy obliczeniowej, które wymagają chłodzenia.
Specyfikacja Versatile Backplane Bus: VMEbus
Specyfikacja VMEbus została opracowana w 1981 r. (firmy Mostek, Motorola i Signetics) Zmiany w specyfikacji VMEbus odbywały się pod auspicjami: • VITA (VMEbus International Trade Association), • IEC-821 (International Organization for Standardization) • IEEE-1014 (Institiute of Electrical and Electronics
Engineers, Inc.). Najważniejszym aspektem rozwoju standardu jest to iż każda nowa wersja jest w pełni kompatybilna z wersjami poprzednimi.
ANSI/VITA 1-1994 (VME64) • ANIS/VITA 1-1994 (VME64) jest najnowszą wersją specyfikacji.
Kolejna generacja architektury VMEbus zapewnia przedłużenie życia magistrali na XXI wiek. Nowy standard oferuje, wymagane zmiany w postaci większej przepustowości magistrali, szerszej przestrzeni adresowej i prostszych w użyciu kart. Nowe właściwości magistrali proponowane w VME64: Szersza 64-bitowa magistrala danych w płytach 6U; Szerszy 64-bitowy zakresów adresów w płytach 6U; 32-bitowa szyna danych i 40-bitowa szyna adresowa w płytach 3U; Podwojona przepustowość magistrali do 80 MB/s; System złącz zapewniający mniejsze zakłóceń; Możliwość powtórnego cyklu RETRY*; Cykl Bus LOCK; Detektor pierwszego slota; Mechanizm plug-and-play; Możliwość konfiguracji ROM/CSR; Automatyczna identyfikacja slota; Ponowna definicja sygnałów SERCLK i SERDAT. Obecnie, terminem VME64 błędnie określa się, wszystkie moduły dostosowane do Rewizji C.1 specyfikacji VMEbus, które uważa się za zgodne z VME64 (poza możliwościami transmisji danych). Dla przykładu 16- lub 32-bitowa płyta CPU opracowana według starej specyfikacji może być (poprawnie) identyfikowana jako moduł kompatybilny z VME64. Wszystkie rozszerzenia z VME64 są opcjonalne. Nowe produkty pracują w połączeniu z płytami starszego typu dostarczając nowych możliwości producentom systemów przemysłowych.
VITA 1.1-1997 (VME64x) • W 1997 roku VSO zaadoptowało nowe możliwości do specyfikacji VME64. Nowy standard nazwano
VME64 Extentions (VME64x). Dodaje on wiele nowych możliwości architekturze VME64: Nowe złącza 160-stykowe; Nowe złącza 95-stykowe P0/J0; Dodatkowe 141 styki I/O definiowane przez użytkownika (ang. user defined); Moduły przejściowe dołączane od tyłu; Mechanizmy ułatwiające wkładanie/wyjmowanie modułów; Elementy EMC na przednich panelach; Lepsza ochrona ESD (ang. electrostatic discharge); Możliwość blokowania kard; Dodatkowe zasilanie +3.3V; Dodatkowe styki zasilania +5V; Adresowanie geograficzne; Rozbudowane definicje rejestrów CR/CSR; Nowy cykl 2eVME (transfer do 160 MB/s); Wsparcie modułów ‘hot-swappable’; Szyna utrzymania i testowania.
Wszystkie moduły zgodne z VMEbus i VME64 są kompatybilne w przód z platerami i kasetami VME64x. Oznacza to iż starsze moduły mogą być wykorzystywane w nowych systemach. Ogólnie odwrotne stwierdzenie jest również prawdziwe. Moduły projektowane na magistralę VME64x są kompatybilne wstecz ze starszymi platerami i kasetami. Na przykład nowe 160-stykowe złącze może być podłączone do starego platera. Jakkolwiek są wyjątki od tej zasady gdy płyta wymaga zasilania +3.3V. VME64x definiuje wiele opcjonalnych możliwości, mimo tego podaje minimum jakie musi zawierać płyta i plater aby mogły być uważane za zgodne z VME64x. Wszystkie pozostałe właściwości uważane są jako opcjonalne.
Specyfikacja VMEbus – terminologia W celu uniknięcia niedomówień i stworzenia przejrzystych wymagań w kwestii zgodności słowa kluczowe określają typ informacji wyspecyfikowanej przez każdą kategorię:
• reguła (ang. rule);
• zalecenie (ang. recommendation);
• sugestia (ang. suggestion);
• zezwolenie (ang. permission);
• obserwacja (ang. observation).
Reguła – reguły wyrażone mogą być w formie tekstowej, graficznej, stablicowanej lub w formie schematu, charakteryzują się trybem rozkazującym. Przestrzeganie wszystkich reguł gwarantuje kompatybilność produktu. Słowa „shall” i „shall not” są zarezerwowane dla wyrażenia reguł i nie mogą być wykorzystywane do innych celów.
Zalecenie – wszędzie tam, gdzie zalecenia są sugerowane projektanci ostrzegani są o konieczności stosowania się do nich. Postępowanie odmienne może powodować duże problemy lub ograniczone możliwości systemu np. mała przepustowość magistrali. W wielu wypadkach, projektant potrzebuje pewnego poziomu doświadczenia aby projektować karty spełniające wysokie wymagania. Zalecenia bazują na tego typu doświadczeniach i zapewniają przyspieszenie uzyskania żądanego efektu końcowego.
Sugestia – zawiera porady, które można uwzględnić, lecz nie ma takiego obowiązku. Podjęcie niektórych decyzji odnośnie rozwiązań zastosowanych w projekcie jest trudne przy braku doświadczenia. Sugestie dotyczą tworzenia obwodów drukowanych w kwestiach łatwej rekonfiguracji oraz prostego uruchamiania systemu itd.
Specyfikacja VMEbus – terminologia
Zezwolenie – w niektórych sytuacjach reguła nie zabrania szczególnych sposobów projektowania, lecz użytkownik może być zaskoczony że jego podejście będzie naruszać jakąś regułę lub spowoduje niezauważalny problem. Zezwolenie upewnia użytkownika że pewne podejście jest akceptowalne i nie spowoduje problemów. Słowo „may” jest zarezerwowane dla wyrażania zezwolenia i nie może być używane do innych celów. Obserwacja – obserwacje nie dają żadnych określonych rad. Zazwyczaj są naturalnym następstwem dyskusji. Wyjaśniają implementacje pewnych reguł i zwracają uwagę na sytuacje, które mogą być niezauważone. Przemawiają za pewnymi regułami. Tak że projektant może zrozumieć dlaczego dana reguła musi być spełniona. Jakikolwiek tekst, nieoznaczony powyższymi słowami kluczowymi, opisujący strukturę systemu lub jego działanie pisany jest w stylu opisowym lub narracyjnym.
Właściwości VMEbus • Architektura - Master/Slave; • Transfer – Asynchroniczny, multipleksowany i bez multipleksowania – brak
centralnego zegar synchronizującego; • Zakres adresowania:
• 16 bitów (A16, Short I/O); • 24 bity (A24, Standard); • 32 bity (A32, Extended); • 64 bity (A64, Long) – dynamiczny wybór zakresu adresowania.
• Szerokość szyny danych – 8-, 16-, 24-, 32-bity oraz 64-bity (cykle multipleksowane) – dynamiczny wybór szerokość szyny danych;
• Detekcja błędów – przy użyciu sygnału BERR; • Szybkość transmisji – 40 MB/s, 80 MB/s (VME64), 160 MB/s (VME64x); • System przerwań – wielopoziomowy, 7 poziomów ze słowem STATUS/ID; • Wieloprocesorowość – od 1 do 21 procesorów – architektura elastycznej magistrali; • Diagnostyka systemu – przy użyciu sygnałów z UTILITY BUS; • Wsparcie technologii „hot swap” – VME64x; • Rejestry kontrolne i statusu – VME64, VME64x; • Możliwość budowania systemów chłodzonych aktywnie – zgodnie ze specyfikacją
IEEE1101.2; • Mechanizm adresowania geograficznego – VME64x;
Moduły funkcjonalne MASTER – moduł funkcjonalny, który może inicjować cykle przesyłania danych.
Przykładem modułu master może być płyta CPU a także moduł peryferyjny z kontrolerem DMA.
SLAVE – moduł wykrywający cykle generowane na magistrali przez mastera i współuczestniczący w tych cyklach jeśli są adresowane do niego. Przykładowym modułem slave jest karta I/O lub moduł pamięci.
LOCATION MONITOR – obserwuje magistralę i generuje sygnały lokalne, które mogą być wykorzystane w obrębie płyty gdy określone adresy są obecne na magistrali. Moduł ten realizuje również mechanizm rozgłaszania wiadomości do wszystkich modułów dołączonych do magistrali (ang. broadcast). Przykładowym modułem z monitorem adresów jest analizator magistrali.
BUS TIMER – mierzy jak długo przebiega każda transmisja danych na magistrali. Jeśli trwa zbyt długo ustawiany jest sygnał BERR* przerywający cykl. Jest wykorzystywany w zapobieganiu zawieszania się przy długich odwołaniach do modułów pamięci i awariach systemu.
INTERRUPTER – generuje przerwanie wymagające obsługi. W czasie cyklu potwierdzenia przerwania, moduł ten wystawia słowo STATUS/ID (8, 16 lub 32-bitowe) modułowi obsługi przerwania. Moduły te nazywane są inaczej „interrupt requesters”. Przykładem może tu być moduł portów szeregowych, który żąda przerwania po każdym odebranym znaku.
Moduły funkcjonalne
HANDLER – moduł odpowiadający na żądania interrupter’a. Moduł ten musi mieć możliwość transferu danych w trakcie cyklu potwierdzenia przerwania i odczytu słowa STATUS/ID od modułu zgłaszającego przerwanie. Moduły te zazwyczaj występują na płytach CPU.
IACK Daisy-Chain DRIVER – w czasie cyklu potwierdzenia przerwania inicjuje działanie łańcucha IACKIN*/IACKOUT*. Dzięki temu mamy pewność, że tylko jeden moduł żądający odpowie słowem STATUS/ID w przypadku gdy zgłoszeń jest więcej. Moduł ten osadzony jest w slocie 1.
REQUESTER – moduł, którego używają moduły master i interrupt handlers do uzyskania dostępu do szyny transmisji danych. Moduł ten używa szyny arbitrażu transmisji danych do uzgodnień z ARBITREM. ARBITER przydziela magistralę modułowi typu REQESTER, który pozwala modułowi nadrzędnemu użyć magistrali. REQUESTER inaczej nazywany bus requester’em.
Moduły funkcjonalne ARBITER – moduł przyjmujący żądania dostępu do magistrali od
modułu żądającego i przyznaje sterowanie szyną transmisji danych w danym momencie tylko jednemu takiemu modułu;
SYSTEM CLOCK DRIVER – dostarcza stabilnego sygnału zegarowego o częstotliwości 16 MHz (linia SYSCLK) wszystkim modułom dołączonym do magistrali, pomimo tego VMEbus jest asynchroniczna. Zegar nie ma żadnych powiązań z innymi sygnałami magistrali.
SERIAL CLOCK DRIVER – przestarzały moduł funkcjonalny. W rewizjach A, B, C, C.1, IEC821 i IEEE 1014-1987 specyfikacji VMEbus używany był do generowania sygnału zegarowego SERCLK szeregowej magistrali VMSbus. Specyfikacja ANSI/VITA 1-1994 (VME64) redefiniuje sygnały SERCLK i SERDAT jako SERA i SERB. Obecnie linie te mogą być wykorzystywane przez szeroką grupę magistral szeregowych w tym również VMSbus.
POWER MONITOR – moduł odpowiedzialny za generowanie systemowego resetu i monitorowanie systemowego źródła zasilania AC. Moduł ten wystawia sygnały SYSRESET* i opcjonalnie ACFAIL*.
Szyny magistrali VMEbus Szyna transmisji danych używana jest przez moduły typu MASTER do przesyłania danych do/z modułów typu SLAVE. Wykorzystywana jest również przez moduły INTERRUPT HANDLERS do przechwytywania słowa STATUS/ID od układów zgłaszających przerwanie w cyklu potwierdzenia przerwania.
Szyny magistrali VMEbus
Szyna arbitrażu transmisji danych używana jest przez moduły typu MASTER i INTERRUPT HANDLERS do ustalenia dostępu do szyny transmisji danych. Moduł funkcjonalny zwany ARBITREM w połączeniu z sygnałami szyny arbitrażu określa, który moduł uzyskał dostęp do magistrali.
Szyny magistrali VMEbus
System przerwań wykonywany jest poprzez priorytetową szynę przerwań. Możliwe jest używanie siedmiu poziomów przerwań.
Szyna narzędziowa jest zbiorem sygnałów używanych do resetowania systemu, okresowego taktowania, diagnostyki systemu oraz wykrywania awarii zasilania.
Magistrala VMEbus
Z jakimi problemami możemy się spotkać w trakcie projektowania systemów?
Zapewnienie sprawiedliwego dostępu elementom systemu do zasobów magistrali
Magistrala VMEbus
Jak to osiągnąć?
Poprzez odpowiedni wybór algorytmu przydziału zasobów magistrali
Systemy akwizycji danych Arbiter – Round-Robin
Arbiter – oparty na priorytetach
Magistrala VMEbus
Poprzez zastosowanie odpowiedniego algorytmu żądania dostępu do zasobów magistrali:
• RWD – release when done; • ROR – release on request; • FAIR requester;
Magistrala VMEbus
Requester RWD – release when done requester zwalnia zasoby magistrali po zakończeniu cyklu transmisji danych. Zalety: • prosta konstrukcja; Wady: • duże koszty arbitrażu; • mała przepustowości magistrali;
Magistrala VMEbus
Requester ROR – release on request requester zwalnia zasoby magistrali kiedy inny moduł żąda dostępu do nich. Zalety: • sprawdza się w większości zastosowań; • przejrzysty dla użytkownika; • dość szybki; Wady: • koszty arbitrażu znacząco rosną w sytuacji kiedy wiele
modułów master żąda dostępu do magistrali;
Magistrala VMEbus FAIR Requester – request-on-no-request requester zapewnia jednakowy priorytet żądania dostępu do zasobów magistrali wszystkim modułom MASTER. Zalety: • sprawiedliwy dostęp do zasobów magistrali; • stosowany w systemach, w których wiele modułów
master wymaga podobnej stałej przepustowości; • redukuje czas wymagany na ustawienie szyny
arbitrażu Wady: • wszystkie moduły master powinny używać tego
samego typu requestera;
Magistrala VMEbus System przerwań
Obsługa przerwań odbywa się w cyklu potwierdzenia przerwania ang. IACK – Interrupt Acknowledge Cycle. Cykl IACK spełnia dwie istotne funkcje: • arbitraż przerwań; • cykl odczytu słowa STATUS/ID (wektor przerwań);
Interrupter: ROAK – release on acknowledge; RORA – release on register access;
Zalety magistrali VMEbus Możliwość budowy systemów wielokomputerowych; Duży transfer danych do 160MB/s; Architektura 64-bitowa; Kompatybilność wstecz nowych rewizji magistrali; Duża elastyczność systemów opartych na magistrali VMEbus; Łatwa rekonfiguracja systemów oparty na magistrali VMEbus; Wsparcie mechanizmu hot-swap; Sprzętowe moduły utrzymania i testowania magistrali; Duża różnorodność kart rozszerzeń; Możliwość stosowania w jednym systemie modułów różnych producentów.
Komunikacja pomiędzy elementami systemów komputerowych opartych
na standardach przemysłowych
Standard DIMM-PC: magistrala wewnętrzna; wykorzystanie interfejsów szeregowych: RS-232, RS-485, RS-422; wykorzystanie telekomunikacyjnych łączy ISDN; wykorzystanie szybkich uniwersalnych magistral szeregowych: USB, SPI; wykorzystanie łącz: LAN, WAN.
Komunikacja pomiędzy elementami systemów komputerowych opartych na standardach przemysłowych cd.
Standard PC-104 i jego rozszerzenia: magistrale wewnętrzne; wykorzystanie interfejsów szeregowych: RS-232, RS-485, RS-422; wykorzystanie szybkich uniwersalnych magistral szeregowych: USB, SPI; wykorzystanie przemysłowych standardów komunikacyjnych: ASi, CAN, ControlNet, DeviceNet, Hart, InterBus, LonWorks, ModBus, ProfiBus; wykorzystanie łącz: LAN, WAN.
Komunikacja pomiędzy elementami systemów komputerowych opartych na standardach przemysłowych cd.
Standard VMEBus i jego rozszerzenia: magistrale wewnętrzne; wykorzystanie interfejsów szeregowych: RS-232, RS-485, RS-422; wykorzystanie szybkich uniwersalnych magistral szeregowych: USB, SPI; wykorzystanie przemysłowych standardów komunikacyjnych: ASi, CAN, ControlNet, DeviceNet, Hart, InterBus, LonWorks, ModBus, ProfiBus; wykorzystanie łącz: LAN, WAN.
MSP430 Snapshot of Integrated Peripherals
• ADC10 • ADC12 • SD16 • SD24 • Comparator • DAC12 • DMA • Multiplier • OpAmp
•Timers •Watchdog timer WDT • RTC •Brouwnout reset • PMM • SVS • A-POOL • AES • USB
• SPI • I2C • UART • LIN/IrDA • SCAN_IF • ESP430 • LCD • Capacitive Touch
MSP430 Applications Metering Portable Medical Data Logging
Wireless Communications Capacitive Touch Personal Health and Fitness
Energy Harvesting Motor Control Security and Safety
AVR XMEGA Key Features High-precision analog — 12-bit ADCs with gain stage and combined throughput of 4 MSPS. Fast 12-bit DAC with high drive strength, as well as other functions that reduce the need for external components. Real-time performance — The event system facilitates inter-peripheral signaling with 100% predictable response time. To offload the CPU, all peripherals can use DMA for data transfer. Atmel picoPower® technology — True 1.6 volt operation, and 500 nA RTC operation with full SRAM retention for fastest possible wake-up time. High Integration — XMEGA devices integrate AES and DES crypto modules, up to 32 PWM outputs, 8 UART, 4 TWI (I2C) and 4 SPI channels, a CRC generator module, and more. AVR Software Library — A complete library of device drivers and communication stacks save time and development effort so you can focus on more important design tasks. Atmel QTouch® Sensing — QTouch Library support enables you to easily realize robust capacitive touch sensing interfaces for button, sliders and wheels. USB Connectivity — Delivers full-speed operation without the need for external crystals, 31 endpoints, and a special multi-packet function that maximizes data transfer rates while minimizing CPU load.
AVR XMEGA
•1 or 2 ADCs in each device •12-bit resolution •Up to 2 MSPS per ADC •Built-in gain stage •Differential and single-ended input •Integrated temperature sensor
•0 – 4 DAC channels in each device •12-bit resolution •Up to 1MSPS per DAC channels
AVR XMEGA
EVENT SYSTEM
TI DSP C5000 Zalety: bardzo niskie zużycie mocy w trybie standby power 0.15mW; niskie zużycie energii w trybie active power 0.15mW/MHz; (75% dual-MAC, 25% add operation)
wysoki stopień integracji – duża ilość układów peryferyjnych; duża ilość pamięci typu on-chip memory; zaawansowane cyfrowe przetwarzanie sygnałów;