Ming II: A Flexible Platform for NAND Flash-based Research∗ UCSD CSE Technical Report CS2012-0978 Trevor Bunker

Michael Wei

Steven Swanson

Non-Volatile Systems Laboratory The Department of Computer Science & Engineering University of California, San Diego {tbunker,mwei,swanson}@cs.ucsd.edu

1

Introduction

NAND flash-based solid-state drives (SSDs) are becoming a staple in consumer electronics and highperformance computing. Limited resources and a lack of flexible prototyping platforms constrain NAND flash researchers to use software simulation of the chips, where simulation parameters are based on conservative values from datasheets, leading to missed research opportunities. A tool to explore low-level NAND flash behavior and performance would give researchers an easy way to validate and guide new research ideas and designs. We present the Ming II platform which gives researchers complete control over flash chips. It includes a custom board that connects to a platform FPGA system and provides an automated interface for acquiring finegrain power, latency, and bit error measurements of flash operations. The Ming II software stack includes an opensource userspace library, Linux driver, and development environment that make it easy to develop new software that targets flash. Possible applications include:

Ming II Characterization Board

Xilinx Virtex-5 FPGA

DDR2 Memory Ethernet Ming II Controller Controller Controller

System Bus

RS-232 Other Controller Peripherals

Figure 1: System Diagram The Ming II platform consists of an FPGA configured with a Microblaze soft processor core (running Linux) attached to the Ming II controller core.

We also present the Ming II characterization board that provides access to the flash and houses the power monitoring circuitry. Figure 1 shows the block diagram of the Ming II plat• Measuring flash characteristics (latency, power, bitform. The core of Ming II is a Xilinx Virtex-5 FPGA conerror ratios, lifetime, etc.) [2, 3] • Verifying encryption/decryption and sanitization figured with a Microblaze 32-bit soft processor core [5] that runs Linux. protocols [4] • Designing new error correction coding schemes Ming II characterization board The custom Ming II • Prototyping new flash translation layers (FTLs) characterization board (Figure 2) directly connects the • Developing new flash-based file systems FPGA to four flash packages housed in 48-pin TSOP • Verifying new flash controller logic sockets. Ming II dedicates an independent flash chan• Identifying performance and power tradeoffs nel to each package and the custom channel controller on • Recovering personal or forensic data the FPGA can support up to 4 chip enables per channel. Therefore, the Ming II platform can support up to 16 chip 2 System Architecture enables of flash (up to 256 GB). This section provides an overview of Ming II’s architecThe board also contains headers for each channel which ture, including the host processor and Ming II controller. allow for easy connection to an oscilloscope or logic an∗ If you are interested in licensing Ming II, please contact Steven alyzer. In addition, we have designed a daughter board Swanson at [email protected]. called the Ming Wing (Figure 3) that, when attached to the 1

Figure 2: Ming II Characterization Board The board features four 48-pin TSOP sockets to house up to 4 NAND flash packages. It also has headers to connect to an oscilloscope, a logic analyzer, or a Ming Wing daughter board. Two dual-channel ADCs can sample power consumption for all four channels at 1 Msamples/sec and 14-bit resolution.

Figure 3: Ming Wing The Ming Wing attaches to the headers on the Ming II characterization board. They allow the connection of BGA, LGA, and other NAND flash package types.

headers, provides connection for BGA, LGA, and other NAND flash package type chips. The Ming II board also contains analog-to-digital converter (ADC) chips that can acquire current measurements at 1 Msamples/sec at 14-bit resolution. The board connects the self-calibrating ADCs to a low-tolerance current sense resistor to provide accurate sampling of the power draw of each flash channel. In addition, the Ming II board contains overcurrent protection circuits for each channel. This prevents damage to the test chips due to current spikes. The board also includes a temperature sensor to measure ambient temperature around the chips. The Ming II characterization board can attach to the expansion headers on the Xilinx XUPV5-LX110T Development Kit [6] or can connect to any FPGA-based system with a sufficient number of available I/O pins.

ADC chips on the characterization board to collect power samples during flash operations. The Ming II controller also includes configurable performance counters to measure the latencies of individual flash operations. A user could add to or remove from the system based on their needs and the resource requirements of the FPGA and development board. Currently, the processor and peripheral controller logic only consume 33% of the FPGA’s resources.

3

Power Measurements

One of the key features of the Ming II platform is the ability to acquire accurate, fine-grain power measurements. In addition, Ming II exposes a configurable interface to automate the acquisition of the power measurements. In this section, we briefly compare acquiring power measurements with Ming II to acquiring power measurements with a current probe attached to an oscilloscope. The power consumption of flash chips during a flash operation are on the order of tens of milliamps and vary by the process technology, array structure, input voltage, and data. Current probes that can provide sufficient resolution in that range typically cost hundreds or thousands of dollars (in addition to the cost of an oscilloscope) and are often subject to large amounts of noise and inaccuracy. They are also difficult to calibrate because they are

Ming II controller The processor communicates to the Ming II characterization board through the system busattached Ming II controller. The Ming II controller contains four instances of a channel controller, which implements the interface protocol to enable communication to and from a flash package. Currently, the channel controller only supports ONFI asynchronous mode [1], but support for synchronous mode is forthcoming. The Ming II controller also communicates with the 2

60

Current (mA)

VM Development Environment

Current Probe Ming II

70

Software Stack

50

NFS Root File System

40

Applications

30

Ming II Library

User

Ming II Driver

Kernel

20 10

x86-to-Microblaze Cross Compiler

Linux Kernel

0

NFS Root Home Directory

-10 0

50

100

150

200

250

300

Time (us)

Figure 4: Comparing Power Measurements This graph compares the power measurements for a single program operation using a current probe and using the Ming II system. The Ming II platform provides configurable, finegrain power measurements of NAND flash operations.

Figure 5: Ming II Software Stack The Ming II software stack consists of a custom userspace library and driver that runs on Linux. We provide a virtual machine (VM) that contains the kernel’s root file system, the root user’s home directory, and a cross-compiler that targets the Microblaze host.

sensitive to vibrations and temperature fluctuations.

5

The ADCs on the Ming II characterization board can acquire 1 MSamples/sec at 47.5 uA resolution on each channel. The FPGA communicates directly with the chips, which greatly reduces the cost of the system by eliminating the need of an oscilloscope and current probe. In addition, Ming II’s configurable interface for automated acquisition obviates communication with an oscilloscope, making it is easier for application developers to measure power consumption.

We would like to thank all of those from the Non-Volatile Systems Laboratory (NVSL) that worked on Ming II’s predecessor and helped guide the design decisions of Ming II.

References [1] Open NAND Flash Interface (ONFI) Specification 2.1. http://www.onfi.org/documentation.html. [2] L. Grupp, A. Caulfield, J. Coburn, S. Swanson, E. Yaakobi, P. Siegel, and J. Wolf. Characterizing flash memory: Anomalies, observations, and applications. In Microarchitecture, 2009. MICRO-42. 42nd Annual IEEE/ACM International Symposium on, pages 24 –33, dec. 2009. [3] H.-W. Tseng, L. Grupp, and S. Swanson. Understanding the impact of power loss on flash memory. In Design Automation Conference (DAC), 2011 48th ACM/EDAC/IEEE, pages 35 –40, june 2011. [4] M. Wei, L. M. Grupp, F. E. Spada, and S. Swanson. Reliably erasing data from flash-based solid state drives. In Proceedings of the 9th USENIX Conference on File and Storage Technologies, FAST’11, pages 8–8, Berkeley, CA, USA, 2011. USENIX Association. [5] Xilinx. Microblaze Soft Processor Core. http://www.xilinx.com/tools/microblaze.htm. [6] Xilinx. XUPV5-LX110T Development Kit. http://www.xilinx.com/univ/xupv5-lx110t.htm.

Figure 4 compares the power measurements of a program operation of a NAND flash chip using an Agilient 1147A current probe attached to an oscilooscope and the Ming II system. Although the current probe has a higher sampling rate, the signal suffers from a large amount of noise. Ming II offers an automated interface for acquiring accurate power measurements with high resolution at a significantly lower cost than an oscilloscope/probe solution.

4

Acknowledgements

Software Stack

Figure 5 depicts the software stack of the Ming II platform, as well as the development environment. The processor runs Linux kernel version 2.6.37. The userspace library communicates with the driver through the kernel’s ioctl function. The userspace library makes it easy for application developers to send requests to the flash chips and receive their results. It also provides facilities to monitor the status of outstanding requests, read the performance counters, and acquire power samples. Researchers can also modify the driver and userspace library to support additional functionality (e.g., create a block device driver, add flash translation layer logic). 3

Ming II: A Flexible Platform for NAND Flash-based ...

flexible prototyping platforms constrain NAND flash re- searchers to use software ... Recovering personal or forensic data. 2 System Architecture. This section ...

1MB Sizes 4 Downloads 135 Views

Recommend Documents

Block Utilization-Aware Buffer Replacement Scheme for Mobile NAND ...
Sep 9, 2014 - SUMMARY. NAND flash storage devices, such as eMMCs and mi-. croSD cards, are now widely used in mobile devices. In this paper, we pro-.

Ching-Ming Yeh
Oct 3, 2006 - have obtained prior permission, you may not download an entire .... to form vm blocks and adding a block with treatments 1, . . . , v -1. .... sense of Schur criterion by changing block one from nonbinary to binary; i.e; if we let.

SecureFlex – A Flexible System for Security Management
Abstract. In this paper, we present a flexible system for security management incorporating different sensor nodes (audio, video, iBeacon/WLAN), a data fusion and analysis center, and mobile units such as smartphones and augmented reality. (AR) glass

A Flexible Security Process for SPL construction
Index Terms— Software Product Line, variability, flexibility, comparison framework, feature modeling and metamodels. ..... The Lifecycle Coverage facet deals with the develop- .... MAP for goals modeling, features diagrams allows us to.

A Flexible Reservation Algorithm for Advance Network ...
Email: {mbalman, echaniotakis, ashoshani, asim}@lbl.gov. April, 2010 †. Abstract ... †This document was prepared as an account of work sponsored by the United ...... routing for fast transfer of bulk data files in time-varying networks. IEEE Int.

A Framework for Flexible and Scalable Replica-Exchange on ... - GitHub
a type of application with multiple scales of communication. ... Chemistry and Chemical Biology, Rutgers University, Piscataway,. NJ 08854. †Electrical .... ity built on the BigJob/SAGA distributed computing envi- ronment ... Fortunately, great pro

Download CREATING CAREER SUCCESS: A FLEXIBLE PLAN FOR ...
Download Free CREATING CAREER. SUCCESS: A FLEXIBLE PLAN FOR THE. WORLD OF ... and passionate about sustainability and social media. In addition ...

A flexible, robust, open-source code for simulating ...
Astronomy Department, University of California, Santa Cruz, 95064, USA. a r t i c l e i n f o ... Available online 2 March 2015. Keywords: ...... This means that we are free to replace f(x) with a linearized function fL(x) that ..... Python program.

A Flexible and Versatile Studio for Synchronized Multi ...
the pattern 9. ... 9). In our free-viewpoint video and motion from video research, robust separation ..... a mobile setup by using several notebook computers is also.

Flexible Manifold Embedding: A Framework for Semi ...
Changshui Zhang is with Department of Department of Automation,. Tsinghua ..... residue can lead to better reconstruction of face images. Replacing F0 with F ...

EDK II Platform Description (DSC) File Specification - Last modified
Jan 26, 2016 - Added table of valid environment variables that can be used in this file ...... file describes how the component or library is coded as well as providing some basic build information. Source INF - An EDK II .... Pseudo code is presente

Flexible material
Jul 13, 2000 - (75) Inventor: David Stirling Taylor, Accrington (GB) ... 156/299; 156/300;156/301; 156/512; 156/560;. 156/308.2; 428/141; ... Sarna Xiro GmbH, EC Safety Data Sheet, Jan. 16, 2001, 5 ..... 3 is a plan vieW ofa cutter grid. FIGS.

Flexible material
Jul 13, 2000 - one side of the separate elements and the substrate or to weld the elements to the substrate. The separate elements are preferably bonded to ...

Flexible material
Dec 18, 2009 - 1, 1993), 1 page. Memorandum in Support of Plaintiffs' Motion for Preliminary ...... stery and can be particularly useful When used With Wheel.

INTERVISTA_FIUME_WU MING 1.pdf
specifica funzione di Twitter. I vostri primi passi con questo strumento parevano quindi. non avervi convinto del tutto. La mia impressione è che invece ora Twitter ...

upgrade guide of NAVIPLUS PRO3000 nand flash repair machine.pdf ...
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. upgrade guide ...

Ming notes- 2017.pdf
Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Ming notes- 2017.pdf. Ming notes- 2017.pdf. Open. Extract.

Mankind video Ming dynasty questions.pdf
Mankind video Ming dynasty questions.pdf. Mankind video Ming dynasty questions.pdf. Open. Extract. Open with. Sign In. Main menu.

Abstract-Wu Ming Yue.pdf
Page 1. Whoops! There was a problem loading more pages. Retrying... Abstract-Wu Ming Yue.pdf. Abstract-Wu Ming Yue.pdf. Open. Extract. Open with. Sign In.

Abstract-Wu Ming Yue.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Abstract-Wu ...

MMPM: a Generic Platform for Case-Based Planning ...
MMPM: a Generic Platform for Case-Based Planning. Research *. Pedro Pablo Gómez-Martın1, David Llansó1,. Marco Antonio Gómez-Martın1, Santiago ...

MGISP: A GPS-based platform for spatial data ...
As data collection continues to burden databases, and as the Internet continues to grow ... deployed unto the SQL server CE, GPS connected to mobile device or ...