CORE METRICS / CANFD
CANFD
概述
CAN FD 控制器支持 CAN 2.0B 与 CAN FD 通信,可通过 BRS 在数据阶段使用高于仲裁阶段的位速率。G32S107 板级配置已完成 64 B CAN FD 帧的 IRQ、DMA 和 polling 三种收发模式验证。
性能概览
在 250 MHz CANCLK、1 Mbit/s 仲裁速率、BRS 开启的 64 B CAN FD 帧测试中,全部 5 轮通过的最高已测数据段档位:IRQ 和 DMA 均为 8.33 Mbit/s,polling 为 3.33 Mbit/s。
功能说明标称数据段最高支持 8 Mbit/s;8.33 Mbit/s 是本板级配置的实测档位,不代表额定或保证上限。
数据段速率通过情况
IRQ 和 DMA 在 9.26 Mbit/s 均只有 3/5 轮通过,10.00 Mbit/s 全部失败。Polling 在 4.17 Mbit/s 全部失败后停止扫描,更高速率未测试。
| 数据段目标速率 | IRQ | DMA | Polling |
|---|---|---|---|
| 2.00 Mbit/s | 5/5 | 5/5 | 5/5 |
| 2.50 Mbit/s | 5/5 | 5/5 | 5/5 |
| 3.33 Mbit/s | 5/5 | 5/5 | 5/5 |
| 4.17 Mbit/s | 5/5 | 5/5 | 0/5 |
| 5.00 Mbit/s | 5/5 | 5/5 | 未测试 |
| 6.25 Mbit/s | 5/5 | 5/5 | 未测试 |
| 7.81 Mbit/s | 5/5 | 5/5 | 未测试 |
| 8.33 Mbit/s | 5/5 | 5/5 | 未测试 |
| 9.26 Mbit/s | 3/5 | 3/5 | 未测试 |
| 10.00 Mbit/s | 0/5 | 0/5 | 未测试 |
每一轮发送 200 帧;每个速率档位重复 5 轮。接收帧副本须全部匹配,且测试期间不得出现 bus-off、error-passive、RX overflow 或粘滞错误,才计为通过。表中为离散目标速率档位,测试未测量实际位速率误差或精度。
每轮 200 帧总耗时
在 IRQ 和 DMA 全部 5 轮通过的最高已测档位 8.33 Mbit/s,每轮 200 帧平均总耗时分别为 23,662 μs 和 25,662 μs。
下表仅统计通过轮次的 200 帧整轮平均总耗时,不代表单帧时延。未测试项不计;各已通过配置统计 5 轮,9.26 Mbit/s 的 IRQ/DMA 仅统计 3 个通过轮次。
| 数据段目标速率 | IRQ(μs) | DMA(μs) | Polling(μs) |
|---|---|---|---|
| 3.33 Mbit/s | 44,092 | 46,104 | 79,043 |
| 7.81 Mbit/s | 24,572 | 26,576 | 未测试 |
| 8.33 Mbit/s | 23,662 | 25,662 | 未测试 |
| 9.26 Mbit/s | 22,283 | 24,277 | 未测试 |
测试条件
| 项目 | 条件 |
|---|---|
| 芯片与板级配置 | G32S10;G32S107 SK full |
| CAN 时钟 | CANCLK 250 MHz;时钟源 MPLL 1 GHz,分频值 4 |
| 帧与位速率 | CAN0 发送、CAN1 接收;仲裁段目标 1 Mbit/s;启用 BRS;64 B CAN FD 帧 |
| 收发模式 | IRQ、DMA、polling 分别测试,发送和接收使用相同模式 |
| 外部连接 | CAN0、CAN1 分别连接 CAN FD 收发器并接入同一 CANH/CANL 总线,共地 |
| 引脚复用 | CAN0_TX=PC4、CAN0_RX=PC5;CAN1_TX=PC6、CAN1_RX=PC7;均为 function 3 |
文档入口:查看 CANFD 用户手册 · 查看 CANFD SDK 文档。