Der CIC-Dezimierungsfilter mit Multichannel-Data-Support-Designbeispiel zeigt, wie Sie die MegaCore-Funktion des Cascaded Integrator-Integrator-Filters (CIC) verwenden, um die digitale Sample-Rate-Down-Konvertierung für mehrere unabhängige Datenquellen zu implementieren.
Digital Signal Processing (DSP)-Systeme müssen oft mit mehreren parallelen Kanälen funktionieren. Bei Anwendungen für die Digitale Datenraten-Downkonvertierung oder Up-Konvertierung (wenn verschiedene Kanäle identische Anforderungen an Geschwindigkeitsänderungen haben), kann die Zeitfreigabe von Hardwareabschnitten mit niedriger Geschwindigkeit, anstatt die gleiche Hardware für jeden Eingabekanal zu duplizieren, eine erhebliche Wiederverwendung von Ressourcen ermöglichen. Dies ist das Konzept des Mehrkanalbetriebs der CIC Filter MegaCore-Funktion.
In diesem Beispiel konfigurieren wir den CIC-Compiler so, dass er mehrere Schnittstellen unterstützt, damit wir die Vorteile der Ressourceneinsparung im MISO-Modus (Multiple-Input-Single-Output) zur Dezimierung nutzen können. Das Gesamtsystemdiagramm wird in Abbildung 1 angezeigt. Weitere Informationen zur Unterstützung des CIC-Mehrkanals finden Sie im CIC Compiler Benutzerhandbuch (PDF).
Funktionen
Diese Demo hat die folgenden Funktionen:
- Der CIC-Filter ist so konfiguriert, dass er über zwei unabhängige Schnittstellen verfügt, um parallele Eingabedatenkanäle zu unterstützen. Auf diese Weise kann der CIC-Filter die Zeit teilen der niedrigen Daten-Filterabschnitte für alle Eingabekanäle.
- Intels ASCII-1000000 Compiler (ascii:: 10000000000000000000) ist so konfiguriert, dass er einen inversen Sinc-Frequenzgang hat, um CIC-Filter-Droop zu kompensiert.
- Der-Compiler verwendet die Multi-Zyklus-Variable-Architektur (MCV), die Multiplikatoren wiederverwendet und zusätzliche Ressourceneinsparungen ermöglicht. Weitere Informationen über die MCV-Architektur finden Sie im Benutzerhandbuch für DEN THEA COMPILER (PDF).
- Für Ihre Referenz steht ein SKRIPT für das Design von CIC-Filter zur Verfügung. Das Skript verwendet die Frequenzabtastungsmethode, um einen ""-Filter zu entwickeln, der einen inversen Sinc-Frequenzgang hat. Die Gesamtreaktion des Systems wird so gedeutet, dass Sie wichtige Systemspezifikationen wie die Passbandwelligkeit und die Stop-Band-Dämpfung überprüfen können.
- Avalon® Streaming Interface wird verwendet, um Paketdaten aus mehreren Datenquellen zwischen MegaCore-Funktionen zu übertragen. Weitere Informationen über die Avalon Stream Interface finden Sie in der Spezifikation Avalon Streaming Interface.
- Der Avalon Streaming Packet Format Converter ist enthalten, um mehrere Datenkanäle ordnungsgemäß zu interle- bzw. de-interlecontrollern zu können.
Modell
Abbildung 1 zeigt den Fluss des DSP-Builder-Designs für das Down-Konvertierungsbeispiel. Die Eingaben in das Design-Beispiel sind zwei unabhängige Datenquellen. Eine Quelle ist eineIne-Welle und eine andere eine Cosine-Welle. Beide haben eine Frequenz von 2,5 MHz. Ein Teil des Eingangssignals ist durch hochfrequentes zusätzliches Rauschgeräusch beschädigt. Die Datenquellen generieren kontinuierliche Daten; Daher sind die Startofpacket- und Endofpacket-Signale der Avalon Streaming-Schnittstelle so konfiguriert, dass sie auf Streaming-Daten hinweisen.
In diesem Beispiel generieren zwei parallele Eingabedatenquellen Streaming-Daten, die mit 80 MHz und 100 Prozent Busauslastung gemessen werden. Der CIC-Filter implementiert den Großteil der Rate-Änderungen, in diesem Fall eine Abtastung um 4. Sie ist so konfiguriert, dass sie die MISO-Struktur hat, bei der sich die Zeit der parallelen Eingabekanäle die Filterabschnitte teilt, wenn sie den CIC-Filter verlassen. CIC-Filterausgänge verschachtelte Mehrkanaldaten, wobei Startofpacket- und Endofpacket-Signale die entsprechende Kanalgrenze anzeigen. Daher beträgt die CIC-Ausgangsbusauslastung 50 Prozent. Ein-Filter folgt dem CIC-Filter, um eine Kompensation der CIC-Filterfrequenz-Erdung und zusätzliche Dezimierung um 2 zu ermöglichen. Seine Output-Bus-Auslastung beträgt 25 Prozent. Der Paketformat-Konverter überlagert die Daten mit niedriger Rate und generiert zwei Source-Ports für die Datenanzeige. Jeder Datenkanal gibt alle 8 Taktzyklen ein gültiges Beispiel aus.
Wenn die Schmalband-Quellensignale eine Bandbreite haben, die kleiner als die Cutoff-Frequenz der Filter für Änderungen an der Cascaded-Rate ist, sollten gut definierte Dezimierungssysteme die Eingangssignalbandbreite beibehalten. In diesem Beispiel sind die Quellsignale zwei signalförmige Signale mit einer Trägerfrequenz von 2,5 MHz, die kleiner als die vorgesehene Cutoff-Frequenz 4 MHz ist. Wie erwartet hat das Ausgangssignalspektrum einen Anstieg bei 2,5 MHz und das hochfrequente Rauschgeräusch wird herausgefiltert.
Laden Sie die in diesem Beispiel verwendeten Dateien herunter:
- cic-miso.zip herunterladen (Version 7.2)
- Readme-Datei herunterladen (Version 7.2)
Die Verwendung dieses Designs unterliegt den Bedingungen der Intel® Designbeispiel Lizenzvereinbarung.
Parameter
Tabellen 1 und 2 listen die Parametereinstellungen auf, die im Interpolationsbeispiel verwendet werden.
Tabelle 1. Parameter für CIC-Compiler
CIC-Parameterwerte | |
---|---|
Filtertyp | Dezimierung |
Anzahl der Phasen | 4 |
Faktor für Rate-Change-Faktor | 4 |
Differenzierte Verzögerung | 2 |
Anzahl der Schnittstellen | 2 |
Anzahl der Kanäle pro Schnittstelle | 1 |
Eingabedatenbreite | 8 |
Ausgabedatenbreite | 16 |
Hogenauer Rückschnitt | Auf |
Ausgabe-Rundung | Konvergente |
Tabelle 2. Parameter für DEN "COMPILER" von "COMPILER"
WERT DER PARAMETER VON "2005" | |
---|---|
Preisspezifikation | Dezimierung durch 2 |
Eingangskanäle | 2 |
Input-Bitbreite | Unterzeichnete Binärdatei 16 |
Ausgabe-Bitbreite | Vollständige Auflösung |
Skalierung von Skalierungsfaktoren | Nichts |
Gerätereihe | Stratix® II |
Struktur | MCV |
Pipeline-Ebene | 2 |
Datenspeicher | M4K |
Datenspeicher | M512 |
Multiplikator | DSP-Blocks |
Taktfrequenzen pro Ausgabedaten | 2 |
Angaben zur Eingabe | Von der Datei |
Weiterführende Links
Weitere Informationen über Funktionen im Zusammenhang mit den in diesem Designbeispiel verwendeten Funktionen finden Sie unter: