CN107341130A - 具有近端数据处理引擎的芯片组 - Google Patents

具有近端数据处理引擎的芯片组 Download PDF

Info

Publication number
CN107341130A
CN107341130A CN201710516312.1A CN201710516312A CN107341130A CN 107341130 A CN107341130 A CN 107341130A CN 201710516312 A CN201710516312 A CN 201710516312A CN 107341130 A CN107341130 A CN 107341130A
Authority
CN
China
Prior art keywords
flow
control module
near end
chipset
ancillary equipment
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
Application number
CN201710516312.1A
Other languages
English (en)
Other versions
CN107341130B (zh
Inventor
李晓阳
齐宗普
王峥
胡迪
刘彦亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhaoxin Semiconductor Co Ltd
Original Assignee
Shanghai Zhaoxin Integrated Circuit Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Zhaoxin Integrated Circuit Co Ltd filed Critical Shanghai Zhaoxin Integrated Circuit Co Ltd
Priority to CN201710516312.1A priority Critical patent/CN107341130B/zh
Priority to CN201710526692.7A priority patent/CN107341131B/zh
Priority to TW106129303A priority patent/TWI637267B/zh
Priority to US15/797,490 priority patent/US10678717B2/en
Priority to US15/797,681 priority patent/US10521370B2/en
Publication of CN107341130A publication Critical patent/CN107341130A/zh
Application granted granted Critical
Publication of CN107341130B publication Critical patent/CN107341130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/621Coherency control relating to peripheral accessing, e.g. from DMA or I/O device

Abstract

具近端数据处理引擎的芯片组,以该近端数据处理引擎进行指令转换,以产生输入输出端口指令,操作连接该芯片组的外围设备。该芯片组还包括流量控制模块,将该芯片组所接收的关于该外围设备的操作要求导向该近端数据处理引擎,以转换成上述输入输出端口指令。近端数据处理引擎用于实现文件系统、或数据库加速、或应付远程直接存储器存取封包。

Description

具有近端数据处理引擎的芯片组
技术领域
本发明涉及高功能芯片组技术领域,尤其涉及一种具有近端数据处理引擎的芯片组。
背景技术
随着数据储存装置发展,计算机系统常有大量的数据存取需求。为了减轻计算机系统的中央处理单元的工作量,传统技术是使数据存取的大部分运算在数据端完成。如此一来,数据端产品通常内含厂商所各自设计的运算模块。为了兼容不同数据端产品,计算机系统的输入输出(I/O)通讯相当复杂。
发明内容
本发明在计算机系统的芯片组上设计近端数据处理(Near Data Processing,简称NDP)引擎,使数据端产品的设计简单,避免兼容性问题。
根据本发明一种实施方式实现的芯片组包括近端数据处理引擎以及流量控制模块。该流量控制模块,将该芯片组所接收的关于连接该芯片组的外围设备的操作要求导向该近端数据处理引擎,其中该近端数据处理引擎进行指令转换,以产生输入输出端口指令,操作该外围设备。该近端数据处理引擎包括数据缓冲器以及处理器。该流量控制模块是将该芯片组接收到的该操作要求置于该数据缓冲器,该处理器将该操作要求转换为上述输入输出端口指令后发送至该流量控制模块,由该流量控制模块导向该外围设备。
上述近端数据处理引擎可用于实现文件系统、或数据库加速、或应付远程直接存储器存取封包。
下文特举实施例,并配合所附图示,详细说明本发明内容。
附图说明
图1为方块图,根据本发明一种实施方式图解计算机系统100;
图2为流程图,参考图1说明该近端数据处理引擎122实现文件系统(file system)的一种实施方式;
图3为流程图,参考图1说明该近端数据处理引擎122加速数据库的一种实施方式;以及
图4为流程图,参考图1说明该近端数据处理引擎122如何应付远程计算机系统112传来的远程直接存储器存取(Remote Direct Memory Access,简称RDMA)封包。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应依照申请专利范围而界定。
图1为方块图,根据本发明一种实施方式图解计算机系统100,其中包括中央处理单元(CPU)102、动态随机存取存储器(DRAM)104、芯片组106、以及端口SATA、NVMe1、NVMe2、PCIe与所连结的外围设备,包括储存装置108_1~108_3以及网卡108_4。
接口或称为端口SATA、NVMe1、NVMe2、PCIe属计算机系统100的输入输出端(I/O),各自有遵循的传输接口,包括串行高级技术附件(Serial Advanced TechnologyAttachment,简称SATA)接口、高速非挥发式存储器(Nonvolatile Memory Express,简称NVMe)接口、以及高速外围组件互连(Peripheral Component Interconnect Express,简称PCIe)接口。还有使用以太(Ethernet)技术等其他实施方式的端口。端口SATA、NVMe1、NVMe2连结的外围设备分别为储存装置108_1、108_2、108_3。储存装置108_2与108_3可为固态硬盘SSD。端口PCIe连接的外围设备为网卡108_4。透过网卡108_4,计算机系统100经网络110与远程计算机系统112通讯。值得注意的是,本发明不限于上述端口所连结的外围设备108_1~108_4的类型,例如PCIe接口也可通过转接卡连结SATA接口外围设备或NVMe接口外围设备,并不局限于图1所示的网卡108_4。
特别是,芯片组106除了具有流量控制模块(Traffic Control Module)120,还内建近端数据处理(Near Data Processing,简称NDP)引擎122。流量控制模块(TrafficControl Module)120除了提供传统的外围和核心之间(peripheral and core)与外围和系统存储器之间(peripheral and DRAM)的流量控制,还提供导向近端数据处理引擎122的流量控制。流量控制模块120将辨识是否使用该近端数据处理引擎122。近端数据处理引擎122用于实现文件系统(file system)、或数据库加速(acceleration of database)、或应付远程计算机系统112发出的远程直接存储器存取(Remote Direct Memory Access,简称RDMA)封包。
如图1所示,流量控制模块120可以表格124详列各端口SATA、NVMe1、NVMe2、PCIe所连结的外围设备108_1…108_4是否需要该近端数据处理引擎122协同运作。该表格124可由该计算机系统100的驱动程序(driver)填写。“常设”模式代表不使用该近端数据处理引擎122。“NDP”模式代表使用该近端数据处理引擎122。图例的表格124显示SATA储存装置108_1为“常设”模式,且NVMe储存装置108_2与108_3以及PCIe网卡108_4为“NDP”模式。设置于中央处理单元102以及端口(包括SATA、NVMe1、NVMe2、PCIe)之间的流量控制模块120根据表格124导引信号。
在下行传输周期(downstream cycle),中央处理单元102发出信号,以操作输入输出端(I/O)的目标外围设备。流量控制模块120将比对表格124。若目标外围设备为“NDP”模式,流量控制模块120会将中央处理单元102提供的信号导向该近端数据处理引擎122。待该近端数据处理引擎122完成中央处理单元102提供的信号处理后,将处理后的信号(或数据)发送至流量控制模块120,流量控制模块120判断到接收到的信号的来源(source)为该近端数据处理引擎122时,略过比对表格124,根据信号中所包含的最初的目的地(destination)将其发送至对应的目标外围设备。反之,流量控制模块120比对表格124时若目标外围设备标注为“常设”模式,流量控制模块120会将中央处理单元102提供的信号不经该近端数据处理引擎122导向该目标外围设备。
在上行传输周期(upstream cycle),信号是源自输入输出端(I/O)的来源外围设备。流量控制模块120将比对表格124。若来源外围设备为“NDP”模式,流量控制模块120会将来源外围设备提供的信号导向该近端数据处理引擎122。待该近端数据处理引擎122完成来源外围设备提供的信号处理后,将处理后的信号(或数据)发送至流量控制模块120,流量控制模块120判断到接收到的信号的来源(source)为该近端数据处理引擎122时,略过比对表格124,根据信号中所包含的最初的目的地(destination)将其发送至对应的目的地即中央处理单元102或其他外围设备。反之,流量控制模块120比对表格124时若来源外围设备为“常设”模式,流量控制模块120会将来源外围设备提供的信号不经该近端数据处理引擎122导向中央处理单元102或其他外围设备。
图1中所述实施例还显示近端数据处理引擎122具有处理器(processor)126、数据缓冲器(data buffer)128、缓存一致性接口(Cache-Coherent Interface)130、样式比对模块(Pattern Matching Module)132、以及数据压缩器134。以下将列举实施方式说明该近端数据处理引擎122各模块的功能。
图2为流程图,参考图1说明该近端数据处理引擎122实现文件系统(file system)的一种实施方式。计算机系统100是以文件方式管理例如储存装置108_2与108_3内容。关于中央处理单元102指示的文件操作(file operations),步骤S202是以流量控制模块120接收,并据以查询表格124,获知目标的外围设备为“NDP”模式。步骤S204继而以近端数据处理引擎122实现文件系统(file system)。在一实施例中,流量控制模块120将文件操作(fileoperations)暂置于数据缓冲器128。处理器126经缓存一致性接口130自数据缓冲器128取得文件操作(file operations),将文件操作转换为输入输出端口指令(I/O commands)后回存该数据缓冲器128。步骤S206,流量控制模块120接收来自数据缓冲器128的输入输出端口指令(I/O commands)。步骤S208,流量控制模块120将输入输出端口指令(I/O commands)导向目标的外围设备,并接收目标的外围设备的响应(可为原始数据(raw data))。步骤S210再次以近端数据处理引擎122实现文件系统(file system)。在一实施例中,流量控制模块120将目标的外围设备的响应置于数据缓冲器128,由处理器126经缓存一致性接口130取出并转换为文件数据回存到该数据缓冲器128。步骤S212,流量控制模块120接收来自数据缓冲器128的文件数据。步骤S214,流量控制模块120将文件数据导向中央处理单元102。一种实施方式中,流量控制模块120是以动态随机存取存储器(DRAM)控制器140为文件数据目的地,以还暂存至DRAM 104。
芯片组106提供的近端数据处理引擎122所实现的文件系统(file system)有效降低中央处理单元102运算负担。中央处理单元102仅需单纯以文件为单位指示文件操作(file operations),无须进行耗费资源的文件系统(file system)运算。
一种实施方式中,中央处理单元102是呈虚拟文件系统(virtual file system,简称VFS)。如此一来,近端数据处理引擎122可实现任何实体文件系统。近端数据处理引擎122负责将虚拟文件系统指令(VFS commands)转换为文件系统管理指令(file systemmanagement commands)之后,再转换为区块输入输出端口指令(block I/O commands)。
中央处理单元102端的虚拟文件系统指令(VFS commands)可包括Iseek、read、write、mmap、open、ioctl…等。近端数据处理引擎122可由ARM架构嵌入式系统的Etx4fs技术实现。输入输出端的区块输入输出端口指令(block I/O commands)可包括create、lookup、link、readpage、mknod…等。
图3为流程图,参考图1说明该近端数据处理引擎122加速数据库的一种实施方式。例如,计算机系统100用于实现数据中心。中央处理单元102发出的是数据库要求(databaserequests)─如:空间配置create_namespace、空间移除remove_namespace、查询get(namespace_id,key),储存put(namespace_ids,keys,values,lengths)…等。至于数据库要求至输入输出端口指令(I/O commands)的转换则是由近端数据处理引擎122负责,数据库操作因而加速。以下以查询get要求为例进行说明。
步骤S302令流量控制模块120接收中央处理单元102提出的数据库查询要求get,并查询表格124获知是“NDP”模式装置的数据查询。步骤S304以近端数据处理引擎122实现数据库加速。在一实施例中,流量控制模块120将数据库查询要求get置于数据缓冲器128。经缓存一致性接口130,处理器126自数据缓冲器128取出数据库查询要求get、并辨识出欲查询的固态硬盘以转换出对应的输入输出端口指令(I/O commands)回存到该数据缓冲器128。步骤S306,流量控制模块120接收来自数据缓冲器128的输入输出端口指令(I/Ocommands)。步骤S308,流量控制模块120将输入输出端口指令(I/O commands)导向至目标的固态硬盘,使目标的固态硬盘提供查询内容并回传到流量控制模块120。步骤S310再次以近端数据处理引擎122加速数据库。在一实施例中,流量控制模块120将查询内容置于数据缓冲器128。经缓存一致性接口130,处理器126自数据缓冲器128取出查询内容、并转换为中央处理单元102兼容的格式回存到该数据缓冲器128。流量控制模块120以步骤S312接收来自数据缓冲器128的转换完成的查询内容,再将之以步骤S314导向中央处理单元102。一种实施方式中,流量控制模块120是以动态随机存取存储器(DRAM)控制器140为数据目的地,暂存至DRAM 104。
芯片组106的近端数据处理引擎122实现的数据库加速有效减轻中央处理单元102运算负担,也无须对数据端装置有特别改动。芯片组106具有高兼容性。
图4为流程图,参考图1说明该近端数据处理引擎122如何处理远程计算机系统112传来的远程直接存储器存取(Remote Direct Memory Access,简称RDMA)封包。该RDMA封包是经“NDP”模式的网卡108_4从网络110接收并输入该计算机系统100。该RDMA封包的存取对象为计算机系统100装配的本地存储器,如都是“NDP”模式的储存装置108_2或108_3(此处为固态硬盘SSD)。以下讨论远程读取操作。
步骤S402令流量控制模块120接收网卡108_4上传的RDMA封包,并查询表格124获知网卡108_4为“NDP”模式。步骤S404继而以近端数据处理引擎122实现远程直接存储器存取(RDMA)。在一实施例中,流量控制模块120将RDMA封包置于数据缓冲器128。经该缓存一致性接口130,样式比对模块132辨识该数据缓冲器128内容确实为RDMA封包,并辨识出是要求读取同为“NDP”模式的本地固态硬盘108_2(例如,检查RDMA封包内的Hash值)。经该缓存一致性接口130,处理器126自数据缓冲器128取得并转换该RDMA封包为操作固态硬盘的NVMe指令,将之回存数据缓冲器128。步骤S406,流量控制模块120接收来自数据缓冲器128的NVMe指令。步骤S408,流量控制模块120将NVMe指令导向固态硬盘108_2,使固态硬盘108_2提供要求内容并回传到流量控制模块120。值得注意的是,NVMe指令自身包含字段标示其目的地(destination)为固态硬盘108_2,流量控制模块120可根据该字段将其导向正确的目的地。步骤S410再次以近端数据处理引擎122实现远程直接存储器存取(RDMA)。在一实施例中,流量控制模块120将要求内容置于数据缓冲器128。经缓存一致性接口130,处理器126自数据缓冲器128取出要求内容、并包装为数据封包后回存到该数据缓冲器128。流量控制模块120以步骤S412接收来自数据缓冲器128的数据封包,再将之以步骤S414传递网卡108_4,经网络110供应给远程计算机系统112。
芯片组106提供的近端数据处理引擎122在计算机系统100以及远程计算机系统112之间实现远程直接存储器存取(RDMA)。中央处理单元102无介入固态存储器108_2以及远程计算机系统112之间的数据交流中。
值得注意的是,倘若样式比对模块132判断网卡108_4传来的是非RDMA封包,则流量控制模块120会改将网卡108_4提供的该个封包导向中央处理单元102处理。
另外,倘若判断网卡108_4传来的RDMA封包要求存取目标并非本地存储器108_2或108_3,样式比对模块132会形成回传封包标记存取目标,经缓存一致性接口130将该回传封包存入数据缓冲器128。处理器126将该回传封包发送至流量控制模块120,并经由该流量控制模块120交由该网卡108_4根据标记经网络110发送到正确目标。例如,样式比对模块132在判断RDMA封包要求存取第三端(非由计算机系统100管理、也非远程计算机系统112)的外围设备时,会形成回传封包标记该第三端,经缓存一致性接口130将该回传封包存入数据缓冲器128。处理器126将该回传封包发送至流量控制模块120,并经由该流量控制模块120交由该网卡108_4根据该第三端标记经网络110发送到第三端。
近端数据处理引擎122的数据压缩器134为选用模块,利用缓存一致性接口130与处理器126以及数据缓冲器128通讯,实现目标外围设备的数据压缩又或者可实现对中央处理单元102所下达的指令或操作的解压缩。近端数据处理引擎122可还添加加解密(encryption and decryption)模块(未标示在图中),利用缓存一致性接口130与处理器126以及数据缓冲器128通讯,实现目标外围设备的数据加解密又或者可实现对中央处理单元102所下达的指令或操作或回传的响应或数据的加解密。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何熟悉此项技艺者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视权利要求所界定的为准。

Claims (20)

1.一种芯片组,其特征在于,包括:
近端数据处理引擎;以及
流量控制模块,将该芯片组所接收的关于连接该芯片组的外围设备的操作要求导向该近端数据处理引擎,其中该近端数据处理引擎进行指令转换,以产生输入输出端口指令,操作该外围设备,
其中,该近端数据处理引擎包括数据缓冲器以及处理器,
该流量控制模块是将该芯片组接收到的该操作要求置于该数据缓冲器,该处理器将该操作要求转换为上述输入输出端口指令后发送至该流量控制模块,由该流量控制模块导向该外围设备。
2.根据权利要求1所述的芯片组,其特征在于:
该近端数据处理引擎用于文件系统;以及
该流量控制模块将中央处理单元发出的文件操作置于该数据缓冲器,该处理器将该文件操作转换为上述输入输出端口指令后发送至该流量控制模块,由该流量控制模块导向该外围设备。
3.根据权利要求2所述的芯片组,其特征在于:
该流量控制模块将上述输入输出端口指令导向该外围设备后,将该外围设备的响应存入该数据缓冲器,待由该处理器转换为文件数据后,导向该中央处理单元。
4.根据权利要求2所述的芯片组,其特征在于:
该中央处理单元发出虚拟文件系统指令至该芯片组;以及
该流量控制模块将上述虚拟文件系统指令交由该近端数据处理引擎转换为文件系统管理指令后,再转换为区块输入输出端口指令。
5.根据权利要求1所述的芯片组,其特征在于:
该近端数据处理引擎用于数据库加速;以及
该流量控制模块将中央处理单元发出的数据库要求置于该数据缓冲器,该处理器将该文件操作转换为上述输入输出端口指令后发送至该流量控制模块,由该流量控制模块导向该外围设备。
6.根据权利要求5所述的芯片组,其特征在于:
该流量控制模块将上述输入输出端口指令导向该外围设备后,将该外围设备的响应存入该数据缓冲器,当由该处理器转换成该中央处理单元的兼容格式后,导向该中央处理单元。
7.根据权利要求1所述的芯片组,其特征在于:
该近端数据处理引擎还包括样式比对模块,使该近端数据处理引擎处理远程计算机系统传送的远程直接存储器存取封包。
8.根据权利要求7所述的芯片组,其特征在于:
该流量控制模块将该远程直接存储器存取封包置于该数据缓冲器,由该样式比对模块判断是否要求操作该外围设备、且由该处理器转换为上述输入输出端口指令后,导向该外围设备。
9.根据权利要求8所述的芯片组,其特征在于:
该流量控制模块将上述输入输出端口指令导向该外围设备后,将该外围设备的响应存入该数据缓冲器,当由该处理器包装为数据封包后,导向该远程计算机系统。
10.根据权利要求7所述的芯片组,其特征在于:
该流量控制模块将该远程直接存储器存取封包置于该数据缓冲器,由该样式比对模块辨识;
该样式比对模块辨识出该远程直接存储器存取封包要求操作第三端的外围设备时,形成回传封包标记该第三端、并储存该回传封包于该数据缓冲器;以及
该处理器将该回传封包发送至该流量控制模块、并经由该流量控制模块导向该第三端。
11.根据权利要求7所述的芯片组,其特征在于:
该流量控制模块将该远程计算机装置所传来的远程封包置于该数据缓冲器,由该样式比对模块辨识;以及
该样式比对模块辨识出该远程封包非上述远程直接存储器存取封包时,由该流量控制模块将该远程封包导向中央处理单元。
12.根据权利要求1所述的芯片组,其特征在于:
该近端数据处理引擎包括缓存一致性接口;以及
该处理器经该缓存一致性接口存取该数据缓冲器。
13.根据权利要求12所述的芯片组,其特征在于:
该近端数据处理引擎包括数据压缩器,压缩该外围设备的数据;以及
该处理器经该缓存一致性接口操作该数据压缩器。
14.根据权利要求12所述的芯片组,其特征在于:
该近端数据处理引擎包括加解密模块,加解密该外围设备的数据;以及
该处理器经该缓存一致性接口操作该加解密模块。
15.根据权利要求1所述的芯片组,其特征在于:
该流量控制模块提供导向该近端数据处理引擎的流量控制,以及提供常设模式外围设备与中央处理单元之间不经过该近端数据处理引擎的流量控制。
16.根据权利要求15所述的芯片组,其特征在于:
该流量控制模块包括表格,标示该外围设备的模式;以及
该流量控制模块在接收到上述操作要求时,查询该表格,当确认上述操作要求指示的该外围设备为近端数据处理模式时,将上述操作要求导向该近端数据处理引擎。
17.根据权利要求16所述的芯片组,其特征在于:
该流量控制模块将该外围设备的响应导向该近端数据处理引擎处理。
18.根据权利要求15所述的芯片组,其特征在于:
该流量控制模块包括表格,标示该芯片组连接的网卡的模式,以及上述操作要求是由该网卡传递给该芯片组;以及
该流量控制模块在接收到上述操作要求时,查询该表格,当确认传递上述操作要求的该网卡为近端数据处理模式时,将上述操作要求导向该近端数据处理引擎。
19.根据权利要求18所述的芯片组,其特征在于:
该流量控制模块将该外围设备的响应导向该近端数据处理引擎处理。
20.根据权利要求1所述的芯片组,其特征在于:
该外围设备为储存装置,采用的是高速非挥发式存储器接口;以及
上述输入输出端口指令为高速非挥发式存储器指令。
CN201710516312.1A 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组 Active CN107341130B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201710516312.1A CN107341130B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组
CN201710526692.7A CN107341131B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组
TW106129303A TWI637267B (zh) 2017-06-29 2017-08-29 具近資料端處理引擎的晶片組
US15/797,490 US10678717B2 (en) 2017-06-29 2017-10-30 Chipset with near-data processing engine
US15/797,681 US10521370B2 (en) 2017-06-29 2017-10-30 Chipset with near-data processing engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710516312.1A CN107341130B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710526692.7A Division CN107341131B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组

Publications (2)

Publication Number Publication Date
CN107341130A true CN107341130A (zh) 2017-11-10
CN107341130B CN107341130B (zh) 2020-11-17

Family

ID=60217882

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710526692.7A Active CN107341131B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组
CN201710516312.1A Active CN107341130B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710526692.7A Active CN107341131B (zh) 2017-06-29 2017-06-29 具有近端数据处理引擎的芯片组

Country Status (3)

Country Link
US (2) US10678717B2 (zh)
CN (2) CN107341131B (zh)
TW (1) TWI637267B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347626A (zh) * 2018-04-02 2019-10-18 三星电子株式会社 服务器系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11119928B2 (en) * 2019-02-27 2021-09-14 International Business Machines Corporation Instant quiescing of an accelerator
CN112399524A (zh) * 2019-08-13 2021-02-23 苹果公司 连接模式下的系统信息请求和获取

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101882084A (zh) * 2009-05-08 2010-11-10 英业达股份有限公司 基本输入输出系统的数据处理装置
CN103853681A (zh) * 2012-11-29 2014-06-11 智原科技股份有限公司 超高速通用串行总线集线器及其相关流量管理方法
US20170123995A1 (en) * 2015-11-03 2017-05-04 Intel Corporation Efficient redundant array of independent disks (raid) write hole solutions

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020097418A1 (en) 2001-01-19 2002-07-25 Chang William Ho Raster image processor and processing method for universal data output
US6996642B2 (en) * 2002-04-02 2006-02-07 International Business Machines Corporation Adapter, converted data storage device and method of operation of a converted data storage device
JP2004062468A (ja) * 2002-07-26 2004-02-26 Renesas Technology Corp Dsrc車載器
US7188219B2 (en) * 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
TWI251745B (en) * 2004-07-27 2006-03-21 Via Tech Inc Apparatus and related method for calculating parity of redundant array of inexpensive disks
US20080263254A1 (en) * 2007-04-20 2008-10-23 Via Technologies, Inc. Method and System For Adjusting Bus Frequency And Link Width On A Bus
CN101841566B (zh) * 2010-04-01 2013-12-18 中兴通讯股份有限公司南京分公司 一种网络存储目标端驱动系统和方法
US8923892B2 (en) * 2010-05-14 2014-12-30 Qualcomm Incorporated Method and apparatus for updating femtocell proximity information
US20150121003A1 (en) * 2010-09-07 2015-04-30 Daniel L. Rosenband Storage controllers
WO2012103245A2 (en) * 2011-01-27 2012-08-02 Soft Machines Inc. Guest instruction block with near branching and far branching sequence construction to native instruction block
US8984228B2 (en) * 2011-12-13 2015-03-17 Intel Corporation Providing common caching agent for core and integrated input/output (IO) module
KR20130070251A (ko) * 2011-12-19 2013-06-27 에스케이하이닉스 주식회사 브릿지 칩셋 및 그것을 포함하는 데이터 저장 시스템
US9176911B2 (en) * 2012-12-11 2015-11-03 Intel Corporation Explicit flow control for implicit memory registration
GB2519140B (en) 2013-10-11 2021-03-10 Advanced Risc Mach Ltd Cumulative error detection in data transmission
CN103902486B (zh) * 2014-04-08 2017-02-22 华为技术有限公司 一种远端直接内存访问实现方法、装置及系统
US9396065B2 (en) 2014-06-25 2016-07-19 Intel Corporation Extensible memory hub
US20170155717A1 (en) * 2015-11-30 2017-06-01 Intel Corporation Direct memory access for endpoint devices
CN107145459B (zh) * 2016-03-01 2021-05-18 华为技术有限公司 一种级联板、ssd远程共享访问的系统和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101882084A (zh) * 2009-05-08 2010-11-10 英业达股份有限公司 基本输入输出系统的数据处理装置
CN103853681A (zh) * 2012-11-29 2014-06-11 智原科技股份有限公司 超高速通用串行总线集线器及其相关流量管理方法
US20170123995A1 (en) * 2015-11-03 2017-05-04 Intel Corporation Efficient redundant array of independent disks (raid) write hole solutions

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347626A (zh) * 2018-04-02 2019-10-18 三星电子株式会社 服务器系统
CN110347626B (zh) * 2018-04-02 2021-10-22 三星电子株式会社 服务器系统
TWI767111B (zh) * 2018-04-02 2022-06-11 南韓商三星電子股份有限公司 伺服器系統
US11803337B2 (en) 2018-04-02 2023-10-31 Samsung Electronics Co., Ltd. NDP-server: a data-centric computing architecture based on storage server in data center

Also Published As

Publication number Publication date
US20190004992A1 (en) 2019-01-03
CN107341131B (zh) 2021-02-09
CN107341130B (zh) 2020-11-17
CN107341131A (zh) 2017-11-10
US10521370B2 (en) 2019-12-31
TW201905710A (zh) 2019-02-01
TWI637267B (zh) 2018-10-01
US20190004981A1 (en) 2019-01-03
US10678717B2 (en) 2020-06-09

Similar Documents

Publication Publication Date Title
CN101501660B (zh) 因特网连接交换机和因特网连接系统
CN1883212B (zh) 在无线mac处理器中提供通过网络连接的数据流传输的方法和装置
CN102985889B (zh) 用于使用多个控制器进行通信的方法、系统和设备
CN107341130A (zh) 具有近端数据处理引擎的芯片组
CN112543925A (zh) 用于使用专用低延迟链路的多个硬件加速器的统一地址空间
CN106254896A (zh) 一种针对实时视频的分布式加密方法
CN103218337A (zh) 基于wishbone总线实现主与主、从与从通信的片上系统和方法
CN107643992B (zh) PCIe控制器与使用PCIe控制器的环回数据通路
KR102395075B1 (ko) PCIe 장치들에서의 고속 입출력을 위한 스토리지 시스템, 방법 및 장치
CN114385240A (zh) 组织可编程原子单元指令存储器的方法
CN116583829A (zh) 可编程原子操作符资源锁定
CN116235487A (zh) 多协议标头处理
JP6021132B2 (ja) 連続データをパケットにより無線通信する送信装置、受信装置、通信装置、プログラム、送信方法、及び、受信方法
CN107832248A (zh) 一种带有加解密功能的数据摆渡模块及其数据处理方法
CN112231735A (zh) 一种数据传输方法及系统
CN101901199B (zh) 一种数据透明传输的方法及系统
CN104461982B (zh) 一种对1394总线事件消息定时发送的处理方法及电路
CN110958216B (zh) 安全的在线网络分组传输
CN102299861B (zh) 一种报文流量控制方法
CN103077362A (zh) 具有安全机制的gpio ip核
CN110765044B (zh) 数据包传输装置及系统
CN105512075A (zh) 高速输出、输入接口电路及数据传输方法
CN113220238B (zh) 一种通用sas控制器接口实现方法
CN102693206B (zh) 在终点中无线usb同步的缓冲器管理
CN105224239A (zh) 一种flash存储器和存储系统

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
CP01 Change in the name or title of a patent holder

Address after: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203

Patentee after: Shanghai Zhaoxin Semiconductor Co.,Ltd.

Address before: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203

Patentee before: VIA ALLIANCE SEMICONDUCTOR Co.,Ltd.

CP01 Change in the name or title of a patent holder