Single Wire Aggregation

PCB congestion relief using FPGAs for signal aggregation and transmission over single wire

PCB design challenges – In many systems processors use multiple interfaces including I2C, GPIO, I2S and UART to collect data from peripherals and sensors. In some of these systems PCB real estate is a premium in addition designers are going with smaller PCBs that connect together to fit into neat looking industrial designs. Routing signals through congested PCBs and connectors presents some challenges.

FPGA based solution – The Single wire Aggregation reference design runs on two iCE40 UltraPlus FPGAs to aggregate multiple data streams such as I2C, UART, I2S and GPIO in TDM fashion by one FPGA and send it over a single wire to the other FPGA for de-aggregation back to the same set of streams.

Flexible & robust options – The single wire communication between the FPGAs is around 7.5 Mbps. The design is also configurable, the number of I2C/I2S busses and GPIOs and single wire protocol packet length can be adjusted. The single wire protocol between the FPGA is robust with error detection and retry features.


  • Up to 7 channels can be aggregated
  • Raw data rate on single wire is ∼7.5 Mbps or higher
  • Variable packet length for efficient use of the single wire bandwidth
  • Retransmit feature is offered when parity error is detected on RX side
  • Supports I2C Fast-mode (400 kbps) and Fast-mode Plus (1 Mbps)
  • I2C Interrupt can be realized by GPIO with event-based transmission
  • I2S supports single stereo channel, 48K hz sampling rate, up to 32 bits per sample with bi-directional support

Block Diagram


Technical Resources
Single Wire Aggregation Radiant - Source Code
1.1 9/28/2018 ZIP 2 MB
Single Wire Signal Aggregation - Documentation
FPGA-RD-02039 1.1 9/28/2018 PDF 999 KB

Like most websites, we use cookies and similar technologies to enhance your user experience. We also allow third parties to place cookies on our website. By continuing to use this website you consent to the use of cookies as described in our Cookie Policy.
博狗真人首页 宣汉县| 正镶白旗| 普洱| 浏阳市| 湟源县| 宁阳县| 梨树县| 商洛市| 合阳县| 沙坪坝区| 博白县| 长丰县| 洛浦县| 黄平县| 扶绥县| 常宁市| 正定县| 循化| 咸阳市| 鞍山市| 福州市| 定远县| 清徐县| 渭南市| 确山县| 榆林市| 罗江县| 喀喇| 建宁县| 鹤山市| 化隆| 象州县| 澄迈县| 乾安县| 巴塘县| 吉隆县| 邵阳县| 肥东县| 梁平县| 胶州市| 扎鲁特旗| 桓台县| 哈巴河县| 金秀| 庐江县| 城口县| 上犹县| 洛扎县| 兴仁县| 桐乡市| 文水县| 桐城市| 盈江县| 深水埗区| 晋宁县| 文安县| 综艺| 景宁| 庆元县| 布尔津县| 蓬溪县| 本溪市| 通州区| 隆德县| 广安市| 合肥市| 分宜县| 拉萨市| 筠连县| 托里县| 六枝特区| 元阳县| 刚察县| 海盐县| 漯河市| 保山市| 泸水县| 万宁市| 万源市| 布拖县| 乌兰察布市| 通州区| 曲阜市| 凤台县| 历史| 兰州市| 固镇县| 固原市| 陇川县| 和顺县| 马尔康县| 科尔| 简阳市| 长岛县| 武山县| 泰来县| 广汉市| 克东县| 油尖旺区| 丰城市| 新营市| 兴安县| 资阳市| 婺源县| 天全县| 深圳市| 洞头县| 合阳县| 镇平县| 温泉县| 白沙| 无极县| 新乡市| 从江县| 四川省| 蕲春县| 连云港市| 绥中县| 防城港市| 永顺县| 常宁市| 武义县| 阿合奇县| 中江县| 射阳县| 丽水市| 化隆| 新晃| 洪泽县| 偏关县| 桓仁| 阳朔县| 金门县| 江山市| 清水河县| 尼玛县| 望谟县|