В последние месяцы мы видели несколько довольно интересных плат для аппаратных хакеров и реверс-инженеров, таких как USB-отладочные платы Ollie и Tigard, которые позволяют взаимодействовать с различными аппаратными интерфейсами и/или прошивать прошивку на различные типы целевых плат.
Вот еще одна – Glasgow Interface Explorer – плата, основанная на Lattice Semi iCE40 FPGA, описывается как «предназначенная для проектировщиков оборудования, реверс-инженеров, диджитал-архивариусов, любителей электроники и всех, кто хочет минимизировать трудности в обращении с широким спектром цифровых устройств».
Технические характеристики Glasgow Interface Explorer:
- FPGA – Lattice Semiconductor iCE40HX8K FPGA
- USB – 1x порт USB-C, подключенный к высокоскоростному интерфейсу USB FX2 с пропускной способностью 480 Мбит/с
- Разъемы ввода/вывода
- 2x 8-канальных банка ввода/вывода с 16 гибкими вводами/выводами
- Каждый банк ввода/вывода поставляется с
- Специальный программируемый линейный стабилизатор напряжения, настраиваемый от 1,8 В до 5 В и обеспечивающий мощность до 150 мА
- Специальный сенсорный АЦП, способный контролировать напряжение и ток банка ввода/вывода, с настраиваемыми порогами срабатывания прерывания
- Каждый ввод/вывод поддерживает частоту до 100 МГц и обеспечивает:
- Специальный переключатель уровня напряжения с индивидуальным контролем направления
- Выделенный повышающий/понижающий резистор 10 кОм с программным управлением
- Диоды защиты от электростатического разряда для всех входов/выходов
- Каждый банк ввода/вывода поставляется с
- Дополнительный набор из 14хдифференциальных пар входов/выходов, подключенных напрямую к FPGA для высокоскоростных интерфейсов
- 2x 8-канальных банка ввода/вывода с 16 гибкими вводами/выводами
- Выделенный разъем SYNC
- Разное – 5х светодиодных индикаторов пользователя, 5х светодиодных индикаторов состояния
Как мы видели на других платах iCE40, FPGA можно программировать с помощью различных инструментов FPGA с открытым исходным кодом, включая Yosys, nextpnr, и icestorm. 1BitSquared, компания, стоящая за проектом, использует эти проекты вместе с nMigen, чтобы предоставить простой в использовании Python API для платы:
Glasgow Interface Explorer написан на Python 3. Логика интерфейса, работающая на FPGA, описывается с помощью nMigen, который является предметно-ориентированным языком (DSL) на основе Python. Вспомогательный код, работающий на главном компьютере, написан на Python с использованием asyncio.
Итак, высокоуровневая программно-аппаратная архитектура систем выглядит следующим образом.
На Github вы найдете все, что вам нужно, включая файлы дизайна оборудования, прошивку, программное обеспечение и документацию. Поскольку плата основана на FPGA, она очень гибкая, и список того, что вы можете сделать с платой, довольно длинный:
- Стандартные протоколы
- Связь через стандартный UART
- Инициировать транзакции через SPI или I²C
- Логический анализатор, генерирующий файл VCD для анализа с помощью GTKWave или Sigrok
- Чтение и запись EEPROM 24-й серии, Flash-памяти 25-й серии, ONFI-совместимой флэш-памяти, параллельных EPROM 27/28/29-й серии, EEPROM и флэш-памяти,
- Интерфейсы программирования и отладки микроконтроллера / процессора
- Программирование и проверка микроконтроллеров AVR с интерфейсом SPI,
- Автоматически определять неизвестную распиновку JTAG
- Отладка процессоров ARC через JTAG,
- Отладка некоторых процессоров MIPS через EJTAG,
- и т.д….
- Интерфейсы программирования битового потока FPGA/CPLD, например, программирование и проверка CPLD XC9500XL через JTAG
- Радиоинтерфейсы – общение с использованием радиомодулей nRF24L01 (+), программирование микроконтроллеров nRF24LE1 и nRF24LU1 (+)
- Интерфейсы датчиков для измерения данных от температуры
- Дисплей и видео интерфейсы
- Аудио интерфейсы
- … и список не окончательный.
Glasgow Interface Explorer запущен на Crowd Supply, где вы за 139 долларов, можно получить последнюю версию платы RevC вместе с полным набором кабелей flywire, синхронизации и USB-C. Есть также дополнительный корпус из фрезерованного и анодированного алюминия с ЧПУ, который стоит 50 долларов. Доставка в США бесплатна и будет зависеть от веса и пункта назначения в другие страны. Отгрузка запланирована на 31 мая 2021 года. Программно-аппаратная архитектура систем уровня выглядит следующим образом.
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.