PYTANIE O BUFOR



Masz problem? Zapytaj na forum elektroda.pl z bramk± pl.misc.elektronika!

Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
Subject: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 15:45:56 GMT


Czy ma ktos koncepcje jak zrobic bufor z wejsciem szeregowym asynchronicznym
i wyjsciem synchronicznym szeregowym ? Taki specyficzny shift register ?

Przyklad:

1. Mam strumien danych wchodzacych (bez znaczenia jakich) np. lecacych z
predkoscia 200bps
2. Mam uklad, ktory wymaga aby zbocza narastajace tego strumienia byly
synchronizowane w fazie z generatorem odniesienia tego ukladu - powiedzmy
jest to fala prostokatna tak samo 200bps
3. Nie ma mozliwosci wplywania na faze strumienia wchodzacego.

Wszystko chodzi o to, ze znane sa czestotliwosci, a nie zgadza sie faza,
ktora jest wymagana przez odbierajacego.

Poniewaz strumien wchodzacy jest asynchroniczny wiec musze na chwile
zatrzymac w buforze dane wchodzace i czekac na zbocze odniesienia z ukladu
dalej. Ale trzeba to tak zrobic zeby nie tracic jednego bitu danych.

Ma ktos koncepcje ?


Juliusz




Poprzedni Następny
Wiadomość
spis tre¶ci
From: Stanislaw Sidor <sts_at_nospam_qq.elcompzu.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 17:58:56 +0200


Juliusz wrote:

Czy ma ktos koncepcje jak zrobic bufor z wejsciem szeregowym asynchronicznym
i wyjsciem synchronicznym szeregowym ? Taki specyficzny shift register ? [...]



Poniewaz strumien wchodzacy jest asynchroniczny wiec musze na chwile
zatrzymac w buforze dane wchodzace i czekac na zbocze odniesienia z ukladu
dalej. Ale trzeba to tak zrobic zeby nie tracic jednego bitu danych.

Ma ktos koncepcje ?


1. Skoro dane wejsciowe sa asynchroniczne (a moze jeszcze standardowa transmisja
START/DANE/PARZYSTOSC/STOP) to zastosuj UART z FIFO np. MAX3100 (z wyjsciem
szeregowym!!!).
Potem odczytuj synchronicznie do danej czestotliwosci UART i wszystko, no moze
wszystko
przydalby sie jeszcze mP do obslugi tego.

2. Moze przebieg synchronizujacy mozna przestrajac to moze PLL pomoze ?

Domyslam sie jednak, ze problem jest bardziej skomplikowany :-( a nie
powiedziales wszystkiego

(STS)


Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 16:22:06 GMT


Stanislaw Sidor wrote in message <35C1E9C0.67A9B0ED_at_nospam_qq.elcompzu.com.pl>...

1. Skoro dane wejsciowe sa asynchroniczne (a moze jeszcze standardowa
transmisja
START/DANE/PARZYSTOSC/STOP) to zastosuj UART z FIFO np. MAX3100 (z wyjsciem
szeregowym!!!).
Potem odczytuj synchronicznie do danej czestotliwosci UART i wszystko, no
moze
wszystko
przydalby sie jeszcze mP do obslugi tego.


No wlasnie to wszystko o to chodzi dokladnie, ale format danych nie jest
typu 8N1 czy podobny do UARTu PC.
Jest to przebieg niestandardowy calkowicie ale znana jest jego predkosc i ma
bit startu, ale bez bitu stopu ani parity.

2. Moze przebieg synchronizujacy mozna przestrajac to moze PLL pomoze ?


No WAY to do it !!!! Ten przebieg nie moze byc zmieniany bo jest potrzebny
do innych celow. Zapomnijmy o tym

Domyslam sie jednak, ze problem jest bardziej skomplikowany :-( a nie
powiedziales wszystkiego


Nie tak bardzo jak sie wydaje :)

Juliusz




Poprzedni Następny
Wiadomość
spis tre¶ci
From: Stanislaw Sidor <sts_at_nospam_qq.elcompzu.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 18:40:31 +0200


Juliusz wrote:

No wlasnie to wszystko o to chodzi dokladnie, ale format danych nie jest
typu 8N1 czy podobny do UARTu PC.
Jest to przebieg niestandardowy calkowicie ale znana jest jego predkosc i ma
bit startu, ale bez bitu stopu ani parity.

Cos mi sie tu nie zgadza. Jesli nie ma stopu a ma start to jest to przebieg
synchroniczny
tylko rozfazowany, czyz nie ?

Sprobuj moze sprobkowac przebieg wejsciowy 4-8 razy wieksza czestotliwoscia od
jego
maksymalnej do rejestru przesuwnego.
Z rejestru na sygnal zbocza z gen. odniesienia wybieraj dane do napotkania
przejscia 0->1
i tak do kolejnego zbocza.

(STS)


Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 17:11:41 GMT



Stanislaw Sidor wrote in message <35C1F37F.2E16C29C_at_nospam_qq.elcompzu.com.pl>...
Juliusz wrote:

No wlasnie to wszystko o to chodzi dokladnie, ale format danych nie jest
typu 8N1 czy podobny do UARTu PC.
Jest to przebieg niestandardowy calkowicie ale znana jest jego predkosc i
ma
bit startu, ale bez bitu stopu ani parity.

Cos mi sie tu nie zgadza. Jesli nie ma stopu a ma start to jest to przebieg
synchroniczny
tylko rozfazowany, czyz nie ?


To nie zawsze jest tak ale mniejsza o to. Potrzeba poprawic w fazie
wchodzace dane do generatora odniesienia. taki jest problem.
A czy majac ten przebieg w formacie 8N1 da sie to zrobic bez
specjalizowanych kosci - na "TTL-ach" z rodziny HC czy HCT.

Sprobuj moze sprobkowac przebieg wejsciowy 4-8 razy wieksza czestotliwoscia
od
jego
maksymalnej do rejestru przesuwnego.
Z rejestru na sygnal zbocza z gen. odniesienia wybieraj dane do napotkania
przejscia 0->1
i tak do kolejnego zbocza.

O samplowaniu myslalem, ale to wymaga procesorka kolejnego i chce tego
uniknac

Juliusz




Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 17:12:17 GMT


Aha, ile moze kosztowac ten MAX3100 ?? I kto to ma od reki ?

Juliusz




Poprzedni Następny
Wiadomość
spis tre¶ci
From: Stanislaw Sidor <sts_at_nospam_qq.elcompzu.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 19:15:10 +0200


Juliusz wrote:

Aha, ile moze kosztowac ten MAX3100 ?? I kto to ma od reki ?

Juliusz


Ma go np. SE Uniprod w Gliwicach uniprod_at_nospam_zeus.polsl.gliwice.pl
Ceny podane w DM+VAT

1-25 25-100 100+
. MAX 3100 CPD 9.67 9.01 7.84
MAX 3100 CEE 9.67 9.01 7.84

Osoba kontaktowa: Jerzy Weglorz

(STS)





Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Paweł R" <pawelr_at_nospam_elsat.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 19:59:26 +0200


Cze¶ć !

Może rozwi±zaniem będzie zastosowanie pamięci FIFO z rozdzielonymi zegarami
odczytu i zapisu.

Paweł





Poprzedni Następny
Wiadomość
spis tre¶ci
From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 18:24:40 GMT



Paweł R wrote in message <6pt0l8$3vj$1_at_nospam_sunsite.icm.edu.pl>...
Cze¶ć !

Może rozwi±zaniem będzie zastosowanie pamięci FIFO z rozdzielonymi zegarami
odczytu i zapisu.

Paweł


Zegar odczytu to nie problem bo ten sygnal, do ktorego chce sie
synchronizowac zawsze jest.

Ale co zrobic z zegarem wejscia? Wpadaja ci bity o znanej ci predkosci
transmisji, ale nie wiesz kiedy one sie pojawia czyli nie znasz fazy tych
impulsow. Na dodatek nie ma zegara dostepnego razem z danymi wejsciowymi
wiec trzeba samplowac jak w UARCI. Zreszta pogubilem sie, bo mam 10
koncepcji na minute.

Juliusz




Poprzedni Następny
Wiadomość
spis tre¶ci
From: lis_at_nospam_papuga.ict.pwr.wroc.pl (Jaroslaw Lis)
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 22:08:33 GMT


On Fri, 31 Jul 1998 18:24:40 GMT, Juliusz wrote:
Ale co zrobic z zegarem wejscia? Wpadaja ci bity o znanej ci predkosci
transmisji, ale nie wiesz kiedy one sie pojawia czyli nie znasz fazy tych
impulsow. Na dodatek nie ma zegara dostepnego razem z danymi wejsciowymi
wiec trzeba samplowac jak w UARCI. Zreszta pogubilem sie, bo mam 10
koncepcji na minute.

Odzyskanie zegara danych to osobne zadanie.
Jest pare metod - PLL, zerowany licznik, dosynchronizowywany licznik -
oczywiscie synchronizujesz do kazdego zbocza miedzy dwoma bitami o
roznej wartosci.

J.


Poprzedni Następny
Wiadomość
spis tre¶ci
From: lis_at_nospam_papuga.ict.pwr.wroc.pl (Jaroslaw Lis)
Subject: Re: PYTANIE O BUFOR
Date: Fri, 31 Jul 1998 20:07:52 GMT


On Fri, 31 Jul 1998 15:45:56 GMT, Juliusz wrote:
Czy ma ktos koncepcje jak zrobic bufor z wejsciem szeregowym asynchronicznym
i wyjsciem synchronicznym szeregowym ? Taki specyficzny shift register ?
1. Mam strumien danych wchodzacych (bez znaczenia jakich) np. lecacych z
predkoscia 200bps
2. Mam uklad, ktory wymaga aby zbocza narastajace tego strumienia byly
synchronizowane w fazie z generatorem odniesienia tego ukladu - powiedzmy
jest to fala prostokatna tak samo 200bps
3. Nie ma mozliwosci wplywania na faze strumienia wchodzacego.
Wszystko chodzi o to, ze znane sa czestotliwosci, a nie zgadza sie faza,
ktora jest wymagana przez odbierajacego.

Jesli rozmawiamy o fazie - w zalozeniach niewielkie granice zmian - to
moze po prostu zwykly jednobitowy rejestr wystarczy ?
Jesli tam zachodzi potrzeba zapamietania wiecej bitow ... to chyba
lepiej mowic o chwilowejfluktuacji czestotliwosci.

Poniewaz strumien wchodzacy jest asynchroniczny wiec musze na chwile
zatrzymac w buforze dane wchodzace i czekac na zbocze odniesienia z ukladu
dalej. Ale trzeba to tak zrobic zeby nie tracic jednego bitu danych.

Uwazaj tez w druga strone - co bedzie jak uklad na wyjsciu zazyczy
sobie danych, a one jeszcze nie nadejda ?

Ja tu jeszcze czegos nie rozumiem - czy mozesz wplywac na ktorakolwiek
czestotliwosc? Wyglada mi ze nie.
To albo wystarczy Ci jeden bit - choc to wyjatkowo kiepskie,
albo masz gwarantowane ze dane nadejda szybciej ... albo - startujesz
odbiornik dopiero jak w buforze masz pare bitow.

Cos mi sie tu nie zgadza. Jesli nie ma stopu a ma start to jest to przebieg
synchroniczny tylko rozfazowany, czyz nie ?

Jesli on nie ma bitu stopu to uwazaj - co bedzie jak nadejdzie pare
bajtow samych zer czy jaki tam masz bit startu?
A w ogole sygnal ma organizacje bitowa, czy bajtowa ?

Ma ktos koncepcje ?

1) wstaw tam maly procesorek. Naprawde - Atmelka 2051 czy 1051,
PIC16C84 czy najmniejszych motorolek HC05 nic tu nie pobije.
Jesli tylko predkosci starczy, to inny chip bedzie drozszy,
a szukanie go zajmie wiecej czasu niz napisanie programu.
Zlutowanie sobie programatora chwile potrwa, ale i tak szybciej
niz dostawa nietypowego chipu.

2) Sa kosci FIFO - czyli "kolejka" rozmiary najrozniejsze, od 4x64
[do 64 slow 4 bit] do 9*4096 czy moze wieksze.
jesli masz sygnal bitowy, to wiekszosc bedzie sie marnowala, ale
za to masz dokladnie to o co chodzi - bufor, osobny zegar
wejsciowy, osobny wyjsciowy, sygnaly ze full, empty, half
stary katalog Farnela (www.farnel.co.uk) zawiera tego kilka
opcji, w cenie rzedu 5 funtow, AM7200, AM7201, DS2009, MK4501
firm jak widac AMD, Dallas, SGS-Thomson. jeszcze mozesz
sprawdzic TI.

3) takie FIFO to mozna zrobic samemu - mala pamiec, dwa liczniki, i
robisz bufor kolowy. Pamiec dwuportowa, albo po prostu zestaw
niezaleznych rejestrow. Dla wiekszej ilosci bitow, to teoretycznie
sa chyba pasujace pamieci w rodzinie TTL - tam jest taka jedna
"pamiec" (hihi) 64 bity (ha ha :-)
4) taki kilkubitowy bufor to powinien sie dac zmiescic w jedny palu..


J.