Die Migration von parallelen ATA-Festplatten auf die neue Serial-ATA-Schnittstelle ist in vollem Gange. Die Serial ATA-Community konzentriert sich nun auf die Migration der allgegenwärtigen ATAPI-CD-ROM-, CD-R- und DVD-RW-Geräte, um sie über SATA-Verbindungen zu betreiben. Diese optischen Geräte werden in den nächsten Jahren schließlich SATA in ihre Steuer-ASICs integrieren. Die meisten der anfänglichen Implementierungen von optischen Laufwerken für Serial ATA verwenden jedoch Bridge-Silizium (genau wie die ersten SATA-Festplattenlaufwerke). Diese Bridge-Adapter wandeln SATA-Protokollsignale vom Host in PATA-Signale zum Gerät um.

ATAPI PACKET-Befehl

ATAPI-Geräte unterscheiden sich grundlegend von ATA in der Art und Weise, wie sie durch die Verwendung von Befehlspaketen arbeiten. Das in ATA/ATAPI-6 definierte ATA-Task-File-Konzept stellt nicht genügend Bytes bereit, um einige der Befehlsstrukturen zu unterstützen, die für eine komplexere Befehlsübertragung erforderlich sind. Folglich wurde der Packet-Befehl zum ATA-Standard hinzugefügt und umfasst eine Reihe von Befehlen, von denen viele vom SCSI-Standard (SPC, SBC und MMC) abgeleitet sind.

Der Befehl ATA Packet ist nur auf ATAPI-Geräten implementiert. Der Zweck des Packet-Befehls besteht darin, ein Datenpaket an das Gerät zu liefern, das die Funktion definiert, die das Gerät ausführen soll. Die Mehrzahl der von ATAPI-Geräten implementierten ATA-Paketbefehle befassen sich mit der Konfiguration des Geräts selbst.

Eine zentrale Herausforderung für Designer dieser SATA-Bridge-Adapter ist die Art der ATAPI-Befehle selbst. Paketbefehle werden genauso ausgegeben wie normale ATA-Befehle; durch Initialisieren der Aufgabendateiregister, Setzen des Laufwerksauswahlbits und Schreiben des Befehlsbytes in das Befehlsregister. Die Struktur der Daten innerhalb des Pakets wird als Command Descriptor Block Packet (CDBP) bezeichnet.

SATracer decodiert ATAPI-Transaktionen unter Verwendung des Paketbefehlscodes (A0h) und der zugehörigen Befehlsregister- und Statusfelder

Überbrückung von ATAPI und SATA

Herausforderungen entstehen, weil Serial ATA-Hosts herkömmliche ATAPI-DMA-Befehle verwenden, um mit optischen Laufwerken zu kommunizieren. Gemäß der bestehenden Serial ATA 1.0-Spezifikation sendet der SATA-Host einen Daten-FIS, der einen DMA-PAKET-Befehl enthält, an ein Brückengerät. Da ATAPI-Geräte Befehle verwenden, die im PACKET-Befehl gekapselt sind, weiß das SATA-Brückengerät nicht, ob der ATAPI-Befehl eine Lese- oder Schreibanforderung enthält. Die erwartete Antwort vom Bridge-Adapter wird offensichtlich in Abhängigkeit davon variieren, ob der ausgegebene Befehl ein READ oder ein WRITE war (DMA Activate für WRITE, Data FIS für READ). Wie kann die SATA-Bridge-Umgebung die Befehlsrichtung bestimmen, damit sie die richtige Flusssteuerung einrichten kann, die für die Übertragung erforderlich ist?

Derzeit untersucht die Serial ATA Working Group mehrere mögliche Lösungen für diese Designherausforderung. Eine der vorgeschlagenen Lösungen schlägt vor, dass der Brückenadapter die Geräteaufgabendatei lesen sollte, um den Befehl zu identifizieren. Einige optische Geräte melden den Inhalt der Aufgabendatei jedoch nicht korrekt, sobald DMARQ aktiviert ist. Dies könnte zu Inkompatibilitäten im Bereich zwischen Bridge-Umgebungen und älteren optischen PATA-Laufwerken führen.

Ein alternativer Ansatz erfordert, dass der Bridge-Adapter den Paketbefehl in Silizium dekodiert. Dies würde jedoch möglicherweise die Menge an Logik (und Kosten) erhöhen, die auf der Brücke benötigt wird, und ihre Fähigkeit, in Zukunft neue Befehle zu unterstützen, verringern.

Noch ein weiterer Ansatz besteht darin, den Softwaretreiber so zu modifizieren, dass er die Richtung an den Brückenadapter übermittelt. Die Host-Umgebung kennt die Richtung und könnte ein reserviertes Bit innerhalb des Features-Registers verwenden, um die Brücke zu informieren, ob sie ein READ oder WRITE überträgt. Natürlich würde dies einen aktualisierten Treiber erfordern, der das Versprechen von Serial ATA bezüglich der Abwärtskompatibilität der Software auf Betriebssystemebene einschränkt.

Testen von ATAPI-Geräten

Einige der oben beschriebenen Testherausforderungen werden zunehmend auf PC- und Peripherie-OEMs fallen, die für die Überprüfung der Interoperabilität zwischen ATAPI-Geräten und SATA-Hosts verantwortlich sind. Diese Techniker müssen die Fähigkeit der Bridge validieren, ATAPI-Befehle zu übersetzen und herstellerspezifische Felder, die an das Gerät übertragen werden, beizubehalten. Dies erhöht die Bedeutung von Trigger-, Filter-, Dekodierungs- und Suchfunktionen innerhalb der von diesen Gruppen verwendeten Testwerkzeuge.

SATracer v2.3 zeigt automatisch, welche Offsets verwendet werden, um die Sektornummer in einem Read (10)-Befehl anzugeben

Der SATracer von CATC ist der erste Analysator, der ATAPI 5/6-Befehlspakete einschließlich des Befehlsdeskriptorblockpakets triggert und dekodiert. Der Verkehrsgenerator SATrainer von CATC für Serial ATA kann auch eine entscheidende Rolle beim Testen neuer Bridge-Chips spielen, sowohl im Hinblick auf die Fehlerbehandlung als auch auf das Testen von Vendor Unique-Registerbits.

Wie Anbieter bereits wissen, ist die Fähigkeit, auf die oben beschriebenen problematischen DMA-Operationen zu triggern, von entscheidender Bedeutung. SATracer kann nicht nur auf gekapselte PACKET-Befehle triggern, sondern auch auf einzelne Felder innerhalb des PACKET-Befehls. Im Beispiel unten ist 0x28 der OpCode für ein Read(10). Zusätzliche Status- und reservierte Bits könnten auch verwendet werden, um auf bestimmten ATAPI-Verkehr auszulösen.

Triggern Sie auf ATAPI-Paketbefehle, indem Sie den OpCode oder die reservierten Bits in das Triggerereignis des FIS-Musters eingeben

SATracer v2.3 kann auch nach ATAPI 5/6-Befehlspaketen suchen. Dazu muss der ATAPI PACKET-Befehl in Kombination mit dem ATAPI-Befehlstyp im Dialogfeld „Erweiterte Suche“ ausgewählt werden.

Jenseits von ATAPI-Bridge-Adaptern

Serial ATA wird 2004 mit einem dramatischen Anstieg der Bereitstellung beginnen, einschließlich der Veröffentlichung von ATAPI-überbrückten Geräten. Wie bereits erwähnt, werden optische Laufwerke ab 2005 schließlich SATA in ihre Steuerungs-ASICs integrieren. Wenn Serial ATA ATAPI heute nicht Teil der E/A-Roadmap eines Anbieters ist – Testanforderungen für diese vollständig „nativen“ optischen Serial ATA-Laufwerke werden sicherlich eine Anforderung in der Zukunft.

Wie PC-OEMs, die diesen Übergang anführen, wissen, wurde die Messlatte für Kompatibilität und Interoperabilität mit parallelem ATA sehr hoch gelegt. Wenn Serial ATA das Versprechen einer besseren Leistung und niedrigerer Gesamtkosten als sein Vorgänger einlösen soll, müssen die Test- und Verifizierungsbemühungen sowohl umfassend als auch effizient sein. SATracer/Trainer mit der CATC Trace Expert Analysis-Software ist die führende Lösung für die Analyse von Serial ATA-Protokollen. Mit voller Unterstützung für ATAPI-Triggerung und -Anzeige trägt SATracer eindeutig zu besserer Interoperabilität und schnellerer Markteinführung für Entwickler bei, die an Serial-ATA-Geräten, -Systemen und -Software arbeiten.

Weitere Informationen finden Sie unter: http://www.catc.com/products/support/sup_satracer.html Kontaktieren Sie Ihren regionalen CATC Sales Manager unter 1 800 909-7211 oder 408 653-1262 oder sales@catc.com.