News : Marvell stellt nativen PCIe/NAND-Controller für SSDs vor

, 27 Kommentare

Solid State Drives gewinnen auch im Unternehmensbereich zunehmend an Bedeutung, zum Beispiel für Datenbank- und Cloud-Anwendungen. Doch während im Desktop-Bereich die Leistung aktueller High-End-SSDs in der Regel gar nicht ganz benötigt wird, lechzen Server bei gewissen Anwendungen geradezu nach mehr IOPS.

Primär für diesen Bereich ist der neueste, in Stückzahlen verfügbare Controller von Marvell vorgesehen, Desktop-Adaptionen schließt dies aber selbstverständlich nicht aus. Sie dürften aber gegebenenfalls eher ein Nischendasein fristen, denn der Marvell 88NV9145 ist ein nativer PCIe-NAND-Controller für den Einsatz in PCIe-SSDs und wäre nur mit Zusatzchips in SATA- beziehungsweise SAS-Laufwerken einsetzbar. Im Hinblick auf die Leistung ist dies aber sogar von Vorteil, denn durch die native PCIe-Anbindung über eine PCIe-2.0-Lane entfällt der Overhead durch das SATA- oder SAS-Protokoll und der Controller kann direkt mit der CPU kommunizieren. Dabei soll die Latenz unter 50 Mikrosekunden betragen.

Blockdiagramm Marvell 88NV9145
Blockdiagramm Marvell 88NV9145

Modulares Design und hohe Skalierbarkeit

Ein wenig befremdlich mag auf den ersten Blick wirken, dass der Controller lediglich über vier NAND-Kanäle mit jeweils bis zu vier Chip Selects verfügt, an denen bis zu 64 Gigabyte SLC-NAND oder 128 GB MLC-NAND hängen können. Marvell setzt beim 88NV9145 jedoch auf ein modulares, hoch skalierbares Design, bei dem für eine höhere Leistung und Speicherkapazität mehrere der Controller an einen PCIe-Switch – im Referenzdesign kommen PLX ExpressLane Switches mit acht Lanes zum Einsatz – gehängt werden können, ohne dass dazu ein RAID-Controller benötigt wird.

Blockdiagramm eines Laufwerks mit mehreren Controllern
Blockdiagramm eines Laufwerks mit mehreren Controllern

Explizit vorgesehen ist der Einsatz von Konfigurationen mit zwei bis 16 Controllern, theoretisch wären aber wohl auch mehr möglich. In diesem Zusammenhang ist speziell der hohe Skalierungsfaktor beeindruckend. Zwei Controller sollen exakt doppelt so viele IOPS liefern wie ein Controller und selbst bei 16 Controllern soll die Gesamtleistung noch deutlich über 90 Prozent der theoretischen Leistung von 16 Controllern betragen:

Leistungsskalierung
Module 4K Random Read 4K Random Write
1 93.000 IOPS 70.000 IOPS
2 186.000 IOPS 140.000 IOPS
4 371.000 IOPS 277.000 IOPS
8 730.000 IOPS 530.000 IOPS
16 1.400.000 IOPS 1.040.000 IOPS

Herzstück des SoCs ist ein ARM-Kern (Marvell Feroceon 88FR321 V5TE CPU Core; ARM946-kompatibel), der auf einen externen DDR- oder DDR2-Speicher unbekannter Größe zugreifen kann. Der NAND-Controller des 88NV9145 unterstützt NAND mit ONFI- und Toggle-Interface, wobei ersteres in der synchronen Form mit bis zu 200 MB/s betrieben werden kann (ONFI 2.2 Mode 5, 100 MHz). Neben SLC- und MLC-Speicherchips werden außerdem auch TLC-Speicherchips unterstützt, die aufgrund der eher geringen Lebensdauer im Serverbereich wohl eher nicht zum Einsatz kommen dürften.

Marvel 88NV9145 PCIe-NAND-Controller

Zusätzlich zum AHCI-Modus und dem wohl für Multi-Controller-Konfigurationen genutzten Marvell NAND HCI unterstützt Marvells neuer Controller als dritten Betriebsmodus auch noch NVMHCI, die im vergangenen März verabschiedete Spezifikation für PCI-Express-SSDs. Die Leistungsaufnahme des Controllers gibt Marvell mit unter 0,8 Watt an, allerdings sind hier der DDR(2)-Speicher und die Flash-Chips noch nicht berücksichtigt.

Marvell 88NV9145 – Modulares Referenzdesign mit 32 GB SLC-NAND
Marvell 88NV9145 – Modulares Referenzdesign mit 32 GB SLC-NAND

Marvells Referenzdesign für den 88NV9145 ist ein Solid State Drive mit acht Controllern, die jeweils mit RAM und Flash-Speicher auf einem eigenen PCB verlötet sind und dann auf eine PCIe-Steckkarte mit PCIe-2.0-x8-Switch gesteckt werden. Ebenso wäre es aber möglich, die Controller und den Switch direkt auf ein einziges PCB zu löten.

Marvell 88NV9145 – SSD-Referenzdesign
Marvell 88NV9145 – SSD-Referenzdesign

Erster Kunde für den neuen Controller ist OCZ. Auf Basis der gemeinsam mit Marvell entwickelten „Kilimanjaro“-Plattform bringt OCZ das Z-Drive R5 auf den Markt. Dieses wird mit bis zu 12 Terabyte Speicherkapazität erhältlich sein und OCZs Virtualized Controller Architecture 3.0 nutzen. Weitere Informationen zu dem Laufwerk dürften in der kommenden Woche bekannt werden, wenn Marvell und OCZ es auf der CES in Las Vegas zeigen.

27 Kommentare
Themen:

Ergänzungen aus der Community

  • Holt 07.01.2012 18:50
    Das Teil ist über nur eine PCIe Rev.2 Lane angebunden, damit kommt man dann nach Abzug des Overhead dürfte da so maximal 450MB/s möglich sein, zumal auch nur ein 4 Kanal Flash Controller verbaut ist und die NANDs dann auch nur 133MB/s schaffen müssen, was ja heute eigentlich Standard ist. Wenn die dann bei 8 Controllern auf einer Karte halbwegs skalieren, so müssten 3.2GB/s seq. lesend erreichbar sein. Ist jedenfalls ein sehr interessantes Produkt und vom einzelnen Modul welche fest auf dem Mainboard z.B. eines Notebooks steckt bis zur Overkilll PCIe SSD skalierbar zu sein öffnet ja auch einen gewaltigen Markt. Nachdem Marvell ja bisher nur einen einzigen SSD Controller gebracht hat ist es jedenfalls gut zu wissen, dass die Firma da am Ball bleibt.

    Erstaunlich ist aber, dass gerade OCZ der erster Kunde für den neuen Controller ist. Bisher hatte OCZ doch auf Sandforce gesetzt und dann Indilinx gekauft um einen eigenen Controller im Hause machen zu können, den sie mit dem Everest ja auch schon vorgestellt haben. Nun bandeln sie mit Marvell an. Das kann nur darauf hindeuten, dass sie entweder mit Sandforce nicht mehr so eng zusammenarbeiten, denn die Rolle des Entwicklungspartners hat ja nun wohl Intel übernommen und andererseits ihren eigenen Everest nicht die IOPS beibringen könne, die im Unternehmensumfeld nötig sind, da hat der Indilinx ja immer noch gewaltigen Aufholbedarf.

    Zumindest bin ich mal gespannt, was da an Produkten kommen wird und wie schnell Microsoft dann auch TRIM für solche SSDs ermöglichen wird. Bisher werden TRIM Kommandos ja nicht an RAID oder SAS Controller geschickt. Bei SAS ist das zwar halbwegs verständlich, da TRIM ein SATA Kommando ist und SCSI dafür das Unmap Kommando hat. Aber da das S-ATA Tunneling Protocol (STP) ein Teil des SAS Standarts ist und es erlaubt an jedem SAS Controller auch SATA SSDs zu betrieben, müsste Windows diesen eigentlich auch TRIM Kommandos schicken, wenn eine solche SATA SSDs am SAS Controller hängt.

    Ergänzung vom 07.01.2012 19:06 Uhr:
    Ist der große Chip auf dem Haupt-PCB direkt neben dem PCIe Stecker etwa der PCIe Switch? And.!
    Da vermute ich mal und es würde bei der Nähe zum Slot ja auch Sinn machen.
    So wie ich das verstanden habe, benötigen diese kleinen "SSDs" nur noch einen Switch um gemeinsam direkt ans PCIe Interface gehängt zu werden? And.!
    Ja, denn man kann nicht einfach so viele Controller an den PCIe Bus hängen wie man Lanes hat. Überlicherweise werden diese als x1, x4, x8 und x16 genutzt, wobei der eben auch ein Limit an Controllern gibt, die vorhanden sein dürfen. So erlauben die gebräculichen Chipsätze mit 16 PCIe Lanes für die Graka eben oft entweder nur 1x16 oder maximal 2x8, aber eben nicht 1x8 und 8x1, das geht nicht. Der Switch fasst dann eben diese 8x1 zu 1x8 für den Chipssatz auf dem Board zusammen, dass damit nur einen Controller ansprechen muss.

    Man sieht das ja auch z.B. hier über die neuen Atom:

    http://pics.computerbase.de/3/8/8/3/2/2.png

    Die können sohar 4 x2 aber eben nicht 8 x1, denn bei 4 Controllern ist offenbar Schluss und auch Kombinationen wie 1 x4, 1 x2 und 2 x1 gehen eben einfach nicht, es geht immer nur, was der Hersteller vorgesehen hat oder man nimmt einen Switch oder Multiplexer.