Keywords- NOR flash memory, commandsequence, flash memory controller, command decoder,fifo

Similar documents
Design Of Flash Memory Controller

Design of an AMBA AHB Reconfigurable Arbiter for On-chip Bus Architecture

Keywords- AMBA, AHB, APB, AHB Master, SOC, Split transaction.

FPGA based Simulation of Clock Gated ALU Architecture with Multiplexed Logic Enable for Low Power Applications

Design and Simulation of UART for Serial Communication

VLSI Based 16 Bit ALU with Interfacing Circuit

AN2685 Application note

Implementation Of Single Data Rate Module In ONFI

ECE 485/585 Microprocessor System Design

Ind 1 I T I N O 2 P FO R P S M I I O

DEVELOPMENT OF FPGA AND GSM BASED ADVANCED DIGITAL LOCKER SYSTEM

State Diagram Tutorial. written by Pasquale A. Catalano 10/29/02

A Synthesizable RTL Design of Asynchronous FIFO Interfaced with SRAM

How to Design with Am29Fxxx Embedded Algorithm

Parallel NOR Flash Embedded Memory

Implementation of Convolution Encoder and Viterbi Decoder Using Verilog

Xilinx State Diagram

Design and Simulation of Router Using WWF Arbiter and Crossbar

FPGA Implementation of ALU Based Address Generation for Memory

Simulation Results Analysis Of Basic And Modified RBSD Adder Circuits 1 Sobina Gujral, 2 Robina Gujral Bagga

A29800 Series. 1024K X 8 Bit / 512K X 16 Bit CMOS 5.0 Volt-only, Boot Sector Flash Memory. Document Title. Revision History. AMIC Technology, Corp.

Chapter 2: Fundamentals of a microprocessor based system

Design and Implementation of Buffer Loan Algorithm for BiNoC Router

THE INTERNATIONAL JOURNAL OF SCIENCE & TECHNOLEDGE

Parallel NOR Flash Automotive Memory

Controller IP for a Low Cost FPGA Based USB Device Core

SPBT3.0DPx BT module. Firmware Update Procedure. Revision 1.0

International Journal of Advance Engineering and Research Development DESIGN AND IMPLEMENTATION OF SPI PROTOCOL

DEVELOPMENT OF FPGA MICROBLAZE PROCESSOR AND GSM BASED HEART RATE MONITORING SYSTEM

Allmost all systems contain two main types of memory :

Am29F400B. For More Information Please contact your local sales office for additional information about Spansion memory solutions.

A29L400A Series. 512K X 8 Bit / 256K X 16 Bit CMOS 3.0 Volt-only, Boot Sector Flash Memory. Document Title. Revision History. AMIC Technology, Corp.

Keywords Digital IC tester, Microcontroller AT89S52

Prof. N. P. Karlekar Project Guide Dept. computer Sinhgad Institute of Technology

STM32 F4xx Discovery Board Setup Guide

Implimentation of SpaceWire Standard in SpaceWire CODEC using VHDL

Information Technology Department, PCCOE-Pimpri Chinchwad, College of Engineering, Pune, Maharashtra, India 2

$%&#!#$!!!#'((#!)*+"!!,!#*+- ) %() (. %( ) //. 0 1 ) (2.

Design and Implementation of Hamming Code on FPGA using Verilog

Universal Asynchronous Receiver/Transmitter Core

Am29F002B/Am29F002NB. For More Information Please contact your local sales office for additional information about Spansion memory solutions.

ASIC Implementation and FPGA Validation of IMA ADPCM Encoder and Decoder Cores using Verilog HDL

Concept of Fan Regulator using MINI-2440

A Low Power DDR SDRAM Controller Design P.Anup, R.Ramana Reddy

ADQ14 Development Kit

DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL

ISSN: (Online) Volume 2, Issue 10, October 2014 International Journal of Advance Research in Computer Science and Management Studies

3 Volt Intel StrataFlash Memory to i960 H CPU Design Guide

Am29F040B. Data Sheet

SPANSION Flash Memory Data Sheet

FPGA BASED RANDOM NUMBER GENERATION ACCESSED THROUGH ARDUINO

SPANSION Flash Memory Data Sheet

SOC MPEG Decoder Chipset. Datasheet

Parallel NOR Flash Embedded Memory

Design And Implementation Of USART IP Soft Core Based On DMA Mode

Basic Concepts. Task One: The Basic Latch. Laboratory Nine Latches, RAM & Android Architecture

Workshop on Digital Circuit Design in FPGA

Design and Implementation of High Performance DDR3 SDRAM controller

Published in A R DIGITECH

AT25PE40. 4-Mbit DataFlash-L Page Erase Serial Flash Memory ADVANCE DATASHEET. Features

Implementation of SCN Based Content Addressable Memory

ISSN Vol.05, Issue.12, December-2017, Pages:

Lecture-50 Intel 8255A: Programming and Operating Modes

International Journal of Informative & Futuristic Research ISSN (Online):

Rev. No. History Issue Date Remark

SPANSION Flash Memory Data Sheet

SPANSION Flash Memory Data Sheet

DESIGN AND DEVELOPMENT OF MEMORY MANAGEMENT UNIT FOR MIL- STD-1750 PROCESSOR

TC58NYG1S3HBAI4 2 GBIT (256M 8 BIT) CMOS NAND E 2 PROM DESCRIPTION. FEATURES Organization x8 Memory cell array K 8 Register C

DEVELOPMENT OF FPGA BASED REMOTE CONTROLLED POWER STEERING CONTROL SYSTEM FOR VEHICLES

UART TO SPI SPECIFICATION

Implementation of Optimized ALU for Digital System Applications using Partial Reconfiguration

Am29LV040B. 4 Megabit (512 K x 8-Bit) CMOS 3.0 Volt-only, Uniform Sector 32-Pin Flash Memory DISTINCTIVE CHARACTERISTICS

TH58NVG3S0HTAI0 8 GBIT (1G 8 BIT) CMOS NAND E 2 PROM DESCRIPTION FEATURES C TOSHIBA MOS DIGITAL INTEGRATED CIRCUIT SILICON GATE CMOS

64Mbit, 2MX32 3V Flash Memory Module

FPGA-BASED DATA ACQUISITION SYSTEM WITH RS 232 INTERFACE

Software Documentation

3 Volt Intel StrataFlash Memory to Motorola MC68060 CPU Design Guide

Am29LV400B. 4 Megabit (512 K x 8-Bit/256 K x 16-Bit) CMOS 3.0 Volt-only Boot Sector Flash Memory DISTINCTIVE CHARACTERISTICS

4Mbit, 512KX8 5V Flash Memory (Monolithic)

APPLICATION NOTE. The Next Innovation in High Density and Low Pin Count. Key features

Platform Flash In-System Programmable Configuration PROMs

DatasheetDirect.com. Visit to get your free datasheets. This datasheet has been downloaded by

Engineer-to-Engineer Note

Dr. Sushil Garg Professor, Dept. of Computer Science & Applications, College City, India

MEMORY AND PROGRAMMABLE LOGIC

AT45DB041E. 4-Mbit DataFlash (with Extra 128-Kbits), 1.65V Minimum SPI Serial Flash Memory. Features

W29GL256S 256M-BIT 3.0-VOLT PARALLEL FLASH MEMORY WITH PAGE MODE. Publication Release Date: Jul 02, 2014 Revision C

Shri Vishnu Engineering College for Women, India

ECE 545 Lecture 12. FPGA Resources. George Mason University

An Efficient Designing of I2C Bus Controller Using Verilog

Am29LV400B Data Sheet

FPGA Implementation of High Speed AES Algorithm for Improving The System Computing Speed

AT45DB321E. Features. 32-Mbit DataFlash (with Extra 1-Mbits), 2.3V Minimum SPI Serial Flash Memory

TMS320C6000 EMIF to External Flash Memory

A29160A Series. 2M X 8 Bit / 1M X 16 Bit CMOS 5.0 Volt-only, Boot Sector Flash Memory. Document Title. Revision History. AMIC Technology, Corp.

PRELIMINARY DATASHEET

Lecture 11 SRAM Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Design and Verification of Serial Peripheral Interface 1 Ananthula Srinivas, 2 M.Kiran Kumar, 3 Jugal Kishore Bhandari

Am29F400B. 4 Megabit (512 K x 8-Bit/256 K x 16-Bit) CMOS 5.0 Volt-only Boot Sector Flash Memory DISTINCTIVE CHARACTERISTICS

Transcription:

Volume 4, Issue 4, April 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Flash Memory Controller Sanket D. Jadhav Dr. Shruti Oza Mr. Sachin Shinde Electronics Engineering Dept, Department of E&TC, C.E.O. BVDU College of Engineering, BVDU College of Engineering, PRECISE CONTROLS Pune, India Pune, India Satara, India Abstract-Flash memory controller is interfaced with flash memory. It handles all signals required by the flash memory. With the required signals different types of commands are also sent through flash memory controller to the flash memory. For each operation such as PROGRAM, READ,ERASE certain type of sequence is need to be generated to perform specific operation on flash memory. When any other system is required toperform read or write operation onto the flash memory, it has to communicate with flash controller.this paperfocuses on design of NOR based Flash Memory Controller in VHDL. Keywords- NOR flash memory, commandsequence, flash memory controller, command decoder,fifo I. INTRODUCTION There are two types of flash memories are availablei.e. NOR based and NAND based. Different types of series and parallel NOR flash memory chips are available.this paper focuses on design for parallelnor based flash memory controller. Figure 1 and figure 2 shows the general blocks which are used to in flash memory controller. The program address, program data and operation which is to be performed are sent from the other system to the flash memory controller. It performs command decoding, signal generation and send those to the flash memory [2]. Rest of the paper is organized as, second section introduces different blocks which are used in the designing of flash memory controller. Third section describes the command decoding formats used in the designing. Fourth section contains, the results of implemented blocks followed by conclusion. II. FLASH MEMORY CONTROLLER Figure 1: General diagram of Flash memory controller With reference to figure 1, data, address and operation are the inputs to the flash memory controllerwhich are sent from interfaced system or from GUI. This data bits are transmitted serially to the UART. Then received data, address and operation are stored in FIFO. Control logic generates required signal for flash memory. While read operation is done data read from flash memory is sent to interfaced system or to GUI through control logic, FIFO and UART [4]. Figure 2 shows detailed block diagram of flash memory controller. Working and use of each block is as follows. A. Interfaced system or GUI : This system sends the information related to operation, address, data to the flash controller. Interfaced system and GUI send this information serially. While read operation is there data sent from flash memory is passed to interface system or to GUI through flash memory controller. 2014, IJARCSSE All Rights Reserved Page 57

Figure 2: Block Diagram of Flash Memory Controller B. UART : It receives command,address and all other necessary information serially. It separates the incoming bit stream into four operands such as - Command start bits - Encoding bits - Program address bits - Program data bits C. Comparator : It checks the command start bits. For each valid command the command start bits are sent through the interface system or through GUI. For the design I have selected the start bit as 0xABh. If the received sequence is followed by the command start bit 0xABh then and then only the all other operands such as encoding bits, Program address, program -data are given to FIFO. D. FIFO : FIFO is used to store the incoming encoding bits, program address bits and program data bits. Sometimes flash memory goes into busy state, at that time control unit should remain idle and incoming commands from UART are need to be stored for further working of flash memory controller. After receiving valid command in FIFO generates enable signal to start the command decoder. With the start signal it gives all three stored operands to the command decoder. The Operands are encoding bits, program address bits and program data bits. E. Command Decoder : It receives encoding bits from FIFO. Depending on this encoding bits command decoder generates the command sequence with address and data cycle as per the requirement of flash memory. There are different standard command definitionfor the flash memory such as READ/RESET Command, PROGRAM Command, ERASE command. For each of these standard command sequence encoding bits are used which by forgets the command decoder to know which command is received and which type of address and data sequences are to be generated. F. Write Data Condition: Write data condition generates the signals which are required by the flash memory. For the flash memory different signals are required such as CE, WE, OE, Address, Data. Figure 3 shows the block diagram of parallel NOR flash memory. All the required signals are generated by the write data condition module. The paper focuses the design of flash memory controller for parallel NOR flash memory controller(m29w128gh). Memory requires different address data cycles with specified timings of CE, WE, OE and other signals. Command decoder decides which address and data cycles have to be sent and in which sequence that are to be sent. But different signals required by the flash memory are generated with specified timings at write data condition module. G. Read Data Condition : When there is an read operation is selected by the GUI then first of all the standard command sequence is sent to the flash memory through write data condition module. Then data from an flash memory is available on the dout pin of flash memory. This data is read by Read data condition module. This data is then sent to interfaced system or to GUI through UART. Through UART this data is transferred serially to interfaced system. 2014, IJARCSSE All Rights Reserved Page 58

