KR102349245B1 - 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체 - Google Patents

데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체 Download PDF

Info

Publication number
KR102349245B1
KR102349245B1 KR1020200048810A KR20200048810A KR102349245B1 KR 102349245 B1 KR102349245 B1 KR 102349245B1 KR 1020200048810 A KR1020200048810 A KR 1020200048810A KR 20200048810 A KR20200048810 A KR 20200048810A KR 102349245 B1 KR102349245 B1 KR 102349245B1
Authority
KR
South Korea
Prior art keywords
access
access request
data
storage device
identity information
Prior art date
Application number
KR1020200048810A
Other languages
English (en)
Other versions
KR20210015617A (ko
Inventor
잉난 수
수에량 두
Original Assignee
베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
쿤룬신 테크놀로지(베이징) 캄파니 리미티드
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 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디., 쿤룬신 테크놀로지(베이징) 캄파니 리미티드 filed Critical 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
Publication of KR20210015617A publication Critical patent/KR20210015617A/ko
Application granted granted Critical
Publication of KR102349245B1 publication Critical patent/KR102349245B1/ko

Links

Images

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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • 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/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • 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/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/109Integrated on microchip, e.g. switch-on-chip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

본 개시의 실시예는 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 판독가능 저장 매체에 관한 것이다. 당해 방법은, 액세스 기기 집합 내의 제1 액세스 기기에서 저장 기기 집합 내의 제1 저장 기기로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 상기 제1 저장 기기로 업데이트된 제1 액세스 요청을 송신하는 단계 - 상기 업데이트된 제1 액세스 요청은 상기 제1 액세스 기기의 신원 정보를 포함함 - 를 포함할 수 있다. 당해 방법은, 상기 저장 기기 집합으로부터의 데이터가 수신된 것에 응답하여, 상기 데이터에 포함된 신원 정보를 결정하는 단계를 더 포함할 수 있다. 당해 방법은, 결정된 상기 신원 정보가 상기 제1 액세스 기기의 신원 정보에 대응되는 것에 응답하여, 상기 데이터를 상기 제1 액세스 기기로 송신하는 단계를 나아가 더 포함할 수 있다. 본 개시의 기술안은 각 액세스 기기의 신원 정보를 추가함으로써 각 액세스 요청을 처리하는 대기 시간을 단축시키고 나아가 메모리 액세스 봉쇄 문제를 완화시킨다.

Description

데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체{DATA ACCESSING METHOD AND APPARATUS, ELECTRONIC DEVICE AND COMPUTER STORAGE MEDIUM}
본 개시의 실시예는 주로 컴퓨터 분야에 관한 것으로, 더욱 구체적으로, 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 판독가능 저장 매체에 관한 것이다.
메모리는 통상적으로는 프로그램과 데이터를 보존하기 위한 것으로, 이는 컴퓨터의 중요한 구성 부분이다. 복잡한 시스템온칩(SOC시스템)에는 마스터 기기와 슬레이브 기기의 수량이 보다 많으므로 시스템은 네트워크온칩(NOC)을 적용하여 복수의 마스터 기기와 슬레이브 기기를 상호 접속시키는데, 이로 인해 각 마스터 기기와 슬레이브 기기를 연결하는 서로 다른 경로에서의 지연이 초래된다. NOC의 영향 외에도, 전역 메모리를 구성하는 저장 매체, 대응되는 저장 제어기 등 요소 역시 메모리에 대한 액세스의 지연에 막대한 영향을 끼치게 된다.
예를 들면, 한 그룹의 프로세서 코어 중의 복수의 프로세서 코어가 어느 하나 또는 복수의 전역 메모리를 동시에 액세스하는 경우, 현재의 하나의 그룹의 프로세서 코어는 오직 하나의 메모리 액세스 경로만 가지므로, 큐잉(queuing)이 발생할 뿐만 아니라, 보다 긴 메모리 액세스 지연이 있는 액세스 요청이 앞서 있다면 기타의 프로세서 코어의 액세스 요청이 봉쇄되어 복수의 프로세서 코어 사이의 메모리 액세스 봉쇄가 발생한다.
본 개시의 예시적인 실시예에 따르면, 복수의 칩 사이의 통신을 지원하는 방안이 제공된다.
본 개시의 제1 측면으로, 데이터 액세스 방법이 제공된다. 당해 방법은, 액세스 기기 집합 내의 제1 액세스 기기에서 저장 기기 집합 내의 제1 저장 기기로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 상기 제1 저장 기기로 업데이트된 제1 액세스 요청을 송신하는 단계 - 상기 업데이트된 제1 액세스 요청은 상기 제1 액세스 기기의 신원 정보를 포함함 - 를 포함할 수 있다. 당해 방법은, 상기 저장 기기 집합으로부터의 데이터가 수신된 것에 응답하여, 상기 데이터에 포함된 신원 정보를 결정하는 단계를 더 포함할 수 있다. 당해 방법은, 결정된 상기 신원 정보가 상기 제1 액세스 기기의 신원 정보에 대응되는 것에 응답하여, 상기 데이터를 상기 제1 액세스 기기로 송신하는 단계를 나아가 더 포함할 수 있다.
본 개시의 제2 측면으로, 데이터 액세스 장치가 제공된다. 당해 장치는, 액세스 기기 집합 내의 제1 액세스 기기에서 저장 기기 집합 내의 제1 저장 기기로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 상기 제1 저장 기기로 업데이트된 제1 액세스 요청을 송신하도록 구성되는 제1 액세스 요청 송신 모듈 - 상기 업데이트된 제1 액세스 요청은 상기 제1 액세스 기기의 신원 정보를 포함함 - ; 상기 저장 기기 집합으로부터의 데이터가 수신된 것에 응답하여, 상기 데이터에 포함된 신원 정보를 결정하도록 구성되는 신원 정보 결정 모듈; 및 결정된 상기 신원 정보가 상기 제1 액세스 기기의 신원 정보에 대응되는 것에 응답하여, 상기 데이터를 상기 제1 액세스 기기로 송신하도록 구성되는 데이터 송신 모듈; 을 포함한다.
본 개시의 제3 측면으로, 기기가 제공되는바, 이는 하나 또는 복수의 프로세서; 및 하나 또는 복수의 프로그램을 저장하는 저장 장치; 를 포함하고, 하나 또는 복수의 프로그램이 하나 또는 복수의 프로세서에 의해 실행될 경우, 하나 또는 복수의 프로세서가 본 개시의 제1 측면의 방법을 구현한다.
본 개시의 제4 측면으로, 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 저장 매체가 제공되는바, 당해 프로그램이 프로세서에 의해 실행될 경우, 본 개시의 제1 측면의 방법이 구현된다.
발명 내용 부분에서 설명하는 내용은 본 개시의 실시예의 핵심적인 또는 중요한 특징을 한정하고자 하는 것이 아니며, 본 개시의 범위를 한정하고자 하는 것도 아님을 이해하여야 한다. 본 개시의 기타의 특징은 아래 설명으로 이해하기 수월해질 것이다.
첨부 도면을 결부하고 아래의 상세한 설명을 참조하면 본 개시의 각 실시예의 상세한 설명 및 기타의 특징, 이점 및 측면이 더욱 분명해질것이다. 첨부 도면에서 동일한 또는 유사한 도면 부호는 동일한 또는 유소한 요소를 가리키는바, 여기서
도1은 본 개시에 따른 복수의 실시예가 구현될 수 있는 예시 환경의 개략도를 도시한다.
도2는 본 개시의 실시예에 따른 데이터 액세스 과정의 흐름도를 도시한다.
도3은 본 개시의 실시예에 따른 액세스 요청의 처리 과정의 흐름도를 도시한다.
도4는 본 개시의 실시예에 따른 데이터 액세스를 구현하는 장치의 개략적인 블록도를 도시한다.
도5는 본 개시의 복수의 실시예를 실시 가능한 컴퓨팅 기기의 블록도를 도시한다.
아래, 첨부 도면을 참조하여 본 개시의 실시예를 더욱 상세히 설명하고자 한다. 비록, 첨부 도면에 본 개시의 일부 실시예를 도시하였으나 본 개시는 다양한 형식으로 구현 가능한바, 이를 여기서 서술하는 실시예에 한정되는 것으로 해석하여서는 안되며, 반대로, 이러한 실시예를 제공하는 것은 본 개시를 더욱 투철하고 완전하게 이해하기 위한 것임을 이해하여야 한다. 본 개시의 첨부 도면 및 실시예는 예시적인 작용을 위한 것일 뿐, 본 개시의 보호 범위를 한정하기 위한 것이 아님을 이해하여야 한다.
본 개시의 실시예의 설명에서, 용어 '포함하다' 및 이의 유사한 용어는 개방형 포함, 즉 '포함하나 이에 한정되지 않는다'로 이해되어야 한다. 용어 '에 따라'는 '적어도 부분적으로 ??에 따라'로 이해되어야 한다. 용어 '일 실시예' 또는 '당해 실시예'는 '적어도 일 실시예'로 이해되어야 한다. 용어 '제1', '제2' 등은 서로 다른 또는 동일한 대상을 지칭할 수 있다. 후술에는 또한 기타의 명확한 및 암묵적인 정의가 포함될 수 있다.
상기에서 설명한 바와 같이, 액세스 기기 집합(즉, 프로세서 코어의 클러스터) 내의 2개 또는 더 많은 액세스 기기(즉, 프로세서 코어)가 저장 기기에 액세스하는 것을 지원하는 방법이 시급히 필요한바, 이에 따르면 빠르고 고효율이며 저비용인 메모리 액세스 메커니즘이 구현된다. 전통적인 데이터 액세스 방법은 통상적으로, 액세스 기기 집합 내의 하나의 액세스 기기가 액세스 요청을 개시하여서부터 데이터를 수신할 때까지의 과정이 전부 완료된 후에야 당해 액세스 기기 집합 내의 다른 액세스 기기가 저장 기기로 액세스 요청을 송신하도록 허용된다. 여기에는 분명히 저효율 문제가 있게 된다. 당해 문제를 해결하고자, 현재 이미 2가지 데이터 액세스 메커니즘이 연구개발되었는바, 한 방식은 복수의 액세스 기기가 독립적인 메모리 액세스 인터페이스를 사용하는 것이고, 다른 방식은 메모리 액세스 경로의 고속 캐시를 증가시키는 것이다.
첫 번째 방식에 있어서, 액세스 기기의 수가 제한되어야 하는바, 그러지 아니한 경우 네트워크온칩의 복잡도가 현저히 증가된다. 또한, 전역 저장의 대역폭은 유한한 것이므로, 액세스 기기의 수가 보다 많은 경우에는 과설계(over design) 문제가 존재할 수 있다. 따라서, 이러한 방식은 액세스 기기의 수가 보다 적은 시나리오에만 적용되며 액세스 기기 수의 확장이 불가능하다. 두 번째 방식에 있어서, 필요로 하는 하드웨어 복잡도가 보다 높은바, 이로써 별도의 면적 및 전력 오버헤드가 초래된다. 또한, 복수의 액세스 기기가 액세스하고자 하는 저장 공간이 보다 큰 차이를 가지는 경우, 증가된 고속 캐시의 적중률이 낮아지며 복수의 액세스 기기 사이의 메모리 액세스 봉쇄 문제가 여전히 심각하다.
본 개시의 실시예에 따르면, 데이터 액세스 방안이 제공된다. 당해 방안에서, 액세스 기기 집합 내의 각 액세스 기기에 의해 송신되는 액세스 요청에 상응한 액세스 기기에 대응되는 신원 정보를 표기할 수 있다. 액세스 기기 집합의 식별 입도(recognition granularity)가 나아가 더 세분화됨으로써 각 저장 기기로부터 리턴되는 데이터의 순서가 뒤바뀔 수 있다. 나아가, 바로 전의 액세스 기기에 데이터가 수신된 후에야 바로 뒤의 액세스 기기가 저장 기기로 액세스 요청을 송신하도록 허용되는 전통적인 방식과는 달리, 바로 전의 액세스 기기의 액세스 요청이 액세스 기기 집합 측으로부터 송신되기만 하면 바로 뒤의 액세스 기기가 액세스 요청을 송신하도록 허용된다. 당해 방안은 네트워크온칩의 특점을 충분히 이용하였는바, 상응한 신원 정보를 표기함으로써, 각 저장 기기로부터 수신되는 데이터의 순서가 뒤바뀌게 되고, 따라서 바로 뒤의 액세스 기기는 액세스 요청이 네트워크온칩을 통해 저장 기기로 송신되어서부터 데이터가 저장 기기로부터 네트워크온칩을 통해 바로 전의 액세스 기기로 리턴될 때까지의 시간 구간 동안을 대기하지 않아도 되므로 데이터 액세스의 효율이 현저히 향상된다.
본 개시의 복수의 실시예의 네트워크온칩에 연관되는 토폴로지 구조를 더욱 상세히 설명하고자, 우선, 본 개시의 실시예의 예시 환경에 대해 간단히 설명하여야 한다. 도1은 본 개시에 따른 복수의 실시예가 구현될 수 있는 예시 환경(100)의 개략도를 도시한다. 도1에 도시한 바와 같이, 액세스 기기 집합(110)은 마스터 기기로서 네트워크온칩(NOC)(120)을 통해 슬레이브 기기로서의 저장 기기(130), 저장 기기(140)와 통신 가능하게 연결된다. 액세스 기기 집합(110)은 복수의 액세스 기기, 예를 들면, 액세스 기기(112), 액세스 기기(114) 등을 포함한다. 또한, 액세스 기기 집합(110)은 처리 기기(150)를 더 포함한다.
전통적인 데이터 액세스 방안에서, 액세스 기기 집합(110)에 액세스 기기(112)와 액세스 기기(114)가 포함되는 복수의 액세스 기기에 의해 저장 기기 집합(160) 내의 저장 기기(130) 및/또는 저장 기기(140)에 대한 액세스 요청이 송신되는 경우, 예를 들면 액세스 기기(112)에 의해 앞서 송신된 액세스 요청은 처리 기기(150)에 의해 솔선으로 NOC(120)로 전달될 수 있다. 요청된, 저장 기기(130) 또는 저장 기기(140)로부터의 데이터가 액세스 기기(112)로 리턴되기 전에, 예를 들면 액세스 기기(114) 외의 기타의 액세스 기기의 액세스 요청은 모두 큐잉/대기가 필요한바, 이는 액세스 기기 집합(110) 내의 복수의 액세스 기기 사이에 메모리 액세스 봉쇄가 발생하는 근본 원인이다.
이 문제를 해결하고자, 처리 기기(150)는 수신되는 각 액세스 요청에 있어서 상응한 액세스 요청을 송신하는 액세스 기기에 대응되는 신원 정보를 표기하도록 구성된다. 예를 들면, 처리 기기(150)에 액세스 기기(112)의 액세스 요청이 수신되는 경우, 처리 기기(150)는 당해 액세스 요청을 처리함으로써 당해 액세스 요청에 액세스 기기(112)의 신원 정보를 표기한다. 유사하게, 처리 기기(150)에 액세스 기기(114)의 액세스 요청이 수신되는 경우, 처리 기기(150)는 당해 액세스 요청을 처리함으로써 당해 액세스 요청에 액세스 기기(114)의 신원 정보를 표기한다. 각 액세스 요청에는 상응한 신원 정보가 표기되어 있으므로 저장 기기(130) 또는 저장 기기(140)로부터의 데이터가 NOC(120)를 거쳐 리턴되는 경우, 처리 기기(150)는 데이터 전송에 관련되는 신원 정보에 따라 당해 데이터가 리턴되어야 할 액세스 기기를 결정할 수 있다.
예시로, 저장 기기(130)는 고 대역폭 메모리(HBM)와 SRAM 중의 하나일 수 있고, 저장 기기(140)는 고 대역폭 메모리(HBM)와 SRAM 중의 다른 하나일 수 있다. 일부 실시예에서, 저장 기기(130)와 저장 기기(140)는 동일한 저장 기기인바, 예를 들면 SRAM이다. 말인즉, 일부 실시예에서, 액세스 기기 집합(110) 내의 복수의 액세스 기기 모두가 동일한 저장 기기를 액세스할 수 있다.
상기에서 설명한 액세스 기기의 신원 정보의 표현 방식은 예시를 위한 것일 뿐, 본 발명을 한정하기 위한 것이 아님을 이해하여야 한다. 예를 들면, '당해 액세스 요청에 액세스 기기(112)의 신원 정보를 표기하는 것'은, 단지 액세스 기기(112)의 고유한 신원 정보를 당해 액세스 요청에 표기하는 것만을 한정하는 것이 아닌바, 액세스 기기(112)와 임의의 링킹 관계를 가지는 정보를 신원 정보로 하여 당해 액세스 요청에 표기할 수 있다. 따라서, 본 개시의 보호 범위에 위배되지 않는 전제 하에, 액세스 기기의 신원 정보는 상응한 액세스 기기와의 대응 관계 또는 링킹 관계만 나타내면 된다. 또한, 상기에서 설명한 NOC(120)에 대한 설명 역시 예시를 위한 것으로, 본 발명을 한정하기 위한 것이 아니다. 상기에서 설명한 방안의 원리를 더욱 명료하게 해석하고자, 아래, 도1을 참조하여 데이터 액세스의 과정을 더욱 상세히 설명하고자 한다.
도2는 본 개시의 실시예에 따른 데이터 액세스 과정(200)의 흐름도를 도시한다. 과정(200)은 도1의 처리 기기(150)에 의해 구현될 수 있다. 설명의 편의를 위해, 도1을 결부하여 과정(200)을 설명하고자 한다.
단계210에서, 처리 기기(150)는 우선, 액세스 기기 집합(110) 내의 예를 들면 액세스 기기(112)에서 저장 기기(130)로 송신된 제1 액세스 요청이 수신되었는지 여부를 판단할 수 있다. 처리 기기(150)에 아무런 액세스 요청도 수신되지 않았다면 계속하여 검출과 판단을 수행한다. 처리 기기(150)에 액세스 기기(112)가 저장 기기(130)에 송신한 제1 액세스 요청이 수신되었다면 단계220으로 진입한다.
단계220에서, 처리 기기(150)는 저장 기기(112)로 업데이트된 제1 액세스 요청을 송신할 수 있는바, 업데이트된 제1 액세스 요청은 제1 액세스 기기의 신원 정보를 포함한다. 일부 실시예에서는, 제1 액세스 요청을 처리함으로써 저장 기기(112)의 신원 정보를 표기할 수 있다. 도3은 본 개시의 실시예에 따른 액세스 요청의 처리 과정(300)의 흐름도를 도시한다.
단계310에서, 처리 기기(150)는 액세스 기기(112)의 신원 정보를 획득할 수 있다. 예시로, 처리 기기(150)는 액세스 기기(112) 자체의 고유한 신원 정보를 획득할 수 있다. 대안적으로 또는 추가로, 처리 기기(150)는 액세스 기기(112)와 대응 관계를 가지는 정보를 액세스 기기(112)의 신원 정보로서 획득할 수 있다.
단계320에서, 처리 기기(150)는 신원 정보를 제1 액세스 요청에 포함시킴으로써 업데이트된 제1 액세스 요청을 생성할 수 있다. 예시로, 처리 기기(150)는 제1 액세스 요청을 처리함으로써 신원 정보를 제1 액세스 요청에 포함시켜, 업데이트된 제1 액세스 요청을 생성할 수 있다. 당해 신원 정보는 식별 기능이 있는바, 이는 액세스 기기(112), 제1 액세스 요청, 데이터, 액세스 요청을 송신하는 통로 및 데이터를 리턴하는 통로를 일체로 링킹할 수 있음을 이해하여야 한다.
단계330에서, 처리 기기(150)는 업데이트된 제1 액세스 요청을 송신할 수 있다. 예시로, 처리 기기(150)는 업데이트된 제1 액세스 요청을 NOC(120)에 송신하고, NOC(120)는 나아가 업데이트된 제1 액세스 요청을 예를 들면 저장 기기(130)로 송신할 수 있다. 대안적으로 또는 추가로, 처리 기기(150)는 업데이트된 제1 액세스 요청을 직접적으로 또는 기타의 중간 네트워크를 거쳐 저장 기기(130)로 송신할 수 있다. 이러한 방식에 따르면, 신원 정보가 추가됨으로써, 리턴되는 데이터의 순차가 뒤바뀔 수 있는바, 이로써 후속으로 각 액세스 요청을 처리하는 대기 시간을 단축하는 데 편의가 제공된다.
액세스 요청의 처리 과정(300)에 대해 상세히 설명하고나서, 도2로 돌아가, 계속하여 데이터 액세스 과정(200)에 대해 설명하고자 한다. 액세스 기기(112)의 신원 정보가 포함된 업데이트된 제1 액세스 요청이 획득된 후, 과정200은 단계230으로 진입된다.
단계230에서, 처리 기기(150)는 저장 기기 집합(160)으로부터의 데이터가 수신되었는지 여부를 판단할 수 있다. 처리 기기(150)에 저장 기기 집합(160)으로부터의 아무런 데이터도 수신되지 않았다면 계속하여 검출과 판단을 수행한다. 처리 기기(150)에 저장 기기 집합(160)으로부터의 데이터가 수신되었다면 단계240으로 진입한다.
단계240에서, 처리 기기(150)는 데이터에 포함된 신원 정보를 결정할 수 있다. 예시로, 처리 기기(150)는 수신된 데이터를 해석하고 당해 데이터 중의 신원 정보를 획득할 수 있다. 대안적으로 또는 추가로, 처리 기기(150)는 데이터를 해석함으로써 당해 데이터가 리턴되는 통로를 인지하고, 나아가 후속으로 데이터를 액세스 기기(112)로 리턴하는 것을 결정하는 것에 대해 준비할 수 있다.
단계250에서, 처리 기기(150)는 결정된 신원 정보가 액세스 기기(112)의 신원 정보에 대응되는지 여부를 판단할 수 있다. 결정된 신원 정보가 액세스 기기(112)의 신원 정보에 대응되지 않는다면, 이는 당해 데이터가 기타의 액세스 기기, 예를 들면 액세스 기기(114)에 속한다는 것을 말해준다. 결정된 신원 정보가 액세스 기기(112)의 신원 정보에 대응된다면 단계260으로 진입한다.
단계260에서, 처리 기기(150)는 데이터를 액세스 기기(114)로 송신할 수 있다. 처리 기기(150)는 데이터를 해석함으로써 당해 데이터가 속하는 액세스 기기의 신원 정보를 인지할 수 있음을 이해하여야 한다. 또한, 상기에서 설명한 바와 같이, 당해 신원 정보에 의해 액세스 기기(112)가 데이터를 리턴하는 통로와 일체로 링킹될 수 있으므로, 처리 기기(150)는 데이터를 해석함으로써 당해 데이터가 리턴되는 통로를 인지하고, 나아가 당해 통로에 링킹되는 액세스 기기, 즉, 당해 데이터가 속하는 액세스 기기를 결정할 수 있다. 이러한 방식에 따르면, 액세스 기기 집합(110) 측에 수신되는 데이터의 순차는 뒤바뀔 수 있는바, 따라서 바로 전의 액세스 요청의 데이터가 리턴되는 것을 대기하는 시간이 절약될 수 있다.
NOC(120)의 복잡도를 낮추고자, 액세스 기기 집합(110)에 통상적으로 하나의 인터페이스만 설정됨을 이해하여야 한다. 따라서, 처리 기기(150)에 복수의 액세스 기기(예를 들면 액세스 기기(112), 액세스 기기(114))로부터의 액세스 요청이 수신된다면 액세스 요청을 직렬 처리할 수 있다. 예시로, 액세스 기기(112)를 처리하는 과정에서, 과정(200)은, 처리 기기(150)가 액세스 기기 집합(110) 내의 액세스 기기(114)에서 저장 기기 집합(160) 내의 저장 기기(140)로 송신된 제2 액세스 요청이 수신되었는지 여부를 판단하고, 처리 기기(150)에 액세스 기기(114)가 저장 기기(140)에 송신한 제2 액세스 요청이 수신되었다면 나아가 이전의 제1 액세스 요청이 이미 송신되었는지 여부를 결정하는 단계를 더 포함할 수 있다. 당해 제1 액세스 요청이 이미 송신되었다고 결정되면 처리 기기(150)는 저장 기기(140)로 업데이트된 제2 액세스 요청을 송신하는바, 당해 업데이트된 제2 액세스 요청은 액세스 기기(114)의 신원 정보를 포함한다. 다음, 업데이트된 제2 액세스 요청은 NOC(120)를 거쳐 저장 기기(140)로 송신된다. 이러한 방식에 따르면, 처리 기기(150)가 복수의 액세스 요청을 직렬 처리할 때마다, 바로 전의 액세스 요청이 처리 기기(150)에 의해 송신되기만 하면 처리 기기(150)는 바로 뒤의 액세스 요청을 처리할 수 있으며, 전통적인 데이터 액세스 메커니즘처럼 바로 전의 액세스 요청의 데이터가 리턴될 때까지 대기할 필요가 없다. 따라서, 상기에서 설명한 방식은 대기 시간을 현저히 감소시키고 심각한 메모리 액세스 봉쇄가 회피된다.
또한, 메모리 액세스 봉쇄를 나아가 더 완화시키고자, 액세스 기기 집합(110)의 인터페이스 수량을 유한하게 증가시킬 수 있다. 예시로, 액세스 기기 집합(110)은 2개의 인터페이스, 즉, 제1 인터페이스와 제2 인터페이스를 가짐으로써 복수의 액세스 요청에 대한 병렬 처리를 구현할 수 있다. 예를 들면, 상기에서 설명한 제1 액세스 요청은 액세스 기기 집합(110)의 제1 인터페이스를 거쳐 수신될 수 있고, 상기에서 설명한 제2 액세스 요청은 액세스 기기 집합(110)의 제2 인터페이스를 거쳐 수신될 수 있다.
전통 기술에 비하면, 본 개시의 방안은 각 액세스 기기의 신원 정보를 추가함으로써 각각의 리턴되는 데이터의 순차를 뒤바뀌게 할 수 있다. 이에 따르면 바로 전의 액세스 요청의 데이터를 액세스하는 전체 시간 주기만큼 대기할 필요 없이, 바로 전의 액세스 요청을 처리하는 시간만큼만 대기하면, 바로 다음의 액세스 요청에 대한 처리를 수행할 수 있다. 또한, 액세스 기기 집합(110)의 인터페이스 수량이 현저히 증가되지 않았으므로 액세스 기기 집합(110)의 액세스 기기 수량에 대한 확장 업데이트를 구현할 수 있고 확장 업데이트가 전체 시스템온칩에 대한 영향이 감소된다.
본 개시의 시스템온칩에 있어서, 본 개시의 상기에서 설명한 실시예는 시스템온칩 집적 프로토콜의 특성을 충분히 이용하였는바, 단지 신원 정보를 추가하는 단계만을 증가시킴으로써 최소한의 대가로 액세스 기기 집합(110) 내의 복수의 액세스 기기 사이의 메모리 액세스 봉쇄 문제를 줄이며 시스템의 복잡도, 하드웨어 전력 및 점용 면적 측면에 있어서는 모두 불리한 영향이 없다.
상기에서는 일부 예시적인 시나리오에서 2개의 액세스 기기인 액세스 기기(112), 액세스 기기(114)는 NOC(120)를 거쳐 2개의 저장 기기인 저장 기기(130), 저장 기기(140)에 각각 액세스하는 예시에 대해 설명하였다. 그러나, 이러한 시나리오의 설명은 예시의 방식으로 본 개시의 실시예를 해석하고 설명하기 위한 것임을 이해하여야 한다. 실제 필요에 따르면, 서로 다르거나 또는 유사한 시나리오에서는 기타의 상황이 존재할 수도 있다. 본 개시의 기술안은 본질적으로 NOC분야로의 응용에 한정되는 것이 아닌바, 본 개시의 기술안은 기타의 데이터 액세스 분야에 응용되는 경우에 마찬가지로 상기에서 설명한 여러 가지 이점을 가질 수 있음을 또한 유의하여야 한다.
도4는 본 개시의 실시예에 따른 데이터의 액세스를 구현하는 장치(400)의 개략적인 블록도를 도시한다. 도4에 도시한 바와 같이, 장치(400)는, 액세스 기기 집합(110) 내의 액세스 기기(112)에서 저장 기기 집합(160) 내의 저장 기기(130)로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 저장 기기(130)로 업데이트된 제1 액세스 요청을 송신하도록 구성되는 제1 액세스 요청 송신 모듈(410) - 당해 업데이트된 제1 액세스 요청은 액세스 기기(112)의 신원 정보를 포함함 - ; 저장 기기 집합(160)으로부터의 데이터가 수신된 것에 응답하여, 데이터에 포함된 신원 정보를 결정하도록 구성되는 신원 정보 결정 모듈(420); 및 결정된 신원 정보가 액세스 기기(112)의 신원 정보에 대응되는 것에 응답하여, 데이터를 액세스 기기(112)로 송신하도록 구성되는 데이터 송신 모듈(430); 을 포함할 수 있다.
일부 실시예에서, 제1 액세스 요청 송신 모듈(410)은, 액세스 기기(112)의 신원 정보를 획득하도록 구성되는 신원 정보 획득 모듈(미도시); 신원 정보를 제1 액세스 요청에 포함시킴으로써 업데이트된 제1 액세스 요청을 생성하도록 구성되는 업데이트 모듈(미도시); 및 업데이트된 제1 액세스 요청을 송신하도록 구성되는 업데이트 요청 송신 모듈(미도시); 을 더 포함할 수 있다.
일부 실시예에서, 업데이트된 제1 액세스 요청은 네트워크온칩을 통해 저장 기기(112)로 송신된다.
일부 실시예에서, 장치(400)는, 액세스 기기 집합(110) 내의 액세스 기기(114)에서 저장 기기 집합(160) 내의 저장 기기(140)로 송신된 제2 액세스 요청이 수신된 것에 응답하여, 제1 액세스 요청이 이미 송신되었는지 여부를 결정하도록 구성되는 송신 결정 모듈(미도시); 및 제1 액세스 요청이 이미 송신되었다고 결정된 것에 응답하여, 저장 기기(140)로 업데이트된 제2 액세스 요청을 송신하도록 구성되는 제2 액세스 요청 송신 모듈(미도시); 을 더 포함하고, 업데이트된 제2 액세스 요청은 액세스 기기(114)의 신원 정보를 포함할 수 있다.
일부 실시예에서, 제1 액세스 요청은 액세스 기기 집합(110)의 제1 인터페이스를 거쳐 수신되고, 제2 액세스 요청은 액세스 기기 집합(110)의 제2 인터페이스를 거쳐 수신된다.
일부 실시예에서, 저장 기기(130)와 저장 기기(140)는 같은 것인바, 동일한 저장 기기이다.
일부 실시예에서, 업데이트된 제2 액세스 요청은 NOC(120)를 거쳐 저장 기기(140)로 송신된다.
도5는 본 개시의 실시예를 실시 가능한 예시적인 기기(500)의 개략적인 블록도를 도시한다. 도5에 도시한 바와 같이, 기기(500)는 중앙 처리 장치(CPU)(501)를 포함하는바, 이는 판독 전용 메모리(ROM)(502)에 저장되는 컴퓨터 프로그램 명령어 또는 저장 유닛(508)으로 부터 랜덤 액세스 메모리(RAM)(503)로 로딩되는 컴퓨터 프로그램 명령어에 따라 여러 가지 적합한 동작 및 처리를 수행한다. RAM(503)에는, 기기(500) 조작에 필요한 여러 가지 프로그램 및 데이터가 저장될 수도 있다. CPU (501), ROM (502) 및 RAM( 803)은 버스(504)를 통해 서로 연결된다. 입력/출력(I/O) 인터페이스(505)도 버스(504)에 연결된다.
기기(500) 내의 복수의 부품은 I/O 인터페이스(505)에 연결되는바, 입력 유닛(506), 예를 들면 키보드, 마우스 등; 출력 유닛(507), 예를 들면 여러 가지 유형의 디스플레이, 스피커 등; 저장 유닛(508), 예를 들면 자기 디스크, 광 디스크 등; 및 통신 유닛(509), 예를 들면 너트워크 카드, 모뎀, 무선 통신 송수신기 등을 포함한다. 통신 유닛(509)은 기기(500)가 인터넷과 같은 컴퓨터 네트워크 및/또는 여러 가지 전기 통신망을 통해 기타의 기기와 정보/데이터를 교환하도록 허용한다.
처리 유닛(501)은 상기에서 설명한 각 방법 및 처리를 수행하는바, 예를 들면 과정(200) 또는 과정(300)이다. 예를 들어 일부 실시예에서, 과정(200) 또는 과정(300)은 컴퓨터 소프트웨어 프로그램으로 구현될 수 있고, 기계 판독가능 매체, 예를 들면 저장 유닛(508)에 유형적으로(tangibly) 포함될 수 있다. 일부 실시예에서, 컴퓨터 프로그램의 일부 또는 전부가 ROM(502) 및/또는 통신 유닛(509)을 통해 기기(500)에 로딩되거나 및/또는 설치될 수 있다. 컴퓨터 프로그램이 RAM(503)에 로딩되어 CPU(501)에 의해 실행될 경우, 상기에서 설명한 과정(300)의 하나 또는 복수의 단계가 실행될 수 있다. 대안적으로, 기타의 실시예에서, CPU (501)는 기타의 임의의 적합한 방식으로(예를 들면 펌웨어에 의해)과정(200) 또는 과정(300)을 수행하도록 구성될 수 있다.
본 명세서에서 상기에서 설명한 기능은 적어도 일부가 하나 또는 복수의 하드웨어 논리 부품에 의해 수행된다. 예를 들면 비제한적으로, 사용 가능한 시범 유형의 하드웨어 논리 부품은 필드 프로그램 가능 게이트 어레이(FPGA), 주문형 집적회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템-온-칩의 시스템(SOC), 복합 프로그램 가능 논리 소자(CPLD) 등을 포함한다.
본 개시의 방법을 실시하기 위한 프로그램 코드는 하나 또는 복수의 프로그래밍 언어의 임의의 조합을 적용하여 작성할 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 기타의 프로그램 가능 데이터 처리 장치의 프로세서 또는 제어기에 제공됨으로써 프로그램 코드가 프로세서 또는 제어기에 의해 실행되는 경우, 흐름도 및/또는 블록도에서 규정하는 기능/조작이 실시되도록 할 수 있다. 프로그램 코드는 완전히 기계에서 실행될 수도 있고 부분적으로 기계에서 실행될 수도 있고 독립적인 소프트웨어 패키지로서 일부가 기계에서 실행되고 일부가 원격 기계에서 실행되거나 또는 완전히 원격 기계나 서버에서 실행될 수도 있다.
본 개시의 명세서에서, 기계 판독가능 매체는 유형의(tangible) 매체일 수 있고, 이는 명령어 실행 시스템, 장치 또는 기기에 의하여 사용되거나 또는 명령어 실행 시스템, 장치 또는 기기에 결합되어 사용되는 프로그램을 포함하거나 저장할 수 있다. 기계 판독가능 매체는 기계 판독가능 신호 매체 또는 기계 판독가능 저장 매체일 수 있다. 기계 판독가능 매체는 전자, 자기, 광학, 전자기, 적외선 또는 반도체의 시스템, 장치 또는 기기거나 또는 상기에서 설명한 내용의 임의의 적합한 조합을 포함할 수 있으나 이에 한정되지 않는다. 기계 판독가능 저장 매체의 더 구체적인 예시는 하나 또는 복수의 선에 기반하는 전기 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 소거 및 프로그램 가능 판독 전용 메모리(EPROM 또는 플래시 EPROM), 광섬유, 휴대용 콤팩트 디스크 판독 전용 메모리(CD-ROM), 광학 저장 기기, 자기 저장 기기 또는 상기에서 설명한 내용의 임의의 적합한 조합을 포함한다.
이 외에도, 비록 특정 순서로 각 조작을 설명하였으나 이에 대하여서는, 기대하는 결과를 얻고자 이러한 조작들이 도시한 특정 순서 또는 순차적인 순서로 수행되도록 요구되거나 또는 모든 도시한 조작이 수행되도록 요구되는 것으로 이해하여야 한다. 일정한 환경에서는 멀티 태스크 및 병렬 처리가 유리할 수도 있다. 마찬가지로, 비록 위의 논술에서 몇몇 구체적인 구현 세부 내용을 포함하나 이는 본 개시의 범위에 대한 한정으로 해석되어서는 안된다. 단일 실시예에서 설명되는 일부 특징은 단일 구현에서 조합되어 구현될 수 있다. 반대로, 단일 구현에서 설명되는 다양한 특징도 단독으로 또는 임의의 적합한 서브 조합의 방식으로 복수의 구현에서 구현될 수 있다.
비록 구조적 특징 및/또는 방법 논리 동작에 특정된 언어로 본 주제를 설명하였으나 첨부되는 특허청구범위에서 한정하는 주제는 위에서 설명한 특정 특징 또는 동작에 한정되지 않음을 이해하여야 한다. 반대로, 위에서 설명한 특정 특징 및 동작은 특허청구범위를 구현하는 예시 형식일 뿐이다.

Claims (16)

  1. 데이터 액세스 방법에 있어서,
    액세스 기기 집합 내의 제1 액세스 기기에서 저장 기기 집합 내의 제1 저장 기기로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 상기 제1 저장 기기로 업데이트된 제1 액세스 요청을 송신하는 단계 - 상기 업데이트된 제1 액세스 요청은 상기 제1 액세스 기기의 신원 정보를 포함함 - ;
    상기 저장 기기 집합으로부터의 데이터가 수신된 것에 응답하여, 상기 데이터에 포함된 신원 정보를 결정하는 단계; 및
    결정된 상기 신원 정보가 상기 제1 액세스 기기의 신원 정보에 대응되는 것에 응답하여, 상기 데이터를 상기 제1 액세스 기기로 송신하는 단계; 를 포함하고,
    상기 방법은,
    액세스 기기 집합 내의 제2 액세스 기기에서 저장 기기 집합 내의 제2 저장 기기로 송신된 제2 액세스 요청이 수신된 것에 응답하여, 상기 제1 액세스 요청이 이미 송신되었는지 여부를 결정하는 단계; 및
    상기 제1 액세스 요청이 이미 송신되었다고 결정된 것에 응답하여, 상기 제2 저장 기기로 업데이트된 제2 액세스 요청을 송신하는 단계; 를 더 포함하고,
    상기 업데이트된 제2 액세스 요청은 상기 제2 액세스 기기의 신원 정보를 더 포함하는,
    것을 특징으로 하는 데이터 액세스 방법.
  2. 제1항에 있어서,
    상기 제1 저장 기기로 상기 업데이트된 제1 액세스 요청을 송신하는 단계는,
    상기 제1 액세스 기기의 상기 신원 정보를 획득하는 단계;
    상기 신원 정보를 상기 제1 액세스 요청에 포함시킴으로써 상기 업데이트된 제1 액세스 요청을 생성하는 단계; 및
    상기 업데이트된 제1 액세스 요청을 송신하는 단계; 를 포함하는,
    것을 특징으로 하는 데이터 액세스 방법.
  3. 제1항에 있어서,
    상기 업데이트된 제1 액세스 요청은 네트워크온칩을 통해 상기 제1 저장 기기로 송신되는,
    것을 특징으로 하는 데이터 액세스 방법.
  4. 제1항에 있어서,
    상기 업데이트된 제1 액세스 요청은 네트워크온칩을 통해 상기 제1 저장 기기로 송신되고, 상기 업데이트된 제2 액세스 요청은 네트워크온칩을 통해 상기 제2 저장 기기로 송신되는,
    것을 특징으로 하는 데이터 액세스 방법.
  5. 제1항에 있어서,
    상기 제1 저장 기기와 상기 제2 저장 기기는 같은,
    것을 특징으로 하는 데이터 액세스 방법.
  6. 제1항에 있어서,
    상기 업데이트된 제2 액세스 요청은 네트워크온칩을 통해 상기 제2 저장 기기로 송신되는,
    것을 특징으로 하는 데이터 액세스 방법.
  7. 데이터 액세스 장치에 있어서,
    액세스 기기 집합 내의 제1 액세스 기기에서 저장 기기 집합 내의 제1 저장 기기로 송신된 제1 액세스 요청이 수신된 것에 응답하여, 상기 제1 저장 기기로 업데이트된 제1 액세스 요청을 송신하도록 구성되는 제1 액세스 요청 송신 모듈 - 상기 업데이트된 제1 액세스 요청은 상기 제1 액세스 기기의 신원 정보를 포함함 - ;
    상기 저장 기기 집합으로부터의 데이터가 수신된 것에 응답하여, 상기 데이터에 포함된 신원 정보를 결정하도록 구성되는 신원 정보 결정 모듈; 및
    결정된 상기 신원 정보가 상기 제1 액세스 기기의 신원 정보에 대응되는 것에 응답하여, 상기 데이터를 상기 제1 액세스 기기로 송신하도록 구성되는 데이터 송신 모듈; 을 포함하고,
    상기 장치는,
    액세스 기기 집합 내의 제2 액세스 기기에서 저장 기기 집합 내의 제2 저장 기기로 송신된 제2 액세스 요청이 수신된 것에 응답하여, 상기 제1 액세스 요청이 이미 송신되었는지 여부를 결정하도록 구성되는 송신 결정 모듈; 및
    상기 제1 액세스 요청이 이미 송신되었다고 결정된 것에 응답하여, 상기 제2 저장 기기로 업데이트된 제2 액세스 요청을 송신하도록 구성되는 제2 액세스 요청 송신 모듈; 을 더 포함하고,
    상기 업데이트된 제2 액세스 요청은 상기 제2 액세스 기기의 신원 정보를 더 포함하는,
    것을 특징으로 하는 데이터 액세스 장치.
  8. 제7항에 있어서,
    상기 제1 액세스 요청 송신 모듈은,
    상기 제1 액세스 기기의 상기 신원 정보를 획득하도록 구성되는 획득 모듈;
    상기 신원 정보를 상기 제1 액세스 요청에 포함시킴으로써 상기 업데이트된 제1 액세스 요청을 생성하도록 구성되는 업데이트 모듈; 및
    상기 업데이트된 제1 액세스 요청을 송신하도록 구성되는 업데이트 요청 송신 모듈; 을 포함하는,
    것을 특징으로 하는 데이터 액세스 장치.
  9. 제7항에 있어서,
    상기 업데이트된 제1 액세스 요청은 네트워크온칩을 통해 상기 제1 저장 기기로 송신되는,
    것을 특징으로 하는 데이터 액세스 장치.
  10. 제7항에 있어서,
    상기 제1 액세스 요청은 상기 액세스 기기 집합의 제1 인터페이스를 통해 수신되고, 상기 제2 액세스 요청은 상기 액세스 기기 집합의 제2 인터페이스를 통해 수신되는,
    것을 특징으로 하는 데이터 액세스 장치.
  11. 제7항에 있어서,
    상기 제1 저장 기기와 상기 제2 저장 기기는 같은,
    것을 특징으로 하는 데이터 액세스 장치.
  12. 제7항에 있어서,
    상기 업데이트된 제2 액세스 요청은 네트워크온칩을 통해 상기 제2 저장 기기로 송신되는,
    것을 특징으로 하는 데이터 액세스 장치.
  13. 전자 기기에 있어서,
    하나 또는 복수의 프로세서; 및
    하나 또는 복수의 프로그램을 저장하는 저장 장치; 를 포함하고,
    상기 하나 또는 복수의 프로그램이 상기 하나 또는 복수의 프로세서에 의해 실행될 경우, 상기 하나 또는 복수의 프로세서가 제1항 내지 제6항 중 어느 한 항의 방법을 구현하는,
    것을 특징으로 하는 전자 기기.
  14. 삭제
  15. 삭제
  16. 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 저장 매체에 있어서,
    상기 프로그램이 프로세서에 의해 실행될 경우, 제1항 내지 제6항 중 어느 한 항의 방법이 구현되는,
    것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
KR1020200048810A 2019-07-31 2020-04-22 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체 KR102349245B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910704510.XA CN112306918A (zh) 2019-07-31 2019-07-31 数据访问方法、装置、电子设备和计算机存储介质
CN201910704510.X 2019-07-31

Publications (2)

Publication Number Publication Date
KR20210015617A KR20210015617A (ko) 2021-02-10
KR102349245B1 true KR102349245B1 (ko) 2022-01-07

Family

ID=70056950

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200048810A KR102349245B1 (ko) 2019-07-31 2020-04-22 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체

Country Status (5)

Country Link
US (1) US11169718B2 (ko)
EP (1) EP3772212B1 (ko)
JP (1) JP2021026767A (ko)
KR (1) KR102349245B1 (ko)
CN (1) CN112306918A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140165160A1 (en) * 2012-12-10 2014-06-12 Samsung Electronics Co., Ltd. Method and apparatus for controlling access between home device and external server in home network system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7076627B2 (en) * 2001-06-29 2006-07-11 Intel Corporation Memory control for multiple read requests
JP4660362B2 (ja) 2005-11-25 2011-03-30 株式会社日立製作所 計算機システム
US20090089866A1 (en) * 2007-09-27 2009-04-02 Akifumi Yato Access authorization system, access control server, and business process execution system
JP5214736B2 (ja) * 2008-09-12 2013-06-19 株式会社日立製作所 半導体装置および情報処理システム
KR101841173B1 (ko) * 2010-12-17 2018-03-23 삼성전자주식회사 리오더 버퍼를 이용한 메모리 인터리빙 장치 및 그 메모리 인터리빙 방법
JP2012181585A (ja) 2011-02-28 2012-09-20 Seiko Epson Corp デバイスシステムおよびチップ
JP5776022B2 (ja) * 2011-04-13 2015-09-09 パナソニックIpマネジメント株式会社 制御装置
US8918306B2 (en) * 2011-11-16 2014-12-23 Hartford Fire Insurance Company System and method for providing dynamic insurance portal transaction authentication and authorization
CN102609378B (zh) * 2012-01-18 2016-03-30 中国科学院计算技术研究所 一种消息式内存访问装置及其访问方法
CN103858117B (zh) * 2012-08-13 2017-09-15 松下知识产权经营株式会社 访问控制装置、中继装置、访问控制方法
CN102929562B (zh) * 2012-10-09 2015-05-06 无锡江南计算技术研究所 基于识别标识的可扩展重排序方法
US9716542B2 (en) * 2014-05-30 2017-07-25 Gogo Llc Systems and methods for facilitating communications destined for a non-terrestrial network
KR20160118836A (ko) * 2015-04-03 2016-10-12 에스케이하이닉스 주식회사 호스트 커맨드 큐를 포함하는 메모리 컨트롤러 및 그것의 동작 방법
CN106155577B (zh) * 2015-04-23 2019-03-26 华为技术有限公司 扩展内存的访问方法、设备以及系统
GB2543312A (en) * 2015-10-14 2017-04-19 Smartpipe Tech Ltd Network identification as a service
US20170318093A1 (en) * 2016-04-29 2017-11-02 Netapp, Inc. Method and System for Focused Storage Access Notifications from a Network Storage System
CN107783727B (zh) * 2016-08-31 2022-01-14 华为技术有限公司 一种内存设备的访问方法、装置和系统
US10437750B2 (en) 2017-12-21 2019-10-08 Arm Limited Relative data width indication for read responses routed by an interconnect
US10431581B1 (en) * 2018-04-30 2019-10-01 Qualcomm Incorporated Complementary metal-oxide semiconductor (CMOS) integration with compound semiconductor devices
CN108845863B (zh) * 2018-06-12 2022-08-26 北京百度网讯科技有限公司 用于虚拟机与宿主机的通信方法、装置和系统
CN109086228B (zh) * 2018-06-26 2022-03-29 深圳市安信智控科技有限公司 具有多个独立访问通道的高速存储器芯片
KR20200037584A (ko) * 2018-10-01 2020-04-09 에스케이하이닉스 주식회사 메모리 시스템, 그것의 동작방법 및 메모리 시스템을 포함하는 데이터베이스 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140165160A1 (en) * 2012-12-10 2014-06-12 Samsung Electronics Co., Ltd. Method and apparatus for controlling access between home device and external server in home network system

Also Published As

Publication number Publication date
EP3772212B1 (en) 2023-06-21
EP3772212A1 (en) 2021-02-03
JP2021026767A (ja) 2021-02-22
CN112306918A (zh) 2021-02-02
US11169718B2 (en) 2021-11-09
KR20210015617A (ko) 2021-02-10
US20210034257A1 (en) 2021-02-04

Similar Documents

Publication Publication Date Title
US11500689B2 (en) Communication method and apparatus
US11474712B2 (en) Method, apparatus, device and storage medium for managing access request
WO2021223356A1 (zh) 一种服务器架构及其数据库查询方法和存储介质
US10423563B2 (en) Memory access broker system with application-controlled early write acknowledgment support and identification of failed early write acknowledgment requests to guarantee in-order execution of memory requests of applications
US11863469B2 (en) Utilizing coherently attached interfaces in a network stack framework
CN111737564B (zh) 一种信息查询方法、装置、设备及介质
US11048422B2 (en) Method, device, and computer readable storage medium for allocating access rights to data among storage processors
US10430246B2 (en) Virtualized and synchronous access to hardware accelerators
US10860480B2 (en) Method and device for cache management
US20230367483A1 (en) Storage device and method, electronic device, and storage medium
US11190620B2 (en) Methods and electronic devices for data transmission and reception
US20200371827A1 (en) Method, Apparatus, Device and Medium for Processing Data
KR102349245B1 (ko) 데이터 액세스 방법, 장치, 전자 기기 및 컴퓨터 저장 매체
CN115114042A (zh) 存储数据访问方法、装置、电子设备和存储介质
KR100978082B1 (ko) 공유 메모리형 멀티 프로세서에 있어서의 비동기 원격 절차 호출 방법 및 비동기 원격 절차 호출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
KR20220113283A (ko) 저장 장치 리소스 관리를 위한 시스템 및 방법
US11178216B2 (en) Generating client applications from service model descriptions
US10642657B2 (en) Client-server architecture for multicore computer system to realize single-core-equivalent view
US20200081712A1 (en) Atomic operations in a large scale distributed computing network
CN117632820B (zh) 请求处理方法、装置、总线桥、电子设备及可读存储介质
US10728331B2 (en) Techniques for dynamic cache use by an input/output device
US11537457B2 (en) Low latency remoting to accelerators
US20180173624A1 (en) Method and apparatus for data access in storage system
Bonatto et al. Memory subsystem architecture design for multimedia applications

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant