一种动态可重构的ram读写方式

文档序号:552292 发布日期:2021-05-14 浏览:1次 >En<

阅读说明:本技术 一种动态可重构的ram读写方式 (Dynamic reconfigurable RAM read-write mode ) 是由 朱珂 王李伟 陶常勇 汪欣 王元磊 王盼 王永胜 李晓颖 刘长江 李文强 于 2021-03-02 设计创作,主要内容包括:本发明公开了一种动态可重构的RAM读写方式,在原始的顺序读写RAM的基础上,增加按奇偶元素分别存储两块RAM的读写方式、按上下三角元素分别存储两块RAM的读写方式、按奇偶行分别存储两块RAM的读写方式以及按行顺序存储到RAM的读写方式。通过寄存器设置能够实现RAM读写方式的改变,从而在硬件电路层面实现RAM读写方式的可重构。(The invention discloses a dynamic reconfigurable RAM read-write mode, which is characterized in that on the basis of reading and writing the RAM in the original sequence, a read-write mode for respectively storing two RAMs according to odd-even elements, a read-write mode for respectively storing the two RAMs according to upper and lower triangular elements, a read-write mode for respectively storing the two RAMs according to odd-even lines and a read-write mode for sequentially storing the two RAMs in lines are added. The change of the RAM read-write mode can be realized through the register setting, so that the reconfiguration of the RAM read-write mode is realized on a hardware circuit level.)

一种动态可重构的RAM读写方式

技术领域

本发明涉及RAM读写方式技术领域,尤其涉及一种动态可重构的RAM读写方式。

背景技术

随机存取存储器(random access memory,RAM)又称作"随机存储器",是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。在FPGA和ASIC的开发上,通常都会涉及到RAM的使用,如数据的暂存与缓存、FIFO的搭建等。通常对RAM的读写方式为单个RAM的顺序读写,其使用方式比较单一,使得某些数据存储方案在硬件电路上难以实现。

发明内容

针对现有技术不足,本发明的目的在于提供一种动态可重构的RAM读写方式,解决背景技术中的问题。

本发明提供如下技术方案:

一种动态可重构的RAM读写方式,在原始的顺序读写RAM的基础上,增加按奇偶元素分别存储两块RAM的读写方式、按上下三角元素分别存储两块RAM的读写方式、按奇偶行分别存储两块RAM的读写方式以及按行顺序存储到RAM的读写方式。

优选的,在所述按行顺序存储到RAM模式中,一个矩阵按行存储完整的存入一块RAM中,此时矩阵与RAM的地址映射关系按照公式:Addr = base_addr + i*J + j,进行,式中I、J为数据矩阵的行列数量,i、 j分别为矩阵中数据的行列标号。

优选的,在所述奇偶元素分别存储两块RAM模式中,一个矩阵相邻元素以奇偶方式存储到两块RAM中时,矩阵与RAM的地址映射关系按照公式:

当i+j为偶数时,ram1.addr = base_addr + (i/2)*(J/2) + j/2;

当i+j为奇数时,ram2.addr = base_addr + (i/2)*(J/2) + j/2,进行,式中I、J为数据矩阵的行列数量,i、 j分别为矩阵中数据的行列标号。

优选的,在所述上下三角分别存储模式中,一个矩阵以两个三角阵存储到两块RAM中时,矩阵与RAM的地址映射关系按照如下公式进行:

当i<j时, ram1.addr = base_addr + (J+J-i-1)*(i-1)/2 + j-I;

当i>j时, ram2.addr = base_addr + (J+J-j-1)*(j-1)/2 + i-I,式中I、J为数据矩阵的行列数量,i、 j分别为矩阵中数据的行列标号。

优选的,在所述按奇偶行分别存储两块RAM模式中,矩阵与RAM地址的映射关系按照以下公式进行:

当i/2的余数为0时,ram1.addr = base_addr + J*i/2 + j;

当i/2的余数为1时,ram2.addr = base_addr + J*i/2 + j,式中I、J为数据矩阵的行列数量,i、 j分别为矩阵中数据的行列标号。

与现有技术相比,本发明具有以下有益效果:

(1)本发明在于一种动态可重构的RAM读写方式,利用本发明提供的方法构建了RAM阵列、RAM读写方式配置寄存器以及RAM读写通路。RAM阵列主要提供了数据存储的空间,通过RAM读写方式配置寄存器的配置能够实现RAM读写方式的改变,最后将以上方案统一在RAM读写通路中,从而实现对RAM阵列的灵活读写操作。

(2)本发明在于一种动态可重构的RAM读写方式,RAM阵列并不限制RAM的数量,可以进行更多的扩展应用。

(3)本发明在于一种动态可重构的RAM读写方式,RAM的读写方式可分开进行配置,实现了更大的灵活性。

(4)本发明在于一种动态可重构的RAM读写方式,根据不同应用场景可对RAM阵列的大小,RAM的位宽和深度以及读写方式进行改变。

附图说明

为了更清楚地说明本发明实施方式的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明的RAM阵列示意图。

图2是本发明的矩阵元素和RAM的对应关系示意图。

图3是本发明的矩阵元素与RAM块的映射方式示意图。

图4是本发明的矩阵元素到RAM地址的计算公式示意图。

具体实施方式

为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述。显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。

因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。

实施例一

结合图1-4所示,一种动态可重构的RAM读写方式,在原始的顺序读写RAM的基础上,增加按奇偶元素分别存储两块RAM的读写方式、按上下三角元素分别存储两块RAM的读写方式、按奇偶行分别存储两块RAM的读写方式以及按行顺序存储到RAM的读写方式。

以数据矩阵存储为例,进行四种存储方式的说明。在以下说明中,i、j分别代表数据在矩阵中的行号和列号,从0开始;I、J分别代表数据矩阵的行列数量,从1开始;base_addr代表数据存储的RAM起始地址。

(1)在所述按行顺序存储到RAM模式中,一个矩阵按行存储完整的存入一块RAM中,此时矩阵与RAM的地址映射关系如下表所示:

矩阵与RAM的地址映射关系按照公式:Addr = base_addr + i*J + j,进行。

(2)在所述奇偶元素分别存储两块RAM模式中,一个矩阵相邻元素以奇偶方式存储到两块RAM中时,矩阵与RAM的地址映射关系如下表所示:

矩阵与RAM的地址映射关系按照公式:

当i+j为偶数时,ram1.addr = base_addr + (i/2)*(J/2) + j/2;

当i+j为奇数时,ram2.addr = base_addr + (i/2)*(J/2) + j/2,进行,式中I、J为数据矩阵的行列数量。

(3)在所述上下三角分别存储模式中,一个矩阵(一般为方阵)以两个三角阵存储到两块RAM中时,矩阵与RAM的地址映射关系如下表所示:

矩阵与RAM的地址映射关系按照如下公式进行:

当i<j时, ram1.addr = base_addr + (J+J-i-1)*(i-1)/2 + j-I;

当i>j时, ram2.addr = base_addr + (J+J-j-1)*(j-1)/2 + i-I。

(4)在所述按奇偶行分别存储两块RAM模式中,当矩阵数据特别大时,可能需要存储到2块或4块RAM中,以一个矩阵存储到两个矩阵中为例,此时矩阵与RAM地址的映射关系如下表所示:

矩阵与RAM地址的映射关系按照以下公式进行:

当i/2的余数为0时,ram1.addr = base_addr + J*i/2 + j;

当i/2的余数为1时,ram2.addr = base_addr + J*i/2 + j,式中I、J为数据矩阵的行列数量。

结合图1所示,在可重构读写方面,将多块RAM组合成RAM阵列,可实现如图1所示的RAM阵列(以四块RAM,四个通道为例)。

每个通道都与四块RAM相连,由于多个通道访问RAM的同一个口,因此需要8个4to1的MUX。在MUX进行选择时,通过固定优先级仲裁完成。

RAM阵列模块内部包含4个寄存器m_ch{0-3},用来配置矩阵元素和RAM的对应关系,寄存器具体含义参阅图2所示。

每次写RAM时,首先设置好这些寄存器,然后顺序写入RAM阵列的数据就会按照相应的方式存储于相应的RAM中。当需要访问存储在RAM中的某一个矩阵时,首先需要找到矩阵与RAM的对应关系,即可实现对相应矩阵中各元素的读取,其矩阵元素与RAM块的对应关系参考图3、4所示。

本发明一种动态可重构的RAM读写方式,利用本发明提供的方法构建了RAM阵列、RAM读写方式配置寄存器以及RAM读写通路。RAM阵列主要提供了数据存储的空间,通过RAM读写方式配置寄存器的配置能够实现RAM读写方式的改变,最后将以上方案统一在RAM读写通路中,从而实现对RAM阵列的灵活读写操作。RAM阵列并不限制RAM的数量,可以进行更多的扩展应用。RAM的读写方式可分开进行配置,实现了更大的灵活性。本发明提出的方案并没有针对某一种特定的场景,根据不同应用场景可对RAM阵列的大小,RAM的位宽和深度以及读写方式进行改变。

本发明提出了三种新的RAM读写方式,包括按奇偶元素分别存储两块RAM、按上下三角元素分别存储两块RAM、按奇偶行分别存储两块RAM以及按行分别存储到四片RAM的三种RAM读写方式。通过寄存器设置能够实现RAM读写方式的改变,从而在硬件电路层面实现RAM读写方式的可重构。

以上所述仅为本发明的优选实施方式而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:闪存存储器的操作方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!