Demo:cks

来自Bouffalo Lab Docs
武楷轩留言 | 贡献2025年8月6日 (三) 08:09的版本 (创建页面,内容为“== 介绍: == 这部分 Demo 主要测试了开发板上的软件和硬件 CheckSum 也就是校验和。 保存在 SDK 下的:'''bouffalo_sdk/examples/peripherals/cks 。''' == Demo:cks_dma == === 测试内容 === # '''软件校验和计算''':使用 <code>sw_chksum</code> 函数通过纯软件方式计算校验和。测试软件计算校验和的时间和结果。 # '''硬件校验和计算''':使用 <code>bflb_cks_compute</code> 函数通过硬…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

介绍:

这部分 Demo 主要测试了开发板上的软件和硬件 CheckSum 也就是校验和。

保存在 SDK 下的:bouffalo_sdk/examples/peripherals/cks 。

Demo:cks_dma

测试内容

  1. 软件校验和计算:使用 sw_chksum 函数通过纯软件方式计算校验和。测试软件计算校验和的时间和结果。
  2. 硬件校验和计算:使用 bflb_cks_compute 函数通过硬件模块计算校验和。测试硬件计算校验和的时间和结果。
  3. DMA(直接内存访问)辅助的硬件校验和计算:使用 DMA 将数据传输到硬件校验和模块,并通过 bflb_cks_compute 计算校验和。测试 DMA 辅助硬件计算校验和的时间和结果。

示例输出

CKS normal case:

--->>> case1 test
Pass
Pass

--->>> case2 test
Pass
Pass

--->>> case3 test
Pass
Pass

--->>> case4 test
Pass
Pass

--->>> case5 test
software checksum time=5us
sw_cks is 61b8
hardware checksum time=2us
hw_cks is 61b8
Pass

end

Demo:cks_normal

测试内容

  1. 校验和计算的正确性:验证硬件校验和计算结果是否与预期值一致。比较硬件校验和与软件校验和的结果。
  2. 大小端模式的支持:测试硬件校验和模块在小端(Little Endian)和大端(Big Endian)模式下的计算结果。
  3. 性能测试:测试硬件校验和与软件校验和的计算时间,比较两者的性能差异。
  4. 多数据段校验:测试硬件校验和模块对多段数据的累加校验功能。

示例输出:

CKS normal case:

--->>> case1 test
Pass
Pass

--->>> case2 test
Pass
Pass

--->>> case3 test
Pass
Pass

--->>> case4 test
Pass
Pass

--->>> case5 test
software checksum time=5us
sw_cks is 61b8
hardware checksum time=2us
hw_cks is 61b8
Pass

end