eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikamikrokontroler military/(aero)space 8bitRe: mikrokontroler military/(aero)space 8bit
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lub
    lin.pl!uw.edu.pl!newsgate.cistron.nl!newsgate.news.xs4all.nl!news2.euro.net!new
    sfeed.freenet.ag!newsfeed.kamp.net!newsfeed.kamp.net!nx01.iad01.newshosting.com
    !newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!atlantis.ne
    ws.neostrada.pl!news.neostrada.pl!not-for-mail
    From: SM <b...@k...com.pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: mikrokontroler military/(aero)space 8bit
    Date: Tue, 09 Feb 2010 07:04:04 +0100
    Organization: TP - http://www.tp.pl/
    Lines: 45
    Message-ID: <hkqu1b$3kg$1@atlantis.news.neostrada.pl>
    References: <hkpjgv$adi$1@nemesis.news.neostrada.pl> <7...@m...uni-berlin.de>
    NNTP-Posting-Host: bap92.neoplus.adsl.tpnet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: atlantis.news.neostrada.pl 1265695595 3728 83.27.179.92 (9 Feb 2010 06:06:35
    GMT)
    X-Complaints-To: u...@n...neostrada.pl
    NNTP-Posting-Date: Tue, 9 Feb 2010 06:06:35 +0000 (UTC)
    User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
    In-Reply-To: <7...@m...uni-berlin.de>
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:581720
    [ ukryj nagłówki ]

    >
    > Niska orbita czy przestrzeń międzyplanetarna? Na jak długo? "Zyciowo ważne",
    > czy może się czasem mylić?
    > FLASH nie jest zbyt dobrym rozwiązaniem, OTP jeszcze gorszym, chyba, że
    > włożysz trochę pomyślunku.

    Tak właśnie zastanawiałem się również nad stroną programową.

    Czy nie dobrym rozwiązaniem by było zrobienie procka
    na "superodpornym" FPGA. Rejestry i "trochę" roboczego
    RAMu na zmienne siedziałoby też w FPGA. Do niego podpiąć
    pamięć FLASH z programem.

    "Procek" w FPGA pobierałby kod programu z FLASHa i działał
    jak interpreter choćby nawet BASICa. Każdy token byłby zapisany
    wielobajtowo (co najmniej 2 bajty), np. pierwszy bajt - kod tokena
    , drugi bajt jego XOR 255. Albo też więcej bajtów z sumą CRC.
    Mamy więc kontrolę czy program we FLASH nie uległ samomodyfikacji.
    Drugi plus to stała długość każdej instrukcji.
    Program w pamięci FLASH byłby zapisany np. trzykrotnie.
    Niech ma długość 1KB. Mamy więc program od 0 do 1023. Potem
    to samo od 1024 do 2047 i znów to samo od 2048 do 3072.
    FPGA leci normalnie z programem od 0 do 1023, jeśli nie zgodzi
    mu się CRC na instrukcji to wtedy dodaje offset + 1024
    i próbuje pobrać instrukcję z jej kopii. Jeśli znów błąd
    to znów z kolejnej.

    Albo jeszcze lepiej. Podłączone do FPGA kilka zewnętrznych
    pamięci FLASH. Powiedzmy 3. Przy pobieraniu kolejnej
    instrukcji FPGA zmienia nr FLASH z którego pobiera instrukcję
    (dzięki temu w kółko przemieli i zweryfikuje każdego FLASHa)
    Jeśli stwierdzi błąd, wówczas przeprogramowuje błędny sektor
    w uszkodzonym FLASH korzystając z danych zawartych w dwóch
    pozostałych FLASHach.

    Mamy samonaprawiający się układ do tego jeszcze z możliwością
    zdalnego przeprogramowania.


    Chyba w wolnej chwili spróbuję taką zabawkę sobie zrobić :)
    Kiedyś pisałem kompilatory i interpretery więc nie będzie
    z tym większego problemu.

    Pozdrawiam,
    SM

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: