Forum: Mikrocontroller und Digitale Elektronik CF-Karte an IDE-Port


von Uwe M. (hobbyprogrammer)



Lesenswert?

Hallo an alle,

ich habe hier ein neuen Thema aufgemacht, um die Probleme mit einer 
CF-Karte an einem selbst gebauten IDE-Interface zu diskutieren. Zuerst 
dachte ich es liegt an CF-Card Adapter.
siehe Beitrag "CF Card IDE Adapter"

Nun hat sich jedoch herausgestellt das der Adapter an ca. 50cm 
Flachbandkabel funktioniert und eben nur nicht wenn dieser direkt in der 
IDE-Interface Karte steckt. Am Flachbandkabel startet das System wie 
gewollt, direkt im IDE-Interface wird nur der Bootlader aus den ersten 
18 Sektoren gestartet, aber dann die CPM3.SYS nicht im Filebereich 
gefunden.

An der Interface Karte möchte ich nur sehr sehr ungern etwas Ändern 
müssen, da diese mit Fädeldraht handverdrahtet und zur Sicherheit mit 
gut Klarlack bedacht worden ist. Vielleicht weis ja jemand hier aus dem 
Forum eine Lösung. Evtl. Pullup Widerstände auf dem CF-Card Adapter, 
oder Serien Widerstände in bestimmten Signalwegen.

Würde mich über Tipps sehr freuen.

Grüße

Hobbyprogrammer

von Irgend W. (Firma: egal) (irgendwer)


Lesenswert?

Unterschiedliche PIO/DMA Modes?
Eventuell mit Kabel was "langsameres" ausgehandelt als ohne (was dann 
aber zu Übertragungsfehler führt)?
Sich da mal mit einem LA (zur not Oszi) aufschalten dürfte hier ganz 
aufschlussreich sein um die Unterschiede zu erkennen.

von jo mei (Gast)


Lesenswert?

Uwe M. schrieb:
> Würde mich über Tipps sehr freuen.

Ja, Dämpfungswiderstände (Längswiderstände) auf den Chip-Select-
und Read-/Write Leitungen würden sicherlich hilfreich sein.
Zumal auf den Speichermedien diese Signale sehr hochfrequent
reagieren können.

Dann noch dies: wer so fahrlässig und grosszügig alle keramischen
Abblock-Kondensatoren weglässt sollte wirklich mit irgendetwas
Hartem was furchtbar weh tut, bestraft werden.

Beitrag #6390573 wurde von einem Moderator gelöscht.
von Uwe M. (hobbyprogrammer)


Lesenswert?

jo mei schrieb:
> Dann noch dies: wer so fahrlässig und grosszügig alle keramischen
> Abblock-Kondensatoren weglässt sollte wirklich mit irgendetwas
> Hartem was furchtbar weh tut, bestraft werden.

Jedes IC hat seinen eigenen keramischen Abblock-Kondensator. Diese sind 
in den Sockeln versteckt und daher nicht sichtbar! Im Schaltplan habe 
ich diese nicht eingezeichnet.

von Chregu (Gast)


Lesenswert?

Du hast also einen Phantasieschaltplan gepostet, der mit der richtigen 
Schaltung nicht übereinstimmt?! Das ist hier eine Totsünde!

von jo mei (Gast)


Lesenswert?

Uwe M. schrieb:
> Im Schaltplan habe ich diese nicht eingezeichnet.

Das nennt man Verarschung der Community die du um Hilfe bittest.
Nein, diu bittest nicht mal um Hilfe sondern du setzt voraus dass
man dir hilft wenn du hier (d)ein Problem darstellst.

So nicht, du Verarscher!

von jo mei (Gast)


Lesenswert?

jo mei schrieb:
> So nicht, du Verarscher!

Und es scheint dir nach dem was hier zu lesen ist auch nicht mal
leid zu tun.

Nur weiter so. Hier alles für lau abgreifen was rauszuholen ist.
Bloss sich keine Schwäche geben.

von Uwe M. (hobbyprogrammer)


Lesenswert?

Guten Morgen,
ich bin durchaus kritikfähig, aber nicht in diesem Ton wie er hier 
angeschlagen wird! Dazu noch von Gastschreibern. Seid Ihr zu feige euch 
hier richtig anzumelden?

Ich betreibe die Sache als Hobby ohne professionellen oder finanziellen 
Background! Als ich den Schaltplan 2005 erstellt habe ging es mir 
vorrangig darum die Logik sauber dargestellt zu haben um die Platine 
verdrahten zu können.

Wünsche noch einen schönen Tag.

: Bearbeitet durch User
von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Hallo,

bist Du Dir sicher, dass es sinnvoll ist, den Resetpin am IDE-Bus 
unbeschaltet zu lassen -- oder hast Du das nur nicht in Deinen Plan 
eingezeichnet, weil selbstverständlich?

Grüßle
Volker

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Wir benutzen seit 20 Jahren embedded PCs mit CompactFlash als 
Festplatte. Jedesmal wenn der CF-Hersteller irgendwas ändert haben wir 
wieder Probleme, dass der Bootvorgang irgendwo in LiLo oder grub 
hängenbleibt. Wir haben deshalb scho mehrfach den HErsteller wechseln 
müssen.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Beitrag "Re: SD Karte partitionieren/formatieren Windows"

Rufus hat damals eine DOS-Software genannt, mit der man 
Konfigurationsbits im CF ändern kann.
Es gibt ein Bit, mit dem zwischen Wechselmedium und festem unterschieden 
wird.

Beitrag "XP von CF-Karte booten"
da wurde dieses Tool auch benutzt

Beitrag "Compact Flash bootbar machen?"
da gab es noch einen Thread zur Bootfähigkeit einer CF

Beitrag "Adapter 2.5 IDE HDD --> SD-Karte o.ä."
nochmal das Thema CF

von S. R. (svenska)


Lesenswert?

Uwe M. schrieb:
> Evtl. Pullup Widerstände auf dem CF-Card Adapter,
> oder Serien Widerstände in bestimmten Signalwegen.

Sinnvoll wäre vermutlich, mal mit einem Oszilloskop auf die Leitungen zu 
schauen, was da ungünstig zappelt (und mit Kabel verbessert). 
Serienwiderstände klingen nach einer guten Lösung und Pullups auf den 
Datenleitungen solltest du sowieso haben...

von Uwe M. (hobbyprogrammer)


Lesenswert?

Volker B. schrieb:
> Hallo,
>
> bist Du Dir sicher, dass es sinnvoll ist, den Resetpin am IDE-Bus
> unbeschaltet zu lassen -- oder hast Du das nur nicht in Deinen Plan
> eingezeichnet, weil selbstverständlich?
>
> Grüßle
> Volker

Im Schaltplan fehlen wirklich nur die Abblock Kondensatoren. Alles alles 
andere entspricht genau der Verdrahtung auf der Platine.
Den Reset Pin am IDE-Port hab ich wirklich nicht beschaltet. Aber frag 
mich bitte nicht nach dem Grund. Ist ja schon 15Jahre her das ich das 
System aufgebaut habe. Auf jeden Fall Danke für den Hinweis. Werde 
dieses noch ergänzen. :-)

von Uwe M. (hobbyprogrammer)


Lesenswert?

Christoph db1uq K. schrieb:
> Wir benutzen seit 20 Jahren embedded PCs mit CompactFlash als
> Festplatte. Jedesmal wenn der CF-Hersteller irgendwas ändert haben wir
> wieder Probleme, dass der Bootvorgang irgendwo in LiLo oder grub
> hängenbleibt. Wir haben deshalb scho mehrfach den HErsteller wechseln
> müssen.

Danke für die Info. Das würde heissen das es evtl. mit anderen CF-Karten 
funktionieren könnte. Im Einsatz ist eine Transcend CF100i mit 512MB.

