Контроллер на флешке что это
Где применяются Phison USB Flash контроллёры и их характеристики
Если с обычными недорогими флешками, всё относительно понятно. А именно, суют в них всё, что попадёт под руку, лишь бы втюхать потребителю.
То с дорогим сегментом, таких плясок с железом, как правило, не происходит. Вполне реально разузнать, на каком конкретно контроллёре они производятся.
Из обычных контроллёров, рассмотрим только один PS2301, который впрочем самый дорогой и редкий.
PHISON PS2251-01 |
Corsair Flash Voyager GS 3.0 : VID = 1B1C PID = 1A0D ; REV = PMAP ; VOYAGER_GS В 2015 году пересела на современнный аналог в лице PS2251-08. |
Kingston DT Ultimate G2 : VID = 0951 PID = 1656 ; REV = PMAP ; DT_ULTIMATE_G2 MPALL v3.16.0D ; Toshiba [MLC-8K] ; 98DE9532 |
Kingston DTHX Predator : VID = 0951 PID = 1696 ; REV = PMAP ; DTHX_PREDATOR Toshiba [MLC] ; 983A8593 |
Kingston DT HyperX 3.0 64GB : VID = 0951 PID = 162B ; REV = PMAP ; DT_HYPERX_3.0 MPALL v3.25.0E ; Toshiba [MLC] ; 98D7849372D7 |
Kingston DT HyperX 3.0 128GB : VID = 0951 PID = 162B ; REV = PMAP ; DT_HYPERX_3.0 MPALL v3.13.00 ; Intel [MLC-8K] ; 8988244B |
Patriot Supersonic Magnum 128GB : VID = 13FE PID = 5000 ; REV = PMAP ; SUPERSONIC_128GB MPALL v3.61.0D ; Toshiba [MLC] ; 98DE94827656 |
Silicon Power Marvel M60 : VID = 13FE PID = 5000 ; REV = PMAP ; DT_ULTIMATE_G2 98D794327656 Недолго она выпускалась на контроллёре PS2301, переехав на более дешевый PS2251-03. |
SmartBuy Speedy 256GB : VID = 13FE PID = 5000 ; REV = PMAP ; SB256GBSP MPALL v3.72.0D ; Toshiba [MLC] ; 983A859376D7 |
Toshiba TransMemory-EX : VID = 0930 PID = 6545 ; REV = PMAP ; TRANSMEMORY-EX MPALL v3.24.00 ; Toshiba [MLC-8K] ; 98DE948276D6 |
А вот на флешках со специальным шифрованием, пробежимся максимально подробно.
Phison Secure USB Controller |
Phison PS2251-63 |
---|
BUFFALO RUF2-HSCTV : VID = 0411 PID = 01C8 ; REV = 3.10 |
BUFFALO RUF2-HSCLTV : VID = 0411 PID = 01E1 ; REV = 3.10 |
BUFFALO RUF2-HSCLTV3 : VID = 0411 PID = 01E3 ; REV = 3.10 |
Freecom DataBar Secure : VID = 07AB PID = FCAD ; REV = 5.00 ; DATABAR_SECURE |
Freecom DataBar Secure : VID = 07AB PID = FCF6 ; REV = 5.00 ; FREECOM_DATABAR |
ELECOM MF-PUVT : VID = 056E PID = 6801 ; REV = PMAP Модель MF-PUVT, выпускается с нескольких модификациях (GA1, GA3, GA5, GM1, GM3, GM5), например: MF-PUVT304GA1, MF-PUVT302GA3, MF-PUVT308GA5, MF-PUVT316GM1, MF-PUVT332GM3, MF-PUVT316GM5. |
Kingston DataTraveler Locker : VID = 0951 PID = 1629 ; REV = PMAP ; DTLOCKER |
Kingston DataTraveler Locker+ G2 (DTLPG2) : VID = 0951 PID = 1690 ; REV = PMAP ; DTLOCKER G2 |
Kingston DataTraveler Vault – Privacy Edition : VID = 0951 PID = 160D ; REV = PMAP ; DTVAULT_PRIVACY |
Kingston DataTraveler Vault Privacy Managed (DTVPM) : VID = 0951 PID = 1500 ; REV = PMAP ; DTVAULTPRIVACY-M |
Phison PS2251-65 |
Kingston DataTraveler 4000 : VID = 0951 PID = 1633 ; REV = PMAP ; DT_4000 |
Kingston DataTraveler 4000 Management-Ready : VID = 0951 PID = 1507 ; REV = PMAP ; DT4000M-R |
Kanguru Defender : VID = 1E1D PID = 5111 ; REV = PMAP ; DEFENDER_ELITE |
Phison PS2251-73 |
Kanguru Defender : VID = 1E1D PID = 5103 ; REV = PMAP ; DEFENDER Какая конкретно модель из линейки Defender, мне не известно, но как мне кажется, что-то из старья. |
Verbatim Store n Go Secure Pro (Professional USB Drives) : VID = 18A5 PID = 3927 ; REV = PMAP ; SECURE_DATA_USB |
Phison PS2251-75 |
Kanguru Defender Elite200 : VID = 1E1D PID = 1000 ; REV = PMAP ; ELITE_200 |
Phison PS2251-85 |
IRONKEY BASIC S250 and D250 Flash Drives : VID = 0718 PID = 07B2 ; REV = 4.05 ; IRONKEY_SECURE |
Phison PS2251-13 |
Kingston DataTraveler Locker+ G3 (DTLPG3) : VID = 0951 PID = 160D или 169D ; REV = PMAP ; DTLOCKER G3 |
Kingston DataTraveler Vault Privacy 3.0 (DTVP 3.0) : VID = 0951 PID = 1505 ; REV = PMAP ; DTVAULTPRIVACY30 |
Kingston DataTraveler 2000 : VID = 2009 PID = 16AF ; REV = 01 ; DT2000 |
Phison PS2251-15 |
Kingston DataTraveler 4000 G2 (DT4000G2) : VID = 0951 PID = 1508 ; REV = PMAP ; DT4000_G2 |
Теперь немного технической информации, по всем доступным контроллёрам.
Controller | PS2251-68 | PS2251-01 | PS2251-03 | PS2251-06 | PS2251-07 | PS2251-08 | |
Interface | USB 2.0 | USB 3.0 | USB 3.0 | USB 3.0 | USB 3.0 | USB 3.0 | |
Process | 0.11um | 90nm | 55nm | 55nm | 55nm | 55nm | |
Package | LQFP-48 | BGA-289 | TQFP-48/64 | TQFP-48/64 | TQFP-48/64 | TQFP-64/80 | |
Max # of CE (Chip Enable) | 4 | 16/32 | 8 | 4 | 4 | 16 | |
ECC | 72-Bit BCH | 68-Bit BCH | 72-Bit BCH | LDPC | 72-Bit BCH | 72-Bit BCH | |
Oscillator | Built-In | External | Built-In | Built-In | Built-In | Built-In | |
# of Channels | 1 | 4/8 | 2 | 1 | 1 | 2 | |
Toshiba | 19nm MLC | O | O | O | O | O | |
19nm TLC | O | O | O | O | |||
A19nm MLC | O | O | O | O | O | ||
A19nm TLC | O | O | O | O | |||
15nm MLC | O | O | O | O | |||
15nm TLC | O | O | O | O | |||
Intel Micron | 25nm MLC (L7x) | O | O | O | O | O | |
25nm TLC (B7x) | O | O | |||||
20nm MLC (L8x) | O | O | O | O | O | ||
20nm TLC (B85T) | O | ||||||
16nm MLC (L9x) | O | O | O | O | |||
SK Hynix | 20nm MLC | O | O | O | O | ||
16nm MLC | O | O | O | O | |||
16nm TLC | O | O | |||||
Samsung | 21nm MLC | O | O | O | |||
21nm TLC | O | O | O |
С помощью цветовой палитры, я попытался объёдинить контроллёры, имеющие что-то общее.
USB 2.0 Flash Drive Controller | |
---|---|
PS2231 | 0.162um, QFP-64 |
Program RAM | |
6/12 Bit BCH ECC | |
Dual Channel | |
SLC/MLC 2/4KB | |
SLC: 32/26 MB/s | |
MLC: 31/17 MB/s | |
(F/W Upgradeable) | |
On-the-Fly Data Encryption | |
512 Bit RSA Authentication | |
128/256 Bit Compatible AES | |
PS2232 | 0.162u, QFP-48/64, QFN-46 |
Mask ROM | |
Dual Channel | |
Cost-Down of PS2231 | |
PS2237 | 0.162u, QFP-48 |
Mask ROM | |
Single Channel | |
Cost-Down of PS2232 | |
PS2251-33 | 0.162um, QFP-48/64 |
Program RAM | |
12/16/24 Bit BCH ECC | |
Dual Channel | |
MLC Max Write 20MB/s | |
IEEE 1667 Enhanced Storage | |
Supported NAND: | |
– 50+/40+/30+nm | |
– SLC/MLC 4/8KB | |
– MLC 3 Bit/Cell | |
PS2251-39 | 0.11um, QFP-48 |
Mask ROM | |
Single Channel | |
Cost-Down of PS2251-33 | |
12/16/24 Bit BCH ECC | |
Supported NAND: | |
– 50+/40+/30+nm | |
– 8KB/Page | |
– 3 Bit Per Cell | |
PS2251-50 | 0.162um, QFP-48 |
Program RAM | |
Single Channel | |
No Crystal Required | |
PS2251-38 | 0.13u, QFP-48/64 |
Program RAM | |
(F/W Upgradeable) | |
OTP for Security Key | |
ISO 7816 Smart Card I/F | |
12/16/24 Bit BCH ECC | |
Supported NAND: | |
– 50+/40+/30+nm, 8KB/Page | |
– 3 Bit Per Cell | |
PS2251-60 | USB 2.0, 0.153um, LQFP-48 |
Program RAM, Enhanced 60-Bit BCH ECC | |
Built-In Oscillator | |
1-Channel | |
Up to 8KB/page, 3X/2Xnm SLC/MLC/TLC | |
PS2251-61 | USB 2.0, 0.11um, LQFP-48 |
Program RAM, Enhanced 60-Bit BCH ECC | |
Built-In Oscillator | |
1-Channel | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC | |
PS2251-67 | Cost-Down of PS2251-61 |
USB 2.0, 0.11um, LQFP-48 | |
Program RAM, Enhanced 60-Bit BCH ECC | |
Built-In Oscillator | |
1-Channel | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC |
USB 3.0 Flash Drive Controller | |
---|---|
PS2251-01 | 2/4/8 Channels |
USB 3.0, 90nm, AQFN-174/BGA-289, PRAM | |
Enhanced 68-Bit BCH ECC, Global Wear Leveling | |
MLC Max R/W 250/190MB/s | |
Up to 16KB/page, 2X/1Xnm SLC/MLC | |
ONFI/Toggle NAND I/F (133MB/s/Channel) | |
PS2251-02 | 1 Channel |
USB 3.0, 90nm, TQFP-64, Program RAM | |
Enhanced 72-Bit BCH ECC, Global Wear Leveling | |
MLC Max R/W 90/28MB/s | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC | |
ONFI/Toggle NAND I/F (133MB/s) | |
PS2251-03 | 1/2 Channels |
USB 3.0, 55nm, TQFP-48/64, Program RAM | |
Enhanced 72-Bit BCH ECC | |
Built-In Oscillator, Global Wear Leveling | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC | |
ONFI/Toggle NAND I/F (166MB/s/Channel) | |
PS2251-05 | 4 Channels |
USB 3.0, 55nm, TQFP, Program RAM | |
Enhanced 72-Bit BCH ECC | |
Built-In Oscillator, Global Wear Leveling | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC | |
ONFI/Toggle NAND (166MB/s/Channel) | |
PS2251-07 | 1 Channel |
Cost-Down of PS2251-03 | |
USB 3.0, 55nm, TQFP-48/64, Program RAM | |
Enhanced 72-Bit BCH ECC | |
Built-In Oscillator, Global Wear Leveling | |
Up to 16KB/page, 2X/1Xnm SLC/MLC/TLC | |
ONFI 3.0/Toggle 2.0 NAND I/F (400MB/s) |
USB Security Controller: AES & Smart Card | |
---|---|
PS2251-63 | USB 2.0, 0.162um, QFP-48/64 |
Program RAM, 24-Bit BCH ECC | |
On-the-Fly Encryption/Decryption | |
AES256/SHA256/RSA1024/RNG | |
2-Channel | |
Up to 8KB/page, 3X/2Xnm SLC/MLC | |
PS2251-65 | 0.162um, QFP-48/64 |
Program RAM | |
Dual Channel | |
FIPS 140-2 Level 2 Compliant | |
PS2251-73 | USB 2.0, 0.11um, QFP-48/64 |
Program RAM, 24-Bit BCH ECC | |
On-the-Fly Encryption/Decryption | |
AES256/SHA256/RSA2048/RNG | |
4-Channel | |
Up to 8KB/page, 3X/2Xnm SLC/MLC | |
PS2251-83 | USB 2.0, 0.11um, QFP-64 |
Program RAM, 24-Bit BCH ECC | |
On-the-Fly Encryption/Decryption | |
AES256/SHA256/RSA2048/RNG | |
ISO 7816 Smart Card Interface, SPI | |
2-Channel | |
Up to 8KB/page, 3X/2Xnm SLC/MLC | |
PS2251-13 | On-the-Fly |
AES256/SHA256/RSA2048/RNG | |
2-Channel eMMC Reader (HS-200) | |
USB Security Controller: FIPS Certified | |
PS2251-75 | FIPS 140-2 Level 3 |
USB 2.0, 0.11um, QFP-48/64 | |
Program RAM, 24-Bit BCH ECC | |
On-the-Fly Encryption/Decryption | |
AES256/SHA256/RSA2048/RNG | |
4-Channel, Up to 8KB/page, 3X/2Xnm SLC/MLC | |
PS2251-85 | FIPS 140-2 Level 3 |
USB 2.0, 0.11um, QFP-64 | |
Program RAM, 24-Bit BCH ECC | |
On-the-Fly Encryption/Decryption | |
AES256/SHA256/RSA2048/RNG | |
ISO 7816 Smart Card Interface, SPI | |
2-Channel, Up to 8KB/page, 3X/2Xnm SLC/MLC | |
PS2251-F5 | NAND Independent Reader Solution |
FIPS 140-2 Level 3 | |
USB 3.0, 55nm, 32 Bit ARC | |
TQFP, Program RAM | |
Built-In Oscillator | |
On-the-Fly Encryption/Decryption | |
AES256/SHA512/RSA2048/RNG | |
ISO 7816 Smart Card Interface, SPI | |
2-Channel SD/eMMC Reader (HS-200) | |
PS2251-15 | FIPS |
On-the-Fly | |
FIPS 140-2 Level 3 | |
AES256/SHA256/RSA2048/RNG | |
2-Channel eMMC Reader (HS-200) | |
PS2251-16 | FIPS & Smart Card |
On-the-Fly | |
ISO-7816 Smart Card I/F | |
FIPS 140-2 Level 3 | |
AES256/SHA256/RSA2048/RNG | |
2-Channel eMMC Reader (HS-200) |
По всем вопросам, связанных с ремонтом своих флешек, прошу писать на ФОРУМ ПРОЕКТА USBDEV.
Определение модели контроллера и памяти флешки
При работе со многими современными контроллерами, зачастую важнее знать, какая микросхема памяти установлена, чем модель контроллера. А уже в зависимости от памяти (SS Toggle, 21nm Samsung, eD3, L85, размер её страницы и т.д.), может зависит редакция программного обеспечения.
Для определения контроллера существуют различные способы, но не все они эффективны или их результативность зависит от модели контроллера внутри и \ или фирмы производителя самой флешки.
Важно: программа CheckUDisk, как и метод VID\PID не имеет никакого отношения к реанимации флешек, так что не стоит её даже качать, если Вам нужно подобрать утилиты. А то что всякие сомнительные компании по восстановлению данных с флешек, типа Data Recovery и R.LAB, рекомендуют VID-PID, говорит лишь о их полной некомпетентности.
Справедливости стоит заметить, что не всегда такие конторы рекомендуют ВИД-ПИД из-за своей бестолковости. Например, компания R.LAB, которая известна своими заоблачными ценниками, рекомендует эту методу, только потому, что там договорённость о взаимной рекламе. Да и как не крути им удобно считать людей за болванов, т.к. начитавшись правильных материалов, труднее будет навешать лопшу на уши.
Определение контроллера и памяти с помощью программы ChipGenius
Внимание: не следует использовать старые версии (ChipGenius 3.0 \ 3.01) этой утилиты, т.к. они ничего не опрашивают и совершенно бесполезны!
ChipGenius – программа разработанная уважаемым hit00, для получения информации о USB-устройствах, таких как флешки, mp3-плеера. Она умеет опрашивать большинство из существующих моделей контроллеров установленных в USB-флэшках, а если программе не удается опросить \ не знает контроллер, то отображаются данные из встроенной базы VID\PID с предположительной информации об устройстве.
Также, возможна некорректная работа (не будет производиться опрос контроллера, а будет выдаваться информация по встроенной базе vid\pid; или данные будут смешиваться между собой в хаотичном порядке) утилиты ChipGenius в случае её запуска в операционной системе, которая подверглась сильной “кастрации” (относящихся к классу так называемых “говно-сборок”, в который входит Zver, ChipXP и т.д.) и издевательствам (или Windows PE).
Так что всвязи со всем этим, будьте бдительны, если Ваш глаз еще не наметан. Поэтому если утилита дает расплывчатую информацию о контроллере или отсутствуют информация по памяти, рекомендуется сразу проверить эту же флешку другими утилитами, погуглить и только потом делать выводы какие-нибудь.
К примеру, вот такое расплывчатое чюдо, может выдать ChipGenius:
– для Alcor чипов: Chip Part-Number: AU6983
AU6985;
– для Phison чипов: UP13
UP19;
– для SMI чипов: SM321
SM325.
Это гарантированно указывает на то, что утилита не смогла получить доступ к флешке, по тем или иным причинам и выдала Вам данные из встроенной базы VID\PID, хранящейся в файле Chips.wdb.
Важно: данная утилита не работает с флешками вставленными в USB 3.0 хост контроллеры производства компании ASMedia.
Description: [E:]USB Mass Storage Device(TEAM USB Disk)
Device Type: Mass Storage Device – тип устройства;
Protocal Version: USB 2.00 – режим порта в котором работает устройство (в случае если USB3.0-устройство подключено в USB2.0-порт будет отображаться режим 2.10);
Current Speed: High Speed
Max Current: 100mA – максимальное потребление тока устройством;
USB Device ID: VID = 1516 PID = 1603
> VID – идентификатор производителя флешки или контроллера или просто чья-то больная фантазия;
> PID – идентификатор устройства или модели контроллера или фантазия;
Serial Number: 201012240000000000000020 – серийный номер устройства;
Device Vendor \ Device Name \ Manufacturer \ Product Model: – производитель флэшки и модель устройства;
Tools on web: <цензура>– ссылка на перечень утилит для фирмы производителя контроллера флэшки, имеющихся на сайте автора программы ChipGenius;
Possible Flash Part-Number
—————————-
[1CE]JS29F16G08AAMC1(50nm) x 2 pcs/Channel x 2 Channels
[2CE]JS29F32G08CAMC1(50nm) x 1 pcs/Channel x 2 Channels
; В данном месте выводятся возможные модели флэш-памяти. Если рассматривать вышеприведённые данные, то там или по две микросхемы припаянные на один канал ([1CE]JS29F16G08AAMC1(50nm) x 2 pcs/Channel x 2 Channels), каждая из которых имеет 1CE. Или там на каждом канале всего по одной микросхеме памяти и каждая из них уже содержит по 2CE ([2CE]JS29F32G08CAMC1(50nm) x 1 pcs/Channel x 2 Channels).
Flash ID mapping table
—————————-
[Channel 0] [Channel 1]
89D5943E7400 89D5943E7400
89D5943E7400 89D5943E7400
; Здесь мы можем видеть тот же FID-памяти, но тута он уже может содержать первые 6 байт. А будет ли 4 или 6 байт, зависит от конкретного железа флэшки. Горизонтально идут каналы Channel 0 и Channel 1, а вертикально #CE (CE1, CE2).
——– ——–
——– ——–
Получения информации о флешке с помощью программы Flash Drive Information Extractor
На домашней странице проекта, приведён глоссарий с кратким описанием параметров, выводимым утилитой.
Flash Drive Information Extractor – программа от Российской компании ANTSpec Software, для опроса контроллера флэшек и получения информации об устройстве. Определяет такие позиции как: Controller, Possible Memory Chip(s), Memory Type, VID, PID, Flash ID, Manufacturer, Product, Query Vendor ID, Query Product ID, Query Product Revision, Physical Disk Capacity, Windows Disk Capacity, USB Version, Max. Power, ContMeas ID. Для некоторых контроллеров также определяет: Flash CE, Flash Channels, Chip F/W, MP Ver., ID_BLK Ver., Firmware Date. Утилита в отличие от двух своих аналогов, представленных здесь, корректно функционирует в USB3.0-портах на контроллерах Asmedia. С версии 7.0 программа выдает результат в незашифрованном виде, что ставит её в один ряд с подобными утилитами. Рекомендую её при работе с контроллерами Alcor, Innostor, Phison и SMI.
Volume: G: – буква диска;
Controller: Alcor AU6989AN/AU6998AN/SC908AN – наименование установленного во флешке контроллера. Как правило, определяется бренд производителя и модель;
Possible Memory Chip(s): – возможные варианты установленных во флешке чипов памяти (или чипа памяти, если он один);
Micron MT29F64G08CBCAB *2
Micron MT29F64G08CBAAA *2
Micron MT29F64G08CBAAB *2
Memory Type: MLC – тип установленной памяти;
Flash ID: 2C88044B A9 – идентификатор чипа памяти, число в шестнадцатеричной системе. Используется программой для подбора подходящих чипов;
Flash CE: 1+1 – количество каналов выборки, 1+1 значит, что на обоих каналах по одному CE;
Flash Channels: Dual – в скольки канальном режиме работает контроллер флэшки;
Chip Code: 0xE304 – индентификатор модели контроллера, в данном случае он значит AU6989AN / AU6998AN / SC908AN;
Chip F/W: 8408 – версия файла прошивки, который использовался при прошивке флешки;
Group: 98 – группа контроллеров, к которой принадлежит данная модель;
VID: 8564 – идентификатор производителя флэшки или контроллера или чей-то прикол;
PID: 1000 – идентификатор модели флэшки или контроллера или чей-то прикол;
Manufacturer / Product / Query Vendor ID / Query Product ID: – производитель флэшки, модель устройства и тому подобное;
Query Product Revision: 8.07 – версия, или номер “издания” флешки по классификации производителя;
Physical Disk Capacity: 16055795712 Bytes – физический объем флешки в байтах;
Windows Disk Capacity: 16047472640 Bytes – объем флешки, доступный для использования;
File System: FAT32 – файловая система;
Relative Offset: 128 KB
USB Version: 2.00 – версия интерфейса USB, для которой предназначена флешка, например, “2.00” или “3.00”. Если флешка с интерфейсом USB 3.0 вставлена в USB 2.0 порт, выводится информация “USB Version: 3.00 in 2.00 port”;
Max. Power: 100 mA – максимальный потребляемый флешкой ток (в миллиамперах), по информации производителя, прошитой в контроллере флешки;
ContMeas ID: 1A2D-62 – идентификатор измерения;
Microsoft Windows XP SP3 – используемая Вами операционная система;
————————————
http://www.antspec.com/usbflashinfo/ – домашняя страница программы, на которой имеется полезная информация, а также возможность проверить наличие свежей версии;
Program Version: 7.3.0.448 – версия, используемой утилиты;
После получения отчета о флэшке, утилита Вас автоматически перенаправит на страничку с Объяснениями результатов работы программы. Для получения информации о другой флэшке или выполнения повторных измерений, необходимо перезапустить программу, это является ни недоработкой, а её особенностью.
Для того чтобы закрепить диалоговое окно программы поверх всех окон, необходимо щелкнуть в произвольном месте правой кнопкой мыши и активировать пункт ‘On Top’, аналогичным действием можно деактивировать данную функцию. Также эту операцию можно провести нажатием горячих клавиш ‘Ctrl+T’.
Программа работает только с флешками и не реагирует на другие USB устройства, такие как картридеры (SD карты в любом оформлении), смартфоны, MP3 плееры, фотоаппараты и тому подобные. Иногда картридеры оформляются в виде флешек (например, некоторые модели Verbatim). В этих случаях программа или не отобразит никакой информации, или не определит тип контроллера и чип памяти. Также программа пока что не определяются флешки, представленные в виде единственного CD-диска (CD-ROM only) или фиксированного диска (fixed disk, HDD), но предполагается, что в будущем авторы этот вопрос решат.
Опрос контроллера флешки с помощью утилиты ChipEasy
ChipEasy – утилита для получения информации (VID\PID; максимальное потребление тока; серийный номер; модель контроллера; информация о прошивке; FID памяти и предположительная модель памяти; информация о прошивальщике, …) о подключенных к компьютеру съемных запоминающих USB-устройствах (Flash, SSD). Информация получается не косвенными методами (VID\PID …), а непосредственно благодаря опросу контроллера устройства.
Device ID: VID = 3538 PID = 0059;
> VID – идентификатор производителя;
> PID – идентификатор устройства;
Device SN: 00000000000002 – серийный номер устройства;
Device vendor \ Device model: – производитель флэшки и модель устройства;
Protocol: USB2.0 – версия USB-протокола, через который подключена флэшка;
Max power: 98mA – максимальное потребление тока устройством;
Partition type: FAT32 – файловая система;
Controller: USBest – производитель контроллера устройства;
Controller model: UT165 A0A – модель контроллера установленного в USB-устройстве;
Flash Vendor: Intel, Type: MLC, Process: 50nm, Page: 4K
> Intel – производитель микросхемы памяти;
> Type: MLC – тип памяти;
> Process: 50nm – технологический процесс flash-памяти;
> Page: 4K – размер страницы флэш-памяти;
Flash ID: 89D5943E – FID памяти;
Flash Part: JS29F32G08CAMC1 – предполагаемое наименование чипа памяти;
Last MP: 2012.09.15 – дата, когда была осуществлена прошивка флэшки;
MP Ver: 01.65.30.00 – версия прошивальщика;
OS Version: Microsoft Windows XP Professional Service Pack 3 – ОС в которой запускалась программа;
Также как и у программы ChipGenius, остается вероятность, что утилита в кризисной ситуации, начнёт гадать! Если утилита перешла к гаданию, то, скорее всего флешка неисправна и нужно принимать меры, к примеру, попробовать перевести её в тестовый режим. Подробнее про тестовый режим можете почитать в разделе Articles, т.е. если перевести на русский язык – Статьи.
Вот примеры:
– для контроллеров SMI : SM3254/SM3255
– для контроллеров Phison : PS2251-50(60); UP13-UP20
– для SSS : SSS6691/SSS6692/SSS6697
Важно: данная программа, хотя и частично опрашивает флешки, находящиеся в USB3.0 Host контроллерах производства ASMedia, но это не значит, что так и надо. При работе с флешками находящих в этих портах, утилита не может выдать информацию о протоколе USB и о резервируемом напряжении в миллиамперах. А то что данная утилита, в отличие от известного всем ChipGenius, опрашивает сам контроллер, объясняется иным принципом её работы.
Определение модели контроллера путём вскрытия корпуса флешки
Не смотря на прогресс (Flash Drive Information Extractor и ChipGenius) и на подсказки (VID\PID) не всегда можно определить точно контроллер. Поэтому самым эффективным методом является старое доброе вскрытие корпуса. Хотя этот метод в основном пригодиться для определения контроллеров очень старых флэшек, которые не отличаются большим объемом памяти.
Т.к. название статьи не подразумевает ремонт флешки, поэтому будем считать, что флешка аппаратно исправна. Т.е. при вскрытий корпуса нас интересует только определения модели контроллера и идентификация микросхемы памяти.
Отличить чип памяти от чипа контроллера достаточно просто. Контроллер, как правило всегда имеет меньшие размеры квадратной формы, а микросхема памяти имеет габариты побольше и форма её продолговата.
Вот пример флешки на базе контроллера Phison PS2251-60-5 и двух микросхем памяти с маркировкой HVNG4F5.
Если обратить внимание на картинку, то на маркировку имеет только один чип памяти. А моё утверждение основано на том, что микросхемы памяти, установленные на одной флешке должны быть идентичны.
HVNG4F5 – неоригинальная маркировка, т.е. производитель флеш-памяти не тот, чья маркировка гравировка красуется на корпусе микросхемы памяти.
Узнать FID данной памяти, так и многих других можно в базах данных сайта, а именно здесь:
http://www.usbdev.ru/databases/fidmemory/
По нашей памяти там имеется следующая инфа:
– Toshiba – оригинальны производитель флеш-памяти;
– TLC-8K – тип памяти
– 8192 – объем памяти в мегабайтах
– 0x98,0xDE,0xA8,0?82,0x7A,0x55 – FID этой памяти
– CE=1 – количество каналов выборки
– 32nm – технологический процесс, на котором производилась флеш-память.
Иногда гравировка очень плохо читается, что решается использованием увеличительных стекол, а также освещением маркеровки под определенным углом к источнику света.
Также стоит понимать что маркировка контроллера может отличатся от того какая прошивка для него нужна, вот некоторая информация по этому поводу:
> SM3251Q BA = SM3252B;
> SM3252Q BB = SM3252C;
> SM3253Q AE = SM3254AE;
> SM3255 AC = SM3255TS;
Гадание модели контроллера по VID\PID и почему это делать не нужно
VID\PID это морально устаревший способ для подбора утилиты для флешки, который в большинстве случаев ниначём не основанный. Эта технология по угадыванию моделей контроллера, была актуальна в середине 2000-ых годов, когда фирм производящих контроллеры было всего несколько штук, да и у каждой было всего по несколько моделей контроллеров. Зачастую для всех контроллеров одной фирмы подходила одна и таже утилита, да и самих фирм производящих флешек было ничтожно мало, по сравнению с тем что мы видим сейчас на рынке.
Почему же этот метод в 99% случаях абсолютно бесполезен? Здесь много причин, вот некоторые из них:
– крупные производители флешек, как правило, присваивают свои “не родные” vid\pid для контроллера данные, т.е. от них как от козла молока;
– знать vid\pid и даже точную модель контроллера мало, чтобы приступить к поиску утилиту, т.к. выбор утилиты может зависит от памяти и дело зачастую даже не в новизне памяти или утилиты.
– вид\пид определяются и у неисправной флешки, которую нужно сначала починить, а потом уже искать софт. Т.е. Вы будете глупо перебирать софт найденный в базах, а он на хрен не нужен в этой ситуации.
– зачастую в таких базах заведомо неверная информация содержится или информация о флешка-подделка, выдаваемая за настоящую.
Я знаю три таких базы, одну российскую и две китайские. Китайские как правило заметно точнее, но содержат меньшее количество записей. Ссылки указывать не буду, всякую хрень Вы можете легко найти через гуугла.
Для определения VID\PID можете воспользоваться вышеприведенными утилитами или программой CheckUDisk из комбаина EmbedTools. Хотя я лично не понимаю зачем нужно определять VID\PID, а если и для каких-то целей это нужно, то всё это Вы можете найти в диспетчере оборудования, при получении сведений об устройстве.
Вот скриншот того как работает данная утилита, на примере флешки с контроллером SM3257ENAA:
Отчет: Name: Silicon-Power (USB2.0) VID&PID: Vid_090c&Pid_1000 Vendor Description: UFD 2.0 \\.\PHYSICALDRIVE3 | Скриншот: |
Как видно из него, ничего интересного в нём нету, хотя серийный номер может где-то и пригодится.
Теперь давайте попробовать подобрать к этой флешки утилиту по убогим схемам с использованием VID\PID. Контроллер у данной флешки установлен самый “популярный” из тех, которые использовали в 2012 году крупнейшие производители флешек, так что не надо думать, что я специально взял пример с каким-то хрен знает каким контроллером.
Как видно из отчета VID\PID = 090C \ 1000, а это стандартные значения для абсолютно любой модели контроллеров фирмы SMI. А такие контроллеры они выпускают уже примерно с 2004 года, и моделей уже накопилось не один десяток. Что и доказывает то, что всякие методы по подбору софта по vid и pid давно уже неактуальны и кажутся смешными. Так что если Вам кто-то посоветует использовать такой метод, то можете не сомневаться, что этот человек недалёкий и не стоит обращать внимание на его писанину.
Ниже я приведу стандартные значения VID и PID для крупнейших производителей флеш-накопителей.
Вот некоторые из таких производителей:
> A-DATA : VID = 125F, а PID имеет различные значения (105B, 311A, 312A, 312B, 317A, C03A, C08A, C13A, C72A, C82A, C93A, C96A, CB10, DB8A, DC1A и т.д.), но всё же PID не позволяет точно определить наименование контроллера, а сомнения это плохо;
> Apacer Technology: VID = 1005 \ PID = B113 или B128;
– в USB2.0 – PID = B113, а контроллер внутри может быть: Appotech, Phison, SMI, SanDisk или USBest;
– в USB3.0 – PID = B128, а контроллер внутри может быть: Innostor или Phison;
> Corsair: VID = 1B1C, а PID имеет различные значения (но всё же PID не позволяет точно определить наименование контроллера);
> Kingston: VID = 0951 \ PID = 1624, 1625, 1642, 1643, 1652, 1653, 168A (есть и другие вид пид) лучше даже не пытаться чета определить по VID\PID, т.к. используется огромное число контроллеров (например: Phison [PS2251-32, PS2251-33, PS2251-39, PS2251-50, PS2251-60, PS2251-61, PS2251-67], 3S [SSS6677A, SSS6677-A7, SSS6690, SSS6691, SSS6691-B3, SSS6692, SSS6692-B4, SSS6692-B5], Skymedi [SK6213AA, SK6226], …). Также с этими VID и PID можно встретить огромное число подделок, в основном на контроллерах фирм: ChipsBank, DM8261, Ameco, Alcor (никогда на контроллерах данных фирм кингстон не производил флэшки).
> LG: VID = 043E \ PID = 70D6, 70D5, 70D4, 70D3, 70E3, … ПИД никаким образом не укажет Вам не конкретный чип или марку, но чем больше полледняя цифры в нём, тем новее железло там скорее всего установленно. Характерны: SM321BB, SM324BC, SM325AB, SM3252C, SM3252D, SM3254AE, SM3255AB, SM3255ENAA, SM3257ENAA, SM3257ENLT, SK6216/SK6215, SK6226.
> PQI: VID = 3538 \ PID = 0054, 0901, … имеет различные значения (но всё же PID не позволяет точно определить наименование контроллера);
> Transcend: VID = 8564 \ PID = 1000, а контроллер внутри может быть: Alcor, INITIO, SMI или Innostor (в USB3.0 флэшках);
> Verbatim: VID = 0BDA, 18A5, …, а PID имеет различные значения (но всё же PID не позволяет точно определить наименование контроллера);
Т.е. как видно из этих данных, поиск утилиты для воскрешения Вашей флэшки по VID\PID с большой долей вероятности абсолютно бессмысленный, особенно если у Вас не древняя флешка. Вы можете потратить несколько часов, перебирая возможные утилиты взятых из различных баз, а, в конце концов, Вам ни одна утилита не подойдет (частенько такое встречается с современными флэшками). В принципе примерно можно определить по кучи косвенных признаков (включая vid\pid) возможные модели контроллеров, но тута нужна головой обработать кучу почти незначительных признаков, понять которые практически не возможно без понимания сути и хорошего опыта. Главным таким признаком является дата покупки (вернее дата изготовления, но мы её точно не знаем, поэтому получаем небольшую погрешность), по которой можно с намного большей точности сказать, какой контроллер установлен в Вашем друге, чем по VID\PID, которых в современных реалиях почти всегда не несут ни какой дельной информации.
Может и не все модели контроллеров, на данный момент, можно определить с помощью ChipGenius и других утилит. Но в отличае от VID\PID, которым развиваться некуда, у этих программ есть куда. А если учитывать, что данные программы не могут опрасить в основном только те контроллеры, для которых и так нету производственных утилит, то и проблемы то толком и нету, т.к. зачем Вам знать контроллер, если все равно для него нету софта.
У редкого производителя, еще можно встретить стандартные значения VID\PID, так что приведу их Вам для распространённых контроллеров, вдруг Вам встретятся.
Вот некоторые из них:
Alcor
> VID = 058F \ PID = 9380 – как правило, у относительно старых контроллеров;
> VID = 058F \ PID = 6387 – соответственно, у относительно новых контроллеров;
> VID = 0001 \ PID = 7778 – характерны для флэшек-подделок, на контроллерах FC;
> VID = 0011 \ PID = 7788 – наиболее распространено в фейках, на контроллерах FC \ SC;
Смотреть на VID\PID в случае Алькора, для определения контроллера, нету абсолютно. Хотя если PID = 7788 или 7778, то скорее всего у Вас контроллер FC \ SC и соответственно понятно какие утилиты нужно перебирать.
ChipsBank:
> CBM2093A1 – VID = 1E3D \ PID = 2093;
> CBM2093P – VID = 1E3D \ PID = 2095;
> CBM2095 – VID = 1E3D \ PID = 2095;
> CBM2096 – VID = 1E3D \ PID = 2096;
> CBM2096P – VID = 1E3D \ PID = 2096;
> CBM2096PT – VID = 1E3D \ PID = 2096;
> CBM2096T – VID = 1E3D \ PID = 2096;
> CBM2193A1 – VID = 1E3D \ PID = 2093;
eFortune:
> EU201 – VID = 1AA6 \ PID = 0201;
> EU202 – VID = 1AA6 \ PID = 0202;
Innostor:
> IS902 – VID = 1F75 \ PID = 0902;
> IS902E – VID = 1F75 \ PID = 0902;
> IS903 – VID = 1F75 \ PID = 0903;
> IS916 – VID = 1F75 \ PID = 0916;
> IS916D – VID = 1F75 \ PID = 0916;
> IS916EN – VID = 1F75 \ PID = 0916;
> IS917 – VID = 1F75 \ PID = 0917;
iTE Tech. Inc. [USBest]:
> UT163 – VID = 1307 \ PID = 0163;
> UT165 – VID = 1307 \ PID = 0165;
> UT169 – VID = 1307 \ PID = 1169;
> UT190 – VID = 1307 \ PID = 0190;
> IT1162 – VID = 048D \ PID = 1162;
> IT1167 – VID = 048D \ PID = 1167;
> IT1168 – VID = 048D \ PID = 1168;
> IT1169 – VID = 048D \ PID = 1169;
> IT1170 – VID = 048D \ PID = 1170;
> IT1171 – VID = 048D \ PID = 1170;
Почему-то бывает так, что какой-нибудь контроллер имеет PID другой модели. Поэтому наслово верить не советую, да и у многих из них имеется несколько ревизий с разными буквами.
Phison:
> PS2251-01 – VID = 13FE \ PID = 5000 [5021,5023,5027,5031];
> PS2251-02 – VID = 13FE \ PID = 5100 [5121,5123,5127,5131];
> PS2251-03 – VID = 13FE \ PID = 5200 [5221,5223,5227,5231];
> PS2251-06 – VID = 13FE \ PID = 5400 [5421,5423,5427,5431];
> PS2251-07 – VID = 13FE \ PID = 5500 [5521,5523,5527,5531];
> PS2251-30 – VID = 13FE \ PID = 3600 [3620,3621,3623,3627,3631,3633];
> PS2251-31 – VID = 13FE \ PID = 1E00 [1E20,1E21,1E23,1E24,1E27];
> PS2251-32 – VID = 13FE \ PID = 1F00 [1F21,1F23,1F27];
> PS2251-33 – VID = 13FE \ PID = 3100 [3121,3123,3127,3131,3132,3134];
> PS2251-37 – VID = 13FE \ PID = 3200 [3221,3223,3227];
> PS2251-38 – VID = 13FE \ PID = 3800 [3821,3823,3827,3831,3832];
> PS2251-39 – VID = 13FE \ PID = 3400 [3421,3423,3427];
> PS2251-50 – VID = 13FE \ PID = 3600 [3620,3621,3623,3627,3631,3633];
> PS2251-60 – VID = 13FE \ PID = 3D00 [3D21,3D23,3D27,3D31,3D33];
> PS2251-61 – VID = 13FE \ PID = 3E00 [3E21,3E23,3E27,3E31,3E33];
> PS2251-62 – VID = 13FE \ PID = 3F00 [3F21,3F23,3F27,3F31,3F33];
> PS2251-63 – VID = 13FE \ PID = 3300 [3321,3323,3327,3331,3332,3334];
> PS2251-65 – VID = 13FE \ PID = 3527;
> PS2251-67 – VID = 13FE \ PID = 4100 [4121,4123,4127,4131,4133];
> PS2251-73 – VID = 13FE \ PID = 3900 [3921,3923,3927,3931,3932,3934];
> PS2251-75 – VID = 13FE \ PID = 3A27 [3A32,3A34];
> PS2251-80 – VID = 13FE \ PID = 3B00 [3B21,3B23,3B27,3B31,3B32,3B34];
> PS2251-83 – VID = 13FE \ PID = 3C00 [3C21,3C23,3C27,3C31,3C32,3C34];
> PS2251-85 – VID = 13FE \ PID = 4027 [4032,4034];
> PS2251-90 – VID = 13FE \ PID = 3D00 [3D21,3D23,3D27,3D31,3D33];
> PS2251-91 – VID = 13FE \ PID = 3E00 [3E21,3E23,3E27,3E31,3E33];
; Старые модели от Phison, насколько я понимаю в них нету “жесткой” привязки к вид пид, т.е. может быть любая очень старая модель (чёто типа PS2251-53, PS2251-54, PS2251-56 и так далее, в том же духе). Насколько старые точно сказать не могу, но явно программа Phison MPALL, для работы с ними не подойдёт. Также не могу точно сказать, правильно ли я их сортировал, т.к. не обладаю этими данными.
VID = 0D7D \ PID = 0152 [0153,0160];
VID = 0D7D \ PID = 0290 [0291];
VID = 0D7D \ PID = 1300 [1320,1321,1324];
VID = 0D7D \ PID = 1400 [1420,1421,1423,1424,1427,1428,1440,144F,1450,1455,1470,1480,14B0];
VID = 0D7D \ PID = 1500 [1520];
VID = 0D7D \ PID = 1600 [1620,1621,1623,1624,1625,1626,1627,1640,1650,1651,1670,1680,1690];
VID = 0D7D \ PID = 1700 [1720,1721,1723,1780];
VID = 0D7D \ PID = 1900 [1920,1921,1923,1924,1927];
VID = 13FE \ PID = 1A00 [1A20,1A21,1A23,1A24,1A27];
VID = 13FE \ PID = 1A30;
VID = 13FE \ PID = 1C00 [1C21,1C23,1C27,1C50,1C51];
VID = 13FE \ PID = 1D00 [1D20,1D21,1D23,1D24,1D27];
VID = 13FE \ PID = 2001;
VID = 13FE \ PID = EC00 [EC21,EC23,EC27,EC50];
VID = 13FE \ PID = EE00 [EE20,EE21,EE23,EE24,EE27];
Skymedi Inc.,Ltd:
> SK6203 – VID = 1516 \ PID = 6203;
> SK6211 – VID = 1516 \ PID = 6211;
> SK6221 – VID = 1516 \ PID = 6221;
> SK6226 – VID = 1516 \ PID = 6226;
SSS – VID = 0076 \ PID = 0005
Все контроллеры имеют одинаковые VID\PID, так что ни а какой индентификации говорить нету смысла. Иногда встречаются экземпляры с другими вид\пид, но сути это не меняет.
SMI – VID = 090C \ PID = 1000 (еще и 2000 или 3000 могут встретиться, но это не стандартное значение)
Как и в случае с SSS, нету смысла смотреть на VID/PID. Но стоит заметить, что некоторые фирмы типа Kingmax, могут присваиваивать говорящий PID. К примеру равный 3257, что намекает на принадлежность контроллера к моделям из линейки SM3257* (не менее трех вариантов).
Вы скажите, вон, сколько контроллеров можно примерно определить таким методом, но есть одно но, то, что вид\пид Вам не скажет устройство исправно или нет. Дело в том, что утилиты для восстановления работоспособности можно применять только в том случае если флэшка полностью аппаратно исправна, а VID\PID могут получиться и у неисправной флэшки. Т.е. Вы будете перебирать кучу возможного софта, а не одна из программ не определит флэшку или будет вываливаться непонятными ошибками. А по показаниям Flash Drive Information Extractor \ ChipEasy \ ChipGenius видно сразу подвисла флэха или нет, т.е. если все графы (FID-памяти и т.п.) корректно определились то, скорее всего всё хорошо, иначе есть некоторые проблемы.
Определение производителя и модели контроллера у флэшек по внешним данным
Team Group Incorporated
Для USB-флэшек ‘C Series’, на коннекторе которых указан код, по которому можно определить производителя контроллера устройства.
– Alcor – XXXXXHXXXDXXXXX (6-ой символ кода H, а 9-ый D);
– iTE Tech – XXXXXHXXXDXXXXX (6-ой символ кода H, а 9-ый 0);
Teclast Electronics Co., Ltd.
У производителя флешек Teclast, всё очень просто с определением производителя контроллера установленного в их продукции (во всяком случае с теми, которые стали выпускаться с начала 2012 года). Смотрим на картинку ниже, ищем что-то подобное на коннекторе и сравниваем с теми данными, которые здесь приведены.
TwinMOS Technologies
По заверению производителя отталкиваясь от кода указанного на коннекторе флешки можно определить производителя контроллера устройства.
xxxxxxxxx Axxxxx-x – Alcor;
xxxxxxxxx Pxxxxx-x – Phison;
xxxxxxxxx Kxxxxx-x – Skymedi;
xxxxxxxxx Sxxxxx-x – SMI;
xxxxxxxxx Uxxxxx-x – USBest;
Kingston Technology Corporation
Если Вы являетесь обладателем флэшки фирмы Kingston, то у Вас есть возможность попробовать определить наименование \ фирму контроллера по серийному номеру.
Skymedi:
> SK6211BA: 04286,04234,04256, M4286, 04226, C4226, 04227-322;
> SK6211BB: 04335 (частично), 04334 (частично), C5375-102;
> SK6213AA: 04300-308;
> SK6215: 04334-329, 04334-324, 04334-332, 04335-378, 04335-379, C4477-806;
> SK6226: C4477;
> SK6281AB\AA: 04169, 04234 (частично), 04235-351, 04226-312;
> SK6201: 04169, C4169;
Phison: 05360, 05365, 05375, 05381 (частично), 05384, 05430, 05440, 05470, 04235, 04236, 04265, 04266, 04292, 04227, 04347, 04366, 04282, 04336, 04378, 04275-413, C4275-306, 04425;
SSS:
> SSS6677: 04249, C4249;
> SSS6675: C4225;
> TC58NC6686G1F: 05831, 05381-005, 05381-029, 05430-016;
> SSS6690\6691: 04275, C4275, 04349, C4300, 04300 (частично), 05436, 05430-062, 05430-072, 05381-095, 05381-064, 05381-102, 05430-074, 05375-079;
> SSS6692: 04415, 04416, C4416;
> SSS6697: 04415-301, 04415-321
Помимо этого 13 буква в серийном номере флэшек Kingston указывает на производителя контроллера:
> A – Skymedi;
> B или E – Phison;
> C или F – SSS;