CMP设计分享 http://blog.sciencenet.cn/u/accsys 没有逆向思维就没有科技原创。 不自信是科技创新的大敌。

博文

CPU设计我要让更多的人掌握它(续10)

已有 4346 次阅读 2010-1-22 10:50 |个人分类:计算机核|系统分类:科研笔记| CMP, 动态计算机, 核重组

4. 动态计算机的应用与发展
 
动态计算机并不是一种全新的计算机思想产物,而是冯.诺依曼思想体系在多处理器计算机实践发展的一种解决方案。如果将以操作系统为标志的,以软件来管理程序并行执行的方法,看作是冯.诺依曼思想体系实现的一种软件解决方案,那么动态计算机就是相对操作系统来说,就是一种简约的、高效的硬件解决方案。
 
4.1 单片机领域
 
通用计算机人机交互是一个极其复杂的开发领域,而单片机的人机交互要相对简单,为此,动态计算机核心技术首先应用的领域必然是单片机。
 
单片机系统最重要的部件是微处理器MCU或者DSP,从本质上来讲它们都是CPU。由于单片机外部设备简单,需要执行的程序往往固化在存储器当中,因而本质上就是一个计算机的核心。由于执行程序固定,所以单片机就是专用计算机的别名。
 
单片机虽然功能简单,但在处理速度上要求很高,因而同时并行操作是单片机努力追求的行为,而简单直接又是其提速的一个重要方法。
 
单片机虽然是专用计算机,但随着手机和机器人等高性能专用计算机系统的开发,其复杂程度也越来越高,功能和行为的处理,单凭一个CPU已经跟不上高速高效的要求,因而异构多处理器结构必然要也要成为单片机的核心架构。动态计算机核心正是这种多元异构计算机核心的体现,特别是片上动态计算机核心,不仅结构灵活,而且简单高效。动态关系总线结构,异常方便多功能协调,充分调动每一个处理器工作,因而在单片机领域,动态计算机会首先显示出其强大优势。
 
4.2 通用计算机领域
 
通用计算机是能够运行各种应用程序的计算机。由于功能的复杂和多样性,通用计算机在资源管理、任务调度和人机交互等方面都有很高的要求。与单片机相比,第一要解决各种各样的程序都能够执行;第二要更多地处理输入输出事务;第三要处理程序对处理器使用的调度和资源分配。
 
通用计算机的这些要求无疑要增加处理器功能。以往的作法是设计功能更加强大的处理器,让所以的程序都能够在这个通用处理器上执行。这种作法虽然可以满足各类程序执行的需要,但由于处理器对程序的互斥使用,造成了处理器内部功能资源的闲置,而在外部由于各程序要排队互斥使用处理器,那么又造成了程序执行等待的时间浪费。这两种情况的发生,必然使通用计算机的核心结构发生重大变化。
 
首先,计算机核心中处理器要向功能单一的方向细化,要尽可能地在程序执行的过程中,减少处理器内部资源闲置。其次,要增加程序调度分配的灵活性,减少程序排队等待执行的时间。前者必然会推出异构的多处理器对计算机核心,而后者必然要打破共享庞大内存的存储结构,转而采用多存储器分散存储程序和数据,进而避开存储器互斥访问的瓶颈。
 
处理器细划和程序分散存储,必须要有方便实现分散结合的架构,这就是动态关系总线的必然。而动态关系总线的快速变换,必然要有更高层次的逻辑控制来实现。
 
4.3 总结
 
动态计算机是计算机任务和效率需求发展的必然产物。而先前在硬件资源过于昂贵的情况下,先期发展的以现代操作系统为代表的软件管理调度方案,只适用于单处理器多功能核心架构。虽然在网络结构中这种软件管理方式可以完成各节点的异步任务操作,然而在片上的“空间紧致”和“时间一致”的环境中,难以发挥高效的作用。因此,现在流行的片上多核芯片设计,一定会让位于片上多处理器CMP结构。而CMP中最优秀的架构就是动态计算机核心。
动态计算机架构可以实现传统编程方式的多处理器上程序同时并行执行,因而对应用软件设计是有力的硬件支撑。
 
有关CPU设计,暂讨论到此。更加深入的问题将与有兴趣者通过其他方式研讨。
 
2010-1-22
 
--- 完 ---
 


https://blog.sciencenet.cn/blog-340399-289433.html

上一篇:超光速——量子纠缠与事物刚性
下一篇:信息是简单还是复杂的概念
收藏 IP: .*| 热度|

0

发表评论 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-22 10:25

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部