痞子衡嵌入式:恩智浦i.MX RT1xxx上特色外设XBAR那些事(1)- 初识
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列上的XBAR外设。
得益于 Arm Cortex-M 内核的普及,现如今 MCU 厂商遍地开花,只要能取得内核授权,再去 OpenCores 开源网站或者直接第三方 IP 公司买一些通用的外设模块拼拼凑凑就能快速设计出一颗最基础的 MCU,但是这样的 MCU 在市场上显然竞争力不够,那么如何才能增加产品本身的竞争力呢?那就需要再给 MCU 附上独一无二的特性。
恩智浦公司深耕半导体行业几十年,无数工程师呕心沥血设计出了非常多稳定又可靠的外设模块,其中既有行业通用的基础外设(即使是基础外设,也包含了独特功能),也有独属于恩智浦的"浪漫"外设,正是这些外设构筑起了恩智浦 MCU 的行业地位。
如果要票选出恩智浦 MCU 里最“浪漫”外设,本文要介绍的 XBAR 必定会在入围名单里。本系列痞子衡将会带大家逐步深入探究 XBAR 模块,领略她的独特魅力。本文是第一篇,我们先来对她有个感性认识。
一、XBAR外设来源
熟悉 i.MXRT 尤其是 RT1xxx 产品的朋友应该都知道该系列脱胎于 i.MX6 处理器平台,XBAR 是 RT1xxx 上必备外设,然而 XBAR 并不存在于 i.MX 上,看到这你可能以为 XBAR 是在 i.MX RT 上全新设计的,但其实并不是!
如果你对恩智浦(尤其是飞思卡尔)足够了解,你会在 MC9S08 系列、MC56F8xxx 系列、Kinetis KV/KM 系列、S32 汽车平台、MPC5xxx 系列等多个产品上看到 XBAR 倩影,这其实是一个非常经典的外设。
如果非要找出最早引入 XBAR 模块的产品,极有可能是十几年前飞思卡尔推出的 DSC 系列 MC56F82xx。DSC 产品主要面向电源转换、电机控制市场,产品内部有多通道 ADC 以及各种类型 Timer,从这里可以初步推测 XBAR 非常适用与这些外设配合使用。

二、什么是XBAR?
XBAR 是 Inter-Peripheral Crossbar Switch 的简称,可以理解为是在指定的片内外设信号以及 I/O 之间加了一个交叉开关矩阵,可以自由地连接它们的输入输出。下图是最简单的 RT1010 上 XBAR 实现:
黄色框图统称交叉开关网络,由 XBAR 和 AOI 组成,黄框左边是全部的输入信号源,右边是全部的输出信号。XBAR 的每个输出选项均可配置来自于任一输入源,此外同一输入源可以同时配置给多个输出信号。
- Note:AOI 是 And-Or-Inverter 的缩写,也就是与非门,AOI 可以进一步丰富 XBAR 输入信号的组成形式。

实际上这个整体系统框图已经可以让我们初步感受到 XBAR 的作用了,我们不妨大胆猜想 XBAR 如下应用场景,后续文章痞子衡将带大家逐一探索这些场景。
- 场景1:将输入输出两端 I/O PAD 直连形成通路(注意可能会有传输延时)
- 场景2:将 FlexPWM1 信号连到 I/O PAD 上(假设这个 I/O 本身不具备 FlexPWM 复用功能)
- 场景3:将 PIT 信号连到 LPI2C/SPI/UART 模块定时触发传输
- 场景4:将 ADC 数据送到 eDMA (多通道数据放在不同地址)
- 场景5:将输入输出两端 eDMA 通道级联 (最多可实现4级)
- 场景6:将外设触发信号连到 XBAR 中断(用于调试时观测)
至此,恩智浦 i.MXRT1xxx 系列上的 XBAR 初步介绍痞子衡便介绍完毕了,掌声在哪里~~~
欢迎订阅
文章会同时发布到我的 博客园、CSDN、微信公众号、知乎、与非网、电子技术应用AET、电子星球、51CTO 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

