Die meisten softwaredefinierten Funkperipheriegeräte beinhalten ein FPGA. Beim Entwerfen eines SDR-Peripheriegeräts würde ich gerne wissen, ob es möglich ist, ein GNU Radio-kompatibles SDR-Hardware-Peripheriegerät ohne FPGAs zu entwerfen. dh direktes Senden der Ausgabe von den ADCs an einen PC über USB. Wenn möglich, denke ich, dass mein Interesse daran liegt, FPGAs (zu anderen Kosten) zu eliminieren, weil das FPGA-Löten und -Design ein schwieriger Prozess ist, der von den meisten Anbietern nicht richtig erklärt wird. Wenn es eine Möglichkeit gibt, sie aus meinem Design zu eliminieren, wäre das großartig. Mein Interesse ist es, etwas Ähnliches zu entwerfen .
Ist es im obigen Bild, das ich von TI gefunden habe, möglich, dass wir den Ausgang des ADC über eine Art USB-Verbindung direkt mit dem PC verbinden? Vielleicht ist eine Übertragung auch auf diese Weise möglich.
Ich würde auch gerne den genauen Zweck bzw. die genauen Zwecke der Verwendung von FPGAs in SDR-Peripheriedesigns erfahren. Ich bin mir sicher, dass es viele geben kann. Aber ich würde gerne die wichtigsten wissen.
AKTUALISIEREN:
Wie von Neil_UK im Abschnitt „Antworten“ vorgeschlagen, wenn die Einschränkung darin besteht, dass die rohen ADC-Samples aufgrund der langsamen USB-Geschwindigkeit nicht über eine USB-Schnittstelle an den PC übertragen werden können, was wäre die höchste praktische Bandbreite, die wir in einem System haben könnten das verbindet den ADC direkt mit einem USB? vielleicht ein USB 3.0? Wird durch diese Entscheidung nur die Bandbreite begrenzt? Welche anderen grundlegenden Funktionen würden fehlen, wenn SDRs auf diese Weise konzipiert würden? (vorausgesetzt, es ist nicht erforderlich, mit Signalen zu arbeiten, z. B. sie zu demodulieren)
Hinweis: In dieser Antwort werden wir die SDR-Hardware zur Veranschaulichung stark vereinfachen
Das FPGA erfüllt verschiedene Funktionen in verschiedenen SDR-Designs, aber einer seiner Hauptzwecke besteht darin, "einfach den ADC mit dem PC zu verbinden". Ich denke, Sie wissen den Vorgang des Verschiebens von Daten über den Universal Serial Bus (USB) und den Vorgang des Erfassens des Funksignals nicht vollständig zu schätzen.
SDRs erfordern normalerweise mindestens zwei ADC-Streams (Quadraturerfassung nach Abwärtswandlung) und haben normalerweise mehrere Quadraturkanäle, um erweiterte Dinge wie MIMO, RADAR/Beamforming usw.
Das FPGA ist erforderlich, um die digitalen Datenströme, die von den verschiedenen ADCs kommen, zu multiplexen, um die Daten in einer Weise zu formatieren, die mit USB (und letztendlich gnuRadio) kompatibel ist, und um Steuerinformationen vom PC/gnuRadio zu empfangen und die verschiedenen Änderungen an den ADCs vorzunehmen und Down-Conversion-Komponenten.
Ohne das FPGA müssten Sie diese Funktionen mit anderer Hardware implementieren und Ihr Design würde am Ende viel komplexer sein, anstatt die Einfachheit, die Sie suchen. SDR-Designs haben sich zu ihrem aktuellen Stand entwickelt und sind heute viel kostengünstiger/einfacher als in den vergangenen Jahren.
Einige gängige SDR-Produkte von Ettus und Pervices Devices veranschaulichen die zentrale Glue-Logic-Natur des FPGA in diesen Architekturen. Beachten Sie die Platzierung des FPGA zwischen den Hochgeschwindigkeits-Analogwandlern und den relevanten externen Datenschnittstellen.
USB interface chip
- Sie brauchen das FPGA nur dazwischen, wenn Sie der Meinung sind, dass es optimaler wäre, etwas anderes als die rohen ADC-Samples in diese Leitung zu stecken. Sie kennen die einfachen USB-Logikanalysatoren auf Basis von Cypress-USB-Chips? Ein einfacher SDR kann ein ADC sein, der einen davon speist, ein komplexerer setzt ein FPGA dazwischen, um eine Hardware-Dezimierung und -Filterung zu ermöglichen.Datenrate => Bandbreite.
USB wird nur eine begrenzte Datenrate verarbeiten, und die gesamte digitalisierte Bandbreite müsste in diesen Kanal passen.
Mit einem FPGA am entfernten Ende kann es die digitalisierte Bandbreite auf die tatsächliche Kanalbandbreite reduzieren, die ein oder zwei Größenordnungen kleiner sein könnte, und diese über den USB senden. Es könnte weiter gehen und die Daten für eine oder zwei weitere Ordnungen der Datenratenreduzierung demodulieren.
Ja, das ist möglich, das machen die DVB-Receiver. Sie könnten auch ein USB 3.0-Design erstellen, z. B. basierend auf dem EZ-USB FX3 , diese können einfach an ADCs und DACs angeschlossen werden, und die Firmware richtet einfach eine Leitung zwischen einem Bulk-Endpunkt und den Peripheriegeräten ein.
Der Nachteil dabei ist, dass die Daten dann völlig unverarbeitet sind. Sie benötigen mindestens eine DC-Offset-Korrektur pro ADC und eine Kompensation für die Form des Aliasing-Filters. Die Implementierung in Software wird ziemlich viel CPU-Zeit beanspruchen. Gleichzeitig sind die Mehrkosten des FPGA im Vergleich zu den analogen Teilen nicht so groß.
Ihr Vorschlag eines softwaredefinierten Radios, das aus einem Analog-Digital-Wandler-Frontend besteht und einen (langsamen) PC speist, ist möglich, aber nicht praktikabel.
Die Rate, mit der der PC Samples verarbeiten kann, legt die ADC-Samplingrate fest. Für viele Funkarbeiten wäre diese Rate relativ niedrig, was es erforderlich macht, dass der ADC seine Eingangsspannung unterabtastet.
Um Aliasing zu verhindern, muss dem ADC ein analoges schmalbandiges Bandpassfilter vorgeschaltet werden. Außerdem würde der ADC an seinem Front-End einen recht leistungsstarken Sampler benötigen. Diese beiden Anforderungen machen das Schema etwas unpraktisch.
Suchen Sie nach den "Soft Rock" SDR-Kits.
Auf HF beschränkt, programmieren diese einen Oszillator (si570), um den gewünschten Kanal auf den Audiobereich herunterzumischen. Dann erfassen sie die Daten mit einer Computer-Soundkarte.
Die Qualität hängt von der verwendeten Soundkarte ab. Es gibt USB-basierte externe Soundkarten, die Sie mit dem Kit verwenden können und die möglicherweise bessere Ergebnisse liefern als die eingebaute Soundkarte [zum Beispiel] eines billigen Laptops.
Verbindungen:
pjc50