AgentSkillsCN

mps

Monolithic Power Systems MPN 编码规则、后缀解码及处理指南。适用于与 MPS 电源元件或 MPSHandler 配合使用时。

SKILL.md
--- frontmatter
name: mps
description: Monolithic Power Systems MPN encoding patterns, suffix decoding, and handler guidance. Use when working with MPS power components or MPSHandler.

Monolithic Power Systems (MPS) Manufacturer Skill

Manufacturer Overview

MPS (Monolithic Power Systems) specializes in high-performance power management solutions. The company is known for:

  • DC-DC Converters: Step-down (buck), step-up (boost), and SEPIC converters
  • LED Drivers: Constant-current drivers for backlighting and general illumination
  • Motor Drivers: Stepper and brushless DC motor controllers
  • Power Modules: Integrated solutions with inductor and passives included
  • Automotive-grade variants: AEC-Q100 qualified parts (MPQ series)

MPN Structure

MPS MPNs follow this general structure:

code
[PREFIX][SERIES][VARIANT][PACKAGE][-SUFFIX]
   |       |        |        |        |
   |       |        |        |        +-- Optional: LF=Lead-free, Z=RoHS, AEC1=Automotive
   |       |        |        +-- 2-letter package code (EN, DN, GQ, etc.)
   |       |        +-- Optional variant letter
   |       +-- 3-4 digit part number
   +-- MP, MPQ (automotive), or MPM (module)

Prefix Meanings

PrefixCategoryPatternDescription
MP1Step-DownMP1xxxEntry-level DC-DC converters
MP2Step-Down/LDOMP2xxxBuck converters and LDOs
MP3LED DriverMP3xxxLED driver ICs
MP4High-CurrentMP4xxxHigh-current step-down converters
MP5Step-Up/SEPICMP5xxxBoost and SEPIC converters
MP6Motor DriverMP6xxxStepper/BLDC motor drivers
MP7Power SwitchMP7xxxLoad switches and eFuses
MP8Multi-ChannelMP8xxxPMICs with multiple outputs
MP9High-VoltageMP9xxxHigh-voltage DC-DC converters
MPQAutomotiveMPQxxxxAEC-Q100 qualified versions
MPMModuleMPMxxxxPower modules with inductor

Example Decoding

code
MP1584EN-LF-Z
|  |   ||  | |
|  |   ||  | +-- Z = RoHS compliant
|  |   ||  +-- LF = Lead-free
|  |   |+-- EN = SOIC-8E package
|  |   +-- (no variant letter)
|  +-- 1584 = 3A step-down converter
+-- MP = Standard MPS prefix

MPQ4560GQ-AEC1-LF-Z
|  |   ||    |
|  |   ||    +-- AEC1-LF-Z = Automotive + Lead-free + RoHS
|  |   |+-- GQ = QFN package
|  |   +-- (no variant)
|  +-- 4560 = 2A step-down converter
+-- MPQ = Automotive-grade prefix

MPM3610GQV-Z
|  |   |  |
|  |   |  +-- Z = RoHS
|  |   +-- GQV = QFN variant package
|  +-- 3610 = 1.2A power module
+-- MPM = Power module prefix

Package Codes

QFN Variants

CodePackageNotes
GQQFNStandard QFN
GLQFNQFN variant
GRQFNQFN variant
GSQFN-EPQFN with exposed pad
GTQFNQFN variant
GUQFNQFN variant
GVQFNQFN variant
GNQFNQFN variant

WLCSP (Wafer-Level Chip Scale Package)

CodePackageNotes
GFWLCSPUltra-small form factor
GWWLCSPWLCSP variant

SOIC/SOP Variants

CodePackageNotes
ENSOIC-8EExtended SOIC-8
DNSO-8Standard SOIC-8
ECSOIC-8SOIC-8 variant
EFSOIC-8SOIC-8 variant
EGTSSOP-8Thin profile
EHTSSOP-1616-pin TSSOP
EJSOP-8SOP-8 variant
EKMSOP-8Mini SOIC-8
ELMSOP-10Mini SOIC-10

SOT Variants

CodePackageNotes
DFTSOT-23Thin SOT-23
DGTSOT-23-55-pin thin SOT
DHSOT-23-88-pin SOT-23

DFN Variants

CodePackageNotes
DJDFNStandard DFN
DKDFN-1010-pin DFN
DLDFN-1212-pin DFN

Module Packages

CodePackageNotes
MNQFN-ModuleModule with QFN footprint
MFModule-BGABGA module package

Power Packages

CodePackageNotes
HFTO-263D2PAK power package
HNTO-220Through-hole power

Component Type Mapping

The MPSHandler supports these ComponentTypes:

MPN PatternComponentTypeDescription
MP1xxx, MP2xxx, MP4xxx, MP5xxx, MP7xxx, MP8xxx, MP9xxxVOLTAGE_REGULATORDC-DC converters and regulators
MPQxxxx (except 3xxx/6xxx)VOLTAGE_REGULATORAutomotive DC-DC converters
MPMxxxxVOLTAGE_REGULATORPower modules
MP3xxxLED_DRIVERLED driver ICs
MPQ3xxxLED_DRIVERAutomotive LED drivers
MP6xxxMOTOR_DRIVERMotor controller ICs
MPQ6xxxMOTOR_DRIVERAutomotive motor drivers
All MPS partsICBase IC type for all parts

Series Extraction Rules

The handler extracts series as follows:

java
// MPM series: returns "MPM"
"MPM3610GQV-Z" -> "MPM"

// MPQ series: returns "MPQ"
"MPQ4560GQ-AEC1-LF-Z" -> "MPQ"

// Standard MP[1-9]xxx: returns first 3 characters
"MP1584EN-LF-Z" -> "MP1"
"MP2307DN-LF-Z" -> "MP2"
"MP6500HF" -> "MP6"

Series Descriptions

SeriesCategory
MP1Step-Down Converters
MP2Step-Down/LDO Converters
MP3LED Drivers
MP4High-Current Step-Down
MP5Step-Up/SEPIC Converters
MP6Motor Drivers
MP7Power Switches
MP8Multi-Channel PMIC
MP9High-Voltage Converters
MPQAutomotive Grade
MPMPower Modules

Package Code Extraction Rules

The handler extracts package codes with this logic:

  1. Remove common suffixes: -LF-Z, -Z, -LF, -AEC1, etc.
  2. Match pattern: MP[A-Z]?[0-9]{3,4}([A-Z]{2}).*
  3. Look up the 2-letter code in the PACKAGE_CODES map
  4. Return the mapped package name or the raw code
java
// Example extraction:
"MP1584EN-LF-Z"
  -> Remove suffix: "MP1584EN"
  -> Match: group(1) = "EN"
  -> Lookup: PACKAGE_CODES.get("EN") = "SOIC-8E"

"MPQ4560GQ-AEC1-LF-Z"
  -> Remove suffix: "MPQ4560GQ"
  -> Match: group(1) = "GQ"
  -> Lookup: PACKAGE_CODES.get("GQ") = "QFN"

Official Replacement Logic

The handler identifies official replacements in two scenarios:

Same Base Part, Different Package

code
MP1584EN <-> MP1584DN   // Same part, different package (SOIC-8E vs SO-8)

Automotive Equivalents (MPQ vs MP)

code
MP4560GQ <-> MPQ4560GQ  // Consumer vs automotive grade

The isOfficialReplacement() method checks:

  1. Automotive equivalents (MPQ ↔ MP with same 4-digit number)
  2. Same series and same base part number

Automotive Detection

MPS uses two indicators for automotive-grade parts:

java
// Method: isAutomotiveGrade(String mpn)

// 1. MPQ prefix indicates automotive
"MPQ4560GQ-LF-Z" -> true

// 2. -AEC suffix indicates automotive qualification
"MP4560GQ-AEC1-LF-Z" -> true

// Standard consumer parts
"MP4560GQ-LF-Z" -> false

Common Part Examples

Step-Down Converters (Buck)

MPNDescriptionKey Specs
MP1584EN-LF-Z3A step-down4.5-28V input, SOT-8E
MP2307DN-LF-Z3A step-down4.75-23V input, SO-8
MP2359DJ-LF-Z1.2A step-down4.5-24V input, DFN
MP4560DN-LF-Z2A step-down4.5-55V input, SO-8

LED Drivers

MPNDescriptionKey Specs
MP3302DJ-LF-ZLED driver2.7-6V input, DFN
MP3394GS-Z4-channel LEDQFN-EP

Motor Drivers

MPNDescriptionKey Specs
MP6500HFStepper driver2.5A, TO-263
MP6513GQ-Z3-phase BLDCQFN

Power Modules

MPNDescriptionKey Specs
MPM3610GQV-Z1.2A moduleIntegrated inductor
MPM3833GQV-Z3.3A moduleIntegrated inductor

Handler Implementation Notes

Supported Types Declaration

The handler uses Set.of() for immutable type set:

java
public Set<ComponentType> getSupportedTypes() {
    return Set.of(
            ComponentType.IC,
            ComponentType.VOLTAGE_REGULATOR,
            ComponentType.LED_DRIVER,
            ComponentType.MOTOR_DRIVER
    );
}

Pattern Registration

Patterns are registered for both specific and base types:

java
// MP3xxx registered for both LED_DRIVER and IC
registry.addPattern(ComponentType.LED_DRIVER, "^MP3[0-9]{3}[A-Z0-9-]*$");
registry.addPattern(ComponentType.IC, "^MP3[0-9]{3}[A-Z0-9-]*$");

matches() Implementation

The handler overrides matches() for efficient direct pattern checking:

java
// Direct pattern checks by type for performance
switch (type) {
    case VOLTAGE_REGULATOR:
        return isVoltageRegulator(upperMpn);
    case LED_DRIVER:
        return isLEDDriver(upperMpn);
    case MOTOR_DRIVER:
        return isMotorDriver(upperMpn);
    case IC:
        return isMPSPart(upperMpn);
}

Related Files

  • Handler: manufacturers/MPSHandler.java
  • Component types: VOLTAGE_REGULATOR, LED_DRIVER, MOTOR_DRIVER, IC
  • Test file: handlers/MPSHandlerTest.java (if exists)

Learnings & Edge Cases

  • MPQ vs MP: The automotive variant MPQ has a 4-digit part number (MPQ4560) while standard MP uses 4 digits after the prefix character (MP4560). This is a 1-character offset when extracting the numeric part.
  • AEC suffix: Parts can be automotive without MPQ prefix if they have -AEC1 suffix. Always check both.
  • Package code position: Package codes come immediately after the part number digits, before any hyphens. The handler strips -LF-Z and similar suffixes before extraction.
  • Module prefix MPM: Power modules have their own prefix and are different from standard MP parts - they include an integrated inductor.
  • Series overlap: MP6xxx (motor drivers) and MPQ6xxx are the same - both are motor drivers. Same for MP3xxx/MPQ3xxx (LED drivers). The MPQ prefix only adds automotive qualification.
  • getSupportedTypes() uses Set.of(): The handler correctly uses immutable Set.of() instead of HashSet.
  • No manufacturer-specific types: Unlike some handlers, MPS doesn't define manufacturer-specific ComponentTypes like VOLTAGE_REGULATOR_MPS. It uses the base types directly.
<!-- Add new learnings above this line -->