STMCU小助手
发布时间:2021-12-7 11:00
|
1.ART加速 % r" C2 I2 u9 Q! ~
( P8 R: a; m' u/ Y ART在Flash之前,ART加速可以提高Flash的读取运行速度。# T5 q, R* O$ o% g& N0 V- u( G* q ➢ 程序实现(任选一种):) b7 h6 f: W9 f* E% ^ 1,使用库函数(HAL): __HAL_FLASH_INSTRUCTION_CACHE_ENABLE(); __HAL_FLASH_DATA_CACHE_ENABLE();! n+ D2 K0 s, _) v& l, n s 2,寄存器操作:) M& X" ?1 {3 |* X y2 |) V' O FLASH->ACR |= (1<<9);//将第9位置1 FLASH->ACR |= (1<<10);//将第10位置1
如果要将时钟跑到170MHz,需要设置到Rang1 Boost模式 2.CCM SRAM
CCM SRAM直接连接到 I-Bus ,D-Bus中,可以提升关键代码的速度,建议可以将关键代码放在这个区域。( A3 o2 V, n. {4 P& ]: z 8 b6 H; K& y* r$ r6 t 3.CoreMark测试- G# g: [7 k0 o8 B • CoreMark是一项测试处理器性能的基准测试. e! S E, }+ U3 u • 代码使用C语言写成,包含:列举,数学矩阵操作和状态及CRC等运算法则2 e1 p! l2 C% v0 | f • 目前CoreMark已迅速成为测量与比较处理器性能的业界标准基准测试0 i! K Y( H& P; O% E6 e, C • CoreMark的得分越高,意味着性能更高 • CoreMark官网的连接地址:http://www.eembc.org/coremark/index.php。 ( W8 L/ @: R# r- F
_& ?0 u7 n* B1 z 比较处理器的时候,不要单看主频,还需要了解综合的实力,有的处理器主频虽高,但是没有太大的用。6 d- P- O+ l% v 5 J3 L% t- f2 q, q 4.浮点运算 能提高运算精度,减少运算转化之间的损失,做算法类的项目需要用到的比较多。& x2 v, v1 P. E- @' R3 E4 Y- i" S( m
! I' j9 m3 D/ t- [" @ 注意:除法和开方的运算周期过长,如无必要,尽量不要用,尽量将其转化为运算周期较少的加减乘运算. L; t' A2 J' j6 q/ g
' d/ F8 W& q4 f. D5 i" T3 b* I 浮点运算实例: 一般需要在运算结果前写上(float)或者标注f,否则一律认为其为双精度,将会大大增加运算的时间。 u- V( X" ~/ N. W& i( ~$ o 浮点运算-FIR(滤波运算). g, r: c( |$ k' g+ l L 在这里插入图片描述0 u2 I9 A5 q7 \* @1 O9 A 5 v' y R" g3 Y* I& x, h" x
9 X) {4 d" m8 S7 k8 J9 P# p f% |
& g# A2 q1 i8 ]; D 先看内核再看主频,才能判断效率,比如F1和F3都是72M的主频,可是F3是M3的内核,比M1的FIR运算快了7倍!!!!' C% n4 c6 ]# K" h ' k6 f, m: P+ I ^2 r) s- g2 g7 O |
STM32G47x 双 Bank 模式下在线升级
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【经验分享】STM32G4之基本定时器
NUCLEO-G474RE 扩展 LSM6DSO 传感器数据融合实操演示全解析
经验分享 | STM32G474 高精度定时器同步功能全解析 从内部互联到多芯片协同的实现方案
经验分享 | STM32G4双BANK启动应用演示
STM32G4 LPTIM+DMAMUX 实现并行输出应用示例
实战经验 | LAT1578 SAU对NSC分区的影响
经验分享 | STM32G474 HRTIM Triggered-half模式实现两相交错电源180°相位同步方案
STM32大神笔记,超详细单片机学习汇总资料
微信公众号
手机版