版主: 51FPGA

分享到:
共1条 1/1 1   

Zynq器件存储控制器介绍

    [您是本帖的第1296位阅读者]
xilinx论坛
我是MM
高级会员

最后登陆时间:2015-03-19 10:58:07

直达楼层
1# 发表于 2015-06-29 16:49:08

基于Zynq器件的嵌入式开发时,我们不可避免地需要规划设计使用什么样类型和多大地内存与FLASH,本文就ZYNQ器件的存储控制器作一个抛砖引玉的描述,以期大家对它有个基本了解,如有不当或需要补充之处欢迎大家发言指出。


Zynq器件主要包括三种类型的存储控制接口:

 DDR控制器,主要特性如下:


·支持DDR3DDR2LPDDR2


·支持位宽为16比特或32比特,位宽为16比特时支持ECC


·使用多达73个PS专用引脚。


·模块支持:32比特位宽:4 x 8b, 2 x 16b, 1 x 32b


16比特位宽:2 x 8b, 1x 16b


·1.5v的DDR3最大速率支持到533 MHz(DDR1333)


·1.8v的DDR2最大速率支持到400 MHz(DDR800)


·1.2v的LPDDR2最大速率支持到400 MHz(DDR800)

·具有4个DDR控制端口,1个给PS专用,2个PL专用,1个外设/DMA/PL/PS共享。

·不支持DIMM

DDR控制器的框图如下:

主要包括三部分:


·DDRController Interface (DDRI),负责各个端口的读写请求和仲裁。


·DDR Controller Core (DDRC)负责对读写交易进行调度和排队


·DDRController PHY (DDRP),物理层,直接和DDR3,DDR2,LPDDR2器件通信。


 QuadSPI控制器,主要特性如下:


·100 MHz32-bit APB 3.0接口支持各种操作,如读,写,搽除等操作。


·100 MHz32-bit AXI读接口时地址线性映射。


·读操作时支持x1, x2 x4速度


·写操作时支持x1x4速度


·主模式下最大SPI时钟达到100MHz。


·带有252字节的FIFO以最大化QuadSPI读效率。


·支持最大容量为128Mb的QuadSPI器件。


·支持两个QuadSPI器件并行使用。

QuadSPI控制器是系统外设互连(IOP)的一部分,如下图示可以支持一到两个QSPI FLASH

注意当使用一个QuadSPI器件时,只能使用QSPI0使用两个QuadSPI器件时,要保证器件是同样的(生产商和通信协议)。

QuadSPI控制器有两种基本的使用模式:I/O模式和线性地址模式。

I/O模式:控制器只负责收发数据,需要软件开发者熟悉FLASH器件的通信协议,软件用四个TXD寄存器来写数据和命令,从FLASH读回来的数据存储在一个接收寄存器。这种模式支持FLASH器件的所有操作,如读操作,写操作和搽除操作。

线性地址模式:这种模式消除了I/O模式需要软件开发者自行发出读写命令的开销,线性地址模式下由硬件发出对FLASH的读命令并控制数据流向AXI总线接口,控制器响应AXI总线接口的请求,这仿佛把FLASH当作ROM存储器来操作,开发者不用关心低层细节,这种模式常用于直接在FLASH上执行代码的情形。

QuadSPI控制器的框图如下:

 静态存储控制器(Static Memory Controller (SMC)),能支持NAND Flash, NORFlashSRAM

NANDFlash控制器主要特性如下:


·支持8比特或16比特的数据宽度。


·符合ONFI specification 1.0标准


·16-word的读和写FIFO


·8-word的命令FIFO


·可编程的I/O周期时序

·ECC功能

·异步存储器操作模式

Parallel SRAM/NOR控制器主要特性如下:


·8比特数据宽度,支持最大25个地址线。


·2个片选信号(24位地址模式)


·16-word的读和写FIFO


·8-word的命令FIFO


·可编程的I/O周期时序,两个片选信号可分别设置


·异步存储器操作模式

系统总线可以访问到静态存储控制器SMC,但SMC的控制寄存器只能提过APB接口访问,如下图示:

注意使用SMC时可能占用比较多的MIO引脚,需要规划好防止引脚冲突。

静态存储控制器(SMC)的框图如下:最后给出Zynq器件的存储地址分配表:
共1条 1/1 1   
快速回复主题
  • 匿名不能发帖!请先 [ 登陆 注册 ]