PROBLEMATYKA STOSOWANIA
NOWOCZESNYCH PAMIĘCI CYFROWYCH W SYSTEMACH REJESTRACJI
PARAMETRÓW LOTU
Przemysław Kordowski
1a, Wiesław Cuper
1b, Mirosław Nowakowski
1c1Zakład Samolotów i Śmigłowców, Instytut Techniczny Wojsk Lotniczych
aprzemyslaw.kordowski@itwl.pl, bseaspider@wp.pl, cmiroslaw.nowakowski@itwl.pl
Streszczenie
Artykuł przedstawia ogólną problematykę stosowania nowoczesnych pamięci nieulotnych w systemach rejestracji parametrów lotu. We wstępie zawarte jest porównanie działania współczesnych układów flash pod kątem wyma- gań stawianych nowoczesnym rejestratorom katastroficznym. Następnie opisane są opracowane algorytmy, które pozwalają na zastosowanie pamięci cyfrowych w układach wymagających niezawodności i rzetelności przechowy- wanych informacji. Dodatkowo uwidoczniony jest dynamiczny rozwój pamięci cyfrowych oraz funkcjonalność współcześnie stosowanych układów. Treść referatu jest oparta na doświadczeniach pozyskanych podczas procesu projektowania systemów rejestracji parametrów lotu w Instytucie Technicznym Wojsk Lotniczych (ITWL).
Słowa kluczowe: rejestrator, katastroficzny, NAND, SLC, FLASH
APPLICATION OF MODERN DIGITAL MEMORY IN FLIGHT DATA RECORDERS
Summary
The article presents generic issues related with application of modern non-volatile memory in flight data recorders. Preface contains comparison of modern flash chips with respect to requirements of modern flight recorders. Afterwards the lecture describes the developed algorithms that allows to appliance of digital memory into systems requiring high reliability and integrity of stored data. In addition it presenting development of digital storage focused on new functionality. The content of the paper is based on the experience gained during the design process of flight data recorders in the Air Force Institute of Technology.
Keywords: crash, flight, recorder, NAND, SLC, FLASH
1. WSTĘP
Dynamiczny rozwój technologii w dziedzinie elektroniki cyfrowej pozwala na unowocześnienie dotychczasowych rozwiązań stosowanych w lotniczych urządzeniach pokładowych. Zmiany konstrukcyjne w systemach rejestracji parametrów lotu są ograniczone poprzez obostrzenia prawne i normy, które ściśle definiują wy- magania, jakie muszą zostać spełnione. Spowodowane jest to rygorystycznymi wymogami jakościowymi
i niezawodnościowymi, jakimi musi charakteryzować się rejestrator katastroficzny. Niemniej jednak, aby sprostać oczekiwaniom użytkowników eksploatujących nowocze- sne statki powietrzne, należy dokonać zwiększania obszaru zapisu w systemach rejestracji parametrów lotu.
Zgodnie z punktem 2-1.2 normy ED-112
Crash Protected Airborne Recorder Systems) rejestrator musi posiadać cyfrową metodę zapisu danych. Oczywisty jest fakt, że zastosowana pamięć musi mieć charakter nieulotny. Pamięci flash są obecnie szeroko stosowanymi układami spełniającymi przytoczone wymagania, zast piły one wcześniej używane pamięci nieulotne. W zale ności od wykorzystanego typu bramki logicznej możemy wyróżnić dwa rodzaje pamięci flash:
• NOR – wykorzystuje funktor binegacji logic nej,
• NAND – wykorzystuje funktor dysjunkcji l gicznej.
Pamięci NOR i NAND różnią się między sobą zasadn czo w dwóch istotnych kwestiach. Połączeniami między poszczególnymi komórkami pamięci oraz sposobem komunikacji z urządzeniem sterującym. W technice komputerowej pamięci NAND stosowane są w rozwiąz niach, w których istnieje potrzeba przechowywania znacznych ilości danych, charakteryzujących się dużą szybkością zapisu i odczytu. Pamięci NOR wykorzyst wane są wszędzie tam, gdzie istnieje potrzeba szybkiego dostępu do poszczególnych komórek pamięci. Systemy rejestracji parametrów lotu charakteryzują się dużą liczbą danych zapisywanych sekwencyjnie, co bardzo dobrze wpisuje się w charakter pracy pamięci NAND.
Pamięci flash dzielą się również pod względem zastos wanej struktury komórki pamięci. Producenci oferują pamięci SLC, MLC oraz TLC. Komórki pamięci SLC (ang. single-level cell) mogą znajdować się w dwóch stanach logicznych, przechowując tylko jeden bit info macji. Natomiast komórki pamięci MLC (ang. multi level cell) i TLC (triple level cell) przechowują kolejno dwa i trzy bity informacji. Większe zagęszczenie info macji w pojedynczej komórce pamięci wpływa na redu cję kosztów oraz na możliwość znaczącego zminiatur zowania układów. Pamięci SLC charakteryzują się jednak dużo większą szybkością zapisu i odczytu, wię szą żywotnością pamięci oraz większą wiarygodnością przechowywanych danych, co jest niezwykle istotne w systemach rejestracji parametrów lotu. Struktura przedstawianych układów oprócz przestrzeni pamięci posiada wbudowany kontroler, który w najprostszej wersji umożliwia zapisywanie i odczytywanie danych za pomocą charakterystycznej magistrali równoległej.
Pamięci wyposażone w taki kontroler nazywane są „Raw NAND”. Odwrotnością są układy „Fully Managed NAND”, które można porównać do karty pamięci w stępującej w postaci monolitycznego układu scalonego.
W ostatnim czasie wyróżnia się również hybrydę naz waną „On-die ECC NAND”, w której
1minimum operational performance standard
112 [1] (MOPS1 for Crash Protected Airborne Recorder Systems) rejestrator musi posiadać cyfrową metodę zapisu danych. Oczywisty jest fakt, że zastosowana pamięć musi mieć charakter są obecnie szeroko stosowanymi dami spełniającymi przytoczone wymagania, zastą- piły one wcześniej używane pamięci nieulotne. W zależ- ności od wykorzystanego typu bramki logicznej możemy
wykorzystuje funktor binegacji logicz-
funktor dysjunkcji lo-
Pamięci NOR i NAND różnią się między sobą zasadni- czo w dwóch istotnych kwestiach. Połączeniami między poszczególnymi komórkami pamięci oraz sposobem komunikacji z urządzeniem sterującym. W technice tosowane są w rozwiąza- niach, w których istnieje potrzeba przechowywania
charakteryzujących się dużą szybkością zapisu i odczytu. Pamięci NOR wykorzysty-
gdzie istnieje potrzeba szybkiego h komórek pamięci. Systemy rejestracji parametrów lotu charakteryzują się dużą danych zapisywanych sekwencyjnie, co bardzo dobrze wpisuje się w charakter pracy pamięci NAND.
lash dzielą się również pod względem zastoso- ki pamięci. Producenci oferują pamięci SLC, MLC oraz TLC. Komórki pamięci SLC level cell) mogą znajdować się w dwóch przechowując tylko jeden bit infor- macji. Natomiast komórki pamięci MLC (ang. multi- ple level cell) przechowują kolejno dwa i trzy bity informacji. Większe zagęszczenie infor- macji w pojedynczej komórce pamięci wpływa na reduk- cję kosztów oraz na możliwość znaczącego zminiatury- zowania układów. Pamięci SLC charakteryzują się
szą szybkością zapisu i odczytu, więk- szą żywotnością pamięci oraz większą wiarygodnością
co jest niezwykle istotne systemach rejestracji parametrów lotu. Struktura przedstawianych układów oprócz przestrzeni pamięci który w najprostszej wersji umożliwia zapisywanie i odczytywanie danych za pomocą charakterystycznej magistrali równoległej.
Pamięci wyposażone w taki kontroler nazywane są „Raw NAND”. Odwrotnością są układy „Fully Managed karty pamięci wy- o układu scalonego.
ostatnim czasie wyróżnia się również hybrydę nazy- wykorzystuje się
performance standard
wbudowane funkcje systemu kodowania korekcyjnego ECC (ang. Error Checking and Correction, Error Co rection Code), natomiast zarządzanie błędnymi blokami oraz równoważeniem zużycia (ang. Wear Leveling) musi być zapewnione przez kontroler ze
pamięci NAND pod względem zaawansowania kontrolera znajduje się na rys. 1.
Rys. 1. Porównanie pamięci NAND pod względem zaawans wania kontrolera
wbudowane funkcje systemu kodowania korekcyjnego and Correction, Error Cor- Code), natomiast zarządzanie błędnymi blokami oraz równoważeniem zużycia (ang. Wear Leveling) musi być zapewnione przez kontroler zewnętrzny. Porównanie zaawansowania kontrolera
pod względem zaawanso-
2. WYBÓR ODPOWIEDNIEJ PAMIĘCI NIEULOTNEJ
Uzasadnienie wyboru układu SLC NAND flash bezpośrednio z przedstawionej części wstępnej
jącej opis różnic wynikających z budowy poszczególnych rodzajów pamięci. Parametrami kluczowymi podczas podjęcia decyzji okazały się wiarygodność i trwałość zapisywanych informacji, wysoka odporność temperat rowa układów oraz duża pojemność. Ze względu na potrzebę jak największej bezpośredniej kontroli nad układem pamięci wyklucza się stosowanie układów fully Managed NAND, mimo iż pozwalają one na bardzo łatwe użycie oraz znaczące uproszczenie kontrolera nadrzędnego. Układy tego typu są bardziej wrażliwe na uszkodzenia oraz w sytuacji niepoprawnej pracy w wnętrznego kontrolera odzyskanie jakichkolwiek danyc z pamięci może okazać się niemożliwe. Wyjątkiem są układy hybrydowe wyposażone w zabu
kodowania korekcyjnego „On-die ECC”.
umożliwia dokonywanie bezpiecznych, wewnętrznych operacji kopiowania, co okazuje się bardzo przydatną cechą. Ostatecznie podjęto decyzje o zastosowaniu układów pamięci SLC NAND firmy Micron charakter zującymi się największą odpornością temperaturową.
Pamięci działają poprawnie w zakresie temperatur od 40 C do +105 C, posiadają od 256 MB do 2GB pojemności.
3. STRUKTURA PROGRAMU
Złożoność opracowanego oprogramowania jest zdeterm nowana wysokimi wymaganiami niezawodnościowymi.
Duży wpływ na ostateczny kształt algorytmów steruj cych miał również dobór konkretnego układu
jak i postać pozostałych elementów sytemu rejestracji parametrów lotu. Opracowane oprogramowanie zostało podzielone na trzy abstrakcyjne warstwy przedstawione na rys. 2. Warstwa zanjdująca się najbliż
pamięci realizuje operacje związane z obsługą uszkodzonych bloków, zarządza zrównoważeniem
oraz zapewnia dostęp zarówno do rejestrów konfiguracyjnych układów NAND jak i do s przestrzeni pamięci nieulotnej. Kolejną
oprogramowania nazywaną „systemem zapisów” można porównać do komputerowgo sytemu plików z tą różnicą, że jest ona zoptymalizowana pod kątem bezpieczeństwa i wiarygodności zapisywanych informacji. Dodadkowo opracowany system pozwala na optymalne wykorzystanie pamięci oraz na znaczące zminimalizowanie czasu, w którym dane są przechowywane w buforach układu sterującego mechanizm pozwala na poprawny zapis parametrow przesłanych tuż przed kastastrofą. Kolejną
istotną, cechą opracowanych algorytmów jest możliwość
WYBÓR ODPOWIEDNIEJ PAMIĘCI NIEULOTNEJ
SLC NAND flash wynika części wstępnej, zawiera- opis różnic wynikających z budowy poszczególnych rodzajów pamięci. Parametrami kluczowymi podczas okazały się wiarygodność i trwałość zapisywanych informacji, wysoka odporność temperatu- rowa układów oraz duża pojemność. Ze względu na
ebę jak największej bezpośredniej kontroli nad układem pamięci wyklucza się stosowanie układów fully pozwalają one na bardzo łatwe użycie oraz znaczące uproszczenie kontrolera nadrzędnego. Układy tego typu są bardziej wrażliwe na odzenia oraz w sytuacji niepoprawnej pracy we- wnętrznego kontrolera odzyskanie jakichkolwiek danych
możliwe. Wyjątkiem są układy hybrydowe wyposażone w zabudowany system ECC”. Funkcja ta dokonywanie bezpiecznych, wewnętrznych , co okazuje się bardzo przydatną cechą. Ostatecznie podjęto decyzje o zastosowaniu układów pamięci SLC NAND firmy Micron charaktery- zującymi się największą odpornością temperaturową.
rawnie w zakresie temperatur 256 MB do 2GB
STRUKTURA PROGRAMU
Złożoność opracowanego oprogramowania jest zdetermi- wysokimi wymaganiami niezawodnościowymi.
algorytmów sterują- konkretnego układu pamięci jak i postać pozostałych elementów sytemu rejestracji parametrów lotu. Opracowane oprogramowanie zostało warstwy przedstawione ca się najbliżej układu pamięci realizuje operacje związane z obsługą zarządza zrównoważeniem zużycia oraz zapewnia dostęp zarówno do rejestrów konfiguracyjnych układów NAND jak i do samej . Kolejną wartstwę ystemem zapisów” można plików z tą różnicą, pod kątem bezpieczeństwa i wiarygodności zapisywanych informacji. Dodadkowo opracowany system pozwala na optymalne oraz na znaczące w którym dane są buforach układu sterującego. Taki mechanizm pozwala na poprawny zapis parametrow . Kolejną, równie gorytmów jest możliwość
odzyskania i analizy danych częściowych oraz zapewnienie poprawonośći struktury zapisanych danych po nagłym odłączenia zasilania
nadrzędnej wartstwy oprogramowania zawierają się wszystkie funkcje i algorytmy zarządzające pracą układu mikroporcesorowego, komunikację z blokiem akwizycji i systemem do odczytwyania i analizy danych. Oprócz elementów oprogramowania przedstawion
istnieje system nadzoru poprawnej pracy urządzenia oraz układów pamięci NAND. Podczas pracy kasety poprawność zapisywanych informacji jest stale monitorowana. Każdorazowe wystąpienie niestandardowych operacji, takich jak np. obsługa uszkodzonego bloku, czy nagły spadek napięcia podczas pracy, jest przechowywane w pamięci mikroko
W trakcie odczytywania kasety u
informację na temat wystąpienia sytuacji niestandardowej tylko w momencie,
uszkodzony któryś z układów pamięci koniecznością serwisowania. Pozosta pozwalają stwierdzić w ramach przeglądów pamięci oraz poprawność użytkowania systemu.
Rys. 2. Struktura oprogramowania
3.1 ZARZĄDZANIE
USZKODZONYMI BLOKAMI
Algorytmy zarządzania uszkodzonymi blokami niezwykle istotne, potrzeba ich stosowania pojawia się w momencie, w którym mogą wystąpić uszkodzone sektory pamięci. Sytuacja taka dużo rzadziej
w układach SLC, niemniej jednak możliwość odzyskania i analizy danych częściowych oraz zapewnienie poprawonośći struktury zapisanych danych . W zakresie ostatniej nadrzędnej wartstwy oprogramowania zawierają się rządzające pracą układu ikroporcesorowego, komunikację z blokiem akwizycji systemem do odczytwyania i analizy danych. Oprócz ania przedstawionych na rys. 2.
m nadzoru poprawnej pracy urządzenia D. Podczas pracy kasety poprawność zapisywanych informacji jest stale monitorowana. Każdorazowe wystąpienie
takich jak np. obsługa czy nagły spadek napięcia podczas w pamięci mikrokontrolera.
trakcie odczytywania kasety użytkownik otrzyma informację na temat wystąpienia sytuacji niestandardowej tylko w momencie, w którym został pamięci, co wiąże się z . Pozostałe informacje stwierdzić w ramach przeglądów stan układów
tkowania systemu.
E
USZKODZONYMI BLOKAMI
uszkodzonymi blokami są niezwykle istotne, potrzeba ich stosowania pojawia się w którym mogą wystąpić uszkodzone sektory pamięci. Sytuacja taka dużo rzadziej pojawia się niemniej jednak możliwość
wystąpienia uszkodzonego bloku wzrasta wraz z cykli kasowanie/zapis danej przestrzeni pamięci.
Kolejnym czynnikiem predysponującym do powstawania uszkodzonych sensorów są trudne warunki środowiskowe, w których pracuje układ pamięci.
wydłużyć żywotność układów, stosuje się
równoważenia zużycia zapewniające równomierne rozłożenie operacji kasowanie/zapis na poszczególne fragmenty przestrzeni pamięci. Mimo to należy przewidzieć możliwość wystąpienia nowych uszkodzonych sektorów. Należy podkreślić
fabrycznie nowe układy pamięci posiadają sektory oznaczone przez producenta jako wadliwe. Przykładowo pamięć NAND o pojemności 256MB jest podzielona na 2048 bloków, każdy blok na 64 strony,
na 2048 bajtów. Najmniejszą możliwą przestrzenią zapisu/odczytu jest jedna strona, natomiast operacja kasowania może odbywać się na pojedynczych blokach.
Producent zakłada, że fabrycznie nowy układ może posiadać do 40 uszkodzonych bloków pod warunkiem, że każdy z nich jest odpowiednio oznaczony. Dodatkowo ze specyfikacji wynika, że blok 0 jest zawsze blokiem sprawnym. Zarządzanie uszkodzonymi blokami może być zrealizowane dzieki zorganizowaniu przestrz pamięci w odpowiedni sposób. Powszechnie używana w technice komputerowej organizacja pamięci NAND została przedstawiona na rys. 3.
Rys. 3. Organizacja pamięci
W bloku 0 przechowuje się niezbędne informacje potrzebne do poprawnej inicjalizacji
tablicy uszkodzonych bloków oraz jej kopi (
BB0 i BB1). W tablicy uszkodzonych bloków zachowana jest informacja o sprawności każdego bloku w strukturze. Pozwala to na używanie
działających bloków do przechowywania danych.
Ostatecznie pamięć użytkowa oznaczona jest na rys jako MEM. Warto zauważyć, że w momencie wykrycia uszkodzonego bloku należy nadpisać tablicę BB0 oraz BB1, co będzie skutkowało wykluczeniem danego bloku z użycia. Sytuacja taka występuje sporadycznie powoduje małą liczbę kasowań bloków BB0 i BB1 Mimo to istnieje niewielka szansa na uszkodzenie bloku BB0 bądź BB1. W razie takiego przypadku wyklucza wystąpienia uszkodzonego bloku wzrasta wraz z liczbą cykli kasowanie/zapis danej przestrzeni pamięci.
Kolejnym czynnikiem predysponującym do powstawania uszkodzonych sensorów są trudne warunki w których pracuje układ pamięci. Aby stosuje się algorytmy zapewniające równomierne kasowanie/zapis na poszczególne fragmenty przestrzeni pamięci. Mimo to należy przewidzieć możliwość wystąpienia nowych Należy podkreślić, że nawet osiadają sektory oznaczone przez producenta jako wadliwe. Przykładowo jest podzielona na , a każda strona ajtów. Najmniejszą możliwą przestrzenią natomiast operacja kasowania może odbywać się na pojedynczych blokach.
że fabrycznie nowy układ może posiadać do 40 uszkodzonych bloków pod warunkiem, że każdy z nich jest odpowiednio oznaczony. Dodatkowo 0 jest zawsze blokiem Zarządzanie uszkodzonymi blokami może organizowaniu przestrzeni Powszechnie używana technice komputerowej organizacja pamięci NAND
W bloku 0 przechowuje się niezbędne informacje potrzebne do poprawnej inicjalizacji, czyli adresy nych bloków oraz jej kopi (rys. 3. - . W tablicy uszkodzonych bloków ści każdego bloku tylko poprawnie działających bloków do przechowywania danych.
Ostatecznie pamięć użytkowa oznaczona jest na rys. 4 jako MEM. Warto zauważyć, że w momencie wykrycia tablicę BB0 oraz co będzie skutkowało wykluczeniem danego bloku z użycia. Sytuacja taka występuje sporadycznie, co liczbę kasowań bloków BB0 i BB1.
Mimo to istnieje niewielka szansa na uszkodzenie bloku padku wyklucza
się uszkodzony blok z użycia i tworzy się nową kopię tablicy uszkodzonych bloków oraz nadpisuje się blok 0 aktualizując przechowane w nim adresy. Zastosowanie takiej organizacji pozwala ograniczyć do minimum liczbę operacji kasowania bloku
którym uszkodzeniu uległby blok 0 pracować poprawnie.
3.2 ALGORYTM
RÓWNOWAŻENIA ZU
W porównaniu do klasycznego systemu plików zaimplementowanie algorytmu równoważenia zużycia w pamięci systemu rejestracji parametrów
się stosunkowo proste. Wynika to z charakter przechowywania danych podobnego do zapętlonej taśmy magnetycznej. Najstarsze zapisy są usuwane dopiero w momencie, gdy nadpisuje się
Jedynym blokiem, który jest często kasowany w którym znajduje się przestrzeń robocza
jest zaadresowany na stałe, tylko „przemieszcza się”
wraz z przestrzenią, do której aktualni
dane. Pozwala to na równomierne rozłożenie zu poszczególnych sektorów pamięci.
4. MECHANIZM ZAPISU
W systemie rejestracji występują zwyczajowo dwa typy nośników informacji. Jednym
umieszczony w odpowiednio wytrzymałej i odpornej obudowie katastroficznej, tzw. „czarnej skrzynce”, która jest demontowana stosunkowo rzad
okresowych. Drugi nośnik informacji szybkiego dostępu bądź kasetą eksploatacyjną
demontowany po każdym locie w celu analizy sprawności statku powietrznego
informacji przydatnych w procesie
latającego. W przypadku rodziny rejestratorów powstałej w ITWL obie kasety posiadają taką samą funkcjonalność, z tą różnicą, że kaseta
umieszczona jest w obudowie przygotowanej przetrwania katastrofy lotniczej.
4.1 ODBIERANIE DANYCH Z BLOKU AKWIZYCJI
Transmisja danych pomiędzy blokiem akwizycji a kasetą katastroficzną może być przeprowadzana na wiele sposobów. Jednym z nich jest przesyłanie danych interfejsem szeregowym podobnym do standardu RS-232. Biorąc pod uwagę, iż nie
przeprowadzenia operacji zapisu do pamięci nieulotnej oraz fakt, że w operacji zapisu do pamięci nieulotnej nowe dane, należy je chwilowo
RAM. W tym celu zostały zaimplementowane dwa się uszkodzony blok z użycia i tworzy się nową kopię tablicy uszkodzonych bloków oraz nadpisuje się blok 0, aktualizując przechowane w nim adresy. Zastosowanie takiej organizacji pozwala ograniczyć do minimum operacji kasowania bloku 0. W przypadku, w którym uszkodzeniu uległby blok 0, pamięć nie mogłaby
RÓWNOWAŻENIA ZUŻYCIA
W porównaniu do klasycznego systemu plików lgorytmu równoważenia zużycia pamięci systemu rejestracji parametrów lotu wydaje się stosunkowo proste. Wynika to z charakteru przechowywania danych podobnego do zapętlonej taśmy sze zapisy są usuwane dopiero się je nowymi danymi.
Jedynym blokiem, który jest często kasowany jest blok, w którym znajduje się przestrzeń robocza. Blok ten nie tylko „przemieszcza się”
do której aktualnie zapisuje się dane. Pozwala to na równomierne rozłożenie zużycia poszczególnych sektorów pamięci.
MECHANIZM ZAPISU
W systemie rejestracji występują zwyczajowo dwa typy ym z nich jest nośnik umieszczony w odpowiednio wytrzymałej i odpornej tzw. „czarnej skrzynce”, która jest demontowana stosunkowo rzadko, np. podczas prac okresowych. Drugi nośnik informacji, nazywany kasetą szybkiego dostępu bądź kasetą eksploatacyjną, może być demontowany po każdym locie w celu analizy sprawności statku powietrznego, czy pozyskania w procesie szkolenia personelu latającego. W przypadku rodziny rejestratorów powstałej w ITWL obie kasety posiadają taką samą funkcjonalność, z tą różnicą, że kaseta katastroficzna umieszczona jest w obudowie przygotowanej do
ODBIERANIE DANYCH BLOKU AKWIZYCJI
ch pomiędzy blokiem akwizycji kasetą katastroficzną może być przeprowadzana na wiele sposobów. Jednym z nich jest przesyłanie danych egowym podobnym do standardu iż nie ma możliwości operacji zapisu pojednynczych bajtów do pamięci nieulotnej oraz fakt, że w czasie trwania nieulotnej mogą napłynąć przechować w pamięci aimplementowane dwa
bufory cykliczne o strukturze kolejki. Ich działan zobrazowane na rys. 4. Każdy bajt przychodzący z bloku akwizycji zostaje zapisany na końcu bufora przejściowego (rys. 4a). Dzieje się to niezależnie od działania innych funkcji programu. Rys.
sytuację, w której następuje „wyciąganie” ba bufora przejściowego i umieszczanie ich w
zapisu. Jeżeli podczas tej operacji blok akwizycji prześle bajt informacji, to procedura kopiowania jest wstrzymywana na czas wpisania tego bajtu do bufora przejściowego. Takie działanie pozwala jednocześnie zapewnić brak możliwości utracenia jakiegokolwiek z odebranych bajtów oraz umożliwa korzystne ułożenie danych w buforze zapisu (rys. 4c). Dane w buforze zapisu są przygotowane bezpośrednio do zapisu w pamięci nieulotnej.
Rys. 4. Organizacja buforów
4.2 ZAPISYWANIE DO PAMIĘCI NIEULOTNEJ
Blok akwizycji odpowiednio przetworzone i przygotowane dane przesyła do obu kaset równolegle.
Kasety zapisują odbierane dane w pamięci
i po zakończonym locie istnieje możliwość odczytania całego zapisu. W systemach rejestracji dąży się do tego aby czas od momentu pozyskania informacji do momentu jej bezpiecznego zapisu był jak najkrótszy.
Pomijając opóźnienia wynikające z prze
analogowo-cyfrowego, odpowiedniego oznaczenia poszczególnych parametrów oraz transmisji, kluczową kwestią jest czas, w którym otrzymany bajt informacji będzie na stałe zapisany w pamięci nieulotnej. Niestety nie ma możliwości dokonywania operacj
pamięci po każdym otrzymanym bajcie.
bufory cykliczne o strukturze kolejki. Ich działanie jest Każdy bajt przychodzący akwizycji zostaje zapisany na końcu bufora zieje się to niezależnie od . 4b przedstawia w której następuje „wyciąganie” bajtów z bufora przejściowego i umieszczanie ich w buforze Jeżeli podczas tej operacji blok akwizycji prześle to procedura kopiowania jest wpisania tego bajtu do bufora przejściowego. Takie działanie pozwala jednocześnie zapewnić brak możliwości utracenia jakiegokolwiek z korzystne ułożenie Dane w buforze ne bezpośrednio do zapisu w
ZAPISYWANIE DO PAMIĘCI
ycji odpowiednio przetworzone przygotowane dane przesyła do obu kaset równolegle.
ane dane w pamięci nieulotnej po zakończonym locie istnieje możliwość odczytania całego zapisu. W systemach rejestracji dąży się do tego, aby czas od momentu pozyskania informacji do momentu jej bezpiecznego zapisu był jak najkrótszy.
jące z przetwarzania cyfrowego, odpowiedniego oznaczenia poszczególnych parametrów oraz transmisji, kluczową w którym otrzymany bajt informacji będzie na stałe zapisany w pamięci nieulotnej. Niestety, nie ma możliwości dokonywania operacji zapisu do pamięci po każdym otrzymanym bajcie. W takim
wypadku istaniałoby bardzo duże prawdopodobieństwo przekłamania zapisywanych
wiarygodność parametrów pozyskanych z systemu rejestracji jest równie istotna, należy zastosować algorytmy pozwalające wykrywać i niwelować powstające przekłamania. Przy wykorzystaniu algorytmów kodowania korekcyjnego
w układzie pamięci, najmniejsza
można jednorazowo zapisać, to 512 bajtów. Zapisana w ten sposób paczka danych posiada w dodatkowej przestrzeni pamięci sumę kontrolną CRC16 oraz informacje nadmiarowe, pozwalające wykryć 5 przekłamanych bitów oraz skor
danych takim sposobem pozwala na jednoznaczne określenie wiarygodności zapisu, a w wiekszości wypadków na odzyskanie utraconych fragmentów.
Problemem wynikającym z zapisywania danych paczkami jest nieakceptowalnie duże op
Gdyby oczekiwać, że dane przesła osiągną oczekiwany rozmiar, trwało
samolotu bojowego około sekundy. Tak duże opóżnienie nie jest akceptowalne, z kolei zapisywanie informacji w mniejszych paczkach powodowało
niewiele ponad 10% pamięci. Rozwiązaniem problemu, opracowanym w ITWL
oparty na podziale pamięci na dwie abstrakcyjne części:
przestrzeń zapisu oraz przestrzeń roboczą. W takim rozwiązaniu zapisuje się bardzo małe paczki
10 bajtów) w przestrzeni roboczej
danych w tej przestrzeni przekroczy 512 bajtów, one zapisane do przestrzeni zapisu.
przedstawiono na rysunkach 5
jednoczesne pełne wykorzystanie przestrzeni pamięci oraz zachowanie najświeższych danych w razie nagłego przerwania pracy urządzenia.
paczki danych zapisywane w przestrzeni roboczej jak w przestrzni zapisu są objęte algo
korekcji błędów, co pozwala na jedn wiarygodności danych.
wypadku istaniałoby bardzo duże prawdopodobieństwo informacji. Ponieważ pozyskanych z systemu rejestracji jest równie istotna, należy zastosować algorytmy pozwalające wykrywać i niwelować Przy wykorzystaniu algorytmów kodowania korekcyjnego wbudowanych , najmniejsza liczba danych, jaką to 512 bajtów. Zapisana w ten sposób paczka danych posiada w dodatkowej ni pamięci sumę kontrolną CRC16 oraz pozwalające wykryć korygować 4. Zapisywanie posobem pozwala na jednoznaczne ności zapisu, a w wiekszości padków na odzyskanie utraconych fragmentów.
Problemem wynikającym z zapisywania danych duże opóźnienie zapisu.
dane przesłane z bloku akwizycji trwałoby to w przypadku samolotu bojowego około sekundy. Tak duże opóżnienie , z kolei zapisywanie informacji powodowałoby wykorzystywanie i. Rozwiązaniem tego nym w ITWL, jest system zapisu pamięci na dwie abstrakcyjne części:
przestrzeń zapisu oraz przestrzeń roboczą. W takim rozwiązaniu zapisuje się bardzo małe paczki danych (3- w przestrzeni roboczej; następnie, gdy liczba zestrzeni przekroczy 512 bajtów, zostają zapisane do przestrzeni zapisu. To rozwiązanie i 6. Pozwala ono na jednoczesne pełne wykorzystanie przestrzeni pamięci raz zachowanie najświeższych danych w razie nagłego Dodatkowo zarówno paczki danych zapisywane w przestrzeni roboczej jak i w przestrzni zapisu są objęte algorytmami wykrywania i ędów, co pozwala na jednoznaczne określenie
Rys. 5. Proces zapisu do przestrzeni roboczej
Rys. 6. Proces zapisu do obu przestrzeni
Literatura
1. EUROCAE: Norma ED-112, Minimum Operational Performance Specification For Crash Protected Airborne Recorder Systems: 2004.
2. MICRON: TLC MLC and SLC Devices
3. MICRON: NOR | NAND Flash Guide: Selecting a Flash Memory Solution for Embedded Applications
4. MICRON: NAND Flash Memory MT29F2G08ABAEAH4, MT29F2G08ABAEAWP, MT29F2G08ABBEAH4, MT29F2G08ABBEAHC, MT29F2G16ABAEAWP, MT2
5. Technical Note Error Correction Code (ECC) in Micro
Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.
http://creativecommons.org/licenses/by/3.0/pl
Przestrzeń robocza stanowi swego rodzaju bufor, w którym przechowywane są dane częściowe
uzyskają formę pozwalającą na zapis z pełnym wykorzystaniem dostępnej pamięci w przestrzeni zapisu.
Rys. 5 prezentuje przypadek, gdy nas w przestrzni roboczej, natomiast rys do obu przestrzeni pamięci.
5. PODSUMOWANIE
Przedstawione w artykule rozważania
następujących wniosków. W porównaniu do klasycznego systemu plików zaimplementowan
na optymalizację pod kątem uzyskania jak największej wiarygodności danych oraz bardzo szybkiego zapi pamięci nieulotnej. Innym, równie istotnym
oprogramowania są procedury zapewniające poprawność pracy urządzenia w każdych warunkach. Odłączenie żródła zasilania podczas trwania zapisu
operacji nie powoduje żadnych skutków niepo Kolejnym pozytywnym aspektem
potrzeby projektu system monitorowania poprawności pracy układów pamięc kasetach systemu rejestracji. Mimo najwyższej jakości komponenty stałe nadzorowanie ich stanu. Opracowany
charakteryzuje się bardzo szybkim czasem uruchomienia oraz prędkością pozwalająca na zapis parametrów lotu oraz dźwięku w postaci cyfrowej.
Minimum Operational Performance Specification For Crash Protected Airborne
TLC MLC and SLC Devices: 2015.
NOR | NAND Flash Guide: Selecting a Flash Memory Solution for Embedded Applications
Memory MT29F2G08ABAEAH4, MT29F2G08ABAEAWP, MT29F2G08ABBEAH4, MT29F2G08ABBEAHC, MT29F2G16ABAEAWP, MT29F2G16ABBEAH4, MT29F2G16ABBEAHC:
Technical Note Error Correction Code (ECC) in Micron® Single-Level Cell (SLC) NAND:
Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska.
http://creativecommons.org/licenses/by/3.0/pl
stanowi swego rodzaju bufor, wane są dane częściowe, zanim uzyskają formę pozwalającą na zapis z pełnym wykorzystaniem dostępnej pamięci w przestrzeni zapisu.
gdy następuje zapis tylko w przestrzni roboczej, natomiast rys. 6 pzypadek zapisu
NIE
e w artykule rozważania prowadzą do porównaniu do klasycznego systemu plików zaimplementowane algorytmy pozwalają pod kątem uzyskania jak największej wiarygodności danych oraz bardzo szybkiego zapisu do równie istotnym, elementem oprogramowania są procedury zapewniające poprawność pracy urządzenia w każdych warunkach. Odłączenie żródła zasilania podczas trwania zapisu lub innej ch skutków niepożądanych.
Kolejnym pozytywnym aspektem jest opracywany na system monitorowania stanu oraz awności pracy układów pamięci zabudowanych w . Mimo że zastosowano najwyższej jakości komponenty stałe, jest wymagane Opracowany system zapisów charakteryzuje się bardzo szybkim czasem uruchomienia oraz prędkością pozwalająca na zapis parametrów lotu
Minimum Operational Performance Specification For Crash Protected Airborne
NOR | NAND Flash Guide: Selecting a Flash Memory Solution for Embedded Applications: 2015.
Memory MT29F2G08ABAEAH4, MT29F2G08ABAEAWP, MT29F2G08ABBEAH4, 9F2G16ABBEAH4, MT29F2G16ABBEAHC: 2014.
Level Cell (SLC) NAND: 2011.
0 Polska.