KAlex 0 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба Возникла проблема с SDXC 128Gb. Для записи потока использую CMD25. С начала карты до адреса блока 0х17FFF (первые 48Мб) все прекрасно работает. В адресах от 18000 и выше происходит затык. После записи первого блока по DAT0 получаю CRC Status: '010' - Data accepted, вроде все нормально. А на второй блок карта реагирует вхождением в ступор. На DAT0 висит "1", данные не принимает. Я примерно представляю, что проблема связана с CMD20, но во всех шареварных даташитах написано: "This section is a blank for the Simplified Specification." Плиз хелп! ЗЫ. Пробовал CMD20 с нулевым аргументом, получил "BLOCK_LEN_ERROR". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба А разве не нормально, что на DAT0 выставляется сигнал BUSY для операции записи? Через полсекунды отпустит и запись продолжится дальше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба Какие еще полсекунды? У меня поток видео 4Mb/сек пишется. Написал же - проблема с картой 128G. С картами на 64G и меньше все в порядке. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба По спецификации при записи возможны паузы в полсекунды, даже если средняя скорость записи 10 МБайт в секунду (так что твои 4 МБита в секунду ни о чем не говорят). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба 4 Мбайта. Даташит в студию пожалуста! Да, в описании CMD20 есть такое. 4.13.2.8.1 Definition of Each Function (1) Start Recording This function indicates that Speed Class host starts stream recording. When the card receives CMD20 Start Recording function, the card indicates busy up to 1 second to prepare recording (Garbage collection, clean-up of internal status, etc). Но к WRITE_MULTIPLE_BLOCK это не относится. Я с SD-картами более 5 лет работаю. А вообще, разговор ни о чем. Работал с SDXC128G??? Тебе отвечать на подобные советы больше не буду. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 18 марта, 2013 Опубликовано 18 марта, 2013 (изменено) · Жалоба Не обижайся ;) Я руководствуюсь документом SD Specifications Part 1 Physical Layer Simplified Specification Version 3.01 (см. вложение). Глава 4.6.2.2 (стр. 56): While the card should try to maintain that busy indication of write operation does not exceed 250ms in the case of SDXC card, if the card is not possible to maintain operations with 250ms busy, the card can indicate write busy up to 500ms including single and multiple block write in the following scenarios: и т.д. На практике все совпадает. На некоторых карточках таких больших пауз нет, на некоторых до 750mS замечал. Так что без обид, меряться годами программирования как и языками программирования глупо, надеюсь это не наш с тобой уровень :) Part_1_Physical_Layer_Simplified_Specification_Ver_3.01_Final_100518.pdf Изменено 18 марта, 2013 пользователем Ozelot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба На практике все совпадает. На некоторых карточках таких больших пауз нет, на некоторых до 750mS замечал. C этим согласен. Паузы на некоторых картах есть, причем возникают при первых записях после подачи питания и инициализации. Затем поток пишется ровно, даже на картах 4 класса. 128-я становится в ступор навсегда, DAT0 держит пока не пересбросишь. Подозреваю, что она находится в каком-то неправильном режиме, который в "Simplified" не описан. К стати вот свежий даташит 2013г. part1_410.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 19 марта, 2013 Опубликовано 19 марта, 2013 (изменено) · Жалоба Спасибо за свежую версию спецификации. С карточками SDXC128 у меня проблем нет (аппаратная платформа NX6500), у коллеги вроде бы тоже все нормально (LPC2468). Средний объем потока данных при записи 2MB (тоже видео). Возможно это проблема или нюансы аппаратного контроллера SD-шины вашего процессора (например в используемом мной процессоре для мультиблочной записи нужно инициализировать специальный Pending-режим). Изменено 19 марта, 2013 пользователем Ozelot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба В том то и дело, что до адреса 0х18000 все работает. Проблемы в аппаратной или програмной части нет, так как SDXC64 ведет себя адекватно на всем диапазоне адресов. зы. Добился записи двух блоков подряд. Перед CMD25 подал CMD20 с параметром 0х40000000 (опять был "BLOCK_LEN_ERROR"). Но на третьем блоке опять DAT0 встал. Результат стабильный и под Jtag-ом в пошаговом режиме и в R.T. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Я CMD20 не использую. На какой частоте SD-шины работаете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба 27MHz. Чуть больше, чем по даташиту для 4 класса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 19 марта, 2013 Опубликовано 19 марта, 2013 (изменено) · Жалоба А без CMD20 в режиме мультиблочной записи карточка себя ведет аналогично? Может не стОит использовать такую специфическую команду? Изменено 19 марта, 2013 пользователем Ozelot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Да, один блок только проходит. Еще эта карта отказывается работать без ACMD23. Т.е. без ACMD23 карта ведет себя так начиная с нулевого адреса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ozelot 4 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Ух ты. А что за карточка? Может себе такую раздобуду потестить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба На морде: Kingston SDXC128GB C10 SDX10V/128GB С обратной стороны: 94514-E01.A00LF 6030120 TAIWAN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться