4R+4C+1FPGA = RADIO !

#4954955
Lesenswert?

Mit 2 Widerständen die Betriebsspannung auf die Hälfte teilen, den RF 
Input kapazitiv ankoppeln. Das Ganze an einen Digital-IO des XILINX.

Funktioniert leider nur bei Eingangsspannung in der Nähe von 1 Vpp. Die 
Analog-Eingänge sind mit 1 MSPS leider viel zu langsam für sowas wie ein 
SDR. Einen Mischer sehe ich auch nirgendswo.

Wegen der Belohnung melde ich mich nochmal, erst mal gucken, wie der 
Thread hier weiterläuft :-)
#4954993
Lesenswert?

Interessante Idee. :)
http://cas.tudelft.nl/pubs/Homulle15fpga.pdf

Und noch interessanter:
http://www.latticesemi.com/~/media/LatticeSemi/Documents/WhitePapers/AG/CreatingAnADCUsingFPGAResources.PDF?document_id=36525
Hmm, anbesehen davon , das dies ein anderer FPGA-Chip ist, und der 
Xilinx vielleicht schon von Haus aus höhere Samplingraten zulässt, kann 
man mit vier von diesen Dingern, wenn das Timing stimmt, sicher eine 
höhere Samplingrate ereichen.
#4955138
Lesenswert?

Das erste Paper ist spannend, vor allem die Idee mit der TDC Delayline. 
Das mit dem LVDS und externen RC gibt es schon lange, aber das ist 
leider nicht schnell. Die hier machen das schon recht lange, aber eben 
nicht schnell.

http://www.stellamar.com/index.shtml

Was benötigt man denn für die schnelle Lösung? Also geht das an einem 
normalen LVDS Eingang vom Artix oder braucht man so GPT-Anschlüsse?
OP #4955262
Lesenswert?

C. A. Rotwang schrieb:
> Sach mal willst das Forum für eigene Ambitionen bei diesem
> "Programmier-Wettbewerb" vor den Karren spannen:
>
> https://www.ettus.com/sdr-software/detail/rfnoc-vivado-challenge
>
> ???

neeee.

Das ist da ja was ganz anderes, da hast externes ADC und machst DSP mit 
SDSoC.

Aber natürlich den 4R+4C radio signal kann man auch mit SDSoC 
bearbeiten.
#4955303
Lesenswert?

Danke für den Link! Mit GTX bin ich leider raus ...

Also wenn ich das richtig verstanden habe erzeugt man intern eine 
Sampleclock die !an durch einen Tiefpassfilter zu V_ref macht. Das muss 
dann noch kalibriert werden.
Da könnte man doch auch einen externen Oszillator verwenden, vielleicht 
gibt es da welche mit Sägezahnausgang. Klar man muss immer noch 
kalibrierte aber im Vergleich zu einer PLL ist das doch deutlich 
jitterärmer.
Gast #4955387
Lesenswert?

Sieht für mich nach dem klassischen Sigma-Delta-Ansatz mit LVDS inputs 
aus. Für SDR kann man mit wenigen Bits arbeiten. Da ich mal von FM 
ausgehe, brauchts dann je Q und I ein RC-Glied. What's new?
Gast #4955497
Lesenswert?

Ok, spannend, das Xilinx-Post hatte ich überlesen.
Es gäbe sonst noch Undersampling-Tricks mit gezielter Verstimmung, da 
brauchts eigentlich nur noch Komparatoren. Aber da sehe ich noch nicht, 
wie das ohne Schwingkreis gehen sollte. Ohne LVDS gehts bestimmt 
nicht...
Gast #4962676
Lesenswert?

Antti L. schrieb:
> Ah :)
>
> Die Lösung wird öffentlich gemacht, mit Kommentaren und Erklärungen.
>
> Kann noch hier ergänzen das ich die Schaltung heute auch wirklich mit
> 500 MHz getestet habe. Die ersten Tests waren ja mit nur 3.5 MHz.

Was Willst du empfangen?

UKW?

Dann ist die frage wie selektive kannst du die Sender trennen?

Sehr interessante Idee mal sehen wo du landest.
(Firma: www.dossmatik.de) #4965180
Lesenswert?

weltbester FPGA-Pongo schrieb im Beitrag #4965038:
> Antti L. schrieb:
>> Fehlerkorrektur, für kleine bandbreite muss der clock sehr GENAU sein,
>> sauber (jitter) ist ehe zweitrangig.
>
> ????
>
> Was ist denn "sehr genau"?  Lagestabil aber Jitter angebelich egal?

Also der zeitliche Abgstand der Samplestellen müssen den gleichen 
Abstand haben, ansonsten entsteht bei der Demuolation eine ungewollte 
Frequenzmodulation. Das ist Fakt.

Ich habe auch bereits über die "Machbarkeit" eines getasteten 1Bit 
Demodulator nachgedacht. Es geht über Korrellationsverfahren und 
Rauschfilter.
Da bin ich mal gespannt welchen Weg Antti hier nutzen will.
(Firma: www.dossmatik.de) #4965206
Lesenswert?

C. T. schrieb:
> Wie wäre es hiermit? Es ist nur ein Kanal von I und Q gezeigt. Der LO
> muss natürlich ein entsprechend verschobenes Signal je Kanal erzeugen.
> Der "Mixer" ist in diesem Vorschlag der tristate-fähige Buffer des
> FPGAs.

Ich nehme bezug auf deine Skizze.

Nein so wird es nicht gehen. Deine Verschaltung von Widerständen und 
Kondensatoren sind nur lineare Bauteile.
Ein Mischer braucht ein nichtlineares Bauteil.

Als getasteter Demodulator sieht das so aus. Dieser Emfängt exakt die 
Frequenz, die an den Transistor geht.
Angehängte Dateien:
#4965360
Lesenswert?

René D. schrieb:
> Ich nehme bezug auf deine Skizze.
>
> Nein so wird es nicht gehen. Deine Verschaltung von Widerständen und
> Kondensatoren sind nur lineare Bauteile.
> Ein Mischer braucht ein nichtlineares Bauteil.

Schon richtig, aber der Tristate-Buffer macht den Job. Der wechselt mit 
der Local-Oscillator Frequenz immer zwischen Low und High-Z, quasi als 
Open-Drain Ausgang.

Ich kann mir in vielerlei Hinsicht bessere Mischer vorstellen, aber mit 
den gegebenen Einschränkungen erscheint es mir zumindest eine 
Möglichkeit zu sein. Man wird auch das C in Serie zum "Drain" noch 
weglassen können, aber dann wird man sich ein wenig mehr Mühe beim 
einstellen des DC-Offsets geben müssen und ggF. etwas vom 
Eingangsbereichs des ADCs verlieren (müsste mal nachlesen was der XADC 
Block wirklich kann).

Welche anderen Eigenschaften der FPGAs könnte man denn noch dafür 
zweckentfremden?
Angehängte Dateien:
OP #4965381
Lesenswert?

@cajt

Du hast recht, aber ich habe auch eine Lösung bekommen die zwar ähnlich 
ist aber doch etwas anders ist. Anfangs dachte ist das gleiche, dann 
dachte es funktioniert nicht, aber es tut es doch. Tristate wurde da 
auch verwendet aber ANDERS.

XADC: zum Überraschung geht läuft der auch ohne extern eingestellte DC 
common mode ganz gut.
(Firma: www.dossmatik.de) #4965796
Lesenswert?

C. T. schrieb:

> Schon richtig, aber der Tristate-Buffer macht den Job. Der wechselt mit
> der Local-Oscillator Frequenz immer zwischen Low und High-Z, quasi als
> Open-Drain Ausgang.

Als open Drain. Da hast du recht. Ich hatte es reinen Ausgang gesehen.

> Welche anderen Eigenschaften der FPGAs könnte man denn noch dafür
> zweckentfremden?

Jetzt wird es interessant. Jedes Digitalgatter beherrscht auch die 
Eigenschaften der Analogtechnik. Dieser Bereich ist in der Digitaltech 
die verbotene Zone, hier hört die Elektrotechnik nicht auf. Es nur 
stabil zum Laufen zu bekommen bis hin bei unterschiedlichen 
Temperaturen. das ist die Kunst.
Gast #4965860
Lesenswert?

Hier ein paar mögliche Puzzle-Stücke:

Clock-Recovery der GTX: Die Recovery funktioniert im Bereich von 250MHz 
(500Mbps) bis 6.25GHz (12.5Gbps).

Idelays: die kann man grob in 78ps-Schritten einstellen. Ich habe damit 
mal ein Sampling-Scope gebaut. Im Rahmen der Idelay-Tap-Genauigkeit 
natürlich, es ist nicht jeder Tap gleich.

Ein weitere Puzzle-Teil, mit einem RC-Tiefpass eine einstellbare 
Spannung erzeugen, welche eine LVDS referenziert.

Der V7 hat DDR3-HardIP mit Phasern. Zu den Teilen gibt es keine 
offizielle Doku, aber die sollten in der Lage sein, eine Clock auf einen 
Puls oder eine Pulsfolge zu alignen.

Jetzt geht mir Digitalo der Schmalz aus.

Gruß,
OP #4966226
Lesenswert?

C. T. schrieb:
> René D. schrieb:
>> Ich nehme bezug auf deine Skizze.
>>
>> Nein so wird es nicht gehen. Deine Verschaltung von Widerständen und
>> Kondensatoren sind nur lineare Bauteile.
>> Ein Mischer braucht ein nichtlineares Bauteil.
>
> Schon richtig, aber der Tristate-Buffer macht den Job. Der wechselt mit
> der Local-Oscillator Frequenz immer zwischen Low und High-Z, quasi als
> Open-Drain Ausgang.
>
> Ich kann mir in vielerlei Hinsicht bessere Mischer vorstellen, aber mit
> den gegebenen Einschränkungen erscheint es mir zumindest eine
> Möglichkeit zu sein. Man wird auch das C in Serie zum "Drain" noch
> weglassen können, aber dann wird man sich ein wenig mehr Mühe beim
> einstellen des DC-Offsets geben müssen und ggF. etwas vom
> Eingangsbereichs des ADCs verlieren (müsste mal nachlesen was der XADC
> Block wirklich kann).
>
> Welche anderen Eigenschaften der FPGAs könnte man denn noch dafür
> zweckentfremden?

Nein, nein den C darf man nicht weglassen. Ich bin enttäuscht.

Das ausgangs Produkt von dem MIXER bildet sich auf diesem C !!
Dieser C und der SWITCH zu GND sind das Herzstück des Mischers!
Wenn man diese C weglässt? Das wäre keine gute Idee.

Es geht auch ohne diesen "C in series" dann ist das Prinzip aber etwas 
anders - Änderung von Gain wegen switch gegen masse. Aber da müssten 
mehr C rein. Und ob wie gut es so geht habe ich nicht ausprobiert.

Und es gibt noch FPGA Eigenschaften die man zweckentfremden könnte :)
(Firma: www.dossmatik.de) #4966672
Lesenswert?

Ideengeber schrieb:
> Hier ein paar mögliche Puzzle-Stücke:
>
> Clock-Recovery der GTX: Die Recovery funktioniert im Bereich von 250MHz
> (500Mbps) bis 6.25GHz (12.5Gbps).
>
> Idelays: die kann man grob in 78ps-Schritten einstellen. Ich habe damit
> mal ein Sampling-Scope gebaut. Im Rahmen der Idelay-Tap-Genauigkeit
> natürlich, es ist nicht jeder Tap gleich.

Andere Frage gibt es eine Möglichkeit das Tastverhältnis Duty-Cycle 
verändern? Dann kommt man in noch höhere Fequenzen.
OP #4971834
Lesenswert?

Habe ich ja nicht gesagt das es es nicht ist. Es ist sogar SEHR ähnclih 
zu dem Schaltung ich auf dem prototype brett gerade teste.

Ich habe später nur gesagt das ich entäuscht bin wenn cajt den C 
wegnehmen wollte von seiner Schaltung.

Es gibt auch schaltung wo der C in series zu open drain nicht da ist, 
aber der funktioniert etwas anders als die variante mit C.
Gast #4973374
Lesenswert?

@ René D.

>Andere Frage gibt es eine Möglichkeit das Tastverhältnis Duty-Cycle
>verändern? Dann kommt man in noch höhere Fequenzen.

Ja, kann man. Es gibt Ausgänge aus dem Clock-Manager (MMCM) für große 
Schritte:

"Since the VCO can provide eight phase shifted clocks at 45° each; 
always providing possible settings for 0°, 45°, 90°, 135°, 180°, 225°, 
270°, and 315° of phase shift"

Für die kleinen Schritte kann man feinjustieren per Dynamic Shift 
Interface in Schritten von 1/(56*Fvco). VCO-Freqoenz kann 600-1600MHz 
sein.

Bei den GTX kann man noch manuell in die Abtastung eingreifen und 
schieben, aber GTX sollen ja nicht im Spiel sein.

Gruß,
Gast #5014368
Lesenswert?

Ich weiß nicht, was diese Geheimniskrämerei mit Ratespiel soll, wir sind 
doch hier nicht im Kindergarten ;). Wenn es für die Öffentlichkeit 
bestimmt ist, dann erklärt man einfach wie es funktioniert. Wenn nicht, 
behält man es für sich, auch ok...
Oder will man hier möglichst viele interessante Ideen (für ein 
kommerzielles? Produkt) sammeln?
Gast #5014370
Lesenswert?

nein, ist kein so geheimnis und wird nichts so gestohlen auch, das 
termin wurde von Adam so festgelegt, end termin. Das SCHNELL etappe ist 
ja längst vorbei

https://wiki.trenz-electronic.de/display/PD/Challenge+Nr+1%3A+4R4C-RADIO

Wenn sie den ULTRAscale kit wollen, muss noch bishen mühe geben bis 3 
juli ;)

Da ist mein original noch nicht beschrieben, das kommt auch mit mehr 
erklärungen.
Gast #5216189
Lesenswert?

Was genau kann man mit der Schaltung machen?

Nehmen wir an, es soll ein FM-Radio für den Frequenzbereich 88-108MHz 
damit "programmiert" werden.
Haben wir dann einen 500MHz sampling ADC mit 1 Bit Auflösung?
Reicht das Signal, um die gewünschte Frequenz mit einem Bandpassfilter 
herauszufiltern und danach die FM-Demodulation zu machen?
Ist Alliasing ein Problem?
Könnte man das Ganze auch mit einem Altera MACH10 realisieren?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren