Авторизация
Регистрация

Напомнить пароль

Прямая запись в usb накопителях на контроллере SM2320 на примере Kingston DTMaxA

Рассказ об ускорении записи у некоторых флешек на контроллерах sm2320.

На всякий случай предупрежу, что описанная процедура уничтожает записанные данные, а в некоторых случаях, в том числе при неверном радиусе кривизны рук и проблемах с кармой, может привести и к полной неработоспособности устройства.

Попугали и хватит, вернемся к нашим баранам. Последнее время среди быстрых флешек и внешних ssd распространились накопители на контроллере sm2320.
Впервые они появились в конце 2021, и отличительной их способностью первое время была невысокая скорость записи за пределами slc-кеша ввиду любимой smi политикой кеширования, когда все данные сначала пишутся в slc-кеш, а потом из него сбрасываются в основной многобитный массив. В таком режиме скорость даже с быстрым tlc флешем ограничена 100-200МБ/с, иногда и ниже и почти не масштабируется с ростом обьема и параллелизма массива флеша.
Но спустя пару лет появились модели от crucial x9pro/x10pro, в которых наконец сделали прямую запись в tlc, когда за пределами кеша запись осуществляется сразу в многобитный массив без промежуточных «буферов», и в таком режиме скорость старших обьемах превышает гигабайт в секунду. Последнее время модели с флешем например от hynix'а часто ведут себя так же.
А еще с год назад активно утекать инструментарий для начальной инициализации с поддержкой разного флеша. Все это открыло возможности к ускорению у старых моделей.

В качестве подопытного выступает Kingston DTMaxA следующей конфигурации (прошивка тут уже новая):
v0.1t31
Drive: 2(USB)
OS
: 10.0 build 19045
Model: DataTraveler Max
Fw   : S9I00105
Size : 488386 MB [512.1 GB]
Model: KingstonDataTraveler Max1000
Size : 488386 MB
Controller : SM2320XT (from firmware)
FW version
: W0419A00
Bank00
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank02
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank04
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank06
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank08
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank10
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank12
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Bank14
: 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
FlashID : 0x98,0x3e,0x98,0x3,0x76,0xe4,0x0,0x0 - Toshiba 112L BiCS5 TLC 16k 512Gb/CE 512Gb/die 2Plane/die
Channel: 2
CE    
: 4
Plane  : 2
Die
/Ce : 1
Ch map : 0x05
CE map
: 0x0F
Bit Per Cell  : (TLC)
но его родственники dtmax (с type-c разьемом), и разноцветные xs1000/xs2000 ничем принципиально не отличаются. Вопрос только какой в них окажется флеш и есть-ли под него прошивки с нужной. Стоит отметить что xs1000 последнее время встречаются с qlc флешем, в частности у кингстона есть такие с версией прошивки S9M001xx — им уже ничто не поможет.
Уточнить флеш можно посредством vlo.name:3000/tmph/smi_pssd_flash_id01t3.rar
Некоторое количество mptool'ов находится здесь: www.usbdev.ru/files/smi/sm2320mptool/ выбирать в соответствии с выявленным флешем. На просторах попалась табличка от smi, в которой есть некоторые результаты замеров для разных прошивок и типов флеша. Салатовым выделил те, в которых по косвенным признакам (скорость записи h2testw) реализована прямая запись. Можно предположить, что поведение более новых версий под тот же флеш будет аналогичным, хотя этого я не проверял за неимением других подопытных.

Флешка подключается по usb обычным образом.
Первое — выполнить определение флеша кнопкой auto, если список пуст — значит в этом комплекте поддержки имеющегося флеша нет и продолжать не стоит.
В настройках нет ничего интересного, скрытый пункт «Static SLC» на данную версию прошивки никак не влияет. на всякий случай — включается он добавлением в system.ini лежащий рядом с SM2320MPTool.exe в разделе параметров:
[OPTION]
EnableWholeCardSLC=1
ShowStaticSlcCnt=1

Pretest поставить в 0,CH/CE Map и все что ниже — снять.
Из косметики если флешка исходно живая, то можно задать модель/серийник/прошивку как было в оригинале, причем для серийника можно выбрать настройку KeepSN, а галочку Modifi CID снять. Если накопитель не определяется, его пришлось перевести в rom перемычкой, то придется и эти поля заполнить вручную.
Пароль на вход в настройки традиционный для smi — два пробела.

Плата выглядит так, контакты для перевода в rom mode обведены, их можно замыкать накоротко или резистором в несколько сот Ом, для поиска в случае неизвестной платы у других моделей желательно использовать резистор, что бы ничего не коротнуть, замыкать надо перед подачей питания, через несколько секунд после можно убрать, и обязательно убрать до запуска процесса перепрошивки:
Процесс занимает порядка минуты.

Результат — для 512GB с таким флешем запись после кеша получилась ~430MB/s:Найти для сравнения полный аналог у меня не получилось, вот так пишется родственный накопитель с точно таким же флешем, но вдвое большего обьема с прошивкой без прямой записи — всего 140MB/s (отсюда — mysku.club/blog/russia-stores/99036.html), хотя в случае прямой записи можно ожидать 800+MB/s:

Пара слов насчет конструкции dtmax — это слайдер из трех частей, пара составляют капусулу с платой внутри, которая вставляется в полозья красной части корпуса.
С охлаждением дела обстоят не очень, его фактически нет и на длительной записи может доходить до перегрева и сброса скорости, для терабайтного обьема это более вероятно. Для улучшения я проложил пару термопрокладок и перевернул плату наоборот, что бы контроллер касался той стороны «капсулы», которая расположена снаружи.

Потребление для записи и чтения в кеш и в tlc:в цифрах:
запись slc 1.9Вт
запись tlc 2.1Вт
чтение slc 1.8Вт
чтение tlc 1.85Вт

Во время замеров поймал известный глюк sm2320, когда скорость записи упирается в 300-400МБ/с (в частности было ~350), при этом с чтением проблем нет, ~1ГБ/с. Помогло переподключение. Значит в этой версии прошивки ничего не изменилось.
При этом по потреблению видно, что запись как и положено, сначала идет в кеш, потом в tlc, и в кеш на такой скорости потребление сильно меньше. Пожалуй это даже стоит показать.
длинная полка 1.4Вт — это запись в кеш с обрезанной втрое скоростью.
Далее 1.9Вт — это запись в tlc, скорость подрезана процентов на 10.
Потом 1.8/1.85 — это чтение на полной скорости, тут проблем нет.

p.s. у трансценда для моделей со схожей аппаратной базой, в частности ESD310 есть штатное обновление прошивки с тем же результатом. Правда там бывает более медленный флеш и в малых обьемах эффект будет невелик.
Добавить в избранное
+85 +103
свернутьразвернуть
Комментарии (34)
RSS
avatar
+4
'еще с год назад активно утекать инструментарий' — начал утекать. Пропустили
avatar
+1
  • boll069
  • 28 марта 2025, 18:17
Спасибо. Даже не знал. «А чего так можно было :)», я серьезно, не знал такой возможности.
avatar
0
  • mooni73
  • 28 марта 2025, 18:31
К сожалению не смог дочитать статью: отвлекся на поиске и определении «салатового цвета». В гугле тоже оказались разночтения. Увы.
avatar
+8
  • DVANru
  • 28 марта 2025, 18:46
На всякий случай предупрежу, что описанная процедура уничтожает записанные данные, а в некоторых случаях, в том числе при неверном радиусе кривизны рук и проблемах с кармой, может привести и к полной неработоспособности устройства.
+
avatar
+2
  • Leoniv
  • 28 марта 2025, 20:19
Часто возникает необходимость перенести куда-то небольшие файлы, что удобно сделать небольшой и дешевой (чтобы не жалко было потерять) флешкой. Купил самую дешевую Smartbuy на 16 Гб. Начал копировать на нее данные — возникла ошибка. Что успело записаться — нормально читается. Но больше не пишется — типа снимите защиту от записи (??). Попробовал глянуть параметры утилитой, вот что она написала:

+
avatar
+3
  • vlo
  • 28 марта 2025, 20:41
логично, что утиль для smi не дружит с фисонским контроллером.
vlo.name:3000/tmph/ps_usb_flash_id.rar
ну или www.usbdev.ru/files/chipgenius/ www.usbdev.ru/files/usbflashinfo/
+
avatar
+2
  • Leoniv
  • 28 марта 2025, 20:59
Спасибо, сейчас вот это:

Самое странное, что на флешке нет переключателя для защиты от записи. Как она оказалась включенной — загадка. И главное — выключить нечем.
+
avatar
+2
  • vlo
  • 29 марта 2025, 00:17
могло переклинить из-за внутренних проблем.
есть такой утиль — www.usbdev.ru/files/phison/phisonwp/
старым фисонским флешкам бывает что и помогает.
+
avatar
+1
  • Leoniv
  • 29 марта 2025, 00:27
Попробовал эту утилиту. Сначала выдала такое:

Затем вынул-вставил, еще раз запустил утилиту — никаких ошибок нет, защита от записи тоже снята. Победа! Только есть одно «но» — объем флешки стал 0 байт.
+
avatar
+3
  • vlo
  • 29 марта 2025, 00:42
«не прокатило» :(
тут уже по строке get mode видно, что что-то пошло не так.
может контроллер слишком свежий, может состояние из которого это не помогает (вообще это программная защита от записи, но иногда и флажок устанавливается и при глюках).

можно пытаться прошивать его мптулами, для такой связки что-то есть, например:
www.usbdev.ru/f/index.php?topic=3515.0
но стоит-ли это возни — не уверен.
+
avatar
+5
  • Leoniv
  • 29 марта 2025, 00:47
Похоже, лучше флешку выбросить.
+
avatar
0
  • zoog
  • 29 марта 2025, 02:11
Лучше — не покупать без гарантии(
+
avatar
+1
  • vlo
  • 29 марта 2025, 02:21
бегать по гарантиям с 300рублевой флешкой нерентабельно
+
avatar
0
К сожалению, сейчас стало много продавцов, которые на это и надеются (
avatar
0
  • vlo
  • 31 марта 2025, 17:17
продавцы надеятся на такой подход отнюдь к на мелочовке.
+
avatar
0
  • RBS
  • 28 марта 2025, 21:10
Судя по графикам, небольшой кэш все таки остался. А можно ли сделать так, чтобы с первых бит запись шла напрямую? Может это еще увеличит скорость и упростит работу контроллера (и как следствие уменьшит нагрев)?
avatar
0
  • vlo
  • 29 марта 2025, 00:21
возможно какие-то прошивки реагируют на упомянутую настройку. использованная ее игнорировала. но быстрее не станет, здесь никаких аномалий от наличия кеша не видно. а потребление тут невысокое, просто сама платка мелкая, почти как у некрупных флешек.
avatar
0
  • vlo
  • 29 марта 2025, 01:27
добавил насчет потребления. хм, немного неожиданно, но в tlc даже при меньших скоростях кушает чуть больше в обе стороны.
+
avatar
+1
Мне кажется, кому нужна скорость, берут коробки на 2230/2280 и ставят свои ssd туда… А так развлечься на чем-то ненужном можно конечно.
+
avatar
0
Кому нужна скорость, берут UFSD, а с коробками заморачиваются единицы, гики и т.д.
+
avatar
+1
Весьма спорно, ИМХО скорее кроме «гиков», кто таким заморочится, приличная скорость USB носителя на сотни гигов объемом в кармане, нужна единицам.
avatar
0
Не понял, что спорно, если вы почти дословно повторили мои слова.
+
avatar
0
  • RBS
  • 29 марта 2025, 10:18
Те, кто берут флешки, делают ставку не сколько на скорость, а скорее на компактность и простоту использования. Боксы хоть и маленькие, но в комп их просто не воткнешь, нужно с собой таскать кабель. Многие флешки запросто могут выдавать стабильные 200-400Мб/с (многим пользователям этого хватит), но из-за кривых прошивок скорости падают до 50-100Мб/с.
+
avatar
0
  • vadik
  • 29 марта 2025, 15:49
Да, таскать провод не удобно. Для этого боксы в формате флешки если что. Странно что они менее популярны.
avatar
+4
  • vlo
  • 29 марта 2025, 15:52
с их шириной они все соседние разьемы перекрывают, а могут еще и упереться в выступы и вообще не влезть до конца.
а если еще и 2280 — то нехилый такой рычаг для выламывания.
avatar
0
  • vlo
  • 29 марта 2025, 13:14
найти умеренно потребляющий nvme с адекватной настройкой slc-кеша — та еще задачка.
а на 2320 бывает гиг-полтора записи. последнее правда не во «флешечном» исполнении.
+
avatar
+1
Kingston DTMaxA/512Гб — 7 тыр?! Простите, за такой прайс можно и коробку, и полноценный ssd формата 2280 взять.
avatar
+1
можно и коробку, и полноценный ssd формата 2280
Вообще-то 5 т.р., но дело не в этом, а в том, что коробочка с SSD будет крупнее, тяжелее, неудобнее, вполне возможно что горячее и медленнее, а для подавляющего большинства обычных пользователей ещё и слишком сложна. Вот за отсутствие этих недостатков деньги и берут.
avatar
0
  • AlZa
  • 30 марта 2025, 14:51
В общем, справедливое замечание. Но здесь переплачиваешь за габариты.
P.S. Забыл обновить страницу… :)
avatar
0
  • chaloc
  • 29 марта 2025, 11:11
Пользуясь случаем… а нет ли у кого дампа от BW-UP2(UP3) 256Gb. А точнее содержимого Winbond W25X20CL. Лежит такая мертвая иногда как неизвестное устройство хранения данных USB2 определяется, mptool то не видел, то прошивал с ошибками. Есть вообще возможность с нуля поднять JMS901R?
+
avatar
0
Можно ли контакты для перевода в rom mode использовать для внешнего переключателя, например, для защиты от защитника Виндовоза? Требования по питанию как в топике? На лету нельзя переключать?
avatar
+1
  • vlo
  • 29 марта 2025, 13:15
нет, для этого если и используются, то другие gpio.
+
avatar
+5
  • benomx
  • 29 марта 2025, 18:34
Эх, старею. Все еще хожу с хдд внешним. Мне хватает.
avatar
+4
Звучит, как с посохом )
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.