The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers.    


Datasheet Search Engine   
 
Part # or Description: • 5V RS232 Driver • 2SC5066* • "Real Time Clock" • "USB connector" • "blue led" 5mm • 10 watt zener diode • 2N3055* motorola
 
Search Tip: Try entering the part number only. Include a wildcard (eg. lm317* or 1n4148*)

 

 

Data Encryption Routines PIC18 Author: David Flowers Microchip Te


Datasheet Thumbnail

  

Download PDF



Top Searches for this datasheet



AN953
Data Encryption Routines PIC18
Author: David Flowers Microchip Technology Inc.
ENCRYPTION MODULE OVERVIEW
Four algorithms choose from, each with their benefits Advanced Encryption Standard (AES) Modules available Assembly Assembly written Allows user decide include encoder, decoder both Allows user pre-program decryption into code function calculate decryption Tiny Encryption Algorithm version (XTEA) Modules available Assembly Programmable number iteration cycles SKIPJACK Module available Pseudo-random binary sequence generator encryption Modules available Assembly Allows user change feedback taps run-time KeyJump breaks regular cycle increase variability sequence Out-of-the-box support MPLAB® Various compiling options customize routines specific application Available Microchip Application Maestromodule simplify customization
INTRODUCTION
This Application Note covers four encryption algorithms: AES, XTEA, SKIPJACK® simple encryption algorithm using pseudo-random binary sequence generator. science cryptography dates back ancient Egypt. today's information technology where data widely accessible, sensitive material, especially electronic data, needs encrypted user's protection. example, network-based card entry door system that logs persons have entered building susceptible attack where user information stolen manipulated sniffing spoofing link between processor memory storage device. information encrypted first, better chance remaining secure. Many encryption algorithms provide protection against someone reading hidden data, well providing protection against tampering. most algorithms, decryption process will cause entire block information destroyed there single error block prior decryption.
2005 Microchip Technology Inc.
DS00953A-page
AN953
Overview/History/Background
Advanced Encryption Standard (AES) means encrypting decrypting data adopted National Institute Standards Technology (NIST) October 2000. late 1990s, NIST held contest initiate development encryption algorithms that would replace Data Encryption Standard (DES). contest tested algorithms' security execution speed determine which would named AES. algorithm chosen called "Rijndael" algorithm after designers, Joan Daemen Vincent Rijmen Belgium. symmetric block cipher that utilizes secret encrypt data. implementation this application note based 16-byte block data 16-byte size.
DS00953A-page
2005 Microchip Technology Inc.
AN953
ENCRYPTION
FIGURE ENCRYPT FLOWCHART
ENCRYPTION
Round Counter
Rcon
Addition
S-Table Substitution
Encode Shift
True Round Counter False Encode Column
Encode Schedule
Addition
Round Counter
Round Counter False True
2005 Microchip Technology Inc.
DS00953A-page
AN953
There five basic subdivisions encryption flowchart. detailed explanation each will follow. number rounds needed transformation taken from following table. 16-Byte Block 16-byte 24-byte 32-byte 24-Byte Block 32-Byte Block
Used this implementation. This implementation uses 16-byte block 16-byte thus uses rounds encryption. last encryption round, column subdivision left out. structures data blocks shown below.
TABLE
MATRIX:
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31]
TABLE
Data Data Data Data
DATA MATRIX:
Data Data Data Data Data Data Data [10] Data [11] Data [12] Data [13] Data [14] Data [15] Data [16] Data [17] Data [18] Data [19] Data [20] Data [21] Data [22] Data [23] Data [24] Data [25] Data [26] Data [27] Data [28] Data [29] Data [30] Data [31]
into data matrix structure, plain text encrypted needs broken into appropriate size blocks, with leftover space being padded. example, take following quote from Tale Cities", Charles Dickens. best times, worst times, Broken into 16-byte blocks, data would look similar this:
EXAMPLE
best
PLAIN TEXT DIVIDED INTO 16-BYTE BLOCKS
times, worst mes, tuvwxyz(
Note blocks into correct size matrix, values must padded block. this case, "tuvwxyz" added quote complete last block. Finally must selected that 128-bits long. examples this document, will [Charles Dickens]. With selected data sectioned into appropriate size blocks, encryption cycle begin.
DS00953A-page
2005 Microchip Technology Inc.
AN953
S-Table (Encryption Substitution Table):
S-Table Substitution direct table lookup replacement data. Below code this procedure:
for(i=0;i<BLOCKSIZE;i++) block[i]=STable[block[i]];
values table defined following chart.
TABLE
S-BOX ENCRYPTION SUBSTITUTION TABLE (VALUES HEXADECIMAL)
2005 Microchip Technology Inc.
DS00953A-page
AN953
Xtime
xtime(a) predefined linear feedback shift register that repeats every cycles. operation defined
if(a<0x80) a<<=1; else a=a<<1)^0x1b;
Column XORed with column
Addition:
addition defined each byte XORed with each corresponding data bytes. addition process same both encryption decryption processes. following C-code example: for(i=0;i<16;i++) data[i] key[i];
Schedule
Each round uses different encryption based previous encryption key. example follows that takes given calculates next round's key.
EXAMPLE
Given generic key:
GENERATION
Shift
shift cyclical shift left rows data block according table below:
TABLE
ENCRYPTION CYCLICAL SHIFT TABLE
shifts shifts shifts shifts
scheduling goes follows: Column XORed with S_Table lookup column S_Table[K13] S_Table[K14] S_Table[K15] S_Table[K12] XORed with Rcon
16-byte block 24-byte block 32-byte block
Note that this transformation different encryption decryption.
EXAMPLE
TRANSFORMATION
Rcon;
Rcon updated with xtime Rcon
Given original data:
Rcon xtime(Rcon);
(the starting value Rcon 0x01 encoding) Column XORed with column Column XORed with column
results transformation would follows:
DS00953A-page
2005 Microchip Technology Inc.
AN953
column
Chapter Section 4.2.3 specification defines column transformation. this operation, matrix c(x) cross-multiplied input vector (a(x)) using special rules Polynomials with coefficients GF(28) form output vector b(x).
FIXED MATRIX c(x)
special rules multiplication equate following: xtime(a)
xtime(xtime(a))
xtime(a)
xtime(xtime(a))
first resulting multiplication would
EXAMPLE
b[0]= xtime(a[0]) (a[1] xtime(a[1])) a[2] a[3](1,2) Note stands members multiplication XORed together rather then added together they would regular matrix multiplication. Refer Application Note 821, "Advanced Encryption Standard Using PIC16XXX" (DS00821), available www.microchip.com, full example this multiplication.
EXAMPLE
Plain text: Key: Plain hex:
ENCRYPTION EXAMPLE:
best ][of times, was][the worst ti][mes, tuvwxyz(1)] [Charles Dickens.]
Cipher hex: Note line been padded with "tuvwxyz" that data fits block. Only first block results shown. between each block, must reset change must taken into consideration when decryption begins.
2005 Microchip Technology Inc.
DS00953A-page
AN953
DECRYPTION
subdivisions decryption algorithm similar those encryption algorithm, with most being inverse operation. major difference, however, setup preceding decryption. decryption different than encryption must loaded correctly. decryption calculated running through encryption schedule appropriate number rounds. during encryption, reset between blocks, decryption will then have adjust accordingly. value Rcon must also differently decryption process. value 0x36 used rounds. This determined running encryption schedule routine appropriate number rounds.
FIGURE
DECRYPT FLOWCHART
DECRYPTION
Round Counter
Rcon 0x36
Addition
Round Counter False Decode Column
True
S-Table Substitution
Decode Shift
Decode Schedule
Addition
Round Counter
Round Counter False True
DS00953A-page
2005 Microchip Technology Inc.
AN953
Si-Table (decryption lookup table):
Si-Table similar S-Table function provides inverse loop-up results.
TABLE
Si-BOX DECRYPTION SUBSTITUTION TABLE (VALUES HEXADECIMAL)
2005 Microchip Technology Inc.
DS00953A-page
AN953
Schedule
Each round decryption uses same that used encrypt data. next iteration determined from previous decryption performing inverse operation encryption schedule. obtain decryption from encryption key, cycle appropriate amount times through encryption schedule. encryption cycle, value that point correct decryption key, this value saved, recalculated later pre-calculated stored system. Given generic key:
scheduling goes follows: Starting from decryption key: Column XORed with column Column XORed with column Column XORed with column
DS00953A-page
2005 Microchip Technology Inc.
AN953
Column XORed with S-Table lookup column (Note: This uses S-Table Si-Table): S_Table [K13] S_Table [K14] S_Table [K15] S_Table [K16] XORed with Rcon
Rcon;
Inverse Column:
inverse column operation differs from column operation only matrix c(x). (Note: values hexadecimal) FIXED MATRIX c(x) operation a[0] 0x0E very calculation intensive 8-bit processor. There several different methods calculating these numbers reduce mathematical load. method chosen this implementation simple lookup table xtime(a), xtime(xtime(a)) xtime(xtime(xtime(a))) values.
Rcon updated with inverse xtime Rcon
if(Rcon 0x01) Rcon 0x80; else Rcon >>=1;
Note:
starting value Rcon 0x36 decoding using 128-bit
Shift
shift cyclical shift left rows data based below table:
shifts 16-byte block 24-byte block 32-byte block shifts shifts shifts
Note that this transformation different encryption decryption. Also note that results this transformation equivalent shift transformation encryption blocks shifted right instead left.
EXAMPLE
SHIFT
Given original data:
results transformation would follows:
2005 Microchip Technology Inc.
DS00953A-page
AN953
Overview Routines AESEncode
This function encrypts input data with input key.
Syntax
void Encode(unsigned char* block, unsigned char* key)
Parameters
Block block data encrypt, used encrypt
Return Values
None
Pre-condition
Block preloaded with correct values
Side-effects
Values block have changed encrypted version, contains decryption that block
Remarks
None
Example: Usage Encode
AESEncode(block,key); Assembly mov1w 0x34 movwf key+0 mov1w 0x12 movwf key+1 movff data+0,block+0 movff data+1,block+1 call AESEncode
DS00953A-page
2005 Microchip Technology Inc.
AN953
AESDecode
This function decrypts input data with input decryption key.
Syntax
void Decode(unsigned char* block, unsigned char* key)
Parameters
Block block data decrypt, used decrypt
Return Values
None
Pre-condition
Block preloaded with correct values
Side Effects
Values block have changed decrypted version, contains original encryption that block
Remarks
None
Example: Usage Decode
AESDecode(block,key);
Assembly mov1w movwf mov1w movwf movff movff call 0x34 key+0 0x12 key+1 data+0,block+0 data+1,block+1 AESDecode
2005 Microchip Technology Inc.
DS00953A-page
AN953
AESCalcDecodeKey
This function calculates decryption block data from encryption key.
Syntax
void Decode(unsigned char* block, unsigned char* key)
Parameters
used encrypt
Return Values
None
Pre-condition
preloaded with correct values
Side Effects
contains decryption that block
Remarks
None
Example: Usage calcDecodeKey
AEScalcDecodeKey(key); Assembly mov1w 0x34 movwf key+0 mov1w 0x12 movwf key+1 call AEScaleDecodeKey
DS00953A-page
2005 Microchip Technology Inc.
AN953
XTEA
Overview/History/Background
Tiny Encryption Algorithm version (XTEA) encryption algorithm that gets fame from size. XTEA adaptation original algorithm (TEA) after weakness found structure. XTEA's authors David Wheeler Roger Needham Cambridge Computer Laboratory. XTEA gets security from number encryption iterations goes through. authors recommend iterations high security, they believe iterations should secure several decades, with iterations being sufficient applications with lower security needs. most notable feature XTEA smallness encryption decryption algorithm. Below code flow chart (next page) encryption cycle. ((x2<<4 x2>>5) (sum *(key+(sum&0x03))); sum+=DELTA; ((x1<<4 x1>>5) (sum *(key+(sum>>11&0x03)));
EXAMPLE
Plain text: Key: Plain hex:
XTEA ENCRYPTION EXAMPLE
t][he best ][of times][, was][ wor][st ti][mes, [Charles Dickens.] [0x4974207761732074](1,2).
Cipher hex: [0x7C0BA7CED6E78034]. Note Only first block results shown. between each block, must reset. Otherwise, decryption flow chart must changed. decoding process equally simple. following C-code describes reverse operation. ((x1<<4 x1>>5) (sum *(key+(sum>>11&0x03))); sum-=DELTA; ((x2<<4 x2>>5) (sum *(key+(sum&0x03)));
2005 Microchip Technology Inc.
DS00953A-page
AN953
FIGURE XTEA FLOWCHART
Key[ 0x03
delta
Key[ (sum>>11) 0x03
addition,
DS00953A-page
2005 Microchip Technology Inc.
AN953
Overview Routines XTEAEncode
This function encrypts input data with input key.
Syntax
void XTEAEncode(unsigned long* data, unsigned char dataLength)
Parameters
data block data encrypt, dataLength amount data encrypt (must factor
Return Values
None
Pre-condition
data preloaded with correct values
Side Effects
Values data have changed encrypted version
Remarks
Note that assembly version only encrypts bytes time
Example: Usage Encode
XTEAEncode(data,sizeof(data)); Assembly mov1w 0x08 movwf dataLength mov1w 0x34 movwf key+0 mov1w 0x12 movwf key+1 lfsr pointerNum,data call XTEAEncode
2005 Microchip Technology Inc.
DS00953A-page
AN953
TEADecode
This function decrypts input data with input decryption key.
Syntax
void XTEADecode(unsigned long* data, unsigned char dataLength)
Parameters
data block data decrypt, dataLength amount data decrypt (must factor
Return Values
None
Pre-condition
Data preloaded with correct values
Side Effects
Values data have changed decrypted version
Remarks
Note that assembly version only decrypts bytes time
Example: Usage Decode
XTEADecode(data,sizeof(data)); Assembly mov1w 0x08 movwf dataLength mov1w 0x34 movwf key+0 mov1w 0x12 movwf key+1 1fsr pointerNum,data call XTEADecode
DS00953A-page
2005 Microchip Technology Inc.
AN953
SKIPJACK
Overview/History/Background
SKIPJACK encryption algorithm that developed early 1980s encrypting governmental documents. remained classified SECRET until 1998 when declassified public. SKIPJACK uses 80-bit 64-bit block data. smaller size SKIPJACK left vulnerable becoming obsolete must faster than AES, XTEA other encryption standards that support sizes larger.
Encryption
Like many other encryption algorithms, SKIPJACK based Feistel network structure. SKIPJACK alternates between rules over Feistel network with substitution table. counter counts from used determine round using counter index into crypto-variable.
FIGURE
SKIPJACK® ENCRYPTION FLOWCHARTS PAGE
ENCRYPTION
Counter
Rule
False rule times? True Rule Counter
False rule times? True Rule Counter
False rule times? True Rule Counter
False rule times? True Counter
2005 Microchip Technology Inc.
DS00953A-page
AN953
FIGURE SKIPJACK® ENCRYPTION FLOWCHARTS PAGE
Rule
Counter
Rule
Counter
Note stands G-permutation later described this document. W1,2,3 four words that being encrypted.
Stands operation.
DS00953A-page
2005 Microchip Technology Inc.
AN953
F-TABLE
F-Table simple substitution table that used both encryption decryption cycles SKIPJACK. (Note: values hexadecimal)
TABLE
F-TABLE
2005 Microchip Technology Inc.
DS00953A-page
AN953
G-PERMUTATION
G-permutation operation Feistel network SKIPJACK. splits upper lower byte input word encrypt. network also makes crypto-variable, which 80-bit long key. crypto-variable indexed with number iterations through Feistel network. This number considered that index wraps). resulting byte then XORed into data used look into F-Table. flow graph below illustrates this process. Note that stands loop into F-Table. Also note that counter
FIGURE
G-PERMUTATION
(high byte) (low byte) CryptoVariable [(4k)
CryptoVariable [((4k)
CryptoVariable [((4k)
CryptoVariable [((4k)
(high byte) (low byte)
Note:
represents operation.
DS00953A-page
2005 Microchip Technology Inc.
AN953
DECRYPTION
Decrypt Flowchart
decryption flowchart nearly identical encryption flow chart. only differences being counter starts rule starts before rule
FIGURE
DECRYPTION FLOWCHART
DECRYPTION
Counter
Rule
False rule times? True Rule Counter
False rule times? True Rule Counter
False rule times? True Rule Counter
False rule times? True Counter
2005 Microchip Technology Inc.
DS00953A-page
AN953
INVERSE G-PERMUTATION
inverse G-permutation very similar G-permutation. Note that stands loop into F-Table. Also note that counter
FIGURE
INVERSE G-PERMUTATION
(high Byte) (low byte)
CryptoVariable [((4k)
CryptoVariable [((4k)
CryptoVariable [((4k)
CryptoVariable [(4k)
(high byte) (low byte)
DS00953A-page
2005 Microchip Technology Inc.
AN953
Overview Routines SKIPJACKEncode
This function encrypts input data with cryptovariable key.
Syntax
void Encode(unsigned int* data, unsigned char dataLength)
Parameters
data block data encrypt, dataLength amount data encrypt (must factor
Return Values
None
Pre-condition
data preloaded with correct values factor size
Side Effects
Values data have changed encrypted version
Remarks
None
Example: Usage Encode
2005 Microchip Technology Inc.
DS00953A-page
AN953
SKIPJACKDecode
This function decrypts input data.
Syntax
void Decode(unsigned int* data, unsigned char dataLength)
Parameters
data block data decrypt, dataLength amount data decrypt (must factor
Return Values
None
Pre-condition
Data preloaded with correct values factor size
Side Effects
Values data have changed decrypted version
Remarks
None
Example: Usage Decode
DS00953A-page
2005 Microchip Technology Inc.
AN953
PRBS
Overview/History/Background
Pseudo-Random Binary Sequence (PRBS) generators used create sequence bits that have very good randomness properties, though sequences they generate predictable eventually repeated. Linear Feedback Shift Registers (LFSRs) used create PRBS. Specifically, this implementation uses Galois implementation LFSR create PRBS. order sequence controlled where feedback effects nodes. PRBSs used very simple encryption. While this technique secure, used fast simple conceal data deter attacks. This method very secure when data encrypt plain text there consecutive bytes that altered, leaving partial messages visible). Berlekamp-Massey algorithm used take output cycle from LFSR compute feedback tabs. From feedback taps data, then calculated.
FIGURE
PRBS FLOWCHART
[8,7,6,1]
Note: stands operation.
above LFSR maximal with taps 8,7,6 output binary sequence. output system always wraps around input system, well other taps. output this sequence good randomness properties. think binary sequence series coin tosses, would expect that would land heads half time tails other half. probability getting heads (11) would (1/2)*(1/2)=1/4. output binary sequences LFSRs follow this pattern. likelyhood getting length (`010' `101') 1/2. probablity getting length (`0110' `1001') This just many randomness properties that LFSRs fulfill.
EXAMPLE
Plain text: Key: Plain hex:
PRBS EXAMPLES
best times, worst times, [Char] [0x4974207761732074](1).
Cipher hex: [0x3BCD7351F2B5C30A].
Key: Feedback: Plain hex:
[Char] [0x4974207761732074](1).
Cipher hex: [0x3BCD73517275A33A]. Note Only first block results shown.
2005 Microchip Technology Inc.
DS00953A-page
AN953
SUGGESTIONS IMPROVEMENT/VARIATION
Though LFSRs succeptable brute force attack simplicity their nature, there improvements feedback system that make them more difficult crack. through separate times with different keys different feedbacks Change module that data operated different (preferably non-linear) manner Replace data key[0]; with data (key[3]&0b00110011) (key[2]&0b10101010) Replace with data swapf(key[1]) (key[2]&0b11000010) other combinations Additional taps feedback system found
DS00953A-page
2005 Microchip Technology Inc.
AN953
Overview Routines PRBSEncodeDecode
This function encrypts decrypts data using PRBS generator.
Syntax
void EncodeDecode(unsigned char* data, unsigned dataLength)
Parameters
data block data decrypt, dataLength amount data decrypt
Return Values
None
Pre-condition
preloaded with correct value
Side Effects
Values data have changed decrypted version
Remarks
None
Example: Usage Decode
Assembly lfsr pointerNum.data mov1w 0x08 movwf dataLength call PRBSEncodeDecode
2005 Microchip Technology Inc.
DS00953A-page
AN953
PRECAUTIONS
With exception pseudo-random number generator encryption, single error encrypted data cause destruction entire block data once decrypted. Because this phenomenon, extra caution should taken ensure that data correct. checksum verification byte embedded into data help ensure that information data block remains intact after decryption. This feature also used help prevent theft. AES, SKIPJACK XTEA relatively secure algorithms, long encryption remains hidden (even encryption algorithm known). becomes public knowledge, however, then data vulnerable. errors intentionally introduced into encrypted data attackers unaware existence, then knowing encryption algorithm will still allow them decrypt data. i.e. block[2] block[3]; block[6] 0x34;
EXAMPLE
Plain text: Cipher Text:
Added errors: (Least significant byte XORed with 0x01) Plain Text results: (without correcting error) Note: single error this example caused destruction entire block data.
DS00953A-page
2005 Microchip Technology Inc.
AN953
RESULTS
TABLE
Method PRBS encryption with skipping SkipJack® XTEA (also referred TEAN TEA-N) XTEA (also referred TEAN TEA-N) (Rijndael Algorithm) Assembly PRBS encryption with skipping PRBS encryption with skipping XTEA (also referred TEAN TEA-N) XTEA (also referred TEAN TEA-N) (Rijndael Algorithm) KeyJump KeyJump iterations iterations High High/ Very High High/ Very High 22-40 (*,**) 97-120 (*,**) (*,***) (*,***) 22-40 (*,**) 97-120 (*,**) (*,***) (*,***) 620-687 (****) 250000 83333 21552 10799 27248 250000 83333 21552 10799 14556 iterations iterations Iterations/ Variables Tested KeyJump Security High High High/ Very High High/ Very High Encoding Cycles Byte (approx.) 92-146 (**,*) 2812 1075 (*,***) 2133 (*,***) 2153 Decoding Cycles Byte (approx.) 92-146 (**,*) 2817 1280 (*,***) 2194 (*,***) 2940 (****) Inst./Sec Bytes/Sec (Encode) 68493 3556 9302 4688 4645 Bytes/Sec (Decode) 68493 2550 7813 4558 3401
TIMING
****
Depends size data array. Depends value used. Depends iterations/jumps. Depends decode generated hard-coded.
TABLE
Method
USAGE
3616 1950 6104
PRBS encryption with skipping SkipJack® XTEA (also referred TEAN TEA-N) (Rijndael Algorithm) Assembly PRBS encryption with skipping XTEA (also referred TEAN TEA-N) (Rijndael Algorithm)
4400
This figure does include memory holding data encrypted.
2005 Microchip Technology Inc.
DS00953A-page
AN953
Summary
Like many other applications, when choosing encryption algorithm application, becomes balancing between execution speed, code size security. application emphasizes speed over security, then PRBS algorithm probably best choice. absolute security needed matter what speed, cost code size, then best choices XTEA with more rounds AES. balance between code size, execution speed security XTEA with iterations. When developing system that needs securely talk other systems, will necessary implement same encryption standard communication deciphered. probably most common implementation four discussed this application note. When developing products that will remain several decades, also important remember that technology cryptography methods improve, encryption algorithms implemented today will become weaker with time. Brute force attacks will become faster methods getting better then brute force attacks constantly being developed. more secure encryption implementation appropriate applications where firmware will remain field without updating encryption alogorithm, will remain field long periods time help keep data secure long possible.
REFERENCES
AN821, "Advanced Encryption Standard Using PIC16XXX" (DS00821), Caio Gubel, Microchip Technology,Inc. Rijndael Page: NIST Page: Russell Page: NIST DES/SKIPJACK Page: Wave Instruments Page:
DS00953A-page
2005 Microchip Technology Inc.
Note following details code protection feature Microchip devices: Microchip products meet specification contained their particular Microchip Data Sheet. Microchip believes that family products most secure families kind market today, when used intended manner under normal conditions. There dishonest possibly illegal methods used breach code protection feature. these methods, knowledge, require using Microchip products manner outside operating specifications contained Microchip's Data Sheets. Most likely, person doing engaged theft intellectual property. Microchip willing work with customer concerned about integrity their code. Neither Microchip other semiconductor manufacturer guarantee security their code. Code protection does mean that guaranteeing product "unbreakable."
Code protection constantly evolving. Microchip committed continuously improving code protection features products. Attempts break Microchip's code protection feature violation Digital Millennium Copyright Act. such acts allow unauthorized access your software other copyrighted work, have right relief under that Act.
Information contained this publication regarding device applications like provided only your convenience superseded updates. your responsibility ensure that your application meets with your specifications. MICROCHIP MAKES REPRESENTATIONS WARRANTIES KIND WHETHER EXPRESS IMPLIED, WRITTEN ORAL, STATUTORY OTHERWISE, RELATED INFORMATION, INCLUDING LIMITED CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY FITNESS PURPOSE. Microchip disclaims liability arising from this information use. Microchip's products critical components life support systems authorized except with express written approval Microchip. licenses conveyed, implicitly otherwise, under Microchip intellectual property rights.
Trademarks Microchip name logo, Microchip logo, Accuron, dsPIC, KEELOQ, microID, MPLAB, PIC, PICmicro, PICSTART, MATE, PowerSmart, rfPIC, SmartShunt registered trademarks Microchip Technology Incorporated U.S.A. other countries. AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB, PICMASTER, SEEVAL, SmartSensor Embedded Control Solutions Company registered trademarks Microchip Technology Incorporated U.S.A. Analog-for-the-Digital Age, Application Maestro, dsPICDEM, dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial Programming, ICSP, ICEPIC, MPASM, MPLIB, MPLINK, MPSIM, PICkit, PICDEM, PICDEM.net, PICLAB, PICtail, PowerCal, PowerInfo, PowerMate, PowerTool, rfLAB, rfPICDEM, Select Mode, Smart Serial, SmartTel Total Endurance trademarks Microchip Technology Incorporated U.S.A. other countries. SQTP service mark Microchip Technology Incorporated U.S.A. other trademarks mentioned herein property their respective companies. 2005, Microchip Technology Incorporated, Printed U.S.A., Rights Reserved. Printed recycled paper.
Microchip received ISO/TS-16949:2002 quality system certification worldwide headquarters, design wafer fabrication facilities Chandler Tempe, Arizona Mountain View, California October 2003. Company's quality system processes procedures PICmicro® 8-bit MCUs, KEELOQ® code hopping devices, Serial EEPROMs, microperipherals, nonvolatile memory analog products. addition, Microchip's quality system design manufacture development systems 9001:2000 certified.
2005 Microchip Technology Inc.
DS00953A-page
WORLDWIDE SALES SERVICE
AMERICAS
Corporate Office 2355 West Chandler Blvd. Chandler, 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Technical Support: http://support.microchip.com Address: www.microchip.com Atlanta Alpharetta, Tel: 770-640-0034 Fax: 770-640-0307 Boston Westford, Tel: 978-692-3848 Fax: 978-692-3821 Chicago Itasca, Tel: 630-285-0071 Fax: 630-285-0075 Dallas Addison, Tel: 972-818-7423 Fax: 972-818-2924 Detroit Farmington Hills, Tel: 248-538-2250 Fax: 248-538-2260 Kokomo Kokomo, Tel: 765-864-8360 Fax: 765-864-8387 Angeles Mission Viejo, Tel: 949-462-9523 Fax: 949-462-9608 Jose Mountain View, Tel: 650-215-1444 Fax: 650-961-0286 Toronto Mississauga, Ontario, Canada Tel: 905-673-0699 Fax: 905-673-6509
ASIA/PACIFIC
Australia Sydney Tel: 61-2-9868-6733 Fax: 61-2-9868-6755 China Beijing Tel: 86-10-8528-2100 Fax: 86-10-8528-2104 China Chengdu Tel: 86-28-8676-6200 Fax: 86-28-8676-6599 China Fuzhou Tel: 86-591-8750-3506 Fax: 86-591-8750-3521 China Hong Kong Tel: 852-2401-1200 Fax: 852-2401-3431 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-8203-2660 Fax: 86-755-8203-1760 China Shunde Tel: 86-757-2839-5507 Fax: 86-757-2839-5571 China Qingdao Tel: 86-532-502-7355 Fax: 86-532-502-7205
ASIA/PACIFIC
India Bangalore Tel: 91-80-2229-0061 Fax: 91-80-2229-0062 India Delhi Tel: 91-11-5160-8631 Fax: 91-11-5160-8632 Japan Kanagawa Tel: 81-45-471- 6166 Fax: 81-45-471-6122 Korea Seoul Tel: 82-2-554-7200 Fax: 82-2-558-5932 82-2-558-5934 Singapore Tel: 65-6334-8870 Fax: 65-6334-8850 Taiwan Kaohsiung Tel: 886-7-536-4818 Fax: 886-7-536-4803 Taiwan Taipei Tel: 886-2-2500-6610 Fax: 886-2-2508-0102 Taiwan Hsinchu Tel: 886-3-572-9526 Fax: 886-3-572-6459
EUROPE
Austria Weis Tel: 43-7242-2244-399 Fax: 43-7242-2244-393 Denmark Ballerup Tel: 45-4450-2828 Fax: 45-4485-2829 France Massy Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Germany Ismaning Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Italy Milan Tel: 39-0331-742611 Fax: 39-0331-466781 Netherlands Drunen Tel: 31-416-690399 Fax: 31-416-690340 England Berkshire Tel: 44-118-921-5869 Fax: 44-118-921-5820
10/20/04
DS00953A-page
2005 Microchip Technology Inc.

Other recent searches


TMS320C6000 - TMS320C6000   TMS320C6000 Datasheet
TMP86FS28FG - TMP86FS28FG   TMP86FS28FG Datasheet
ST-70 - ST-70   ST-70 Datasheet
S15SC4M - S15SC4M   S15SC4M Datasheet
DSP56F80x - DSP56F80x   DSP56F80x Datasheet
BY296 - BY296   BY296 Datasheet
BY299 - BY299   BY299 Datasheet
bq24090 - bq24090   bq24090 Datasheet
bq24091 - bq24091   bq24091 Datasheet
bq24092 - bq24092   bq24092 Datasheet
bq24093 - bq24093   bq24093 Datasheet

 

Privacy Policy | Disclaimer
© 2012 Datasheet Archive