Home Atari, Mac und PC seriell ESCC Midi-Schnittstelle
 

15.3.7 RSFI


RSFI




Informationen fuer Treiberprogrammierung

Um RSFI zu aktivieren, muss der MFP-Timer D eingestellt werden wie fuer normale Operation mit 50, 75, 110, 134, 150, 200 bps. Den RSFI interessiert nur, was bei TDO hinten fuer eine Frequenz rauskommt (genau wie bei normaler Operation das MFP-UART-Teil nur an dieser Frequenz interessiert ist). Diese Raten entsprechen 76800, 153600, 38400, 57600, 115200, 230400 bps. Zusaetzlich ist im MFP-UART (Register UCR, bei $FFFFFA29, Bit7 auf 0 setzen) das /16-Bit zu loeschen, also der /1-Modus zu aktivieren. Der EmpfangsFIFO wird bei diesen hohen Raten automatisch aktiv.

Befinden sich Zeichen im EmpfangsFIFO, so stehen diese maximal mit einer Frequenz von:

f = 921600 Hz / komplette_Zeichenlaenge_in_Bit

im UART zur Abholung bereit. Das ergibt also bei 8n1 (=10 Bit/Zeichen) etwa alle 10 Mikrosekunden ein Zeichen, solange der FIFO nicht geleert ist. Die CPU darf natuerlich langsamer lesen (dafuer ist der FIFO ja da).

Man muss sich nicht auf Empfangsinterrupts verlassen, sondern kann auch z.B. alle 5 Millisekunden (1/(200 Hz)) timergesteuert den EmpfangsFIFO durch eine Routine leeren lassen, die nicht auf Interruptlevel laeuft, also selbst wieder unterbrochen werden kann. Bei 230400 bps haetten sich so etwa 115 Zeichen angesammelt, die in etwa 1 Millisekunde ausgeraeumt werden koennten. D.h. 25% CPU-Zeit fuer diese Polling-Routine, innerhalb derer man auch noch senden koennte per Polling. Falls die CPU schnell genug ist, dann ist der Interrupt-Overhead geringer als der Polling-Zeitbedarf und man wird sich wohl fuer Empfangsinterrupts entscheiden.

(C) Harun Scheutzow 1997-11-06




Abbildung 1 - RSFI Hardware





Was ist RSFI?

RSFI ist eine kleine Hardware für die MODEM1-Schnittstelle der Ataris, die bestimmte niedrige Bitraten in höhere umwandelt und einen EmpfangsFIFO beinhaltet. Zur Nutzung der neuen Bitraten ist eine Treibersoftware erforderlich.

neu (bps):   38400   57600   76800   115200   153600   230400
alt (bps):     110     134      50      150       75      200


Der Bereich von 300 bis 19200 bps (Bit pro Sekunde) bleibt unverändert und funktioniert auch ohne Treiber wie üblich. Der rund 200 Zeichen fassende EmpfangsFIFO ist nur im Bereich 38400 bis 230400 bps aktiv.


Treibersoftware

Für TOS und MagiC dient das MFP.PRG mit einem Datum ab 1997-09-20 als Treiber. Zum Funktionieren benötigt es zusätzlich das DRVIN.PRG. Diese Programme befinden sich im HSM_BETA-Ordner auf der Disk oder in entsprechender Version auch im HSMODA-Paket ab HSMODA08, wenn es veröffentlicht wird. Das MFP.PRG aus dem HSMODA07-Paket funktioniert auch schon, meint aber einen RSVEChip gefunden zu haben und erlaubt keine 230400 bps.


Der EmpfangsFIFO

Es handelt sich um einen seriellen FIFO, der 2048 Bit zwischenspeichern kann. Im Normalfall kommen brutto 10 Bit lange Zeichen (z.B. Format 8n1) in dichter Folge, so daß der FIFO für 204 Zeichen reicht. Im ungünstigsten Fall sind es 11-Bit-Zeichen mit Abstand und der FIFO speichert maximal 146 Zeichen.

Die 204 Zeichen entsprechen bei der höchsten Bitrate von 230400 bps einer Zeitspanne von 8,8 Millisekunden, die der FIFO bei Nicht-Antwort der CPU ausgleichen kann, ohne daß Empfangsdaten verloren gehen. Dies ist mehr als das Zehnfache der üblichen längsten Interruptantwortzeiten unter TOS und MagiC.



Einbau der Hardware

Vorwort

Es müssen acht Kabel im Computer angelötet und drei Verbindungen aufgetrennt werden. Diese Arbeiten sollten von einer Person mit Fachkenntnissen auf diesem Gebiet und dem entsprechenden Werkzeug durchgeführt werden. Andernfalls besteht eine erhebliche Gefahr nicht nur für den Computer, sondern auch für die Umgebung und den Benutzer. Der Autor lehnt jede Verantwortung bei nicht fachgerechtem Einbau ab. Zum Sammeln von Elektronik-Löterfahrungen empfiehlt der Autor kleine Bausätze oder Elektronikschrott.

In Kurzform die Grundregeln:
- Nur im ausgeschalteten und vom Netz getrennten Computer arbeiten. Je nach Computermodell können netzspannungsführende Teile nach Entfernung des Gehäuses oder der Abschirmung offenliegen.

- Einen netzgetrennten Lötkolben verwenden, entweder eine Lötstation oder über ein Trenntrafo. Bei einem einfachen Lötkolben, auch temperaturgeregelt, zum Löten den Netzstecker ziehen, für sichere Netztrennung. Auf Schutzkontakten des Netzes, die bei einfachen Lötkolben oft mit der Lötspitze leitend verbunden sind, können für die Elektronik gefährliche Spannungen anliegen.

- Elektrostatische Aufladungen vermeiden. Vor der Arbeit im Computer den metallischen Rand (Masse) der Computerplatine mit der Hand und mit der Lötkolbenspitze kurz berühren.

- Art und Weise des Auseinanderbaus erforderlichenfalls notieren. Stecker oder Schaltkreise dürfen nicht verdreht oder anderweitig verkehrt wieder zusammengesetzt werden.


Der MFP

Der MFP trägt normalerweise den Aufdruck MC68901. In den ST-, MegaST- und STE-Computern befindet sich ein MFP mit 48poligem DIL-Gehäuse. Im MegaSTE ist ein MFP mit 52poligem Quadpack-Gehäuse meist unter der VME-Bus-Abschirmung zu finden. Im TT sind zwei dieser 52poligen Quadpack-MFPs vorhanden, wobei der Gesuchte für die serielle Schnittstelle MODEM1 zuständig ist und im Bestückungsaufdruck der Computerplatine die Bezeichnung U303 trägt. Sollte kein Bestückungsaufdruck vorhanden sein, so sollte der weiter vom MODEM1-Anschluß entfernte MFP der für MODEM1 zuständige sein. Er sitzt zwischen Netzteil und VME-Bus-Blechkasten. Wird der andere MFP gewählt, so wird SERIAL1 mit RSFI ausgestattet. Das funktioniert auch.


Anschlußbelegung

RSFI hat an seiner linken Kante im oberen Bereich eine 9polige Stiftleiste. 8 Anschlüsse werden für den normalen Betrieb im Computer benötigt. Der Anschluß isp ist nur für die Programmierung vorgesehen und darf nicht beschaltet werden.

           --------------------
TC    ----|                    |
RXDO  ----|                    |
RC    ----|                    |
TDO   ----|                    |
GND   ----|                    |
VCC   ----|                    |
isp   ----|                    |
RRL   ----|                    |
RXDI  ----|                    |
          |                    |
          |                    |
          |                    |
           --------------------


Notwendige Trennstellen

Im Originalzustand sind die drei Pins TC, RC und TDO des MFP auf der Computerplatine untereinander verbunden. Diese Verbindungen müssen aufgetrennt werden, so daß später an jeden dieser drei einzelnen MFP-Pins eine Leitung zum RSFI angeschlossen werden kann.

Der Pin SI des MFP ist im Originalzustand mit einem Ausgang eines RS232-Empfängers verbunden. Die RS232-Empfänger sind normalerweise Schaltkreise mit der Typbezeichnung 1489 oder 75189 (z.B. MC1489, SN75189) in 14poligem DIL- oder SO-Gehäuse. Ihre Ausgänge sind ihre Pins 3, 6, 8 und 11. Die Verbindung zwischen MFP-SI und RS232-Empfänger-Ausgang ist so aufzutrennen, daß später an den MFP-SI-Pin und den RS232-Empfänger-Ausgang je eine Leitung zum RSFI angeschlossen werden kann.

Je nach Gegebenheiten und persönlichen Vorlieben können die Trennungen durch Unterbrechung von Leiterbahnen, Durchtrennen von Schaltkreispins (bei DIL-Gehäuse), Hochbiegen von Pins (bei DIL-Gehäuse in Fassung, den Pin möglichst weder direkt am Gehäuse noch am vorhandenen 90-Grad-Knick biegen), Entfernen von Fassungsfedern (bei PLCC-Fassungen) oder Einstecken dünner Isolierstreifen (bei PLCC-Fassungen) erfolgen.

Anschluß an MFP in 48poligem DIL-Gehäuse
----------------------------------------
MFP Pin-Nr.                            RSFI-Pin
TC     7                                TC
SI     9                                RXDO
RC    10                                RC
TDO   16                                TDO
GND   36                                GND
VCC   11                                VCC
nicht anschließen                       isp
/RR   31                                RRL
vom 1489, ehemals Pin9 MFP              RXDI


Anschluß an MFP in 52poligem PLCC-Gehäuse
-----------------------------------------
MFP Pin-Nr.                            RSFI-Pin
TC     8                                TC
SI    10                                RXDO
RC    11                                RC
TDO   18                                TDO
GND   40                                GND
VCC   12                                VCC
nicht anschließen                       isp
/RR   35                                RRL
vom 1489, ehemals Pin10 MFP             RXDI


Buchse

Es wird eine 9polige Buchse mit Kabeln mitgeliefert, die für den Anschluß des RSFI benutzt werden sollte. Die Kabel sollten so kurz wie möglich ausgeführt werden.

ACHTUNG! Da die Stecker-Buchse Kombination keinen Schutz gegen falsches Zusammenstecken besitzt, auch hier genau wie beim Anlöten der Kabel lieber einmal mehr kontrollieren!


Besondere Hardware

Einige Hinweise zum Anschluß an die Schnittstellenkarte McSTout finden sich ganz hinten im Text.


So werden Pins numeriert

Eine beliebte Frage, die nach der Numerierung der Schaltkreispins, soll hier für DIL/SO-Gehäuse und PLCC-Gehäuse exemplarisch anhand kleiner Gehäuse beantwortet werden. Größere werden in der gleichen Richtung gezählt. Die Skizze zeigt die Draufsicht auf das Gehäuse.

DIL/SO                   PLCC
   --___--                 3  2  1  20 19
1-|       |-8              ===============
2-|       |-7             /      *        |
3-|       |-6          4 |                | 18
4-|       |-5          5 |                | 17
   -------             6 |                | 16
                       7 |                | 15
                       8 |                | 14
                         |                |
                          ----------------
                           9  10 11 12 13

Charakteristisch ist bei DIL die Aussparung oder Kennzeichung an der Kante zwischen Pin1 und dem Pin mit der höchsten Nummer. Bei SO-Gehäusen fehlt diese Kennzeichnung oftmals, aber die gesamte Gehäusekante, an der Pin1 liegt (hier: Pin1 bis Pin4), ist abgeschrägt. PLCC-Gehäuse weisen eine Kennzeichung in Form eines Punktes oder einer Delle an Pin1 auf, oft ist die Pin1-Kante abgeschrägt, und die Ecke links von Pin1 ist nicht eckig, sondern 45 Grad.



Inbetriebnahme

Kontrolle

Bitte vor dem ersten Einschalten noch einmal überprüfen, ob:
- die richtigen Stellen im Computer aufgetrennt wurden,
- die Kabel an den richtigen Punkten angelötet wurden,
- der RSFI richtig in der Buchse steckt.


Einschalten

Der Computer sollte sich wie gewohnt verhalten. Im Bereich 300 bis 19200 bps sollte die MODEM1-Schnittstelle wie gewohnt funktionieren. Wenn bisher kein DRVIN.PRG und MFP.PRG installiert waren, so kann man beide Programme nacheinander in dieser Reihenfolge vom Desktop starten. Das MFP.PRG sollte melden "RSFI found." Hatte man schon ein älteres MFP.PRG im AUTO-Ordner, so sollte es durch die neue Version ersetzt werden und dann beim Neustart die Meldung "RSFI found." ausgeben. Ältere MFP.PRG melden eventuell "RSVEChip found." und funktionieren mit kleinen Einschränkungen ebenfalls.


Softwareinstallation

Die Treiberinstallation ist in den Dateien des HSMODA-Paketes beschrieben, deshalb hier nur in Kürze die einfachste Variante. Dazu werden das DRVIN.PRG und das MFP.PRG nacheinander in den AUTO-Ordner des Bootlaufwerkes kopiert, so daß sie in dieser Reihenfolge ausgeführt werden.

Sollten Unverträglichkeiten zwischen den Treibern und Anwendungsprogrammen auftreten, so besteht immer noch die Möglichkeit, die MODEM1-Schnittstelle ohne Treiber bei 300 bis 19200 bps zu benutzen.



Betrieb

CPU-Auslastung und Interruptpriorität

Wenn die CPU im Durchschnitt schnell genug ist, dann gibt es keine Probleme. Der EmpfangsFIFO sorgt dafür, daß auch in den Momenten, in denen die CPU zu langsam reagiert, keine Zeichen verloren gehen.

Leider ist eine 68000 CPU mit 8 MHz ab 115200 bps aufwärts nicht "im Durchschnitt schnell genug" um jedes zu übertragende Zeichen in einem eigenen Interrupt zu bearbeiten und für den Rest des Systems genug Zeit zu haben. Da die MODEM1-Interrupts eine höhere Priorität haben als die Interrupts für IKBD (Tastatur und Maus), MIDI und die GEMDOS-Uhr, kann es dazu kommen, daß letztere vernachlässigt werden. Im Ergebnis sind Tastatureingaben und Mausbewegungen nicht mehr vernünftig möglich (der Computer schnarrt wie beim Tasten-Autorepeat vor sich hin) und die Software-Systemuhr geht nach.

Diese Probleme sind per Software lösbar - durch Änderungen im MFP.PRG. Diese Änderungen werden in Zukunft erfolgen, in irgendeinem MFP.PRG neuer als 1997-12-06.

Ich erwarte beim Empfang mit langsamen CPUs auch noch eine Leistungssteigerung durch eine Empfangsdatenbearbeitung im Timer-Interrupt. Dies ist auch "nur" eine Änderung im MFP.PRG.



Besondere Hardware

Einbau im McSTout

RSFI bietet sich für die MODEM1-Schnittstelle des McSTout an, da der große EmpfangsFIFO die leider beim Mac(OS) üblichen langen Interruptantwortzeiten überbrücken kann.

Auf McSTout sitzt ein 52poliger MFP (MC68901). Die voneinander zu trennenden Pins TC (Pin8) und RC (Pin11) sind durch einen Leiterzug auf der Platinenoberseite direkt unter dem MFP verbunden. Bitte nicht blind unter den MFP stochern, weil hinter diesem Leiterzug gleich der nächste liegt. Das Auftrennen des Pin8 mit einem feinen Werkzeug, so daß am MFP noch genügend Pin zum Anlöten des Drahtes bleibt, dürfte die beste Lösung sein.

Der Leiterzug zwischen RC (Pin11) und TDO (Pin18) ist einfach zu finden, auf der Platinenoberseite direkt am MFP. SI (Pin10) des MFP ist mit Pin11 des MAX209 auf der Oberseite verbunden. MAX209 Pin11 ist der RS232-Empfänger-Ausgang.



Vorübergehender Ausbau

Wenn man seinen Computer zeitweise ganz ohne RSFI betreiben will, bietet sich der Aufbau eines Steckers mit drei Drahtbrücken an, der anstelle des RSFI in die Buchse gesteckt wird. Hier die Verdrahtung, verbal beschrieben auf der rechten Seite.

TC    ---- nach RC
RXDO  ---- nach RXDI
RC    ---- von TC, nach TDO
TDO   ---- von RC
GND   ---- offen
VCC   ---- offen
isp   ---- offen
RRL   ---- offen
RXDI  ---- von RXDO



Sonstiges

Autor

Harun Scheutzow
Auf der Kassebeerenworth 38
31157 Sarstedt
(oder: Dresdener Straße 83, 10179 Berlin)
Email: harun@priv-hs.village.de
letzte Änderung: 1998-06-22


Eingesendet von Bernd Maedicke






Copyright © Robert Schaffner (doit@doitarchive.de)
Letzte Aktualisierung am 23. Mai 2004
Home Atari, Mac und PC seriell ESCC Midi-Schnittstelle