Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller für Festplatten Konverter


von Thorsten Klein (Gast)


Lesenswert?

Hi Leute,
Mit der Suchfunktion wurde ich leider nicht fündig, aber sollte ich die 
falschen keywords benutzt haben, könnt Ihr mir auch gerne sagen, unter 
was ich da besser suchen soll.

ich habe in der Uni ein Projekt, wo ich alle möglichen Speichermedien an 
eine Platine verbinden will, um die Daten via drag and drop zwischen den 
Festplatten hin und her zu schieben möchte. Alle Anschlüsse sollen 2 mal 
vorkommen, so dass man auch gleiche Typen kopieren kann etc.
Natürlich sollen Daten auch auf/vom den PC übertragbar sein.

Meine Frage:
Welchen Mikrocontroller benötige ich um die einzelnen Festplatten an zu 
steuern.

Geplant sind folgende Anschlüsse: (je 2 mal)
- 2 mal USB 3.0 (also insgesamt 4) (Typ B insgesamt nur 2 mal)
- micro USB
- Mini USB
jeweils in Typ a und B

- SD-Karte
- ATA (IDE)
- Sata 3
- eSata

evt.
 - PCIe (eher nicht)

Bis auf bei ATA, wo zwei Festplatten angeschlossen werden können, muss 
ich doch jeden Anschluss an extra Pins anschließen oder gibt es da auch 
die Möglichkeit, dass ich z.b. 2 Sata Anschlüsse an die selben Pins 
anschließe und ich trotzdem beide Festplatten erkenne? (Ich meine nur 
die Datenleitungen, weil die Spannungsversorgung ja zusammengelegt 
werden kann)

Weitere Eigenschaften:
- Spannungsversorgung mit 3V/5V/12V um diese an ein Steckbrett 
anzulegen.
- Drei LED's ( Power/process/warning
- Reset/Power Knopf


Ich hoffe, dass ich einigermaßen genau beschrieben habe, worum es geht.

Liebe Grüße
Thorsten Klein

von Helmut L. (helmi1)


Lesenswert?

Ich wuerde dafuer ein Mini PC Motherboard nehmen.
USB Host wuerde es noch in einem uC geben aber Sata und PCI nicht, das 
macht in der Regel der Chipsatz auf dem Motherboard.

von Martin S. (sirnails)


Lesenswert?

Mal ehrlich: Du hast doch absolut überhaupt keine Ahnung. Selbst wenn Du 
die Busstandards implementieren könntest, hättest Du noch keine 
Steuereinheit. So trivial ist das alles nicht.

von Floh (Gast)


Lesenswert?

Thorsten Klein schrieb:
> Natürlich sollen Daten auch auf/vom den PC übertragbar sein.

Was das Projekt irgendwie sinnlos macht. Warum sollte man bereits 
vorhandene HW ersetzen?
Bau in den PC 2 Multifunktionskartenleser, Front-USB und eSata ein.
Da ATA nicht hot-plug-fähig ist, würde ich dort wenn überhaupt einen 
Stecker mit Verriegelung nehmen. Zum kopieren reicht dann die 
Funktionalitäät des Betriebssystems.
Die Zusatzfunktionen kann der PC auch übernehmen:
Betriebs-LED und HDD-LED gibts bereits, Warnungen sind per Text am 
Bildschirm aussagekräftiger als eine blinkende LED.
Reset- /und Powerknopf gibts auch am PC :-)
Die Spannungsversorgung könnte man über das PC-Netzteil machen, auch 
wenn es nicht empfehlenswert ist, hier ohne Strombegrenzung zu arbeiten.

von Thorsten Klein (Gast)


Lesenswert?

Erst mal vielen Dank, für die schnelle Antworten.
Das Projekt besteht darin eine eigene Platine zu entwerfen, zu ätzen und 
dann mit den Bauteilen zu bestücken.
Es soll auch die Software selber geschrieben werden.

Deshalb fallen Motherboard und und Einbau in den Rechner flach. Es geht 
darum, dass wir Diese Festplatten anschließen wollen, ohne den Rechner 
öffnen zu müssen. Als eine Art Hub.

@ Martin:
Da hast du zum Teil Recht, was meine Ahnung angeht, Aber der 
Wissenszuwachs ist ja das Hauptziel im Studium.
Wir sind ein 2 Mann Team und haben 2 Semester Zeit! Ich denke schon, 
dass wir diese Aufgabe in einem Jahr lösen können, auch wenn du recht 
hast, dass es nicht trivial ist.

Evt. könnt ihr mir jetzt besser helfen. Sollten noch Fragen aufkommen, 
ich schau immer mal wieder rein.

Liebe Grüße
Tgorsten

von Andreas B. (andreas_b77)


Lesenswert?

Die einzige Hoffnung, das irgendwie mit einem Mikrocontroller zu 
realisieren dürften USB-zu-SATA und USB-zu-ATA Wandler sein. USB Host 
Controller findet man in vielen der großen µCs, SATA dagegen nicht. ATA 
könnte man zwar auch direkt anschließen und manuell Pins wackeln, das 
wird aber eher lahm.

Wenn es auch große Prozessoren sein dürfen, geht etwa ein Allwinner A10, 
der hat auch SATA (aber kein ATA, kann man bei modernen Chips nicht 
erwarten → USB-ATA Wandler anschließen). Für so was spezialisiertes kann 
man auch mit 128 MB DDR3-RAM dran gut arbeiten, etwas Cache für die 
Platten soll es ja bieten. Dann Linux drauf und gut is.


Ohne Vorwissen wird die erste Variante schwierig, hauptsächlich von der 
Firmware her. Variante 2 ist von der Firmware etwas einfacher da Linux 
schon alles bietet, aber auch da ist es ohne Erfahrung schwierig, ein 
komplettes angepasstes Betriebssystem zu bauen und zu booten. Die 
Hardware ist viel schwieriger wenn alles selbst gemacht werden soll 
(selber ätzen kann man wohl knicken) und ohne Erfahrung nicht in einem 
Jahr Projektarbeit zu schaffen.

von Helmut L. (helmi1)


Lesenswert?

Thorsten Klein schrieb:
> Geplant sind folgende Anschlüsse: (je 2 mal)
> - 2 mal USB 3.0 (also insgesamt 4) (Typ B insgesamt nur 2 mal)
> - micro USB
> - Mini USB
> jeweils in Typ a und B

Das ist bis auf den Stecker die gleiche Schnittstelle.
Es gibt uC die eine USB Host Funktionalitaet eingebaut haben.
z.B
http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN11/PF252140


>
> - SD-Karte         Ist auch noch einfach (SPI Port)
> - ATA (IDE)        sollte auch noch gehen ist ein Parallelport
> - Sata 3           hier treten die ersten Probleme auf benoetigt externe
                     Hardware die im Chipsatz normalerweise 
implementiert ist
> - eSata            dito.
>
> evt.
>  - PCIe (eher nicht)  auch externe Hardware erfoderlich (im Chipsatz)


Dann zur Softwareseite. Da muest ihr dann alles selber schreiben.
Also quasi ein DOS selbst. Also die ganze Dateiverwaltung mit 
FAT16/FAT32/NTFS. Dann die USB Verwaltung.
Geht aber ist sehr viel Arbeit und man muss Fit in C sein.

von Martin H. (marrtn)


Lesenswert?

Thorsten Klein schrieb:
> Das Projekt besteht darin eine eigene Platine zu entwerfen, zu ätzen und
> dann mit den Bauteilen zu bestücken.

Wenn ich das in Zusammenhang mit USB3.0 und SATA lese, wünsche ich Euch 
viel Spaß beim Ätzen der Multilayerplatine.

Welche Anforderungen in Bezug auf Stabilität und Geschwindigkeit habt 
Ihr denn?

von Martin S. (sirnails)


Lesenswert?

Thorsten Klein schrieb:
> @ Martin:
> Da hast du zum Teil Recht, was meine Ahnung angeht, Aber der
> Wissenszuwachs ist ja das Hauptziel im Studium.

Der sollte aber nicht darin bestehen, eine für einen Studenten ohne 
entsprechende Vorbildung total überzogene Aufgabe umzusetzen, um 
hinterher nach viel Zeit- und Geldaufwendungen zu scheitern.

> Wir sind ein 2 Mann Team und haben 2 Semester Zeit! Ich denke schon,
> dass wir diese Aufgabe in einem Jahr lösen können, auch wenn du recht
> hast, dass es nicht trivial ist.

Ich sehe schwarz. Und nicht, weil Du mit einem Kollegen ein Jahr Arbeit 
investieren kannst, sondern weil Du den Aufwand gewaltig unterschätzt.

Das fängt schon mit den hohen Datenraten an. Während USB 1.1 noch 
vergleichsweise gnädig ist, verzeiht USB3 als Hochfrequenzbus nichtmal 
mehr Layoutfehler. Man könnte sich hier auf 1.1 beschränken, weil die 
Geräte abwärtskompatibel sind. Viele kleinere Prozessoren haben 
integrierte Prozessoren. Damit wird es einfacher zumindest USB zu 
unterstützen.

Das Hauptproblem ist, dass ihr fünf verschiedene Bussysteme mit fünf 
unterschiedlichen Busprotokollen umsetzen wollt.

In meiner Praktikantenstelle wurde damals ein eigenes Linux-Board 
entwickelt. Neben der üblichen verdächtigen Schnittstellen war ein 
leistungsstarker x86 Prozessor im Einsatz, weil gänge Boards in dieser 
Bauform nicht genügend Rechenleistung boten. Das ganze Team hat über ein 
Jahr gebraucht, um überhaupt erstmal die Hardware richtig zum Laufen zu 
bringen. Und dann fängt erst die Softwareentwicklung an. Es müssen 
Treiber geschrieben werden und eine Linuxdistribution angepasst werden. 
Jetzt hatte man hier aber schon den großen Vorteil, dass man hier auf 
einer sehr abstrakten Ebene arbeiten konnte. Wenn man den ganzen Schmu 
jetzt auch noch hardwarenah auf Controllerebene umsetzen hätte müssen, 
dann wäre das Teil wohl auch nach drei Jahren noch nicht am laufen.

von usr (Gast)


Lesenswert?

>z.B
>http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1...


->> Advanced connectivityUSB 2.0 full-speed device/host/OTG controller 
with on-chip PHYUSB 2.0

für  MC  bleibt  da  wohl  nur  der  FX3 übrig

wie  soll das  "Board"  mit  dem  PC  verbunden  werden ?
bei  den Anforderungen  wäre  USB 3.0  oder  Gigabit  Lan  vorstellbar 
aber um  halbwegs die  Geschwindigkeiten  moderner  Platten  auszunutzen 
dürfte  fast  kein  MC  schnell  genug  sein
ein  FPGA  wäre  dafür  sicher  denkbar
aber  ob  das  als  Anfänger  innerhalb  eines  Jahres  erfolgreich 
machbar  ist ?

von Martin S. (sirnails)


Lesenswert?

Helmut Lenzen schrieb:
> NTFS. ...
> Geht aber ist sehr viel Arbeit und man muss Fit in C sein

Die Linuxgemeinde kämpft doch heute noch mit dem NTFS Dateisystem.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Gibts die Aufgabenstellung irgwndwo schriftlich und du kannst das mal 
hier hochladen?
Ist für 1 Jahr doch etwas sehr viel Stoff der da bewältigt werden muss.

von Frank M. (frank_m35)


Lesenswert?

Thorsten Klein schrieb:
> Es geht
> darum, dass wir Diese Festplatten anschließen wollen, ohne den Rechner
> öffnen zu müssen. Als eine Art Hub.

Dir ist aber schon klar, dass ein PC in seiner Gesamtheit nichts groß 
anderes ist als ein überdimensioniert großer schneller leistungsstarker 
uC. Und anstatt dessen Anschlüsse intern in ein Gehäuse zu legen kannst 
du SATA, USB, etc. problemlos nach außen hin legen.

USB3.0 werdet ihr nur mit einem PC der hardwareseitig USB3.0 
implementiert hat hinbekommen.


Also einfach ein Mini-ITX Mainboard mit einem stromsparenden Prozessor 
kaufen, das in eine winziges Gehäuse packen, CPU passiv kühlen, 
Anschlüsse nach außen, auf das Gehäuse ein kleines Touch Display setzen, 
fertig ist die Sache. Am Ende habt ihr eine Box die 15x15x5 cm groß ist 
und alles macht was ihr wollt.


Ein Analogon zu eurem Vorhaben: Wir wollen zum Mond fliegen, welches 
Propellorbetriebenes Flugzeug können wir dazu verwenden. Zusätzliche 
Vorraussetzungen: Soll Sitze haben, Zündschloss und Tank.

von Axel S. (a-za-z0-9)


Lesenswert?

Thorsten Klein schrieb:
> ich habe in der Uni ein Projekt, wo ich alle möglichen Speichermedien an
> eine Platine verbinden will, um die Daten via drag and drop zwischen den
> Festplatten hin und her zu schieben möchte.

Bei "drag and drop" mußte ich anfangen zu lachen.

Fang doch erstmal mit was kleinerem an. Laß eine LED blinken.


XL

von Axel S. (a-za-z0-9)


Lesenswert?

Martin Schwaikert schrieb:
> Helmut Lenzen schrieb:
>> NTFS. ...
>> Geht aber ist sehr viel Arbeit und man muss Fit in C sein
>
> Die Linuxgemeinde kämpft doch heute noch mit dem NTFS Dateisystem.

Was im wesentlichen daran liegt, daß

a) Microsoft die Specs nicht öffentlich macht (gemacht hat?)
b) NTFS ein "moving target" ist

Mittlerweile gibt es aus 3. Hand eine FUSE Implementierung von NTFS 
(ntfs-3g, www.tuxera.com) die für mich hervorragend funktioniert.


XL

von PittyJ (Gast)


Lesenswert?

Ich habe letztens Test mit USB-3 gemacht.
Da waren selbst einfache X86-Prozessoren fast zu langsam.
Die Controller waren alle auf PCIe-Basis, also müßte man da so ein 
Interface spezifizieren.
Also kann man Mikrocontroller und alles unter 1.5 Ghz ziemlich 
vergessen. Und selber layouten würde ich dafür nichts.

von Thorsten Klein (Gast)


Lesenswert?

Wow, ich bin immer wieder erstaunt, wie schnell hier so viele kompetente 
Antworten kommen.

Ich könnte doch die Platine 2 Geteilt gestalten. Eine Seite für USB/SD 
und eine Seite für ATA/Sata.
USB 1.0 ginge auch. Wir haben erstmal keine Anforderungen an 
Geschwindigkeit, nur an vielen Anschlüssen und Stabilität wäre auch 
wünschenswert.
Wenn USB 3.0 auch Multi-Layer Platinen erfordert, wird dass auch nichts. 
Im Moment bekommen wir im Labor nur Doppel-Layer mit Vias hin.
Wenn ein größerer Prozessor von Nöten ist, oder mehrere Kleinere dann 
ist das auch gut.

Wenn das wirklich so eine Mamutaufgabe ist, dann muss sie halt etwas 
abgespeckt werden.
Ich habe zwar gerade gesehen, dass wir dafür sogar 2 Jahre Zeit hätten, 
weil das Fach 3 geteilt ist und ich das ja auch zum Thema der 
Bachelor-Arbeit machen könnte, aber was schlagt Ihr denn vor, was eine 
mögliche Verkleinerung wäre?

Wir wollen halt viele Anschlüsse verstehen und damit arbeiten können. 
Die Arbeit mit dem Layouten vertiefen und unsere Programmier skills 
weiter schärfen.

Liebe Grüße
Thorsten

von Guest (Gast)


Lesenswert?

Uiuiui. Kriegst ja viel Kontra hier. Das Projekt schaffst du sicher 
nicht, aber in die richtige Richtung kann man dich ja trotzdem mal 
verweisen.

Du brauchst einen Prozessor. Von TI gibt es ARM Sitaras (Cortex A8) mit 
(1x) SATA und PCIe. Auch wenn das nicht exakt das ist, was du brauchst, 
ist es schonmal die richtige Richtung.

Dann schauen wir mal, BGA1031. Das heißt das scheiß Teil hat über 1000 
anschlüsse an der Unterseite. Die müssen nicht nur gelötet werden, 
sondern auch auf einer Platine gerouet werden. Dafür brauchst du 
mindestens 10 Lagen, allein die Platine wird dich ca 1000 Euro kosten. 
Du musst Sachen beachten, wie Impedanzkontrolltes Routing und matched 
Trace Length. Allein um die Grundlagen dafür zu lernen wirst du ein Jahr 
brauchen.

Wenn du immernoch bock hast, versuch mal einen Prozessor mit den von dir 
benötigten Specs zu finden. Guck dir mal ein paar der Zahlreichen 
single-board Computer a la Raspberry Pie an, da sind solche Monster 
drauf.

von Frank M. (frank_m35)


Lesenswert?

Also was studierst du denn? D.h. was kannst du denn? Beherrscht du C 
perfekt? Kennst du dich mit uC aus, Dateisystemenen, USB, SPI, ...

Du scheinst das eigentliche Problem nicht zu verstehen. Diese Anschlüsse 
erfordern eine hardwareseitige Implementierung, die so in einem 
handlichen Mikrocontroller nicht vorhanden sind, da die 
Leistungsanforderungen an den Prozessor (was dir andere hier mehrfach 
gesagt haben) gewaltig sind.

Wenn du unbedingt kein x86 System nehmen willst (warum auch immer) und 
dennoch SATA, USB, etc. haben willst, so kannst du das nehmen:
http://www.arndaleboard.org/wiki/index.php/Main_Page
Ist aber nichts anderes als ein mini-ITX Board, nur dass es eben nun den 
ARM Befehlssatz kennt. Letztendlich wirst du aber wieder ein fertiges 
Betriebssystem (bspw. Linux) drauf installieren müssen, das die 
geeigneten Treiber beinhaltet. Und das Board dazu ist fertig und du 
wirst es nicht selber herstellen können.


Was realistisch mit einem kleinen uC ist und wozu du auch Hilfe finden 
wirst wäre:
- Lesen und Bescheiben einer SD und SDHC-Karte und Ausgabe auf ein 
grafisches Display (implementieren des Protokolls zur Ansteuerung der 
SD-Karte über SPI, implementieren des FAT Dateissystem, FAT32 
Dateisystem, und nach Belieben weitere, Grafik-Display ansprechen, 
interagieren, etc.) (dafür werdet ihr, falls ihr es alles selbst machen 
wollt und nicht auf fertige Bibliotheken zurückgreifen wollt, vermutlich 
die ersten zwei Semester brauchen (ihr studiert ja nebenher noch und 
habt bisher null Ahnung von allem))
- Lesen und Beschreiben eines USB Sticks (implementieren des Protokolls 
zur Ansteuerung, Dateisysteme habt ihr schon realisiert also könnt ihr 
es hier einfach darauf anwenden)
- Kopieren von Dateien zwischen den beiden Medien über ein grafisches 
Interface (dafür gehen dann die letzten zwei Semester drauf)

Ihr könnt hier natürlich auch fertige Bibliotheken nehmen, wodurch ihr 
euch nicht mehr um die Implementierung von USB, FAT, SD-Karte, Grafische 
Oberfläche, ... kümmern müsst sondern nur noch um das Projekt und seine 
Funktion und sein Aufbau an sich. Dadurch wird alles deutlich einfacher 
und vor allem machbar innerhalb von 2-4 Semestern während nebenher noch 
studiert wird etc.

Und warum wollt ihr das machen? Also was bringt das eurem Studium wenn 
es bisher noch nichteinmal eine Bachelorarbeit ist?

von Guest (Gast)


Lesenswert?

Hahaha MultiLayer ist keine Option? Ja ne is klar.

Mal ein ernsthafter Vorschlag: Besorgt euch ein FPGA Board (zum Beispiel 
das mit den 4 HDMI Ports von Xilinx). Da könnt ihr dann allen möglichen 
Mist implementieren, die 2 Jahre könnt ihr dann zum VHDL lernen nutzen. 
Weiß net wie offen SATA ist, aber ihr könntet zB einen PC Umschalter 
damit bauen (also wie KVM switch), der aber das Bild des anderen PCs 
immer im kleinen Fenster mit anzeigt oder so. Platinen Layout könnt ihr 
dabei dann bei Erweiterungsplatinen machen, zB für PS2 anschluss oder 
USB Transceiver oder son Zeug.

von oh. (Gast)


Lesenswert?

>Erst mal vielen Dank, für die schnelle Antworten.
>Das Projekt besteht darin eine eigene Platine zu entwerfen, zu ätzen und
>dann mit den Bauteilen zu bestücken.
Es soll auch die Software selber geschrieben werden.

>Deshalb fallen Motherboard und und Einbau in den Rechner flach. Es geht
>darum, dass wir Diese Festplatten anschließen wollen, ohne den Rechner
>öffnen zu müssen. Als eine Art Hub.


Autsch. Da hat mindestens einer etwas Dickes an der Waffel...
Mein Tip. Schnell Reisaus nehmen und was anderes als Arbeit nehmen.

von Florian T. (florian_t)


Lesenswert?

Wie wäre es für den Anfang mit einem DEV Kit von einem ARM Cortex 
(irgendwas) um erst einmal so etwas wie einen Prototypen hin zu 
bekommen. An den Cortex kannst mit ein bissl Hühnerfutter ohne Probleme 
schon einmal einen USB Host und eine SD-Karte anschließen. Den Rest über 
IO-Lanes und extra Chips.

Wenn es dann nachher um das ätzen einer Platine geht, kannst das 
Referenzdesign umgestalten um es "Ätzfreundlicher" zu machen und das 
ganze dann in eine eigene Platine zu bringen.

Klar, einfach ist es auf keinen Fall. Ich weiß nicht wie die Vorgaben in 
Bezug auf die Software sind. Dürft ihr sowas wie ein OS verwenden? Oder 
müsst ihr das auch selbst schreiben? Dürft ihr vorgefertigten Code 
nehmen, oder ist das ein "from scratch" Projekt?

Ihr müsst bedenken: Je mehr Ihr für Euer Projekt selbst machen müsst, 
desto mehr Zeit braucht Ihr auch um es fertig zu stellen. 2 Semester 
sind da ein sehr sportlicher Zeitrahmen, wenn Ihr so gut wie keine 
Vorgaben habt. Vielleicht solltet Ihr als erstes erst einmal alle 
Anforderungen bis ins Detail zusammentragen. Das ist ein bisschen wenig 
was ihr da als Anforderungen bekommen habt.

von ah. (Gast)


Lesenswert?

Vergiss das Ganze. Mit so einen Projekt waere auch ein Team von 
Fachleuten von hier fuer laengere Zeit am Anschlag. Nur schon die 
Leiterplatte mit den 3GBit fuer SATA2 mit den Abklaerungen was denn 
alles wie sein soll ist aufwendig. Ich wuerde nicht unter einer 6 Lagen 
Leiterplatte dran denken. Eher mehr. SATA ist keine UART Schnittstelle. 
Da ist etliches an Protokoll obendrauf. Wenn man denn mal einen Sektor 
schreiben kann... kommt das Filesystem, die Zugriffsrechte.

von Thorsten Klein (Gast)


Lesenswert?

http://www.conrad.de/ce/de/product/975128/SATA-zu-USB-30-Festplatten-Konverter

http://www.conrad.de/ce/de/product/974452/89-cm-35-IDE-zu-SATA-Festplatten-Konverter/SHOP_AREA_37572

Ich kann mir einfach nicht vorstellen, dass das so übertrieben schwer 
ist eine Verbindung dieser beiden Platinen zu realisieren.
Wieso brauche ich 1000 Anschlüsse?
Ich will:
8x USB Leitungen
2x SD Leitungen
2x ATA Leitungen
6x Sata Leitungen
verbauen. Selbst wenn ich Sachen wie GND und VCC nicht mehrfach benutzen 
könnte, komme ich auf nur:

Sata       = 15 x 6 = 90
USB        =   5 x 8 = 40
SD Card =   9 x 2 =18
ATA       = 43 x 1 =43
Summe                = 191
Ich denke nicht, dass ich dann viel mehr wie 200 pins benötige, Wenn man 
die für die Verbindung zum Rechner und die, die der Prozessor selber 
benötig noch dazu nimmt.
Der Cortex M4 von ARM hat wenn ich mich nicht irre um die 208 
Anschlüsse.
Was fehlt dem, um es damit zu realisieren?

Liebe Grüße
Thorsten

von (prx) A. K. (prx)


Lesenswert?

Thorsten Klein schrieb:
> USB 1.0 ginge auch. Wir haben erstmal keine Anforderungen an
> Geschwindigkeit,

Als Arbeit, die als "proof of concept" anschliessend mangels 
Brauchbarkeit im Archiv begraben wird, kann man so vorgehen. 
Massenspeicher mit USB 1.1 macht aber wirklich keinen Spass.

von (prx) A. K. (prx)


Lesenswert?

Mal rein technisch betrachtet: Für Low-End NAS-Systeme gibts SoCs, ARM9 
aufwärts, die SATA und USB 2.0 mitbringen. Unterhalb von diesem Niveau 
ist das Unfug.

von Thorsten Klein (Gast)


Lesenswert?

Ich könnte ein System nehmen, dass die Anforderungen erfüllt und dann 
quasi auf unsere Platine drauf kommt über Sokelleisten. Ich kann aber 
auch nen x86 System nehmen, hab das nie auschließen wollen, sorry, wenn 
das so rüber kam...
Ein os kann ich im Grunde auch verwenden, auch Bibs. sind kein Ding aber 
in allem muss halt auch Eigenleistung stecken!

von Florian T. (florian_t)


Lesenswert?

A. K. schrieb:
> Mal rein technisch betrachtet: Für Low-End NAS-Systeme gibts ein paas
> SoCs, ARM9 aufwärts, die SATA und USB 2.0 mitbringen. Unterhalb von
> diesem Niveau ist das Unfug.

So habe ich mir das auch gedacht. Mit dem richtigen DEV Kit ist auch 
schon alles dabei was die beiden dann zum loslegen brauchen. Das ganze 
nachher in eigene Hardware zu vergießen ist ja dann ein anderes Problem 
mit dem man sich danach beschäftigen kann.

von Thorsten Klein (Gast)


Lesenswert?

Ich studiere im Übrigen Technische Informatik im 4. Semester!
Ich habe Kenntnisse über C/C++, Assembler, Digital Design, egale und dem 
Fertigen von doppel layer Platinen mit vias
Habe hier noch
4 XMC4500, 1 STM32F4 und 2 mbet LPC1768 und 1 Rasperry pi rum liegen. 
wenn das helfen würde.

Wie gesagt, wenn es etwas abgesteckter deutlich leichter wäre, wäre das 
auch ok.

von Thorsten Klein (Gast)


Lesenswert?

Das klingt doch vielversprechend. Da werde ich mal reinlesen.

von Guest (Gast)


Lesenswert?

> Der Cortex M4 von ARM hat wenn ich mich nicht irre um die 208
> Anschlüsse.

Und auf wie vielen davon kannst du nochmal SATA fahren? Ach, auf keinem? 
Interessant, da kommen bestimmt viele SATA Ports zusammen.
Prozessoren der genannten Komplexität haben nicht selten allein 200 GND 
bzw Spannungspins. Dazu kommen Pins für den Arbeitsspeicher, den du 
natürlich brauchst, aktuell aber völlig ignorierst. Das werden nochmals 
so 100 bis 200 Pins sein. Plus die 200 IOs die du dir da 
zusammenfantasierst, sind wir bei 500 bis 600 Pins. Dazu kommt noch dass 
so ein Prozessor natürlich nicht NUR die Anschlüsse hat die du brauchst, 
sondern auch viele andere Sachen, Interfaces für Displays, Kameras, etc, 
so kommt man schnell auf die 1000.

A. K. schrieb:
> Für Low-End NAS-Systeme gibts SoCs, ARM9
> aufwärts, die SATA und USB 2.0 mitbringen
Gute Idee, aber sind die auch für normalmenschen beschaffbar?

Wie gesagt, was hältst du denn von den FPGA Zeug das ich da 
vorgeschlagen habe? Bekannter hat zuletzt vor wenigen Tagen HDMI/DVI Out 
implementiert, das scheint nicht so tragisch gewesen zu sein.

von Thorsten Klein (Gast)


Lesenswert?

Florian Trück schrieb:
> A. K. schrieb:
>> Mal rein technisch betrachtet: Für Low-End NAS-Systeme gibts ein paas
>> SoCs, ARM9 aufwärts, die SATA und USB 2.0 mitbringen. Unterhalb von
>> diesem Niveau ist das Unfug.
>
> So habe ich mir das auch gedacht. Mit dem richtigen DEV Kit ist auch
> schon alles dabei was die beiden dann zum loslegen brauchen. Das ganze
> nachher in eigene Hardware zu vergießen ist ja dann ein anderes Problem
> mit dem man sich danach beschäftigen kann.

Das klingt doch vielversprechend. Da werde ich gleich mal reinlesen

von Thorsten Klein (Gast)


Lesenswert?

Guest schrieb:
> Und auf wie vielen davon kannst du nochmal SATA fahren? Ach, auf keinem?
> Interessant, da kommen bestimmt viele SATA Ports zusammen.
> Prozessoren der genannten Komplexität haben nicht selten allein 200 GND
> bzw Spannungspins. Dazu kommen Pins für den Arbeitsspeicher, den du
> natürlich brauchst, aktuell aber völlig ignorierst.

Ja! da hast du recht. Das war murks und den Arbeitsspeicher hab ich 
wirklich verplant.

von Thorsten Klein (Gast)


Lesenswert?

Mal anders gefragt:

Was wäre denn machbar?

http://www.amazon.de/Digitus-USB2-Adapterkabel-auf-SATA/dp/B000W064DK/ref=sr_1_2?ie=UTF8&qid=1362920691&sr=8-2

Das sollte doch wirklich machbar sein...

von Guest (Gast)


Lesenswert?

Thorsten Klein schrieb:
> Mal anders gefragt:
>
> Was wäre denn machbar?
>
> http://www.amazon.de/Digitus-USB2-Adapterkabel-auf...
>
> Das sollte doch wirklich machbar sein...

Was soll daran machbar sein? Da ist ein Spezial IC drinn, der GENAU 
diese Aufgabe übernimmt. Wenn du nicht vorhast 100.000 Stück davon zu 
Produzieren kannst du das als Privatmensch vergessen.

Und, was ist nun mit der FPGA Idee?

von (prx) A. K. (prx)


Lesenswert?

Guest schrieb:
> Wie gesagt, was hältst du denn von den FPGA Zeug das ich da
> vorgeschlagen habe?

FPGAs sind nicht so meine Baustelle. Liefe aber wohl aufs Gleiche raus 
wie beim SoC, nur muss man sich dann das SoC aus einem gut gefüllten 
FPGA-Baukasten erst noch zusammen bauen. Andernfalls sind die beiden 
schon in Rente bis das fertig ist.

von Florian T. (florian_t)


Lesenswert?

Guest schrieb:
> Wie gesagt, was hältst du denn von den FPGA Zeug das ich da
> vorgeschlagen habe? Bekannter hat zuletzt vor wenigen Tagen HDMI/DVI Out
> implementiert, das scheint nicht so tragisch gewesen zu sein.

Naja, 2-4 semester um VHDL zu lernen ist die eine Sache, dann aber auch 
noch die Hardware aufbauen? Das ist etwas knapp bemessen, oder?

von Guest (Gast)


Lesenswert?

A. K. schrieb:
> FPGAs sind nicht so meine Baustelle. Liefe aber wohl aufs Gleiche raus
> wie beim SoC, nur muss man sich dann das SoC aus einem gut gefüllten
> FPGA-Baukasten erst noch zusammen bauen. Andernfalls sind die beiden
> schon in Rente bis das fertig ist.

Wie schon angedeutet, das vom OP vorgeschlagene Projekt ist damit 
natürlich nicht machbar. Daher ja auch die Idee mit dem verbesserten KVM 
Switch. Ich erlaube mir mich selbst zu ziteren:

> Mal ein ernsthafter Vorschlag: Besorgt euch ein FPGA Board (zum Beispiel
> das mit den 4 HDMI Ports von Xilinx). Da könnt ihr dann allen möglichen
> Mist implementieren, die 2 Jahre könnt ihr dann zum VHDL lernen nutzen.
> Weiß net wie offen SATA ist, aber ihr könntet zB einen PC Umschalter
> damit bauen (also wie KVM switch), der aber das Bild des anderen PCs
> immer im kleinen Fenster mit anzeigt oder so. Platinen Layout könnt ihr
> dabei dann bei Erweiterungsplatinen machen, zB für PS2 anschluss oder
> USB Transceiver oder son Zeug.

Florian Trück schrieb:
> Naja, 2-4 semester um VHDL zu lernen ist die eine Sache, dann aber auch
> noch die Hardware aufbauen? Das ist etwas knapp bemessen, oder?

Also bitte, nach 2 oder 3 Monaten kann man in VHDL doch schon einiges 
machen. Braucht man ja wohl keine Jahre für. Und die Hardware soll er 
eben nicht selber machen, sondern ein Devkit benutzen, und DAZU dann 
Harware für die Interfaces machen, also ein PS/2 oder USB Adapter-Board, 
das ist dann ja nicht mehr sehr aufwändig.

von Guest (Gast)


Lesenswert?

Ich formuliere meine Idee nochmal um, je öfter ich das lese was ich da 
schreibe desto schlimmer kommt es mir vor.

Ihr kennt ja KVM Switche, wo man 2 PCs mit einem Kästchen verbindet, per 
DVI und USB/PS2. Dann verbindet man das kleine Kästchen noch mit Maus, 
Tastatur und Monitor. Nun kann man zwischen den 2 PCs umschalten, um 
eben einen der beiden selektiv bedienen zu können.

Dieses Konzept könnte man recht einfach in einem FPGA implementieren, 
und dazu dann so Spielereien machen, wie das Monitor-Bild des nicht 
aktiven PCs in der Art von Bild-in-Bild mit anzuzeigen. Oder das 
Umschalten zwischen den PCs per Hotkey zu steueren. Etc.

von Thorsten Klein (Gast)


Lesenswert?

@ guest:
Ich habe deinen Post irgend wie überlesen!
Das klingt wirklich verlockend! Eine Platine für das INterface zu 
entwerfen ist auch ausreichend.

von (prx) A. K. (prx)


Lesenswert?

Guest schrieb:
> Ihr kennt ja KVM Switche, wo man 2 PCs mit einem Kästchen verbindet

Einen Zusammenhang mit der ursprünglichen Aufgabe kann ich nicht 
wirklich erblicken.

von Helmut L. (helmi1)


Lesenswert?

A. K. schrieb:
> Einen Zusammenhang mit der ursprünglichen Aufgabe kann ich nicht
> wirklich erblicken.

Hauptsache er kann eine Platine entwickeln :=)

von Thorsten Klein (Gast)


Lesenswert?

Wenn es nur darum gehen würde eine Platine zu entwickeln, dann wäre ich 
fertig, dass habe ich schon des öfteren gemacht. Genau, wie ich diese 
auch schon gefertigt habe, Es geht schon um die Verarbeitung von 
Festplattensignalen.

von Florian T. (florian_t)


Lesenswert?

Guest schrieb:
> Also bitte, nach 2 oder 3 Monaten kann man in VHDL doch schon einiges
> machen. Braucht man ja wohl keine Jahre für. Und die Hardware soll er
> eben nicht selber machen, sondern ein Devkit benutzen, und DAZU dann
> Harware für die Interfaces machen, also ein PS/2 oder USB Adapter-Board,
> das ist dann ja nicht mehr sehr aufwändig.

2 Semester = 1 Jahr, nur um das mal zusammen zu fassen. :-)

Da er Student ist, und die Zeit nicht am Stück hat, wird es dennoch 
knapp. Egal wie seine Lösung auch aussehen wird. Seine Vorlesungen, 
Laborstunden und Praktika muss er ja dennoch machen. Deshalb habe ich 
auch vorgeschlagen erst einmal ein DEV-Kit von einem ARM Cortex (9er 
klingt gut) zu nehmen und sich voll und ganz auf das eigentliche Problem 
zu konzentrieren: Kopieren der Daten. Wenn das dann klappt, kann man 
sich um das Hardware Design kümmern. Wenn das nicht ganz fertig wird, 
ist das nicht weiter schlimm, die Aufgabe ist erst einmal geschafft und 
nur ein Detail (eigenes Hardwre Design) kann dann vielleicht mit einem 
Punktabzug bestraft werden. Das glaube ich, ist weit weniger schlimm als 
das ganze Projekt zu versemmeln.

von Florian T. (florian_t)


Lesenswert?

Thorsten Klein schrieb:
> Es geht schon um die Verarbeitung von
> Festplattensignalen.

Na dann, holt euch ein Cortex DEV-Kit bei dem die Hardware nur noch 
nachrangig ist und fangt doch damit mal an. Den Rest bekommt Ihr dann 
auch noch auf die Reihe. Um die Hardware würde ich mir erst als letztes 
Sorgen machen.

von Thorsten Klein (Gast)


Lesenswert?

Florian Trück schrieb:
> Na dann, holt euch ein Cortex DEV-Kit bei dem die Hardware nur noch
> nachrangig ist und fangt doch damit mal an. Den Rest bekommt Ihr dann
> auch noch auf die Reihe. Um die Hardware würde ich mir erst als letztes
> Sorgen machen.

An sich ne gute Idee, aber dass ist ein Projekt, dass aus Kursen 
hervorgeht, die ich absolvieren muss und eines dieser Teilkurse ist das 
HArdware design... ^^
Wenn ich das also nicht mache, kann ich diesen Kurs nicht bestehen.

Ich werde jetzt erstmal meinem Kommilitonen das Forum hier zeigen und 
dann werden wir entscheiden, ob eine andere Idee evt. leichter um zu 
setzen ist.

Ich vertraue auf eure Meinungen und werde mir die Vorschläge noch einmal 
ansehen und mich da richtig rein lesen, verstehe aber immer noch nicht, 
warum dass so extrem schwierig ist.
Es können doch auch mehrere kleine MC's sein...
Aber ich will jetzt gar nicht mehr anfangen damit, Ihr werdet schon 
recht haben.

Liebe Grüße
Thorsten

von c-hater (Gast)


Lesenswert?

Thorsten Klein schrieb:

> Welchen Mikrocontroller benötige ich um die einzelnen Festplatten an zu
> steuern.

Einen, der einerseits den gewünschten Datendurchsatz schafft und 
andererseits eine Schnittstelle für ein Bussystem aufweist, über das 
sich alle gewünschten Busse zu den HDs adaptieren lassen.

Also läuft es auf HighEnd-ARMs mit integriertem PCIe-Interface hinaus, 
wenn die Kosten nicht ganz extrem über die der naheliegenden Lösung 
steigen sollen, einfach einen fertigen Mini-PC zu nehmen und da ein 
Linux von der Stange draufzuballern.

Auf geringere Kosten kannst du ohnehin nur hoffen, wenn dann von dem 
ARM-System dann wenigstens Größenordnung 10.000 Stück gebaut werden. Bis 
dahin ist ein Mini-PC von der Stange immer die günstigere Lösung.

von Florian T. (florian_t)


Lesenswert?

Thorsten Klein schrieb:
> Ich vertraue auf eure Meinungen und werde mir die Vorschläge noch einmal
> ansehen und mich da richtig rein lesen, verstehe aber immer noch nicht,
> warum dass so extrem schwierig ist.

Also, ich will mal versuchen Dir einen kleinen Überblick zu geben:

o Du hast mehrere Schnittstellen:
- USB (Seriell)
- SATA (Seriell)
- SD/MMC IO (SPI)
- IDE (Parallel)

o Du hast mehrere mögliche Filesysteme:
- FAT 12
- FAT 16
- FAT 32
- NTFS
- evtl. weitere

o Du hast mehrere Schnittstellenprotokolle (Siehe Schnittstellen)
o Du hast unterschiedliche Verbindungsschnittstellen und Protokolle die 
Hardware anzusprechen:
- Sata: 7 Pins
- IDE: 40 Pins
- USB: 4 Pins

Jetzt erklär mir mal wie Du diese Systeme alle miteinander verbinden 
willst?
Glaubst Du, Du kannst nen USB Stick und eine IDE Platte miteinander 
verbinden, indem Du die Drähte aneinander lötest, einen Impuls auf den 
Bus gibst und die Magie des Kopierens beginnt von allein?

o Du musst jedes Protokoll einzeln implementieren, sei es durch 
vorhandene Bibliotheken, oder selbst.
o Du brauchst einen Zwischenspeicher für größere Datenmengen. (Du willst 
ja nicht jedes Bit einzeln lesen und schreiben, sonst braucht eine Demo 
ein Jahrzehnt)
o Du musst jeden Bus synchronisieren, da sie auf unterschiedlichen 
Taktraten laufen.

Kannst Du Dir vorstellen, wieviel Arbeit das ist? Hast Du auch nur die 
geringste Idee davon wieviel Speicher allein schon der Protokollstack 
brauchen wird? Du wirst mit einem kleinen Microkontroller nicht arg weit 
kommen, selbst wenn Du für jedes Protokoll nur einen einzelnen MC 
nimmst. Einzige Ausnahme sind die kleineren Sachen wie SD-Karte oder USB 
Stick. Der Rest wird zu komplex.

Glaubst Du nun im Ernst, dass Du in 40 x 90 min. wirklich das notwendige 
Wissen erlangen wirst, um all diese Dinge so zu vereinen was die 
Aufgabenstellung von Dir verlangt?

von usr (Gast)


Lesenswert?

>http://www.conrad.de/ce/de/product/975128/SATA-zu-...

>http://www.conrad.de/ce/de/product/974452/89-cm-35...

>Ich kann mir einfach nicht vorstellen, dass das so übertrieben schwer
>ist eine Verbindung dieser beiden Platinen zu realisieren.

>Was wäre denn machbar?
>http://www.amazon.de/Digitus-USB2-Adapterkabel-auf...
>Das sollte doch wirklich machbar sein...


das  zeigt  eigentlich  nur  das  die  Kenntnisse  nicht  mal 
ausreichen  den  Umfang  der  Arbeit  zu  überschauen


>Ich will:
>8x USB Leitungen
>2x SD Leitungen
>2x ATA Leitungen
>6x Sata Leitungen

und  das  wäre  nun  ein  ausgewachsener  PC  der  auch  ne 
ausreichend  schnelle  CPU  benötigt

nehmt  ein  kleines  Board    mit  alle  Schnittstellen,  packt  das 
ganze  in  ne  eigene  Kiste "Black Box"  pack  ein  Display   dazu  und 
konzentriere  dich  auf die Software
Grafik Oberfläche und  Kommunikation  zum  PC  erfordert   sicher  auch 
etwas  Zeit ..

von Florian T. (florian_t)


Lesenswert?

Ich glaube der Prof hat da mal wieder nach alter Manier in seine 
Glaskugel geschaut und hatte eine gaaaaaanz tolle Idee: Ein Gerät das 
alles kopieren kann, und wenn man ne Mülltonne daneben stellt, sortiert 
es gleich noch den Müll.

Ich glaube vielmehr dass der Prof da mal wieder keine Ahnung hatte und 
wenns Doch einer schafft will er daraus profit schlagen. Weil so ganz 
seriös scheint mir das irgendwie nicht mehr wenn ich da noch weiter 
darüber nachdenke.

von Thorsten Klein (Gast)


Lesenswert?

Danke erst mal an alle Antworten.

Projekt wird dann wohl auf USB Hub reduziert oder so. Ich melde, wenn es 
Neuigkeiten gibt...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Florian Trück schrieb:
> Ich glaube der Prof hat da mal wieder nach alter Manier in seine
> Glaskugel geschaut

Sowas funktioniert i.d.R. anders. Die, die die Studienarbeit schreiben 
wollen, gehen zu ihrem Betreuer und machen ihm einen Vorschlag. Wenn sie 
den geschickt genug verkaufen und der Betreuer von der Materie 
ausreichend wenig Ahnung hat, dann kommt auch so etwas wie der 
vorliegende Fall dabei raus.

Es kann natürlich auch sein, daß der Betreuer ganz genau weiß, worum es 
geht, und eine mehr oder weniger ausgeprägte diebische Freude daran hat, 
wohklingende Projekte gegen die Wand fahren zu sehen.

Und damit hat er gar nicht mal so vollkommen unrecht, denn die 
Fähigkeit, die eigenen Fähigkeiten und die Realisierbarkeit eigener 
Ideen einzuschätzen, die ist durchaus auch etwas, was im Rahmen solch 
eines Studiums erlernt werden soll ...

von Sam P. (Gast)


Lesenswert?

Also wenn das mit dem 4. Semester techn. Informatik stimmt, dann wundere 
ich mich doch sehr über die Blauäugigkeit.

Ist dir nie in den Sinn gekommen, einfach mal nachzugucken, wie eine 
erfolgreiche SATA-Übertragung so funktioniert? Dann wüsstest du sofort, 
dass das mit deinem Ansatz nicht klappen kann. Oder USB 3.0. Oder PCIe.

Und bevor du auf die HDMI-Idee wechselst, würde ich auch da mal 
nachgucken, wie die physikalische Übertragung läuft und wie komplex das 
Datenprotokoll ist. Du hast doch wohl in 4 Semestern genug gelernt, um 
aus diesen Daten schlussfolgern zu können, welche Verarbeitungsleistung 
das reine Protokoll erfordert. Und eine Betriebssystem-Vorlesung wirst 
du doch wohl auch besucht haben, so dass dir klar ist, was nach dem 
Anschliessen der Hardware noch alles kommt.

Du machst eine Ausbildung, in der das Planen und Beschaffen von 
Informationen eine deiner Hauptaufgaben ist, und dann kommst du ohne 
einen einzigen Handschlag selber recherchiert zu haben in ein Forum und 
glaubst, hier wird man deine Aufgabe schon lösen? Wenn du nur was 
zusammelöten willst ohne Verantwortung für dein Projekt zu übernehmen, 
brauchst du nicht zu studieren. Fleissige Handwerker werden besser 
bezahlt als schlechte Ingenieure bzw. Wissenschaftler.

Und wenn du jetzt einwendest, dass du ja das alles noch nicht kennen 
kannst weil du das noch nicht hattest, dann bedenke: Auch ein Ingenieur 
macht ständig Dinge, die er nie zuvor gemacht hat. Das ist sein Job! Und 
zwar selbständig.

Die Zeit dafür musst du mit einplanen. Wenn man neben seiner 
Hauptbeschäftigung (bei dir also das Studium) was großes plant, dann 
vergeht auch mal ein halbes Jahr nur damit, Informationen zu sammeln: 
Datenblätter sammeln, Bauteilkataloge wühlen (Beschaffbarkeit ist ja 
auch wichtig!), andere Geräte untersuchen und hinterfragen, wie dort 
dies oder jenes gelöst wurde, und auch mal ein Wegwerfmodell entwerfen 
um herauszufinden, was man noch so alles vergessen hat, alles nochmal 
umwerfen weil es doch nicht passt, usw.

Rechne mal damit, dass du nach der ganzen Vorarbeit und Planung gerade 
mal 4 Wochen zum eigentlichen Bauen hast, und vielleicht nochmal 4 
Wochen zum Programmieren. Vergleiche das mit der Masse, die du schaffen 
willst.

Überleg dir einfach mal, wie lange du wohl alleine für das Programmieren 
brauchst. Wenn du ein guter Programmierer mit jahrelanger Erfahrung 
bist, verdopple die Zeit (wir reden ja nicht von Routinearbeiten). Wenn 
du noch nie größere Projekte durchgeführt hast, dann rechne mit dem 
Fünffachen oder mehr.

Also: Fang klein an. Sehr klein. Gebt eurem Gerät EINE Funktion, nicht 
zehn auf einmal. Recherchiert und plant gründlich (sowas habt ihr doch 
wohl schon gelernt, oder?). Und wenn ihr in der halben Zeit fertig seid, 
ist doch super; denkt euch eine sinnvolle Zusatzfunktion aus und ergänzt 
das Projekt. Ist dann immer noch Zeit, wiederholt das. So lernt ihr auch 
gleich, wie kompliziert es werden kann und wie unglaublich viele 
unerwartete Probleme es gibt.

von Frank M. (frank_m35)


Lesenswert?

Ich denke der Prof hat ein ganz offenes Themengebiet vorgegeben um seine 
Studenten freie Wahl zu lassen und die Möglichkeit zu geben sich ein 
Thema selbst auszusuchen das ihnen gefällt.
Die Studenten jedoch haben diese Freiheit sofort auf PC-Bereich 
eingeschränkt und ihre Limitationen vergessen dabei zu berücksichtigen.

So wie ich das rausgehört habe will der Prof nur ein Projekt aufgebaut 
haben dass mit Massenmedien umgehen kann. Dabei soll sowohl die Hardware 
als auch die Software möglichst selbst realisiert werden um den Aufbau 
von Massenmedien und deren Anbindung zu verstehen.
Dass dann die Studenten das auf einen PC reduzieren, in dem eben SATA 
und USB grad standard ist, das hat sich der Prof wohl so nicht gedacht.

Wenn ihr nur 2 lagige Platinen herstellen könnt, ist eh jeder größere 
ARM Prozessor aus dem Spiel und somit jeder Hochgeschwindigkeits-Bus.

Somit reduziert sich das Massenmedium auf USB-Stick, SD/SDHC Karte, 
vielleicht noch RAM? als Puffer, der Anschluss auf USB1.1/2.0, SPI und 
ggf. parallelen Port.

Wie schon oben gesagt, ein Datenaustausch zwischen SD-Karte und USB 
Stick ist realisierbar und enthält vermutlich die Elemente die euer 
Prof. sehen will.

Ein USB-Hub ist schon wieder, meiner Meinung nach, recht aufwendig, da 
ihr ja mehrere USB Ports benötigt, die meisten kleineren uC aber nur 
einen haben, ich wüsste nicht wie ihr mit so einem einen Hub aufbauen 
könntet. (zudem ist da die Schwierigkeit das USB Protokoll, mit 
Massenspeicher hat das rein gar nichts mehr zu tun).

