MCBSP的多通道
目录:
二、接收多通道选择模式(Receive Multichannel Selection Mode)
三、发送多通道选择模式(Transmit Multichannel Selection Mode)
四、启用/禁用(Disabling/Enabling) VS 屏蔽/解除屏蔽(Masking/Unmasking)
一、channel、block、partition的概念
channel: a time slot for shifting the bits of one serial word。一个MCBSP通道一次可以移进或移出一个串行字。每个MCBSP有128个接收channel和128个发送channel。
block: MCBSP的128个channel被分成8个blocks。每个block包含16个channel。
partition:划分。有两种划分模式,一种是2分区模式,一种是8分区模式。如果选择2分区模式,则将偶数块(0、2、4、6)分配给A区,奇数块(1、3、5、7)分配给B区。如果选择8分区模式,则将块0~7依次分配给A~H区。
在2-partition模式中有固定分配和可变分配两种方式。
固定分配方式,就是固定的将某block分配给partition,而不改变。如下图:
在可变分配方式中,partition的A\B部分不是固定的block,可以改变:
在 8-partition方式中,8个block刚好依次分给A/B/C/D/E/F/G/H 8个partition。如下图:
二、接收多通道选择模式(Receive Multichannel Selection Mode)
MCR1的RMCM 位用了确定接收端的channel是都启用或者选择性的启用。
当 RMCM = 0, 所有128 个receive channels 全部被启用,并且其中任意一个都不可被禁用。
当 RMCM = 1, receive multichannel selection mode 被启用,可以选择使用128个channel中的任意个。
三、发送多通道选择模式(Transmit Multichannel Selection Mode)
XCR2的XMCM 位决定了发送端的channel是都启用或者选择性的启用。
MCBSP有三种发送多通道选择模式,如下表所示:
四、启用/禁用(Disabling/Enabling) VS 屏蔽/解除屏蔽(Masking/Unmasking)
1、在传输时,一个channel可以处于如下三种状态之一:
1)启用且未被屏蔽(Enabled and unmasked)。在这种情况下,传输可以开始并且可以完成。
2)启用单被屏蔽(Enabled but masked)。在这种情况下,传输可以开始,但无法完成。
3)禁用(Disabled)。在这种情况下,传输无法开始。
2、启用(enable)、禁用(disable)、屏蔽(masking)与非屏蔽(Unmasking)的定义
1)Enabled channel
定义:A channel that can begin transmission by passing data from the data transmit register(s) (DXR(s)) to the transmit shift registers (XSR(s)).
示意图:
2)Disabled channel
定义:A channel that is not enabled. A disabled channel is also masked.
3)Masked channel
定义:A channel that cannot complete transmission. The DX pin is held in the high-impedance state; data cannot be shifted out on the DX pin.
示意图:
4)Unmasked channel
定义:A channel that is not masked. Data in the XSR(s) is shifted out on the DX pin.
示意图:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构