KR101103619B1 - Multi-port memory system and access control method thereof - Google Patents
Multi-port memory system and access control method thereof Download PDFInfo
- Publication number
- KR101103619B1 KR101103619B1 KR1020090094967A KR20090094967A KR101103619B1 KR 101103619 B1 KR101103619 B1 KR 101103619B1 KR 1020090094967 A KR1020090094967 A KR 1020090094967A KR 20090094967 A KR20090094967 A KR 20090094967A KR 101103619 B1 KR101103619 B1 KR 101103619B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- shared
- data transfer
- transfer block
- memory
- Prior art date
Links
Images
Classifications
-
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- 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
- G06F13/1684—Details of memory controller using multiple buses
-
- 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/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
- G06F13/4273—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a clocked protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
멀티 포트 메모리 및 그 억세스 제어 방법이 개시된다. 멀티 포트 메모리 장치는 제1 디바이스가 데이터 기록 권한만을 가지고 제2 디바이스가 데이터 독출 권한만을 가지도록 할당된 제1 데이터 전달 블록과, 상기 제2 디바이스가 데이터 기록 권한만을 가지고 상기 제1 디바이스가 데이터 독출 권한만을 가지도록 할당된 제2 데이터 전달 블록을 포함하는 저장 영역; 및 상기 제1 및 제2 데이터 전달 블록에 대한 상기 제1 및 상기 제2 디바이스의 억세스 상태 정보를 관리하는 메모리 제어기를 포함할 수 있다. 본 발명에 의하여, 복수의 디바이스에 의해 공유되는 메모리의 효율성을 극대화하고, 각 디바이스간의 데이터 전달 시간을 최소화할 수 있다.A multi-port memory and its access control method are disclosed. The multi-port memory device includes a first data transfer block allocated such that a first device has only data write authority and a second device has only data read authority, and the second device has only data write authority and the first device reads data. A storage area including a second data transfer block allocated to have rights only; And a memory controller managing access state information of the first and second devices with respect to the first and second data transfer blocks. According to the present invention, it is possible to maximize the efficiency of the memory shared by a plurality of devices, and to minimize the data transfer time between each device.
메모리, 공유, 포트 Memory, share, port
Description
본 발명은 메모리에 관한 것으로, 특히 멀티 포트 메모리 및 그 억세스 제어 방법에 관한 것이다.The present invention relates to a memory, and more particularly to a multi-port memory and its access control method.
최근 들어 이동통신단말, PDA(Personal Digital Assistant) 등과 같은 휴대용 단말기는 음성통화와 같은 이동통신기능 이외에도 디지털 카메라, 화상전화, 멀티미디어 데이터의 재생 등과 같은 다양한 부가기능을 더 포함하고 있다. Recently, portable terminals such as mobile communication terminals and PDAs (Personal Digital Assistants) include various additional functions such as digital cameras, video phones, and playback of multimedia data in addition to mobile communication functions such as voice calls.
휴대용 단말기는 이와 같이 이동통신기능과 같은 본질적인 기능을 처리하기 위한 베이스밴드 프로세서와 다양한 응용프로그램을 처리하기 위한 응용 프로세서가 구비된다. The portable terminal is provided with a baseband processor for processing essential functions such as a mobile communication function and an application processor for processing various applications.
또한, 일반적으로 둘 이상의 프로세서를 가지는 휴대용 단말기에서는 각 프로세서 간의 데이터 송수신을 고속으로 수행함으로써 시스템의 처리 속도를 향상시키고, 메모리시스템의 실장 면적을 줄이기 위해 듀얼 포트 메모리(Dual Port Memory)가 사용된다. In general, in a portable terminal having two or more processors, dual port memory is used to improve the processing speed of the system and to reduce the mounting area of the memory system by performing data transmission and reception between the processors at a high speed.
즉, 두 프로세서가 듀얼 포트 메모리를 사용하게 되면 각 프로세서가 각 포트를 사용하여 메모리 영역에 접근하여 데이터를 읽고 쓸 수 있기 때문에 두 프로세서가 각각 서로 다른 메모리에 연결되어 데이터를 송수신하는 경우보다 데이터의 전송 및 처리 속도가 빠르고 이로 인해 시스템의 전체적인 성능이 향상된다. In other words, when two processors use dual port memory, each processor uses each port to access and read data from and write data to the memory area, so the two processors are connected to different memory to send and receive data. The transfer and processing speeds are fast and this improves the overall performance of the system.
도 1은 종래 기술에 따른 듀얼 포트 메모리의 메모리 영역을 도시한 도면이다. 1 is a diagram illustrating a memory area of a dual port memory according to the related art.
도 1을 참조하면, 두 프로세서는 각각 듀얼 포트 메모리(10)의 제1 포트에 연결되어 메모리 영역에 접근하는 제1 프로세서(20)와, 제2 포트에 연결되어 메모리 영역에 접근하는 제2 프로세서(30)로 도시되어 있다. Referring to FIG. 1, two processors are respectively connected to a first port of a
듀얼 포트 메모리(10)의 메모리 영역은 제1 프로세서(20)와 제2 프로세서(30)가 각각 독립적으로 접근하여 읽기 또는 쓰기 작업을 수행하는 전용 메모리 영역(즉, 제1 프로세서(20)만의 접근이 허용되는 제1 프로세서 전용 영역(14) 및 제2 프로세서(30)만의 접근이 허용되는 제2 프로세서 전용 영역(16))과, 제1 프로세서(20)와 제2 프로세서(30)가 접근하여 읽기 또는 쓰기 작업을 수행하는 공유 메모리 영역(12)을 포함한다. The memory area of the
이러한 듀얼 포트 메모리(10)는 공유 메모리 영역(12)에 대한 각 디바이스의 상호 배타적인 접근을 보장하고 각 디바이스 간의 동기화된 작업을 보장하기 위해 하드웨어 세마포어(semaphore)(도시하지 않음)를 이용할 수 있다. This
이와 같이, 듀얼 포트 메모리(10)의 메모리 영역 중 전용 메모리 영역은 특 정의 프로세서에게만 할당된 영역으로서 복수의 메모리간에 공유될 수 없고, 공유 메모리 영역(12)은 복수의 프로세서에 의한 공유는 가능하지만 동시에 억세스될 수는 없다. As described above, the dedicated memory area among the memory areas of the
따라서, 공유 메모리 영역(12)에 어느 하나의 프로세서가 억세스한 동안에는 다른 하나의 프로세서는 공유 메모리 영역(12)에 억세스할 수 없는 한계가 있다. Therefore, while one processor accesses the shared
이로 인해 어느 하나의 프로세서가 디바이스가 읽기 또는 쓰기 작업을 위해 공유 메모리 영역(12)을 점유하고 있는 동안에는 다른 프로세서가 해당 영역에 접근하여 읽기 또는 쓰기 작업을 수행할 수 없어, 두 프로세서 간에 데이터 전송시 많은 시간이 소요되고, 메모리 활용이 비효율적인 문제점이 있었다. As a result, when one processor occupies the shared
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.The background art described above is technical information possessed by the inventors for the derivation of the present invention or acquired during the derivation process of the present invention, and is not necessarily a publicly known technique disclosed to the general public before the application of the present invention.
본 발명은 복수의 디바이스에 의해 공유되는 메모리의 효율성을 극대화하고, 각 디바이스간의 데이터 전달 시간을 최소화할 수 있도록 하는 멀티 포트 메모리 및 그 억세스 제어 방법을 제공하기 위한 것이다.The present invention is to provide a multi-port memory and its access control method to maximize the efficiency of the memory shared by a plurality of devices, and to minimize the data transfer time between each device.
본 발명은 복수의 디바이스에 의해 공유되는 공유 메모리 영역을 복수의 블록들로 분할하고, 각 블록에 대한 각 디바이스의 처리 허용 동작을 설정함으로써 공유 메모리 영역의 효율성을 극대화하는 멀티 포트 메모리 및 그 억세스 제어 방법을 제공하기 위한 것이다.The present invention divides a shared memory area shared by a plurality of devices into a plurality of blocks, and sets a processing permission operation of each device for each block, thereby maximizing the efficiency of the shared memory area and access control thereof. It is to provide a method.
본 발명은 공유 메모리 영역을 복수의 블록들로 분할함으로써, 각 디바이스간의 공유 메모리 영역에 대한 효과적인 억세스가 보장되도록 하는 멀티 포트 메모리 및 그 억세스 제어 방법을 제공하기 위한 것이다.The present invention is to provide a multi-port memory and its access control method by dividing the shared memory area into a plurality of blocks, thereby ensuring effective access to the shared memory area between devices.
본 발명의 이외의 목적들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.Other objects of the present invention will be readily understood through the following description.
본 발명의 일 측면에 따르면, 제1 디바이스 및 제2 디바이스에 의해 공유되는 메모리 장치로서, 상기 제1 디바이스가 데이터 기록 권한만을 가지고 상기 제2 디바이스가 데이터 독출 권한만을 가지도록 할당된 제1 데이터 전달 블록과, 상기 제2 디바이스가 데이터 기록 권한만을 가지고 상기 제1 디바이스가 데이터 독출 권 한만을 가지도록 할당된 제2 데이터 전달 블록을 포함하는 저장 영역; 및 상기 제1 및 제2 데이터 전달 블록에 대한 상기 제1 및 상기 제2 디바이스의 억세스 상태 정보를 관리하는 메모리 제어기를 포함하는 메모리 장치가 제공된다. According to an aspect of the present invention, a memory device shared by a first device and a second device, wherein the first data transfer is allocated such that the first device has only data write authority and the second device has only data read authority. A storage area including a block and a second data transfer block allocated such that the second device has only data write rights and the first device has only data read rights; And a memory controller managing access state information of the first and second devices with respect to the first and second data transfer blocks.
상기 저장 영역은 상기 제1 및 제2 데이터 전달 블록 외에 상기 제1 및 제2 디바이스가 중첩되지 않는 시간 동안 개별 접속 가능하도록 할당된 하나 이상의 공유 블록을 더 포함할 수 있다.The storage area may further include one or more shared blocks allocated separately to the first and second data transfer blocks so that the first and second devices may be individually connected for a time that does not overlap.
상기 메모리 장치는 상기 공유 블록에 대한 임의의 디바이스의 억세스 여부에 대한 정보를 통지하기 위하여 하드웨어 세마포어 셀을 구비하는 세마포어 관리기를 더 포함할 수 있다.The memory device may further include a semaphore manager having a hardware semaphore cell for notifying information about whether any device has access to the shared block.
상기 저장 영역은 미리 설정된 디바이스만의 접속이 허용되도록 각각 할당된 하나 이상의 전용 영역을 더 포함할 수 있다.The storage area may further include one or more dedicated areas each allocated to allow connection of only a preset device.
상기 제1 및 제2 디바이스는 각각 베이스밴드 칩, 어플리케이션 프로세서 칩, 디스플레이 장치 중 어느 하나일 수 있다.The first and second devices may each be any one of a baseband chip, an application processor chip, and a display device.
상기 메모리 장치는 DRAM 또는 SDRAM 듀얼 포트 메모리일 수 있다. 상기 저장 영역은 DRAM 셀 구조를 가질 수 있다.The memory device may be a DRAM or SDRAM dual port memory. The storage area may have a DRAM cell structure.
본 발명의 다른 측면에 따르면, 디지털 처리 장치에 있어서, 제1 디바이스; 제2 디바이스; 및 제1 디바이스와 제1 포트를 통해 연결되고, 제2 디바이스와 제2 포트를 통해 연결되는 공유 메모리를 포함하되, 상기 공유 메모리는, 상기 제1 디바이스가 데이터 기록 권한만을 가지고 상기 제2 디바이스가 데이터 독출 권한만을 가지도록 할당된 제1 데이터 전달 블록과, 상기 제2 디바이스가 데이터 기록 권한 만을 가지고 상기 제1 디바이스가 데이터 독출 권한만을 가지도록 할당된 제2 데이터 전달 블록을 포함하는 저장 영역; 및 상기 제1 및 제2 데이터 전달 블록에 대한 상기 제1 및 상기 제2 디바이스의 억세스 상태 정보를 관리하는 메모리 제어기를 포함하는 디지털 처리 장치가 제공된다.According to another aspect of the invention, a digital processing apparatus, comprising: a first device; A second device; And a shared memory connected with a first device through a first port, and connected with a second device through a second port, wherein the shared memory is configured such that the second device has only data writing authority. A storage area including a first data transfer block allocated only to have data read rights and a second data transfer block allocated so that the second device has only data read rights and the first device has only data read rights; And a memory controller managing access state information of the first and second devices with respect to the first and second data transfer blocks.
상기 저장 영역은 상기 제1 및 제2 데이터 전달 블록 외에 상기 제1 및 제2 디바이스가 중첩되지 않는 시간 동안 개별 접속 가능하도록 할당된 하나 이상의 공유 블록을 더 포함할 수 있다.The storage area may further include one or more shared blocks allocated separately to the first and second data transfer blocks so that the first and second devices may be individually connected for a time that does not overlap.
상기 공유 메모리는, 상기 공유 블록에 대한 임의의 디바이스의 억세스 여부에 대한 정보를 통지하기 위하여 하드웨어 세마포어 셀을 구비하는 세마포어 관리기를 더 포함할 수 있다.The shared memory may further include a semaphore manager having a hardware semaphore cell to inform information about whether any device has access to the shared block.
상기 저장 영역은 미리 설정된 디바이스만의 접속이 허용되도록 각각 할당된 하나 이상의 전용 영역을 더 포함할 수 있다.The storage area may further include one or more dedicated areas each allocated to allow connection of only a preset device.
상기 제1 및 제2 디바이스는 각각 베이스밴드 칩, 어플리케이션 프로세서 칩, 디스플레이 장치 중 어느 하나일 수 있다.The first and second devices may each be any one of a baseband chip, an application processor chip, and a display device.
상기 메모리 장치는 DRAM 또는 SDRAM 듀얼 포트 메모리일 수 있다. 상기 저장 영역은 DRAM 셀 구조를 가질 수 있다.The memory device may be a DRAM or SDRAM dual port memory. The storage area may have a DRAM cell structure.
본 발명의 또 다른 측면에 따르면, 메모리 장치의 복수의 프로세서들에 대한 억세스 제어 방법으로서, 제1 디바이스로부터 제1 데이터 전달 블록에 대한 억세스 요청을 수신하는 단계; 상기 제1 데이터 전달 블록에 대한 억세스가 가능한지 여부를 판단하는 단계; 및 상기 판단에 따라 억세스 허용 여부에 대한 정보를 상기 제1 디바이스로 전송하는 단계를 포함하되, 상기 메모리 장치의 저장 영역은, 상기 제1 디바이스가 데이터 기록 권한만을 가지고 제2 디바이스가 데이터 독출 권한만을 가지도록 할당된 상기 제1 데이터 전달 블록과, 상기 제2 디바이스가 데이터 기록 권한만을 가지고 상기 제1 디바이스가 데이터 독출 권한만을 가지도록 할당된 제2 데이터 전달 블록을 포함하는 것을 특징으로 하는 억세스 제어 방법 및/또는 그 방법을 실행하기 위한 프로그램이 기록된 기록매체가 제공된다.According to yet another aspect of the present invention, an access control method for a plurality of processors of a memory device, the method comprising: receiving an access request for a first data transfer block from a first device; Determining whether access to the first data transfer block is possible; And transmitting information on whether to allow access according to the determination to the first device, wherein the storage area of the memory device includes only the data writing authority of the first device and only the data reading authority of the second device. The first data transfer block allocated to have a second data transfer block allocated to have the data read right only and the first device have only data read right. And / or a recording medium having recorded thereon a program for executing the method.
상기 저장 영역은 상기 제1 및 제2 데이터 전달 블록 외에 상기 제1 및 제2 디바이스가 중첩되지 않는 시간 동안 개별 접속 가능하도록 할당된 하나 이상의 공유 블록을 더 포함할 수 있다.The storage area may further include one or more shared blocks allocated separately to the first and second data transfer blocks so that the first and second devices may be individually connected for a time that does not overlap.
상기 공유 블록에 대한 임의의 디바이스의 억세스 여부에 대한 정보를 통지하기 위하여 하드웨어 세마포어 셀이 이용될 수 있다.A hardware semaphore cell may be used to inform information about whether any device has access to the shared block.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.Other aspects, features, and advantages other than those described above will become apparent from the following drawings, claims, and detailed description of the invention.
본 발명의 실시예에 따르면, 복수의 디바이스에 의해 공유되는 메모리의 효율성을 극대화하고, 각 디바이스간의 데이터 전달 시간을 최소화할 수 있도록 하는 효과가 있다.According to an embodiment of the present invention, there is an effect of maximizing the efficiency of the memory shared by a plurality of devices, and to minimize the data transfer time between each device.
또한, 복수의 디바이스에 의해 공유되는 공유 메모리 영역을 복수의 블록들 로 분할하고, 각 블록에 대한 각 디바이스의 처리 허용 동작을 설정함으로써 공유 메모리 영역의 효율성을 극대화하는 효과도 있다.In addition, there is an effect of maximizing the efficiency of the shared memory area by dividing the shared memory area shared by the plurality of devices into a plurality of blocks and setting the processing permission operation of each device for each block.
또한, 공유 메모리 영역을 복수의 블록들로 분할함으로써, 각 디바이스간의 공유 메모리 영역에 대한 효과적인 억세스가 보장되도록 하는 효과도 있다.In addition, by dividing the shared memory area into a plurality of blocks, effective access to the shared memory area between devices can be ensured.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all transformations, equivalents, and substitutes included in the spirit and scope of the present invention. In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. As used herein, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
또한, 명세서에 기재될 수 있는 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, the terms “… unit”, “… unit”, “module”, etc. that may be described in the specification mean a unit for processing at least one function or operation, which is hardware or software or a combination of hardware and software. Can be implemented.
본 명세서에서의 멀티 포트 메모리는 둘 이상의 포트 인터페이스부를 구비하여 둘 이상의 디바이스에 각각 결합되어 동작될 수 있는 메모리이다. 다만, 본 명세서에서는 멀티 포트 메모리의 일 실시예로서, 두 개의 메모리 인터페이스부를 구비한 듀얼 포트 메모리인 경우를 중심으로 설명한다. 이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.In the present specification, the multi-port memory is a memory having two or more port interface units, which can be operated by being coupled to two or more devices. However, in the present specification, as an embodiment of the multi-port memory, a case of the dual-port memory having two memory interface units will be described. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일 실시예에 따른 듀얼 포트 메모리의 구성을 개략적으로 나타낸 도면이고, 도 3은 본 발명의 일 실시예에 따른 공유 메모리 영역의 분할 형태를 예시한 도면이다.FIG. 2 is a diagram schematically illustrating a configuration of a dual port memory according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating a divided form of a shared memory area according to an embodiment of the present invention.
도 2를 참조하면, 듀얼 포트 메모리(100)는 제1 메모리 인터페이스부(110), 제1 디바이스 전용 영역(120), 제2 메모리 인터페이스부(130), 제2 디바이스 전용 영역(140), 메모리 제어기(150), 세마포어 관리기(160) 및 공유 메모리 영역(180)을 포함하지만 이에 한정되지는 않는다. 듀얼 포트 메모리(100)에 각 포트를 통해 접속하는 각 디바이스는 예를 들어, 베이스밴드 칩, 어플리케이션 프로세서 칩, 디 스플레이 장치 등 중 하나 이상일 수 있다.Referring to FIG. 2, the
제1 메모리 인터페이스부(110)는 제1 디바이스(102)가 듀얼 포트 메모리(100)에 연결되도록 하며, 제1 포트를 통해 연결된 제1 디바이스(102)가 제1 디바이스 전용 영역(120) 또는/및 공유 메모리 영역(180)에 억세스하도록 하기 위한 인터페이스를 제공한다. 제1 메모리 인터페이스부(110)는 제1 디바이스(102)로부터 어드레스(ADD1), 제어신호(CTR1), 클럭(CLK1) 및 데이터(DQ1) 등 중 하나 이상을 입력받고, 기록/독출 및 리프레쉬(refresh) 등의 동작 타이밍에 따라 메모리 어레이(도시되지 않음)와 데이터의 입출력을 수행할 수 있다. 제1 메모리 인터페이스부(110)는 예를 들어 명령 디코더(command decoder), 로우 디코더(row decoder), 컬럼 디코더(column decoder) 및 입출력 버퍼 등 중 하나 이상을 포함할 수 있다.The first
제1 디바이스 전용 영역(120)은 제1 포트를 통해 연결된 제1 디바이스(102)만이 전용할 수 있도록 설정된 저장 영역이다. 제1 디바이스(102)가 기록하거나 독출하고자 하는 데이터는 제1 디바이스 전용 영역(120)에 저장될 수 있다.The first device dedicated
제2 메모리 인터페이스부(130)는 제2 디바이스(104)가 듀얼 포트 메모리(100)에 연결되도록 하며, 제2 포트를 통해 연결된 제2 디바이스(104)가 제2 디바이스 전용 영역(140) 또는/및 공유 메모리 영역(180)에 억세스하도록 하기 위한 인터페이스를 제공한다. 제2 메모리 인터페이스부(130)는 제2 디바이스(104)로부터 어드레스(ADD2), 제어신호(CTR2), 클럭(CLK2) 및 데이터(DQ2) 등 중 하나 이상을 입력받고, 기록/독출 및 리프레쉬(refresh) 등의 동작 타이밍에 따라 메모리 어레이(도시되지 않음)와 데이터의 입출력을 수행할 수 있다. 제2 메모리 인터페이스 부(130)는 예를 들어 명령 디코더(command decoder), 로우 디코더(row decoder), 컬럼 디코더(column decoder) 및 입출력 버퍼 등 중 하나 이상을 포함할 수 있다.The second
제2 디바이스 전용 영역(140)은 제2 포트를 통해 연결된 제2 디바이스(104)만이 전용할 수 있도록 설정된 저장 영역이다. 제2 디바이스(104)가 기록하거나 독출하고자 하는 데이터는 제2 디바이스 전용 영역(140)에 저장될 수 있다.The second device dedicated
이를 통해, 제1 디바이스(102)와 제2 디바이스(104)가 결합된 듀얼 포트 메모리(100)는 일반적인 호스트 프로세서 인터페이스(Host processor interface), 직렬/병렬 인터페이스(Serial/parallel interface), I2C와 같은 인터페이스보다 고속으로 데이터를 입출력할 수 있다.Through this, the
메모리 제어기(150)는 공유 메모리 영역(180) 중 임의의 블록에 어떤 디바이스가 억세스한 상태이고, 어떤 처리를 수행하는지에 대한 관리를 수행한다. 메모리 제어기(150)는 후술될 데이터 전달 블록들(310, 320)에 대해 세마포어(semaphore) 관리 없이 각 디바이스가 억세스 및 처리를 수행할 수 있도록 하기 위한 제어 기능을 수행한다. 데이터 전달 블록들(310, 320)에 대해 세마포어 없이 각 디바이스의 억세스가 가능하도록 하기 위해 메모리 제어기(150)는 데이터 전달 블록들(310, 320)에 대한 상태 정보, 예를 들어 억세스 여부, 처리 동작 유형 등 중 하나 이상에 대한 관리를 위해 포인터 정보를 관리할 수 있다. 메모리 제어기(150)는 예를 들어 상태 정보를 접근을 시도하는 임의의 디바이스로 제공하거나, 해당 상태 정보를 데이터 형태로 기록한 경우 접근을 시도하는 임의의 디바이스가 상태 정보를 독출하여 임의의 데이터 전달 블록에 접근 가능한지 확인할 수 있도록 한다.The memory controller 150 manages which device has access to any block in the shared
세마포어 관리기(160)는 제1 메모리 인터페이스부(110), 제2 메모리 인터페이스부(130), 제1 디바이스(102) 및 제2 디바이스(104)와 연결되어, 공유 메모리 영역(180)의 공유 블록들(330, 340)의 액세스 권한에 대한 내용이 변경되면 이를 제1 디바이스(100) 및 제2 디바이스(104)에 통지함으로써, 공유 블록들(330, 340)을 충돌없이 제1 디바이스(102) 및 제2 디바이스(104)가 억세스할 수 있도록 한다. 통지 방식으로는 예를 들어 인터럽트 신호 또는 레디(ready) 또는 비지(busy) 신호 등이 이용될 수 있다. The semaphore manager 160 is connected to the first
공유 메모리 영역(180)은 듀얼 포트 메모리(100)에 접속되는 각 디바이스간에 공유되는 저장 영역이다. 공유 메모리 영역(180)은 예를 들어 각 디바이스간에 데이터 전달을 목적으로 설정되는 데이터 전달 블록, 디바이스들의 자유로운 공유를 목적으로 하는 공유 블록 등 중 하나 이상을 포함하여 구획될 수 있다. The shared
도 3에는 본 발명의 일 실시예에 따른 공유 메모리 영역의 분할 형태가 예시되어 있다.3 illustrates a divided form of a shared memory area according to an embodiment of the present invention.
도 3에는 데이터 전달 블록과 공유 블록이 각각 2개로 설정된 경우가 예시되었으나, 각 용도에 따른 블록의 수는 그 목적에 따라 다양하게 설정 변경될 수 있다. 일 예로, 공유 메모리 영역(180)이 데이터 전달 블록과 공유 블록 중 어느 하나만으로 설정될 수 있다. 또한, 듀얼 포트 메모리(100)가 공유 메모리 영역(180)만으로 설정될 수도 있다. 또한, 복수의 듀얼 포트 메모리들이 통합적으로 각 디바이스들에 의해 공유되는 하나의 공유 메모리로 구현될 수도 있다.In FIG. 3, two data transfer blocks and two shared blocks are illustrated. However, the number of blocks according to each use may be variously changed according to the purpose. For example, the shared
도 3을 참조하면, 공유 메모리 영역(180)은 2개의 데이터 전달 블록들(310, 320) 및 2개의 공유 블록(330, 340)을 포함한다.Referring to FIG. 3, the shared
2개의 데이터 전달 블록들(310, 320)은 제1 디바이스(102)가 억세스하여 데이터를 기록(write)하면 제2 디바이스(104)가 억세스하여 데이터를 독출(read)하도록 설정된 블록 12(310) 및 제2 디바이스(104)가 억세스하여 데이터를 기록(write)하면 제1 디바이스(102)가 억세스하여 데이터를 독출(read)하도록 설정된 블록 21(320)을 포함한다. 즉, 블록 12(310)에 대해 제1 디바이스(102)는 데이터 기록 권한만을 가지며, 제2 디바이스(104)는 데이터 독출 권한만을 가진다. 반대로, 블록 21(320)에 대해 제1 디바이스(102)는 데이터 독출 권한만을 가지며, 제1 디바이스(102)는 데이터 기록 권한만을 가진다.The two data transfer blocks 310 and 320 are set to block 12 310 in which the
제1 디바이스(102) 및 제2 디바이스(104)는 데이터 기록 또는 독출을 위해 데이터 전달 블록에 억세스할 때, 억세스하고자 하는 블록에 대한 정보를 듀얼 포트 메모리(100)로 제공한다. 이때, 듀얼 포트 메모리(100)의 메모리 제어기(150)는 억세스 요청된 블록에 해당 디바이스의 억세스가 가능한지 여부를 관리하는 상태 정보로서 판단한 후 해당 디바이스로 억세스 가능 여부에 대한 정보를 제공함으로써, 해당 디바이스가 억세스 또는 대기 상태가 되도록 한다.When the
예를 들어, 블록 12(310)에 대해 제1 디바이스(102)가 데이터를 기록하였으나, 아직 제2 디바이스(104)가 독출하지 않은 상태에서, 제1 디바이스(102)가 이미 기록된 데이터를 새로운 데이터로 변경하기 위한 억세스 시도인 경우 메모리 제어기(150)는 제1 디바이스(102)의 억세스를 불허할 수 있을 것이다. 다른 경우로서, 제1 디바이스(102)가 블록 12(310)에 억세스하여 데이터를 기록하는 중에 제2 디바이스(104)가 데이터를 독출하기 위한 억세스 요청이 수신되면, 메모리 제어기(150)는 제2 디바이스(104)의 요청이 제1 디바이스(102)가 이미 데이터를 기록 완료한 영역에 대한 요청인 경우 제2 디바이스의 억세스를 허용할 수도 있다.For example, while the
한편, 메모리 제어기(150)가 관리하는 상태 정보는 임의의 저장 영역에 데이터 형태로 기록되어 관리될 수 있고, 접근을 시도하는 임의의 디바이스가 해당 영역에 기록된 상태 정보를 독출하여 임의의 데이터 전달 블록에 접근 가능한지 확인할 수도 있다. 이 경우, 메모리 제어기(150)는 별도의 절차로서 상태 정보를 해당 디바이스로 제공할 필요가 없을 것이다.Meanwhile, the state information managed by the memory controller 150 may be recorded and managed in a data form in an arbitrary storage area, and any device that attempts to access reads the state information recorded in the corresponding area and transfers arbitrary data. You can also check that the block is accessible. In this case, the memory controller 150 may not need to provide status information to the device as a separate procedure.
또한, 공유 메모리 영역(180)에 포함되는 2개의 공유 블록(330, 340), 즉 블록 A(330) 및 블록 B(340)은 세마포어 관리기(160)에 의해 관리되는 정보에 따라 각 디바이스가 자유롭게 억세스하여 데이터 기록 및/또는 독출을 수행할 수 있는 영역이다.In addition, each of the two shared
세마포어 관리기(160)는 하나 이상의 하드웨어 세마포어 셀(hardware semaphore cell)로 구성될 수 있으며, 하드웨어 세마포어 셀은 공유 블록들(330, 340) 별로 하나 이상씩 존재할 수 있다. 도 3에 예시된 바와 같이, 공유 블록이 둘 이상의 블록들(또는 뱅크들)로 구성된 경우 세마포어 관리기(160)는 둘 이상의 하드웨어 세마포어 셀로 구성될 수 있다. The semaphore manager 160 may be composed of one or more hardware semaphore cells, and one or more hardware semaphore cells may exist for each shared
통상적으로 세마포어(semaphore)란 운영체계의 자원을 경쟁적으로 사용하는 다중 프로세스에서 행동을 조정하거나 또는 동기화시키는 기술을 의미하며, 운영체 계 또는 커널의 한 지정된 저장장치내의 값으로 각 프로세스는 이를 확인하고 변경할 수 있다. 확인되는 세마포어의 값에 따라, 그 프로세스가 즉시 자원을 사용할 수 있거나, 또는 이미 다른 프로세스에 의해 사용 중이라는 사실을 알게 되면 재시도하기 전에 일정 시간을 기다려야만 한다. 세마포어는 이진수 (0 또는 1)를 사용하거나, 또는 추가적인 값을 가질 수도 있다. 세마포어나 세마포어 기술의 적용을 위한 세마포어 셀에 대해서는 당업자에게 자명한 사항이므로 이에 대한 구체적인 설명은 생략한다.A semaphore is usually a technique for coordinating or synchronizing behavior in multiple processes that competitively use operating system resources. Each semaphore is a value within a specified storage of the operating system or kernel. You can change it. Depending on the value of the semaphore that is identified, if the process finds that the resource is immediately available or already in use by another process, it must wait some time before retrying. Semaphores use binary numbers (0 or 1), or may have additional values. The semaphore cell for applying the semaphore or semaphore technology is obvious to those skilled in the art, and thus a detailed description thereof will be omitted.
공유 블록들(330, 340) 중 어느 하나의 블록에 대해 제1 디바이스(102)가 하드웨어 세마포어를 점유한 상태라면 제2 디바이스(104)는 해당 블록에 대해 억세스 대기 상태가 되고, 제1 디바이스(102)가 하드웨어 세마포어를 해제하면 제2 디바이스(104)는 해당 블록에 대한 억세스 대기 상태가 해제되는 방식으로 하나의 자원(즉, 공유 영역)을 2개의 디바이스가 상호 배타적으로 접근될 수 있다.If the
세마포어 관리기(160)에 의한 공유 블록 억세스 과정을 설명하면 다음과 같다. Referring to the shared block access process by the semaphore manager 160 as follows.
제1 디바이스(102) 또는 제2 디바이스(104)에서 공유 블록을 억세스하고자 할 경우 세마포어 관리기(160)로부터 데이터를 읽어들인다. 이 때, 읽어들인 데이터 값이 0 또는 1인지 여부에 따라 공유 블록이 억세스가능한지 여부를 알 수 있다. 즉, 0인 경우라면 공유 블록이 억세스 가능한 상태인 것으로 인식하고, 1인 경우라면 공유 블록이 타 디바이스에 의해 점유된 상태인 것으로 인식한다. 제1 디바이스가 공유 블록에 대한 억세스를 끝내면, 바로 세마포어 관리기에 데이터 0(Zero)를 써주어서 제2 디바이스가 바로 억세스를 할 수 있도록 하여 준다. 제1 디바이스(102)가 하드웨어 세마포어를 점유하고 있는 동안, 제2 디바이스(104)는 해당 공유 블록으로의 접근이 대기된 상태이므로 제2 디바이스 전용 영역(140)을 이용하는 등의 다른 데이터 처리 동작을 수행할 수 있다.When the
제1 디바이스(102) 또는 제2 디바이스(104)에서 공유 블록에 대한 억세스를 끝낸 후에는 세마포어 관리기(160)에 데이터 1(one)을 씀으로써 2개의 디바이스가 상호 배타적으로 공유 블록에 억세스할 수 있도록 한다.After the
도 4는 본 발명의 일 실시예에 따른 공유 메모리 영역에 대한 억세스 제어 방법을 나타낸 순서도이다.4 is a flowchart illustrating an access control method for a shared memory area according to an embodiment of the present invention.
도 4를 참조하면, 단계 410에서 디바이스는 데이터 기록 또는 독출을 위해 임의의 저장 영역에 대한 억세스를 시도한다.Referring to FIG. 4, in
단계 420에서 디바이스는 억세스하고자 하는 저장 영역으로의 억세스가 가능한지 여부를 판단한다.In
만일 해당 디바이스가 공유 메모리 영역(180)의 데이터 전달 블록으로의 억세스를 시도한 경우, 메모리 제어기(150)로부터 억세스 가능 여부에 대한 정보를 제공받거나, 임의의 영역에 저장된 상태 정보를 참조하여 해당 영역으로의 억세스가 가능한지 여부를 즉시 판단할 수 있다. If the device attempts to access the data transfer block of the shared
또한 만일 해당 디바이스가 공유 메모리 영역(180)의 공유 블록으로 억세스하고자 하는 경우 세마포어 관리기(160)에 의해 관리되는 하드웨어 세마포어를 참 조하여 해당 영역으로의 억세스가 가능한지 판단할 수 있다.In addition, if the corresponding device intends to access the shared block of the shared
만일 해당 저장 영역으로의 억세스가 가능한 경우, 디바이스는 단계 430에서 해당 저장 영역으로 억세스하여 처리할 동작을 수행한다. 처리할 동작은 예를 들어 데이터 기록, 데이터 독출 등 중 하나 이상일 수 있다.If access to the storage area is possible, the device performs an operation to access and process the storage area in
그러나 만일 해당 저장 영역으로의 억세스가 가능하지 않은 경우 디바이스는 억세스가 가능할 때까지 대기 상태로 유지된다. 물론 이때, 해당 디바이스는 듀얼 포트 메모리(100)의 전용 영역을 이용한 동작을 수행을 하거나, 기타 필요한 동작을 수행할 수 있다. However, if access to the storage area is not available, the device remains idle until access is possible. Of course, at this time, the device may perform an operation using a dedicated area of the
상술한 멀티 포트 메모리의 억세스 제어 방법은 디지털 처리 장치에 내장된 소프트웨어 프로그램 등에 의해 시계열적 순서에 따른 자동화된 절차로 수행될 수도 있음은 자명하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 디지털 처리 장치가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 디지털 처리 장치에 의하여 읽혀지고 실행됨으로써 상기 방법을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체 및 캐리어 웨이브 매체를 포함한다.It is apparent that the above-described access control method of the multi-port memory may be performed by an automated procedure according to a time series sequence by a software program or the like embedded in the digital processing apparatus. The codes and code segments that make up the program can be easily deduced by a computer programmer in the field. The program is also stored in a computer readable media that can be read by a digital processing device, and read and executed by the digital processing device to implement the method. The information storage medium includes a magnetic recording medium, an optical recording medium, and a carrier wave medium.
상기에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to embodiments of the present invention, those skilled in the art may variously modify the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. And can be changed.
도 1은 종래 기술에 따른 듀얼 포트 메모리의 메모리 영역을 도시한 도면. 1 shows a memory region of a dual port memory according to the prior art;
도 2는 본 발명의 일 실시예에 따른 듀얼 포트 메모리의 구성을 개략적으로 나타낸 도면.2 is a diagram schematically illustrating a configuration of a dual port memory according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 공유 메모리 영역의 분할 형태를 예시한 도면.3 illustrates a partitioned form of a shared memory area according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 공유 메모리 영역에 대한 억세스 제어 방법을 나타낸 순서도.4 is a flowchart illustrating an access control method for a shared memory area according to an embodiment of the present invention.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090094967A KR101103619B1 (en) | 2009-10-07 | 2009-10-07 | Multi-port memory system and access control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090094967A KR101103619B1 (en) | 2009-10-07 | 2009-10-07 | Multi-port memory system and access control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110037492A KR20110037492A (en) | 2011-04-13 |
KR101103619B1 true KR101103619B1 (en) | 2012-01-09 |
Family
ID=44044959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090094967A KR101103619B1 (en) | 2009-10-07 | 2009-10-07 | Multi-port memory system and access control method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101103619B1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101080107B1 (en) | 2011-04-22 | 2011-11-04 | 한국항공우주연구원 | System for connecting separated networks for sharing data |
GB2500588B (en) * | 2012-03-24 | 2017-02-01 | Rhinocare Ltd | Systems and methods of hyperthermal treatment |
US10725667B2 (en) | 2017-01-19 | 2020-07-28 | Seoul National University R&Db Foundation | Method of transferring data in parallel system, and parallel system for performing the same |
KR102066212B1 (en) * | 2017-01-19 | 2020-01-14 | 서울대학교산학협력단 | Method for transferring data in parallel system, and parallel system for performing the same |
KR20200069905A (en) | 2018-12-07 | 2020-06-17 | 삼성전자주식회사 | Storage system and operating method of storage system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093628A1 (en) * | 2001-11-14 | 2003-05-15 | Matter Eugene P. | Memory adaptedt to provide dedicated and or shared memory to multiple processors and method therefor |
KR20080067799A (en) * | 2007-01-17 | 2008-07-22 | 삼성전자주식회사 | Multi-path accessible semiconductor memory device having mail box regions and method for mail box access control therefore |
KR20090033539A (en) * | 2007-10-01 | 2009-04-06 | 삼성전자주식회사 | Multi port semiconductor memory device having protocol define portion and access method therefore |
-
2009
- 2009-10-07 KR KR1020090094967A patent/KR101103619B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030093628A1 (en) * | 2001-11-14 | 2003-05-15 | Matter Eugene P. | Memory adaptedt to provide dedicated and or shared memory to multiple processors and method therefor |
KR20080067799A (en) * | 2007-01-17 | 2008-07-22 | 삼성전자주식회사 | Multi-path accessible semiconductor memory device having mail box regions and method for mail box access control therefore |
KR100855587B1 (en) * | 2007-01-17 | 2008-09-01 | 삼성전자주식회사 | Multi-path accessible semiconductor memory device having mail box regions and method for mail box access control therefore |
KR20090033539A (en) * | 2007-10-01 | 2009-04-06 | 삼성전자주식회사 | Multi port semiconductor memory device having protocol define portion and access method therefore |
Also Published As
Publication number | Publication date |
---|---|
KR20110037492A (en) | 2011-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1540485B1 (en) | Out of order dram sequencer | |
KR101558482B1 (en) | Bank sharing and refresh in a shared multi-port memory device | |
US8429374B2 (en) | System and method for read-while-write with NAND memory device | |
US9053019B2 (en) | Non-volatile memory device, a data processing device using the same, and a swapping method used by the data processing and non-volatile memory devices | |
KR100847968B1 (en) | Dual-port semiconductor memories | |
KR20050013525A (en) | Application processors and memory architecture for wireless application | |
KR101103619B1 (en) | Multi-port memory system and access control method thereof | |
WO2015090043A1 (en) | Method and device for swapping data into memory | |
US20080301381A1 (en) | Device and method for controlling commands used for flash memory | |
CN110168643B (en) | Simultaneous memory bank access via cross-connected shared bank resources | |
US20130282971A1 (en) | Computing system and data transmission method | |
CN110168644B (en) | System, method and computer program for providing row tamper protection in a bank memory cell array | |
CN107783909B (en) | Memory address bus expansion method and device | |
KR101110550B1 (en) | Processor, Multi-processor System And Method For Controlling Access Authority For Shared Memory In Multi-processor System | |
KR100872196B1 (en) | Memory system and method of controlling access of dual port memory using the memory system | |
CN110096355B (en) | Shared resource allocation method, device and equipment | |
WO2022227563A1 (en) | Hardware circuit, data migration method, chip, and electronic device | |
US20130247065A1 (en) | Apparatus and method for executing multi-operating systems | |
KR100874169B1 (en) | Dual port memory for direct transfer of commands between processors and method for performing them | |
KR100886179B1 (en) | Method for Handling Access Right Acquisition in Dual Port Memory and Apparatus therefore | |
CN113946435A (en) | Memory management technology and computer system | |
CN109324982B (en) | Data processing method and data processing device | |
KR20080046065A (en) | Dual port memory having access control device for shared memory, multi-processor system having access control device for shared memory and method for controlling access for shared memory | |
KR100816038B1 (en) | Method for accessing shared memory in multi-processor system | |
CN112965816B (en) | Memory management technology and computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171221 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20181226 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20191223 Year of fee payment: 9 |