GAL

Loading thread data ...

IMO - durny pomysl.

Zeby to Win 3.x bylo jakims dobrym wzorem, ale przeciez nie :-)

J.

Reply to
J.F.

W dniu 2018-03-01 o 23:28, Adam Wysocki pisze:

Użyliśmy GALi tylko w dwu projektach.

  1. Klucz do zabezpieczenia oprogramowania HAK1 (+- 1991) w postaci przejściówki Centronix przezroczystej dla drukarki. W GALu zrobiliśmy maszynkę sekwencyjną mieszającą 5 bitowy stan z 5 bitową daną w nowy 5 bitowy stan. 1-bitowa funkcja stanu była sygnałem zwrotnym. Działanie polegało na podaniu sekwencji 16-tu 5 bitowych liczb i weryfikacji, czy kolejno odczytane bity są takie jak mają być. Można to rozumieć jako 16 bitowy podpis 80 bitowych danych. Klient dostawał swój indywidualny program który pozwalał mu ustalić odpowiedź jego klucza na dowolne dane i w różnych miejscach programu mógł testować obecność klucza sprawdzając podpis innych danych. Problemem było ile i które fuse przepalić. Napisałem symulator pracy tej maszynki i zauważyłem, że czasem maszynka ma tendencję trafiania w jakiś jeden czy kilka stanów znacznie częściej niż w inne. Uznałem (nie wiem czy słusznie), że tak nie powinno być więc nałożyłem jakieś ograniczenia na liczbę kombinacji prowadzących do tego samego stanu i inne na minimalną liczbę fuse różniących poszczególne klucze i zapuściłem generowanie kolejnych kluczy. Komputer z 286-ką przez 3h wygenerował mi (losowanie fuse i sprawdzenie warunków) 20 kluczy (generował też te programy o których wspomniałem wcześniej). Szło mu coraz wolniej głównie z powodu narzuconej liczby różnic między dowolnymi dwoma kluczami. Nie męczyłem go dalej i uznałem, że na razie 20 wystarczy. Gal potrzebował 5V i dość dużego prądu a w Centronix nie ma zasilania. Diody z wszystkich linii i potrajacz napięcia (podwajacz nie zawsze się sprawdzał) ładujący kondensator i potem praca z tego kondensatora. Efektem ubocznym (nie zamierzonym) było to, że nie dało się łamać zabezpieczenia puszczając program krokowo bo kondensator się rozładowywał i wszystko siadało. Zauważył to jeden z odbiorców jak próbował debuggować swój własny program i uznał za dużą zaletę. Przy tym projekcie nie użyliśmy żadnego kompilatora GALi tylko stan wszystkich fuse ustaliliśmy sami.
  2. Dydaktyczny System mikroprocesorowy DSM-51. Tam były dwa GALe dlatego, że pierwsza wersja systemu (1993) powstała na zamówienie Politechniki Gdańskiej do laboratorium układów programowalnych. Jeden był dekoderem adresów, a drugi sterownikiem przerwań. Fuse też ustaliliśmy ręcznie, ale potem zrobiliśmy zapis równaniami z których Palasm generował te nasze fuse, aby studenci mogli modyfikować zachowanie dekodera adresów i sterownika przerwań (GALe były w podstawkach).

P.G.

Reply to
Piotr Gałka

Oby :)

Gale z jakiegoś powodu wydają mi się prostsze. Taki "pierwszy etap" nauki, zanim rzucę się na CPLD. Chociaż to wrażenie nie jest niczym poparte i może być zupełnie błędne.

Bo tam go nie ma. To schemat cartridge do Pegasusa. Ja chcę zrobić sobie developerski, żeby wrzucić go do konsoli, podłączyć po USB do peceta i napisać na to jakąś prostą grę albo kilka. Wydaje się ciekawe.

Wiem, że są emulatory, ale to nie to samo.

Ale do szeregowego programowania flasha tak naprawdę powinien wystarczyć tylko licznik (adresów) i rejestr przesuwny (do magistrali danych), a na upartego nawet jeden długi rejestr przesuwny, żeby ustawić bity (adres i dane) i puścić strobe. To się może nie zmieścić nawet w CPLD?

Myślałem o tym, ale to nie będzie miało waloru edukacyjnego, a tu wydaje się idealne -- bardziej skomplikowane od migania diodą, ale na tyle proste, że nie powinno przerosnąć przy pierwszym podejściu.

Reply to
Adam Wysocki

Durny pomysł mieć hobby? Skoro tak uważasz...

OP kombinuje w ciekawym kierunku stworzenia programowalnego cartridge'a dla Famicoma - ale i to pewno wg ciebie durny pomysł, skoro istnieją przecież lepsze konsole. Może to po prostu wątek nie dla ciebie :)

Mateusz

Reply to
Mateusz Viste

Się ciesz, że wciąż piny, a nie kulki. A 44 piny w QFN to w ogóle maleństwo, choć ciągle do polutowania w domu (hotairem).

Pozdrawiam, Piotr

Reply to
Piotr Wyderski

Durny pomysl to miec durne hobby.

Doszukiwac sie sensu w Windows 3 ...

Jest to jakis pomysl ... ale moze jednak jednak lepiej dac tej konsoli nalezne jej miejsce ... czyli w muzeum lub smietniku :-)

Albo ... symulator zrobic w jakims duzym FPGA, to sie czlowiek wiecej nauczy :-)

P.S. To taki symulator EPROM ma byc ?

-mozna kupic gotowy, ale kablownia sie robi,

-i radze przemyslec zasilanie, kartridge musi byc zasilany, zeby dane zaladowac, a potem trzeba konsole wystartowac ... jesli nie ma przycisku reset, tylko wlacza sie zasilanie, to jak je wylaczyc na chwile ...

No chyba, ze ma tam byc naprawde pamiec Flash, i po wgraniu nowej gry mozna wylaczac zasilanie do woli ...

J.

Reply to
J.F.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.