当前位置:   article > 正文

【FPGA】RAM伪双端口_伪双端口ram

伪双端口ram


一、RAM

RAM简介:

1、什么是RAM

随即存取存储器(Random Access Memory,RAM)

2、作用

可以把数据随时存储到任一指定的数据储存单元,也可以随时从储存单元中读取数据,在FPGA中通常作用:
用来存放程序及执行过程中产生的数据和运算结果等。

3、读写速率

读写速率由时钟频率决定

4、ZTNQ7020 block RAM资源

ZYNQ7020拥有140个BRAM,每一个BRAM为36kb

5、数据宽度配置

32K × 1,
16K × 2,
8K × 4,
4K × 9 (or x 8),
2K ×18 (or x 16),
1K × 36 (or x 32),
512 × 72 (or x 64)

6、端口介绍

单端口:

读写数据不能同时进行

伪双端口:

一个端口写一个端口读(固定)

真双端口:

一个端口读(写)一个端口写(读)(不固定)


二、RAM配置

1、配置界面介绍:

在这里插入图片描述

参数说明:

Interface Type:

RAM接口总线。这里保持默认,选择Native 接口类型(标准RAM接口总线)。

Memory Type:

存储器类型。可配置为Single Port RAM(单端口RAM)、Simple Dual Port RAM (伪双端口RAM)、True Dual Port RAM(真双端口RAM)、Single Port RAM(单端口ROM)和Dual Port ROM(双端口ROM)

ECC Options:

纠错能力选项,单端口RAM不支持ECC。

Write Enable:

字节写使能选项,勾中后可以单独将数据的某个字节写入RAM中。

Algorithm Options:

算法选项。可选择Minimum Area(最小面积)、Low Power(低功耗)和Fixed Primitives(固定的原语)

2、参数设置

在这里插入图片描述
这里的数据参数选择10 x 1024,其他全部选择默认即可。

三、RAM驱动方法

1.编写RAM驱动模块

驱动程序设计思路:

将RAM一直进行使能使其一直处于写入数据状态。

驱动程序:

`timescale 1ns / 1ps
module RAM(
    input                           clk     ,//system clock
    input                           rst_n   ,//reset
    input       [7:0]               data    ,//input data
    input                           done    ,//done
    input                           flag    ,//flag
    output      [7:0]               doutb    //RAM output data
);
reg                                 en      ;//energy
reg                                 wea     ;//write enable
reg             
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/906661
推荐阅读
相关标签
  

闽ICP备14008679号