AgentSkillsCN

analogdevices

Analog Devices MPN 编码模式、后缀解码,以及处理器指引。适用于与 AD 组件或 AnalogDevicesHandler 合作时使用。

SKILL.md
--- frontmatter
name: analogdevices
description: Analog Devices MPN encoding patterns, suffix decoding, and handler guidance. Use when working with AD components or AnalogDevicesHandler.

Analog Devices Manufacturer Skill

MPN Structure

Analog Devices MPNs follow this general structure:

code
[PREFIX][SERIES][GRADE][PACKAGE][ROHS][REEL]
   |       |       |       |       |      |
   |       |       |       |       |      +-- Optional: -R7=7" tape, -RL=large reel
   |       |       |       |       +-- Z = RoHS compliant
   |       |       |       +-- Package code (R, RU, RZ, etc.)
   |       |       +-- Temperature/performance grade (A-G, J, K, etc.)
   |       +-- Series number (e.g., 8065, 7606, 590)
   +-- Family prefix (AD, OP, REF, AMP, ADXL, etc.)

Example Decoding

code
AD8065ARTZ-R7
|   |   ||||  |
|   |   ||||  +-- R7 = 7" tape and reel
|   |   |||+-- Z = RoHS compliant
|   |   ||+-- T = SOT-23 package (5-pin)
|   |   |+-- R = Surface mount
|   |   +-- A = -40C to +85C industrial grade
|   +-- 8065 = High speed FET input op-amp series
+-- AD = Analog Devices prefix

ADXL345BCCZ-RL
|   |   |  ||  |
|   |   |  ||  +-- RL = Large tape and reel
|   |   |  |+-- Z = RoHS compliant
|   |   |  +-- CC = LGA package
|   |   +-- B = Variant (improved specs)
|   +-- 345 = 3-axis digital accelerometer
+-- ADXL = Accelerometer family prefix

AD7606BSTZ
|   |   |||
|   |   ||+-- Z = RoHS compliant
|   |   |+-- T = LQFP package
|   |   +-- S = industrial temp, LQFP
|   +-- 7606 = 8-channel simultaneous sampling ADC
+-- AD = Analog Devices prefix

Family Prefixes

Analog/Precision (AD, OP, AMP)

PrefixCategoryExamples
AD8xxxHigh-speed op-ampsAD8065 (FET input), AD8599 (low noise)
AD5xxxDACsAD5628 (octal 12-bit), AD5543 (16-bit)
AD7xxxADCsAD7606 (8-ch SAR), AD7124 (24-bit sigma-delta)
AD9xxxHigh-speed ADCsAD9697 (14-bit 1.3GSPS)
OPPrecision op-ampsOP07, OP27, OP37, OP177
AMPAmplifiersAMP01, AMP02

Voltage References (REF, ADR)

PrefixCategoryExamples
REFVoltage referencesREF195, REF02
ADRPrecision referencesADR421, ADR4540

Sensors & MEMS (ADXL, ADXRS, ADT)

PrefixCategoryExamples
ADXLAccelerometersADXL345, ADXL355, ADXL375
ADXRSGyroscopesADXRS290, ADXRS450
ADTDigital temp sensorsADT7410, ADT7420
AD590Analog temp sensorAD590 (current output)
TMPTemperature sensorsTMP35, TMP36

Audio/Video (SSM, ADV)

PrefixCategoryExamples
SSMAudio productsSSM2164, SSM2166
ADVVideo productsADV7611, ADV7842

Package Codes

Surface Mount Packages

CodePackageDescription
RSOICSmall Outline IC (narrow body)
RWSOIC-WideWide body SOIC
RMMSOPMini Small Outline Package
RUTSSOPThin Shrink SOP
RZQFN/LFCSPQuad Flat No-lead
RTSOT-23-55-pin SOT-23
TLQFPLow-profile QFP
BCPWLCSPWafer Level CSP
CPLGALand Grid Array
CCZLGALGA variant (accelerometers)
BCCZLGALGA variant (3x5mm)

Through-Hole Packages

CodePackageDescription
NPDIPPlastic DIP
PPDIPPlastic DIP (alternate)
HTO-39/TO-52Metal can (hermetic)
JHCDIPCeramic DIP (hermetic)
KTO-3Metal power package

Package Suffix Examples

MPNPackage
AD8065ARZSOIC-8
AD8065ARTZSOT-23-5
AD8065ARMZMSOP-8
AD8065ACPZLFCSP-8 (QFN)
ADXL345BCCZLGA-14
AD7606BSTZLQFP-64

Temperature Grades

Standard Grades

LetterRangeApplication
J, K, L0C to +70CCommercial
A, B, C-40C to +85CIndustrial
S, T, U-55C to +125CMilitary/Hi-Rel

Grade Examples in Part Numbers

MPNGradeTemp Range
AD8065ARZA = Industrial-40C to +85C
OP27EPZE = Commercial0C to +70C
OP27GPZG = Industrial-40C to +85C
AD590KHK = Commercial0C to +70C
AD590LHL = Commercial (tighter spec)0C to +70C
AD590MHM = Military-55C to +125C

Automotive Suffix

SuffixMeaning
WARTZAutomotive qualified (-40C to +105C)
Q1AEC-Q100 qualified

Common Series Reference

Op-Amps

