PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Signal um 250ns verzögern



Robbo
02.03.2006, 10:41
Hallo zusammen,
ich suche eine einfache und billige Möglichkeit mein SPI Datensignal (SI) harwaremäßig um ca. 250ns zu verzögern. Mein Clock hat eine Frequenz von 500kHz oder 1MHz.

Ich hoffe ihr habt ne Idee.

Gruß,
Florian

avatar
02.03.2006, 10:50
Der MXD1013 könnte sich ganz gut dafür eignen
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/1822

Die Verzögerungsleitungen in dem Chip funktionieren ganz simpel. Es sind einfach mehrere hundert Inverter hintereinander geschaltet. Das IC gibts für verschiedene Zeiten. Man kann die Dinger auch kaskadieren um die Zeiten zu verlängern oder um "krumme" Werte zu erzeugen.

Du könntest z.B. den MXC1013-80 nehmen und alle drei Verzögerungsleitungen, die in dem IC drin sind hintereinander schalten. Dann kommst du auf 240 ns

ogni42
02.03.2006, 11:05
RC Glied und Schmitt-Trigger, aber die hohen Toleranzen bei den Kondensatoren (i.d.R 10%) sind für sehr genaue Verzögerungen nicht geeignet.

avatar
02.03.2006, 11:19
Die IC's von MAXIM / DALLAS arbeiten ziemlich präzise (lt. Datenblatt +/- 2ns)

Hier bekommt man die Teile:
http://www.spezial.de/eshop_artikel_details.php?ATARTH=&ARARTN=DS1013-80&HST=&OGR=&UGR=&suche=1013-80

PICture
02.03.2006, 11:27
Hallo Robbo!

Wenn Du Die Verzögerung ganz genau definieren kannst (welche Flanken um wieviel verzögert werden sollen), dann kann ich Dir was einfaches Vorschlagen. Ich glaube nicht, dass das MCX1013-80 leicht beschafbar ist.

MfG

Robbo
02.03.2006, 12:28
Hallo,
erstmal vielen Dank für die schnellen Antworten.

Diese Delay-Lines sind natürlich tolle Teile. Nur leider sind die verdammt teuer. Schuricht ca. 10 €. Und dazu nicht so leicht zu beschaffen(besonders als Privatmann).
@avatar: was ist das denn für ein shop? Ich werd aus der Seite nicht ganz schlau.

@PICture
dein Angebot hört sich verlockend an.
Die SPI Signale erzeuge ich über ein Microwire Interface Baustein (TP3465). Dieser wird an den Adress-/Datenbuss des 8051 angeschlossen. Somit kann ich höhere Taktraten fahren, und mein µC wird nicht belastet.
Jetzt habe ich zwei Modi zur verfügung:
1: Ruheclock=0, Daten werden an der fallenden Flanke auf den Bus gelegt.
2: Ruheclock=1, Daten werden an der steigenden Flanke auf den Bus gelegt.
Wie das mit dem Logik Analyzer aussieht hab ich dir angehängt.

Meine Peripherie am SPI verlangt Ruheclock = 1 und übernimmt die Daten an der positiven Flanke. --> Modus 2

Problem ist aber, dass das Datensignal vor und nach der steigenden Flanke nicht lange genug gehalten wird. Ich benötige mind. 120ns vor der Flanke und mind. 200ns nach der Flanke.

Auf dem Logik A. hab ich jetzt festgestellt, dass ich die Zeiten einhalten könnte, wenn ich das Datensignal um etwa 250ns verzögern würde.

Außerdem ist auch das CS-Signal etwas zu kurz. Das hab ich aber schon SW-mäßig behoben.

Ich hoffe das war einigermaßen verständlich.

Gruß,
Florian

avatar
02.03.2006, 14:21
@avatar: was ist das denn für ein shop? Ich werd aus der Seite nicht ganz schlau. http://www.spezial.de hat sich auf den Vetrieb von MAXIM-Bauteilen spezialisiert. Sie bieten auch IC von DALLAS SEMICONDUCTOR (DS) an. DS wurde kürzlich von MAXIM übernommen.
Die Webseite von www.spezial.de ist leider etwas unübersichtlich.

Um den Preis und die Lieferzeit für eine bestimmte Stückzahl zu erfahren, rufst du am besten mal an. Oder du füllst das Anfrage-Formular (Kontakt/Anfrage) mit Typenbezeichnung (z.B. MXD1013-80 oder DS1013-80) und gewünschter Stückzahl aus

PICture
02.03.2006, 18:49
Hallo Robbo!

Danke für die Bilder von Logic Analyzer, aber ohne Beschreibung der Signale, ist es für mich noch nicht ganz klar. Wenn die Daten um 250ns verzögern werden sollen, dann stelle ich mir das so wie im Code vor. Oben sind die ursprüngliche Daten, und unten verzögerte Daten. Wenn es so richtig ist, dann sollte die Schaltung im Code funktionieren.

MfG


_ _ _ _ _ _ _ _
In _| |_| |_| |_| |_| |_| |_| |_| |_
|
->||<- 250ns
|_ _ _ _ _ _ _ _
Out _| |_| |_| |_| |_| |_| |_| |_| |_


VCC VCC
+ +
| |
.-. .-.
R| | R| |
| | 250ns | | 250ns
'-' '-'
| ||C | ||C
o-||-\ o-||-\
| || | 74XX123 | || |
.------. .------.
In>---o----|B Q| /-----|B Q|
| |_ _| | |_ _| __
| /-oA _ Qo-\ === /-oA _ Qo-----| \
| | | R | | GND | | R | | )o->Out
| | '--o---' | | '--o---' /-|__/
| | | | | | |
| \----o | | + |
| | | 74XX00 | VCC |
| + | __ __ | __ |
| VCC \-| \ +-| \ | +-| \ |
| | )o-+ | )o--o--+ | )o--/
\---------------|__/ +-|__/ +-|__/

Ratber
03.03.2006, 00:01
Verzögerung um 250ns ?

Nimm doch einfach ne Verzögerungsleitung.
Gibt es auch in 250ns passend.

Klick mich ! (http://home.arcor.de/ratber/6064053.pdf)

Manf
03.03.2006, 08:10
RC Glied und Schmitt-Trigger, aber die hohen Toleranzen bei den Kondensatoren (i.d.R 10%) sind für sehr genaue Verzögerungen nicht geeignet.
Ich würde mir noch mal die Anforderungen an die Genauigkeit ansehen. Wie es sich darstellt darf die Verzögerung auch eine Toleranz von 20% haben und es wäre mit einer recht einfachen Tiefpass und Schmitt Trigger Schaltung zu machen.
Manfred

Robbo
04.03.2006, 11:21
Hallo,
danke für eure Vorschläge. Ich habe zwei Varianten ausprobiert. TP mit Schmitt Trigger und den Gatterbaustein.
Beim Gatter hab ich ein cd4050 benutzt. Er hat intern 6 Buffer und da hab ich die Verzögerungszeiten genutzt. Leider macht jeder Buffer nur 26ns. Das mal 6 reicht noch nicht ganz. Außerdem kann man diese Variante in der Serienfertigung nicht nutzen, weil jeder Baustein verschiedene Zeiten hat.

Der TP funktioniert immer. Die Toleranz muss man halt in Kauf nehmen.

Die einfachste und genaueste Lösung ist natürlich die Verzögerungsleitung. @Ratber: Hast du dir mal die Preise angeschaut. Ca. 10€. Das find ich dann doch etwas zu viel. Und als Privatmann kommt man auch ganz schlecht an die Dinger ran.

Gruß,
Florian

Ratber
04.03.2006, 13:49
@Ratber: Hast du dir mal die Preise angeschaut. Ca. 10€. Das find ich dann doch etwas zu viel.

Nun du willst ein Signal "definiert" verzögern und nicht "in etwa".
Das hat eben seinen Preis.
Also 10€ist nun wirklich kein Preis dafür.



Und als Privatmann kommt man auch ganz schlecht an die Dinger ran.

Nö,Verzögerungsleitungen kannste aus fast jedem alten Fernseher oder Analogen Oskas ziehen und es gibt auch noch andere Anbieter.
Der Bezug ist jedenfalls kein Problem.


Ja,wie gesagt,war nen Vorschlag.

Robbo
04.03.2006, 14:36
Hallo Ratber,

versteh mich bitte nicht falsch. Ich bin dir ja auch sehr dankbar. du hast ja schließlich die Perfekte Lösung gebracht.

Was den Preis anbetrifft. Es kommt ja immer drauf an, wie hoch der Gesamtpreis des Produktes ist. Die Relation muss eben stimmen. Aber es ist ja auch egal. Das muss jeder selber wissen.

Natürlich könnte ich auf dem Sperrmüll nach nem alten Fernseher schauen, unter den tausenden IC´s das richtige raussuchen (wenn´s das überhaupt gibt) und das ausgelötete Teil in meine Schaltung basteln. Das ist mir dann aber zu aufwändig. Da geb dann schon lieber das Geld aus.

Gruß,
Florian

Ratber
04.03.2006, 14:43
Ja,schon klar aber die Frage ist eben ob du es unbedingt brauchst.
Wenn ja dann hatse nicht viele Optionen.

Ich habe aber immernoch nicht verstanden "warum" du die 250nS verzögerung brauchst also wo das zugrundeliegende Problem ist also der Zusammenhang.

Ich kann momentan nur vermuten das der Mangel in der Zielschaltung liegt aber bei 0.5 bzw 1 Mhz SPI-Takt darf das eigentlich nicht auftreten.

MOLE
12.03.2007, 15:38
Hallo, ich hab ein ähnliches Problem, und da ich grad sehe, dass sich der Thread hier schon damit beschäftigt, denk ich mir ich beleb den noch mal :)

Also ich will zwecks Datenverarbeitung, Zustände in DFF temporär Speichern, damit ich anschließend die festen Werte auslesen kann. Dafür bekommen die DFF das Signal (high/low) und einen Takt (T=400ns) . mit dem gleichen Takt soll dann ca 50 ns später (oder auch etwas mehr) Das konstante Signal aus den DFF ausgelesen werden.
Da ich alles mit IC machen wollte und auch mit Standard RC Gliedern nicht ganz so zurechtkomme, wollte ich das mit folgendem Bauteil verzögern.
http://www.rsonline.de/cgi-bin/bv/rswww/searchBrowseAction.do?obs=sObs&name=SiteStandard&No=0&N=0&Ntk=I18NAll&Ntt=630-235&Nty=1&D=630-235&Ntx=mode%20matchpartial&Dx=mode%20matchpartial&callingPage=/jsp/homePage/homePage.jsp&BV_SessionID=@@@@0819755842.1173713125@@@@&BV_EngineID=ccchaddkgidkeeecefeceeldgkidhgj.0&cacheID=denetscape&Nr=avl:de
Leider funktioniert das Teil jetzt doch nicht wie erwartet. Der Eingangstakt vom Quarzoszi (2,5Mhz) wird extrem verzerrt, und der Ausgang sieht auch nicht besser aus.


Hab ich da was falsch angeschlossen?
Denn die Eingangs-, Ausgangssignale haben nicht einmal mehr im Ansatz irgendwas mit den TTL Signalen zu tun. Einzig die Frequenz, bzw. die Verzögerung der verkrüppelten Dinger ist richtig.

Vielleicht hat ja schon jemand Erfahrung damit gemacht und kann mir nen guten Tipp geben?
Dachte ich kann mir damit einiges vereinfachen und jetzt hab ich das teure Ding und es ist noch konfuser geworden.

Thx


EDIT: Sorry, wegen dem Bild, Aber kann hier kein Jpeg Speichern und Bmp. lädt er nicht hoch :mad: Also Notlösung war mit Open Office... WErds daheim aber umändern...

EDIT2: Hatte noch ne Arbeit gefunden, die sich wohl auch damit beschöäftigt hat. Ist zwar nicht das identische Bauteil, aber eins der gleichen Baureihe. Leider ist auf sonst ner Sprache, und hilft mir demnach auch nicht... :(
http://www.diva-portal.org/diva/getDocument?urn_nbn_se_liu_diva-2742-1__fulltext.pdf

MOLE
15.03.2007, 07:31
OK Problem hat sich erledigt. Schnall den "tollen" Delay zwar immer noch nicht, hab dafür aber im Lager alte unbenutzte inv. Schmitt-Trigger gefunden. Mit denen klappt das Verzögern optimal, auch so wie gewünscht. Also Signal wird Verzögert aber nicht groß Verändert. Hatte es zwar vorher auch mit AND Gattern, aber das ist mehr Schalt/Verkabelungsaufwand und verbraucht auch um einiges mehr PLatz, da ich dann 2-3 ICs für brauch.
Schmitt-Trigger funzt da optimal, und da er auch invertiert, kann ich mit dem sowohl das "normale" verzögerte Signal abgreifen (ca 50ns verzögert) aber auch das invertierte (ca 65 ns verzögert), das ich für was anderes brauche.

Ärgert mich aber trotzdem irgendwie 7€ für den doofen Delay ausgegeben zu haben, und jetzt kann ich ihn nicht verwenden, da er das Eingangs- und Ausgangssignal soweit verändert, dass man das für nix gebrauchen kann.

Naja, wenigstens klappt es jetzt mit dem Schmitt-Trigger, der ja auch um einiges günstiger ist. :)

Ratber
15.03.2007, 10:19
Hab ich da was falsch angeschlossen?

Vermutlich denn der Baustein ist Passiv.
Um die wiederherstellung des Signals mußt du dich selber kümmern.



Leider ist auf sonst ner Sprache,

Das ist Schwedisch.



Schmitt-Trigger funzt da optimal, .............

Na dann gabs ja doch noch ein Happy End :D