KR102579320B1 - 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 - Google Patents
캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 Download PDFInfo
- Publication number
- KR102579320B1 KR102579320B1 KR1020230051365A KR20230051365A KR102579320B1 KR 102579320 B1 KR102579320 B1 KR 102579320B1 KR 1020230051365 A KR1020230051365 A KR 1020230051365A KR 20230051365 A KR20230051365 A KR 20230051365A KR 102579320 B1 KR102579320 B1 KR 102579320B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache
- input
- transactions
- schedulers
- transaction areas
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
- G06F12/0828—Cache consistency protocols using directory methods with concurrent directory accessing, i.e. handling multiple concurrent coherency transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/604—Details relating to cache allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
Abstract
이를 위해, 본 개시의 일 실시예에 따른 캐시 메모리 장치는, 입력 트랜잭션들을 수신하기 위한 요청 수신부; 상기 입력 트랜잭션들의 트래픽을 모니터링하기 위한 트래픽 모니터링 모듈; N개의 캐시 스케줄러 - N은 2 이상의 정수임 - ; 모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, 상기 N개의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 설정하기 위한 영역 설정 모듈 - 각 캐시 스케줄러에 설정된 입력 트랜잭션 영역을 통해 입력 트랜잭션들이 전달됨 -; 및 상기 N개의 캐시 스케줄러에 의해 스케줄링된 입력 트랜잭션들에 대해 캐시 메모리 액세스를 수행하기 위한 액세스 실행부를 포함한다.
Description
도 1은 본 개시의 일 실시예에 따른 컴퓨팅 시스템의 기본 구성에 대해 설명하는 도면이다.
도 2는 본 개시의 일 실시예에 따른 멀티 캐시 스케줄러 아키텍처를 포함하는 캐시 메모리 장치를 개략적으로 나타내는 도면이다.
도 3은 본 개시의 일 실시예에 따른 캐시 메모리 장치의 영역 설정 모듈에 의해 생성되는 히스토그램의 예시를 나타내는 도면이다.
도 4는 본 개시의 일 실시예에 따른 캐시 메모리 장치의 영역 설정 모듈에 대해 인공 신경망 모듈을 적용한 예를 나타내는 도면이다.
도 5는 본 개시의 다른 일 실시예에 따른 멀티 캐시 스케줄러 아키텍처를 포함하는 캐시 메모리 장치를 개략적으로 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 캐시 스케줄링을 구현하기 위한 방법에 대한 흐름도이다.
10: 요청 수신부
12: 수신 큐
14: 디코더(DEC)
16: 트래픽 모니터링 모듈
18: 영역 설정 모듈
20: 캐시 스케줄러부
30: 액세스 실행부
Claims (15)
- 캐시 메모리 장치로서,
입력 트랜잭션들을 수신하기 위한 요청 수신부;
상기 입력 트랜잭션들의 트래픽을 모니터링하기 위한 트래픽 모니터링 모듈;
N개의 캐시 스케줄러 - N은 2 이상의 정수임 - ;
모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, 상기 N개의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 설정하기 위한 영역 설정 모듈 - 각 캐시 스케줄러에 설정된 입력 트랜잭션 영역을 통해 입력 트랜잭션들이 전달됨 -; 및
상기 N개의 캐시 스케줄러에 의해 스케줄링된 입력 트랜잭션들에 대해 캐시 메모리 액세스를 수행하기 위한 액세스 실행부
를 포함하고,
상기 영역 설정 모듈이 상기 N개의 입력 트랜잭션 영역을 설정하는 것은,
상기 입력 트랜잭션들의 어드레스에 대한 메모리 액세스 횟수를 나타내는 히스토그램을 생성하는 것,
상기 히스토그램에 있어서 N개의 입력 트랜잭션 영역 각각에 대한 적분 값이 동일하게 되는 위치를 연산하는 것,
상기 연산된 위치에 기초하여 상기 N개의 입력 트랜잭션 영역을 설정하는 것
을 포함하고,
상기 영역 설정 모듈이 상기 N개의 입력 트랜잭션 영역을 설정하는 것은, 상기 N개의 캐시 스케줄러 전체 또는 적어도 일부에 남아 있는 입력 트랜잭션이 없는 경우에 수행되는
캐시 메모리 장치.
- 삭제
- 삭제
- 삭제
- 삭제
- 제 1 항에 있어서,
상기 영역 설정 모듈에서 상기 N개의 입력 트랜잭션 영역을 설정하는 것은,
상기 N개의 입력 트랜잭션 영역의 설정을 수행하는 시점 이전의 미리 정해진 제1 기간 동안의 입력 트랜잭션들의 트래픽에 기초하여 이루어지는
캐시 메모리 장치.
- 제 1 항에 있어서,
상기 영역 설정 모듈에서 상기 N개의 입력 트랜잭션 영역을 설정하는 것은,
미리 정해진 주기마다 상기 N개의 캐시 스케줄러 전체에 남아 있는 입력 트랜잭션이 임계치 미만인 경우에 추가 입력 트랜잭션을 수신하지 않음으로써 남아 있는 입력 트랜잭션이 없어질 때까지 대기하는 것,
상기 N개의 캐시 스케줄러 전체에 남아 있는 입력 트랜잭션이 없는 경우에, 모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, 상기 N개의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 재설정하는 것
을 포함하는 캐시 메모리 장치.
- 컴퓨팅 시스템으로서,
프로세서;
상기 프로세서를 통해 실행되는 프로그램과 연관된 명령 또는 데이터를 저장하기 위한 주 기억 장치;
상기 주 기억 장치를 보조하기 위한 보조 기억 장치; 및
상기 프로세서 및 상기 주 기억 장치 사이에 위치하여 상기 주 기억 장치 또는 상기 보조 기억 장치의 명령 또는 데이터를 임시적으로 저장하기 위한 캐시 메모리 장치
를 포함하고,
상기 캐시 메모리 장치는,
입력 트랜잭션들을 수신하기 위한 요청 수신부;
상기 입력 트랜잭션들의 트래픽을 모니터링하기 위한 트래픽 모니터링 모듈;
N개의 캐시 스케줄러 - N은 2 이상의 정수임 - ;
모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, 상기 N개의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 설정하기 위한 영역 설정 모듈 - 각 캐시 스케줄러에 설정된 입력 트랜잭션 영역을 통해 입력 트랜잭션들이 전달됨 -; 및
상기 N개의 캐시 스케줄러에 의해 스케줄링된 입력 트랜잭션들에 대해 캐시 메모리 액세스를 수행하기 위한 액세스 실행부
를 포함하고,
상기 영역 설정 모듈이 상기 N개의 입력 트랜잭션 영역을 설정하는 것은,
상기 입력 트랜잭션들의 어드레스에 대한 메모리 액세스 횟수를 나타내는 히스토그램을 생성하는 것,
상기 히스토그램에 있어서 N개의 입력 트랜잭션 영역 각각에 대한 적분 값이 동일하게 되는 위치를 연산하는 것,
상기 연산된 위치에 기초하여 상기 N개의 입력 트랜잭션 영역을 설정하는 것
을 포함하고,
상기 영역 설정 모듈이 상기 N개의 입력 트랜잭션 영역을 설정하는 것은, 상기 N개의 캐시 스케줄러 전체 또는 적어도 일부에 남아 있는 입력 트랜잭션이 없는 경우에 수행되는
컴퓨팅 시스템.
- 캐시 스케줄링을 구현하기 위한 방법으로서, 상기 방법은 캐시 메모리 장치에 의해 수행되고,
입력 트랜잭션들을 수신하는 단계;
상기 입력 트랜잭션들의 트래픽을 모니터링하는 단계;
모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, N개(N은 2 이상의 정수임)의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 설정하는 단계;
상기 N개의 캐시 스케줄러 각각에 설정된 입력 트랜잭션 영역을 통해 각 캐시 스케줄러에 입력 트랜잭션들을 전달하는 단계;
상기 N개의 캐시 스케줄러에 의해 스케줄링된 입력 트랜잭션들에 대해 캐시 메모리 액세스를 수행하는 단계
를 포함하고,
상기 N개의 입력 트랜잭션 영역을 설정하는 단계는,
상기 입력 트랜잭션들의 어드레스에 대한 메모리 액세스 횟수를 나타내는 히스토그램을 생성하는 단계와,
상기 히스토그램에 있어서 N개의 입력 트랜잭션 영역 각각에 대한 적분 값이 동일하게 되는 위치를 연산하는 단계와,
상기 연산된 위치에 기초하여 상기 N개의 입력 트랜잭션 영역을 설정하는 단계
를 포함하고,
상기 N개의 입력 트랜잭션 영역을 설정하는 단계는,
상기 N개의 캐시 스케줄러 전체 또는 적어도 일부에 남아 있는 입력 트랜잭션이 없는 경우에 수행되는
캐시 스케줄링 구현 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 제 9 항에 있어서,
상기 N개의 입력 트랜잭션 영역을 설정하는 단계는,
상기 N개의 입력 트랜잭션 영역의 설정을 수행하는 시점 이전의 미리 정해진 제1 기간 동안의 입력 트랜잭션들의 트래픽에 기초하여 이루어지는 것인
캐시 스케줄링 구현 방법.
- 제 9 항에 있어서,
상기 N개의 입력 트랜잭션 영역을 설정하는 단계는,
미리 정해진 주기마다 상기 N개의 캐시 스케줄러 전체에 남아 있는 입력 트랜잭션이 임계치 미만인 경우에 추가 입력 트랜잭션을 수신하지 않음으로써 남아 있는 입력 트랜잭션이 없어질 때까지 대기하는 단계와,
상기 대기 결과 상기 N개의 캐시 스케줄러 전체에 남아 있는 입력 트랜잭션이 없다고 확인된 경우에, 모니터링된 상기 입력 트랜잭션들의 트래픽에 기초하여, 상기 N개의 캐시 스케줄러 각각에 대응하는 N개의 입력 트랜잭션 영역을 재설정하는 단계
를 포함하는 캐시 스케줄링 구현 방법.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230051365A KR102579320B1 (ko) | 2023-04-19 | 2023-04-19 | 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 |
US18/508,840 US11994991B1 (en) | 2023-04-19 | 2023-11-14 | Cache memory device and method for implementing cache scheduling using same |
US18/634,662 US20240354252A1 (en) | 2023-04-19 | 2024-04-12 | Cache memory device and method for implementing cache scheduling using same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230051365A KR102579320B1 (ko) | 2023-04-19 | 2023-04-19 | 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102579320B1 true KR102579320B1 (ko) | 2023-09-18 |
Family
ID=88196321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230051365A Active KR102579320B1 (ko) | 2023-04-19 | 2023-04-19 | 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 |
Country Status (2)
Country | Link |
---|---|
US (2) | US11994991B1 (ko) |
KR (1) | KR102579320B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120008483A (ko) * | 2008-12-30 | 2012-01-30 | 인텔 코오퍼레이션 | 트랜잭션 메모리(tm) 시스템의 기입 및 판독 모니터링 속성 |
JP2012141885A (ja) * | 2011-01-05 | 2012-07-26 | Nippon Telegr & Teleph Corp <Ntt> | キャッシュシステム及びキャッシュ配置方法及びキャッシュ制御装置及びキャッシュ制御プログラム |
JP2019082917A (ja) * | 2017-10-31 | 2019-05-30 | 富士通株式会社 | メモリ割当プログラム、メモリ割当方法、およびメモリ割当装置 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060218556A1 (en) * | 2001-09-28 | 2006-09-28 | Nemirovsky Mario D | Mechanism for managing resource locking in a multi-threaded environment |
EP1868111A1 (en) * | 2001-09-28 | 2007-12-19 | ConSentry Networks, Inc. | A multi-threaded packet processing engine for stateful packet processing |
US7747771B1 (en) * | 2004-06-30 | 2010-06-29 | Oracle America, Inc. | Register access protocol in a multihreaded multi-core processor |
US7644221B1 (en) * | 2005-04-11 | 2010-01-05 | Sun Microsystems, Inc. | System interface unit |
GB0519981D0 (en) * | 2005-09-30 | 2005-11-09 | Ignios Ltd | Scheduling in a multicore architecture |
US20080005504A1 (en) | 2006-06-30 | 2008-01-03 | Jesse Barnes | Global overflow method for virtualized transactional memory |
US20080168002A1 (en) * | 2007-01-05 | 2008-07-10 | Kagarlis Marios A | Price Indexing |
WO2013101050A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Multi-level memory with direct access |
US9495526B2 (en) * | 2013-03-15 | 2016-11-15 | Eyelock Llc | Efficient prevention of fraud |
US10120809B2 (en) * | 2015-09-26 | 2018-11-06 | Intel Corporation | Method, apparatus, and system for allocating cache using traffic class |
US10452548B2 (en) | 2017-09-28 | 2019-10-22 | Advanced Micro Devices, Inc. | Preemptive cache writeback with transaction support |
KR20190090614A (ko) | 2018-01-25 | 2019-08-02 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
US20190384690A1 (en) * | 2018-06-13 | 2019-12-19 | College Of William & Mary | Method for estimating memory reuse-distance profile |
US11768779B2 (en) | 2019-12-16 | 2023-09-26 | Advanced Micro Devices, Inc. | Cache management based on access type priority |
-
2023
- 2023-04-19 KR KR1020230051365A patent/KR102579320B1/ko active Active
- 2023-11-14 US US18/508,840 patent/US11994991B1/en active Active
-
2024
- 2024-04-12 US US18/634,662 patent/US20240354252A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120008483A (ko) * | 2008-12-30 | 2012-01-30 | 인텔 코오퍼레이션 | 트랜잭션 메모리(tm) 시스템의 기입 및 판독 모니터링 속성 |
JP2012141885A (ja) * | 2011-01-05 | 2012-07-26 | Nippon Telegr & Teleph Corp <Ntt> | キャッシュシステム及びキャッシュ配置方法及びキャッシュ制御装置及びキャッシュ制御プログラム |
JP2019082917A (ja) * | 2017-10-31 | 2019-05-30 | 富士通株式会社 | メモリ割当プログラム、メモリ割当方法、およびメモリ割当装置 |
Also Published As
Publication number | Publication date |
---|---|
US20240354252A1 (en) | 2024-10-24 |
US11994991B1 (en) | 2024-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8667225B2 (en) | Store aware prefetching for a datastream | |
Ausavarungnirun et al. | Exploiting inter-warp heterogeneity to improve GPGPU performance | |
TWI697837B (zh) | 微處理器的前端以及執行零空泡條件分支預測的電腦實施方法 | |
US9213640B2 (en) | Promoting transactions hitting critical beat of cache line load requests | |
US8131980B2 (en) | Structure for dynamic livelock resolution with variable delay memory access queue | |
CN112100094B (zh) | 用于基于预取指针的结构的系统和方法 | |
US20090113181A1 (en) | Method and Apparatus for Executing Instructions | |
JP2007241918A (ja) | プロセッサ装置 | |
US20100042813A1 (en) | Redundant Execution of Instructions in Multistage Execution Pipeline During Unused Execution Cycles | |
CN108874689B (zh) | 用于确认队列的设备和方法 | |
CN108710582A (zh) | 用于基于局部性的指令处理的选择性启用的系统、设备和方法 | |
US20080065873A1 (en) | Dynamic livelock resolution with variable delay memory access queue | |
CN104461758B (zh) | 一种容忍cache缺失快速清空流水线的异常处理方法及其处理结构 | |
EP4020229B1 (en) | System, apparatus and method for prefetching physical pages in a processor | |
US20170315922A1 (en) | Implementing barriers to efficiently support cumulativity in a weakly-ordered memory system | |
KR102464788B1 (ko) | 업/다운 프리페쳐 | |
US9384131B2 (en) | Systems and methods for accessing cache memory | |
US9223714B2 (en) | Instruction boundary prediction for variable length instruction set | |
US9389864B2 (en) | Data processing device and method, and processor unit of same | |
CN110825442A (zh) | 一种指令预取方法及处理器 | |
KR102579320B1 (ko) | 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 | |
US11507522B2 (en) | Memory request priority assignment techniques for parallel processors | |
KR102579319B1 (ko) | 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법 | |
US20220035633A1 (en) | Method and Apparatus for Back End Gather/Scatter Memory Coalescing | |
CN109213698B (zh) | Vivt缓存访问方法、仲裁单元及处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20230419 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20230421 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20230419 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20230714 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20230901 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20230912 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20230913 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |