Hallo, die meisten Leute versuchen ja eine IDE-Festplatte an ihren 8-Bit AVR zu hängen, ich interessiere mich eher für die andere Richtung: einen ATMega (oder XMega) als ATA Gerät an einen PC hängen. Mit 16bit Breite gehten zwar sicherlich einige Pins mehr drauf, aber dafür sollte die Übertragung auch recht schnell gehen. Hat jemand grob ne Idee was für Geschwindigkeiten da erreicht werden können bzw ob es überhaupt möglich ist? Ein Dateisystem muss nicht unbedingt implementiert werden, bzw man könnte ja ein simpels FAT16 simulieren mit nur einer "Datei". Die Anforderungen sind: -viele Daten schnell an den PC übertragen (z.B. Übertragungen welche über SPI kommen oder für den Anfang erstmal einfach direkt den Status von einzelnen Pins) -universelles Interface (über nen USB-IDE-Adapter bekommt man sowas auch an sein Notebook problemlos dran) -einigermaßen zuverlässige Datenübertragung (einzelne Daten können verloren gehen - müssen halt über simples Protokoll erkannt werden) Bei allen Ideen die mir einfallen dürfte der Flaschenhals wohl in der Taktrate des AVRs liegen... 20MHz bzw 32MHz ist nicht gerade viel. Hat jemand eine andere Idee für mein Unterfangen? (Die AT90USB Chips als USB sind aufgrund der max. 16MHz wohl ungeeignet, da der USB Bus eh keine "garantierte" Performance liefern kann) Was meint ihr dazu? Grüße Uli PS: Falls ihr der überwältigenden Meinung seid, dass diese Idee schwachsinnig ist, wie schaut dann z.b. eine Alternative über Ethernet aus? (hat ja auch jeder PC) AVR32 AP7 oder UC3A wären hierfür wohl die geeignetsten AVR-Kandidaten wobei ich mich einfach nicht entscheiden könnte was nun besser geeignet wäre (AP7 hat scheinbar eine deutlich höhere Taktfrequenz -> besser für schnelle Datenübertragung&Verarbeitung?)
Naja, machbar ist das sicherlich, aber für schnelle universelle Datenübertragung zum PC gibts USB. Das hat auch jeder PC und ist von außen zugänglich. Wüsste nicht, wieso man sich den massiven Aufwand machen sollte, eine ATA Festplatte nachzubilden, zumal du ja dann auch eine Art Filesystem integrieren musst, und sicherstellen, dass da nix passiert, wenn das OS gerade mal der Meinung ist, es müsse da irgendwas auf der "Platte" arbeiten. Das wird eine never-ending-story. Was spricht gegen eine direkte USB Verbindung? Wenn´s schnell gehn muss, gibts jetzt den FT2232H oder halt klassisch den Cypress FX2, die schaffen 25 bzw. 40MB/s....mit ordentlicher Pufferung auch kontinuierlich.
Christian R. schrieb: > zumal du ja dann auch > eine Art Filesystem integrieren musst, und sicherstellen, dass da nix > passiert, wenn das OS gerade mal der Meinung ist, es müsse da irgendwas > auf der "Platte" arbeiten. Das ist das kleinste Problem. Hängt man die Festplatte nicht ein, greift auch niemand drauf zu. Und greift man direkt auf Gerätedateien zu (dev..), dann (a) kommen blanke ATA-Kommandos an, je nach Treibermodul und (b) braucht man keinerlei Dateisystem.
Sven P. schrieb: > Christian R. schrieb: >> zumal du ja dann auch >> eine Art Filesystem integrieren musst, und sicherstellen, dass da nix >> passiert, wenn das OS gerade mal der Meinung ist, es müsse da irgendwas >> auf der "Platte" arbeiten. > Das ist das kleinste Problem. Hängt man die Festplatte nicht ein, greift > auch niemand drauf zu. Und greift man direkt auf Gerätedateien zu > (dev..), dann > (a) kommen blanke ATA-Kommandos an, je nach Treibermodul und > (b) braucht man keinerlei Dateisystem. Sicher ist das machbar. Aber es könnte ja auch sein, dass er sein Gerät an Windows hängen will, dann muss man schon mehr Aufwand treiben. Denn CreateFile() Zugriffe auf block-devices auf so niedriger Ebene erfordern Administratorrechte und sind mit vielen Fallstricken bedacht. Auch wenn du das gerne hättest, die Welt besteht nicht nur aus Linux-Rechnern. ;)
Christian R. schrieb: > Auch wenn > du das gerne hättest, die Welt besteht nicht nur aus Linux-Rechnern. ;) Och, solange er nicht konkret wird, unterstell ich halt mal das, was am einfachsten realisierbar wäre...
Hallo, Danke für eure Antworten. Den FT2232H kannte ich vorher noch nicht. ja Sven, ich hab da vorallem an die Unix/Linux Welt gedacht und das auch schon versucht sanft anzudeuten in meinem Text. Daher die Phrase dass Dateisystem wohl nicht nötig wäre. Ich muss mir das ganze nochmal genauer durch den Kopf gehen lassen... Der FT2232H klingt wirklich interessant - aber er scheint nicht gerade einfach zu beschaffen sein, und für nen Preis von >20 Euro (Mouser) ist er auch nicht gerade so günstig... Grüße Uli
Naja, der Cypress wäre da selbst in der Segor-Apotheke noch etwas günstiger. Kostet da 16 Euro etwa.
Ich sehe darin keinerlei Sinn. Wenns schnell gehen soll nimmst du einen Controller mit FullSpeed USB oder einen großen Controller mit HighSpeed. Hast du an deinem Controller Flashspeicher hängen oder eine HD? Oder wieso sollte USB nicht reichen?
Der nackte Chip kostet bei Mouser nur €6,11 (zzgl. MwSt.). Der von dir genannte Preis bezieht sich auf ein Modul mit dem FT2232H. Da ist der Chip mit den erforderlichen externen Komponenten, einer USB-Buchse und Stiftleisten schon auf eine Platine aufgelötet.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.