AN1797

AN1797
Interfacing 23X512/1024 SDI/SQI Serial SRAM Devices
to NXP LPC18XX/43XX Microcontrollers Using the SPIFI Peripheral
Author:
This application note is targeted at customers using
MCUs that offer Quad mode SPI capabilities, and who
want to take advantage of the higher throughput
capabilities offered by Microchip’s Serial SRAM, when
operated in the SQI mode.
Dragos Ciofu
Microchip Technology Inc.
INTRODUCTION
Microchip’s serial SRAM product line represents a
flexible way to add additional RAM to an application.
Available in PDIP, TSSOP and SOIC packages,
Microchip’s serial SRAM gives designers added
flexibility when it comes to compatibility and cost
effectiveness. With added Quad-SPI (SQI) capabilities
and high clock rates, the 23X512/1024 devices
eliminate the throughput penalty of a serial bus, while
keeping the PCB impact and BOM costs to a minimum.
The 23X512/1024 devices are also capable of
operating in SDI and SPI mode. With clock rates up to
20 MHz, the 23X512/1024 SRAM provides a
theoretical throughput of 80 Mbit/sec in SQI mode.
FIGURE 1:
The serial bus is controlled by the microcontroller
(master) which accesses the 23X512/1024 device
using the MCUs SPIFI peripheral, configured for
manual operation (as opposed to Flash operation).
Figure 1 describes the hardware schematic for the
interface between a Microchip 23X512/1024 device
and an NXP LPC4357 device in an LBGA256 package.
The 23X512/1024 device pinout does not vary with
package, as opposed to third party microcontrollers.
Users are advised to consult their chosen master
device’s data sheet and manufacturer notes to ensure
pin-to-pin compatibility between families of microcontrollers. The schematic shows the connections
between the SRAM and microcontroller, and the
software is provided assuming these connections. The
HOLD pin is tied to SPI_SIO3, being used as the fourth
lane in the SQI bus.
SCHEMATIC
SPI_CS
SPI_CLK
C10
B14
SPI_SIO3
A15
SPI_SIO2
C12
SPI_MOSI
C11
B13
SPI_MISO
LPC4357
FET256
Vcc
SO/SIO1
SIO2
VSS
 2014 Microchip Technology Inc.
VCC
CS
HOLD/SIO3
23X512/1024
SCK
SO/SIO0
DS00001797A-page 1
AN1797
FIRMWARE DESCRIPTION
The scope of this application note is to highlight the
capabilities of Microchip’s SRAM range. Bus protocol
implementations
vary
from
manufacturer
to
manufacturer, but Microchip’s SRAM devices boast
excellent compatibility, provided the protocol standards
are adhered to. The provided firmware targets an NXP
LPC4357 microcontroller, but the firmware is
compatible with all devices from NXP’s 18xx and 43xx
families. The code targets NXP’s proprietary SPIFI
peripheral (port) and controls it with a command API
available for the user of the 23X512/1024 device.
The firmware was tested using a 23A1024 SQI SRAM
device, attached to a LPC4357-EVB produced by
EMBEST. This particular EVB implements an LPC4357
part that has on-chip Flash. The on-chip Flash option is
necessary in order to have the SPIFI port available for
other slave devices (in this case the Microchip
23A1024 SRAM).
The ports employed for connecting the SRAM to the
LPC device are pictured in the schematic in Figure 1.
The SPIFI peripheral has a configurable clock
frequency, as set from the firmware, and the 23A1024
SRAM device can operate with a clock frequency of up
to 20 MHz without any explicit clock configuration
sequence.
The IDE used for developing the firmware is Keil
uVision V4.74.0.22.
In order to build the target, the LPCOpen v2.09 chip
support library is needed, available on the MCU
vendor’s web site (http://www.lpcware.com/system/
files/lpcopen_2_09_keil_iar_keil_mcb_4357_1.zip).
Both oscilloscope screen captures and logic analyzer
screen shots are shown in this application note.
DS00001797A-page 2
The following functions are provided to access the
Serial SRAM:
•
•
•
•
•
•
•
•
•
•
SRAMWriteSeq
SRAMReadSeq
SRAMWriteByte
SRAMReadByte
SRAMWritePage
SRAMReadPage
SRAMSetIOMode
SRAMResetIOMode
SRAMReadModeReg
SRAMWriteModeReg
The above functions are defined in the driver files
SRAM_Driver.c, with respective declarations in
SRAM_Driver.h. This file pair can be directly
imported into the user’s application code. The functions
are called from Main_Demo.c. The main demo file
cycles through all possible bus modes (SPI/SDI/SQI)
while performing IO operations in all different memory
modes (BYTE, PAGE, SEQUENTIAL).
INITIALIZATION
The 23X512/1024 devices do not require any specific
initialization. The internal state machine drives the
outputs and coordinates the read/write operations
based on the external clock issued by the master
device. However, in this case, the LPC microcontroller
needs initialization, which is done by calling the
included functions:
• spifiPeripheralConfig
• spifiPeripheralInit
The peripheral configuration function must be called
with the desired frequency (in Hz) as a parameter,
while the peripheral initialization function needs the
reference to a variable mapped in the peripheral
memory addressable range. This latter variable acts as
a handle for all operations using the SPIFI peripheral,
whose registers are addressable starting from the
0x40003000 or (LPC_SPIFI_BASE) address.
 2014 Microchip Technology Inc.
AN1797
BUS MODES
The 23X512/1024 part can be accessed via a simple
Serial Peripheral Interface (SPI) compatible serial bus.
The bus signals required are a clock input (SCK) and
separate data in (SI) and data out (SO) pins. Access is
controlled through a Chip Select (CS) input.
Additionally, SDI (Serial Dual Interface) and SQI (Serial
Quad Interface) are supported if the application needs
faster data rates. In SDI mode, the SI and SO lines are
half duplex and behave as SIO0 and SIO1 (from the
microcontroller’s point of view). In SQI mode, the SI,
SO, SIO2 and SIO3 behave as a half-duplex four lane
bus, and the HOLD/SIO3 pin loses its HOLD alternate
function.
INSTRUCTION SET
TABLE 1:
INSTRUCTION SET
Instruction Format
Hex
Code
Description
READ
0000 0011
0x03
Read data from memory array beginning at selected address
WRITE
0000 0010
0x02
Write data to memory array beginning at selected address
EDIO
0011 1011
0x3B
Enter Dual I/O access
Instruction Name
EQIO
0011 1000
0x38
Enter Quad I/O access
RSTIO
1111 1111
0xFF
Reset Dual and Quad I/O access
RDMR
0000 0101
0x05
Read Mode Register
WRMR
0000 0001
0x01
Write Mode Register
 2014 Microchip Technology Inc.
DS00001797A-page 3
AN1797
ENTER DUAL I/O ACCESS
Figure 2 represents the transmission of an EDIO
(0x3B) instruction using the SPI protocol.
To set SDI as a bus mode the EDIO (0x3B) instruction
must be clocked in. The master device must be aware
if the bus mode has been changed before issuing any
bus mode change instructions. EDIO can be
transmitted if the bus is in SPI or SQI modes. If the bus
is already in SDI mode, the EDIO instruction will not
reset the bus mode and will have no effect.
FIGURE 2:
The corresponding function call in the provided
firmware is:
• SRAMSetIOMode(SDI, SPI)
ENTER DUAL I/O ACCESS (SPI MODE)
0
0
1
1
0
0
0
0
MSB
1
0
1
1
0
0
0
0
MSB
Enter SDI Mode (EDIO) from SPI Mode
CS
0
1
2
3
4
5
6
7
SCK
SI
0
0
1
1
1
0
1
1
High-Impedance
SO
DS00001797A-page 4
 2014 Microchip Technology Inc.
AN1797
Figure 3 represents the transmission of an EDIO
(0x3B) instruction using the SQI protocol
The corresponding function call in the provided
firmware is:
• SRAMSetIOMode(SDI, SQI)
FIGURE 3:
ENTER DUAL I/O ACCESS (SQI MODE)
1
1
1
1
0
0
0
1
MSB
3B
 2014 Microchip Technology Inc.
DS00001797A-page 5
AN1797
ENTER QUAD I/O ACCESS
To set SQI as a bus mode the EQIO (0x38) instruction
must be clocked in. The master device must be aware
if the bus mode has been changed before transmitting
any bus mode change instructions. EQIO can be
transmitted if the bus is in SPI or SDI modes. If the bus
is already in SQI mode, the EQIO instruction will not
reset the bus mode and will have no effect.
Figure 4 represents the transmission of an EQIO (0x38)
instruction using the SPI protocol.
The corresponding function call in the provided
firmware is:
• SRAMSetIOMode(SQI, SPI)
FIGURE 4:
ENTER QUAD I/O ACCESS (SPI MODE)
0
0
1
1
0
0
0
0
MSB
1
0
0
0
0
0
0
0
MSB
Enter SQI Mode (EQIO) From SPI Mode
CS
0
1
2
3
4
5
6
7
SCK
SI
0
0
1
1
1
0
0
0
High-Impedance
SO
DS00001797A-page 6
 2014 Microchip Technology Inc.
AN1797
Figure 5 represents the transmission of an EQIO (0x38)
instruction using the SDI protocol
The corresponding function call in the provided
firmware is:
• SRAMSetIOMode(SQI, SDI)
FIGURE 5:
ENTER QUAD I/O ACCESS (SDI MODE)
0
1
0
0
0
1
1
0
MSB
38
 2014 Microchip Technology Inc.
DS00001797A-page 7
AN1797
RESET DUAL AND QUAD I/O ACCESS
If the bus mode is not known, the master device can
transmit two RSTIO instructions using both the SDI and
SQI formats to ensure a proper reset to SPI mode. This
double transmit has no side effects over the SRAM.
This is highlighted in the provided firmware, and
corresponding function call is:
To reset the bus mode from SQI or SDI modes back to
SPI mode, the RSTIO (0xFF) instruction must be
clocked in. The master device must be aware of the
current bus mode before issuing the RSTIO instruction.
The corresponding function call in this case is one of
the following:
• SRAMResetIOMode (TBD)
Figure 6 represents the transmission of an RSTIO
(0xFF) instruction using the SDI protocol.
• SRAMResetIOMode (SDI)
Or
• SRAMResetIOMode (SQI)
FIGURE 6:
RESET DUAL AND QUAD I/O ACCESS (SDI MODE)
1
1
1
1
1
1
1
1
MSB
01
DS00001797A-page 8
 2014 Microchip Technology Inc.
AN1797
Figure 7 represents the transmission of an RSTIO
(0xFF) instruction using the SQI protocol, followed by
the same instruction on the SDI protocol, as mentioned
above.
FIGURE 7:
RESET DUAL AND QUAD I/O ACCESS (SQI MODE, SDI MODES)
1
1
1
1
1
1
1
1
MSB
FF
 2014 Microchip Technology Inc.
1
1
1
1
1
1
1
1
MSB
FF
DS00001797A-page 9
AN1797
WRITE MODE REGISTER
Figure 8 represents the transmission of a WRMR (0x01)
instruction with the Page bits (0x80) as the parameter,
using the SPI protocol.
The default mode of operation for the 23X512/1024
devices is Sequential mode, and the user must select
the appropriate mode before any IO operation. The
Write Mode Register instruction (WRMR) allows the
users to write the bits 7 and 6 in the Mode register
•
•
•
•
The corresponding function call in the provided
firmware is:
• SRAMWriteModeReg(PAGE,SPI)
00 = Byte mode
10 = Page mode
01 = Sequential mode (default operation)
11 = Reserved
FIGURE 8:
WRITE MODE REGISTER (SPI MODE)
0
0
0
0
0
0
0
0
MSB
0
0
0
1
0
0
0
0
MSB
1
0
0
0
0
0
0
0
MSB
0
0
0
0
0
0
0
0
MSB
Write Mode Register Timing Sequence
CS
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
0
SCK
Instruction
SI
0
0
0
0
Data to Mode Register
0
0
0
1
7
6
5
4
3
2
High-Impedance
SO
DS00001797A-page 10
 2014 Microchip Technology Inc.
