(整理)常用存储器芯片设计指南
- 格式:doc
- 大小:356.00 KB
- 文档页数:14
I2C总线芯片AT24C02程序设计I2C总线芯片AT24C02是一种常用的存储器芯片,在嵌入式系统中广泛应用。
本文将介绍如何使用AT24C02进行程序设计,包括芯片初始化、读取数据和写入数据等操作。
为了简化整个流程,本文将只介绍关键的代码部分。
首先,我们需要了解AT24C02芯片的连接方式和寄存器地址。
AT24C02通过I2C总线连接到控制器,其中使用两根信号线SCL和SDA进行通信。
芯片的I2C地址为0xA0,并且有256个存储器单元,每个单元8位,总共可以存储2KB的数据。
接下来,我们需要进行芯片的初始化。
初始化过程包括初始化I2C总线、设置AT24C02的I2C地址和其他必要的配置。
以下是AT24C02初始化的代码示例:```c#include <Wire.h>#define AT24C02_ADDRESS 0xA0 // AT24C02芯片的I2C地址void setupWire.begin(; // 初始化I2C总线void loop//主程序代码```在进行读取数据之前,我们需要指定要读取的存储器单元的地址,并将其发送给AT24C02芯片。
以下是读取数据的代码示例:```c#include <Wire.h>#define AT24C02_ADDRESS 0xA0 // AT24C02芯片的I2C地址#define MEMORY_ADDRESS 0x00 // 要读取的存储器单元的地址void setupWire.begin(; // 初始化I2C总线Wire.beginTransmission(AT24C02_ADDRESS); // 开始I2C通信Wire.write(MEMORY_ADDRESS); // 发送存储器单元的地址Wire.endTransmission(; // 结束I2C通信void loop//主程序代码```在进行写入数据之前,我们需要指定要写入的存储器单元的地址,并将数据发送给AT24C02芯片。
存储器处理单元核心架构的制作方法存储器处理单元(Memory Processing Unit,MPU)是一种集成了处理器和存储单元的芯片,它能够更为高效地处理数据。
在这个处理器的核心原理中,存储单元负责存储数据,处理单元则负责执行代码、逻辑和算术运算等操作。
下面将介绍如何制作一款存储器处理单元核心架构。
1.核心原理设计首先需要了解处理器架构设计的重要原理,包括指令集,操作码,中央处理器(CPU)的掌控单元(CU)和执行单元(EU),以及内存模型。
我们需要确定指令集,并确定QFP器件包、哈佛式总线结构以及存储单元的大小,以充足处理器的性能需求。
2.芯片设计在确定核心原理后,需要进行芯片设计。
设计需要考虑最小化芯片的面积、功耗、时钟速率和搭配存储单元扩展位置。
需要确定处理器中的重要功能单元和数据通道,以提高数据传输的效率,削减不必要的指令间跳转。
3.验证设计完成芯片设计之后,需要验证设计是否充足性能要求。
可以进行基于硬件、仿真、虚拟和软件等多种验证方式。
验证还要考虑处理器架构的牢靠性和稳定性,以及信号传输的稳定性。
4.生产生产设计完成之后,进入芯片生产阶段。
建议选择正规的生产厂家,牢靠、先进的技术以及优秀的技术支持,以确保生产出高品质的芯片。
同时需要进行测试并检查芯片的性能是否良好。
假如显现问题,需要返工或修复芯片,以确保芯片性能运行稳定。
以上即是制作一款存储器处理单元核心架构的重要方法,需要从核心原理设计、芯片设计、验证设计和芯片生产等多个方面考虑。
在实践中需要结合实际需求,依据不同场景设计和制作适合的存储器处理单元核心架构。
存储器设计(总22页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--*************课程设计报告课程设计名称:计算机组成原理课程设计课程设计题目:存储器设计院(系):***********专业:***********班级:***********学号:***********姓名:***********指导教师:***********完成日期:***********目录第1章总体设计方案 ................................................................ 错误!未定义书签。
设计原理....................................................................................... 错误!未定义书签。
设计思路....................................................................................... 错误!未定义书签。
设计环境........................................................................................ 错误!未定义书签。
第2章详细设计方案 ................................................................ 错误!未定义书签。
顶层方案图的设计与实现 .......................................................... 错误!未定义书签。
创建顶层图形设计文件 ............................................................ 错误!未定义书签。
芯片设计需要的知识点芯片设计是一门复杂而精密的工程,需要掌握多个知识领域的基础和专业知识。
本文将介绍芯片设计所需的主要知识点,以帮助初学者理解和入门芯片设计。
一、电子学基础知识1.1 电路理论:芯片设计离不开电路理论的基础,掌握电流、电压、电阻等基本概念,了解欧姆定律、基尔霍夫定律等电路理论原理。
1.2 逻辑电路:理解逻辑门电路,如与门、或门、非门等,了解组合逻辑和时序逻辑电路的设计方法。
1.3 模拟电路:了解模拟电路设计原理,如放大电路、滤波电路等,熟悉常见的放大器、滤波器等电路的设计和特性。
二、计算机体系结构知识2.1 计算机组成原理:了解计算机的基本组成部分,如中央处理器(CPU)、存储器、输入输出设备等,熟悉计算机指令和指令的执行过程。
2.2 微处理器架构:掌握微处理器的工作原理和内部结构,了解CPU的指令系统、寄存器、流水线等。
2.3 性能优化:了解性能优化的方法和技术,如流水线设计、指令级并行等,能够通过对芯片结构和设计的优化来提高芯片的性能。
三、数字电路设计知识3.1 布尔代数和逻辑门:掌握布尔代数的基本原理,了解与门、或门、非门等基本逻辑门的特性和应用。
3.2 状态机设计:理解有限状态机的概念和设计方法,熟悉状态图、状态转移表等状态机的表示方法。
3.3 时序逻辑设计:了解时钟信号、触发器、时序逻辑电路的设计和应用,能够进行时序逻辑的设计和分析。
四、模拟电路设计知识4.1 放大器设计:熟悉各种放大电路的设计和特性,如低频放大器、高频放大器等。
4.2 滤波器设计:了解滤波器的设计原理和常见的滤波器类型,如低通滤波器、高通滤波器、带通滤波器等。
4.3 数据转换器设计:了解模数转换器(ADC)和数模转换器(DAC)的设计原理和性能指标,能够进行数据转换器的设计和优化。
五、集成电路设计知识5.1 CMOS工艺:了解CMOS工艺的原理和制程流程,熟悉CMOS器件的特性和参数。
5.2 器件模型:理解器件模型的建立和使用,如MOS模型、BJT模型等,能够进行器件级的仿真和验证。
芯片设计流程详解芯片设计是指进行各种型号的集成电路芯片的设计和开发过程。
芯片设计流程旨在确保芯片满足设计要求,并具有高性能、低功耗、良好的测试和可靠性。
下面将对芯片设计流程进行详细解析。
芯片设计流程通常包括以下几个步骤:需求分析:在芯片设计之前,首先要明确设计目标和需求,确定芯片的功能、性能和功耗等方面的要求。
需求分析是整个芯片设计流程的重要基础,对后续设计工作起到指导作用。
架构设计:在需求分析的基础上,进行芯片的架构设计。
架构设计要确定芯片的整体结构和功能模块划分,以及各个模块之间的接口和通信方式。
逻辑设计:根据架构设计,进行芯片的逻辑设计。
逻辑设计是将芯片的功能模块细化为逻辑电路,采用硬件描述语言(HDL)进行设计。
逻辑设计包括逻辑门电路的设计、时序电路的设计、存储器的设计等。
电路设计:在逻辑设计的基础上,进行芯片的电路设计。
电路设计是将逻辑电路转化为实际的模拟或数字电路,包括电路原理图的设计、布局布线的设计、时钟电路的设计等。
物理设计:在电路设计的基础上,进行芯片的物理设计。
物理设计包括芯片的版图设计、功耗优化、信号完整性分析等。
验证与仿真:在物理设计完成后,对芯片进行验证和仿真。
验证和仿真是验证芯片设计是否满足需求的关键步骤,包括功能验证、时序验证、功耗验证等。
样片制造:在验证与仿真通过后,将芯片设计转化为实际的芯片样片。
样片制造包括掩模设计、光刻工艺、晶圆制造等。
测试与调试:制造完成的芯片样片需要进行测试和调试,以确保其性能和可靠性。
测试与调试包括芯片测试程序的编写、测试设备的配置等。
产品化:测试和调试通过后,将样片进一步量产,形成实际的芯片产品。
产品化包括生产流程的管理、质量控制等。
总结来说,芯片设计流程包括需求分析、架构设计、逻辑设计、电路设计、物理设计、验证与仿真、样片制造、测试与调试、产品化等多个步骤。
通过这些步骤的有序进行,可以确保芯片设计满足需求,并具有高性能、低功耗、良好的测试和可靠性。
嵌入式存储器架构引言嵌入式存储器是嵌入式系统中的一个关键组成部分,用于存储程序代码、数据以及操作系统,对系统的性能和功耗有着重要影响。
嵌入式存储器架构的设计和优化决定了嵌入式系统的整体性能和功耗效率。
本文将介绍嵌入式存储器的基本概念、常见的嵌入式存储器架构以及一些优化技术。
基本概念嵌入式存储器类型嵌入式存储器可以分为两种类型:ROM(只读存储器)和RAM(随机访问存储器)。
•ROM是一种只读存储器,数据可以被写入一次,之后只能读取。
常见的ROM包括FLASH和EPROM(可擦除可编程只读存储器)。
•RAM是一种随机访问存储器,数据可以被任意读写。
常见的RAM包括SRAM(静态随机访问存储器)和DRAM(动态随机访问存储器)。
存储器层次结构嵌入式系统中的存储器通常按照访问速度和容量进行划分,有着多层次的结构。
典型的存储器层次结构如下:1.寄存器:在CPU内部,速度最快,但容量较小,一般用于临时存储数据和指令。
2.高速缓存(Cache):位于CPU内部或CPU和主存之间,速度较快,容量适中,用于存储最常用的数据和指令。
3.主存储器:位于CPU外部,速度较慢,容量较大,用于存储程序代码和数据。
4.外部存储器:主要指存储器芯片外的存储设备,如硬盘、闪存、SD卡等,容量更大,但速度更慢。
嵌入式存储器架构ROM架构ROM是一种只读存储器,常见的ROM架构有:1.只读存储器(Read-Only Memory, ROM):数据只能被写入一次,之后只能读取。
ROM常用于存储程序代码。
2.可擦除可编程只读存储器(Erasable Programmable Read-Only Memory, EPROM):数据可以被擦除和编程,允许多次修改。
EPROM需要通过特殊的设备进行擦写和编程。
3.闪存(Flash Memory):一种可擦写存储器,允许对特定扇区进行擦除和编程。
闪存被广泛应用于嵌入式系统中。
RAM架构RAM是一种随机访问存储器,常见的RAM架构有:1.静态随机访问存储器(Static Random-Access Memory, SRAM):使用触发器实现存储单元,速度快,功耗较高,常用于高性能系统。
flash芯片选型Flash芯片是一种常见的存储器件,它可以在断电后仍然保持数据的存储状态。
在现代电子产品中,Flash芯片几乎无处不在,用于存储各种程序、文件和数据。
选择合适的Flash芯片对于设计电子产品至关重要,关系到产品的性能、稳定性和成本。
以下是一些选型Flash芯片的要点,以帮助您做出明智的选择。
1.存储容量:根据产品的需求确定所需的存储容量。
不同的应用场景可能需要不同容量的存储空间。
注意,Flash芯片的存储容量通常以字节(B)计算,常见的容量有128MB、256MB、512MB、1GB、2GB等。
2.接口类型:根据产品的主控芯片确定所需的接口类型。
常见的接口类型有SPI、SDIO、NAND、NOR等。
SPI接口适用于小容量的应用,SDIO接口适用于需要高速数据传输的应用,NAND接口适用于大容量存储器,NOR接口适用于需要较高可靠性和速度的应用。
3.速度等级:根据产品对读写速度的要求确定所需的速度等级。
速度等级通常以MHz表示,常见的等级有25MHz、50MHz、100MHz等。
较高的速度等级可以提高数据传输速度,但也可能导致产品成本的增加。
4.工作电压:根据产品对工作电压的要求确定所需的工作电压范围。
常见的工作电压范围有1.8V、3.3V等。
选择适合产品的工作电压范围可以保证产品的稳定性和可靠性。
5.数据保持能力:Flash芯片的数据保持能力是指在断电情况下,数据可以保持的时间。
根据产品的需求确定所需的数据保持能力。
一般来说,数据保持能力越长,产品的可靠性就越高。
6.耐用性和擦写次数:Flash芯片通常具有一定的擦写次数限制。
根据产品的需求确定所需的耐用性和擦写次数。
对于需要频繁写入和擦除数据的应用,选择具有更高耐用性和擦写次数的Flash芯片可以延长产品的使用寿命。
7.成本:根据产品的预算确定所需的成本范围。
不同品牌和型号的Flash芯片价格差异很大,根据产品需求在合适的价格范围内选购Flash芯片。
数字集成电路设计整理一、概念1. ASIC——Application Specific Integrated Circuit专用集成电路ASIC在批量生产时与通用集成电路(IC)相比具有体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。
ASIC分为全定制和半定制。
全定制设计需要设计者完成所有电路的设计,半定制使用库里的标准逻辑单元(Standard Cell),设计时可以从标准逻辑单元库中选择SSI(门电路)、MSI(如加法器、比较器等)、数据通路(如ALU、存储器、总线等)、存储器甚至系统级模块(如乘法器、微控制器等)和IP核,这些逻辑单元已经布局完毕,而且设计得较为可靠,设计者可以较方便地完成系统设计。
全定制能够比半定制的ASIC芯片运行速度更快。
2.IP——Intellectual Property知识产权3.数字后端指将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据的过程。
其主要工作职责有:芯片物理结构分析、逻辑分析、建立后端设计流程、版图布局布线、版图编辑、版图物理验证、联络代工厂并提交生产数据。
作为连接设计与制造的桥梁,合格的版图设计人员既要懂得IC 设计、版图设计方面的专业知识,还要熟悉制程厂的工作流程、制程原理等相关知识。
4.Standard Cell——标准单元库5.RTL——寄存器传输级描述通过一个寄存器到另一个寄存器的逻辑变换和传输来描述设计。
逻辑值被存储在寄存器中,通过一些组合逻辑对其要求值,随后将结果存储于下一个寄存器。
RTL的功能类似于软件与硬件之间的桥梁。
是与工艺无关的网表的文本结构描述。
6.布局(Place)布线(Route)布图规划floorplan比布局更重要。
规划包括指令,macro的放置,电源线的设计power plan。
floorplan一旦确定,芯片的面积就定下来了,也与整个设计的timming和布通率有很大关系。
芯片设计中的数据通路与存储优化芯片设计是现代科技领域中的重要组成部分,涉及到数据通路与存储优化是其中的一个重要方面。
在本文中,我们将探讨数据通路与存储的优化方法以及对芯片设计的影响。
一、数据通路的优化数据通路是芯片中传输和处理数据的重要部分,它决定了处理速度和效率。
在数据通路的设计过程中,优化是必不可少的。
下面是一些常见的数据通路优化方法:1. 流水线技术流水线技术是一种将整个处理过程分解成多个互相依赖的阶段,使得各个阶段可以同时运行的技术。
这样可以提高数据的传输速度和处理效率。
流水线技术在现代芯片设计中普遍应用,例如CPU的指令执行阶段就采用了流水线技术。
2. 并行处理技术并行处理技术允许多个任务同时进行,从而加快处理速度。
这种技术可以通过增加计算资源或者设计并行处理器来实现。
并行处理技术在大规模数据处理和复杂算法计算中具有重要的应用。
3. 缓存优化缓存是一种高速存储器,用于暂时存储芯片中频繁访问的数据。
通过优化缓存的设计,可以减少访问延迟和提高数据的读写效率。
常见的缓存优化方法包括调整缓存存储单元的大小、采用更高效的替换策略和预取技术等。
二、存储优化除了数据通路,存储也是芯片设计中不可忽视的一部分。
存储的优化涉及到存储器的类型选择、存储器组织和访问策略等方面。
以下是一些常见的存储优化方法:1. 存储器层次结构存储器层次结构是一种将速度和容量结合的策略。
通过在芯片中使用多层次的存储器,可以提高数据处理的速度和效率。
例如,高速缓存(Cache)作为一种靠近处理器的存储器层次结构,可以存储频繁使用的数据,减少对主存的访问次数。
2. 存储器组织存储器组织是指存储器单元的布局方式。
通过合理的存储器组织,可以减少存储器的访问冲突和延迟。
常见的存储器组织方式包括旁路存储器、交织存储器和多级存储器等。
3. 存储器访问策略存储器访问策略是指访问存储器时的读写方式和操作顺序。
通过优化存储器访问策略,可以提高数据读写的效率。
常用存储器芯片设计指南现代通讯产品中,各种存储器的应用已经是越来越广泛,可以这么说,产品中包含的存储器的特性的好坏,直接关系到产品整体性能。
因此,存储器芯片的设计,在通讯产品的设计中,也显得愈发重要。
目前在通讯产品中应用的存储器,主要有FLASH、SSRAM、SDRAM、串行PROM等,由此延伸出去还有在接口电路中经常应用的FIFO、双口RAM等,下面的内容就是这些常用存储器芯片的原理介绍和在产品中的设计指南。
FLASH介绍一、BOOT ROM简介我们在CPU最小系统中一般采用AM29LV040B-90 // SST39VF040-90-4C-NH (代码:10300067,512kB,8位总线宽度,PLCC32封装,3.3V供电)作为BOOT ROM。
BOOT ROM中存放的是系统自举程序,实现CPU系统的自举。
当系统上电后,CPU 首先运行BOOT ROM中的程序,完成对CPU系统的初始化。
图1 AM29LV040B-90 // SST39VF040-90-4C-NH引脚图该FLASH芯片可在线读写,但作为BOOT ROM时,我们一般用烧录机烧写入程序,不对其进行在线写。
其读操作时序如图2所示。
图2 读操作时序下面给出一个MPC860最小系统的应用例子。
图3 MPC860 BOOT电路图因为我们不需要在线写,所以为防止BOOT FLASH的程序被改写,一般将/WE信号接高电平。
MPC860用8位数据口的方式访问BOOT,经缓冲之后的数据线为BD00-BD07。
MPC860地址线使用A31-A13,经一级驱动与BOOT相连。
使用/CS0片选端,地址范围0x0800 0000~0x0807 FFFF,使用内部等待,等待周期为8。
BOOT ROM中存放的是系统自举程序,实现MPC860系统的自举。
当系统上电后,MPC860首先运行BOOT ROM中的程序,该程序首先完成MPC860的初始化,然后根据参数,将Flash ROM中的应用程序复制到SDRAM空间中,然后将控制权移交给该应用程序运行;或准备应用程序加载,进入调试状态。
二:大容量FLASH由于FLASH具有在掉电情况下保持数据和容量大的特性,因此在公司的绝大多数运用中是用在CPU系统中存放系统的应用软件的,其运作过程如下:系统上电后,首先BOOTROM的片选被选中,它里面放的是CPU的初始化程序,这样CPU就起来了,接着FLASH条的版本程序被下载到内存条中,从而整个软件就在CPU系统中运行起来,这样一来可以提高系统运行速度,二来是方便版本的管理。
因为一般来说系统支持远程加载和更新软件版本的功能,因此一般说来FLASH中必须开辟两个相同的区域,分别作为软件版本的保护和备份,这样一旦出现在系统动态加载软件失败时,能保证备用软件版本的正常启动,使系统不致崩溃。
典型介绍生产FLASH的厂商很多,我们将以广为运用INTEL的28F128J3A芯片为例子来介绍,使大家对FLASH的操作有一个大致的了解,此芯片单片容量为128MBIT,(16BIT X 8M)。
由于此系列的FLASH(28F128J3,28F640J3,28F320J3)的引脚完全兼容,因此可以简单地通过器件替换提供128MBIT,64MBIT,32MBIT的容量。
28F128J3A芯片的管脚简单,分数据总线,地址总线,控制线,电源,地这么几类;在使用的时候,只需接出使能,片选,写控制三根控制线即可,其他的控制线可以接固定电平,下图就是某CPU子卡的FLASH接法:FLASH 28F128J3A的操作是通过CPU分布各种命令来实现的,其命令是通过数据总线,地址总线,控制线呈现某个固定电平构成;下表就是28F128J3A所有命令对应的各种信号的定义:从上表可以看出28F128J3A大部分命令的实现分为两步实现:例如Block_Erase命令,而普通的读命令Read_Array只要一步。
对于28F128J3A的某些操作,是非常简单的,例如读操作:在芯片复位/上电后芯片默认为Read_Array模式,这样可以直接读取芯片的数据,但是如果在写FLASH或发布了其他命令后再想读取,那么就必须重新发布Read_Array命令才能读取;对于其他的操作,尤其是分两步完成的命令,其操作是通过几个不同命令组合而成,具有一定的流程,并且在过程中经常需要不断地从FLASH读取状态信息以进行下一步操作来保证操作的正确。
在这里举两个操作流程的例子,通过这个例子,可以大致了解FLASH的操作:第一个是Read_Status_Register命令,这个命令是用来读取芯片目前的状态,其他操作的流程中经常用到此命令以保证操作的正确,下图是进行Read_Status_Register命令的流图:第二个例子是使用Write_to_Buffer命令过程,我们可以看到,在其过程中,我们可以看到需要发布Read_Status_Register命令检查芯片的状态信息以判断下一步:FPGA配置用PROM简介这类可编程ROM是专为FPGA加载配置所用。
其针对不同容量、型号、厂家的FPGA,其存储大小、性能不尽相同;但其使用的电路、方法、时序基本相同。
而且,基本上是只可一次性擦写。
下面就以XILINX公司XC17S00A系列为例介绍一下。
图1 XC17S00A引脚图FPGA的配置数据是事先烧入PROM中的,FPGA采用的是主串行配置方式,上电后FPGA产生配置时钟给PROM,PROM则按照图3的时序对FPGA进行配置,当配置完成后FPGA的DONE信号就不使能PROM。
图2 PROM配置FPGA电路图3 PROM的配置时序我们公司这类器件没有一个是通用的,我们不推荐使用PROM配置这种方式。
最好用CPU进行FPGA配置,这样做增加了FPGA版本的灵活性,也大大降低了成本。
SSRAM介绍SSRAM支持高性能CPU、DSP、网络套片等多种应用场合。
目前在公司多种产品中也有比较广泛的应用。
一、SSRAM的选用在选用SSRAM时,一般需要考虑以下几个方面:(1)根据设计需求、接口芯片的具体要求等确定SSRAM的芯片容量大小、数据宽度以及芯片速度等级;(2)根据以上信息确定SSRAM型号,并尽可能在公司通用件库中选型;(3)根据信号定义及信号时序等确定SSRAM及其接口芯片的具体的电路连接关系。
二、SSRAM的电路设计1、概述一般来说,SSRAM的信号主要包括以下几部分:数据线、地址线、时钟以及写使能、输出使能等控制信号等。
在进行具体的电路设计时,一般只需将这些主要信号与其接口的特定芯片的对应信号直接对连即可,对于一些比较特殊的时序要求可以通过EPLD内做逻辑实现。
对于SSRAM上的一些不用的输入信号进行适当的上、下拉处理。
2、应用实例下面以RNC 中的一块单板ASC上采用的SSRAM为例,来说明SSRAM的具体应用。
首先根据设计要求,ASC单板上的ATM层UNI/NNI管理接口芯片ALM需要一片数据宽度为32位的SSRAM作为外部存储器。
综合考虑ALM外部存储器所需的容量大小以及目前SSRAM的价格因素及芯片可采购性等各方面因素,可以选择公司通用件CY7C1381B-100AC(代码12300217)来实现。
CY7C1381B-100AC数据宽度为32位,其信号线主要包括地址线、数据线、时钟和一些控制信号,其具体信号如下表所示。
分析ALM及所选SSRAM的具体接口信号可知,电路连接方面基本上只要将二者数据线、地址线、时钟以及几个主要控制信号直连,其他的信号做一些上下拉处理即可。
如下图所示,给出了二者接口的电路连接框图。
同时在表1中最后一列也给出了在该例中SSRAM 各具体信号的相应处理方式。
ALM上下拉处理SDRAM 应用存储器是容量数据处理电路的重要组成部分。
随着数据处理技术的进一步发展,对于存储器的容量和性能提出了越来越高的要求。
同步动态随机存储器SDRAM (Synchronous Dynamic Random Access Memory )因其容量大、读写速度快、支持突发式读写及相对低廉的价格而得到了广泛的应用。
SDRAM 的控制比较复杂,其接口电路设计是关键。
1. SDRAM 的主要控制信号和基本命令SDRAM 的主要控制信号为:·CS:片选使能信号,低电平有效; ·RAS:行地址选通信号,低电平有效; ·CAS:列地址选通信号,低电平有效; ·WE:写使能信号,低电平有效。
SDRAM 的基本命令及主要控制信号见表1。
表1 SDRAM 基本操作及控制信号所有的操作控制信号、输入输出数据都与外部时钟同步。
一个完备的SDRAM接口很复杂。
对于常规的SDRAM应用来说,处理的事件相对来说比较简单,因而可以简化设计而不影响性能。
接口电路SDRAM的主要操作可以分为:初始化操作、读操作、写操作、自动刷新操作。
(1)初始化操作SDRAM上电一段时间后,经过初始化操作才可以进入正常工作过程。
初始化主要完成预充电、自动刷新模式寄存器的配置。
(2) 激活操作SDRAM在进行读写之前,必须将位于某一个BANK或所有BANK中的行(row)地址进行激活,之后才能进行对相应区域进行读写,激活操作中,地址线上出现的将是行地址和BANK 选择地址。
(3)读写操作读写操作就是对SDRAM进行数据的存取,在读写操作期间,地址线上出现的将是列地址(COLUMN)和BANK选择地址。
读写操作可以进行单字节的操作,也可以进行BURST 操作。
(4)刷新操作动态存储器(Dynamic RAM)都存在刷新问题。
这里主要采用自动刷新方式,每隔一段时间向SDRAM发一条刷新命令。
2. SDRAM应用介绍目前我们的产品中,在应用到微处理器时,基本上都要使用SDRAM作为处理器的主要内存,由于技术的不断发展,现在的CPU对SDRAM的要求也越来越高,主要体现在容量和速度上的提高,下面以美光公司的8M16为例,来介绍一下SDRAM在通讯系统中的具体应用。
MT8M16是美光公司在sdram上的一个代表产品,主要特点如下:1)128MBIT容量: 2M X 16 X 4 BANKS2)速度有10ns和7ns两种,最新的还有5ns,支持最高的时钟频率可达200MHZ。
3)物理地址线A0-A11总共为12根,行列地址线复用,其中,行地址线为A0-A11,列地址线为A0-A9,因此总共的逻辑地址共为22根,数据线宽为16bit,总容量为8MX16bit=128Mbit。
4)内部有4个BANK,通过和控制器相应的输出控制线相连,即可实现整个区间的访问。
下图是用MOTOROLA的MPC8260和MT8M16相连接的示意图:其中地址线和数据线可以按照常规的CPU接外设的方法来实现,要注意的是,对于SDRAM 来说,行列地址线是复用的,控制线主要包括:1)片选CS,选中SDRAM,实际上通过对cpu寄存器的设置就可以通过该片选信号决定了该SDRAM在CPU的地址空间中的基址2)时钟信号。