IPC 使用硬件邮箱。 使用了哪些信标,哪些信标仍可用?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
IPC 使用硬件邮箱。 使用了哪些信标,哪些信标仍可用?
您好!
J7平台有12个硬件邮箱实例。 即12x 16硬件邮箱队列。
硬件邮箱主要用于提供具有较小32位有效载荷的中断事件通知。每个邮箱由16个单向硬件队列组成、最多可与4个通信用户进行交互。
处理器总数= 12 (6个 R5F + 3个 DSP + 2个 MPU A72内核和 一个可选的第二个 C7x)。
所有不同集群之间没有足够的中断(12 * 4 = 48)来分隔一对处理器之间的中断(12 * 11 / 2 = 66)。
邮箱 FIFO 本身就足够了。 我们有192 (12 * 16)个 FIFO,我们只需要132 ((12 * 11)进行双工通信。
所有 RTOS 只为 Rx 使用1个中断、而没有针对 Tx 使用中断(表示"-1")。 RTOS 处理器需要11个其他 Rx 队列。
Linux 邮箱内核框架要求 Tx 中断才能运行 Tx 状态机、因此用于 Rx 和 Tx 的两个 FIFO 必须使用2个 FIFO、且每个处理器有2个用户中断。
Linux 上的用户中断将 Rx 和 Tx 多路复用到特定的处理器。
集群0至4专用于与在 A72_VM0和可选的 A72_VM1上运行 Linux 的主机进行通信。 5个集群、用于10个其他非 A72处理器。
a72-vm0 | 主- r5f0 | 主电源-r5F1 | 主- r5f2 | 主参考3 | mcu-r5f0 | mcu-r5f1 | c66x0 | c66x1 | C7x-0 | a72-vm1 | C7x-1 | |
a72-vm0 | Rx -> C1、u0、Q0 tx -> C1、u0、Q1 |
Rx -> C1、u0、Q2 tx -> C1、u0、Q3 |
Rx -> C2、u0、Q0 tx -> C2、u0、Q1 |
Rx -> C2、u0、Q2 tx -> C2、u0、Q3 |
rx -> c0、u0、q0 tx -> c0、u0、Q1 |
Rx -> c0、u0、Q2 tx -> c0、u0、Q3 |
Rx -> C3、u0、Q0 Tx -> C3、u0、Q1 |
Rx -> C3、u0、Q2 tx -> C3、u0、Q3 |
RX -> C4、u0、Q0 tx -> C4、u0、Q1 |
rx -> c0、u0、q10 tx -> c0、u0、Q11 |
RX -> C4、u0、Q2 tx -> C4、u0、Q3 |
|
主- r5f0 | RX -> C1、U1、Q1 TX -> C1、U1、Q0 |
RX -> C1、U1、Q4 TX -> C1、U1、Q5 |
Rx -> C5、u0、Q0 TX -> C6、-1、Q0 |
Rx -> C5、u0、Q1 TX -> C6、-1、Q8 |
Rx -> C5、u0、Q2 TX -> C7、-1、Q0 |
Rx -> C5、u0、Q3 TX -> C7、-1、Q8 |
RX -> C5、U1、Q4 TX -> C8、-1、Q0 |
RX -> C5、U1、Q5 TX -> C8、-1、Q8 |
RX -> C5、U1、Q6 TX -> C9、-1、Q0 |
RX -> C1、U1、Q7 TX -> C1、U1、Q6 |
RX -> C5、U1、Q7 TX -> C9、-1、Q8 |
|
主电源-r5F1 | RX -> C1、U2、Q3 TX -> C1、U2、Q2 |
RX -> C1、U2、Q5 TX -> C1、U2、Q4 |
RX -> C5、U2、Q8 TX -> C6、-1、Q1 |
Rx -> C5、U2、Q9 TX -> C6、-1、Q9 |
RX -> C5、U2、Q10 TX -> C7、-1、Q1 |
RX -> C5、U2、Q11 TX -> C7、-1、Q9 |
RX -> C5、U3、Q12 Tx -> C8、-1、Q1 |
RX -> C5、U3、Q13 TX -> C8、-1、Q9 |
RX -> C5、U3、Q14 TX -> C9、-1、Q1 |
RX -> C1、U2、Q9 TX -> C1、U2、Q8 |
RX -> C5、U3、Q15 TX -> C9、-1、Q9 |
|
主- r5f2 | RX -> C2、U1、Q1 TX -> C2、U1、Q0 |
Rx -> C6、u0、Q0 TX -> C5、-1、Q0 |
Rx -> C6、u0、Q1 TX -> C5、-1、Q8 |
RX -> C2、U1、Q4 TX -> C2、U1、Q5 |
Rx -> C6、u0、Q2 TX -> C7、-1、Q2 |
Rx -> C6、u0、Q3 TX -> C7、-1、Q10 |
RX -> C6、U1、Q4 TX -> C8、-1、Q2 |
RX -> C6、U1、Q5 TX -> C8、-1、Q10 |
RX -> C6、U1、Q6 TX -> C9、-1、Q2 |
RX -> C2、U1、Q7 TX -> C2、U1、Q6 |
RX -> C6、U1、Q7 TX -> C9、-1、Q10 |
|
主参考3 | RX -> C2、U2、Q3 TX -> C2、U2、Q2 |
RX -> C6、U2、Q8 Tx -> C5、-1、Q1 |
RX -> C6、U2、Q9 TX -> C5、-1、Q9 |
RX -> C2、U2、Q5 TX -> C2、U2、Q4 |
RX -> C6、U2、Q10 TX -> C7、-1、Q3 |
RX -> C6、U2、Q11 TX -> C7、-1、Q11 |
RX -> C6、U3、Q12 Tx -> C8、-1、Q3 |
RX -> C6、U3、Q13 TX -> C8、-1、Q11 |
RX -> C6、U3、Q14 TX -> C9、-1、Q3 |
RX -> C2、U2、Q9 TX -> C2、U2、Q8 |
RX -> C6、U3、Q15 TX -> C9、-1、Q11 |
|
mcu-r5f0 | Rx -> c0、U1、Q1 tx -> c0、U1、q0 |
RX -> C7、u0、Q0 TX -> C5、-1、Q2 |
RX -> C7、u0、Q1 TX -> C5、-1、Q10 |
RX -> C7、u0、Q2 TX -> C6、-1、Q2 |
RX -> C7、u0、Q3 TX -> C6、-1、Q10 |
Rx -> c0、U1、Q4 tx -> c0、U1、Q5 |
RX -> C7、U1、Q4 TX -> C8、-1、Q4 |
RX -> C7、U1、Q5 TX -> C8、-1、Q12 |
RX -> C7、U1、Q6 TX -> C9、-1、Q4 |
Rx -> c0、U1、Q7 tx -> c0、U1、Q6 |
RX -> C7、U1、Q7 TX -> C9、-1、Q12 |
|
mcu-r5f1 | Rx -> c0、U2、Q3 Tx -> c0、U2、Q2 |
RX -> C7、U2、Q8 TX -> C5、-1、Q3 |
RX -> C7、U2、Q9 TX -> C5、-1、Q11 |
RX -> C7、U2、Q10 TX -> C6、-1、Q3 |
RX -> C7、U2、Q11 TX -> C6、-1、Q11 |
Rx -> c0、U2、Q5 tx -> c0、U2、Q4 |
RX -> C7、U3、Q12 TX -> C8、-1、Q5 |
RX -> C7、U3、Q13 TX -> C8、-1、Q13 |
RX -> C7、U3、Q14 TX -> C9、-1、Q5 |
Rx -> c0、U2、Q9 tx -> c0、U2、Q8 |
RX -> C7、U3、Q15 TX -> C9、-1、Q13 |
|
C66x-0 | RX -> C3、U1、Q1 TX -> C3、U1、Q0 |
Rx -> C8、u0、Q0 TX -> C5、-1、Q4 |
Rx -> C8、u0、Q1 TX -> C5、-1、Q12 |
Rx -> C8、u0、Q2 TX -> C6、-1、Q4 |
Rx -> C8、u0、Q3 TX -> C6、-1、Q12 |
RX -> C8、U1、Q4 TX -> C7、-1、Q4 |
RX -> C8、U1、Q5 TX -> C7、-1、Q12 |
RX -> C3、U1、Q4 TX -> C3、U1、Q5 |
RX -> C8、U1、Q6 TX -> C9、-1、Q6 |
RX -> C3、U1、Q7 TX -> C3、U1、Q6 |
RX -> C8、U1、Q7 TX -> C9、-1、Q14 |
|
C66x-1 | RX -> C3、U2、Q3 TX -> C3、U2、Q2 |
RX -> C8、U2、Q8 TX -> C5、-1、Q5 |
RX -> C8、U2、Q9 TX -> C5、-1、Q13 |
RX -> C8、U2、Q10 TX -> C6、-1、Q5 |
RX -> C8、U2、Q11 TX -> C6、-1、Q13 |
RX -> C8、U3、Q12 TX -> C7、-1、Q5 |
RX -> C8、U3、Q13 TX -> C7、-1、Q13 |
RX -> C3、U2、Q5 TX -> C3、U2、Q4 |
RX -> C8、U3、Q14 TX -> C9、-1、Q7 |
Rx -> C3、U2、Q9 TX -> C3、U2、Q8 |
RX -> C8、U3、Q15 TX -> C9、-1、Q15 |
|
C7x-0 | RX -> C4、U1、Q1 TX -> C4、U1、Q0 |
Rx -> C9、u0、Q0 TX -> C5、-1、Q6 |
Rx -> C9、u0、Q1 TX -> C5、-1、Q14 |
Rx -> C9、u0、Q2 TX -> C6、-1、Q6 |
Rx -> C9、u0、Q3 TX -> C6、-1、Q14 |
RX -> C9、U1、Q4 TX -> C7、-1、Q6 |
RX -> C9、U1、Q5 TX -> C7、-1、Q14 |
RX -> C9、U1、Q6 TX -> C8、-1、Q6 |
RX -> C9、U1、Q7 TX -> C8、-1、Q14 |
RX -> C4、U1、Q7 TX -> C4、U1、Q6 |
RX -> C4、U1、Q4 TX -> C4、U1、Q5 |
|
a72-vm1 | Rx -> c0、U3、Q11 Tx -> c0、U3、Q10 |
RX -> C1、U3、Q6 TX -> C1、U3、Q7 |
RX -> C1、U3、Q8 Tx -> C1、U3、Q9 |
RX -> C2、U3、Q6 TX -> C2、U3、Q7 |
RX -> C2、U3、Q8 TX -> C2、U3、Q9 |
Rx -> c0、U3、Q6 tx -> c0、U3、Q7 |
Rx -> c0、U3、q8 Tx -> c0、U3、q9 |
RX -> C3、U3、Q6 TX -> C3、U3、Q7 |
RX -> C3、U3、Q8 TX -> C3、U3、Q9 |
RX -> C4、U3、Q6 TX -> C4、U3、Q7 |
RX -> C4、U3、Q8 TX -> C4、U3、Q9 |
|
C7x-1 | RX -> C4、U2、Q3 TX -> C4、U2、Q2 |
RX -> C9、U2、Q8 TX -> C5、-1、Q7 |
RX -> C9、U2、Q9 TX -> C5、-1、Q15 |
RX -> C9、U2、Q10 TX -> C6、-1、Q7 |
RX -> C9、U2、Q11 TX -> C6、-1、Q15 |
RX -> C9、U3、Q12 TX -> C7、-1、Q7 |
RX -> C9、U3、Q13 TX -> C7、-1、Q15 |
RX -> C9、U3、Q14 TX -> C8、-1、Q7 |
RX -> C9、U3、Q15 TX -> C8、-1、Q15 |
RX -> C4、U2、Q5 TX -> C4、U2、Q4 |
RX -> C4、U2、Q9 TX -> C4、U2、Q8 |
示例:RX -> C1、U1、Q1表示 Rx 中断集群1 User1和 Q1邮箱队列
我们有2个免费集群、即集群10和集群11、可供任何新增加的集群使用。
此致
M·塔伦