von Uwe M. (hobbyprogrammer)


Lesenswert?

Christoph db1uq K. schrieb:
> Beitrag "Re: SD Karte partitionieren/formatieren Windows"
>
> Rufus hat damals eine DOS-Software genannt, mit der man
> Konfigurationsbits im CF ändern kann.
> Es gibt ein Bit, mit dem zwischen Wechselmedium und festem unterschieden
> wird.
>
> Beitrag "XP von CF-Karte booten"
> da wurde dieses Tool auch benutzt
>
> Beitrag "Compact Flash bootbar machen?"
> da gab es noch einen Thread zur Bootfähigkeit einer CF
>
> Beitrag "Adapter 2.5 IDE HDD --> SD-Karte o.ä."
> nochmal das Thema CF

Danke für die Links. Werd ich mir heut Abend am PC ansehen.

von Funkdeppjäger (Gast)


Lesenswert?

Sicher, dass es nicht an der CF-Karte (also Hersteller/Modell und nicht 
defektes Exemplar) liegt?
Im Atari Bereich nehmen einige Leute IDE/CF Lösungen. Ich habe exakt 
denselben IDE<->CF Adapter und mit Kingston (habe nur diese) keine 
Probleme. Allerdings berichten andere Leute mit CF Karten anderer 
Hersteller durchaus Probleme.

von Uwe M. (hobbyprogrammer)


Lesenswert?

S. R. schrieb:
> Uwe M. schrieb:
>> Evtl. Pullup Widerstände auf dem CF-Card Adapter,
>> oder Serien Widerstände in bestimmten Signalwegen.
>
> Sinnvoll wäre vermutlich, mal mit einem Oszilloskop auf die Leitungen zu
> schauen, was da ungünstig zappelt (und mit Kabel verbessert).
> Serienwiderstände klingen nach einer guten Lösung und Pullups auf den
> Datenleitungen solltest du sowieso haben...

Leider hab ich das Oszi mit welchen ich das System vor 15Jahren 
aufgebaut habe nichtmehr. Leider auch niemanden im Freundes oder 
Bekanntenkreis wo ich mir eines mal ausborgen könnte. Ich werde es mir 
Pullups und Serienwiderständen versuchen. Ich dachte an 4,7KOhm als 
Pullup und 47Ohm als Serienwiderstand.

von Uwe M. (hobbyprogrammer)


Lesenswert?

Funkdeppjäger schrieb:
> Sicher, dass es nicht an der CF-Karte (also Hersteller/Modell und nicht
> defektes Exemplar) liegt?
> Im Atari Bereich nehmen einige Leute IDE/CF Lösungen. Ich habe exakt
> denselben IDE<->CF Adapter und mit Kingston (habe nur diese) keine
> Probleme. Allerdings berichten andere Leute mit CF Karten anderer
> Hersteller durchaus Probleme.

Die von mir verwendete 512MB CF-Card hatte ich mal in einem kleinen 
Rechner mit IPCOP am laufen. Hat also damals einwandfrei funktioniert. 
Kann allerdings auch nicht gänzlich ausschließen das diese nicht mehr 
ordnungsgemäß funktioniert.
Auffällig ist eben das das System sauber bootet und läuft wenn der 
CF-Card Adapter mit ca. 50cm Kabel am IDE-Port hängt, wenn der Adapter 
direkt gesteckt wird aber nicht.

von Funkdeppjäger (Gast)


Lesenswert?

Mir ist im Schaltplan aufgefallen, dass die Reset Leitung am IDE Port 
nicht angeschlossen ist.

von Uwe M. (hobbyprogrammer)


Lesenswert?

Funkdeppjäger schrieb:
> Mir ist im Schaltplan aufgefallen, dass die Reset Leitung am IDE Port
> nicht angeschlossen ist.

Ja, richtig. Hat mich User vobs schon drauf aufmerksam gemacht. :-)

