Hallo,
Haltet ihr es für realisierbar einen DBD-C HDTV Decoder mit einem FPGA
selber bauen zu können?
Reicht die Geschwindigkeit eines FPGAs für HD aus?
Oder kennt jemand vielleicht sogar eine Seite bei der so etwas in der
Art schon realisiert wurde?
Hallo,
machbar ist's bestimmt. Die Frage ist lohnt sich das, denn es muß wohl
schon ein 'dicker' FPGA sein (z.B. Xilinx Virtex) und die sind ja nicht
gerade günstig zu haben.
Ob so etwas schon gemacht wurde? Bestimmt, viele ASIC-Hersteller werden
ihr Design auf FPGA Basis entwickeln und testen.
Offen ist das aber bestimmt nicht! Schließlich fallen für die Benutzung
bestimmer Algorithmen z.B. MPEG Dekodierung Lizenzgebühren an.
Ich weiß ja nicht, was/warum Du das machen willst, aber ich gehe stark
davon aus, daß ein gekaufter DVB-C Receiver (für PC oder als
Set-Top-Box) wesentlich (mind. Faktor 10) günstiger ist. Von der zu
investierenden Zeit mal ganz zu schweigen.
Gruß Bernd
Gut mir geht es nicht um die Zeit und auch weniger ums Geld!
Ich will das eher als Hobbie machen!
Aber wenn für MPEG-Decodierung Lizenzen anfallen ist das sowieso
hinfällig, weil man die ja sowieso wahrscheinlich als Privatmann nicht
bekommen wird!
Oder sind diese für Privatanwender frei verfügbar?
> Oder sind diese für Privatanwender frei verfügbar?
Selbst wenn keine Lizenzgebühren anfallen, heißt das nicht, dass du die
nötigen Informationen umsonst bekommst. Im Zweifel kannst du dir
Open-Source-Implementierungen im Netz ansehen, um das "wie" zu erfahren.
Solange du den Kram privat hältst und nicht veröffentlichst sollte dir
auch wenig passieren.
OK!
Und wie "groß" muss der FPGA sein?
Ich denke mal die Anzahl der Gates ist egal, denn da sollte auch der
kleinste reichen oder?
Und wie schnell muss er sein?
> Ich denke mal die Anzahl der Gates ist egal, denn da sollte auch der> kleinste reichen oder?
Wie Bernd Geyer weiter oben schon gesagt hat, wirst du einen großen FPGA
brauchen, sowas wie Xilinx Virtex.
Die MPEG-Variante von DVB-C ist nicht so trivial zu dekodieren, dafür
braucht man schon kompliziertere Algorithmen.
Nur aus Interesse: Wie bist du auf den Gedanken gekommen, dass die
Anzahl der Gates für die Implementierung eines MPEG-Decoders egal wäre?
Grundsätzlich ist diese Thematik realisierbar, aber sicherlich nicht als
Hobby-Projekt.
Ich wollte in meiner Diplomarbeit ein ähnliches Thema angehen, wobei es
ebenfalls um HD-Signale ging.
Es war auch kein Problem an die Infos bzw. meisten Bauelemente zu kommen
( als Samples erhaltbar). Das einzige Problem war, das man für einen
Chip der HD-Signale verarbeiten kann eine Lizenz benötigt um diesen zu
bekommen. Diese Lizenz wiederum ist an bestimmte Forderungen gebunden
(nicht nur Geld) und selbst von einer Hochschule (in meinen Fall) nicht
ohne weiteres erfüllbar.
Zur MPEG-Dekodierung gibt es übrigens Spezielle Chips, daher reicht als
FPGA ein Spartan-3 locker aus, es sei den man will ein IP-Core nutzen.
Wie ich darauf komme, dass die Anzahl der Gates egal sei?
Naja mein Dozent in VHDL hat zumindest mal behauptet dass auf einen
Spartan3 mindestens 4 Intel-Prozessoren realisierbar wären und somit ja
locker ausreichen würde!
Thema Algorithmus:
Soll das heißen, dass die Dekodierung so kompliziert ist, dass es nicht
auf einem FPGA realisierbar ist?
Bekommt man niergens diese Algorithmen, die man benötigt?
naja, 4 kleine intel prozessoren (8bit oder so) kriegt man bestimmt
drauf, aber du darfst da nich in richtung pentium oder so denken. und
bei den algorithmen die man da einbaut gehen schneller als man denkt die
ein oder anderen tausend gatter flöten. ok, man hat nen paar
hundertausend, aber wenns mal komplizierter wird, und man nutzt ja nich
nur ein algorithmus sondern es ist ja eine verkettung vieler, dann wirds
schon deutlich enger mit dem platz.
Toller Prof....letztens hatten wir doch hier mal das Thema zur
Dekodierung/Enkodierung von H.264 da kannst du ja mal reinschauen, ich
glaub das waren schon alleine etliche tausend Slices in einem Virtex 5.
Hier kannst du ja mal reinschauen:
http://www.kdvelectronics.eu/mpeg2fpga/mpeg2fpga.html
ok aber dann wirds echt knapp und vor allem ist das ja kein kleiner
FPGA, den er verwendet hat!
Ich bräuchte ja schon auch noch neben MPEG4 MPEG2...
Kennt niemand eine Möglichkeit an Decodierchips ranzukommen?
Ich fürchte, dass jede nicht schon komplett fertige Lösung für HD mit
Lizenzproblemen zu kämpfen hat, denn nichts fürchten die
Rechteversilberer mehr als die Möglichkeit, unkontrollert an dekodierte
entschlüsselte Videoinformation heran zu kommen.
>Naja mein Dozent in VHDL hat zumindest mal behauptet dass auf einen>Spartan3 mindestens 4 Intel-Prozessoren realisierbar wären und somit ja>locker ausreichen würde!
Aua! Der 8086 unterstützt 96 Befehle. Ein 286 viel mehr. Das ist eine
absolut weiche Aussage....
>ja aber fertige chips, die das wandeln können muss es doch zu kaufen>geben oder?>Also Kabel-Signal rein und dekodiertes Signal raus!
Es gibt z.B. bei Xilinx welche, sogar als Sample ABER die bekommt man
nur wenn man den Nachweis einer bestimmten Lizenz(steht bei den
entsprechenden Chips dazu) hat.
Ansonsten bekommt man den Chip nicht, da auf diesen Chips intern die
Ent- bzw. Verschlüsselungs-Keys abgelegt sind und man diese mittels dem
Chip extrahieren kann.
Es gibt doch hunderte von HD-Decoder-Chips!
Kann ich die nur kaufen wenn ich vorher eine Lizenz habe? Damit meine
ich zum Beispiel die von TexasInstruments oder ST...
Ist der Dauerbrenner "Premiere und die Verschlüsselung" spurlos an dir
vorübergegangen? Bezieht sich zwar meist auf Standardformat, aber bei
der HDTV-Version wird das kaum besser aussehen.
Zudem besteht ein Trend bei den Kabelanbietern, das gesamte Programm zu
verschlüsseln, auch die normalen Sender. Zwar ohne zusätzliche laufende
Kosten, aber nicht zertifizierten DVB-Rekordern wird damit gewollt der
Hahn abgedreht.
Zuerst muss man mal unterscheiden.
1. DVB-C = Übertragungsart am Kabel. Verwendet QAM als Modulation und
Viterbi/RS als FEC Codecs. Informationen und Standards dazu gibts im DVB
Forum (www.dvb.org) bzw. bei der ETSI. Für DVB-C ist EN 300 429 V1.2.1
relevant.
DVB-C sollte man mit einem Spartan hinbekommen. Für DVB-C2, DVB-S2 oder
DVB-T2 also der "neuen Generation" von Übertragungsverfahen werden LDPC
Codes eingesetzt. Dafür benötigt man RICHTIG Rechenleistung. Da gehts
eher Richtung Virtex5 in der grossen Variante.
Nach der Demodulation, der Fehlerkorrektur und dem Reframing bekommt man
einen sogenannten Transport Strom (188 Byte Zellen bzw. 204 Byte mit RS
FEC). Dieser ist für DVB-S, DVB-T und DVB-C bzw. für DVB-S2, DVB-T2 und
DVB-C2 (im Broadcast Profile) bis auf ein paar Tabellen gleich.
2. In diesem Transport Strom stecken nun teilweise MPEG2 oder MPEG4
Datenströme. Diese müssen dann weiterverarbeitet werden. Wie gross der
FPGA sein muss hängt von der gewählten Implementierungsart ab. Entweder
man implementiert eine Art Prozessor und dekodiert in "Software"
(einfacherer und kleinerer Core, viel höhere Geschwindigkeit benötigt,
einfachere Entwicklung) oder man implementiert DCT und Co direkt in VHDL
(komplexer und grosser Code, weniger hohe
Geschwindigkeitsanforderungen).
Sowohl für 1, als auch für 2 gibts fertige Chips, komerzielle IP Cores
und teilweise private bzw. Open Source Projekte.
Was möchtest Du von beiden nun eigentlich umsetzen?
Liebe Grüsse,
Gast
P.S. Falls wer zufällig einen LDPC Dekoder für DVB-x2 in VHDL hinbekommt
welcher in einem FPGA <100 EUR mit >30MSPS läuft, bitte melden!