CN1776607A - 多地址空间的块传输指令的控制方法及其装置 - Google Patents
多地址空间的块传输指令的控制方法及其装置 Download PDFInfo
- Publication number
- CN1776607A CN1776607A CN 200510061779 CN200510061779A CN1776607A CN 1776607 A CN1776607 A CN 1776607A CN 200510061779 CN200510061779 CN 200510061779 CN 200510061779 A CN200510061779 A CN 200510061779A CN 1776607 A CN1776607 A CN 1776607A
- Authority
- CN
- China
- Prior art keywords
- transmission
- register
- piece
- length
- transfer instruction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims abstract description 101
- 238000010586 diagram Methods 0.000 description 5
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了多地址空间的块传输指令的控制方法及其装置。该方法步骤如下:1)译码得到块传输类别码;2)根据块传输类别码,选通源器件和目的器件;3)根据源地址寄存器读源器件;4)根据目的地址寄存器写目的器件;5)调整源地址寄存器、目的地址寄存器和传输总长寄存器;6)判断传输总长寄存器的值是否为0,当其为0时,块传输过程结束;当其不为0时,继续步骤3)~6)。本发明具有结构简单、应用灵活的特点。在不添加额外模块的基础上,把本发明的块传输控制装置嵌入到普通处理器的体系结构中,即可实现该块传输指令;且传输过程中可以通过软件设置源/目的器件地址、传输数据总长以及传输步长。
Description
技术领域
本发明涉及多地址空间的块传输指令的控制方法及其装置。
背景技术
计算密集应用领域常采用主机-加速器结构来提高运算效率,主机与加速器之间大规模的数据传输一般通过DMA机制来完成。随着加速器日益系统化的发展,主机和加速器各部分独立编址,且对于不同地址空间传输的数据长度、每次传输的步长都不同。普通的指令传输或者DMA传输对这样的应用,没有很好的灵活性,对传输性能改进也不大。
发明内容
本发明的目的在于针对现有技术的不足,提供一种多地址空间的块传输指令的控制方法及其装置。
本发明的多地址空间的块传输指令的控制方法,其步骤如下:
1)对块传输指令进行译码,得到块传输类别码;
2)根据块传输类别码,识别出用于块传输的源器件和目的器件,并将其选通线置为有效;
3)根据源地址寄存器中的内容对块传输的源器件进行寻址,根据传输步长决定一次访问的数据量,将读取数据存入块传输缓冲区;
4)根据目的地址寄存器中的内容对块传输的目的器件进行寻址,将传输缓冲区数据写入目的器件;
5)将源地址寄存器和目的地址寄存器中的内容均增加传输步长个单位,分别作为下次访问源器件以及目的器件的起始地址,同时将传输总长寄存器中的值减少传输步长个单位;
6)判断传输总长寄存器中的值是否已经减少为0,当其为0时,块传输过程结束;当其不为0时,继续步骤3)至6)。
采用上述多地址空间的块传输指令控制方法的装置包括指令译码器、传输控制单元、传输寄存器组和数据缓冲区,其中传输寄存器组具有源地址寄存器、目的地址寄存器、传输总长寄存器和传输步长寄存器,指令译码器的输出端和传输控制单元的输入端相连,传输控制单元分别和源地址寄存器、目的地址寄存器、传输总长寄存器以及传输步长寄存器相连,传输控制单元的输出端和数据缓冲区的输入端相连。
本发明具有以下技术效果:
1.实现结构简单:可以在不添加额外模块的基础上,把本发明的块传输控制装置嵌入到普通处理器的体系结构中,即可实现该块传输指令。
2.应用灵活:主机、加速器中各部件独立编制,传输过程中可以通过软件设置数据总长以及传输步长。
附图说明
图1是本发明的块传输指令的控制装置结构框图;
图2是本发明的块传输指令控制方法的流程图;
图3是本发明的块传输指令格式框图;
图4是本发明的块传输控制装置在主机-加速器多地址空间中的应用架构框图。
具体实施方式
下面结合附图详细说明本发明。
参照图1,本发明的块传输控制装置包括指令译码器1、传输控制单元2、传输寄存器组3和数据缓冲区4,其中传输寄存器组3具有源地址寄存器5、目的地址寄存器6、传输总长寄存器7和传输步长寄存器8,指令译码器1的输出端和传输控制单元2的输入端相连,传输控制单元2分别和源地址寄存器5、目的地址寄存器6、传输总长寄存器7以及传输步长寄存器8相连,传输控制单元2的输出端和数据缓冲区4的输入端相连。图中,CS0~CS7为源器件和目的器件的选通信号,RD和WR分别为源器件和目的器件的读写控制信号,Addr为访问源器件和目的器件的地址信号,Data为访问源器件和目的器件的数据信号。
块传输指令的控制方法参见图2所示的流程图,其步骤如下:
1)对块传输指令进行译码,得到块传输类别码;
2)根据块传输类别码,识别出用于块传输的源器件和目的器件,并将其选通线置为有效;
3)根据源地址寄存器中的内容对块传输的源器件进行寻址,根据传输步长决定一次访问的数据量,将读取数据存入块传输缓冲区;
4)根据目的地址寄存器中的内容对块传输的目的器件进行寻址,将传输缓冲区数据写入目的器件;
5)将源地址寄存器和目的地址寄存器中的内容均增加传输步长个单位,分别作为下次访问源器件以及目的器件的起始地址,同时将传输总长寄存器中的值减少传输步长个单位;
6)判断传输总长寄存器中的值是否已经减少为0,当其为0时,块传输过程结束;当其不为0时,继续步骤3)至6)。
这里,块传输控制指令长度为32位(如图3所示),其中指令的第0位至第2位是块传输类别域,用以区分不同地址空间中用于此次块传输过程的源器件和目的器件;指令的第3位至第26位是预留域,用于便于今后扩充该指令;指令的第27位至第31位是操作码域,用于标志该块传输控制指令。
图4示出了本发明的块传输控制装置在主机-加速器多地址空间中的应用架构框图。本发明中的块传输控制装置置于加速器架构里的协处理器10中。
协处理器需要控制实现不同地址空间之间的块数据传输,包括主存储器11和各分布存储器12之间以及不同的分布储器之间。上述不同地址空间之间的块数据传输过程可以由本发明的块传输控制指令来实现。
以主存储器11和第一分布存储器12之间的块传输过程为例:
在块传输过程开始之前,首先需要对块传输控制装置中的传输寄存器组3进行初始化,共包括4个寄存器的设置——源地址寄存器5、目的地址寄存器6、传输总长寄存器7和传输步长寄存器8,分别确定了块传输过程中需要访问的源器件地址、目的器件地址、总共需要传输的数据长度以及一次传输过程中的数据长度。
完成传输寄存器组进行初始化之后,通过执行本发明的块传输控制指令,启动块传输过程。根据该块传输控制指令译码之后得到的块传输类型码,选通本次块传输过程的源器件和目的器件,即主存储器11和第一分布存储器12。然后,根据源地址寄存器5中的内容对主存储器进行寻址,根据传输步长寄存器7中的内容决定一次访问的数据量,将读取数据存入块传输控制装置中的缓冲区4。再根据目的地址寄存器6中的内容对第一分布存储器12进行寻址,并将传输缓冲区4数据写入第一分布存储器12中对应的地址单元。完成这一步块传输过程之后,分别将源地址寄存器5和目的地址寄存器6中的内容均增加传输步长个单位,作为下次访问主存储器11以及第一分布存储器12的起始地址,同时将传输总长寄存器8中的值减少传输步长个单位。接着,判断传输总长寄存器中的值是否为0,当其为0时,就表示该块传输过程结束;不为0时,则继续从主存储器11中读取数据并将其写入第一分布存储器12。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
Claims (3)
1.多地址空间的块传输指令的控制方法,其步骤如下:
1)对块传输指令进行译码,得到块传输类别码;
2)根据块传输类别码,识别出用于块传输的源器件和目的器件,并将其选通线置为有效;
3)根据源地址寄存器中的内容对块传输的源器件进行寻址,根据传输步长决定一次访问的数据量,将读取数据存入块传输缓冲区;
4)根据目的地址寄存器中的内容对块传输的目的器件进行寻址,将传输缓冲区数据写入目的器件;
5)将源地址寄存器和目的地址寄存器中的内容均增加传输步长个单位,分别作为下次访问源器件以及目的器件的起始地址,同时将传输总长寄存器中的值减少传输步长个单位;
6)判断传输总长寄存器中的值是否已经减少为0,当其为0时,块传输过程结束;当其不为0时,继续步骤3)至6)。
2.根据权利要求1所述多地址空间的块传输指令的控制方法,其特征在于,所说的块传输指令长度为32位,其中指令的第0位至第2位是块传输类别域;指令的第3位至第26位是预留域;指令的第27位至第31位是操作码域。
3.用于权利要求1所述的多地址空间的块传输指令控制方法的装置,其特征在于,它包括指令译码器(1)、传输控制单元(2)、传输寄存器组(3)和数据缓冲区(4),其中传输寄存器组(3)具有源地址寄存器(5)、目的地址寄存器(6)、传输总长寄存器(7)和传输步长寄存器(8),指令译码器(1)的输出端和传输控制单元(2)的输入端相连,传输控制单元(2)分别和源地址寄存器(5)、目的地址寄存器(6)、传输总长寄存器(7)以及传输步长寄存器(8)相连,传输控制单元(2)的输出端和数据缓冲区(4)的输入端相连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100617799A CN100346291C (zh) | 2005-12-02 | 2005-12-02 | 多地址空间的块传输指令的控制方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100617799A CN100346291C (zh) | 2005-12-02 | 2005-12-02 | 多地址空间的块传输指令的控制方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776607A true CN1776607A (zh) | 2006-05-24 |
CN100346291C CN100346291C (zh) | 2007-10-31 |
Family
ID=36766151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100617799A Expired - Fee Related CN100346291C (zh) | 2005-12-02 | 2005-12-02 | 多地址空间的块传输指令的控制方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100346291C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014000626A1 (en) * | 2012-06-27 | 2014-01-03 | Shanghai Xinhao Microelectronics Co. Ltd. | High-performance data cache system and method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3658101B2 (ja) * | 1996-09-13 | 2005-06-08 | 株式会社ルネサステクノロジ | データ処理装置 |
JP2001337821A (ja) * | 2000-05-26 | 2001-12-07 | Hitachi Ltd | データ処理装置 |
CN1232911C (zh) * | 2002-10-09 | 2005-12-21 | 凌阳科技股份有限公司 | 可适应性存取指令与资料的方法与架构 |
-
2005
- 2005-12-02 CN CNB2005100617799A patent/CN100346291C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014000626A1 (en) * | 2012-06-27 | 2014-01-03 | Shanghai Xinhao Microelectronics Co. Ltd. | High-performance data cache system and method |
CN103514107A (zh) * | 2012-06-27 | 2014-01-15 | 上海芯豪微电子有限公司 | 高性能数据缓存系统和方法 |
CN103514107B (zh) * | 2012-06-27 | 2018-04-06 | 上海芯豪微电子有限公司 | 高性能数据缓存系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100346291C (zh) | 2007-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1203420C (zh) | 用于移动存储块的直接存储器存取控制器及其移动方法 | |
US20050055493A1 (en) | [method for accessing large block flash memory] | |
US9405485B2 (en) | Method and apparatus for writing data to a flash memory | |
US9710191B1 (en) | Rapid memory buffer write storage system and method | |
CN101782872A (zh) | 使用固态盘的缓存系统和方法 | |
CN101354906B (zh) | 应用于固态硬盘的闪存控制器 | |
CN111209232B (zh) | 访问静态随机存取存储器的方法、装置、设备和存储介质 | |
US8775722B2 (en) | Storing data in parallel in a flash storage device using on chip page shifting between planes | |
WO2018063617A1 (en) | Apparatus and method for persisting blocks of data and metadata in a non-volatile memory (nvm) cache | |
CN103377154A (zh) | 存储器的访存控制装置及方法、处理器及北桥芯片 | |
CN1896971A (zh) | 操作系统辅助磁盘高速缓存系统和方法 | |
CN1713134A (zh) | 虚拟机控制结构译码器 | |
WO2008043287A1 (en) | Configurable single instruction multiple data unit | |
CN100346291C (zh) | 多地址空间的块传输指令的控制方法及其装置 | |
KR20090098275A (ko) | 플래시 메모리 시스템 | |
US5696768A (en) | Method and apparatus for data storage array tracking | |
TWI224259B (en) | Method and related apparatus for clearing data in a memory device | |
US20040078544A1 (en) | Memory address remapping method | |
CN1674151A (zh) | 一种针对图像处理的同步动态随机存储器存取方法 | |
CN1109301C (zh) | 显示存储器控制设备 | |
US20100262763A1 (en) | Data access method employed in multi-channel flash memory system and data access apparatus thereof | |
CN105335296A (zh) | 一种数据处理方法、装置及系统 | |
KR20040073167A (ko) | 시퀀셜 버퍼를 내장하여 디에스피의 데이터 억세스 성능을향상시키는 컴퓨터 시스템 및 그 컴퓨터 시스템의 데이터억세스 방법 | |
CN1495621A (zh) | 平行输入/输出数据传输控制器 | |
JP2007528050A5 (zh) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071031 Termination date: 20111202 |