von S. R. (svenska)


Lesenswert?

Funkdeppjäger schrieb:
> Sicher, dass es nicht an der CF-Karte (also Hersteller/Modell
> und nicht defektes Exemplar) liegt?

Zusatzfrage: Du hast die gleiche CF-Karte (mit den gleichen Daten) in 
zwei Adaptern am gleichen System verwendet, richtig? An einem Adapter 
lief es, am anderen Adapter nur mit Kabel?

von Uwe M. (hobbyprogrammer)


Angehängte Dateien:

Lesenswert?

Ich habe 2 CF-Card Adapter.
Den grünen links mit 44Pin, der passt für meinen USB-PATA Adapter, um 
die Images auf die CF-Karte zu kopieren.
Den schwarzen rechts mit 40Pin, weil der den passenden Anschluß hat um 
direkt in den IDE-Port auf meiner Platine gesteckt zu werden.
Direkt im IDE-Port wird der Bootloader einwandfrei aus den ersten 
18Sektoren gelesen und gestartet, dieser findet dann aber die CPM3.SYS 
im Filebereich nicht.
Wenn ich diesen (schwarzen) Adapter per Kabel (ca. 50cm) an den IDE-Port 
hänge, bootet das CP/M System so wie es sein soll und läuft auch sauber 
ohne Probleme. Die CF-Karte war immer diesselbe, eine Transcend CF100i 
mit 512MB.
Ich hatte auch schon die maximalen Waitstates die der verwendete Z180 
Prozessor erzeugen kann eingestellt, aber ohne Erfolg.

von S. R. (svenska)


Lesenswert?

Uwe M. schrieb:
> Ich hatte auch schon die maximalen Waitstates die der verwendete Z180
> Prozessor erzeugen kann eingestellt, aber ohne Erfolg.

Das klingt, als ob du die Signale nicht in der korrekten Reihenfolge 
setzt, bzw. zu schnell hintereinander (z.B. zu knappes Timing zwischen 
den IDE Daten- und Steuerleitungen). Könnte also ein Fehler im 
IDE-Treiber sein, der bisher nicht auffiel.

Ja, eine andere CF-Karte könnte besser funktionieren, oder 
Serienwiderstände. Oder ein NOP an der richtigen Stelle im Treiber.

von Soul E. (Gast)


Lesenswert?

Uwe M. schrieb:

> Direkt im IDE-Port wird der Bootloader einwandfrei aus den ersten
> 18Sektoren gelesen und gestartet, dieser findet dann aber die CPM3.SYS
> im Filebereich nicht.
> Wenn ich diesen (schwarzen) Adapter per Kabel (ca. 50cm) an den IDE-Port
> hänge, bootet das CP/M System so wie es sein soll und läuft auch sauber
> ohne Probleme. Die CF-Karte war immer diesselbe, eine Transcend CF100i
> mit 512MB.

Das klingt doch eher nach einem Problem mit der Signalintegrität. Guck 
Dir mal mit einem vernünftigen Oszilloskop die Signale an beiden Enden 
des Kabels bzw an der direkt gesteckten Adapterplatine an. Tastkopfmasse 
HF-mäßig korrekt anschließen!

von Schlaumaier (Gast)


Lesenswert?

Sehe ich genau so. Das Kabel spielt Widerstand. Und der fehlt halt bei 
Direktanschluss.

Ist denke ich so was ähnliches wie damals bei mein SCSI. Bei ein 2 Meter 
Kabel brauchte ich kein Abschlusswiederstand. Als ich 3 Geräte ausgebaut 
hatte gab es Stress und ich musste ein haben. Ansonsten war alles 
gleich.

von jo mei (Gast)


Lesenswert?

jo mei schrieb:
> Ja, Dämpfungswiderstände (Längswiderstände) auf den Chip-Select-
> und Read-/Write Leitungen würden sicherlich hilfreich sein.

Begründung:

