|
|
| | -文章搜索 - 最新文章 - | |
关于硬件设计的几点小窍门之系统效率 |
| 发布时间:2006年7月10日 点击次数:786 |
| 来源: 作者: |
现象一:这主频 点评:系统的处理能力牵涉到多种多样的因素,在通信业务中其瓶颈一般都在存储器上,CPU再快,外部访问快不起来也是徒劳。 现象二:CPU用大一点的CACHE,就应该快了 点评:CACHE的增大,并不一定就导致系统性能的提高,在某些情况下关闭CACHE反而比使用CACHE还快。原因是搬到CACHE中的数据必须得到多次重复使用才会提高系统效率。所以在通信系统中一般只打开指令CACHE,数据CACHE即使打开也只局限在部分存储空间,如堆栈部分。同时也要求程序设计要兼顾CACHE的容量及块大小,这涉及到关键代码循环体的长度及跳转范围,如果一个循环刚好比CACHE大那么一点点,又在反复循环的话,那就惨了。 现象三:这么多任务到底是用中断还是用查询呢?还是中断快些吧 点评:中断的实时性强,但不一定快。如果中断任务特别多的话,这个没退出来,后面又接踵而至,一会儿系统就将崩溃了。如果任务数量多但很频繁的话,CPU的很大精力都用在进出中断的开销上,系统效率极为低下,如果改用查询方式反而可极大提高效率,但查询有时不能满足实时性要求,所以最好的办法是在中断中查询,即进一次中断就把积累的所有任务都处理完再退出。 现象四:存储器接口的时序都是厂家默认的配置,不用修改的 点评:BSP对存储器接口设置的默认值都是按最保守的参数设置的,在实际应用中应结合总线工作频率和等待周期等参数进行合理调配。有时把频率降低反而可提高效率,如RAM的存取周期是70ns,总线频率为 现象五:一个CPU处理不过来,就用两个分布处理,处理能力可提高一倍 点评:对于搬砖头来说,两个人应该比一个人的效率高一倍;对于作画来说,多一个人只能帮倒忙。使用几个CPU需对业务有较多的了解后才能确定,尽量减少两个CPU间协调的代价,使1+1尽可能接近2,千万别小于1。 现象六:这个CPU带有DMA模块,用它来搬数据肯定快 点评:真正的DMA是由硬件抢占总线后同时启动两端设备,在一个周期内这边读,那边些。但很多嵌入CPU内的DMA只是模拟而已,启动每一次DMA之前要做不少准备工作(设起始地址和长度等),在传输时往往是先读到芯片内暂存,然后再写出去,即搬一次数据需两个时钟周期,比软件来搬要快一些(不需要取指令,没有循环跳转等额外工作),但如果一次只搬几个字节,还要做一堆准备工作,一般还涉及函数调用,效率并不高。所以这种DMA只对大数据块才适用。 |
|
|
|
|
[单片机] 相关文章: 关于硬件设计的几点小窍门之成本节约简介: 成本节约 现象一:这些拉高 / 拉低的电阻用多大的阻值关系不大,就选个整数 5K 吧 点评:市场上不存在 5K 的阻值,最接近的是 4.99K (精度 1% ),其次是 5.1K (精度 5% ),其成本分别比精度为 20% 的 4.7K 高 4 倍和 2 倍。 20% 精度的电阻阻值只有 1 、 1.5 、 2.2 、 3.3 、 4.7 、 6.8 几个类别(含 10 的整数倍);类...... 关于硬件设计的几点小窍门之信号完整性 A51 2.1.4 英特尔/爱特梅尔WM 251 关于硬件设计的几点小窍门之低功耗设计 关于硬件设计的几点小窍门之可靠性设计 |
|
|
|