Hard Disk Controller: the Disk Drive's Brain and Body

Total Page:16

File Type:pdf, Size:1020Kb

Hard Disk Controller: the Disk Drive's Brain and Body Hard Disk Controller: the Disk Drive’s Brain and Body James Jeppesen; Walt Allen; Steve Anderson; Michael Pilsl Infineon Technologies; Memory Products, Network and Computer Storage 600 South Airport Road; Suite #205; Longmont, Colorado USA (James.J eppesen; Walt.Allen; Steve.Anderson; Michael.P ilsl) @infineon.c orn Abstract Servo Control, Central Processing Unit (CPU), Buffer Memory, and CPU memory. See Figure 1 for a block Integration of the Hard Disk Controller (HOC) today diagram of a disk drive. has taken on an extensive amount of functionality. From the host interface, error correction code, disk sequencer, 2.1. Host Interface microprocessor(s), servo control logic, buffer controller, to the embedded memory, the HDC has become a true The host interface’s primary function is to provide a system on a chip. Depending on the product, embedded standard protocol for the Disk Drive to talk to a host DRAM is used as bufferingf or data between the host and system. The host system can be anything from a server or media and possibly for storing controller firmware. By PC to a simple peripheral or consumer product--such as a bringing all these blocks into one chip, pin counts can printer or digital camera. There exists a number of distinct be reduced and higher dataflow speeds can be obtained protocols in the disk drive industry for performing this link. by decreasing the interconnect delays. However, the Some of the major interfaces are ATA, SCSI, and Serial challenge for designers is in test and verification of the interfaces. The main driver between selecting which design during development and production. interface to use is cost to performance. The design trend for the host interface is to have multiple interface blocks. 1. Introduction Each block supports a particular host protocol and has a standard back end interface to the rest of the HDC. This Computer mass storage devices once took up an area allows for maximum synergy among designs. Depending about the size of a 2-drawer legal file cabinet back in the on the interface chosen and the performance desired, the 1980’s. A current drive produced for digital cameras is size of the host interface can vary dramatically from a few smaller than a credit card, about the depth of a 3 % inch thousand gates to over a hundred thousand gates. floppy, and holds at least 10 times the data-all at a Currently, the host interface is the only block that is reduced cost. In 1995, a -400 MB drive cost nearly $500. covered by any kind of published industry standard--albeit Now, a 20 GB drive can be bought for only $150. What has many different public standards. These standards define enabled the manufacturers to achieve such changes? One physical transfers, required registers, and command sets. area is system integration. The hard disk controller (HDC) has experienced rapid 2.2. Buffer Controller integration as driven by cost reductions. Moving from a six-chip design, the current HDC solution is one chip. The main function of the buffer controller is to provide Future products will integrate the readwrite channel into arbitration and raw signal control to the bank of buffer the HDC further reducing the total number of parts the memory. This memory can be Static Random Access hard disk drive (HDD) will require to perform its function. Memory ( S U M ) , Dynamic Random Access Memory The paper presented here will look at the current scale of (DRAM), or Embedded memory. Typically the host integration and the testability issues created by this interface, disk sequencer, ECC, and CPU all need access to integration. this buffer memory. The buffer controller, under some priority scheme, will prevent these blocks from colliding 2. HDC Functional Block Description while accessing the memory buffer. This block may also contain logic to help with the automation of moving data to and from the host. The size of this block can vary The Hard Disk Controller today is made up of the depending on the number of memory configurations following common blocks: Host Interface, Buffer supported by a single controller. The system throughput Controller, Disk Sequencer, Error Correction Code (ECC), and performance can be greatly affected by this block. 0-7695-1200-3/01$10.00 Q 2001 IEEE 262 Head Disk Assembly PCB I I ATA, etc. Servo Control 8 Variable Store Motor Control Demodulator Figure 1. Hard disk drive subsystem 2.3. Disk Sequencer the data rate from and to the disk must remain constant. The sequencer is in charge of pulling data from registers, data The main task of the disk sequencer is to oversee and buffers, and the ECC block at precise times in a disk write manage the transfer of data between the disk interface operation, and in charge of sending the NRZ data to the (referred to in this paper as the NRZ pins) and the data correct blocks during a disk read operation. The disk buffer. The term, NRZ, is defined as non-return to zero. sequencer is often referred to as the disk formatter. The NRZ bus has become a normal name for the 8-bit data interface between the read/write channel and the HDC. For 2.4. ECC (Error Correction Code) a disk write operation, the disk sequencer takes user data, appends additional fields such as ECC bytes, and writes In terms of a single function, the ECC is one of the largest out the newly formatted data to the media interface blocks of an HDC controller. This block is responsible for through the NRZ pins. (NRZ is defined as non-return to appending ECC symbols to the user data and also to check zero.) Conversely for a disk read operation, the disk and, if needed, correct the user data before it is returned to sequencer reads formatted data from the NRZ pins and the host. The ECC size is greatly affected by the chosen converts it back into user data that is then sent to the host correction capable of the hardware and the amount of interface. The process is complicated by the fact that disk software intervention required to perform the correction. media has servo wedges written on it that cannot be over Along with ECC syndromes, this block often contains some written by user data. (Servo wedges, typically 50-80 per type of Cyclic Redundancy Check (CRC) function to keep revolution, contain gain control information for the the probability of miscorrection to an acceptably low level. readwrite channel; cylinder/track location information; Current disk drives are specifying a nonrecoverable read and head alignment patterns. The servo wedges are written error of 1 in lOI4 bits read [2]. at the factory by special equipment called, “Servo Writers.”) The user data sometimes must be split on either 2.5. Servo Control side of these servo wedges. The disk sequencer handles the split data fields for both read and write operations. The servo control block has a lot of different definitions Furthermore, since the spinning disk cannot be throttled, depending on the particular implementation. In this paper, 263 the servo block refers to general logic used in aiding the Integration of more and more HDC functional blocks into spinning of the discs and in the positioning of the actuator a single chip is not without issues. While integration can on the disc. It does not refer to the power devices lead to cost savings, if not managed appropriately, it can necessary to drive the spindle motors. This block is lead to cost increases, or even failure of the project. uniquely customized to the particular customer’s strategy As each module was integrated over the years, the for motion control d the Head Disk Assembly (HDA). externally observable connections were no longer available Therefore, it is difficult to standardize and thus lends itself for test. This forced the designer to find alternative methods to an Application Specific Standard Product (ASSP) for testability without adding significant cost to the final strategy. product. The testability issues have different objectives: development tests for the designer to prove function; wafer 2.6. CPU (Central Processing Unit(s)) tests which ensure the die was successfully manufactured; final assembly tests to verify the customer receives a The CPU of the HDC can be implemented in multiple functional part; and fnally a means for the customer to ways. Single %bit, 16-bit, or 32-bit microprocessors and develop and debug application firmware/software on the Digital Signal Processors (DSP) have been used, as well as embedded microprocessor. We will now look at the process combinations of these cores. These cores are used to for developing the product in greater detail and each of the control the overall system or may have a very specific task. testability objectives. The CPU has the highest gate count of all the logic blocks except memory. It is also the most complex from a 3.1. Development Phase simulation and integration standpoint. The development phase sets the objectives for the 2.7. Buffer Memory project. Major concerns include team make-up, features required for the product, and test methodology from both a The buffer memory is used as a temporary storage of producer and customer viewpoint. the user’s data either on its way to the disc or returning to Team make-up has implications on the overall design the host. This memory may also serve as variable storage methodology. If multi-sites are involved in the design of the or even code execution space for the CPU. This memory project, functions must be carefully chosen to streamline the traditionally has been made up of both SRAM and DRAM.
Recommended publications
  • North Star MDS Micro Disk System Double Density
    NorthSbrCompumlnc 2547 Ninth Street Berkeley, Co. 94710 MICRO-DISK SYSTEM MDS-A-D DOUBLE DENSITY Table of Contents Introduction. ..... • 2 Cautions ...... 2 Limited Hardware Warranty 3 Out of Warranty Repair .. 3 Limited Software Warranty 4 Software License ...•. 4 Parts List ........ 5 Assembly Information ••. 8 ,< Figure lA: Identification of Components 10 Assembly and Check-out Instructions 11 l System Integration .•••.... 22 , Theory of Operation ••••• 27 ! Appendix 1: Pulse Signal Detection 35 I Schematic Drawings ••.•••.• 36 -~ I ; Copyright 1978, North star Computers, Inc. MDS-D REVISION 2 25010 INTRODUCTION The North Star Micro-Disk System (MDS-A-O) is a complete floppy disk system for use with 5-100 bus computers. The system .• includes the disk controller board, one floppy disk drive, power regulation, cables, software and documentation. The software is provided on diskette and includes the North Star Disk Operating System, BASIC Language System, Monitor, and various utility programs. The system is capable of controlling up to four disk drives. Each disk drive can record 179,200 bytes of information on a diskette, thus allowing up to 716,800 bytes of on-line disk storage. Addition disk drives, AC power supplies, and cabinets are available as options If you have purchased the MDS-A-D as a kit, then first skim the entire manual. Be sure to carefully read the Assembly Information section before beginning assembly. If you have purchased the MDS-A-D in assembled form, you may skip the A Assembly section. ., CAUTIONS .- 1. Correct this document from the errata before doing anything else. 2. Do NOT insert or remove the MDS controller from the computer while the power is turned on.
    [Show full text]
  • File Systems and Disk Layout I/O: the Big Picture
    File Systems and Disk Layout I/O: The Big Picture Processor interrupts Cache Memory Bus I/O Bridge Main I/O Bus Memory Disk Graphics Network Controller Controller Interface Disk Disk Graphics Network 1 Rotational Media Track Sector Arm Cylinder Platter Head Access time = seek time + rotational delay + transfer time seek time = 5-15 milliseconds to move the disk arm and settle on a cylinder rotational delay = 8 milliseconds for full rotation at 7200 RPM: average delay = 4 ms transfer time = 1 millisecond for an 8KB block at 8 MB/s Bandwidth utilization is less than 50% for any noncontiguous access at a block grain. Disks and Drivers Disk hardware and driver software provide basic facilities for nonvolatile secondary storage (block devices). 1. OS views the block devices as a collection of volumes. A logical volume may be a partition ofasinglediskora concatenation of multiple physical disks (e.g., RAID). 2. OS accesses each volume as an array of fixed-size sectors. Identify sector (or block) by unique (volumeID, sector ID). Read/write operations DMA data to/from physical memory. 3. Device interrupts OS on I/O completion. ISR wakes up process, updates internal records, etc. 2 Using Disk Storage Typical operating systems use disks in three different ways: 1. System calls allow user programs to access a “raw” disk. Unix: special device file identifies volume directly. Any process that can open thedevicefilecanreadorwriteany specific sector in the disk volume. 2. OS uses disk as backing storage for virtual memory. OS manages volume transparently as an “overflow area” for VM contents that do not “fit” in physical memory.
    [Show full text]
  • Installing Windows NT 4.0 (Clean) on a Fasttrak/Fasttrak66ide RAID Controller
    Installing Windows NT 4.0 (Clean) on a FastTrak/FastTrak66IDE RAID Controller * READ THIS FIRST! If you have not created any arrays using your FastTrak IDE RAID Controller, STOP and setup your array/s in the FastTrak/FastTrak66 IDE RAID Controllers Bios first before creating any Dos Partition on your boot drive, or if you plan to boot with the FastTrak/FastTrak66 like you would a Standard Hard Disk Controller create a single drive array then proceed to step #1. -Setup Procedure 1.) We STRONGLY RECOMMEND that you create a Dos Partition (no larger than 4 GB in size) before installing Windows NT 4.0 with our FastTrak IDE RAID Controller card. If possible boot up with a real dos boot disk, then execute Microsoft's FDISK to partition and format the hard disk drive. This will help to eliminate potential problems during the install process. 2.) Being the Installation process by booting up the computer with CD ROM support. Change to the CD ROM Drive letter (yours may vary) by typing "D:" (without quotations) and then pressing "enter". Then type "cd I386" and then press the "enter" key. Next type (without quotations) "winnt" or "winnt /x" (if you already have the 3 startup diskettes. After the file copying process is complete, restart your computer with the NT 4.0 boot diskette labeled "Disk1 Setup Boot disk" when prompted. 3.) Proceed with the setup process until your reach the "Mass Storage Controller auto detect screen". 4.) Next a screen will appear showing a list of Mass Storage Devices (IDE Controllers, SCSI cards, Etc.) that have been recognized by the setup program.
    [Show full text]
  • Semiconductor Memories
    Semiconductor Memories Prof. MacDonald Types of Memories! l" Volatile Memories –" require power supply to retain information –" dynamic memories l" use charge to store information and require refreshing –" static memories l" use feedback (latch) to store information – no refresh required l" Non-Volatile Memories –" ROM (Mask) –" EEPROM –" FLASH – NAND or NOR –" MRAM Memory Hierarchy! 100pS RF 100’s of bytes L1 1nS SRAM 10’s of Kbytes 10nS L2 100’s of Kbytes SRAM L3 100’s of 100nS DRAM Mbytes 1us Disks / Flash Gbytes Memory Hierarchy! l" Large memories are slow l" Fast memories are small l" Memory hierarchy gives us illusion of large memory space with speed of small memory. –" temporal locality –" spatial locality Register Files ! l" Fastest and most robust memory array l" Largest bit cell size l" Basically an array of large latches l" No sense amps – bits provide full rail data out l" Often multi-ported (i.e. 8 read ports, 2 write ports) l" Often used with ALUs in the CPU as source/destination l" Typically less than 10,000 bits –" 32 32-bit fixed point registers –" 32 60-bit floating point registers SRAM! l" Same process as logic so often combined on one die l" Smaller bit cell than register file – more dense but slower l" Uses sense amp to detect small bit cell output l" Fastest for reads and writes after register file l" Large per bit area costs –" six transistors (single port), eight transistors (dual port) l" L1 and L2 Cache on CPU is always SRAM l" On-chip Buffers – (Ethernet buffer, LCD buffer) l" Typical sizes 16k by 32 Static Memory
    [Show full text]
  • EEPROM Emulation
    ...the world's most energy friendly microcontrollers EEPROM Emulation AN0019 - Application Note Introduction This application note demonstrates a way to use the flash memory of the EFM32 to emulate single variable rewritable EEPROM memory through software. The example API provided enables reading and writing of single variables to non-volatile flash memory. The erase-rewrite algorithm distributes page erases and thereby doing wear leveling. This application note includes: • This PDF document • Source files (zip) • Example C-code • Multiple IDE projects 2013-09-16 - an0019_Rev1.09 1 www.silabs.com ...the world's most energy friendly microcontrollers 1 General Theory 1.1 EEPROM and Flash Based Memory EEPROM stands for Electrically Erasable Programmable Read-Only Memory and is a type of non- volatile memory that is byte erasable and therefore often used to store small amounts of data that must be saved when power is removed. The EFM32 microcontrollers do not include an embedded EEPROM module for byte erasable non-volatile storage, but all EFM32s do provide flash memory for non-volatile data storage. The main difference between flash memory and EEPROM is the erasable unit size. Flash memory is block-erasable which means that bytes cannot be erased individually, instead a block consisting of several bytes need to be erased at the same time. Through software however, it is possible to emulate individually erasable rewritable byte memory using block-erasable flash memory. To provide EEPROM functionality for the EFM32s in an application, there are at least two options available. The first one is to include an external EEPROM module when designing the hardware layout of the application.
    [Show full text]
  • 6 O--C/?__I RAID-II: Design and Implementation Of
    f r : NASA-CR-192911 I I /N --6 o--c/?__i _ /f( RAID-II: Design and Implementation of a/t 't Large Scale Disk Array Controller R.H. Katz, P.M. Chen, A.L. Drapeau, E.K. Lee, K. Lutz, E.L. Miller, S. Seshan, D.A. Patterson r u i (NASA-CR-192911) RAID-Z: DESIGN N93-25233 AND IMPLEMENTATION OF A LARGE SCALE u DISK ARRAY CONTROLLER (California i Univ.) 18 p Unclas J II ! G3160 0158657 ! I i I \ i O"-_ Y'O J i!i111 ,= -, • • ,°. °.° o.o I I Report No. UCB/CSD-92-705 "-----! I October 1992 _,'_-_,_ i i I , " Computer Science Division (EECS) University of California, Berkeley Berkeley, California 94720 RAID-II: Design and Implementation of a Large Scale Disk Array Controller 1 R. H. Katz P. M. Chen, A. L Drapeau, E. K. Lee, K. Lutz, E. L Miller, S. Seshan, D. A. Patterson Computer Science Division Electrical Engineering and Computer Science Department University of California, Berkeley Berkeley, CA 94720 Abstract: We describe the implementation of a large scale disk array controller and subsystem incorporating over 100 high performance 3.5" disk chives. It is designed to provide 40 MB/s sustained performance and 40 GB capacity in three 19" racks. The array controller forms an integral part of a file server that attaches to a Gb/s local area network. The controller implements a high bandwidth interconnect between an interleaved memory, an XOR calculation engine, the network interface (HIPPI), and the disk interfaces (SCSI). The system is now functionally operational, and we are tuning its performance.
    [Show full text]
  • Compaq/Conner CP341 IDE/ATA Drive
    Compaq/Conner CP341 IDE/ATA Drive 1987 Compaq/Conner CP341 IDE/ATA Drive Emergence of IDE/ATA as widely used interface. Why it's important The IDE/ATA (Integrated Drive Electronics/AT Attachment) interface, now known as PATA (Parallel ATA) and SATA (Serial ATA), became the dominant hard disk drive (HDD) interface for IBM compatible PCs, initially because of its low cost and simplicity of integration. Today it is supported by most operating systems and hardware platforms and is incorporated into several other peripheral devices in addition to HDDs. As an intelligent drive interface universally adopted on personal computers, IDE/ATA was an enabler of the acceleration of disk drive capacity that began in the early 1990s. Discussion: The IDE interface development was initially conceived by Bill Frank of Western Digital (WD) in the fall of 1984 as a means of combining the disk controller and disk drive electronics, while maintaining compatibility with the AT and XT controller attachments to a PC without changes to the BIOS or drivers. WD floated that idea by its largest customers, IBM, DEC, and Compaq in the winter and spring of 1985. Compaq showed interest, so Bill Frank collaborated with Ralph Perry and Ken Bush of Compaq to develop the initial specification. WD formed a Tiger team in the spring of 1985 to build such a drive, using externally purchased 3.5” HDAs (Head Disk Assemblies), but initially just provided IDE to ST506 controller boards that Compaq hard-mounted to 10MB and 20MB 3.5” Miniscribe ST506 drives for their Portable II computer line, announced in February 1986 [3, 15, 20].
    [Show full text]
  • Onboard SCSI RAID User's Guide B7FH-3761-01ENZ0-00 Issued on September, 2005 Issued by FUJITSU LIMITED
    PRIMERGY RX600 S2 Onboard SCSI RAID User’s Guide Areas Covered Before Reading This Manual This section explains the notes for your safety and conventions used in this manual. Chapter 1 Overview (Features / Note) Explains the overview of the disk array and features of the SCSI array controller. Chapter 2 How to Use WebBIOS Explains WebBIOS setup procedures. WebBIOS is a basic utility to set up and manage the onboard SCSI array controller. Read this chapter carefully before using WebBIOS. Chapter 3 Installing Global Array Manager (GAM) Explains how to install Global Array Manager (GAM) to use a SCSI array controller in a Windows Server 2003, Windows 2000 Server, or Linux environment. Chapter 4 How to Use GAM GAM is a basic utility to manage the disk array. Read this chapter carefully before use. Chapter 5 Replacing a Hard Disk Explains maintenance related issues, such as hard disk replacement. Appendix Explains RAID level and list of GAM error codes. 1 Before Reading This Manual Remarks ■ Symbols Symbols used in this manual have the following meanings. These sections explain prohibited actions and points to note when using this device. Make sure to read these sections. These sections explain information needed to operate the hardware and software properly. Make sure to read these sections. → This mark indicates reference pages or manuals. ■ Key Descriptions / Operations Keys are represented throughout this manual in the following manner. E.g.: [Ctrl] key, [Enter] key, [→] key, etc. The following indicate pressing several keys at once: E.g.: [Ctrl] + [F3] key, [Shift] + [↑] key, etc. ■ Entering Commands (Keys) Command entries are displayed in the following way.
    [Show full text]
  • A Hybrid Swapping Scheme Based on Per-Process Reclaim for Performance Improvement of Android Smartphones (August 2018)
    Received August 19, 2018, accepted September 14, 2018, date of publication October 1, 2018, date of current version October 25, 2018. Digital Object Identifier 10.1109/ACCESS.2018.2872794 A Hybrid Swapping Scheme Based On Per-Process Reclaim for Performance Improvement of Android Smartphones (August 2018) JUNYEONG HAN 1, SUNGEUN KIM1, SUNGYOUNG LEE1, JAEHWAN LEE2, AND SUNG JO KIM2 1LG Electronics, Seoul 07336, South Korea 2School of Software, Chung-Ang University, Seoul 06974, South Korea Corresponding author: Sung Jo Kim ([email protected]) This work was supported in part by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education under Grant 2016R1D1A1B03931004 and in part by the Chung-Ang University Research Scholarship Grants in 2015. ABSTRACT As a way to increase the actual main memory capacity of Android smartphones, most of them make use of zRAM swapping, but it has limitation in increasing its capacity since it utilizes main memory. Unfortunately, they cannot use secondary storage as a swap space due to the long response time and wear-out problem. In this paper, we propose a hybrid swapping scheme based on per-process reclaim that supports both secondary-storage swapping and zRAM swapping. It attempts to swap out all the pages in the working set of a process to a zRAM swap space rather than killing the process selected by a low-memory killer, and to swap out the least recently used pages into a secondary storage swap space. The main reason being is that frequently swap- in/out pages use the zRAM swap space while less frequently swap-in/out pages use the secondary storage swap space, in order to reduce the page operation cost.
    [Show full text]
  • Speed Negotiation Improvement for Hard Disk Drive Serial ATA Interface by Considering Host Compatibility
    Speed Negotiation Improvement for Hard Disk Drive Serial ATA Interface by Considering Host Compatibility by Apisak Srihamat A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science in Microelectronics and Embedded Systems Examination Committee: Dr.Mongkol Ekpanyapong (Chairperson) Dr.Metthew N. Dailey Mak Chee Wai (External Expert) Nationality: Thai Previous Degree: Bachelor in Computer Engineering King Mongkut’s Institute of Technology, Ladkrabang, Thailand Scholarship Donor: Western Digital – AIT Fellowship Asian Institute of Technology School of Engineering and Technology Thailand December 2014 ACKNOWLEDGEMENTS First of all, I would like to thankful to Dr. Mongkol Ekpanyapong and Dr. Matthew N. Dailey who gave a very good guidance and support encouraged me to study and understand the objective, scope and limitations of this thesis. Then continue provide technical discussion to make me have clearer picture. I’m heartily thankful to Dr.Matthew N. Dailey, Dr.Manukid Parnichkun, and Dr.Metha Jeeradit who gave a very good suggestion during I study in AIT. I also would like to show my gratitude to Western Digital who gives me a time, support and job while I am studying master degree. Special appreciation goes to my supervisor at work, Mr. Petrus Hu, shouldering some of the responsibilities on my behalf in order to allow time for me to be away to complete my Masters study. The person I cannot forget, Mr. Mak Chee Wai as the external expert on the committee panel. He provided invaluable feedback, constant encouragement and support during my Masters study. I would like to thanks to my parents and family, who understand and allowed me to have extra time to work on this thesis.
    [Show full text]
  • AN-1471 Application Note
    AN-1471 APPLICATION NOTE One Technology Way • P. O. Box 9106 • Norwood, MA 02062-9106, U.S.A. • Tel: 781.329.4700 • Fax: 781.461.3113 • www.analog.com ADuCM4050 Flash EEPROM Emulation by Pranit Jadhav and Rafael Lajara INTRODUCTION provides assurance that the flash initialization function works as Nonvolatile data storage is a necessity in many embedded expected. An ECC check is enabled for the entire user space in systems. Data, such as boot up configuration, calibration constants, the flash memory of the ADuCM4050. If ECC errors are reported and network related information, is normally stored on an during any read operation, the ECC engine automatically corrects electronically erasable programmable read only memory 1-bit errors and only reports on detection of 2-bit errors. When a (EEPROM) device. The advantage of using the EEPROM to store read occurs on the flash, appropriate flags are set in the status this data is that a single byte on an EEPROM device can be register of the ADuCM4050. If interrupts are generated, the source rewritten or updated without affecting the contents in the other address of the ECC error causing an interrupt is available in the locations. FLCC0_ECC_ADDR register for the interrupt service routine (ISR) to read. The ADuCM4050 is an ultra low power microcontroller unit (MCU) with integrated flash memory. The ADuCM4050 includes Emulation of the EEPROM on the integrated flash memory 512 kB of embedded flash memory with a 72-bit wide data bus reduces the bill of material (BOM) cost by omitting the EEPROM that provides two 32-bits words of data and one corresponding in the design.
    [Show full text]
  • File System Layout
    File Systems Main Points • File layout • Directory layout • Reliability/durability Named Data in a File System index !le name directory !le number structure storage o"set o"set block Last Time: File System Design Constraints • For small files: – Small blocks for storage efficiency – Files used together should be stored together • For large files: – ConCguous allocaon for sequenCal access – Efficient lookup for random access • May not know at file creaon – Whether file will become small or large File System Design Opons FAT FFS NTFS Index Linked list Tree Tree structure (fixed, asym) (dynamic) granularity block block extent free space FAT array Bitmap Bitmap allocaon (fixed (file) locaon) Locality defragmentaon Block groups Extents + reserve Best fit space defrag MicrosoS File Allocaon Table (FAT) • Linked list index structure – Simple, easy to implement – SCll widely used (e.g., thumb drives) • File table: – Linear map of all blocks on disk – Each file a linked list of blocks FAT MFT Data Blocks 0 1 2 3 !le 9 block 3 4 5 6 7 8 9 !le 9 block 0 10 !le 9 block 1 11 !le 9 block 2 12 !le 12 block 0 13 14 15 16 !le 12 block 1 17 18 !le 9 block 4 19 20 FAT • Pros: – Easy to find free block – Easy to append to a file – Easy to delete a file • Cons: – Small file access is slow – Random access is very slow – Fragmentaon • File blocks for a given file may be scaered • Files in the same directory may be scaered • Problem becomes worse as disk fills Berkeley UNIX FFS (Fast File System) • inode table – Analogous to FAT table • inode – Metadata • File owner, access permissions,
    [Show full text]