Procesory i komputery przemysłowe - eti.pg.edu.pl - KOMPUTERY... · Architektura dedykowanych...

133
Architektura dedykowanych systemów mikroprocesorowych – komputerowe systemy przemysłowe Mariusz RUDNICKI – [email protected] pok. 753 tel.: 347-26-39

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ść

Czynniki osłabiające

Wady Błędy Awarie

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.

Architektura modułów DIMM-PC – przykładowe rozwiązanie dostępu do urządzeń zewnętrznych

Mechaniczna specyfikacja standardu DIMM-PC

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).

Przykładowe rozwiązania z modułów DIMM-PC

Komputery przemysłowe standardu PC/104 i jego rozszerzeń

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).

Specyfikacja mechaniczna 16- i 8-bitowego modułu PC/104

Konfiguracje mechaniczne systemów opartych na modułach PC/104

Zabudowa mechaniczna systemu opartego na modułach PC/104

System zabudowy PANDORA

Wybrane aplikacje oparte na komputerach PC/104

Echosonda ESDA-16:

Wybrane aplikacje oparte na komputerach PC/104

System stabilizacji położenia anteny sonaru podkilowego MCM:

Wybrane aplikacje oparte na komputerach PC/104

Hydrotelefon HTL-10:

PC/104-Plus

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

Interrupt routing for desktop PC:

PC/104-Plus Signal select on an Expansion Board:

Rotary Switch Settings:

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.

PC/104-Plus specyfikacja mechaniczna

EBX – Embedded Board, eXpandable

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

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.

EBX dopuszczalne wysokości stref

Specyfikacja stref modułu EBX wersja Tall CPU

Specyfikacja stref modułu EBX ze złączem do PC Card

Architektura komputera Embedded Board eXpandable

EPIC – Embedded Platform for Industry ComputingTM

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 mechaniczna i rozkład stref na płycie EPIC

Wysokości stref w standardzie EPIC

Architektura SBC standard EPIC

Data Acqusition System

Komputery przemysłowe standardu VMEbus

Specyfikacja magistrali VMEbus i jej rozszerzenia

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;

Elementy systemu zdefiniowane przez STANDARD

Moduły funkcjonalne i szyny definiowane przez STANDARD

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

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ń

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;

Magistrala VMEbus System przerwań

Sprzęg z magistralą Universe IID

Zastosowanie Universe IID

Sprzęg z magistralą VMEbus Tsi148

Zastosowanie Tsi148

Zastosowania komputerów VME Sonar pasywny SQR-19

Sonar aktywny MG-322

Sonar z anteną opuszczaną OKA-2M/Z

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.

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.

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.

Komunikacja pomiędzy elementami systemów komputerowych opartych na standardach przemysłowych cd.

MSP430 BLOCK DIAGRAM

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

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

AVR XMEGA

Sleep mode Active Sleep mode Power save Sleep mode Power down

AVR XMEGA

Interrupt Controller

AVR XMEGA

Analog Comparators

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;

TI DSP C5000

TI DSP C5000 Application

Pulsoksymetr

TI DSP C5000 Application

Cyfrowy stetoskop

TI DSP C5000 Application Elektrokardiogram

TI DSP C5000 Application

MP3 Player/Recorder

TI C6000 Single Core

TI DSP C6000 Single Core Application

Signal/Waveform Generator

TI DSP C6000 Single Core Application Military: Sonar/Radar

TI DSP C6000 Multicore

TI DSP C6000 Multicore Application High-Speed Data Acquisition and Generation

TI DSP C6000 Multicore Application Military and Avionics Imaging

TI DSP C6000 Multicore Application Military: Munitions and Targeting