Преобразователь логических уровней "1.8V-Adapter"



  Брал на Ali, продавца советовать не буду, т.к. брал за сто с бесплатной доставкой, теперь он повысил цену и доставку требует оплатить. С этим адаптером их там много…
  Преобразователь логических уровней выполнен на трансмиттере SN74ALVC164245. Он имеет два независимых 8-разрядных канала, в каждом есть вход управления направлением передачи DIR и вход перевода входов/выходов в высокоимпендансное Z состояние OE. В каждом канале имеются два порта A и B для входов/выходов (с раздельным напряжением питания), порт А предназначен для работы с логическими уровнями 2,5..3,3V, порт В работает с уровнями 5..3,3V. При питании обоих портов от 3,3V трансмиттер обеспечивает задержку передачи со входа на выход не более 5,8ns (в обе стороны), частоту передачи до 10MHz, токи выходных каскадов не менее 24ma.

  Адаптер имеет мало деталей и простую печатную плату, восстановить схему несложно:



  В адаптере входным портом от программатора являются порты А обоих каналов (2,5..3,3V), выходным портом к Flash памяти порты В, у которых по даташиту заявлено питание от 5..3,3V. В адаптере они питаются выходным напряжением стабилизатора AMS1117, 1,8V, 1A. Возможно используются недокументированные возможности трансмиттера, упоминаний в инете о неправильной или нечеткой работе адаптера я не встречал.
  Канал 1 трансмиттера настроен на передачу от порта А к порту В, на входе 1DIR высокий логический уровень. Канал 2 настроен на прием к порту А от порта В, на входе 2DIR низкий логический уровень. Перевод входов/выходов в Z состояние отключен, на входах ОЕ обоих каналов низкий логический уровень.
  По схеме понятно, для подачи от программатора на Flash доступно пять логических линий, для приема доступна одна линия.

Возможна ли доработка, расширение функционала?

  Три передающих и семь приемных линий (3.3V <-> 1,8V) в схеме не разведены, но теоретически могут быть доступны проводочками (паять проводочки на чип с расстоянием между выводами 0,5мм, только для джедаев пайки).
  Также в адаптере не задействована половина выходного ZIF разьема с нулевым усилием (дальняя от ручки), просто выводы не разведены, но и на землю не посажены, подпаяться несложно.

P.S.

  То, что половина разьема свободна, может пригодиться, например, на материнской плате ASUS PRIME X370-A потребовалось перепрошить BIOS программатором через ISP разьем. Именно для этой платы и был заказан данный адаптер. В качестве сюрприза от ASUS оказалось, что разводка разьема ISP на материнке изменилась, пришлось делать новый кабель для перешивки. В результате получилось следующее:



  Заметно, что кабель получился с довольно сильными перехлестами, а если использовать свободную половину разьема, этого можно было бы избежать:



  Дополнительным преимуществом является то, что контакты HLD# и WP# можно подключить к VCC не напрямую, а через резисторы. На режимы SPI и DualSPI это никак не повлияет, но позволит задействовать (или отключить) режим QuadSPI (соединение HLD# и WP# напрямую с VCC не дает управлять битом Quad Enable (QE) в регистре конфигурации чипа).
  Если бит работы в Quad SPI взведён меняется назначение выводов и набор команд. VCC, GND, CLK остаются как есть, DO, WP#, DI, HOLD# превращаются в двунаправленные порты ввода/вывода, что обеспечивает многократное возрастание скорости обмена с флешкой. И соответственно блокирует ее работу в режиме SPI и DualSPI.

P.P.S.
  Ошибся в рассуждениях, Tifa обьяснил в личке. Если даже бит OE взведен, Flash автоматом в режим Quad SPI не переключится, нужно еще использовать программные инструкции для входа в этот режим.
  • +6
  • 09 февраля 2019, 18:15
  • anakost

Комментарии (10)

RSS свернуть / развернуть
Брал такой же в комплект к программатору на CH341A. На адаптере ничего не дорабатывал. А вот на программаторе добавил чипов 0.1uF между 5V-GND и 3.3V-GND. Уже шил пару биосов на 1.8V
0
Мой тоже взят дополнением к CH341A Mini Programmer для флешек биосов 1.8V. Собираюсь отделить /WR и /HOLD от +3.3V резисторами 4.7к (подсмотрел на 4PDA), а вот впо добавление конденсаторов не встречал. Вы это где то прочитали, или сами придумали?
0
Сам. 2шт с нижней стороны рядом с колодкой между подписанными PLS-контактами впаял. Еще один конденсатор между 1 и 2 контактами колодки «24 I2C EEPROM». Причина доработки — иногда флэшки читались некорректно. Теперь нормально.
0
Ошибся(так как снизу посчитал), для микросхемы это 8-7 выводы будут (VCC — 5V и WP — GND)
0
Дополнил.
0
CH341A Mini Programmer удалось вшить BIOS в материнку ASUS PRIME X370-A. С помощью PhoenixTool наготовил 6 версий, 2 не пошли. Если будет время, расскажу как и что.
0
А программный флешер SLIC не записывает?
0
Записывает, но инкапсуляция SLIC это моддинг BIOS и всегда чревата опасностью превратить материнку в «кирпич». Раньше как-то риск был меньше, теперь с блочными UEFI биосами вроде как должно быть проще, на самом деле наоборот.
Так получилось, что программным флешером я материнку «окирпичил». Все восстановить и инкапсулировать SLIC удалось SPI программатором. Начал писать статью как все делал, готова процентов на 50.
0
Недоговорил, BIOS с SLIC для ofline активации Windows 7.
0
Дополнение насчет режима Flash Quad SPI, спасибо Tifa, разьяснил.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.