1. 快速存储器的利用
定义:嵌入式系统中通常存在多种类型的存储器,包括高速缓存(Cache)、SRAM(静态随机存取存储器)和DRAM(动态随机存取存储器)等。高速缓存和SRAM的访问速度远高于DRAM。
实时控制系统若需要频繁访问一个小型的数据表。为了提高性能,可以将这个数据表放在高速缓存或SRAM中,而不是DRAM中。这样,每次访问数据表时,都不需要经过较慢的DRAM,从而显著减少了访问时间。
2. 数据对齐
定义:数据对齐是指确保数据在内存中的地址能够与处理器的字边界对齐。这对处理器来说很重要,因为不对齐的访问会导致额外的内存读取操作,从而降低性能。
处理器支持32位的内存访问,但在一个不对齐的地址处存储了一个32位整数。这可能会导致处理器需要进行两次16位的内存访问来读取这个整数,而不是一次32位的访问。为了避免这种情况,应该确保所有32位整数都位于32位边界上。
3. 代码对齐和缓存优化
定义:除了数据对齐之外,代码也需要对齐,以充分利用处理器的缓存行。代码对齐可以确保函数入口点和其他关键位置对齐到缓存行的边界。
若系统中有一个经常被调用的函数,它位于内存中的一个不对齐的位置。这可能会导致每次调用该函数时,处理器需要从缓存中获取多个缓存行,而不是只获取一个。通过将函数的入口点对齐到缓存行的边界,可以减少缓存缺失,从而提高性能。
|