Microcontroller, MPU and FPGA sourcing
8-bit and Arm Cortex-M microcontrollers, crossover MCUs, application processors and FPGAs, by complete ordering code or by specification. We decode flash size, package, temperature grade and speed grade on every line, and check the boot and programming details that decide whether a substitute will run your firmware.
- Active, NRND, obsolete and allocated parts; samples to production
- Flash, package, temperature and speed letters decoded line by line
- Pin-compatible candidates listed with what changes in firmware
What we source
Six groups cover the processing parts on most BOMs. They are bought for the firmware that runs on them, so the question is rarely only “is it in stock” but also “will our code run on it”.
8-bit microcontrollers
AVR, PIC and 8051-class MCUs in DIP, SOIC, TQFP and QFN. Long production lives and many legacy designs. Typical lines: ATmega328P, ATtiny85, PIC16F877A, PIC18F45K22.
Arm Cortex-M0+ to M4
General-purpose 32-bit MCUs from 16 KB to 2 MB flash. The largest group on most BOMs. Typical lines: STM32F103, STM32G030, STM32F411, SAMD21, LPC55S69.
Crossover and high-performance MCUs
Cortex-M7 and dual-core parts that run from external flash or large internal SRAM. Typical lines: i.MX RT1062, STM32H743, RP2040.
Application processors (MPUs)
Cortex-A processors for Linux designs, used with DDR, eMMC and a matched PMIC. Typical lines: AM3358, i.MX 6ULL, STM32MP157.
FPGAs and CPLDs
Small and mid-range FPGAs and CPLDs, with their configuration flash. Typical lines: Artix-7 XC7A35T, Spartan-7, iCE40UP5K, MAX 10, ECP5.
Alternative-brand MCUs
Pin-compatible MCUs from GigaDevice, WCH and other makers, quoted as candidates with the firmware differences listed, never as silent substitutes.
What an MCU quote depends on
Send what you have. A complete ordering code is fastest; a requirement works too, and we come back with candidate codes.
- Complete ordering code, including flash size, package, temperature grade and packing letters
- Quantity and target date, so we can compare distribution, independent stock and factory lead time
- Silicon revision, if your firmware or errata workarounds depend on it
- Date code window, if your quality system limits the age of stock
- Alternative rule: original only, discuss first, or your approved list
- For a requirement: core, flash and RAM, peripherals, package, voltage and temperature range
The quote line states the source channel, packaging, date code, lead time and validity. Parts are supplied blank, as packed by the manufacturer. Nothing is substituted without your written approval.
Representative parts and their key numbers
These are lines we see often. The numbers are the ones a replacement must match, taken from the manufacturers’ current datasheets.
ATmega328P-AU
AVR 8-bit
20 MHz
32 KB / 2 KB
Signature 0x1E950F; 1 KB EEPROM
TQFP-32
PIC16F877A-I/P
PIC 8-bit
20 MHz
14 KB / 368 B
256 B EEPROM; −40 to 85 °C
PDIP-40
STM32G030F6P6
Cortex-M0+
64 MHz
32 KB / 8 KB
2.0–3.6 V supply
TSSOP-20
STM32F103C8T6
Cortex-M3
72 MHz
64 KB / 20 KB
“8” = 64 KB flash, “6” = −40 to 85 °C
LQFP-48
GD32F103C8T6
Cortex-M3
108 MHz
64 KB / 20 KB
Pin-compatible with STM32F103C8T6; different flash timing
LQFP-48
RP2040
Dual Cortex-M0+
133 MHz
none / 264 KB
No internal flash; boots from external QSPI flash
QFN-56
MIMXRT1062DVL6A
Cortex-M7
600 MHz
none / 1 MB
Consumer grade; industrial CVL5A runs at 528 MHz
MAPBGA-196
XC7A35T-1CPG236C
FPGA
speed grade -1
33,280 logic cells
Commercial, 0 to 85 °C TJ; needs external config flash
CPG236 BGA
ICE40UP5K-SG48I
FPGA
—
5,280 LUTs, 1 Mb SPRAM
Industrial grade; one-time NVCM or external SPI flash
QFN-48
Example parts, not a stock list. Confirm the current datasheet and the exact suffix before design or purchase. Need one of these? Send the part number and we confirm the orderable code and stock.
How to specify each group
Two parts with the same pin count can need very different firmware, boot hardware or programming tools. These are the checks our engineers run before a candidate goes on a quote.
Each tab lists what defines the part, the numbers to compare, the trap we see most often, and what to send so we can quote without guessing.
What defines the part. Core family, flash and RAM, EEPROM, package, supply range and temperature grade.
Numbers to check. Device signature or ID, oscillator options, fuse or configuration-word layout, programming interface.
Common trap. Similar names are different chips. ATmega328 and ATmega328P have different device signatures (0x1E9514 and 0x1E950F), so a programmer set up for one refuses the other. ATmega328PB is a new device, not a drop-in: in TQFP-32 it turns pins 3 and 6, which are GND and VCC on the 328P, into I/O pins.
以下をお送りください: Full MPN with package and temperature suffix, and the programmer or bootloader you use.
What defines the part. Series and line, pin count, flash size, package, temperature range, packing.
Numbers to check. Flash and RAM, maximum clock, peripheral set, silicon revision, supply range.
Common trap. Every letter after the line number is a specification. In STM32F103C8T6, “C” is 48 pins, “8” is 64 KB flash, “T” is LQFP and “6” is −40 to 85 °C. STM32F103CBT6 has 128 KB; STM32F103C8T7 is rated to 105 °C. A firmware image built for 128 KB will not fit the C8.
以下をお送りください: Full MPN, firmware size, and whether the board runs above 85 °C.
What defines the part. Core and clock, on-chip SRAM, external memory interface, boot sources, package and temperature grade.
Numbers to check. Maximum clock for the grade, boot ROM support for your flash, SRAM size, BGA ball pitch.
Common trap. The grade changes the clock. MIMXRT1062DVL6A is a consumer part rated to 600 MHz; the industrial MIMXRT1062CVL5A is rated to 528 MHz. Firmware clocked at 600 MHz has to be re-tuned and re-tested on the industrial part.
以下をお送りください: Full MPN, the flash part on your board, and the operating temperature range.
What defines the part. Core, speed grade, temperature grade, package, security and silicon revision.
Numbers to check. Speed and temperature letters, DDR type, boot media, matching PMIC.
Common trap. An MPU is part of a set. AM335x designs are often powered by TPS65217, whose C and D variants set different DDR voltages. Changing the processor speed grade, PMIC variant or DDR part means checking the other two.
以下をお送りください: Processor MPN, PMIC MPN, DDR part number and boot media.
What defines the part. Device, speed grade, package, temperature grade, and the configuration memory.
Numbers to check. Speed grade the bitstream was closed at, package pinout file, configuration flash type and size.
Common trap. The speed grade is part of the timing. A design that meets timing at -2 can fail at -1. On the open market, also watch for engineering-sample codes ending in “ES”: they are not production parts.
以下をお送りください: Full MPN, the speed grade your timing was closed at, and the configuration flash part.
What defines the part. Pin-out, peripheral register map, flash and RAM, clock tree, debug interface.
Numbers to check. Clock and flash wait states, ADC and USB behaviour, errata list, toolchain support.
Common trap. Pin-compatible is not firmware-identical. GD32F103C8T6 fits the STM32F103C8T6 footprint and runs at up to 108 MHz, but its flash timing and some peripheral behaviour differ. GigaDevice recommends rebuilding the firmware; treat it as a new part and re-test.
以下をお送りください: Original MPN, firmware toolchain, and the peripherals your design uses.
Six problems buyers find after the order
Each of these looks fine on a quote and fails at the programming station or in the field. We check for them before a line is quoted.
Programmer reports “wrong device signature”
ATmega328 delivered for ATmega328P, or a different silicon ID
Exact MPN; device ID on a sample before the batch ships
Firmware does not fit or crashes at start-up
Smaller flash or RAM letter (C8 instead of CB)
Flash and RAM size code against the firmware map
Board does not boot
Crossover MCU or FPGA paired with a flash its boot ROM does not support
Boot ROM flash list, flash MPN on the BOM
FPGA design fails timing or behaves erratically
Slower speed grade, or an engineering-sample part
Speed grade digit; “ES” in the marking
Industrial unit fails at low or high temperature
Consumer or commercial grade quoted for an industrial line
Temperature letter or digit in the ordering code
Firmware runs, but timing or ADC readings change
Pin-compatible alternative brand fitted without re-test
Clock, flash wait states, ADC and USB errata
Worked example: decoding one STM32 code
STM32F103C8T6 reads, segment by segment: STM32 family, F general purpose, 103 performance line, C 48 pins, 8 64 KB flash, T LQFP package, 6 −40 to 85 °C.
Three neighbours look the same in a search and are not interchangeable. STM32F103CBT6 has 128 KB of flash. STM32F103C8T7 is rated to 105 °C. STM32F103R8T6 is a 64-pin part with a different footprint. A firmware image linked for 128 KB, or a board that runs at 95 °C, decides which one you need.
When a buyer asks for “STM32F103 in LQFP-48”, we ask for the firmware size and the operating temperature before we quote. Send them with the part number and the quote comes back with the right code.
Worked example: the flash an MCU boots from
RP2040 has no internal flash. It boots from an external QSPI flash; the Raspberry Pi Pico uses a 2 MB Winbond W25Q16JV. The same applies to i.MX RT1062 and to most FPGAs, which load their configuration from SPI flash at power-up.
So the processor line on the BOM depends on a memory line. If the flash goes short and is replaced, the new part has to be on the boot ROM’s supported list, or the board does not start. Upload the BOM and we quote both lines together.
Three requests we see, and how we handle them
Each started as a short message with a part number. What we check, and in which order, decides whether the buyer gets a usable part or a second problem.
"We need 3,000 STM32F103C8T6 and the lead time is a year"
We quote distribution stock and qualified independent stock with their date codes, and the factory lead time next to them. In parallel we list GD32F103C8T6 as a candidate, marked as needing a firmware rebuild and re-test, so engineering can start qualifying it while the first order ships.
"Half-price XC7A35T on the open market"
A low price on an FPGA is a reason to look closer. We check the full marking for speed grade, temperature grade and any "ES" suffix, compare the date code with the lot, and recommend X-ray and an electrical test by an independent lab before the batch is released.
"The industrial i.MX RT1062 is out, can we use the consumer one?"
Electrically the consumer part fits the footprint, but it is rated for 0 to 95 °C, not −40 to 105 °C. If the product's range is industrial, we tell you so on the quote and look for the CVL5A in independent stock instead of offering the cheaper part as a fit.
Where these parts go
The same Cortex-M part is specified differently in a 24 V control cabinet and in a battery-powered sensor. These are the requirements that change by application.
Industrial automation
Cortex-M3 and M4 MCUs with CAN and Ethernet, −40 to 85 °C or 105 °C grades, long production lives and fixed silicon revisions.
モーター制御&ロボティクス
MCUs with advanced timers and fast ADCs, such as STM32G4 and F3 lines; FPGAs for multi-axis control and encoder interfaces.
Power & energy
MCUs and DSCs for digital power control and metering, with high-resolution PWM and industrial temperature grades.
Edge AI & AIoT
Crossover MCUs and MPUs with their DDR, flash and PMIC, quoted as one set so the boot chain stays consistent.
コンシューマーエレクトロニクス
Low-cost Cortex-M0+ MCUs in TSSOP and QFN, in full reels for production; alternative-brand candidates where cost matters.
スマートオーディオ&ボイス
MCUs with I²S and DSP extensions, and crossover MCUs for audio processing and wake-word detection.
Why buyers send MCU lines to us
Ordering code decoded
Flash, pin count, package, temperature, speed grade and packing letters are checked against the datasheet on every line.
Candidates with firmware impact
Pin-compatible options listed with clock, memory, peripheral and toolchain differences. Your engineers approve.
Distribution and independent stock compared
Factory lead time, distributor stock and qualified independent stock in China quoted next to each other, channel named.
Lifecycle flagged
NRND and EOL status shown per line, with last-time-buy quantities and date codes when a part is going away.
Original packing kept
Trays, reels and tubes as packed by the manufacturer, moisture-barrier bags intact. Cut tape for samples where the source allows.
Answer within 24 hours
A quote, or the specific questions that stop us quoting, within 24 hours of a complete enquiry.
Quality checks for MCUs and FPGAs
Popular MCUs and FPGAs are among the most remarked parts in the open market. A copy can carry a convincing marking and still have a different die inside, or none.
- Markings, logo, date code and lot code checked against the manufacturer's marking scheme
- Extra attention to widely copied lines: STM32F103, ATmega328P, Artix-7 and Spartan FPGAs
- Device ID read on a sample with a programmer when the order calls for it
- Engineering-sample markings and refurbished-ball BGAs rejected
- Moisture-sensitive packages shipped in sealed bags with desiccant and humidity card (J-STD-033)
- X-ray, decapsulation or electrical testing by an independent laboratory when the risk calls for it, quoted before you order
MCU and FPGA manufacturers we source
STMicroelectronics
STM32 MCUs and MPUs, STM8
NXP
i.MX RT, i.MX, LPC, Kinetis
Microchip
AVR, PIC, SAM, PolarFire FPGAs
テキサス・インスツルメンツ
MSP430, C2000, Sitara AM335x
Renesas
RA, RX, RL78
Infineon
PSoC, XMC, AURIX
Lattice
iCE40, ECP5, MachXO FPGAs
Espressif
ESP32 Wi-Fi and Bluetooth SoCs
Also AMD (Xilinx), Altera, GigaDevice, Raspberry Pi, Nuvoton and WCH. すべてのメーカー
MCU and processor questions
Can you quote one MCU part number?
Yes. Send the complete ordering code, quantity and target date. We reply within 24 hours with a quote or the questions we need answered.
Is GD32F103C8T6 a replacement for STM32F103C8T6?
It fits the same footprint and is often used as a second source, but it is a different chip. Clock, flash timing and some peripherals differ. Rebuild the firmware and re-test before production.
Can I use ATmega328PB in place of ATmega328P?
Not as a drop-in. Microchip describes the 328PB as a new device. In TQFP-32 it turns pins 3 and 6 into I/O, and it needs its own device setting in the programmer and toolchain.
Do you program MCUs before shipping?
No. Parts are supplied blank, as packed by the manufacturer. If you need factory-programmed parts, tell us when you ask for the quote and we say whether we can arrange it for that line.
My MCU is EOL. What do you need to look for stock?
The original MPN with every suffix, quantity, acceptable date-code range and silicon revision, if it matters. We quote remaining stock and, separately, candidates with their firmware differences.
Do you sell automotive-grade MCUs?
Yes, as the qualified orderable code. The AEC-Q100 grade and temperature range are stated on the quote line.
Can you sell less than a full tray or reel?
Often. Partial trays and cut tape where the source allows, at a higher unit price. Moisture-sensitive parts are re-bagged with fresh desiccant.
How do you check MCUs from independent sources?
Visual inspection in-house against a documented checklist. Device ID reads, X-ray, decapsulation or electrical tests are done by an independent laboratory when the order needs it, quoted before you order.
Do you supply the configuration flash with an FPGA?
Yes, if it is on your BOM. We quote the FPGA and its flash together and check that the flash is supported for that device.
Related: メモリ · ワイヤレス・RF · 電源管理 · Obsolete parts
