Skip to main content

xmc

XMC (Wuhan Xinxin Semiconductor) MPN encoding patterns, suffix decoding, and handler guidance. Use when working with XMC SPI NOR Flash memory components or XMCHandler.

소스 정보

저장소
Cantara/lib-electronic-components
최근 소스 활동
2026년 1월 13일 13:59
감지된 SKILL.md 언어
영어
스타
4
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
xmc
description
XMC (Wuhan Xinxin Semiconductor) MPN encoding patterns, suffix decoding, and handler guidance. Use when working with XMC SPI NOR Flash memory components or XMCHandler.
# XMC (Wuhan Xinxin Semiconductor) Manufacturer Skill ## MPN Structure XMC MPNs follow this general structure: ``` [PREFIX][DENSITY][PACKAGE] | | | | | +-- Package code (A, B, C, D) | +-- Memory density (32, 64, 128, 256, 512) +-- Series prefix (XM25QH, XM25QU, XM25LU) ``` ### Example Decoding ``` XM25QH64A | | ||| | | ||+-- A = SOIC-8 package | | |+-- 64 = 64 Mbit density | | +-- H = Standard 3.3V series | +-- 25Q = SPI Flash family +-- XM = XMC prefix XM25QU128B | | | || | | | |+-- B = SOIC-16 package | | | +-- 128 = 128 Mbit density | | +-- U = 1.8V Low Voltage series | +-- 25Q = SPI Flash family +-- XM = XMC prefix XM25LU256C | | | || | | | |+-- C = WSON-8 package | | | +-- 256 = 256 Mbit density | | +-- LU = Ultra Low Voltage series | +-- 25 = SPI Flash family +-- XM = XMC prefix ``` --- ## Series Prefixes | Prefix | Voltage Range | Description | |--------|---------------|-------------| | XM25QH | 2.7V - 3.6V | Standard 3.3V SPI NOR Flash | | XM25QU | 1.65V - 2.0V | 1.8V Low Voltage SPI NOR Flash | | XM25LU | 1.65V - 1.95V | Ultra Low Voltage SPI NOR Flash | --- ## Density Codes | Code | Density | Size | |------|---------|------| | 32 | 32 Mbit | 4 MB | | 64 | 64 Mbit | 8 MB | | 128 | 128 Mbit | 16 MB | | 256 | 256 Mbit | 32 MB | | 512 | 512 Mbit | 64 MB | --- ## Package Codes | Code | Package | Pin Count | Body Size | |------|---------|-----------|-----------| | A | SOIC-8 | 8 | 208mil | | B | SOIC-16 | 16 | 300mil | | C | WSON-8 | 8 | 6x5mm | | D | USON-8 | 8 | 2x3mm | --- ## Product Families ### XM25QH Series - Standard 3.3V SPI NOR Flash | Part Number | Density | Voltage | Max Speed | Interface | |-------------|---------|---------|-----------|-----------| | XM25QH32A | 32 Mbit | 2.7V-3.6V | 104MHz | SPI/Dual/Quad | | XM25QH64A | 64 Mbit | 2.7V-3.6V | 104MHz | SPI/Dual/Quad | | XM25QH128A | 128 Mbit | 2.7V-3.6V | 104MHz | SPI/Dual/Quad | | XM25QH256B | 256 Mbit | 2.7V-3.6V | 104MHz | SPI/Dual/Quad | | XM25QH512 | 512 Mbit | 2.7V-3.6V | 104MHz | SPI/Dual/Quad | ### XM25QU Series - 1.8V Low Voltage SPI NOR Flash | Part Number | Density | Voltage | Max Speed | Interface | |-------------|---------|---------|-----------|-----------| | XM25QU64A | 64 Mbit | 1.65V-2.0V | 104MHz | SPI/Dual/Quad | | XM25QU128B | 128 Mbit | 1.65V-2.0V | 104MHz | SPI/Dual/Quad | | XM25QU256C | 256 Mbit | 1.65V-2.0V | 104MHz | SPI/Dual/Quad | ### XM25LU Series - Ultra Low Voltage SPI NOR Flash | Part Number | Density | Voltage | Max Speed | Application | |-------------|---------|---------|-----------|-------------| | XM25LU128 | 128 Mbit | 1.65V-1.95V | 104MHz | Ultra-low power | | XM25LU256 | 256 Mbit | 1.65V-1.95V | 104MHz | Ultra-low power | --- ## Handler Implementation Notes ### Pattern Matching ```java // XM25QH series - Standard 3.3V Pattern XM25QH_PATTERN = Pattern.compile("^XM25QH\\d+[A-Z]*.*", Pattern.CASE_INSENSITIVE); // XM25QU series - 1.8V Low Voltage Pattern XM25QU_PATTERN = Pattern.compile("^XM25QU\\d+[A-Z]*.*", Pattern.CASE_INSENSITIVE); // XM25LU series - Ultra Low Voltage Pattern XM25LU_PATTERN = Pattern.compile("^XM25LU\\d+[A-Z]*.*", Pattern.CASE_INSENSITIVE); ``` ### Package Code Extraction ```java // XMC format: XM25QHxxxY where Y is the package code // Extract the letter after density digits Matcher matcher = DENSITY_PATTERN.matcher(upperMpn); if (matcher.find()) { int densityEnd = matcher.end(); if (densityEnd < upperMpn.length()) { String pkgCode = upperMpn.substring(densityEnd, densityEnd + 1); // Map to package: A=SOIC-8, B=SOIC-16, C=WSON-8, D=USON-8 } } ``` ### Voltage Range Extraction ```java // Determine operating voltage based on series switch (series) { case "XM25QH" -> "2.7V-3.6V"; case "XM25QU" -> "1.65V-2.0V"; case "XM25LU" -> "1.65V-1.95V"; } ``` --- ## Cross-References XMC Flash is pin-compatible with other SPI NOR Flash manufacturers: ### 3.3V Standard Series (XM25QH) | XMC | Winbond | GigaDevice | Macronix | |-----|---------|------------|----------| | XM25QH64A | W25Q64JV | GD25Q64C | MX25L6433F | | XM25QH128A | W25Q128JV | GD25Q128C | MX25L12835F | | XM25QH256B | W25Q256JV | GD25Q256C | MX25L25645G | ### 1.8V Low Voltage Series (XM25QU) | XMC | Winbond | GigaDevice | Macronix | |-----|---------|------------|----------| | XM25QU64A | W25Q64FW | GD25LQ64C | MX25U6435F | | XM25QU128B | W25Q128FW | GD25LQ128C | MX25U12835F | --- ## Voltage Selection Guide | Application | Recommended Series | Voltage | |-------------|-------------------|---------| | Legacy 3.3V systems | XM25QH | 2.7V-3.6V | | Mobile/Battery powered | XM25QU | 1.65V-2.0V | | Ultra-low power IoT | XM25LU | 1.65V-1.95V | --- ## Related Files - Handler: `manufacturers/XMCHandler.java` - Component types: `MEMORY`, `MEMORY_FLASH`, `IC` --- ## Learnings & Edge Cases - **Series order**: Check XM25QH before XM25QU before XM25LU for proper matching - **Package code position**: Single letter immediately after density digits - **Voltage compatibility**: XM25QH (3.3V) and XM25QU (1.8V) are NOT voltage compatible - **Pin compatibility**: All series are pin-compatible with Winbond 25Q series - **Density encoding**: Direct numeric encoding (64=64Mbit, 128=128Mbit, etc.) - **SOIC-16 for high density**: Larger densities (256Mbit+) often use SOIC-16 (package code B) <!-- Add new learnings above this line -->
GitHub에서 보기