Hätte ich nie den FPGA erwähnt.
Das Verhalten einer Schaltung ist schon etwas anderes als
ein Programm. Programme werden sequenziell (Befehl für
Befehl) verarbeitet. Was man in VHDL beschreibt stellt
dagegen eine digitale Schaltung mit logischen Verknüpfungen
dar. Nicht der gesamte Schüsselwortsatz (ich vermeide mit
Absicht: Befehl) von VHDL kann synthetisiert werden, dass
heißt in eine Schaltung im FPGA umgesetzt werden.
Beschrieben (ich vermeide Programmiert) werden FPGAs meist
über eine JTAG-Interface (Joint Test Action Group) im
Zielsystem. Durch den internen Aufbau [SRAM (static random
access memory)] des FPGAs, bleibt die softe Hartware (kein
Programm!!) nur bis zum Ausschalten der Versorgung erhalten.
Um die Verschaltung beim Einschalten zu laden gibt es zum
Beispiel die Möglichkeit ein configurations device
(Flash-EEPROM) anzuschließen. Ansonsten kann man auch mit
einem µC (Mikrocontroller) die Verschaltung laden.
Es gibt aber auch von Actel
http://www.actel.com FPGAs auf
Flash-Basis, die aber langsamer sind als SRAM-Basierte.
Schau dir zum Beispiel mal das Datenblatt vom Cyclone an.
http://www.altera.com/literature/lit-cyc.jsp (Sektion I. Kapitel 2)
Da siehst du zum Beispiel, wie die die einzelnen
Logikelemente aufgebaut sind.
Ein NIOS II (32-Bit-RISC-CPU) benötigt ca. 2500
Logikelemente in einem Cyclone FPGA. Auf dem Terasic TREX C1
Board ist ein EP1C6Q240C8 (5980 Logikelemente).
Mit dem Board wurde auch schon ein alter Spiele Computer
realisiert.
http://www.symbos.de/trex.htm
JTAG
http://de.wikipedia.org/wiki/JTAG
Der FPGA ist nur eine mögliche Realisierungsmöglichkeit,
wenn man das USB-Interface fast komplett selber bauen will.
Für einen eigenen ASIC (Application Specific Integrated
Circuit) wird dir wohl das Geld fehlen.
Für Host-Controller gibt es auch fertige Chips, die man an
einen µC betreiben kann. Bei µC brauchst du auch nicht immer
nur an AVR, PIC, 8051 und .. zu denken. Es gibt auch richtig
leistungsfähige µC, wie zum Beispiel die ARM-Familie
(32-Bit-RISC-CPU), die von verschieden Herstellern gefertigt
werden. Solche µC können schon ältere PC-CPUs zum schwitzen
bringen. (An einen ARM-Core für einen FPGA wirst du nicht so
einfach drankommen, der wirt schon einiges kosten, aber als
fertigen Chip wird es schon einfacher.)
Ein ARM mit Ethernet-MAC heißt zum Beispiel NET+ARM, es
fehlt nur noch der Ethernet-PHY.
http://www.digi.com/products/embedd.....s.jsp
Als BGA wirst du ihn aber nicht löten können.
Hier noch der LEON, wurde von der ESA entwickelt.
http://www.gaisler.com/cms4_5_3/ind.....d=104
http://de.wikipedia.org/wiki/Sun_SPARC
Für kleinere Anwendungen reicht auch ein kleiner µC.
Es kommt immer darauf an, wie viel Daten in welcher Zeit
verarbeit werden müssen.
MfG
Holger
_________________
George Orwell 1984 ist nichts gegen heute.
Der Überwachungsstaat ist schon da!
Leider lernen die Menschen nicht aus der Geschichte,
ansonsten würde sie sich nicht andauernd wiederholen.
[ Diese Nachricht wurde geändert von: high_speed am 15 Aug 2006 21:37 ]