知识卡片

共享资源要显形

普通读书笔记卡 · 1794.a

内容

当多个外设共用同一条 SPI、I2C 或存储资源时,架构框图应把通信模块单独画出来,而不是把它藏在某个外设驱动里。发散:把共享点画出来,就是提前暴露性能冲突、互斥和错误传播路径。

参考来源

- 位置:《嵌入式系统设计与实践》第2章《创建系统架构》"2.1.1 架构框图"及"2.1.2 控制层级图"一节(源文件:_epub-src/OEBPS/text00014.html、text00015.html) - 结论依据:原文明确"将通信方式和外设分离开来是有益的。如果有多个芯片通过同样的通信方式连接到处理器,那么它们就应该连接到处理器内部同一个通信模块上。这时候,框图就会提醒我们对于共享资源需要格外小心",并在控制层级图一节举例文本组件和图像组件共享闪存驱动,强调"这是个红灯,因为需要特别当心以避免资源的冲突"。 - 原始内容:将通信方式和外设分离开来是有益的。如果有多个芯片通过同样的通信方式连接到处理器,那么它们就应该连接到处理器内部同一个通信模块上。这时候,框图就会提醒我们对于共享资源需要格外小心,需要我们考虑共享带来的性能和资源冲突问题……这种共享是必要的,但对设计来说,这是个红灯,因为需要特别当心以避免资源的冲突。