PL171677B1 - Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego PL - Google Patents

Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego PL

Info

Publication number
PL171677B1
PL171677B1 PL93299391A PL29939193A PL171677B1 PL 171677 B1 PL171677 B1 PL 171677B1 PL 93299391 A PL93299391 A PL 93299391A PL 29939193 A PL29939193 A PL 29939193A PL 171677 B1 PL171677 B1 PL 171677B1
Authority
PL
Poland
Prior art keywords
data
memory
network
individually
station
Prior art date
Application number
PL93299391A
Other languages
English (en)
Other versions
PL299391A1 (en
Inventor
Warren A Edblad
Linda L Santoline
Gilbert W Remley
Carl J Staab
Albert W Crew
Original Assignee
Westinghouse Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Westinghouse Electric Corp filed Critical Westinghouse Electric Corp
Publication of PL299391A1 publication Critical patent/PL299391A1/xx
Publication of PL171677B1 publication Critical patent/PL171677B1/pl

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Facsimiles In General (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

1. Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego, zawiera- jacej wiele stacji czasu rzeczywistego, z których kazda zawiera centralna jednostke przetwarzajaca, pamiec i siec komunikacyjna laczaca te stacje przez interfejsy sieciowe, znamienny tym, ze zestawia sie powtarzalnie dane w indywidualnie wyrózniane bloki danych zawierajace najnowsze zobrazowanie danych w centralnej jednostce przetwarzajacej w kazdej ze stacji, rozsyla sie kazde powtórzenie kazdego z indy- widualnie wyróznianych bloków danych, zestawio- nego przez kazda stacje, za posrednictwem sieci komunikacyjnej do kazdej innej stacji oraz zapamie- tuje sie w pamieci kazdej stacji kazdy indywidualnie wyrózniony blok danych odebrany z innych stacji za posrednictwem sieci komunikacyjnej pod tym samym indywidualnym adresem w pamieci dla kazdego indy- widualnie wyróznionego bloku danych. FIG. 1 PL

Description

Przedmiotem wynalazku jest sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego, przeznaczony zwłaszcza do zastosowania w rozproszonych systemach przetwarzania danych.
W większości sieci komputerowych dane transmitowane torem informacyjnym łączącym różne stacje sieci, adresowane są do konkretnej jednej lub do wielu stacji. Komunikat jest ignorowany przez pozostałe stacje w sieci, a interfejs sieciowy w zaadresowanej stacji przerywa pracę centralnej jednostki przetwarzającej stacji, która następnie przetwarza komunikat. Często stacja odbiorcza wysyła wstecznie potwierdzenie do stacji nadawczej. W tych systemach komunikat wyróżnia zarówno stację odbiorczą, jak i nadawczą. Taki sposób postępowania jest efektywny w zastosowaniach wymagających łączności interakcyjnej między stacjami.
W rozsyłowych sieciach wielodostępnych informacje nie są adresowane do konkretnej pojedynczej stacji. Każda stacja odbiera wszystkie nadawane dane i zwykle wybiera to, co jest
171 677 jej potrzebne. Wymaga to przetwarzania komunikatu przez centralną jednostkę przetwarzającą stacji odbiorczej. Zwykle w celu zmniejszenia obciążenia sieci dane są rozsyłane wyłącznie w drodze wyjątku. Znaczy to, że komunikat jest wysyłany tylko wtedy, kiedy zmieniła się wartość części danych. Tak więc, na przykład, w sieci sterowania procesami wykonującej różne funkcje za pośrednictwem wielu włączonych do sieci stacji dane rozsyłane są tylko wtedy, kiedy zmieniają się wartości zmiennych. Inne sieci deterministyczne, na przykład automatyczne maszyny giełdowe przyłączone do jednostki centralnej za pośrednictwem sieci, również wysyłają dane tylko wtedy, kiedy występuje potrzeba dokonania operacji. Jednak takie sieci mogą ulegać przeciążeniom przy występowaniu dużych zaburzeń w kontrolowanym procesie lub przy wystąpieniu dużej liczby operacji równocześnie.
Znana jest sieć rozsyłowa opracowana przez zgłaszającego, w której dane z różnych stacji łączone są w pakiety, czyli blok danych, które są nadawane periodycznie, z krótkim przetrzymywaniem, z dużą częstotliwością powtarzania, podczas gdy inne dane, które są mniej krytyczne lub zmieniają się z mniejszą prędkością, transmitowane są w rzadziej rozmieszczonych interwałach czasowych. W tej sieci wszystkie dane transmitowane są powtarzalnie i odbierane przez wszystkie stacje. Każda stacja sprawdza każdy blok odebranych danych i wydziela do zapamiętania tylko te dane, których potrzebuje. Sieć ta obliczonajest na sytuacje najgorszego przypadku i dlatego nie ulega przeciążeniu przy dużych zaburzeniach. Jednak potrzebne jest lokalne przetwarzanie każdego bloku danych w celu wyznaczenia danych do zapamiętania w pamięci tej stacji, co ogranicza prędkość strumienia danych przekazywanych w sieci. Występuje zatem potrzeba opracowania udoskonalonego sposobu rozprowadzania danych sieci rozsyłowej z większą prędkością przekazywania danych, a przy tym nie poddającego się przeciążeniu w sytuacji najgorszego przypadku. Poza tym powinien on zapewniać tego rodzaju komunikację okresową bez obniżenia wydajności w czasie rzeczywistym.
Istotą sposobu rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego, zawierającej wiele stacji czasu rzeczywistego, z których każda zawiera centralną jednostkę przetwarzającą, pamięć i sieć komunikacyjną łączącą te stacje przez interfejsy sieciowe, jest to, że zestawia się powtarzalnie dane w indywidualnie wyróżniane bloki danych zawierające najnowsze zobrazowanie danych w centralnej jednostce przetwarzającej w każdej ze stacji, rozsyła się każe powtórzenie każdego z indywidualnie wyróżnianych bloków danych, zestawionego przez każdą stację, za pośrednictwem sieci komunikacyjnej do każdej innej stacji oraz zapamiętuje się w pamięci każdej stacji każdy indywidualnie wyróżniony blok danych odebrany z innych stacji za pośrednictwem sieci komunikacyjnej pod tym samym indywidualnym adresem w pamięci dla każdego indywidualnie wyróżnionego bloku danych.
Korzystnie według wynalazku na etapie zapamiętywania zapamiętuje się każdy indywidualnie wyróżniony blok danych odebrany z innych stacji za pośrednictwem sieci komunikacyjnej w dostępnej fizycznej przestrzeni adresowej pamięci i przetwarza się dostępną fizyczną przestrzeń adresową na indywidualną wirtualną przestrzeń adresową dla indywidualnie wyróżnionego bloku danych.
Korzystne jest także, gdy przetwarza się wybraną dostępną przestrzeń adresową na indywidualną wirtualną przestrzeń adresową indywidualnie wyróżnionego bloku danych zapamiętanego w tej fizycznej przestrzeni adresowej przez umieszczenie fizycznej przestrzeni adresowej, w której zapamiętane zostało poprzednie powtórzenie indywidualnie wyróżnionego bloku danych, na liście dostępnych fizycznych przestrzeni adresowych.
Dalsze korzyści z wynalazku uzyskuje się, gdy listę dostępnych fizycznych przestrzeni adresowych prowadzi się w interfejsie sieciowym, przy czym indywidualnie wyróżnione bloki danych odebrane za pośrednictwem sieci komunikacyjnej zapamiętuje się w pamięci, zaś wirtualne przestrzenie adresowe przetwarza się na wybrane adresy fizyczne w bloku adresowania pamięci.
Inne korzyści z wynalazku uzyskuje się, gdy centralną jednostkę przetwarzającą każdej sieci programuje się do prowadzenia listy dostępnych fizycznych przestrzeni adresowych i do przetwarzania wirtualnych przestrzeni adresowych na wybrane fizyczne przestrzenie adresowe
171 677 oraz zapamiętuje się indywidualnie wyróżniane bloki danych odebrane za pośrednictwem sieci komunikacyjnej w wybranych fizycznych przestrzeni adresowych.
Zaletą wynalazku jest zapewnienie sprawnego przekazywania strumienia danych, zwłaszcza w rozproszonych sieciach przetwarzania danych. Przekazywanie wszystkich danych czasu rzeczywistego do wszystkich stacji potrzebujących danych czasu rzeczywistego i zapamiętywanie wszystkich nadawanych danych w każdej takiej stacji, niezależnie od tego, czy wszystkie te dane są niezbędne w danej konkretnej stacji, mimo, że może wydawać się nieefektywne w rzeczywistości zwiększa przepustowość dzięki temu, że wymagane jest tylko bardzo nieznaczne przetwarzanie na każdym z końców transmisji. Na końcu nadawczym przekazywany jest cały blok danych. Nie jest potrzebne przetwarzanie w celu określenia, które wartości uległy zmianie. Na końcu odbiorczym nie jest potrzebne przetwarzanie w celu określenia, które dane należy zapamiętać. Zastosowanie zamiast identyfikacji każdego bloku danych przez stację nadawczą i stację odbiorczą bloku zaopatrzonego w indywidualny identyfikator powoduje, że każda stacja odbiorcza zapamiętuje kolejne powtórzenia każdego indywidualnie wyróżnionego bloku danych w tej samej indywidualnie wyróżnionej przestrzeni adresowej w stacji.
Wynalazek zostanie dokładniej objaśniony na podstawie poniższego opisu przykładu wykonania wynalazku i w oparciu o załączone rysunki, na których fig. 1 przedstawia s^heimatycznie system sieci zobrazowania danych czasu rzeczywistego według wynalazku, fig. 2 strukturę indywidualnie wyznaczanych bloków danych, które są transmitowane przez system z fig 1, fig. 3 - schematycznie działanie bloku adresowania pamięci, który stanowi część systemu z fig. 1, przy przenoszeniu wirtualnej przestrzeni adresowej pamięci do fizycznej przestrzeni adresowej pamięci, fig, 4A i 4B - zapamiętywanie w pamięci stacji odbiorczej dwóch kolejnych obrazów konkretnego bloku danych transmitowanych przez sieć stanowiącą część systemu, fig. 5 - sieć działań programu komputerowego dla interfejsu sieci w stacji odbiorczej, realizującego proces z fig. 4A i 4B, fig. 6A i 6B - inne wykonanie wynalazku, służące do zapamiętywania w stacji odbiorczej dwóch kolejnych obrazów indywidualnie wyróżnionych bloków danych transmitowanych przez sieć, fig. 7 - sieć działań odpowiedniego programu komputerowego dla centralnej jednostki przetwarzającej stacji realizującego proces z fig. 6A i 6B, a fig. 8 - sieć działań odpowiedniego programu komputerowego centralnego bloku przetwarzającego stacji do realizacji dostępu do danych zapamiętanych w wykonaniu z fig. 6A, 6B i 7.
Przedstawiony na fig. 1 rozłożony system sterowania procesami bazuje na systemie sieci 1 zobrazowania w czasie rzeczywistym. System 1 zawiera pewną liczbę stacji 3 połączonych siecią komunikacyjną 5. Stacje, czyli jak się je często nazywa końcówki, zawierają, choć nie wyłącznie, bloki przetwarzania danych 3a jednostek sprzężenia człowiek-maszyna 36. W sieć mogą być włączone również inne końcówki, nie wymagające danych czasu rzeczywistego. Bloki 3a połączone są zwykle z urządzeniami fizycznymi przyporządkowanymi kontrolowanemu procesowi. Urządzenia fizyczne obejmują czujniki wejściowe, na przykład termopary 7, oraz elementy wyjściowe, na przykład styki 9. Każdy blok przetwarzania danych 3a zapewnia sterowanie w przyporządkowanej mu pętli przez sprawdzania działania każdej pętli i kontroli, czy wartości odpowiednich zmiennych są zgodne z ich nastawami. Blok przetwarzania danych 3a realizuje to przez wywoływanie algorytmu, który dokonuje przeglądania sygnałów wyjściowych z czujników, porównuje rzeczywiste wartości zmiennych z ich nastawami, dokonuje obliczeń niezbędnych do normalizacji wartości zmiennych do poziomu nastaw i wyprowadza sygnał sterujący do końcowego urządzenia stenującego procesu, na przykład styków 9, które mogą na przykład sterować zawór lub silnik. Tak więc za dane przez system sterujący uważane są fizyczne parametry otoczenia, na przykład poziom czynnika chłodzącego lub przepływ pal iwa. Informacja o zmiennej procesu zapamiętywana jest w bloku przetwarzania danych 3a jako punktowy zapis danych. Informacja w tym zapisie danych może być rozsyłana w sieci komunikacyjnej 5 do wykorzystania do innych stacji, czyli końcówek, lub może być zatrzymywana w końcówce, której jest przyporządkowana. Punktowy zapis danych zawiera informacje jednego z dwóch różnych rodzajów informacji. Jednym z nich jest informacja dynamiczna, która jest funkcją fizyczną sygnałów wejściowych końcówki. Przykładem informacji dynamicznej jest robocza wartość strumienia odczytana z czujnika przepływu 7. Innym rodzajem informacji jest
171 677 informacja statyczna, która zawiera informacje o konfiguracji i inne dane, które zmieniają się rzadko. Przykładem informacji statycznej mogą być stałe przetwarzania, granice alarmowe i opisy strukturalne skojarzone z danymi wejściami analogowymi. Podczas gdy informacja dynamiczna musi być rozsyłana okresowo, dane statyczne rozsyłane są na podstawie zapotrzebowania.
Każdy z bloków przetwarzania danych 3a zawiera centralną jednostkę przetwarzającą CPU 11, która odbiera informację wejściową z czujnika 7, realizuje algorytmy sterowania i steruje elementy wyjściowe 9. Każdy z bloków przetwarzania danych 3a zawiera również interfejs sieciowy 13 między jednostką CPU i 1 i siecią komunikacyjną 5. Każdy z bloków przetwarzania danych 3a zawiera poza tym pamięć 15, która jest rozdzielana między jednostkę CPU 11 i interfejs sieciowy 13.
Blok adresowania pamięci MAU 17 zapewnia odwzorowanie adresów wirtualnych względem fizycznych dla pamięci 15, służącej do zapisu i odczytu danych. Przydzielana pamięć 15 i blok MAU 17 mogą być zrealizowane fizycznie w jednostce CPU 11 lub interfejsie sieciowym 13.
Każda ze stacji, czyli końcówek 3b, interfejsu sprzężenia człowiek-maszyna zawiera stanowisko robocze 19, w którego skład wchodzi ekran 21 do wyświetlania informacji i jednostkę CPU 23. Końcówki 3b zawierają również interfejs sieciowy 13 i przedzielaną pamięć 15 z jej blokiem MAU 17, który z kolei może być zrealizowany fizycznie w stanowisku roboczym 19 lub interfejsie sieciowym 13.
Sieć komunikacyjna 5 zawiera współosiowe, w postaci pary skręconej lub włókna optycznego, kable 25 i 27 przeciągnięte dowolnie między stacjami i zestawione tak, aby zapewnić redundacyjne połączenia komunikacyjne. Na fig. 2 przedstawiono to w postaci dwóch przeciwbieżnych pierścieni.
Każda z końcówek 3 musi być autonomiczna, to znaczy musi mieć możliwość funkcjonowania bez sieci komunikacyjnej 5. Nakłada to warunek, aby baza danych systemu była rozłożona. Dla bloku przetwarzania danych 3a wszystkie jego dane konfiguracyjne muszą być przechowywane wewnętrznie w końcówce, tak że blok przetwarzania danych 3a może rozpoczynać pracę i wykonywać swoje funkcje sterujące bez danych z jakiegokolwiek źródła zewnętrznego. W przypadku interfejsu sprzężenia człowiek-maszyna 3b dane konfiguracyjne muszą być również przepiłowywane wewnętrznie, tak aby końcówka mogła dokonać ponownego uruchomienia. Jednak ponieważ podstawową funkcją interfejsu 3b jest działanie w charakterze sprzężenia maszyna-człowiek, to stanowisko robocze wymaga obecności sieci komunikacyjnej 5 dla otrzymania danych procesu przeznaczonych dla jego ekranów wyświetlających.
W korzystnym wykonaniu sieć komunikacyjna 5 ma architekturę systemu otwartego spełniającego normę FDDI (wymiany danych rozprowadzanych światłowodami). Sieć komunikacyjna 5 zapewnia zarówno łączność indywidualną, jak i łączność ogólnego przeznaczenia. Łączność ogólnego przeznaczenia odbywa się według rozpoznanego protokołu znormalizowanego, na przykład protokołu TPC/IP lub UDP/IP zestawu protokołów Internet, zapisanego w asynchronicznym komunikacie FDDI. Protokół łączności ogólnego przeznaczenia stosowany jest zawsze, kiedy występuje odpowiednia przepustowość. Natomiast protokół łączności indywidualnej, opisany poniżej, wykorzystywany jest do obsługi przesyłania komunikatów, kiedy wymagania przetirzymywania danych uniemożliwiają wykorzystanie protokołu wyższego poziomu, na przykład do przekazywania dynamicznie wskazywanych danych.
Elementy danych systemowych, które transmitowane są przez sieć komunikacyjną 5 nazywane są wskaźnikami sieci. Elementy danych, które są lokowane dla końcówki, nazywane są wskaźnikami lokalnymi. Dane dynamiczne przyporządkowane periodycznym wskaźnikom sieci transmitowane są okresowo, albo z MAŁĄ PRĘDKOŚCIĄ albo z DUŻĄ PRĘDKOŚCIĄ. W wyniku występowania dużej liczby dynamicznych wskaźników danych w systemie i ogólnych wymagań dotyczących przepustowości przy przekazywaniu dynamicznych danych wskaźnikowych, oprogramowanie nadrzędne przyporządkowane przetwarzaniu komunikatów zapobiega transmisji dynamicznych danych wskaźnikowych związanych z periodycznymi wskaźnikami sieci jako komunikatów indywidualnych. Z tego powodu dane dynamiczne przy6
1721 677 porządkowane periodycznym wskaźnikom sieci łączone są w dynamiczne bloki danych (DDB) do transmisji w sieci. Dynamiczny blok danych jest przyporządkowany końcówce, która generuje wskaźniki zawarte wewnątrz bloku i oznaczona jest identyfikatorem liczbowym nie powtarzającym się w systemie. Każdy z dynamicznych bloków danych ma stałą prędkość transmisji (dużą lub małą) i stały rozmiar przydzielonego obszaru pamięci przeznaczonego do jego zapamiętania. Jako periodyczne, wskaźniki sieci są podawane do każdej końcówki 3 i przyporządkowane dynamicznemu blokowi danych i odpowiedniej prędkości transmisji przez tę końcówkę Maksymalne przetrzymywanie przy łączeniu danych dynamicznych jest krytyczne dla poprawnego działania systemu. Z tego powodu transmisja bloków danych dynamicznych odbywa się w postaci synchronicznych ramek FDDI i realizowana jest przez interfejs sieciowy 13 bez interwencji oprogramowania aplikacyjnego. Cała komunikacja ogólnego przeznaczenia realizowana jest w postaci asynchronicznych ramek FDDI.
Strukturę bloku danych dynamicznych DDB 29 przedstawiono na fig. 2. Blok DDB 29 składa się z pola zawierającego indywidualny indeks wyróżniający DDB-ID, część nagłówkową o stałej wielkości wykorzystywaną do sterowania i kontroli stanu oraz część danych zawierającą przyporządkowane dynamiczne wskaźniki danych DDP. Nagłówek zawiera licznik wieku, który jest miarą czasu istnienia DDB. Stacja źródłowa ustawia licznik wieku na próg wiekowy dla DDB. W procesie aplikacyjnym przebiegającym w każdej z końcówek odbiorczych to pole jest okresowo zmniejszane. Jeżeli jego zawartość osiągnie zero, to blok uznany zostaje za stary i nie jest wykorzystywany.
Część aktywna długości nagłówka zawiera liczbę bajtów bloku DDB zawierającego wskaźniki DDB oraz wielkość nagłówka oraz pól ID. Część oznaczająca wersję nagłówka jest uaktualniana za każdym razem po dodaniu wskaźników DDP, po ich modyfikacji lub usunięciu z DDB.
W rozwiązaniu według wynalazku bloki danych dynamicznych DDB, wytwarzane przez każdą stację czasu rzeczywistego, są rozsyłane siecią komunikacyjną do każdej innej stacji czasu rzeczywistego i zapamiętywane w całości w jej pamięci. Podczas gdy w znanych systemach rozsyłowych zwiększenie efektywności uzyskuje się przez zmniejszenie strumienia danych, w systemie według wynalazku w rzeczywistości transmituje się wszystkie dane, do wszystkich stacji czasu rzeczywistego, niezależnie od tego, czy potrzebują one wszystkich wskaźników danych, czy nie. Podstawowym czynnikiem jest tu fakt, że w takim rozwiązaniu nie jest potrzebna, lub jest potrzebna tylko w małym stopniu, obsługa łączności przez jednostkę CPU stacji odbiorczej, co odbywa się przez bezpośrednie zapamiętywanie wszystkich powtarzanych, wyróżnionych, indywidualnie bloków danych w indywidualnie wyróżnionej przestrzeni adresowej w każdej stacji czasu rzeczywistego, tak że indywidualnie wyróżniona przestrzeń adresowa zawiera bieżący, czyli najnowszy, obraz tego bloku danych. Indywidualna przestrzeń adresowa przydzielana jest lokalnie przez stację i nie musi być taka sama w każdej stacji.
Kiedy indywidualnie wyznaczany blok danych dynamicznych odbierany jest w stacji przez interfejs sieciowy 13, zostaje wyróżniony przez interfejs sieciowy spośród komunikatów o niższym poziomie priorytetu. Interfejs sieciowy zawierając procesor prowadzi listę indywidualnych adresów tej stacji dla każdego indywidualnie wyróżnionego bloku danych, W korzystnym ukształtowaniu wynalazku te indywidualne adresy dla indywidualnie wyróżnianych bloków danych dynamicznych są adresami wirtualnymi, a nie absolutnymi adresami fizycznymi w pamięci 15.
Wynalazek w korzystnym wykonaniu minimalizuje obciążenie procesora zarządzającego przez wykorzystanie układu zarządzania pamięcią oraz układów stosowanych w większości komputerów ze zredukowanym zestawem instrukcji RISC współczesnych stanowisk roboczych. Taka realizacja zakłada, że procesor zarządzający 11, 23 wykorzystuje układowy blok 17 adresowania pamięci w celu realizacji przenoszenia wirtualnych przestrzeni adresowych pamięci do odpowiadających im fizycznych przestrzeni adresowych pamięci. Ogólnie biorąc, blok MAU 17 może być zorganizowany w postaci obszaru układowych rejestrów 31 indeksowanych częścią wirtualnego adresu pamięci. Jak to pokazano na fig. 3, rejestr indeksowany zaopatrzony jest w adresy (An-Ai2 w przykładzie z fig. 3) pamięci fizycznej, które układ zestawia z pozostałą częścią
171 677 adresu wirtualnego (An-Ao w tym przykładzie) w celu otrzymania fizycznego adresu pamięci. Zazwyczaj bloki mAu 17 pracują w wielkością pamięci wynoszącą 4096 bajtów, która dobrze dostosowana jest do wielkości bloku DDB wynoszącej 4 K, przy czym każdy z bloków DDB zajmuje pełną stronę. Wielkość bloku DDB może być modyfikowana w celu dopasowania do rozmiaru strony lub wielu stron, które można wykorzystać dla każdego z bloków DDB.
Figura 4A i 4B przedstawiają urządzenie 32, w którym cztery bloki DDB 1-4 są przedstawione jako zapamiętywane na stronach 33 pamięci 15. Dla stanu przedstawionego na fig. 4A blok MAU 17 przetwarza wirtualny adres pamięci dla ostatniego bloku obrazu danych DDB 1 na stronę 45 w pamięci fizycznej. Zobrazowania bloków DDB 2, 3 i 4 przechowywane są, odpowiednio, na stronach 43,48 i 50 w pamięci fizycznej. Interfejs sieciowy 13 przechowuje listę dostępnych stron. W niniejszym przykładzie tymi dostępnymi stronami są w kolejności strony 47, 49, 44 i 46. Przy następnym powtórzeniu pierwszego bloku danych, DDB 1a, odebranego przez interfejs sieciowy w postaci ramki FDDI, interfejs sieciowy 13 automatycznie zapamiętuje to bieżące zobrazowanie pierwszego bloku DDB bezpośrednio na stronie 47 pamięci, pierwszej stronie listy dostępnych stron.
Interfejs sieciowy 13 następnie odwzorowuje blok MAU 17 przedstawiony na fig. 4b w celu wskazania, że najnowsze zobrazowanie pierwszego bloku danych DDB 1 a przechowywane jest na stronie 47. Strona 45 dołączona jest do końca dostępnej listy buforów, a strona 49 przesuwa się na początek listy. Następne zobrazowanie komunikatu (DDBn), zapamiętywane jest na stronie 49, jak to pokazano na fig. 4B. Tak więc dane wejściowe zapamiętywane są w całości na następnej wolnej stronie pamięci 15. Interfejs sieciowy 13 jest obciążany przetwarzaniem w stopniu minimalnym. Procesor zarządzający nie jest w ogóle obciążany, z wyjątkiem sytuacji, kiedy aktualizacja bloków rejestru 31 bloku MAu 17 może wymagać minimalnego działania procesora zarządzającego.
Figura 5 przedstawia sieć działań odpowiedniego programu komputerowego wykonywanego przez interfejs sieciowy 13 przy realizacji procedury przedstawionej na fig. 1A i 1B, jak to oznaczono odnośnikiem 35 na fig. 5, przy odbiorze ramki FDDI uruchamiany jest interfejs sieciowy 13. W punkcie 37 dokonuje się sprawdzenia ważności komunikatu. Jeżeli komunikat nie jest blokiem DDB, jak to pokazano w punkcie 39, to komunikat przepuszczany jest wprost przez punkt 41 do standardowego zestawu protokołu FDDI bez specjalnej obróbki.
Jeżeli komunikat jest blokiem DDB, jak to pokazano odnośnikiem 39, cała ramka przekazywana jest na pierwszą stronę pamięci, na początek listy wolnego bufora, a ten bufor usuwany jest z listy wolnych buforów w miejscu oznaczonym 43. Odpowiadający blokowi MAU rejestr 46 aktualizowany jest w punkcie 45 zawartością nowoodebranego bufora z wykorzystaniem indywidualnego numeru identyfikacyjnego bloku DDB z odebranego komunikatu.
Strona pamięci, która została usunięta z rejestru MAU, dołączana jest na koniec listy wolnych stron w miejscu 47, a rejestr sieciowy oddaje sterowanie procesorowi nadrzędnemu oczekując na następną ramkę FDDI w miejscu 49.
Inna realizacja 52 wynalazku nie wykorzystuje bloku MAU 17, jednak obciąża wykonaniem procesor nadrzędny. W tej realizacji 52, która przedstawiona jest w charakterze przykładu na fig. 6A i 6B, odebranie nowego zobrazowania bloku DDB sterowane jest przez procedurę obsługi urządzenia FDDI, rezydującą w oprogramowaniu procesora zarządzającego. Ten program obsługi urządzenia FDDI potrzebny jest do prowadzenia listy wolnych stron w tablicy 51, z której wybiera on następną dostępną stronę. Każdy dostęp aplikacyjny do danych odbywa się bezpośrednio, przez dojście do adresu bazowego strony zaadresowanej na podstawie tablicy 53, która indeksowana jest przez liczbę bloków DDB. Procedura aplikacyjna musi następnie wyliczyć odpowiedni adres przydzielonej pamięci przez połączenie adresu bazowego z przesunięciem na stronie. To obliczenie musi zostać wykonane przed każdym odczytem lub zapisem do bloku DDB.
Jak to pokazano na fig. 6A, interfejs sieciowy 13 odbierając nowy obraz DDB la pierwszego komunikatu, zapamiętuje go bezpośrednio w przydzielonej pamięci pod adresem bazowym 4000i6 pierwszej wolnej strony na liście wolnych stron. Podczas tej operacji realizowany proces przy dostępie do danych pobiera dane zawarte w ostatnim zobrazowaniu pierwszego komunikatu DDB 1. Dostęp ten realizowany jest przez indeksowanie identyfikatora DDB_ID tablicy 53 w celu otrzymania bieżącego adresu bazowego (2000ió) przez obliczenie z niego przesunięcia i dojście do strony 33 przydzielonej pamięci w celu pobrania danych. Po zakończeniu odbioru całego bloku DDB 1a sterownik urządzenia musi zastąpić adres bazowy nowoodebranego obrazu bloku DDB la przez stronę zawartą w znajdującym się DDB_lD tablicy 53 indeksie 1 ,jak to pokazano na fig. 6B. Strona 2000i6, adres poprzedniego zobrazowania DDB 1 poprzedniego komunikatu, dodawana jest do dołu listy 51 wolnych stron. Fig. 6B pokazuje również inne zobrazowanie komunikatu DDBn, zapamiętane przez interfejs sieciowy 13 na stronie 6000i6, którego adres został przesunięty na początek listy 51 wolnych stron.
Figura 7 przedstawia sieć działań zarządzającej jednostki CPU przy wykonywaniu powyższych etapów odmiany wykonania wynalazku. Oprogramowanie sterownika w zarządzającej jednostce CPU uruchamiane jest po otrzymaniu ważnej ramki FDDI wskazanej odnośnikiem 55. Sprawdzenie ważności wykonane jest przez interfejs sieciowy 13. Jeżeli odebrano adres wieloprzeznaczeniowy i indywidualny identyfikator protokołu wskazany odnośnikiem57, który nie jest pakietem DDB, to ramka nie-DDB przechodzi wprost do zestawu protokołu znormalizowanego bez specjalnej obróbki, jak to wskazano odnośnikiem 59.
Jeżeli jest on DDB, jak to oznaczono odnośnikiem 57, to cała ramka przekazywana jest na stronę pamięci, do nagłówka listy wolnych buforów, i ten bufor jest usuwany z listy wolnych buforów w miejscu 60. Zawartość tablicy 53 w miejscu wskazanym przez pole DDB_ID z odebranej ramki zostaje zmieniona na adres strony, gdzie ramka została właśnie zapamiętana, jak to pokazano odnośnikiem 61. Strona pamięci zastąpiona w tablicy 53 dołączana jest do końca listy wolnych stron, jak to wskazano odnośnikiem 63. Następnie odbywa się wyjście z procedury w miejscu oznaczonym 65 do oczekiwania na następną ramkę FDDI w celu ponownego uruchomienia sterownika.
W przypadku odmiany wynalazku przedstawionej na fig. 6A, 6B i 7, oprogramowanie aplikacyjne wykorzystuje procedurę przedstawioną na sieci działań stanowiącej fig. 8 w celu zapewnienia dostępu do zawartości bloku DDB. Dlatego, kiedy program aplikacyjny żąda dostępu do zawartości bloku DDB, jak to wskazano odnośnikiem 67, to indywidualny indeks ID bloków DDB wykorzystywany jest do wskazania tablicy 53 identyfikatorów DDB_ID, jak to pokazano odnośnikiem 69. Przy wykorzystaniu adresu odczytanego z tablicy 51 identyfikatorów DDB_ID przesunięcie wewnątrz tego bloku danych dla konkretnej wartości parametru wymaganego przez proces aplikacyjny jest dodawane w celu otrzymania rzeczywistego adresu pamięci, jak to wskazano odnośnikiem 61. Adres pamięci komputera następnie pobierany jest w punkcie oznaczonym odnośnikiem 73 w celu otrzymania potrzebnej danej, która zwracana jest do procesu aplikacyjnego w miejscu oznaczonym 75.
171 677
POLE
ID
NAGŁÓWEK
DDB
CZĘSC DDP Z DDB
DDB-ID
LICZNIK WIEKU DŁUGpgC AKTYWNA
WERSJA DDB
FIG. 2
ADRES PAMIĘCI WIRTUALNEJ
A|2 A||
REJESTRY ODWZOROWUJĄCE
BLOK ADRESOWANIA PAMIĘCI (MAU) PI3 PI2
ADRES PAMIĘCI FIZYCZNEJ
-VFIG. 3
171 677
FIG.4A
171 677
FIG.4B
NORMALNE
PRZETWARZANIE
FIG.5
171 677
TABLICA
DDB-ID
4000
5000
6000
7000
FIG.6A
TABLICA
Ddb_id
FIG.6B
171 677
FIG.7
FIG.8
171 677
FIG. I
I
INTERFEJS c τ τζγ1 τ r»rjv INTERFEJS
O1ŁŁ1UWI »
I3-Q
mem X17 MAU|
-L_L'
CPU
Departament Wydawnictw UP RP. Nakład 90 egz. Cena 4,00 zł

Claims (5)

  1. Zastrzeżenia patentowe
    1. Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego, zawierającej wiele stacji czasu rzeczywistego, z których każda zawiera centralną jednostkę przetwarzającą, pamięć i sieć komunikacyjną łączącą te stacje przez interfejsy sieciowe, znamienny tym, że zestawia się powtarzalnie dane w indywidualnie wyróżniane bloki danych zawierające najnowsze zobrazowanie danych w centralnej jednostce przetwarzającej w każdej ze stacji, rozsyła się każde powtórzenie każdego z indywidualnie wyróżnianych bloków danych, zestawionego przez każdą stację, za pośrednictwem sieci komunikacyjnej do każdej innej stacji oraz zapamiętuje się w pamięci każdej stacji każdy indywidualnie wyróżniony blok danych odebrany z innych stacji za pośrednictwem sieci komunikacyjnej pod tym samym indywidualnym adresem w pamięci dla każdego indywidualnie wyróżnionego bloku danych.
  2. 2. Sposób według zastrz. 1, znamienny tym, że na etapie zapamiętywania zapamiętuje się każdy indywidualnie wyróżniony blok danych odebrany z innych stacji za pośrednictwem sieci komunikacyjnej w dostępnej fizycznej przestrzeni adresowej pamięci i przetwarza się dostępną fizyczną przestrzeń na indywidualną wirtualną przestrzeń adresową dla indywidualnie wyróżnionego bloku danych.
  3. 3. Sposób według zastrz. 2, znamienny tym, że przetwarza się wybraną dostępną przestrzeń adresową na indywidualną wirtualną przestrzeń adresową indywidualnie wyróżnionego bloku danych zapamiętanego w tej fizycznej przestrzeni adresowej przez umieszczenie fizycznej przestrzeni adresowej, w której zapamiętane zostało poprzednie powtórzenie indywidualnie wyróżnionego bloku danych, na liście dostępnych fizycznych przestrzeni adresowych.
  4. 4. Sposób według zastrz. 3, znamienny tym, że listę dostępnych fizycznych przestrzeni adresowych prowadzi się w interfejsie sieciowym, przy czym indywidualnie wyróżnione bloki danych odebrane za pośrednictwem sieci komunikacyjnej zapamiętuje się w pamięci, zaś wirtualne przestrzenie adresowe przetwarza się na wybrane adresy fizyczne w bloku adresowania pamięci.
  5. 5. Sposób według zastrz. 3, znamienny tym, że centralnąjednostkę przetwarzającą każdej sieci programuje się do prowadzenia listy dostępnych fizycznych przestrzeni adresowych i do przetwarzania wirtualnych przestrzeni adresowych na wybrane fizyczne przestrzenie adresowe oraz zapamiętuje się indywidualnie wyróżniane bloki danych odebrane za pośrednictwem sieci komunikacyjnej w wybranych fizycznych przestrzeni adresowych.
PL93299391A 1992-06-19 1993-06-18 Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego PL PL171677B1 (pl)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US90145492A 1992-06-19 1992-06-19

Publications (2)

Publication Number Publication Date
PL299391A1 PL299391A1 (en) 1994-02-21
PL171677B1 true PL171677B1 (pl) 1997-06-30

Family

ID=25414226

Family Applications (1)

Application Number Title Priority Date Filing Date
PL93299391A PL171677B1 (pl) 1992-06-19 1993-06-18 Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego PL

Country Status (7)

Country Link
US (1) US5864680A (pl)
JP (1) JPH0695986A (pl)
CN (1) CN1049059C (pl)
DE (1) DE4319912B4 (pl)
ES (1) ES2076091B1 (pl)
GB (1) GB2268035B (pl)
PL (1) PL171677B1 (pl)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9405914D0 (en) 1994-03-24 1994-05-11 Discovision Ass Video decompression
US6330665B1 (en) 1992-06-30 2001-12-11 Discovision Associates Video parser
DE69229338T2 (de) 1992-06-30 1999-12-16 Discovision Associates, Irvine Datenpipelinesystem
US6263422B1 (en) 1992-06-30 2001-07-17 Discovision Associates Pipeline processing machine with interactive stages operable in response to tokens and system and methods relating thereto
GB2288520B (en) * 1994-03-24 1998-10-14 Discovision Ass Pipeline
US6079009A (en) 1992-06-30 2000-06-20 Discovision Associates Coding standard token in a system compromising a plurality of pipeline stages
US7095783B1 (en) 1992-06-30 2006-08-22 Discovision Associates Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto
US5768561A (en) 1992-06-30 1998-06-16 Discovision Associates Tokens-based adaptive video processing arrangement
US6112017A (en) 1992-06-30 2000-08-29 Discovision Associates Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus
US6067417A (en) 1992-06-30 2000-05-23 Discovision Associates Picture start token
US5784631A (en) 1992-06-30 1998-07-21 Discovision Associates Huffman decoder
US5809270A (en) 1992-06-30 1998-09-15 Discovision Associates Inverse quantizer
US5821885A (en) 1994-07-29 1998-10-13 Discovision Associates Video decompression
US6047112A (en) 1992-06-30 2000-04-04 Discovision Associates Technique for initiating processing of a data stream of encoded video information
US5699544A (en) 1993-06-24 1997-12-16 Discovision Associates Method and apparatus for using a fixed width word for addressing variable width data
US5805914A (en) 1993-06-24 1998-09-08 Discovision Associates Data pipeline system and data encoding method
US5861894A (en) 1993-06-24 1999-01-19 Discovision Associates Buffer manager
CA2145379C (en) 1994-03-24 1999-06-08 William P. Robbins Method and apparatus for addressing memory
CA2145365C (en) 1994-03-24 1999-04-27 Anthony M. Jones Method for accessing banks of dram
CA2145361C (en) 1994-03-24 1999-09-07 Martin William Sotheran Buffer manager
FR2719433B1 (fr) * 1994-04-29 1996-07-05 Renault Procédé de transmission de messages entre modules d'un réseau multiplexe.
GB9417138D0 (en) 1994-08-23 1994-10-12 Discovision Ass Data rate conversion
US6285373B1 (en) * 1996-03-29 2001-09-04 3Dlabs Inc. Ltd. Method and apparatus for texture transmission and storage
US5911044A (en) * 1996-11-08 1999-06-08 Ricoh Company, Ltd. Network image scanning system which transmits image information from a scanner over a network to a client computer
US6571273B1 (en) * 1998-07-13 2003-05-27 Yokogawa Electric Corporation Process control system
JP3387041B2 (ja) * 1999-09-30 2003-03-17 富士通株式会社 プロトコル変換装置、通信装置、通信プログラム記憶媒体、および通信システム
US6301610B1 (en) * 2000-02-11 2001-10-09 Union Switch & Signal, Inc. Communication system
US6775831B1 (en) * 2000-02-11 2004-08-10 Overture Services, Inc. System and method for rapid completion of data processing tasks distributed on a network
US7298975B2 (en) * 2000-07-13 2007-11-20 L-3 Communications Integrated Systems L.P. Synchronous collapsed ring architecture for real-time signal switching and distribution
US7054951B1 (en) * 2001-07-02 2006-05-30 Cisco Technology, Inc. Plug and play node addition in a dual ring topology network using locally significant ring identifiers for determining routing decisions
US6839706B2 (en) * 2001-08-06 2005-01-04 Lefthand Networks, Inc. Block data storage within a computer network
CN1299519C (zh) * 2004-01-12 2007-02-07 华为技术有限公司 一种utran协作寻呼中的分布式数据存储处理方法
EP1890434B1 (en) * 2005-05-31 2019-07-24 NEC Corporation Packet ring network system and packet transfer method
US8102552B2 (en) * 2008-04-03 2012-01-24 Sharp Laboratories Of America, Inc. Performance monitoring and control of a multifunction printer
US8392924B2 (en) * 2008-04-03 2013-03-05 Sharp Laboratories Of America, Inc. Custom scheduling and control of a multifunction printer
US8373708B2 (en) * 2008-07-30 2013-02-12 Nvidia Corporation Video processing system, method, and computer program product for encrypting communications between a plurality of graphics processors
US8319780B2 (en) * 2008-07-30 2012-11-27 Nvidia Corporation System, method, and computer program product for synchronizing operation of a first graphics processor and a second graphics processor in order to secure communication therebetween
US9351077B1 (en) 2014-12-11 2016-05-24 L-3 Communications Integrated Systems Lp Systems and methods for independent and control-isolated audio processing (ICIAP)

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4646290A (en) * 1984-08-03 1987-02-24 National Information Utilities Corp. Data transmission method and apparatus
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
CA1246681A (en) * 1985-01-30 1988-12-13 Northern Telecom Limited Terminal address assignment in a broadcast transmission system
EP0228078B1 (en) * 1985-12-27 1992-03-11 Kabushiki Kaisha Toshiba Limited multicast communication method and communication network system realizing the method
EP0255767A3 (en) * 1986-07-31 1990-04-04 AT&T Corp. Selective broadcasting arrangement for local area networks
US4843542A (en) * 1986-11-12 1989-06-27 Xerox Corporation Virtual memory cache for use in multi-processing systems
US4926375A (en) * 1987-05-05 1990-05-15 Ge Fanuc Automation North America, Inc. Multiple nodes broadcast communication method with receiver identification by bit position in transferred massage
GB2205018B (en) * 1987-05-21 1992-01-02 Reuters Ltd Method and system for dynamically controlling the content of a local receiver data base from a transmitted data base in an information retrieval communication
US5179665A (en) * 1987-06-24 1993-01-12 Westinghouse Electric Corp. Microprocessor information exchange with updating of messages by asynchronous processors using assigned and/or available buffers in dual port memory
US4807224A (en) * 1987-08-21 1989-02-21 Naron Steven E Multicast data distribution system and method
JPS6489737A (en) * 1987-09-30 1989-04-04 Toshiba Corp Multiple address communication data transmission system
US4866704A (en) * 1988-03-16 1989-09-12 California Institute Of Technology Fiber optic voice/data network
US5142623A (en) * 1988-06-10 1992-08-25 Westinghouse Electric Corp. High performance memory imaging network for a real time process control system
US5036518A (en) * 1988-11-02 1991-07-30 Tseung Lawrence C N Guaranteed reliable broadcast network
US5117350A (en) * 1988-12-15 1992-05-26 Flashpoint Computer Corporation Memory address mechanism in a distributed memory architecture
US5163131A (en) * 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
DE69108900D1 (de) * 1990-01-30 1995-05-18 Johnson Service Co Vernetztes betriebsmittelverwaltungssystem.
DE4010266A1 (de) * 1990-03-30 1991-10-02 Asea Brown Boveri Verfahren zur gesicherten informationsuebertragung
EP0459756A3 (en) * 1990-05-29 1994-06-15 Advanced Micro Devices Inc Fiber distributed data interface network
US5043981A (en) * 1990-05-29 1991-08-27 Advanced Micro Devices, Inc. Method of and system for transferring multiple priority queues into multiple logical FIFOs using a single physical FIFO
US5282270A (en) * 1990-06-06 1994-01-25 Apple Computer, Inc. Network device location using multicast
US5297257A (en) * 1991-04-15 1994-03-22 Allen-Bradley Company, Inc. Distributing a real-time control program to a plurality of input/output nodes
US5327468A (en) * 1992-06-19 1994-07-05 Westinghouse Electric Corp. Synchronization of time-of-day clocks in a distributed processing network system
US5305314A (en) * 1992-06-19 1994-04-19 Westinghouse Electric Corp. Global load smoothing in a real time data imaging network system

Also Published As

Publication number Publication date
ES2076091A2 (es) 1995-10-16
CN1049059C (zh) 2000-02-02
GB2268035B (en) 1996-05-08
ES2076091R (pl) 1997-05-01
DE4319912B4 (de) 2007-05-16
GB9312417D0 (en) 1993-07-28
JPH0695986A (ja) 1994-04-08
DE4319912A1 (de) 1993-12-23
ES2076091B1 (es) 1997-12-01
GB2268035A (en) 1993-12-22
PL299391A1 (en) 1994-02-21
CN1081007A (zh) 1994-01-19
US5864680A (en) 1999-01-26

Similar Documents

Publication Publication Date Title
PL171677B1 (pl) Sposób rozprowadzania danych w sieci obrazowania danych czasu rzeczywistego PL
US6971098B2 (en) Method and apparatus for managing transaction requests in a multi-node architecture
EP0365731B1 (en) Method and apparatus for transferring messages between source and destination users through a shared memory
US6480500B1 (en) Arrangement for creating multiple virtual queue pairs from a compressed queue pair based on shared attributes
US5195181A (en) Message processing system having separate message receiving and transmitting processors with message processing being distributed between the separate processors
US4926375A (en) Multiple nodes broadcast communication method with receiver identification by bit position in transferred massage
JP2983167B2 (ja) ネットワーク・インタフェース装置およびネットワーク・インタフェースにおけるパケット処理方法
US6307789B1 (en) Scratchpad memory
US5109486A (en) Distributed computer system with network and resource status monitoring
US5592625A (en) Apparatus for providing shared virtual memory among interconnected computer nodes with minimal processor involvement
US4942552A (en) Method and apparatus for saving and performing industrial control commands
KR970029126A (ko) 멀티프로세서 시스템
US4649384A (en) Method and apparatus for fault tolerant serial communication of digital information
US5293487A (en) Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting
US20090282179A1 (en) Method and system of grouping interrupts from a time-dependent data storage means
US6408365B1 (en) Multiprocessor system having means for arbitrating between memory access request and coherency maintenance control
JPH06274463A (ja) データ通信システム
US6675239B1 (en) Method and apparatus for providing commands to a command memory
Bryant et al. The DECNIS 500/600 multiprotocol bridge/router and gateway
JP2924783B2 (ja) リモートリード処理方法およびその装置
US5592680A (en) Abnormal packet processing system
JP3058010B2 (ja) プロセッサ間通信方法及び装置
JP2984594B2 (ja) マルチクラスタ情報処理システム
JP3056348B2 (ja) ブリッジ装置および記憶手段管理方法
JP2723245B2 (ja) ファクシミリ蓄積交換装置