CN114048157A - 一种内部总线地址重映射装置 - Google Patents
一种内部总线地址重映射装置 Download PDFInfo
- Publication number
- CN114048157A CN114048157A CN202111357545.4A CN202111357545A CN114048157A CN 114048157 A CN114048157 A CN 114048157A CN 202111357545 A CN202111357545 A CN 202111357545A CN 114048157 A CN114048157 A CN 114048157A
- Authority
- CN
- China
- Prior art keywords
- address
- remapping
- input
- window
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000008859 change Effects 0.000 claims abstract description 22
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 238000013507 mapping Methods 0.000 claims abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 101100328519 Caenorhabditis elegans cnt-2 gene Proteins 0.000 description 4
- 101100328518 Caenorhabditis elegans cnt-1 gene Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 1
- 101100003180 Colletotrichum lindemuthianum ATG1 gene Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
- G06F13/1631—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests through address comparison
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
Abstract
本发明公开了一种内部总线地址重映射装置,地址重映射装置部署于总线地址输出与存储器地址输入之间,对总线的读写地址进行训练,调整地址映射规则后,输出至存储器地址输入端口;地址重映射装置包括地址输入输出单元、效率比较单元,地址输入输出单元与效率比较单元双向连接;效率比较单元在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置;地址输入输出单元接收地址总线的地址输入,根据效率比较单元计算出的变化率相对较低的地址重映射窗口位宽所在位置,将输入地址进行重映射排列后输出至存储器地址输入端口。本发明给予用户更自由的选择,以及更大的地址调整空间,有效提高访问效率。
Description
技术领域
本发明涉及数据存储技术领域,尤其是一种内部总线地址重映射装置。
背景技术
目前,SOC等系统的数据存储量越发庞大,对读写速度及效率的要求也越来越高,但在一些高速存储设备中,由于数据量增多,行、bank、page的数量也越来越多,这就导致在数据读写过程中存在部分跨行、跨bank操作。在这类操作过程中,由于各存储器设备自身原因,会导致数据读写效率的极大降低,进而导致读写速度变慢。
部分从设备会根据自身读写规则对地址进行手动排序,通过多次尝试,从而找出一种较为合适的重映射方式,但该方式以下弊端:1、需用户主动尝试各种地址排列方式,费时费力,且对用户技术水平有一定的要求;2、地址重排限制较大,可选配置方式较少,并不一定能够找到最优的地址排序方式。
发明内容
针对上述问题,本发明提供了一种内部总线地址重映射装置,通过对地址的重映射、重排序,从而找到一种更为适合存储设备的地址映射方式,使得主设备在访问从设备时,减少频繁跨行、跨bank操作,从而提高数据的访问效率,提高主从设备的数据读写速度。
一种内部总线地址重映射装置,所述地址重映射装置部署于总线地址输出与存储器地址输入之间,对总线的读写地址进行训练,调整地址映射规则后,输出至存储器地址输入端口。
所述地址重映射装置包括地址输入输出单元、效率比较单元,所述地址输入输出单元与所述效率比较单元双向连接;所述效率比较单元在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置;所述地址输入输出单元接收地址总线的地址输入,根据所述效率比较单元计算出的变化率相对较低的地址重映射窗口位宽所在位置,将输入地址进行重映射排列后输出至存储器地址输入端口。
进一步的,所述效率比较单元包括对应n条地址线的n个变化次数计数器,n-c+1个窗口内变化总次数计数器,其中c为窗口位宽;当训练量达到既定量时,寄存n-c+1个窗口内变化总次数计数器中的数值并进行比较,找到其中的最小值,更新最小和数据位置count_min并输出训练结果。
进一步的,所述地址重映射装置还包括与所述效率比较单元连接的寄存器单元,用于工作模式配置、地址重映射窗口位置配置和地址有效位宽配置、训练量配置,工作模式包括训练模式和自定义模式两种。
当装置处于训练模式时,所述效率比较单元首先读取用户通过寄存器配置的训练量、地址有效位宽、窗口大小,然后在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置,将效率最高的地址重映射方式写回所述寄存器单元,完成训练,最终后续数据读写由所述地址输入输出单元按照训练后的配置进行地址重映射。
当装置处于自定义模式时,所述效率比较单元首先读取用户通过寄存器配置的地址有效位宽、窗口大小、地址重映射窗口位置,然后后续数据读写由所述地址输入输出单元按照自定义的配置进行地址重映射。
进一步的,总线地址输出与存储器地址输入之间级联部署多个地址重映射装置,每个地址重映射装置在自定义模式下,数据按照用户自定义的配置进行传输,对不同地址重映射装置进行不同的自定义配置,使得连续数据乱序地存储于存储器中。
本发明既可以根据训练得到的效率最高的地址重映射方式进行地址映射排列方案调整,又可以根据用户自定义的配置重映射排列地址窗口,给予用户更自由的选择,以及更大的地址调整空间,有效提高访问效率;本发明除用于提高访问效率之外,还可以用于数据加密传输,在数据传输时,通过自定义配置寄存器,将连续数据按乱序地址进行保存,通过多个地址重映射装置级联,提高保密性。
附图说明
图1是实施例1中的地址重映射装置部署情况示意图;
图2是实施例1中的地址重映射装置内部结构框图;
图3是效率比较单元的训练机制示意图;
图4是效率比较单元的效率训练时序意图;
图5是实施例2中的地址重映射装置内部结构框图;
图6是两种工作模式下的流程图;
图7是实施例3中的地址重映射装置部署情况示意图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
实施例1
一种内部总线地址重映射装置,如图1所示,部署于总线地址输出与存储器地址输入之间,对总线的读写地址进行训练,调整地址映射规则后,输出至存储器地址输入端口。所述地址重映射装置如图2所示,包括地址输入输出单元、效率比较单元,所述地址输入输出单元与所述效率比较单元双向连接。
所述效率比较单元在既定训练量(用户自定义)下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置。本实施例结合图3,对效率比较单元的工作过程进行展开阐述。
从图3可以看出,所述效率比较单元包括对应40条地址线addr0-39的40个变化次数计数器cnt0-39,37个窗口内变化总次数计数器Count0-36(窗口大小为4)。
图4给出效率比较单元的效率训练时序意图,在clk1-clk9时,输入地址addr0、addr1、addr2、addr3变化如图4所示,各地址线计数器cnt0、cnt1、cnt2、cnt3开始对该位地址的变化进行计数。以cnt0为例,在clk1和clk2时,addr0为1,因而cnt0一直为0;在clk3时,addr0变为0,此时计数器cnt0变为1(addr0变化1次);在clk4时,addr0变为1,此时计数器cnt0变为2(addr0又变化1次)。
与此同时,37个窗口内变化总次数计数器Count0-36同步进行求和计算:
Count0=cnt0+cnt1+cnt2+cnt3;
Count1=cnt1+cnt2+cnt3+cnt4;
Count2=cnt2+cnt3+cnt4+cnt5;
......
Count35=cnt35+cnt36+cnt37+cnt38;
Count36=cnt36+cnt37+cnt38+cnt39。
当训练量达到既定量时,寄存37个窗口内变化总次数计数器中的数值并进行比较,找到其中的最小值,更新最小和数据位置count_min并输出训练结果,此即变化率相对较低的地址重映射窗口位宽所在位置,对应效率最高的地址重映射方式。所述效率比较单元将效率最高的地址重映射方式写回所述寄存器单元,完成训练。最终后续数据读写由所述地址输入输出单元按照训练后的配置进行地址重映射。
所述地址输入输出单元接收地址总线的地址输入,按照训练后的配置,将输入地址进行重映射排列后输出至存储器地址输入端口。
实施例2
所述地址重映射装置还包括与所述效率比较单元连接的寄存器单元,如图5所示,用于工作模式配置、地址重映射窗口位置配置和地址有效位宽配置、训练量配置,工作模式包括训练模式和自定义模式两种,工作流程图如图6所示。
当装置处于训练模式时,所述效率比较单元首先读取用户通过寄存器配置的训练量、地址有效位宽、窗口大小,然后在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置,将效率最高的地址重映射方式写回所述寄存器单元,完成训练,最终后续数据读写由所述地址输入输出单元按照训练后的配置进行地址重映射。此种工作模式下,对地址无变化要求,通过训练调整地址映射规则。
当装置处于自定义模式时,所述效率比较单元首先读取用户通过寄存器配置的地址有效位宽、窗口大小、地址重映射窗口位置,然后后续数据读写由所述地址输入输出单元按照自定义的配置进行地址重映射。此种工作模式下,需要对地址变化规则有一定了解,无需训练,但需要用户进行寄存器的自定义配置。
地址重映射窗口可配置,地址有效位宽可配置,使得地址重映射装置能够适配多种存储器媒介。
实施例3
总线地址输出与存储器地址输入之间级联部署多个地址重映射装置,如图7所示,每个地址重映射装置在自定义模式下,数据按照用户自定义的配置进行传输,对不同地址重映射装置进行不同的自定义配置,使得连续数据乱序地存储于存储器中,可以达到数据加密传输的效果。
显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
Claims (4)
1.一种内部总线地址重映射装置,其特征在于,所述地址重映射装置部署于总线地址输出与存储器地址输入之间,对总线的读写地址进行训练,调整地址映射规则后,输出至存储器地址输入端口;
所述地址重映射装置包括地址输入输出单元、效率比较单元,所述地址输入输出单元与所述效率比较单元双向连接;所述效率比较单元在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置;所述地址输入输出单元接收地址总线的地址输入,根据所述效率比较单元计算出的变化率相对较低的地址重映射窗口位宽所在位置,将输入地址进行重映射排列后输出至存储器地址输入端口。
2.根据权利要求1所述的内部总线地址重映射装置,其特征在于,所述效率比较单元包括对应n条地址线的n个变化次数计数器,n-c+1个窗口内变化总次数计数器,其中c为窗口位宽;当训练量达到既定量时,寄存n-c+1个窗口内变化总次数计数器中的数值并进行比较,找到其中的最小值,更新最小和数据位置count_min并输出训练结果。
3.根据权利要求1或2所述的内部总线地址重映射装置,其特征在于,所述地址重映射装置还包括与所述效率比较单元连接的寄存器单元,用于工作模式配置、地址重映射窗口位置配置和地址有效位宽配置、训练量配置,工作模式包括训练模式和自定义模式两种;
当装置处于训练模式时,所述效率比较单元首先读取用户通过寄存器配置的训练量、地址有效位宽、窗口大小,然后在既定训练量下,通过计算比较得出变化率相对较低的地址重映射窗口位宽所在位置,将效率最高的地址重映射方式写回所述寄存器单元,完成训练,最终后续数据读写由所述地址输入输出单元按照训练后的配置进行地址重映射;
当装置处于自定义模式时,所述效率比较单元首先读取用户通过寄存器配置的地址有效位宽、窗口大小、地址重映射窗口位置,然后后续数据读写由所述地址输入输出单元按照自定义的配置进行地址重映射。
4.根据权利要求3所述的内部总线地址重映射装置,其特征在于,总线地址输出与存储器地址输入之间级联部署多个地址重映射装置,每个地址重映射装置在自定义模式下,数据按照用户自定义的配置进行传输,对不同地址重映射装置进行不同的自定义配置,使得连续数据乱序地存储于存储器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111357545.4A CN114048157B (zh) | 2021-11-16 | 2021-11-16 | 一种内部总线地址重映射装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111357545.4A CN114048157B (zh) | 2021-11-16 | 2021-11-16 | 一种内部总线地址重映射装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114048157A true CN114048157A (zh) | 2022-02-15 |
CN114048157B CN114048157B (zh) | 2024-08-13 |
Family
ID=80209552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111357545.4A Active CN114048157B (zh) | 2021-11-16 | 2021-11-16 | 一种内部总线地址重映射装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114048157B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5715419A (en) * | 1989-12-05 | 1998-02-03 | Texas Instruments Incorporated | Data communications system with address remapping for expanded external memory access |
US5838893A (en) * | 1996-12-26 | 1998-11-17 | Microsoft Corporation | Method and system for remapping physical memory |
US6340973B1 (en) * | 1998-02-04 | 2002-01-22 | Matsushita Electric Industrial Co., Ltd. | Memory control unit and memory control method and medium containing program for realizing the same |
CN101566928A (zh) * | 2003-08-14 | 2009-10-28 | 克姆佩棱特科技公司 | 虚拟磁盘驱动系统和方法 |
CN102326155A (zh) * | 2009-02-19 | 2012-01-18 | 飞思卡尔半导体公司 | 用于调试的地址转换跟踪消息的生成 |
CN104050090A (zh) * | 2013-03-15 | 2014-09-17 | 希捷科技有限公司 | 中间存储中的停留所排序数据 |
US20140281191A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Address mapping including generic bits |
CN104375962A (zh) * | 2014-11-10 | 2015-02-25 | 中国航天科技集团公司第九研究院第七七一研究所 | 系统芯片中cache与总线接口的统一位宽转换结构及其转换方法 |
US20180260161A1 (en) * | 2015-10-01 | 2018-09-13 | Upmem | Computing device with in memory processing and narrow data ports |
CN111949578A (zh) * | 2020-08-04 | 2020-11-17 | 西安电子科技大学 | 基于dfi标准的ddr3控制器 |
-
2021
- 2021-11-16 CN CN202111357545.4A patent/CN114048157B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5715419A (en) * | 1989-12-05 | 1998-02-03 | Texas Instruments Incorporated | Data communications system with address remapping for expanded external memory access |
US5838893A (en) * | 1996-12-26 | 1998-11-17 | Microsoft Corporation | Method and system for remapping physical memory |
US6340973B1 (en) * | 1998-02-04 | 2002-01-22 | Matsushita Electric Industrial Co., Ltd. | Memory control unit and memory control method and medium containing program for realizing the same |
CN101566928A (zh) * | 2003-08-14 | 2009-10-28 | 克姆佩棱特科技公司 | 虚拟磁盘驱动系统和方法 |
CN102326155A (zh) * | 2009-02-19 | 2012-01-18 | 飞思卡尔半导体公司 | 用于调试的地址转换跟踪消息的生成 |
CN104050090A (zh) * | 2013-03-15 | 2014-09-17 | 希捷科技有限公司 | 中间存储中的停留所排序数据 |
US20140281191A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Address mapping including generic bits |
CN104375962A (zh) * | 2014-11-10 | 2015-02-25 | 中国航天科技集团公司第九研究院第七七一研究所 | 系统芯片中cache与总线接口的统一位宽转换结构及其转换方法 |
US20180260161A1 (en) * | 2015-10-01 | 2018-09-13 | Upmem | Computing device with in memory processing and narrow data ports |
CN111949578A (zh) * | 2020-08-04 | 2020-11-17 | 西安电子科技大学 | 基于dfi标准的ddr3控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN114048157B (zh) | 2024-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7313639B2 (en) | Memory system and device with serialized data transfer | |
US5802580A (en) | High performance digital electronic system architecture and memory circuit thereof | |
US20060250879A1 (en) | Memory device and method having multiple internal data buses and memory bank interleaving | |
US6088772A (en) | Method and apparatus for improving system performance when reordering commands | |
CN105190524B (zh) | 用于生成去向和来自存储驱动器的非易失性半导体存储器的数据传送的描述符的装置和方法 | |
GB2430512A (en) | Controller for NAND flash memory | |
EP1730640A2 (en) | Memory hub architecture having programmable lane widths | |
EP1782219A2 (en) | Memory system and method having uni-directional data buses | |
KR20080048534A (ko) | Slc 및 mlc 플래시 메모리를 이용한 휴대용 데이터저장 장치 및 방법 | |
US20180253391A1 (en) | Multiple channel memory controller using virtual channel | |
US10311964B2 (en) | Memory control circuit and memory test method | |
EP2628157A1 (en) | Memory subsystem for counter-based and other applications | |
US12094565B2 (en) | Memory component with adjustable core-to-interface data rate ratio | |
WO2016202041A1 (zh) | 双倍速率同步动态随机存储器的控制方法及装置 | |
CN108139989B (zh) | 配备有存储器中的处理和窄访问端口的计算机设备 | |
US20050015558A1 (en) | Method and apparatus for generating a write mask key | |
WO2018148918A1 (zh) | 存储设备、芯片及存储设备的控制方法 | |
CN106445470B (zh) | 芯片中的配置寄存器的初始化方法和初始化装置 | |
US20220236874A1 (en) | Memory apparatus embedded with computing function and operation method thereof | |
CN114048157A (zh) | 一种内部总线地址重映射装置 | |
EP4278264A1 (en) | Shared multi-port memory from single port | |
WO2015094721A2 (en) | Apparatuses and methods for writing masked data to a buffer | |
CN107111547A (zh) | 存储器访问单元 | |
US9767054B2 (en) | Data transfer control device and memory-containing device | |
CN106155949A (zh) | 一种控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |