с разной топологией, но идентичной схемой. Процессор MIPS читает содержимое boot-flash по вполне обычному протоколу, опишу его: опускает CS#, дает 8 бит инструкцию (0х03 Fast Read), затем 24 бит стартового адреса (0х00 0х00 0х00), после этого принимает данные из флеш. Протокол предуматривает так называемые "N dummy bits" после адреса. Проблема в том, что на одной плате нет никаких dummy-bits, после адреса также по клоку сразу идут данные из флеш по линии MISO. А на второй плате после адреса есть еще 8 нулей, которые видимо и есть эти самые dummy-bits. Вторая плата в итоге не стартует.
Почему вообще на одной плате есть эти пустые биты, а на рабочей их нет? Почему они появляются и может ли быть проблема именно в них?
Возможно, протокол разные варианты запаянной флешки предусматривает. Для большинства, как понимаю, dummy bits не нужны, скорее всего, и для флешки со второй платы тоже. Слышал о них по моему только в контексте cypress'овского интерфейса (не помню как называется, аналог OSPI на их флешках). Но в софте где то поднят флаг о том, что надо их юзать. Может такое быть?)
Флешки одинаковые. До софта дело не дошло, это Boot-SPI который должен читать прошивку
Dummy bits это любое значение. Поскольку spi 2 направленный а мы читаем данные так по линии записи будут идти эти биты которые будут просто проигнорированы флеш памятью
Ну да, они этим только некую паузу выставляют перед ответом. Но для кого то эта пауза нужна, а для кого то нет(
Обсуждают сегодня