"); //-->
CMA132 离线存储移动到可访问存储器
更糟糕的是, 与通常 16MB 大小通常绰绰有余的闪存不同,CPU 的数据内存使用量可以迅速扩展到超出任何附近内存的容量。例如,虽然标准 C 库可以大大简化 CPU 的工作,但同一个标准 C 库可能需要至少 16kB 的内存,通常需要接近 64kB 的内存。在ZipCPU的整个生命周期中 ,此数据存储器由块 RAM、 SRAM、 外部 SDRAM提供 , 甚至外部 DDR3 SDRAM – 都取决于托管设计的开发板。这给我们留下了一个最小的系统,它有两个总线主控、调试总线和 CPU,总线上至少有三个项目:闪存 、数据存储器和任何应用程序外设。
添加应用外设只会让情况变得更糟:我们现在需要一个可以处理两个总线主控器和三个或更多外设的总线互连。许多应用程序还需要通过某种形式的自动内存传输或更多方式访问内存。所有这些访问都需要仲裁。因此,CPU 现在必须具有通用 总线互连——从我们上面的最低要求来看,这不一定是显而易见的。
在实施ZipCPU时,有一小组外围设备也不断出现。右侧的图 5 显示了一个示例设置,其中包括许多这些常见的外设。第一个是控制台端口,用户可以通过它与 CPU 通信。第二个是一组单位输入或输出线,我称之为 GPIO 外设。接下来的两个重要外设是一个或多个 定时器和一个 中断控制器。
这意味着我们上面图 3 中的简单 CPU 现在已经变成了一个复杂得多的设计组件,甚至比图 4 建议的还要复杂,如图 5 所示。
这也意味着任何最小 CPU 都可以很快变得比我们开始概述时的最小 CPU 多得多。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。