Wi-Fi单核处理器的最低频率评估

需求评估当把Wi-Fi协议栈及无线报文处理放到一个独立的CPU核上的时候,对CPU的主频要求,本文档根据数据处理的使用指令数在理论指令总数中的占比,给出一个经验模型来对CPU的频率要求做一个粗略的评估。该模型还需要进一步的验证完善。

计算公式

当CPU仅用做Wi-Fi报文处理时,可以用以下公式来计算CPU的理论占用情况,反过来也可以用该公式推演在达到极限吞吐量的情况下,已知DMIPS的CPU需要的工作频率。

α = RTP ÷ ((DMIPS × CPUFREQ ÷ PerPkt_Instruction_Num) × PerPkt_size × 8)

α: 报文处理指令的CPU指令占用率,一般在单核上用单线程系统处理报文的时候,理想状态下满载是,系统指令的CPU占用率的经验值是5%左右,所以α的极限值应该在95%左右

RTP: 期望(或实测)的Throughput(Mbps)

DMIPS: CPU data sheet 提供的CPU DMIPS值

CPUFREQ: 当前CPU工作主频

PerPkt_Instruction_Num 报文处理流程中完成每笔包处理需要的总CPU指令数,64Byte小包的经验值是4000条指令,1500Byte大包的经验值是8000条指令

PerPkt_size: 每笔报文大小(MSDU)

模型验证

以Quantenna的ARC600架构的单核产品来验证上述模型

RTP: 1500Mbps (QTN该产品实测UDP TX Throughput)

DMIPS: 1.7 (ARC600 Datasheet)

CPUFREQ: 550MHZ (ARC600 Datasheet)

PerPkt_size: 1518 Byte(测试环境设定)

PerPkt_Instruction_Num: 7200(QTN profiling value)

代入公式可得 α= 95.1%

该结果比较符合模型预期及经验数值,但该产品有极少部分报文会offloading到其他core,所以实际α值应该略低于95%

代入ARMS推演

以Cortex-M0作为推演对象

RTP: 产品规划100Mbps

DMIPS: 0.87 (CPU Datasheet)

CPUFREQ: 待推演

PerPkt_size: 1518 Byte

PerPkt_Instruction_Num: 8000(experience value)

α: 90% (保守以90%计算)

代入公式,可以得出CPUFREQ = 84.13MHZ

假设CPU还需要保留30%的CPU带宽供APP使用,则CPUFREQ = 84.13 ÷ 0.7 = 120.18MHZ

以Cortex-M33作为推演对象

DMIPS: 1.5 (CPU Datasheet)

代入公式,可以得出CPUFREQ = 48.80MHZ

假设CPU还需要保留30%的CPU带宽供APP使用,则CPUFREQ = 48.80 ÷ 0.7 = 69.71MHZ

Notes

         * 多核协作处理报文的情况下,DMIPS 需要乘以核心数。

         * 在单核单线程系统的情况下,评估只需要考虑TX/RX单方向,取系统负载较重的一个方向即可。

         * Arm Cortex-M Comparison Table

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值