CN112732338A - 一种寻址范围扩展方法和装置,及存储介质和电子设备 - Google Patents
一种寻址范围扩展方法和装置,及存储介质和电子设备 Download PDFInfo
- Publication number
- CN112732338A CN112732338A CN202110358756.3A CN202110358756A CN112732338A CN 112732338 A CN112732338 A CN 112732338A CN 202110358756 A CN202110358756 A CN 202110358756A CN 112732338 A CN112732338 A CN 112732338A
- Authority
- CN
- China
- Prior art keywords
- addressing
- base address
- preset number
- reserved
- registers
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/3013—Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
-
- 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/1668—Details of memory controller
-
- 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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30138—Extension of register space, e.g. register cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Information Transfer Systems (AREA)
Abstract
一种寻址范围扩展方法和装置,及存储介质和电子设备,其中,寻址范围扩展方法,包括:获取预设数量的预留寄存器;将寻址基址存于预设数量的预留寄存器中;从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址,可大幅度扩展了sdio协议的寻址范围,使协处理器可以完全摆脱cpu,驱动完全在主机端实现,无需firmware,减少了驱动的复杂度,使得芯片结构简单清晰,并且兼容标准的sdio协议。
Description
技术领域
本发明涉及数据传输领域,特别涉及一种寻址范围扩展方法和装置,及存储介质和电子设备。
背景技术
在现有sdio协议的标准下,协处理器只能访问存储器0-128KB空间,如果sdioslave支持CSA,每个function只能最多扩展到16MB的地址空间进行寻址,如果协处理器芯片没有cpu,仅依靠主机,通过sdio无法进行大规模寻址。
发明内容
(一)发明目的
本发明的目的是提供一种基于ASIC电路的能有效扩展寻址范围,提高寻址效率的寻址范围扩展方法和装置,及存储介质和电子设备。
(二)技术方案
为解决上述问题,本发明的第一方面提供一种寻址范围扩展方法,包括:获取预设数量的预留寄存器;将寻址基址存于预设数量的预留寄存器中;从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址。
可选地,所述获取预设数量的预留寄存器,包括:获取预留寄存器存储宽度;基于所述寻址基址的宽度和预留寄存器存储宽度,得到预设数量的预留寄存器。
可选地,所述预设数量至少为两个。
可选地,所述将寻址基址存于预设数量的预留寄存器中,包括:基于sdio协议的cmd52命令将寻址基址存于预设数量的预留寄存器中。
可选地,所述从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址,包括:基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输。
可选地,所述基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输,包括:修改cmd53命令中的获取寻址基址部分,使其从存有所述寻址基址的所述预设数量的预留寄存器进行读取。
可选地,所述获取预设数量的预留寄存器,包括:在CIA寄存器中获取cmd53命令可传输的预设数量的FBR寄存器。
本发明的第二方面提供一种寻址范围扩展装置,包括:获取模块,用于获取预设数量的预留寄存器;存储模块,用于将寻址基址存于预设数量的预留寄存器中;传输模块,从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址。
本发明的第三方面提供一种存储介质,存储介质上存储有计算机程序,程序被处理器执行时实现如本发明第一方面提供的寻址范围扩展方法。
本发明的第四方面提供电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如本发明第一方面提供的寻址范围扩展方法。
(三)有益效果
本发明的上述技术方案具有如下有益的技术效果:
本发明通过获取预设数量的预留寄存器;将寻址基址存于预设数量的预留寄存器中;从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址,可大幅度扩展了sdio协议的寻址范围,使协处理器可以完全摆脱cpu,驱动完全在主机端实现,减少了驱动的复杂度,使得芯片结构简单清晰,并且兼容标准的sdio协议。
附图说明
图1是是本发明第一实施方式的寻址范围扩展方法的流程图;
图2是是本发明第二实施方式的寻址范围扩展装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
现有技术中因为sdio的从基地址范围有限,一般采取先搬移部分数据到sdio从基地址空间中,然后cpu介入把这部分数据搬走,sdio主机再搬移部分数据到sdio从机地址范围之中,然后cpu再介入把数据搬走,这样循环,直到所有数据传输完成,所以这个流程之中是必须有cpu介入,导致寻址范围小,速度慢。
下面先对本发明的术语进行解释
CIA,即为common io area,是通用io区段,区段内有各种寄存器,寄存器地址依照标准规划。
FBR,即为function basic registers,是基本功能寄存器,FBR寄存器的内部地址为00n0ch-00n0eh。其中,本发明的FBR寄存器为:FBR寄存器组中sdio标准预留给用户自定义寄存器部分。
第一实施方式
如图1所示,本实施方式提供了一种寻址范围扩展方法,包括:获取预设数量的预留寄存器;将寻址基址存于预设数量的预留寄存器中;从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址。本实施方式的方法可大幅度扩展了sdio协议的寻址范围,使协处理器可以完全摆脱cpu,驱动完全在主机端实现,减少了驱动的复杂度,使得芯片结构简单清晰,并且兼容标准的sdio协议。
在一可选实施例中,主机下寻址命令,协处理器接收命令后用于实现上述方法。
在一可选实施例中,所述获取预设数量的预留寄存器,包括:获取预留寄存器存储宽度;基于所述寻址基址的宽度和预留寄存器存储宽度,得到预设数量的预留寄存器。可选地,所述预设数量至少为两个。
在一可选实施例中,所述将寻址基址存于预设数量的预留寄存器中,包括:基于sdio协议的cmd52命令将寻址基址存于预设数量的预留寄存器中。以便于进行后续寻址。具体来说,需要多少预留寄存器就需要以cmd52命令搬运多少次。
在一可选实施例中,所述从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址,包括:基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输。
在一可选实施例中,所述基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输,包括:修改cmd53命令中的获取寻址基址部分,使其从存有所述寻址基址的所述预设数量的预留寄存器进行读取。
在一可选实施例中,所述获取预设数量的预留寄存器,包括:在CIA寄存器中获取cmd53命令可传输的预设数量的FBR寄存器。其中FBR寄存器是CIA寄存器的下属存储器。
在一具体实施中,需求是将寻址范围扩展至4GB,此时,需要32比特寻址基址,若是预留存储器的存储宽度为8比特,那么需要4个预留存储器,使用4次cmd52 命令配置任意特定用户自定义FBR寄存器,该4个寄存器组成32比特寻址基址,然后使用cmd53命令对数据进行搬运,可以扩展cmd53命令的寻址范围至4GB。
在一具体实施中,在上一个实施例中,若是预留存储器的存储宽度为16比特,那么需要2个预留存储器,使用2次cmd52 命令配置任意特定用户自定义FBR寄存器,该2个寄存器组成32比特寻址基址,然后使用cmd53命令对数据进行搬运,可以扩展cmd53命令的寻址范围至4GB。
第二实施方式
如图2所示,本发明的第二实施方式提供一种寻址范围扩展装置,包括:获取模块,用于获取预设数量的预留寄存器;存储模块,用于将寻址基址存于预设数量的预留寄存器中;传输模块,从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址。本实施方式的寻址范围扩展装置可大幅度扩展了sdio协议的寻址范围,使协处理器可以完全摆脱cpu,驱动完全在主机端实现,减少了驱动的复杂度,使得芯片结构简单清晰,并且兼容标准的sdio协议。
在一可选实施例中,主机下寻址命令,协处理器接收命令后用于实现上述方法。
在一可选实施例中,所述获取模块,包括:寄存器存储宽度获取单元,用于获取预留寄存器存储宽度;寄存器数量获取单元,用于基于所述寻址基址的宽度预留寄存器存储宽度,得到预设数量的预留寄存器。
在一可选实施例中,所述存储模块,包括:存储单元,用于基于sdio协议的cmd52命令将寻址基址存于预设数量的预留寄存器中,以便于进行后续寻址。
在一可选实施例中,所述传输模块,包括:传输单元,用于基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输。
在一可选实施例中,所述传输单元,包括:cmd53命令传输单元,用于修改cmd53命令中的获取寻址基址部分,使其从存有所述寻址基址的所述预设数量的预留寄存器进行读取。
在一可选实施例中,所述获取模块,包括:寄存器获取单元,用于在CIA寄存器中获取cmd53命令可传输的预设数量的FBR寄存器。其中FBR寄存器是CIA寄存器的下属存储器。
本实施方式与第一实施方式相同的部分,不在多做赘述。
第三实施方式
本发明的第三实施方式提供一种存储介质,存储介质上存储有计算机程序,程序被处理器执行时实现如本发明第一实施方式提供的寻址范围扩展方法。本实施方式与第一实施方式相同的部分,不在多做赘述。
第四实施方式
本发明的第四实施方式提供电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如本发明第一实施方式提供的寻址范围扩展方法。本实施方式与第一实施方式相同的部分,不在多做赘述。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (9)
1.一种寻址范围扩展方法,其特征在于,包括:
获取预设数量的预留寄存器;
将寻址基址存于预设数量的预留寄存器中;
从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址;
所述获取预设数量的预留寄存器,包括:
获取预留寄存器存储宽度;
基于所述寻址基址的宽度和预留寄存器存储宽度,得到预设数量的预留寄存器。
2.根据权利要求1所述的寻址范围扩展方法,其特征在于,所述预设数量至少为两个。
3.根据权利要求1所述的寻址范围扩展方法,其特征在于,所述将寻址基址存于预设数量的预留寄存器中,包括:
基于sdio协议的cmd52命令将寻址基址存于预设数量的预留寄存器中。
4.根据权利要求1所述的寻址范围扩展方法,其特征在于,所述从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址,包括:
基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输。
5.根据权利要求4所述的寻址范围扩展方法,其特征在于,所述基于sdio协议的cmd53命令从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行数据传输,包括:
修改cmd53命令中的获取寻址基址部分,使其从存有所述寻址基址的所述预设数量的预留寄存器进行读取。
6.根据权利要求1所述的寻址范围扩展方法,其特征在于,所述获取预设数量的预留寄存器,包括:
在CIA寄存器中获取cmd53命令可传输的预设数量的FBR寄存器。
7.一种寻址范围扩展装置,其特征在于,包括:
获取模块,用于获取预设数量的预留寄存器;
存储模块,用于将寻址基址存于预设数量的预留寄存器中;
传输模块,从存有所述寻址基址的所述预设数量的预留寄存器中,获取寻址基址以进行寻址;
所述获取模块,包括:寄存器存储宽度获取单元,用于获取预留寄存器存储宽度;寄存器数量获取单元,用于基于所述寻址基址的宽度预留寄存器存储宽度,得到预设数量的预留寄存器。
8.一种存储介质,其特征在于,存储介质上存储有计算机程序,程序被处理器执行时实现如权利要求1-6任一项所述的寻址范围扩展方法。
9.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如权利要求1-6任一项所述的寻址范围扩展方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110358756.3A CN112732338B (zh) | 2021-04-02 | 2021-04-02 | 一种寻址范围扩展方法和装置,及存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110358756.3A CN112732338B (zh) | 2021-04-02 | 2021-04-02 | 一种寻址范围扩展方法和装置,及存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112732338A true CN112732338A (zh) | 2021-04-30 |
CN112732338B CN112732338B (zh) | 2021-08-31 |
Family
ID=75596347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110358756.3A Active CN112732338B (zh) | 2021-04-02 | 2021-04-02 | 一种寻址范围扩展方法和装置,及存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112732338B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080162832A1 (en) * | 2006-12-28 | 2008-07-03 | Fujitsu Limited | Storage controller and storage control method |
CN102262595A (zh) * | 2011-07-29 | 2011-11-30 | 航天恒星科技有限公司 | 一种微处理器扩展寻址方法 |
CN104424033A (zh) * | 2013-09-02 | 2015-03-18 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN104820574A (zh) * | 2015-04-23 | 2015-08-05 | 华为技术有限公司 | 一种访问间接寻址寄存器的方法及电子设备 |
-
2021
- 2021-04-02 CN CN202110358756.3A patent/CN112732338B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080162832A1 (en) * | 2006-12-28 | 2008-07-03 | Fujitsu Limited | Storage controller and storage control method |
CN102262595A (zh) * | 2011-07-29 | 2011-11-30 | 航天恒星科技有限公司 | 一种微处理器扩展寻址方法 |
CN104424033A (zh) * | 2013-09-02 | 2015-03-18 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN104820574A (zh) * | 2015-04-23 | 2015-08-05 | 华为技术有限公司 | 一种访问间接寻址寄存器的方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112732338B (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2013037517A5 (zh) | ||
KR101891387B1 (ko) | 영속 저장 장치에서 인접 데이터 블록과 비인접 세트의 논리 어드레스 블록 간에 판독 및 기입 | |
CN105283855A (zh) | 一种寻址方法及装置 | |
RU2016151308A (ru) | Способ и система для обновления динамического оперативного запоминающего устройства (dram) и устройство | |
CN109634664B (zh) | 一种cpu给硬件电路下发命令描述符的方法及装置 | |
US10372379B2 (en) | Command processing method and storage controller using the same | |
CN112199040B (zh) | 存储访问方法及智能处理装置 | |
CN102521175B (zh) | 一种sdram控制器及其工作方法 | |
CN105389268B (zh) | 资料储存***及其运作方法 | |
CN112732338B (zh) | 一种寻址范围扩展方法和装置,及存储介质和电子设备 | |
CN111176164B (zh) | 一种扩展多个远程输入输出模块的方法、装置及介质 | |
CN104346295A (zh) | 一种缓存刷新方法和装置 | |
CN113778934B (zh) | 基于PCIe的高速实时传输*** | |
CN110941565A (zh) | 用于芯片存储访问的内存管理方法和装置 | |
CN101089828A (zh) | 计算机访问扩充内存的方法 | |
CN107526686B (zh) | 数据处理电路与数据处理方法 | |
CN111651380A (zh) | 一种基于描述符表的参数加载方法 | |
JP2007528050A5 (zh) | ||
CN111176726A (zh) | 可配置的命令撤销方法及其装置 | |
CN103605622B (zh) | 一种传输数据的方法和设备 | |
CN111047503B (zh) | 一种顶点数组类命令的属性存储与组装优化电路 | |
US20130033945A1 (en) | System and method for interfacing burst mode devices and page mode devices | |
CN116644006B (zh) | 一种内存页面管理方法、***、装置、设备及计算机介质 | |
CN110399322B (zh) | 一种数据传输方法及乒乓dma架构 | |
US20240184712A1 (en) | Memory system with improved map table update efficiency, memory controller therefor, and operating method thereof |
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 |