kategorie: A2000/A3000, Sprzęt
[#1] Kolejne USB solution :-)
Hej,
wygrzebałem coś takiego w sieci. Jest tam na liście jakiś driver do karty USB, wg. autora w 40% ukończony ale zaniechany. Byłby ktoś w stanie to pociągnąć dalej? @Strim, nie miałbyś ochoty, jakbyś dostał ode mnie Prometheusa i karte? ;)
[#2] Re: Kolejne USB solution :-)

@_arti, post #1

"_arti" w openpci ja się już dosyć mocno wgryzałem. Ten sterownik z prometheuszem zadziała, ale po pierwsze trzeba mieć prometheus.lib w wersji 3.0, a po drugie trzeba mieć nowy firmware do prometheusza.
Bibliotekę udało mi się usyskać od twórcy openpci. Natomiast trochę gorzej jest z nowym firmwerem, tzn. Znalazłem twórcę tego firmweru, jest nim Michael Boehmer. Promek na nim ma pełne DMA. W ostatniej rozmowie dowiedziałem się, że autor planuje upublicznić ten firmwer w niedalekiej przyszłości - kazał czekać.
[#3] Re: Kolejne USB solution :-)

@jarob, post #2

Masz kontakt do Michaela pod ręką?
[#4] Re: Kolejne USB solution :-)

@_arti, post #3

Mam do niego maila: mboehmer(małpa)e3b.de
[#5] Re: Kolejne USB solution :-)

@_arti, post #1

@arti

Promka i karte USB to ja mam . Ale tak jak napisał jarob, problem leży w firmware Prometeusza. Albo raczej we wsadzie FPGA.

Orientowałem się nieco w tym temacie i niestety nawet ze zmianami, które podobno wprowadził Michael transakcje DMA są możliwe jedynie do innych kart na szynie PCI. Tzn. nie ma możliwości wykonania DMA do pamięci hosta. Chyba że coś się w tym temacie zmieniło ostatnio. Jeśli tak, to mamy o czym rozmawiać , ale jakoś wątpie w to.

Ostatnia aktualizacja: 21.10.2012 22:34:37 przez strim
[#6] Re: Kolejne USB solution :-)

@strim, post #5

Czyli, jak mniemam, pełna dokumentacja do Promka, byłaby bardzo na ręke?
[#7] Re: Kolejne USB solution :-)

@_arti, post #6

Nie, dość obszerna dokumentacja z tego co rozumiem istnieje. Ja jestem w posiadaniu tej części, która potrzebna jest do pisania sterowników . Problemem jest pełna implementacja DMA (a raczej jej brak), to dopiero w Promku byłoby na rękę. A to zadanie dla kogoś kto zna się na sprzęcie na tyle żeby napisać nowy wsad FPGA. Ja nie wiem czy to w ogóle jest możliwe.


Ostatnia aktualizacja: 21.10.2012 23:29:06 przez strim
[#8] Re: Kolejne USB solution :-)

@strim, post #7

męcz krashana, to jego dziecko
[#9] Re: Kolejne USB solution :-)

@strim, post #7

Rozmawiałem z Michaelem jakiś miesiąc temu i napisał mi, że ma wsad z pełnym DMA. Niech może _arti go jeszcze pomęczy o ten firmware.
[#10] Re: Kolejne USB solution :-)

@strim, post #5

Orientowałem się nieco w tym temacie i niestety nawet ze zmianami, które podobno wprowadził Michael transakcje DMA są możliwe jedynie do innych kart na szynie PCI. Tzn. nie ma możliwości wykonania DMA do pamięci hosta.
Nie da się zrobić DMA do pamięci Amigi. To ograniczenie konstrukcyjne układu SuperBuster. Możliwe są, teoretycznie, trzy rozwiązania tego problemu
  • można użyć pamięci video karty graficznej jako bufora, wtedy jeżeli jakaś karta PCI ma pobrać dane przez DMA, wrzucamy je procesorem do VRAM karty graficznej i każemy tej drugiej karcie pociągnąć je za pomocą DMA z grafy. Analogicznie karta przez DMA wrzuca dane do VRAM grafiki i procesor je stamtąd wyciąga. To trochę zaprzeczenie idei DMA jako takiego (procesor powinien wypoczywać), ale takie są możliwości. Boehmer, z tego co wiem, właśnie takie DMA zaimplementował. Ja byłem o krok (sieciówka z RTL 8139 robiła mi poprawne DMA do pamięci Voodoo3), ale prace zostały przerwane z przyczyn pozatechnicznych.
  • Dedykowany bufor pamięciowy w mostku zamiast używania VRAM karty graficznej. Zalety: uniezależnienie się od systemu sterowników graficznych, oraz większa szybkość, zwłaszcza odczytu danych. Wady: cena i wzrost komplikacji urządzenia. Rozważałem takie rozwiązanie w Prometeuszu, wady przeważyły.
  • Wykonanie zastępczego układu SuperBuster w technologii FPGA. To chyba tylko teoria, bo musiałby on, oprócz działającego DMA, realizować wszystkie dotychczasowe funkcje, dokumentacji zaś brak. Oznacza to ciężki reverse engineering. Poza tym, nawet gdyby jakiś kozak tego dokonał, to będzie to tylko DMA do pamięci na płycie głównej. Pamięć na kartach procesorowych pozostanie poza zasięgiem.


Ostatnia aktualizacja: 22.10.2012 08:12:22 przez krashan_
[#11] Re: Kolejne USB solution :-)

@krashan_, post #10

Nie da się zrobić DMA do pamięci Amigi.


W takim razie jak działa np. Deneb? A4091? FastLane Z3? Czy te karty w sposobie implementacji DMA różnią się od pożądanego w Prometeuszu DMA? We wszystkich wypadkach wykonujemy DMA do pamięci Amigi... Z użyciem SuperBustera rev 9 lub 11, bo oczywiście tej funkcjonalności nie ma we wcześniejszych modelach.

Wykonywanie DMA do pamięci karty graficznej oczywiście jest jakimś rozwiązaniem (znanym choćby z Mediatorów), ale niezbyt interesującym z technicznego punktu widzenia, albo raczej z punktu widzenia twórcy sterowników .

Pamięć na kartach procesorowych pozostanie poza zasięgiem.


Z tego co wiem Buster potrafi wykonywać transfery DMA do pamięci kart procesorowych.


Ostatnia aktualizacja: 22.10.2012 08:32:07 przez strim
[#12] Re: Kolejne USB solution :-)

@strim, post #11

Czy te karty w sposobie implementacji DMA różnią się od pożądanego w Prometeuszu DMA?

Nie wiem czy się różnią. Nie potrafiłem uzyskać DMA do pamięci na płycie mojej A4000 z SuperBusterem 9. Może po prostu za mało wiem. Z informacji jakie udało mi się wtedy zebrać wynikało, że SuperBuster jest w temacie DMA zwyczajnie niedokończony. Pojawia się też inny problem, mianowicie każda transakcja na Zorro 3 trwająca dłużej niż 1 mikrosekunda, jest ubijana przez system i skutkuje guru 80000002. Na szynie PCI nie ma gwarancji, że każda transakcja skończy się w takim czasie. Z tego względu Prometeusz takie transakcje PCI ubija sam. Problem pojawia się np. przy odczycie BIOS-a karty Voodoo3. Ten odczyt jest skrajnie wolny, karta wstawia chyba z 5 waitstates. Aby uniknąć zwiechy Prometeusz przerywa pierwszą transakcję (zgodnie z protokołem PCI) i sterownik musi odczytać tę samą daną jeszcze raz. W międzyczasie Voodoo3 ma ją już przygotowaną i powtórny odczyt mieści się w tej nieszczęsnej mikrosekundzie.

Z tego co wiem Buster potrafi wykonywać transfery DMA do pamięci kart procesorowych.

Uwierzę, jak zobaczę. Moim zdaniem bez sprzętowej modyfikacji Amigi 4000 jest to niemożliwe.

Tak czy inaczej, wkrótce dokumentacja wykonawcza Prometeusza będzie publicznie dostępna. Obejmuje to również firmware, wraz z jego plikami źródłowymi. Będzie więc możliwość modyfikacji firmware i pole do eksperymentów.

Ostatnia aktualizacja: 22.10.2012 09:08:32 przez krashan_
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem