1, 若需要修改memory mode, 需重新编译; 若不需要修改memory mode, 直接修改宏参数即可;

2, 宏参数列表:

3, 注意用LE搭memory的情况;

4, memory type与读写触发边沿(triggering)

注意,read/write triggering与地址/数据锁存是有区别的。

把triggering point理解为实际读/写发生的时间点,可以是上升沿或者下降沿;但地址/数据的锁存永远是在上升沿发生的。

5, 名词解释 -- continuous read

… when you write a data at the write clock rising edge and after the write operation is complete, you see the writtern data at the ourput port without the need for a read clock rsing edge.

MLAB ram supports continuous read.

6, 名词解释 – write cycle time interval

tWC, write cycle time internal, 指对同一地址的两次成功写操作之间的最小时间间隔。假如在tWC之内对同一地址有多于一次写操作,那么写内容可能是未知的。

      

7, memory ram存储深度与功耗

(1) 首先要说明,RAM的存储深度一定需要是2的n次幂。会有些文档描述,指M9K最大的memory depth是8K;为什么9K的空间只有8K的深度呢?就是因为存储深度一定需要是2的n次幂。

(2) 依据memory type不同,相应的最大存储深度不一样

The maximum block depth setting 64 for MLAB is not available for Arria V and Cyclone V devices.

(3) 如(1)所述,M9K最密可以分割成8Kx1的存储格式。事实上,最小存储单位(多少bit)稍微大一点,整个Ram块的功耗会相对下降。但该规律不是一直线性的,边界在存储深度为256时。

When the RAM is sliced shallower, the dynamic power usage decreases. However, for a RAM block with a depth of 256, the power used by the extra LEs starts to outweigh the power gain achieved by shallower slices.

8, address enable以及读写时序

… address enable (…) holds the previous address value for as long as the signal is enabled (addressstall = 1), 即保持住地址值。

address enable的实现电路如下:

重点是下图描述外部信号到内部存储cell的数据流向。看完此图后理解RAM读写时序应该不会有任何困难。

9, byte enable

byte enable mask的是写操作。先确认1-bit的byte enable控制多少比特实际数据(size)、确保写入数据宽度与size是整数倍关系即可。

可选的size值有:5, 8, 9, 10。不同的RAM类型可用的值不同

10, memory block上电时的初始值

只有MLAB可以灵活控制上电时的输出初值

11, freeze logic

用于重配置

RAM/ROM IP一次性总结的更多相关文章

  1. 使用matlab和ISE 创建并仿真ROM IP核

    前言 本人想使用简单的中值滤波进行verilog相关算法的硬件实现,由于HDL设计软件不能直接处理图像,大部分过程都是可以将图像按照一定的顺序保存到TXT文档中,经过Modelsim仿真后,处理的数据 ...

  2. 程序如何在RAM ROM运行,内存分配与分区

    关于RAM ROM RAM与ROM就是具体的存储空间,统称为存储器 RAM(random access memory):运行内存,CPU可以直接访问,读写速度非常快,但是不能掉电存储.它又分为: 动态 ...

  3. RAM,SRAM,DRAM,SDRAM,DDR RAM,ROM,PROM,EPROM,EEPROM,NAND FLASH,NOR FLASH的区别

    RAM:由字面意思就可以理解,SDRAM SRAM DRAM(下面蓝色字体的这几种)都可以统称RAM,random access memory(随机存取存储器)的缩写,下面是51hei.com为大家整 ...

  4. Android读取RAM,ROM,SD卡容量

    1)简介 一般人们在买手机的时候,在手机配置上都会出现"内存容量:512MB ROM+512MB RAM "等等类似这样的说明,可能很多人都知道RAM的意思就是运存的意思,但是对于 ...

  5. 使用 stvd 编译STM8S 时能看到使用RAM ROM大小的方法

    刚刚安装的STVD编译器,编译时候不显示用了多少RAM和ROM?对于此问题.有两个方法:一是看.map文件 还有一种是 添加一个补丁,详细操作例如以下,能够在我的资源里下载对应的文件. http:// ...

  6. 基于Vivado调用ROM IP core设计DDS

     DDS直接数字式频率合成器(Direct Digital Synthesizer) 下面是使用MATLAB生成正弦波.三角波.方波的代码,直接使用即可. t=:*pi/^:*pi y=0.5*sin ...

  7. vivado中使用ROM IP核

    1.在project中选择IP Catalog 在IP Catalog中选择---->Block Memory Generator------>RAMs&ROMs&BRAM ...

  8. RAM,ROM,NAND Flash,NOR Flash(A)

    他们四者相互独立 RAM掉电易失数据: RAM又分两种,一种是静态RAM,SRAM:一种是动态RAM,DRAM.前者的存储速度要比后者快得多,我们现在使用的内存一般都是动态RAM. DDR是Doubl ...

  9. MOV/MOVX/MOVC、RAM/ROM

    (一) MOV:访问内部RAM(数据存储器),串行口访问 (对于51单片机来说,内部RAM256bit,00H-FFH) MOVX:访问外部RAM MOVC:访问程序存储器 ROM,(对于51单片机来 ...

随机推荐

  1. C#-弄懂泛型和协变、逆变

    脑图概览 泛型声明和使用 协变和逆变 <C#权威指南>上在委托篇中这样定义: 协变:委托方法的返回值类型直接或者间接地继承自委托前面的返回值类型; 逆变:委托签名中的参数类型继承自委托方法 ...

  2. 【leetcode】828. Unique Letter String

    题目如下: A character is unique in string S if it occurs exactly once in it. For example, in string S = ...

  3. 【Tomcat】Tomcat系统架构

    一.Tomcat顶层架构 先上一张Tomcat的顶层结构图(图A),如下: Tomcat中最顶层的容器是Server,代表着整个服务器,从上图中可以看出,一个Server可以包含至少一个Service ...

  4. Java Web学习总结(13)Listener监听器

    一,监听器介绍 监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通java程序,这个程序 ...

  5. IDEA使用中的快捷键

    项目与项目之间的跳转: Ctrl+Alt+]             下一个窗口. Ctrl+Alt+[             跳转回上一个窗口. 文件之间的跳转: Ctrl+E.          ...

  6. Oracle 的trim,ltrim,rtrim函数的区别

    该函数共有两种作用:第一种,即大家都比较熟悉的去除空格.例子:--TRIM去除指定字符的前后空格SQL> SELECT TRIM(' dd df ') FROM dual;TRIM('DDDF' ...

  7. lombda 使用记录

    ,,,}; String str1 = Arrays.stream(arr).boxed().map(i -> i.toString()) //必须将普通数组 boxed才能 在 map 里面 ...

  8. UITableView 支持左右滑动(一)

    原理如下: SwipeTableView subView 1 :  UIScrollView作为容器, 主要负责左右滑动, 每个tableView的顶部设置相同的contentInset subVie ...

  9. PAT 2019-3 7-4 Structure of a Binary Tree

    Description: Suppose that all the keys in a binary tree are distinct positive integers. Given the po ...

  10. python学习笔记之数据类型、字符编码、文件处理

    1.数据类型 1.数字(int,float) 整形(int):定义 age=20  #本质age=int(20) 浮点类型:salary=3000.3 #本质salary=float(3000.3) ...