nabbla (nabbla1) wrote,
nabbla
nabbla1

Category:

Открытый сток из кингстонов

Никогда схема правильно не заработает, пока её осциллографом не истыкаешь. Никакое чтение сотен страниц документации от этого не спасёт.

В протоколе SPI никогда отроду открытый сток не водился - каждое устройство должно иметь выход с 3 состояниями - пока nCS=1, ножка "болтается в воздухе", а когда nCS=0 - подаётся либо чёткий "0", либо "1".

В даташите на саму карту памяти есть такая вот картинка:


Они чёрным по белому пишут, что выход ДВУХТАКТНЫЙ (они обозвали это Push-Pull, P/P), а подтягивающий резистор нужно на неподключённый вывод, чтобы "не болтался в воздухе".

И на форумах раз за разом говорили - подтягивающие резисторы не нужны, всё так работает. Но вот это что тогда такое???



Да, я вчера решил успокоиться немного, уйти пораньше (в 8 вечера) и закупить разнокалиберных карточек. А что, по крайней мере они у меня не сгорают, и то радость, потом раздарю - вещь всяко в хозяйстве полезная :) Да и обошлось всё вместе примерно в тыщу рублей, подешевели они неплохо.



А сегодня расчехлить, наконец, осциллограф. Вообще-то, я грешил на просадку напряжения питания, что-нибудь в этом роде. У меня-то частота 100 кГц пока что, но может внутри карты большой ёмкости идут какие-то внутренние процессы, очень прожорливые (сотни мА она вообще может жрать не раздумывая) и очень быстрые.

Но нет, питание оказалось чистейшим - не просаживается, не загрязняется, всё как надо. Сигналы SCK (меандр 100 кГц) и MOSI (данные от ПЛИС в карточку) тоже произвели впечатление - чётко между 0 и 3,3 вольтами, очень крутые фронты и спады, никаких проблем.

Но вот с MISO полный швах, причём во всех из 4 карт, которые я успел проверить.

Так оно выглядит в карте SanDisk на 16 ГБ. Синяя кривая - nCS, по ней делается синхронизация осциллографа, по первому спаду. Желтая - MISO. на "картинке для привлечения внимания" (выше) - пресловутый Кингстон.


чуть дальше:


А так в ADATA на 32 ГБ:


А вот так в Silicon Power на 8 ГБ:


Выглядит так, будто бы где-то присутствует RC-цепочка с довольно большим R и маленьким C. Возможно даже, ей служит сам вход осциллографа! (совершенно точно, что осциллограф ОКАЗЫВАЕТ ВЛИЯНИЕ, причём ПОЛОЖИТЕЛЬНОЕ - без него вообще большинство карт не работали, а тут вдруг начинали работать ПОЧТИ НОРМАЛЬНО). Пока nCS=1, мы из чувства прекрасного коммутируем MISO на лог. 1, чтобы "не болталась в воздухе", и конденсатор заряжается до упора. А потом он худо-бедно поддерживает напряжение, а резистор не позволяет ему разрядиться от первого же "нуля". Как результат, короткие команды отрабатываются корректно, а вот на длинных, особенно на выдаче данных всё нарушается, мы уходим в сплошные нули...

Почему оно так - возможно, что основным режимом работы стал низковольтный, именно на низкое напряжение скоммутирован "верхний" транзистор, а в режиме SPI они его просто отключают. Чего не знаю, того не знаю.

Ладно, попробую поставить подтягивающий резистор и посмотрю, что из этого выходит. Номинал пока не соображу. Пожалуй, это будет 1,8 кОм, чтобы ток через карточку был чуть менее 2 мА. Но до 25 МГц такая схема уже не разгонится...


Ps. Сейчас подумалось - может у них хитрая bootstrap схема, которая от небольших подтягивающих резисторов подзаряжает конденсатор для питания выходного каскада, благодаря чему она автоматически подстраивается под то напряжение, на котором функционирует хост. Тогда осциллограммы будут похожи на то, что я наблюдаю. На одних паразитных емкостях он бы сотни микросекунд не протянул бы...
Tags: ПЛИС, работа, странные девайсы
Subscribe

  • Мышки плакали, кололись,

    но продолжали смотреть Доктора Кто... Что-то не то, всё-таки. Какая-то бессмыссленность происходящего, простые сюжеты. Расизм - это плохо, экология…

  • И ещё о 13-й докторе

    В воскресенье вышла первая серия, посмотрел это дело. Да в общем, нормально, вполне себе "Доктор Кто". Вот она, компаньон моей мечты - ЯЯЯЯЗЬ!…

  • Великая Октябрьская резня бензопилой

    Сегодня прокатился прочистить Абрамцевскую просеку. Как обычно, с приключениями. Выезжал на велосипеде, а вернулся на самокате. Первый раз по этим…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your IP address will be recorded 

  • 9 comments