MCBSP的多通道

目录:

一、channel、block、partition的概念

二、接收多通道选择模式(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.

示意图:

posted @   elar  阅读(2703)  评论(0编辑  收藏  举报
编辑推荐:
· .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语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示