Die Alternative wäre etwas mit einer FPGA, aber ob das mit 2 lagigen 
Platinen was wird?

von Florian T. (florian_t)


Lesenswert?

Sam P. schrieb:
> Also: Fang klein an. Sehr klein. Gebt eurem Gerät EINE Funktion, nicht
> zehn auf einmal. Recherchiert und plant gründlich (sowas habt ihr doch
> wohl schon gelernt, oder?). Und wenn ihr in der halben Zeit fertig seid,
> ist doch super; denkt euch eine sinnvolle Zusatzfunktion aus und ergänzt
> das Projekt. Ist dann immer noch Zeit, wiederholt das. So lernt ihr auch
> gleich, wie kompliziert es werden kann und wie unglaublich viele
> unerwartete Probleme es gibt.

Dem würde ich uneingeschränkt zustimmen.

von Cyblord -. (cyblord)


Lesenswert?

Willkommen in Bologna. So schmeckt die Zukunft. 4 Semester TI und 
absolut kein Überblick über das Thema. Das passiert wenn man das Studium 
verschult und nur noch auf Klausuren pauken lässt. Echtes Wissen kann 
man auf so eine Weise nicht vermitteln. Anscheinend noch nichtmal die 
Fähigkeit sich vorab soweit einzulesen dass man den Aufwand auch nur 
halbwegs abschätzen kann. Und das ist ja nicht mal nur eine Person, die 
anderen sind ja auch nicht schlauer.

gruß cyblord.

von Thorsten Klein (Gast)


Lesenswert?

Ich muss gestehen, dass ich mich im Vorfeld zu wenig damit beschäftigt 
habe, aber ich habe auch wirklich nicht geglaubt, dass das so schwer 
wird.

Ihr bracuhe ab jetzt nicht mehr zu antworten, weil es das Projekt nicht 
mehr gibt! Danke für eure Hilfe und die meist freundlichen Antworten.

von Guest (Gast)


Lesenswert?

Frank M. schrieb:
> Die Alternative wäre etwas mit einer FPGA, aber ob das mit 2 lagigen
> Platinen was wird?

Been there, done it. BGA256 FPGA auf 2 Lagen ist drinn, wenn auch 
scheiße bzgl Signalintegrität. Guckt auch mal den PCB Service von Laen 
an (oshpark ehemalig DorkbotPDX PCBs), der macht auch 4 Layer PCBs recht 
günstig.

HDMI ist nicht soooo tragisch, vorallem in VHDL, man tippt eigentlich 
nur das Flussdiagramm ausm Datenblatt ab. Den Rest machen die GBit 
Transceiver im FPGA. Wie gesagt, dafür gibts auch nette Eval Boards für 
unter 200 Euro, mit Demo Code etc.

von Martin S. (sirnails)


Lesenswert?

cyblord ---- schrieb:
> Willkommen in Bologna. So schmeckt die Zukunft. 4 Semester TI und
> absolut kein Überblick über das Thema. Das passiert wenn man das Studium
> verschult und nur noch auf Klausuren pauken lässt. Echtes Wissen kann
> man auf so eine Weise nicht vermitteln. Anscheinend noch nichtmal die
> Fähigkeit sich vorab soweit einzulesen dass man den Aufwand auch nur
> halbwegs abschätzen kann. Und das ist ja nicht mal nur eine Person, die
> anderen sind ja auch nicht schlauer.
>
> gruß cyblord.

Cyblord, ich sehe das absolut genauso. Ich habe jetzt nach 7 Semestern 
nicht das gefühl, irgendwas wirklich gelernt zu haben. Außer, dass man 
nicht auf den letzten Drücker mit dem Lernen anfangen sollte...

Die Semesterklausuren stellen doch nur sicher, zum Ende des Semesters 
noch alles aus den vorangegangenen vier Monaten zu wissen. Ich habe den 
ein oder anderen Zweitversuch gehabt. Das heißt: Sich selbstständig 
intensiv auf die Wiederholung vorzubereiten, ohne aber noch etwas 
vorgekaut zu bekommen. Alles, was nicht mehr im Kopf ist, muss man sich 
mühsam erarbeiten. Ich hatte einen Viertversuch, den ich dann unterm 
Strich mit 1,0 bestanden habe. Das ist jetzt 1 1/2 Jahre her und ich 
würde nicht lügen, wenn ich behaupte, die Prüfung ohne Vorbereitung 
nochmals problemlos bestehen zu können. Und der Rest? Frag doch nach 
drei bis vier Semestern einen Studienkollegen über ein Fach aus, das er 
mit 1 bestanden hatte... gähnende Leere.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Sam P. schrieb:
> Also wenn das mit dem 4. Semester techn. Informatik stimmt, dann wundere
> ich mich doch sehr über die Blauäugigkeit.

Wenn ich mich an mein Studium zurück erinnere und vor allem an einige 
Kommilitonen, kommt mir die Blauäugigkeit irgendwie bekannt vor.

Wir hatten vor allem Theorie; und das war vor allem reine Mathematik.
Netzwerktechnik waren mathematische Formeln; Datenbanken auch.
Das Programmierpraktikum dauerte maximal 4 Wochen, wenn man nicht schon 
vorher mit dem Schein in der Hand rausgeworfen wurde, weil man einfach 
zu viel weiß.

USB, SATA... - das waren Begriffe aus dem Privatleben. Die kannte man 
von seinem PC. Mehr nicht. Und der war nur zum Schreiben (und zwar Texte 
mit Emacs und TeX) oder Spielen da.

Was später da rauskam, waren Fachidioten, die einem mathematisch 
beweisen konnte, dass Ethernet nicht funktioniert, jedoch nicht wussten, 
wie sie ein paar Daten per UDP nach Amerika schiken können.

Gut, hier sollen Daten von einer Platte (Memory-Stick, SD, etc) zur 
anderen geschickt werden. Also das, was ein PC problemlos hinbekommt; 
und zwar auch mit Drap'n'Drop. Auch ein kleiner Linux-Rechner, der eine 
USB-Schnittstelle hat, kann das. Die ganzen Medien lassen sich alle über 
spezielle Konverter auf USB bringen.

Bisher ist alles fertig gekauft und wird nur zusammengesteckt (eventuell 
noch einen USB-Hub dazwischen).

Nun kommt die Eigenleistung:
Das ganze wird mit einem Touchscreen ausgestattet. Dieses muss mit dem 
Rechner verbunden werden. Entweder mit einem fertigen Controller-IC, 
einem selbstgebautem Controller-Board oder direkt an den Rechner. Dann 
noch Touch-Erkennung eventuell auch mit einigen Wischgesten gekoppelt.

Nun muss noch ein Betriebsprogramm geschrieben werden. Komplett mit 
grafischer Benutzerumgebung, etc. pp.

Die Displayanbindung incl Programmierung ist nun die Eigenleistung.
Das ganze kommt sogar noch in ein schickes selbstgebautet Gehäuse mit 
Notebook-Akku als Stromquelle. Fertig ist die mobile Copybox mit 
Touch-Bedienung.

Das sollte in zwei Semestern machbar sein, wenn man nicht ganz alleine 
dran sitzt und nicht jeden Abend und das komplette Wochenende auf 
Parties versackt.

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
Noch kein Account? Hier anmelden.