SATA Controller Pins Files On SSDs

Jan. 19, 2011
Marvell Semiconductor's latest SATA controller incorporates HyperDou, a file level caching system for SSD/HDD combinations.

Marvell 89SE9130

Marvell Semiconductor has delivered a number of SATA solutions, but its 89SE9130 (see the figure) takes a new approach by mixing a solid-state drive (SSD) with a hard-disk drive (HDD). The chip is a dual 6-Gbit/s SATA 3.0 controller with a x1 PCI Express 2.0 interface that works with a range of microcontrollers like Intel’s latest E6xx (see “Tunnel Creek Gets On Board”). It operates as a conventional, high-performance controller with a pair of SSDs or HDDs while mixing an SSD and HDD with Microsoft Windows to get a hybrid storage system.

Known as HyperDuo, Marvell’s hybrid approach takes advantage of the Arm Cortex microcontroller inside the 89SE9130 along with operating-system (OS) support that understands the Windows disk directory layout. It combines the SSD and HDD storage into a single logical drive, but it uses a technique called “pinning” to keep certain “hot” files on the SSD. The pinning process can be automatic, or more advanced users can specify what files may be placed on the SSD using a GUI-based application.

Automatic file selection works like caching, except it operates at a file level instead of a block level. Also, unlike caching, HyperDuo doesn’t have to replicate data on the SSD. In “safe mode,” the hot files on the SSD will be saved on the HDD as well. In “capacity mode,” the hot files are only stored on the SSD.

HyperDuo doesn’t move data to the SSD while it is being accessed. Instead, it determines when a file is to be placed into the SSD and moves the entire file there, and it does so in the background to minimize the impact on regular disk operation. The approach can provide near-SSD performance, almost 80%, while providing the capacity of the HDD. That is a significant boost since SSD performance is often five times or more than that of an HDD.

File systems such as ZFS that provide storage pool support can take advantage of mixed SSD/HDD configurations. Likewise, many higher-end SAS/SATA controllers have SSD/HDD caching support. However, both tend to be used on enterprise environments, while HyperDuo targets desktops and laptops.

HyperDuo works with Windows XP, Windows Vista, and Windows 7. The Windows drivers can take advantage of SSD TRIM commands. The 89SE9130 works as a conventional dual-port SATA controller with any other OS. It supports RAID 0 and RAID 1 for any OS. In theory, the chip could provide similar support for other OSs, but this would require matching device drivers and support for the desired disk partition format.

The Marvell 89SE9130 comes in a 9- by 9-mm, 76-pin, quad flat no-lead (QFN) package. It draws less than 1 W. The serial peripheral interface (SPI) serial flash interface can load boot or configuration code. The general-purpose I/O (GPIO) support can be used for status LEDs. The SATA interfaces support eSATA.

Marvell Semiconductor

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!