SeriesTypeKey Features
AD8065/AD8066Single/Dual FETHigh speed (145MHz), low distortion
AD8605/AD8606/AD8608Single/Dual/QuadRail-to-rail, low noise
AD8597/AD8599Single/DualUltra low noise, low distortion
AD8613/AD8617/AD8619Single/Dual/QuadMicropower rail-to-rail
OP07SingleUltralow offset (75uV max)
OP27SingleLow noise + low offset
OP37SingleDecompensated OP27 (gain > 5)
OP177SingleImproved OP07

ADCs (AD7xxx = Precision, AD9xxx = High-Speed)

SeriesTypeResolution
AD76068-ch simultaneous SAR16-bit
AD7124Sigma-delta24-bit
AD7190Sigma-delta24-bit
AD76898-ch SAR16-bit
AD9697High-speed14-bit, 1.3GSPS
AD9628Dual high-speed12-bit, 125MSPS

DACs (AD5xxx)

SeriesTypeResolution
AD5543Current output16-bit
AD5628/5648/5668Octal voltage12/14/16-bit
AD5754Quad voltage16-bit

Accelerometers (ADXL)

SeriesTypeRange
ADXL3453-axis digital+/-16g
ADXL3553-axis low noise+/-8g
ADXL3753-axis high-g+/-200g
ADXL1002Single-axis MEMS+/-50g

Temperature Sensors

SeriesTypeOutput
AD590Analog current1uA/K
ADT7410Digital I2C16-bit, 0.0078C
TMP36Analog voltage10mV/C

Tape and Reel Suffixes

SuffixMeaning
-R77" tape and reel
-RL13" large tape and reel
-REELLarge reel (legacy)
-REEL77" reel (legacy)
(none)Tube or tray packaging

LTC/Linear Technology Products

SuffixMeaning
#TRPBF2500 piece tape and reel, lead-free
#TRMPBF500 piece mini reel, lead-free
#PBFLead-free (bulk)

Handler Implementation Notes

Package Code Extraction

java
// AD package codes appear AFTER grade letter
// Example: AD8065ARZ -> base="AD8065", grade="A", package="R", rohs="Z"

// Common package code mappings
switch (packageCode) {
    case "R" -> "SOIC";
    case "RM" -> "MSOP";
    case "RU" -> "TSSOP";
    case "RZ" -> "QFN";
    case "RT" -> "SOT-23";
    case "T" -> "LQFP";
    case "CP" -> "LGA";
    case "BCCZ", "CCZ" -> "LGA";  // Accelerometer packages
    case "N", "P" -> "PDIP";
    case "H" -> "TO-52";
}

// IMPORTANT: Strip trailing "Z" (RoHS indicator) before package lookup
// AD8065ARZ -> package is "R" (SOIC), not "RZ" (QFN)
String pkg = mpn.replaceAll("Z$", "").replaceAll(".*[A-Z](R[A-Z]*)$", "$1");

Series Extraction

java
// Most AD parts: prefix + numeric series
// AD8065ARZ -> series = "AD8065"
// ADXL345BCCZ -> series = "ADXL345"

// OP series: "OP" + 2 digits
// OP27GPZ -> series = "OP27"

// Strip grade, package, and RoHS suffixes
String series = mpn.replaceAll("[A-Z]{1,4}Z?(-R[L7])?$", "");

Critical Pattern Issues

  1. AD8xxx vs AD5xxx vs AD7xxx confusion:

    • AD8xxx = Op-amps/amplifiers
    • AD5xxx = DACs
    • AD7xxx = ADCs (precision)
    • AD9xxx = ADCs (high-speed)
  2. ADT vs AD590 temperature sensors:

    • ADT = Digital temperature sensors
    • AD590 = Analog current-output sensor
  3. Single/Dual/Quad variants:

    • Often differ by last digit: AD8065 (single), AD8066 (dual)
    • Or by middle digits: AD8605/AD8606/AD8608

Related Files

  • Handler: manufacturers/AnalogDevicesHandler.java
  • Component types: OPAMP_AD, ADC_AD, DAC_AD, AMPLIFIER_AD, VOLTAGE_REFERENCE_AD, TEMPERATURE_SENSOR_AD, ACCELEROMETER_AD, GYROSCOPE_AD
  • Package registry: PackageCodeRegistry.java (standard codes)

Known Handler Issues

  1. HashSet in getSupportedTypes(): Should use Set.of() or EnumSet for immutability
  2. Missing ADC/DAC patterns: No patterns registered for AD7xxx (ADCs) or AD5xxx (DACs) with manufacturer-specific types
  3. Generic IC fallback: ADCs and DACs fall through to generic ComponentType.IC instead of ADC_AD/DAC_AD
  4. Package extraction bug: Current logic doesn't properly handle the grade+package+rohs structure

Learnings & Edge Cases

  • RoHS suffix "Z": Almost all modern AD parts end with "Z" for RoHS compliance - don't confuse with package code
  • Single/Dual naming: AD8065=single, AD8066=dual (differ by last digit)
  • OP series grades: OP27E (commercial), OP27G (industrial) - letter comes right after series number
  • ADXL accelerometers: Use "BCCZ" and "CCZ" for LGA packages, unique to MEMS products
  • AD590 is special: Very old design, uses TO-52 metal can ("H" suffix), current output (1uA/K)
  • Linear Technology merger: LTC parts now under AD umbrella, use different suffix convention (#TRPBF)
<!-- Add new learnings above this line -->