Budowanie prostego DSO z AT91RM9200 i ADC 120MSPS - jak zacząć?

AT91RM9200





Poprzedni Następny
Wiadomość
Spis treści
From: yorgus <yorgus_at_nospam_terramail.pl>
Subject: AT91RM9200
Date: 2 Feb 2005 20:55:09 GMT


Mam taką koncepcje - chce sobie zbudowac cos w rodzaju prostego DSO, załóżmy że
mam szybki przetwornik analogowo-cyfrowy, koło 120MSPS z wyjsciem równoległym,
chciałbym sobie z peceta zczytywać przez rsa to co ten przetwornik zmierzy.
Oczywiście coś musi ten przetwornik buforować, albo jakaś szybka pamięć, ale
takich to zabardzo nie widze albo przyszło mi do głowy użycie dostępnego ponoć
w seguro arma AT91RM9200. Nie programowałem jeszcze ARMów, z pdfa wynika jednak
że bootloader może załadować kod przez rsa - czy mam rozumieć że ten bootloader
jest juz tam na sztywno i np po podłączeniu zasilania sobie zassie to co ja
xmodem wysle mu ? . Słyszałem że gcc jest też na ARMy, ale guglownica znajduje
mi tylko gcc w kontekscie gameboyow lub jakis gotowych plytek - da sie
tym arm-gcc stworzyc kod ktory wyslalbym sobie serialem do tego arma ?
Jeszcze jedno on ma jakies mmu - musze mu podlaczanczac DRAM ?
W zasadzie to chce tylko tyle zeby sobie napisac prosty kod ktory zczyta
np 8k do wewnetrznego RAMu a potem mi to wysle przez rs232.



--
pozdrawia
yorgus


Poprzedni Następny
Wiadomość
Spis treści
From: Adam Dybkowski <adybkows123_at_nospam_amwaw.edu.pl>
Subject: Re: AT91RM9200
Date: Thu, 03 Feb 2005 00:13:41 +0100


yorgus wrote:

Mam taką koncepcje - chce sobie zbudowac cos w rodzaju prostego DSO, załóżmy że
mam szybki przetwornik analogowo-cyfrowy, koło 120MSPS z wyjsciem równoległym,
chciałbym sobie z peceta zczytywać przez rsa to co ten przetwornik zmierzy.

Jeżeli chcesz podczepić ten przetwornik do tytułowego ARMa, to raczej
znajdź szybszy procesor. AT91RM9200 chodzi z zegarem max 200 MHz, a to
nie wystarczy aby odbierać 120 MB/s. Jak zobaczysz przebiegi czasowe
dostępów do magistrali zewnętrznej to zrozumiesz.

No chyba że procesor grzecznie poczeka, aż dane same wskoczą do pamięci
(liczniki + szybki SRAM), a potem je bez pośpiechu będzie obrabiał.
Ale wtedy niepotrzebna aż taka kobyła jak AT91RM9200 (widziałeś go?
obudowa PQFP208, na oko z 3x3 cm).

w seguro arma AT91RM9200. Nie programowałem jeszcze ARMów, z pdfa wynika jednak
że bootloader może załadować kod przez rsa - czy mam rozumieć że ten bootloader
jest juz tam na sztywno i np po podłączeniu zasilania sobie zassie to co ja
xmodem wysle mu ?

Tak. Bootloader jest zaszyty w ROMie i może wciągać kod do wewnętrznego
RAMu np. przez UART protokołem XModem. Albo z zewnętrznej pamięci
DataFlash, co też jest wygodnym rozwiązaniem.

Słyszałem że gcc jest też na ARMy

Tak, potrzebujesz arm-elf-gcc, najlepiej ściągnąć źródła i samemu
skompilować jeżeli nie możesz znaleźć gotowych binariów pod swój system
operacyjny.

da sie
tym arm-gcc stworzyc kod ktory wyslalbym sobie serialem do tego arma ?

