Forum: PC Hard- und Software Mini-PCI Express to seriell Adapter (nicht über USB)


von Snowyrain (Gast)


Lesenswert?

Hallo,

ich suche verzweifelt eine Mini-PCI Express Card die einen seriellen 
Anschluß zur Verfügung stellt. Dies sollte nicht über USB (liegt wohl 
auch am Mini-PCI Express Anschluß an) erfolgen.

Grund: Ich habe hier eine Anwendung die nur sehr wenige Byte schickt und 
so schnell wie möglich eine Antwort benötigt (unter 2ms).

Vielen Dank

Snowyrain

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nun, Du musst "nur" nach einer Karte suchen, auf der ein 
OXPCIe952/954/958  von Oxford Semiconductor verbaut ist, das ist einer 
der ersten "echten" PCIe UART-Bausteine.

So etwas habe ich nicht finden können.

Auf welchem Betriebssystem läuft denn Deine Anwendung? Wenn es ein 
Windows ist, wirst Du Deine Anforderung nicht realisieren können, da die 
Timergranularität des Schedulers nicht feiner als 1msec auflösen kann, 
was bedeutet, daß schnellere Wechsel Usermode-Applikation/Devicetreiber 
als im einstelligen Millisekundenbereich nicht drin sind.

Mehr Erfolg wirst Du haben, indem Du die schnelle Reaktion in einen wie 
auch immer an den PC angeschlossenen µC auslagerst.

von Andreas K. (a-k)


Lesenswert?

Bist du sicher, dass in Threads in Windows ausschliesslich via Timer 
Interrupt dispatcht werden und nicht auch andere Interrupts verwendet 
werden? Ich bin da nicht ganz im Satz, aber eigentlich sollte beides 
existieren, sonst würde sich die mittlere Zugriffszeit auf alle Devices 
um 0,5ms vergrössern, bei SSDs nicht ganz unwichtig.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das ist eine gute Frage, vor allem, wo standardmäßig der Scheduler sogar 
nur mit 10msec Auflösung betrieben wird. Es dürfte jedenfalls unmöglich 
sein, häufiger als im Millisekundenraster mit irgendwelchen 
Devicetreibern zu kommunizieren. Ein "ping-pong" mit der Seriellen 
Schnittstelle im einstelligen Millisekundentakt überfordert jedenfalls 
Windows, auch wenn etwaige Hardwarefifos der Schnittstelle deaktiviert 
werden.

Massenspeicher werden blockorientiert angesprochen, und da geschieht 
viel bereits auf Kernelebene, daher ist deren Verhalten nicht 
vergleichbar.

von Snowyrain (Gast)


Lesenswert?

Hallo,

vielen Dank für die Antworten. Die Anwendung läuft auf einem normalen 
Linux mit Preamtive Patch und 10000Mhz Kernel (zehntausent, selbst böse 
reingepatcht). Der PC hat einen Dual-Kernel und ein Kernel wird über das 
setzen von Proritäten so gut wie nur von dem entsprechenden Task 
verwendet. Auf einem normales PC läuft das sehr gut. Und seit einem Jahr 
ist das mit dem Kernel-Einstellungen auch gut machbar. Ich wollte die 
Anwendung nur gerne mobil haben.

Vielen Dank für die Hilfe

Snowyrain

von Chris (Gast)


Lesenswert?

> 10000Mhz Kernel (zehntausent, selbst böse reingepatcht)

10Ghz? Respekt, das mal so eben selbst reinzupatchen, wo doch keine 
derzeit gängige PC-Hardware diese Takt-Frequenz erreicht.

von Snowyrain (Gast)


Lesenswert?

Hi,

ja sorry. Das Mega ist flasch. also 10kHz Kernel.

Gruß

Snowyrain

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.