AN1797
Figure 9 represents the transmission of a WRMR (0x01)
instruction with the PAGE bits (0x80) as the parameter,
using the SDI protocol. On each clock, two bits are
transmitted and the MSB is found on the SIO1 line.
Only eight clock cycles are required to shift 2 bytes of
data.
The corresponding function call in the provided
firmware is:
• SRAMWriteModeReg(PAGE,SDI)
FIGURE 9:
WRITE MODE REGISTER (SDI MODE)
0
0
0
1
0
0
0
0
MSB
01
 2014 Microchip Technology Inc.
0
0
0
0
1
0
0
0
MSB
80
DS00001797A-page 11
AN1797
Figure 10 represents the transmission of a WRMR (0x01)
instruction with the PAGE bits (0x80) as the parameter,
using the SQI protocol. On each clock, the MSB is
found on the SIO3 line and the LSB on the SIO0 line. A
4-bit nibble is transmitted on each clock pulse. Only
four clocks are required to shift two bytes of data.
FIGURE 10:
The corresponding function call in the provided
firmware is:
• SRAMWriteModeReg(PAGE,SQI)
WRITE MODE REGISTER (SQI MODE)
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
MSB
01
DS00001797A-page 12
MSB
80
 2014 Microchip Technology Inc.
AN1797
READ MODE REGISTER
The Read Mode Register instruction (RDMR) provides
access to the 23X512/1024 SRAM’s Mode register.
Figure 11 represents the transmission of a RDMR (0x05)
instruction using the SPI protocol. The PAGE bits
(0x80) are expected on the MISO line.
The corresponding function call in the provided
firmware is:
• SRAMReadModeReg(SPI)
FIGURE 11:
READ MODE REGISTER (SPI MODE)
0
0
0
0
0
0
0
0
MSB
0
1
0
1
0
0
0
0
MSB
0
0
0
0
1
0
0
0
MSB
0
0
0
0
0
0
0
0
MSB
Read Mode Register Timing Sequence (RDMR)
CS
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
0
SCK
Instruction
SI
0
0
0
0
0
1
0
1
Data from Mode Register
High-Impedance
SO
 2014 Microchip Technology Inc.
7
6
5
4
3
2
DS00001797A-page 13
AN1797
Figure 12 represents the transmission of a RDMR (0x05)
instruction using the SDI protocol. In this case, the SEQ
bits (0x40) are expected on the SIO1 and SIO0 lines.
The MSB is found on the SIO1 line.
The corresponding function call in the provided
firmware is:
• SRAMReadModeReg(SDI)
FIGURE 12:
READ MODE REGISTER (SDI MODE)
0
0
1
1
0
0
0
0
MSB
05
DS00001797A-page 14
1
0
0
0
0
0
0
0
MSB
80
 2014 Microchip Technology Inc.
AN1797
Figure 13 represents the transmission of a RDMR (0x05)
instruction using the SQI protocol. In this case the
PAGE bits (0x80) are expected on the SIO3 through
SIO0 lines. The MSB is found on the SIO3 line. A 4-bit
nibble is transmitted on each clock pulse. Only four
clocks are required to shift two bytes of data, one in
each direction.
• SRAMReadModeReg(SQI)
FIGURE 13:
READ MODE REGISTER (SQI MODE)
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
MSB
05
 2014 Microchip Technology Inc.
MSB
80
DS00001797A-page 15
AN1797
BYTE WRITE
In order to write a byte in either mode, the WRITE
instruction (0x02) must be transmitted by the master,
followed by the 24-bit address and the 8-bit data to be
written. This is depicted in Figure 14.
FIGURE 14:
BYTE WRITE (SPI MODE)
0 00 0 0 01 0 00 0 0 000 10 0 1 000 11 1 0 101 01 1 0 11 1 10 1 0
MSB
The corresponding function call in the provided
firmware is:
• SRAMWriteByte(0x0123AB, data, SPI)
(where *data=0x7A)
DS00001797A-page 16
 2014 Microchip Technology Inc.
AN1797
Figure 15 represents a WRITE instruction in SDI mode.
The corresponding function call is:
• SRAMWriteByte(0x0123AB, data, SDI)
FIGURE 15:
BYTE WRITE (SDI MODE)
0
0
0
0
0
0
0
1
MSB
02
 2014 Microchip Technology Inc.
0
0
0
1
0
0
0
0
MSB
01
0
0
0
1
0
1
0
1
MSB
23
0
0
0
1 1
1
0
1
1
1
1
1 0
1
1
1
MSB
AB
MSB
7B
DS00001797A-page 17
AN1797
Figure 16 represents a WRITE instruction in SQI mode.
The corresponding function call is:
• SRAMWriteByte(0x0123AB, data, SQI)
(where *data=0x7A)
FIGURE 16:
BYTE WRITE (SQI MODE)
0
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
1
MSB
02
DS00001797A-page 18
MSB
01
MSB
23
MSB
AB
MSB
7B
 2014 Microchip Technology Inc.
AN1797
BYTE READ
In order to read a byte in either mode, the READ
instruction (0x03) must be transmitted by the master,
followed by the 24-bit address. In SDI and SQI modes,
one more additional dummy byte must be clocked
before any actual data is sent on the bus by the SRAM.
Figure 17 represents a READ instruction in SPI mode.
The corresponding function call is:
• SRAMReadByte(0x0123AB, data, SPI)
FIGURE 17:
BYTE WRITE (SPI MODE)
0 00 0 0 01 0 00 0 0 000 10 0 1 00 0 11 1 0 101 01 1
MSB
0 111 10 1 0
MSB
 2014 Microchip Technology Inc.
DS00001797A-page 19
AN1797
Figure 18 represents a READ instruction in SDI mode.
Notice that clocks 16 through 19 are the dummy byte
clocks. The corresponding function call is:
• SRAMReadByte(0x0123AB, data, SDI)
FIGURE 18:
BYTE READ (SDI MODE)
0
0
0
1
0
0
0
1
MSB
03
DS00001797A-page 20
0
0
0
1
0
0
0
0
MSB
01
0
0
0
1
0
1
0
1
MSB
23
0
0
0
1 1
1
1
1 1
1
0
1
1
1
1
1 1
1
1
1
0
1
1
1
MSB
AB
MSB
FF
MSB
7B
 2014 Microchip Technology Inc.
AN1797
Figure 19 represents a READ instruction in SQI mode.
The corresponding function call is:
• SRAMReadByte(0x0123AB, data, SQI)
The waveform is similar to the WRITE waveform, the
differences lie in the command word and the extra
dummy byte that is “read”.
FIGURE 19:
BYTE READ (SQI MODE)
0
1
0
1
0
1
0
1
1
1
1
1
0
1
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
1
1
0
1
MSB
03
 2014 Microchip Technology Inc.
MSB
01
MSB
23
MSB
AB
MSB
BB
MSB
7B
DS00001797A-page 21
AN1797
PAGE AND SEQUENTIAL MODES
Sequential operation allows the entire array to be
written to and read from. The internal address counter
is automatically incremented and page boundaries are
ignored. When the internal address counter reaches
the end of the array, the address counter will roll over
to 0x00000;
The 23X512/1024 parts have three modes of operation
that are selected by setting bits 7 and 6 in the Mode
register, as specified above in the Write Mode
Register section.
In Page mode, the read and write operations are limited
to within the addressed page (the address is
automatically incremented internally). If the data being
read or written reaches the page boundary, then the
internal address counter will increment to the start of
the page.
FIGURE 20:
Figure 20 represents a two-byte-wide sequential write.
The number of clocks required is two for the instruction,
six for the address and four for the two bytes of data.
The corresponding function call is:
• SRAMWriteSeq (0x123AB, data, 2, SQI)
SEQUENTIAL WRITE - 2 BYTES (SQI MODE)
00
00
00
1
1
0
0
11
00
11
11
11
11
00
00
11
00
0
0
1
1
11
11
11
11
11
11
00
00
00
00
0
0
0
0
00
00
00
11
00
11
11
00
00
0
0
00
00
00
11
11
00
11
00
11
MSB
02
03
DS00001797A-page 22
MSB
01
01
MSB
2323
MSB
AB
AB
MSB
7B
BB
MSB
7C
7B
 2014 Microchip Technology Inc.
