NKC Forum
Registrieren | FAQ | Suche | Wer ist online? | Mitgliederliste | Heutige Beiträge | Kalender | Einloggen



Autor Thema: Der NKC SD Controller
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 20. August 2017 20:36 (#61)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Ja, so sieht das aus. Hier ist das richtige File:

http://www.moria.de/~michael/tmp/sdcard5.com

Was da bei sdcard7 aus dem Speicher geholt wird, sollte schon initialisiert sein, weil der Inhalt der Variablen mit dem File geladen wird.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
edbru
Kennt sich schon aus
**
ID # 172


  Erstellt am 21. August 2017 03:23 (#62)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Jetzt passt es. :-)
Nun kommen recht langsam verschiedenste Zeichen auf dem Schirm, also sicher Timing Probleme.
Also warten bis der HCT595 da ist.

Gruß
Eddi

Beiträge: 57 | Mitglied seit: Februar 2017 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 22. August 2017 14:04 (#63)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,

ich hab nun auch meine SDIO aufgebaut. Die Tests stehen noch aus.
Aber, wie muss JP2 eingestellt werden? Ich hab nichts in der Doku gefunden.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 22. August 2017 14:28 (#64)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,

mein erstes Problem mit der SDIO.
Wenn ich vom GP (auf 0xE0000h) die Spannung am LDO abschalte (00h an Port 21h) klappt es, wenn ich aber versuche die Spannung wieder anzuschalten (08h an Port 21h) startet der NKC durch!?!

PS: Meine SDIO ist komplett mit LS Typen aufgebaut, mit Ausnahme des 125ers und des 4050 ;)

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
edbru
Kennt sich schon aus
**
ID # 172


  Erstellt am 22. August 2017 19:31 (#65)  |  Zitat Zitat   PN PN   E-Mail E-Mail
ich hab JP2 auf 4 zu stehen, da bekomme ich die wenigsten Fehler.
Den LDO kann ich an und abschalten ohne Folgen. Wenn keine SD steckt fällt die Spannung sehr langsam ab.
Allerdings mit GP auf 2000h im EPROM (Z80).

Gruß
Eddi

Beiträge: 57 | Mitglied seit: Februar 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 22. August 2017 21:56 (#66)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Bei einem 20 MHz Oszillator muss der Jumper auf 4 stehen.

Der Takt muss bei langsamer Geschwindigkeit unter 400 kHz liegen. Andere Jumperpositionen machen den Takt noch langsamer. Das macht bei sdcard5 Probleme, weil dort eine Zeitschleife benutzt wird. Ich hätte pollen können, aber dann testet man implizit das Polling mit. Der Takt sollte effektiv bei 312 kHz liegen und dafür reicht die Zeitschleife aus.

Ich werde die Dokumentation von sdcard5 anpassen, das steht in der Tat nicht drin.

Ohne SD Card faellt die Spannung vermutlich wegen der Kondensatoren so langsam ab.

Jens: Was fuer einen LDO benutzt Du? Falls es ein MCP1826 ist, hast Du dann Pin 5 entfernt?

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. August 2017 10:29 (#67)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Michael,

der LDO ist der, den Hans-Werner mitgeschickt hat. Der Aufdruck lautet:

1826-33
EDC1348

Muss ich bei dem auch Pin5 entfernen?

PS: Scheinbar zieht der LDO beim einschalten reichlich Strom, dadurch kommt es bei meinem kleinen Netzteil zum Spannungseinbruch. Mit einem stärkeren Netzteil kammt es nicht mehr zum resetten des Systems.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
hschuetz
Administrator
Seitenadmins
******
ID # 3


  Erstellt am 23. August 2017 11:38 (#68)  |  Zitat Zitat   PN PN   E-Mail E-Mail   HP HP
Hallo,
bei den LDO's, welche ich mitgeschickt habe, muss pin 5 in der Luft liegen!!
Gruß
Hans-Werner

-----------------------
Ob 8bit oder 16 oder 32 ist doch egal, Haupsache selbstgebaut!

Beiträge: 889 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. August 2017 12:26 (#69)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,
danke Hans-Werner.

Ich hab Pin5 jetzt aufgetrennt. Der Effekt mit dem Reset ist allerdings geblieben, aber das kann ja an meinem Netzteil liegen.

Allerdings fällt die 3,3V Spannung jetzt sehr langsam ab. Selbst mit SD-Card sind das einige Sekunden. Aus meiner Sicht wäre es wohl sinnvoll dort noch einen "Lastwiderstand" oder eine LED einzufügen.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. August 2017 13:17 (#70)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,

noch ne Frage, um die SD0 anzusprechen muss ich da das /CS0 Bit des Ports auf High oder Low setzen? (Steht leider nicht in der Doku).

Ist mit SINGLERD ONLYRD gemeint?

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. August 2017 14:19 (#71)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin nochmal,

also eine LED als Last für den 3,3V Zweig ist nicht brauchbar, da geht die Spannung zwar schnell auf ca. 1,5V runter, danach dauert es aber wieder.
Mit nem 1k Widerstand klappt es aber wie gewünscht, die Spannung geht "schnell" auf 0V runter.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 23. August 2017 17:03 (#72)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Der Widerstand ist eine gute Idee! Die Tests für das Timing der Versorgungsspannung stehen immer noch aus. Laut Datenblatt schafft der LDO die Anstiegsrate locker, aber ich wollte das immer mal messen und hätte mir dann auch den Abfall angesehen.

Zu den Signalen zitiere ich die Dokumentation:

1:[7] SLOW (1 = max. 400 kHz Takt, 0 = volle Geschwindigkeit)
1:[6] ONLYRD (1 = Nur lesen, 0 = Lesen und Transfer starten)
1:[5-4] reserviert
1:[3] POWER (1 = SD Card eingeschaltet, 0 = ausgeschaltet)
1:[2] reserviert
1:[1] /CS1 (Card select SD Card 1)
1:[0] /CS0 (Card select SD Card 0)

Wo steht noch SINGLERD? In den Diagnoseprogrammen steht es nirgends mehr.

Falls das bei /CS nicht klar ist: 1 ist inaktiv, 0 ist aktiv. Früher hat man mit dem / aktiv low bezeichnet. Heute sehe ich mehr und mehr ein # für den Zweck. Ändern?

Könntest Du mal den Stromverbrauch des Controllers bei POWER messen? Ohne Karte sollte das kaum was sein. Mit Karte können das allerdings in der Spitze ein paar Hundert mA werden.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 23. August 2017 17:19 (#73)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,

SINGLERD steht in dem Absatz Lesen, also genau hinter dem was du gepostet hast.

Nun die Bedeutung von /CS ist mir natürlich klar, aber das heist ja noch lange nicht, dass man es auch so ins Register schreiben muss.
Bei der GDP-FPGA ist es z.B. so, dass man eine 1 ins Register schreiben muss um das /CS-Signal low zu schalten.

Mit der Strommessung muss ich mal sehen, wie ich das am besten hinbekomme.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 23. August 2017 20:39 (#74)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Ok, das sollten wir ändern.

Hans-Werner: Im Text steht

Lesen

0:[7-0] Letztes empfangenes Byte lesen. Falls SINGLERD 0 ist, wird danach ein neuer Transfer von 0xff ausgelöst.

Das sollte ONLYRD heißen, nicht SINGLERD.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
edbru
Kennt sich schon aus
**
ID # 172


  Erstellt am 25. August 2017 18:44 (#75)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hab jetzt einen HCT595 eingesetzt.
Leider überhaupt keine Änderung. Bei sdcard5 werden vereinzelt aber ständig Fehler ausgegeben.
Da muss ich doch tiefer bohren. Scheint wohl irgendein Timingfehler zu sein.

Gruß
Eddi

Beiträge: 57 | Mitglied seit: Februar 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 26. August 2017 13:16 (#76)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Seltsame Sache. Ich schlage vor, dass Du die Levelshifter rausnimmst und MISO und MOSI vor den Levelshiftern verbindest.

Fuer den Empfangstakt muss natürlich auch eine Brücke rein.

Du hast doch Du eine 4 MHz CPU?

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 26. August 2017 13:53 (#77)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin,

erste Erfolge und Misserfolge mit der SDIO am 68k.

Ich hab es geschafft, eine MMC-Card zu initialisieren und auch davon zu lesen. Das meine SD- und SDHC-Cards nicht funkionieren, mag durchaus noch an meiner Initialisierungsroutine liegen.

ABER, das ganze funktioniert nur, wenn ich den Takt auf SLOW lasse. Bei max. Geschwindigkeit gehen Bytes verloren.

Nochmal die Frage: wofür ist der JP2??? In der Doku steht nichts.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 26. August 2017 14:28 (#78)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Mit JP2 wird der Takt geteilt. Bei einem 20 MHz Oszillator muss man Position 4 benutzen. Das gibt dann gut 300 kHz, was unter den 400 kHz liegt, die man bei der Initialisierung maximal haben darf.

Wie sieht das Timing bei Deinem 68k aus? Musst Du evtl. kurz warten, bis ein Byte übertragen ist? Du könntest mal schauen, ob BUSY direkt nach dem Schreiben noch aktiv ist. Der Z80 ist so langsam, dass man nur bei niedriger Geschwindigkeit pollen muss. Bei einer 4 MHz CPU gibt es selbst bei OTIR merkliche Pausen in der Übertragung.

Bzgl. SD (single capacity) und SDHC kannst Du in FLOMON schauen, was der Standard minimal erfordert.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert
edbru
Kennt sich schon aus
**
ID # 172


  Erstellt am 26. August 2017 15:20 (#79)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hab heute die restlichen HCTs bekommen und eingesetzt. Das wars erstmal.
Test 5 bringt keine Anzeige mehr, test6 auch nicht und Test 7 zeigt 5 Sterne und danach einen Speicherinhalt (?): 31000121 usw. Sieht nach einem Start aus.
Aber booten geht nicht und wie ich auf die SD zugreifen kann weiß ich auch nicht.
Die SD-Card hat mit Dirk eingerichtet weil ich mit Linux nicht zurechtkomme. Er hat es hach Anleitung gemacht und wohl eine Datei drauf kopiert.
Für den NKC (Z80) gibt es da keine Routinen?

Gruß
Eddi

Beiträge: 57 | Mitglied seit: Februar 2017 | IP-Adresse: gespeichert
m.haardt
Voll in Gange
***
ID # 93


  Erstellt am 26. August 2017 16:42 (#80)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moment. Du hast nur HCTs benutzt und darum läuft es nun? Erstaunlich, weil LS eigentlich unkritischer ist. Ggfs. war ein LS Chip defekt?

5 Sterne heissen: Initialisierung ok, Sektor lesen ok. Der Dump ist der Anfang vom Bootsektor. Wenn das geht, dann bist Du weit gekommen.

Die SD Card muss eine MBR Partitionierungstabelle mit einer aktiven primären Partition mit Typ hex 52 (CP/M) haben, die wenigstens 8 MB gross ist. Die wird dann als Laufwerk A angesprochen. B ist die RAM-Disk, C und D sind Floppies. Damit kann man einen NKC ohne Floppies aufbauen.

Es gibt für die SD Card am NKC noch kein SYSGEN. Ich habe eine portable Version, die laufen sollte, aber hatte noch keine Zeit, es zu probieren. Es gibt auch noch kein Partitionierungsprogramm und auch noch kein Programm, was den Z80 MBR auf die SD Card schreibt.

Michael

Beiträge: 501 | Mitglied seit: April 2008 | IP-Adresse: gespeichert



| https://hschuetz.selfhost.eu | Boardregeln | Datenschutzerklärung


Tritanium Bulletin Board 1.8
© 2010–2021 Tritanium Scripts


Seite in 0,018164 Sekunden erstellt
19 Dateien verarbeitet
gzip Komprimierung eingeschaltet
818,02 KiB Speichernutzung