Da się.

Jeszcze jedno on ma jakies mmu - musze mu podlaczanczac DRAM ?

Nie musisz, można podczepić zwykły SRAM i chyba MMU nic do tego nie ma.
Ten procesor ma w środku AFAIR tylko 16KB RAMu (+kesze) więc podłączenie
pamięci zewnętrznej jest niezbędne.

W zasadzie to chce tylko tyle zeby sobie napisac prosty kod ktory zczyta
np 8k do wewnetrznego RAMu a potem mi to wysle przez rs232.

AT91RM9200 nie wyrobi z odbieraniem 120 MB/s do pamięci zewnętrznej.
1) Znajdź odpowiednio szybką pamięć FIFO
2) Wtedy już nie potrzebujesz tego ARMa, wystarczy najprostszy AVR

Albo poszukaj szybkiego SRAMu, doczep kilka liczników i bramek,
generator 120 MHz - i próbki ładuj prosto do pamięci. Z wysłaniem tego
później przez RS232 nie będzie miał problemów żaden procesor (którego
liczba nóżek pozwoli tą pamięć zaadresować).

--
Adam Dybkowski
http://www.amwaw.edu.pl/~adybkows/

Uwaga: przed wysłaniem do mnie maila usuń "123" z adresu.

Poprzedni Następny
Wiadomość
Spis treści
From: "Marek Dzwonnik" <mdz_at_nospam_WIADOMO_PO_CO_TO.message.pl>
Subject: Re: AT91RM9200
Date: Thu, 3 Feb 2005 00:24:31 +0100


Użytkownik "Adam Dybkowski" <adybkows123_at_nospam_amwaw.edu.pl> napisał w
wiadomości news:ctrmpj$q24$1_at_nospam_atlantis.news.tpi.pl

Ale wtedy niepotrzebna aż taka kobyła jak AT91RM9200 (widziałeś go?
obudowa PQFP208, na oko z 3x3 cm).

Jeżeli już, to 28x28mm (E1xD1 - czyli plastik) + nóżki w rastrze e=0.5mm
;-)


--
Marek Dzwonnik, GG: #2061027 - zwykle jako 'niewidoczny'
(Uwaga Gadu-Gadulcowicze: Nie odpowiadam na anonimy.)


Poprzedni Następny
Wiadomość
Spis treści
From: yorgus <yorgus_at_nospam_terramail.pl>
Subject: Re: AT91RM9200
Date: 3 Feb 2005 18:08:13 GMT


Dnia Thu, 03 Feb 2005 00:13:41 +0100, Adam Dybkowski <adybkows123_at_nospam_amwaw.edu.pl> napisał:
Albo poszukaj szybkiego SRAMu, doczep kilka liczników i bramek,
generator 120 MHz - i próbki ładuj prosto do pamięci. Z wysłaniem tego
później przez RS232 nie będzie miał problemów żaden procesor (którego
liczba nóżek pozwoli tą pamięć zaadresować).



to był pierwszy pomysł ale nigdzie nie widze szybkich pamieci fifo, albo
SRAM o czasach dostepu rzedu max 8ns, wiec sobie pomyślałem że ten ARM może
robić za nią. Troche to strzelanie z armaty do wróbla, ale ta kość jest w
miare dostępna w przyzwoitej cenie. Nie zamierzam tego budować więcej niż
kilka egzemplarzy więc z tymi pamięciami będzie problem.



--
pozdrawia
yorgus


Poprzedni Następny
Wiadomość
Spis treści
From: Adam Dybkowski <adybkows123_at_nospam_amwaw.edu.pl>
Subject: Re: AT91RM9200
Date: Thu, 03 Feb 2005 23:53:56 +0100


yorgus wrote:

Albo poszukaj szybkiego SRAMu, doczep kilka liczników i bramek,
generator 120 MHz - i próbki ładuj prosto do pamięci.