AN1797
CONCLUSION
This application note offers designers a set of firmware
routines to access Microchip SPI/SDI/SQI serial
SRAMs from another target than the PIC® device
series of microcontrollers. This demonstrates
Microchip’s SRAM series’ excellent compatibility,
translated into lower development costs and faster time
to market.
 2014 Microchip Technology Inc.
DS00001797A-page 23
AN1797
APPENDIX A:
REVISION HISTORY
Revision A (09/2014)
Initial release of this document.
DS00001797A-page 24
 2014 Microchip Technology Inc.
Note the following details of the code protection feature on Microchip devices:
•
Microchip products meet the specification contained in their particular Microchip Data Sheet.
•
Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
•
There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
•
Microchip is willing to work with the customer who is concerned about the integrity of their code.
•
Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Information contained in this publication regarding device
applications and the like is provided only for your convenience
and may be superseded by updates. It is your responsibility to
ensure that your application meets with your specifications.
MICROCHIP MAKES NO REPRESENTATIONS OR
WARRANTIES OF ANY KIND WHETHER EXPRESS OR
IMPLIED, WRITTEN OR ORAL, STATUTORY OR
OTHERWISE, RELATED TO THE INFORMATION,
INCLUDING BUT NOT LIMITED TO ITS CONDITION,
QUALITY, PERFORMANCE, MERCHANTABILITY OR
FITNESS FOR PURPOSE. Microchip disclaims all liability
arising from this information and its use. Use of Microchip
devices in life support and/or safety applications is entirely at
the buyer’s risk, and the buyer agrees to defend, indemnify and
hold harmless Microchip from any and all damages, claims,
suits, or expenses resulting from such use. No licenses are
conveyed, implicitly or otherwise, under any Microchip
intellectual property rights.
Trademarks
The Microchip name and logo, the Microchip logo, dsPIC,
FlashFlex, flexPWR, JukeBlox, KEELOQ, KEELOQ logo, Kleer,
LANCheck, MediaLB, MOST, MOST logo, MPLAB,
OptoLyzer, PIC, PICSTART, PIC32 logo, RightTouch, SpyNIC,
SST, SST Logo, SuperFlash and UNI/O are registered
trademarks of Microchip Technology Incorporated in the
U.S.A. and other countries.
The Embedded Control Solutions Company and mTouch are
registered trademarks of Microchip Technology Incorporated
in the U.S.A.
Analog-for-the-Digital Age, BodyCom, chipKIT, chipKIT logo,
CodeGuard, dsPICDEM, dsPICDEM.net, ECAN, In-Circuit
Serial Programming, ICSP, Inter-Chip Connectivity, KleerNet,
KleerNet logo, MiWi, MPASM, MPF, MPLAB Certified logo,
MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code
Generation, PICDEM, PICDEM.net, PICkit, PICtail,
RightTouch logo, REAL ICE, SQI, Serial Quad I/O, Total
Endurance, TSHARC, USBCheck, VariSense, ViewSpan,
WiperLock, Wireless DNA, and ZENA are trademarks of
Microchip Technology Incorporated in the U.S.A. and other
countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
Silicon Storage Technology is a registered trademark of
Microchip Technology Inc. in other countries.
GestIC is a registered trademarks of Microchip Technology
Germany II GmbH & Co. KG, a subsidiary of Microchip
Technology Inc., in other countries.
All other trademarks mentioned herein are property of their
respective companies.
© 2014, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
ISBN: 978-1-63276-556-7
QUALITY MANAGEMENT SYSTEM
CERTIFIED BY DNV
== ISO/TS 16949 ==
 2014 Microchip Technology Inc.
Microchip received ISO/TS-16949:2009 certification for its worldwide
headquarters, design and wafer fabrication facilities in Chandler and
Tempe, Arizona; Gresham, Oregon and design centers in California
and India. The Company’s quality system processes and procedures
are for its PIC® MCUs and dsPIC® DSCs, KEELOQ® code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchip’s quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.
DS00001797A-page 25
Worldwide Sales and Service
AMERICAS
ASIA/PACIFIC
ASIA/PACIFIC
EUROPE
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technical Support:
http://www.microchip.com/
support
Web Address:
www.microchip.com
Asia Pacific Office
Suites 3707-14, 37th Floor
Tower 6, The Gateway
Harbour City, Kowloon
Hong Kong
Tel: 852-2943-5100
Fax: 852-2401-3431
India - Bangalore
Tel: 91-80-3090-4444
Fax: 91-80-3090-4123
Austria - Wels
Tel: 43-7242-2244-39
Fax: 43-7242-2244-393
Denmark - Copenhagen
Tel: 45-4450-2828
Fax: 45-4485-2829
Australia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
Atlanta
Duluth, GA
Tel: 678-957-9614
Fax: 678-957-1455
China - Beijing
Tel: 86-10-8569-7000
Fax: 86-10-8528-2104
Austin, TX
Tel: 512-257-3370
China - Chengdu
Tel: 86-28-8665-5511
Fax: 86-28-8665-7889
Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088
Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075
Cleveland
Independence, OH
Tel: 216-447-0464
Fax: 216-447-0643
Dallas
Addison, TX
Tel: 972-818-7423
Fax: 972-818-2924
Detroit
Novi, MI
Tel: 248-848-4000
Houston, TX
Tel: 281-894-5983
Indianapolis
Noblesville, IN
Tel: 317-773-8323
Fax: 317-773-5453
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
New York, NY
Tel: 631-435-6000
San Jose, CA
Tel: 408-735-9110
Canada - Toronto
Tel: 905-673-0699
Fax: 905-673-6509
DS00001797A-page 26
China - Chongqing
Tel: 86-23-8980-9588
Fax: 86-23-8980-9500
China - Hangzhou
Tel: 86-571-8792-8115
Fax: 86-571-8792-8116
China - Hong Kong SAR
Tel: 852-2943-5100
Fax: 852-2401-3431
China - Nanjing
Tel: 86-25-8473-2460
Fax: 86-25-8473-2470
China - Qingdao
Tel: 86-532-8502-7355
Fax: 86-532-8502-7205
China - Shanghai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
China - Shenzhen
Tel: 86-755-8864-2200
Fax: 86-755-8203-1760
China - Wuhan
Tel: 86-27-5980-5300
Fax: 86-27-5980-5118
China - Xian
Tel: 86-29-8833-7252
Fax: 86-29-8833-7256
India - New Delhi
Tel: 91-11-4160-8631
Fax: 91-11-4160-8632
India - Pune
Tel: 91-20-3019-1500
Japan - Osaka
Tel: 81-6-6152-7160
Fax: 81-6-6152-9310
Japan - Tokyo
Tel: 81-3-6880- 3770
Fax: 81-3-6880-3771
Korea - Daegu
Tel: 82-53-744-4301
Fax: 82-53-744-4302
Korea - Seoul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 or
82-2-558-5934
France - Paris
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
Germany - Dusseldorf
Tel: 49-2129-3766400
Germany - Munich
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Germany - Pforzheim
Tel: 49-7231-424750
Italy - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Italy - Venice
Tel: 39-049-7625286
Malaysia - Kuala Lumpur
Tel: 60-3-6201-9857
Fax: 60-3-6201-9859
Netherlands - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Malaysia - Penang
Tel: 60-4-227-8870
Fax: 60-4-227-4068
Poland - Warsaw
Tel: 48-22-3325737
Philippines - Manila
Tel: 63-2-634-9065
Fax: 63-2-634-9069
Singapore
Tel: 65-6334-8870
Fax: 65-6334-8850
Taiwan - Hsin Chu
Tel: 886-3-5778-366
Fax: 886-3-5770-955
Spain - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
Sweden - Stockholm
Tel: 46-8-5090-4654
UK - Wokingham
Tel: 44-118-921-5800
Fax: 44-118-921-5820
Taiwan - Kaohsiung
Tel: 886-7-213-7830
Taiwan - Taipei
Tel: 886-2-2508-8600
Fax: 886-2-2508-0102
Thailand - Bangkok
Tel: 66-2-694-1351
Fax: 66-2-694-1350
China - Xiamen
Tel: 86-592-2388138
Fax: 86-592-2388130
China - Zhuhai
Tel: 86-756-3210040
Fax: 86-756-3210049
03/25/14
 2014 Microchip Technology Inc.