jo mei schrieb:
> Zumal auf den Speichermedien diese Signale sehr hochfrequent
> reagieren können.

"Geringste" Schwinger an den Signalflanken werden als doppeltes
Signal verstanden. Ein einfaches längeres Kabel wirkt als
Lastkapazität und bügelt Schwinger weg.

Schlechte Masseführung und schwache Abblock-Kondensatoren führen
oft zu solchen Ergebnissen.

Ähnliche Effekte treten auf wenn CSx und /RD und /WR nicht
wirklich zu getrennten Zeitpunkten stattfinden sondern der
Einfachheit halber die gleiche Clock-Flanke benutzen.

Alles schon selbst durchgemacht ....

von Uwe M. (hobbyprogrammer)


Lesenswert?

An dieser Stelle einmal vielen Dank für die vielen Tipps und Hinweise. 
Am Wochenende passiert nichts. Da bin ich Family Busy. :-)
Aber nächste Woche will ich die Anpassungen einbringen. Hoffe das ich 
mir dabei die Fädeldrahtgeschichte nicht gänzlich ruiniere.

Wünsche allen ein schönes Wochenende.

: Bearbeitet durch User
von Schlaumaier (Gast)


Lesenswert?

Uwe M. schrieb:
> Hoffe das ich
> mir dabei die Fädeldrahtgeschichte nicht gänzlich ruiniere.

Wieso Fädeldraht. ?? Sowas machen die Chinesen doch nicht. ?
Und da kostet ein Adapter keine 5 Euro.

Ich weiß das weil ich meinen im Amiga drin habe ;)

von S. R. (svenska)


Lesenswert?

Schlaumaier schrieb:
> Wieso Fädeldraht. ??

Weil das vorhandene CP/M-Gerät gefädelt ist (siehe Bilder oben).

von Uwe M. (hobbyprogrammer)


Lesenswert?

Hallo zusammen,

im Falle der CF-Karte direkt am IDE-Port kann ich Erfolg vermelden.
Ich habe nun die 16 Datenleitungen die zum IDE-Anschluß führen mit 
Pullup Widerständen von jeweils 4,7k versehen. Ebenso die Ausgänge Y1 
bis Y4 von IC18 (74LS244).
Auch habe ich dem IDE-Port das Reset Signal beschaltet.
In IC6 war noch ein NOR-Gatter frei, so das ich dieses benutzt
habe um den Reset vom ECB-Bus zu entkoppeln.
Der System-Boot läuft sauber durch. Auch nachdem ich den Takt des Z180 
auf 18,432 Mhz erhöht habe. Zugegeben dann mit jeweils 1 Waitstate bei 
Speicher- und I/O-Zugriffen. Auch nach 2 Stunden Betrieb lief das System 
noch einwandfrei.
Vielen Dank an alle die mir hier geholfen haben.

Grüße
HobbyProgrammer

: Bearbeitet durch User
von S. R. (svenska)


Lesenswert?

Gratuliere!

von c-hater (Gast)


Lesenswert?

Uwe M. schrieb:

> im Falle der CF-Karte direkt am IDE-Port kann ich Erfolg vermelden.
> Ich habe nun die 16 Datenleitungen die zum IDE-Anschluß führen mit
> Pullup Widerständen von jeweils 4,7k versehen. Ebenso die Ausgänge Y1
> bis Y4 von IC18 (74LS244).

Wenn das zum Erfolg geführt hat, dann bedeutet es vor allem eins: 
absolut grenzwertiges Timing auf dem Bus und/oder "Klingeln".

Oder anders ausgedrückt: Dass die Pullups geholfen haben, ist mehr oder 
weniger Zufall. Richtig wäre: Oszi dranhalten, damit schau'n, woran es 
wirklich liegt und DAS dann korrigieren...

Fakt ist nämlich: Pullups sind an diesen Stellen absolut deplatziert, 
die gehören da einfach nicht hin!

De facto werden sie wohl als eine Art lausige Terminierung wirksam...

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.