欢迎来到天天文库
浏览记录
ID:37021126
大小:282.50 KB
页数:9页
时间:2019-05-14
《12研《嵌入式系统》课程论文孟庆丰_1200414011_Serial memory interface》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SERIALMEMORYINTERFACE1.SMI简介NE-STR750开发学习板没有提供并行存储扩展接口,而是提供了串行存储器接口(SMI)。SMI为外部SPI存储器设备提供了一个AHB从接口。CPU可以使用这个存储器存放数据或者程序。可外扩4块共64MB的SMI存储器,如ST的芯片系列M25Pxxx、M45Pxxx等。2.SMI的主要特性SMI串行存储器的主要特性如下:·具有32位、16位、8位的AHB接口·具有可编程时钟与分频系数·在正常的读模式时速度可高达20MHz,快速读模式是可高达48MHz;·写模式是速度可高达30
2、MHz;·具有4个片选信号,可外扩4块共64MB的SMI存储器;·外部存储器可配置为启动模式;·写完成或者软件传递完成是可产生中断请求。3.SMI功能描述如图1所示为SMI串行存储器接口图。其接口一般为3线或者4线,分别为时钟信号线、数据输入/输出线及片选信号线。STR75xF外部可接4片共64MB的SMI芯片,故它有4个片选信号线。时钟信号和数据输入/输出线都是公用的,存储器通过SMI数据处理/控制单元连接到AHB总线上。图1SMI串行存储器接口图3.1.SMI时钟设置当使用SMI的时候AHB时钟预分频洗漱和SMI预分频系数的一
3、些组合是禁止的,如表所示。表一使用SMI时钟的设置规则AHB预分频系数SMI预分频系数规则/1任意值允许/2,/4,/8/1禁止/2,/4,/8/2或者更大允许注意:用户要避免设置被禁止的配置,否则可能导致SMI时钟得不到一个占空比为50%的方波。3.2.AHB接口如图2所示为外部存储器映射到AHB地址空间图。对于4个16MB的分区,每一个都可以通过地址为[25:24]来选择。下面的规则用于从AHB访问SMI。1)用固定的小端存储格式。2)加速模式(Bursts)下不能跨越区域界线。3)向传输的数据大小可以是字节/半字节/字。4)
4、读请求:Bu染色体上的所有类型都支持。包裹边冲串(WrappingBursts)要比增量脉冲串花费更多时间,因为在地址增量时有个间歇。5)写请求:不支持包裹脉冲串6)当数据传输时时;SMI传输保持传输直到Busy(Busy为AHB总线上的一个信号)无效时。对于每一个芯片,其内存大小可能不尽相同,在编程时,要注意选择写入和读取的地址。如果选择写入的地址实际并不存在,则不能写入数据。同理,从Flash中读取数据,也要选择实际存在的地址,否则不能读出想要的数据。例如,本实验板中用到M25P80,其存储容量为8Mb,即1MB,在访问的时候
5、,只能访问从0x80000000开始的1MB的空间。图2存储器映射图3.3.存储设备访问的兼容性SMI接口使用的通信协议是在CPOL=1(表示不传输数据时为高电平)、CPHA=1(表示在时钟下降沿触发)模式下的SPI协议。支持的命令如表二所示。表二支持的命令操作码描述操作码描述03h读取数据字节06h写使能0Bh高速读数据02h页编程05h读状态寄存器ABh从深掉电中释放3.4.硬件模式复位时,SMI运行在硬件模式下。在这种模式中,SMI传输寄存器(SMI_TR),SMI接收寄存器(SMI_RR)不能被访问。他们又SMI硬件管理,
6、无论什么情况下,当AHB管理器从外部存储器中读或写时,这两个寄存器可以用于与外部存储器的通信。3.5.软件模式在软件模式下,SMI传输存储器和SMI接收存储器都是可以访问的单不允许直接在外部存储器和AHB之间传输数据。为了使能软件模式,SMI_CR1寄存器中的SW为必须置为1.软件模式用来传输从SMI_TR到外部存储器的任何的数据和命令,并直接从SMI_RR寄存器中读取数据。使用SMI_CR2寄存器中的SEND表示开始传输。例如,软件模式用于在写之前擦除Flash。硬件模式中不能控制擦除,因为不同设备生产商之间的Flash设备存在
7、不可兼容的问题。在软件模式下,内核的应用程序代码不能从外部存储器中取出来,它必须放在内部存储器中,或者当SMI处于硬件模式时就提前从外部存储器中载入。3.6.外存启动模式如果外部启动模式通过微控制器的Boot引脚使能,那么Bank0在上电时就被使能,下面的命令序列也被送入Bank0。1)从深断电模式下释放;2)30us的延迟;3)读状态寄存器;4)读取存储器开始处的数据字节。在复位时,其他的区域(Banks)均禁止,而且必须在访问之前通过设置SMI—CR1寄存器中的BE[3:1]位来使能。如果没有选择外部存储器启动模式,那么在复位
8、时所有的域Banks都被禁止。3.7.外部存储器的读请求只有在硬件模式(SMI_CR1SW=0)下,而且没有选择分帧写模式(SMI—CR1WBM=0)时才能对外部存储器发出读请求,否则SMI—SR寄存器中的ERF1标志为会被置位。(1)在正常模式(
此文档下载收益归作者所有