微控制器环境要求在尽可能小的封装里实现最多的通用I/O。存微控制器尺寸和成本的限制下,M4K内核内部不支持指令高速缓存(I-cache)或数据高速缓存(D-cache)的标准功能。但MIPS32 M4K内核所具有的一些特点使其非常适用于微控制器应用领域。这就涉及到本文重点讨论的一个内容--SRAM接口,这是MIPS32 M4K内核的一个标准功能。
微控制器应用需要仅用最少的接口逻辑就可以在处理器内核和存储系统之间实现紧密耦合。MIPS32M4K内核SRAM接口就是一个比较完美的解决方案。
M4K内核SRAM接口基本描述
M4K内核SRAM接口是M4K内核的通用高速存储器接口。它可为指令存储器和数据存储器路径提供低延迟接口,支持单周期和多周期存储器存取。 必须指出,SRAM接口不能直接与外部存储器件连接,若要实现外部存储连接,需使用一个外部存储控制器。必须使用固定映射表(FMT)和SRAM接口,以提供完整的存储器控制逻辑。
双模操作
SRAM接口的初始配置称为双模。在这种模式下,指令和数据通道彼此隔离。数据有独立的读写总线(D-SRAM),还有D-SRAM接口控制信号和一个独立的指令侧(I-SRAM)接口,以及其互补I-SRAM控制信号。
I-SRAM接口具有改变信号输入方向的能力,需要时,可将D-SRAM读周期改变到I侧方向。这有助于改良的Harvard架构的实现,和非易失性数据在程序存储器中的存储。
双模有助于I-SRAM和D-SRAM接口的同步处理,消除任何可能出现在公用总线接口上的延迟,防止其减缓程序的执行。在这个模式下,内核可达到1.5 DMIPS/MHz的标称性能。双模结构如图1所示。