to był pierwszy pomysł ale nigdzie nie widze szybkich pamieci fifo, albo
SRAM o czasach dostepu rzedu max 8ns

Jeżeli nie masz odpowiednio szybkich pamięci (a takie nie istnieją w
naszej galaktyce jeżeli chciałbyś zrobić oscyloskop 4GS/s) - to połącz
wolniejsze pamięci równolegle. Czyli próbki pakuj na zmianę do pamięci
pierwszej, drugiej, trzeciej, czwartej, pierwszej, drugiej itd. Wymaga
to zastosowania dodatkowych rejestrów trzymających próbkę na cały czas
zapisu do pamięci (np. przez 10 ns), ale z kilkoma ns to nie problem,
zainteresuj się np. serią AVC od Texas Instruments (max. czas propagacji
około 2ns przy zasilaniu 3V3):
http://tinyurl.com/6zygc
http://focus.ti.com/docs/prod/folders/print/sn74avc16374.html

Pamięci SRAM o czasie dostępu 10ns istnieją i są bardzo popularne.
Myślę, że 8ns znajdziesz bez problemów po przeszukaniu baz Setronika,
EBV, Arrow i kilku podobnych większych dystrybutorów (większych niż JM
i TME razem wzięci). A kilka[naście] sztuk na krzyż nie do masowej
produkcji zawsze można ściągnąć z digikey.com zamiast komplikować projekt.

Na koniec: obejrzyj dokładnie dokumentację pamięci, które będziesz
chciał zastosować. Czas dostępu 8ns jeszcze nie gwarantuje, że zdążysz
bezpiecznie wcisnąć do pamięci strumień 120MB/s.

--
Adam Dybkowski
http://www.amwaw.edu.pl/~adybkows/

Uwaga: przed wysłaniem do mnie maila usuń "123" z adresu.

Poprzedni Następny
Wiadomość
Spis treści
From: Marcin E. Hamerla <Xmeh4njusy_at_nospam_Xpoczta.Xonet.Xpl.removeX>
Subject: Re: AT91RM9200
Date: Sat, 05 Feb 2005 09:06:20 +0100


Adam Dybkowski napisal(a):

Mam taką koncepcje - chce sobie zbudowac cos w rodzaju prostego DSO, załóżmy że
mam szybki przetwornik analogowo-cyfrowy, koło 120MSPS z wyjsciem równoległym,
chciałbym sobie z peceta zczytywać przez rsa to co ten przetwornik zmierzy.

Jeżeli chcesz podczepić ten przetwornik do tytułowego ARMa, to raczej
znajdź szybszy procesor.

....a najlepiej zamien procesor na PLD. Ewentualnie dodaj PLD.

--
Pozdrowienia, Marcin E. Hamerla

"Jak ja was, kurrwy, nienawidzę, jak do was bym z kałacha bił."

Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Wyderski" <wyderskiREMOVE_at_nospam_ii.uni.wroc.pl>
Subject: Re: AT91RM9200
Date: Sat, 5 Feb 2005 13:23:32 +0100


yorgus wrote:

albo przyszło mi do głowy użycie dostępnego ponoć w seguro arma
AT91RM9200.

Tak, to bardzo ciekawy uklad, ale jego USB dziala tylko do 12Mb/s,
co go eliminuje z pola moich zainteresowan. :-( BTW, on nie da rady
w tym zastosowaniu. Tak sie sklada, ze sam robie cos, czego fragment
jest bardzo podobny do Twojego problemu -- zdecydowalem sie na
umieszczenie tego w FPGA 1C6, ktory mi tu polecono. On ma w srodku
sporo szybkiego RAMu i potrafi obslugiwac zewnetrzne szybkie DRAMy,
ktore sa latwo dostepne (poprzez kanibalizm starszych modeli kart
graficznych, np. GEForce). A 12-nanosekundowe SRAMy sa na Allegro.

Pozdrawiam
Piotr Wyderski