
在嵌入式开发、接口调试、硬件逆向或数字存档工作中,经常会遇到各种异构、老旧或自定义数字接口协议。为了让工程师更轻松地接入、探测、控制和抓取这些接口的数据,Glasgow Embedded 社区推出了一个开源工具——Glasgow Interface Explorer。

什么是 Glasgow Interface Explorer?
Glasgow Interface Explorer 是一个面向工程师的通用数字接口探索工具,旨在帮助你:
它包括硬件板卡 + 软件框架组合,可以连接到目标设备的多种数字总线,不需要额外有源/无源前端电路,并配有一定的保护措施以应对错误操作**。
面向用户群体
这个项目面向:
几乎任何需要操控数字接口的工程师都能从它得到实用工具支持。
硬件核心能力

Glasgow 的关键特性基于可重构逻辑(CY7C68013+FPGA),使它可以:
即使是非标准、定制或者老旧的接口,也能保持高性能与高可靠性
这种灵活性是通过 FPGA 的可编程能力实现的,而不是固定硬件,因此比传统串口/逻辑分析仪更通用。
可以用 Glasgow 做什么?
Glasgow 提供多个已经封装好的“applet”(小程序),可以直接从命令行调用,或者作为更复杂系统的一部分复用。以下是部分典型用途:
发送/分析 SPI、QSPI、I²C 通信(最高约 100 MHz)
读写常见 I²C EEPROM 与 SPI Flash 存储器
读取和写入 ONFI 兼容的闪存,通过 ONFI 参数页确定内存参数
自动确定 JTAG 引脚排列,通过JTAG 接口探测符合IEEE 1149.1标准的设备
通过 JTAG 对XC9500和XC9500XL CPLD进行编程和验证

通过probe-rs调试 Arm Cortex 处理器
对 nRF24LE1 和 nRF24LU1(+) 微控制器进行编程
通过博世 BMP280/BME280传感器测量温度、压力和湿度
通过Sensirion SCD30传感器测量CO₂浓度,通过SEN5x传感器测量NOx浓度
使用 Bosch/BME280 传感器读取环境数据(温度、压力、湿度)
实时模拟/播放老式芯片声音(如 Yamaha OPLx/OPM)
…and 更多常见或冷门的数字接口交互场景。
⚙️ 所有这些功能都只需要:
📌 一块 Glasgow 板 + 📌 一些连接线 + 📌 视被测设备而定的电源。 格拉斯哥嵌入式
使用方式和工作流程
与传统工具不同:
Glasgow 的软件全部使用 Python 3 编写
FPGA 逻辑使用 Python 驱动的领域特定语言 Amaranth 编写
主机端逻辑也基于 Python(包括 asyncio)
使用 USB 进行数据交互,并在未来可能支持以太网
这种设计让 FPGA 的接口逻辑可以按请求动态生成,构建小程序比传统 FPGA 工具链要快得多。
可用链接
https://glasgow-embedded.org/
https://github.com/GlasgowEmbedded/glasgow/tree/main

总结
✔ 极其灵活的数字接口工具
✔ 基于可重构 FPGA,可即时应对不同协议
✔ 可通过 Python 与命令行无缝控制
✔ 适用范围从硬件验证、嵌入式调试到存储读取
✔ 官方文档与源码完全开源,可扩展性强
Glasgow 是一个值得关注的一体化接口探索平台,无论是想探索Amaranth语言的应用还是各种接口的应用,最主要是软、硬件联合开发的能力。
最后,这个项目还没完结,整体扩展性很高,但是目前实现的功能和tigard(主页:https://github.com/tigard-tools/tigard)差不多,而且tigard硬件成本更低~

基于FTDI FT2232H的Tigard及特点