痞子衡嵌入式:恩智浦i.MX RT1xxx上特色外设XBAR那些事(1)- 初识的更多相关文章
- 痞子衡嵌入式:解锁i.MXRTxxx上FlexSPI模块自带的地址重映射(Remap)功能
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT三位数系列隐藏的FlexSPI Remap功能. 前段时间痞子衡写了一篇文章 <利用i.MXRT1060,1010上新 ...
- 痞子衡嵌入式:在i.MXRT1060-EVK上利用memtester程序给SDRAM做压力测试
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是在i.MXRT1060-EVK上利用memtester程序给SDRAM做压力测试. 我们知道恩智浦i.MXRT1xxx系列是高性能MCU ...
- 痞子衡嵌入式:实测i.MXRT1010上的普通GPIO与高速GPIO极限翻转频率
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1010上的普通GPIO与高速GPIO极限翻转频率. 上一篇文章 <聊聊i.MXRT1xxx上的普通GPIO与高速GP ...
- 痞子衡嵌入式:在i.MXRT1170上启动含DQS的Octal Flash可不严格设Dummy Cycle (以MT35XU512为例)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是Octal或Hyper Flash上DQS信号与Dummy Cycle联系. 关于在 i.MXRT 上启动 NOR Flash 时如何设 ...
- 痞子衡嵌入式:揭秘i.MXRT1170上串行NOR Flash双程序可交替启动设计
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170上串行NOR Flash双程序可交替启动设计. 在上一篇文章 <i.MXRT1060/1010上串行NOR F ...
- 痞子衡嵌入式:聊聊i.MXRT1xxx上的普通GPIO与高速GPIO差异及其用法
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT上的普通GPIO与高速GPIO差异. GPIO 可以说是 MCU 上最简单最常用的外设模块了,当一些原生功能外设接口模块不能 ...
- 痞子衡嵌入式:揭秘i.MXRT1170上用J-Link连接复位后PC总是停在0x223104的原因
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170上安全调试策略实现对JLink调试的影响. 痞子衡之前写过一篇旧文 <i.MXRT600的ISP模式下用J-L ...
- 痞子衡嵌入式:关于i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区. 关于串行四线NOR Flash,当其作 ...
- 痞子衡嵌入式:理解i.MXRT中FlexSPI外设lookupTable里配置访问行列混合寻址Memory的参数值
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT中FlexSPI外设lookupTable里配置访问行列混合寻址Memory的参数值. 关于 FlexSPI 外设的 loo ...
- 痞子衡嵌入式:高性能MCU之人工智能物联网应用开发那些事 - 索引
大家好,我是痞子衡,是正经搞技术的痞子.本系列痞子衡给大家介绍的是高性能MCU之人工智能物联网应用开发相关知识. 恩智浦半导体2017年开始推出的i.MX RT系列跨界处理器,这种高性能MCU给嵌入式 ...
随机推荐
- 基于Pamion的流实数仓架构
目录 1. 背景 2. 目标 3. Pamion 的概念和设计 3.1 架构 3.2 统一存储 3.3 基础概念 3.3.1 文件布局 3.3.2 Snapshot 3.3.3 Manifest 文件 ...
- superset 图表加水印
转载wenqiang1208的文章 superset 作为一个数据可视化的工具,其中的图表,报表数据是非常敏感的,为了防止数据外泄,大部分公司需要在敏感图表上加上水印. 本篇文章有2种方式去介绍如何在 ...
- BackupBuddy pg walkthrough Intermediate
nmap ┌──(root㉿kali)-[~/lab] └─# nmap -p- -A 192.168.189.43 Starting Nmap 7.94SVN ( https://nmap.org ...
- 使用天翼云云容器引擎CCE创建简单nginx服务
本文分享自天翼云开发者社区<使用天翼云云容器引擎CCE创建简单nginx服务>,作者:b****n 一.创建一个nginx应用. 1.选择资源池,如[杭州2],进入云容器引擎CCE平台页面 ...
- P9869 [NOIP2023] 三值逻辑 题解
NOIP2023 T2 三值逻辑 题解 题面 思路 乍一看好像很并查集,而且不太难,但是, 注意到:按顺序运行这 \(m\) 条语句 事情并没有那么简单. 比如说如下情况: x1:=T x2:=x1 ...
- 浅说 c++20 cppcoro (三)
浅说 c++20 cppcoro (三),https://www.cnblogs.com/bbqzsl/p/18679860 接着上一篇浅说 c++20 coroutine (二) ,继续没说完的事. ...
- mongo数据库CPU使用率飙高及优化
出现的情况 某天高高兴兴上班,发现一台mongo数据库负载较高,达到了300多,且一直很稳定,难道是硬件过时了. 检查主机的资源使用发现一个mongod进程使用了几乎所有的CPU资源. top - 1 ...
- [JOISC2019] 聚会 题解
随机化好题,但是不会证. 考虑把树看成一条链,链的每个点上缀了一棵树. 那么先随机出两个点 \(x,y\)(实际上随机一个点,另一个点固定似乎更好?),然后对于当前这棵树上的任意点 \(z\),都让他 ...
- 怎么证明二元函数的极限是多少?& 怎么证明二元函数的极限不存在?
怎么证明二元函数的极限是多少:https://zhaokaifeng.com/16589/ 怎么证明二元函数的极限不存在:https://zhaokaifeng.com/16600/
- docker - [10] 容器数据卷
将应用和环境打包成一个镜像,然后发布启动就成为一个容器了. 一.什么是容器数据卷 容器数据卷(Container Data Volumes)是Docker管理的一种特殊类型的存储区域,它为容器提供 ...