Figure 3: Block diagram of Parallel NOR Flash Memory (M29W128GH) In reference with figure 3, the figure shows the block diagram of parallel NOR Flash Memory with its input and output signals.all these inputs signals are to be generated by flash memory controller with its timing specification. Memory can be operated in 8 or 16 modes. The paper deals with the 8 bit mode. III. COMMAND DECODING FORMATS COMMAND START BIT COMMAND ENCODINGBIT COMMAND AB h 0000 0001 PROGRAM Command AB h 0000 0010 RESET Command AB h 0000 0011 READ Command Table 1: Command chart In reference with table 1, it shows the actual commands are PROGRAM command, RESET Command, READ command. But for the decoding purpose command encoding bits are added to the command frame format. For valid command transmission command start bits are added to each command. Until and unless the valid command sequence does not receives at the flash controller it remains in idle state. While sending a data from GUI it sends the data in the sequenceas shown in figure 4[1]. COMMAND START BIT COMMAND ENCODING PROGRAM ADDRESS PROGRAM DATA BIT (only for PROGRAM command) ( only for PROGRAM command) Figure 4: Frame format sent through GUI or through interfaced system Command A D A D A D A D PROGRAM command AAA AA 555 55 AAA A0 PA PD RESET command X F0 - - - - - - READ command AAA AA 555 55 X F0 - - Table 2: Standard Command Definition -Address, Data Cycle 2014, IJARCSSE All Rights Reserved Page 59

In reference to table 2, these are the standard command definitions address- data cycles which are to be generated by the flash memory controller. For all the design of flash memory controller Parallel NOR Flash Memory (M29W128GH) is considered in x8 bit mode [1]. IV. RESULTS Figure 5 shows RTL of flash memory controller. Encoding bits, Program address,program data are given as a input to the block. It generates the signals which are required for flash memory. Depending on the encoding bit it came to know which command sequence is to be generated. Figure 5: Flash memory controller Figure 6: Flash memory controller with FIFO, Command decoder and control unit Figure 7: Output at command decoder 2014, IJARCSSE All Rights Reserved Page 60

Figure 8: Output of Flash Memory Controller After theapplication encoding bits, program address bit and program data anyhardware description language can be used to implement it and checked for functionality correctness. In this Paper, the code is implemented in VHDL language and XILINX simulation tool is used to simulate the design and generate the waveforms. As shown in figure 7, it indicates output of command decoder. When there is rising edge on cmndstart command decoder starts to decode command. Depending on the encoding bits it generates address - data cycles. These values are then given to write data logic and read data logic. As shown in figure 8, it indicates output of flash controller. The block consists of FIFO, command decoder, write data logic, read data logic. Input is given to FIFO block. If valid command is received it will get stored if FIFO.According to operation, respective signals are generated at the output of flash controller. V. CONCLUSION According to operation requested by interfaced system the respective command sequence and signals are generated at the output of flash memory controller. If invalid command is received then flash controller doesn t generate any signals. For valid command the data and command related information stored in FIFO. After which is subsequently enables command decoder and flash memory controller to generate signals and address data cycles. This paper designs different sub modules to design NOR flash memory controller.in this paper, working of Flash memory controller is discussedand implemented flash memory controller for PROGRAM commands, READ command, RESET command. REFERENCES 1. Parallel NOR Flash Embedded MemoryM29W128,M29W128GL -datasheet http://www.micron.com/ Parts/nor-flash/parallel-nor-flash/m29w128gh70n6e 2. Parallel flash memory information http://www.micron.com/products/nor-flash 3. NOR/NAND Flash Guide.pdfhttp://www.micron.com/products/nor-flash/ parallel-nor-flash/download-guide 4. HoeseunJung, Sanghyuk Jung, Yong Song Architecture Exploration of Flash Memory Storage ControllerThrough a Cycle Accurate Profiling Proc. IEEE Transactions on Consumer Electronics,Vol. 57, No. 4, November, 2011 2014, IJARCSSE All Rights Reserved Page 61