KR100922343B1 - 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법 - Google Patents

고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법 Download PDF

Info

Publication number
KR100922343B1
KR100922343B1 KR1020090043405A KR20090043405A KR100922343B1 KR 100922343 B1 KR100922343 B1 KR 100922343B1 KR 1020090043405 A KR1020090043405 A KR 1020090043405A KR 20090043405 A KR20090043405 A KR 20090043405A KR 100922343 B1 KR100922343 B1 KR 100922343B1
Authority
KR
South Korea
Prior art keywords
dram
address
control signal
data
decoded
Prior art date
Application number
KR1020090043405A
Other languages
English (en)
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 주식회사 넥서스칩스
Priority to KR1020090043405A priority Critical patent/KR100922343B1/ko
Application granted granted Critical
Publication of KR100922343B1 publication Critical patent/KR100922343B1/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
    • G06F13/1663Access to shared memory
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스 구조 및 이를 이용한 고속 데이터 전송방법에 관한 것이다. 본 발명은 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기; 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더; 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하여 저장하는 범용레지스터 쓰기 버퍼; 및 디코딩된 제어신호(Cs_d), 구분신호 및 디코딩된 어드레스(Address_d)를 수신하여 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 디코딩된 제어신호(Cs_d)와 디코딩된 어드레스(Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성한 뒤, 범용레지스터 제어신호(Cs1)에 따라 범용레지스터 어드레스(Address1)를 이용해 DRAM 데이터버스를 거쳐 범용레지스터 쓰기 버퍼에 저장된 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 범용레지스터 어드레스 및 제어신호 생성기; 및 디코딩된 제어신호(Cs_d), 구분신호 및 디코딩된 어드레스(Address_d)를 수신하며, 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하며, 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 디코딩된 제어신호(Cs_d)와 디코딩된 어드레스(Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성한 뒤, DRAM 제어신호(Cs2)에 따라 DRAM 어드레스(Address2)를 이용해 DRAM 데이터버스를 거쳐 수신된 DRAM 데이터를 DRAM에 저장하도록 제어하는 DRAM 버퍼; 를 포함한다.
SRAM, DRAM, 인터페이스, 컴패니언 칩, 범용레지스터

Description

고속 데이터 전송을 위한 DRAM방식 인터페이스 장치 및 이를 이용한 데이터 전송방법{DRAM-type interface apparatus for high data transmission and data tranmission method using the same}
본 발명은 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스에 관한 것으로, 보다 구체적으로는 호스트의 DRAM 인터페이스를 이용하여 대량의 데이터를 컴패니언칩에 직접 전송하도록 함으로써, 데이터 전송 시간을 최대한 줄여 컴패니언 칩 또는 CPU의 성능 향상시키기 위한 DRAM 방식의 호스트 인터페이스 구조 및 이를 이용한 고속 데이터 전송방법에 관한 것이다.
현재, CPU 등의 호스트와 컴패니언 칩 간의 인터페이스 방식은 SRAM 방식과 DRAM 방식이 사용되고 있다. 기존에는 주로 SRAM 방식 인터페이스가 사용되었다. 이런 종래의 SRAM 방식은 도 1과 같이 Chip Selection Signal(이하, CSn)과 Output enable signal(이하, OEn)이 로우 액티브(low active)이고 Write enable signal(이하, WEn)이 인액티브 하이(inactive high)일 때 컴패니언 칩으로부터 전송받은 데이터를 읽어오고, CSn과 WEn이 로우 액티브(low active)이고 OEn이 인액티브 하이(inactive high)일 경우 데이터를 컴패니언 칩으로 전송한다.
이때, 컴패니언 칩이 데이터를 잃지 않고 정상 동작을 하기 위해서는 하나의 READ/WRITE 명령 내에 일반적으로 인액티브(inactive) 구간을 포함하여 최소한 3개 내지 4개의 컴패니언 칩 클록이 필요하다.
이와 같이 기존의 SRAM 방식의 인터페이스를 사용하는 경우, 도 1과 같이 하나의 데이터를 전송하기 위해서 하나의 명령어가 필요하며 하나의 명령어에 최소한 3개 내지 4개의 호스트 클록이 필요하다. 범용레지스터 값을 설정하거나 소량의 데이터를 컴패니업 칩을 통해서 DRAM 메모리에 전송하는 경우에는 무리가 없지만 대량의 데이터를 메모리에 저장하는 경우에는 상당한 성능 저하를 가져오게 된다.
따라서, 해당 기술분야에서는 호스트와 컴패니언 칩 간의 인터페이스 방식을 하나의 데이터에 1개의 호스트 클록이 필요한 DRAM 방식으로 사용함으로써, 대량의 데이터를 컴패니언 칩에 연결된 DRAM에 직접 전송하고자 하는 기술개발이 요구되고 있다.
상기한 문제점을 개선하기 위해 안출된 본 발명의 기술적 과제는 호스트와 컴패니언 칩 간의 인터페이스를 DRAM 방식으로 사용함으로써, 호스트로부터 컴패니언 칩으로의 데이터 전송 시간을 최소화함으로써, 시간당 데이터 전송률을 향상시키는 것을 목적으로 한다.
그러나 본 발명의 목적들은 상기에 언급된 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있 을 것이다.
본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치는, 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기; 상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더; 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하여 저장하는 범용레지스터 쓰기 버퍼; 및 상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하여 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성한 뒤, 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 상기 DRAM 데이터버스를 거쳐 상기 범용레지스터 쓰기 버퍼에 저장된 상기 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 범용레지스터 어드레스 및 제어신호 생성기; 를 포함하며, 상기 범용레지스터 어드레스 및 제어신호 생성기는, 읽기 모드의 경우 상기 변환된 범용레지스터 제어신호(Cs1)와, 상기 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 상기 범용레지스터에 전송하여, 상기 범용레지스터로부터 전송된 데이터를 상기 범용 레지스터와 상기 호스트 사이의 데이터 버스를 통해 직접 상기 호스트에 전송하도록 할 수 있다.
상기 미리 설정된 비트는, 상기 DRAM 어드레스(Address)의 최상위 비트일 수 있다.
본 발명의 다른 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치는, 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기; 상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더; 및 상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하며, 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하며, 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성한 뒤, 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 상기 DRAM 데이터버스를 거쳐 수신된 상기 DRAM 데이터를 DRAM에 저장하도록 제어하는 DRAM 버퍼; 를 포함하며, 상기 DRAM 버퍼는, 읽기 모드의 경우 상기 변환된 DRAM 제어신호(Cs2)와 상기 DRAM 어드레스(Address2)를 이용해, 읽기 커맨드를 자신과 상기 DRAM 사이에 형성된 컨트롤러에 전송하여, 상기 컨트롤러의 제어에 따라 상기 DRAM으로부터 전송된 데이터를 저장한 뒤, 상기 호스트로 전송할 수 있다.
상기 미리 설정된 비트는, 상기 DRAM 어드레스(Address)의 최상위 비트일 수 있다.
본 발명의 또 다른 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치는, 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기; 상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더; 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하여 저장하는 범용레지스터 쓰기 버퍼; 및 상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하여 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성한 뒤, 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 상기 DRAM 데이터버스를 거쳐 상기 범용레지스터 쓰기 버퍼에 저장된 상기 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 범용레지스터 어드레스 및 제어신호 생성기; 및 상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하며, 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하며, 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성한 뒤, 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 상기 DRAM 데이터버스를 거쳐 수신된 상기 DRAM 데이터를 DRAM에 저장하도록 제어하는 DRAM 버퍼; 를 포함할 수 있다.
상기 DRAM 어드레스 디코더는, 상기 어드레스(Address), 상기 범용레지스터 어드레스(Address1), 및 상기 DRAM 어드레스(Address2) 상호 간 어드레스 변환 기능을 수행할 수 있다.
본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법은, 범용레지스터 어드레스 및 제어신호 생성기는 DRAM 제어기로부터 전송된 디코딩된 제어신호(Cs_d), DRAM 어드레스 디코더로부터 구분신호 및 디코딩된 어드레스(Address_d)를 수신하는 제 1 단계; 상기 범용레지스터 어드레스 및 제어신호 생성기는 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성하는 제 2 단계; 및 상기 범용레지스터 어드레스 및 제어신호 생성기는 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 범용레지스터 쓰기 버퍼에 저장된 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 제 3 단계; 를 포함하며, 상기 제 3 단계에 있어서, 상기 범용레지스터 어드레스 및 제어신호 생성기는 읽기 모드의 경우 상기 범용레지스터 제어신호(Cs1)와, 상기 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 상기 범용레지스터에 전송하여, 상기 범용레지스터로부터 전송된 데이터를 상기 범용 레지스터와 호스트 사이의 데이터 버스를 통해 직접 상기 호스트에 전송하도록 하는 단계; 를 더 포함할 수 있다.
상기 제 3 단계에서의 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 DRAM 데이터는, 상기 범용레지스터 쓰기 버퍼가 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 데이터를 수신하여 저장할 수 있다.
상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 디코딩된 제어신호(Cs_d)는, 상기 DRAM 제어기가 상기 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 생성할 수 있다.
상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 디코딩된 어드레스(Address_d)는, 상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)를 디코딩하여 생성할 수 있다.
상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 구분신호는, 상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)의 최상위 비트를 분석하여 생성할 수 있다.
본 발명의 다른 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법은, DRAM 버퍼는 DRAM 제어기로부터 전송된 디코딩된 제어신호(Cs_d), DRAM 어드레스 디코더로부터 구분신호 및 디코딩된 어드레스(Address_d)를 수신하는 제 1 단계; 상기 DRAM 버퍼는 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성하는 제 2 단계; 및 상기 DRAM 버퍼는 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 호스트와 데이터 통신을 통해 수신한 DRAM 데이터를 DRAM에 저장하도록 제어하는 제 3 단계; 를 포함하며, 상기 제 3 단계에 있어서, 상기 DRAM 버퍼는 읽기 모드의 경우 상기 DRAM 제어신호(Cs2)와 상기 DRAM 어드레스(Address2)를 이용해 읽기 커맨드를 자신과 상기 DRAM 사이에 형성된 컨트롤러에 전송하는 단계; 및 상기 DRAM 버퍼는 상기 컨트롤러의 제어에 따라 상기 DRAM으로부터 전송된 데이터를 저장하고, 상기 호스트로 전송하는 단계; 를 더 포함할 수 있다.
상기 제 3 단계에서의 상기 DRAM 버퍼가 수신하는 상기 DRAM 데이터는, 상기 DRAM 제어기가 상기 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 생성할 수 있다.
상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 디코딩된 제어신호(Cs_d)는, 상기 DRAM 제어기가 상기 호스트로부터 수신한 제어신호(Cs)를 수신한 상기 DRAM 제어기가 상기 제어신호(Cs)를 디코딩하여 생성할 수 있다.
상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 디코딩된 어드레스(Address_d)는, 상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)를 디코딩하여 생성할 수 있다.
상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 구분신호는, 상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)의 최상위 비트를 분석하여 생성할 수 있다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
상술한 바와 같이 본 발명에 따른 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스 구조 및 이를 이용한 고속 데이터 전송방법에 의하면, 호스트와 컴패니언 칩 간의 인터페이스를 DRAM 방식으로 사용함으로써, 호스트로부터 컴패니언 칩으로의 데이터 전송 시간을 최소화함으로써, 시간당 데이터 전송률을 향상시키는 효과를 제공한다.
또한, 본 발명에 의하면 컴패니언 칩의 범용레지스터 읽고/쓰기 뿐만 아니라, 컴패니언 칩에 연결된 DRAM의 연속적인 어드레스에 대량의 데이터를 저장하는 경우 높은 성능 향상을 가져올 수 있다.
또한, 본 발명에 의하면 컴패니언 칩의 범용레지스터는 실제 DRAM이 연결된 것이 아니기 때문에 리프레쉬를 할 필요가 없으므로 불필요한 동작을 제거하여 성능을 더욱 향상시킬 수 있는 효과를 제공한다.
이하, 본 발명의 바람직한 실시 예의 상세한 설명은 첨부된 도면들을 참조하여 설명할 것이다. 하기에서 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터 또는 신호를 '전송'하는 경우에는 어느 하나의 구성요소는 다른 구성요소로 직접 데이터 또는 신호를 전송할 수 있고, 적어도 하나의 또 다른 구성요소를 통하여 데이터 또는 신호를 다른 구성요소로 전송할 수 있음을 의미한다.
도 2는 본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 구조 및 이에 연결된 호스트 및 컴패니언 칩 간의 관계를 나타내는 블록도이며, 도 3은 본 발명의 실시 예에 따른 DRAM방식 인터페이스의 구성을 나타내는 블록도이다.
도 2 내지 도 3을 참조하면, 호스트(10), DRAM 데이터버스(11), DRAM 방식 인터페이스(20), 컴패니언 칩(30)을 포함한다. 호스트(10)는 중앙처리장치(Central Processing Unit, CPU)일 수 있으며, 프로그램의 명령을 해독하여 그에 따른 실행을 하는 장치로, DRAM방식 인터페이스(20)를 통해 컴패니언 칩(30)과의 데이터 송수신을 수행한다.
데이터버스(11)는 DRAM방식 인터페이스(20)를 통해 호스트(10)와 컴패니언 칩(30) 간의 데이터 송수신을 매개하는 역할을 수행한다. 보다 구체적으로, 데이터버스(11)는 호스트(10)와 범용레지스터(31), 그리고 호스트(10)와 DRAM(35) 간의 데이터 송수신을 매개하는 역할을 수행한다.
DRAM방식 인터페이스(20)는 호스트(10)로부터 DRAM 제어신호를 수신하여 제어신호를 분석하여 변환된 제어신호를 발생시킨다. 또한, DRAM방식 인터페이스(20)는 호스트(10)로부터 DRAM방식의 어드레스(Address)를 수신하여 범용레지스터 쓰기 버퍼(25)와 DRAM 버퍼(29) 중 어디로 데이터를 전송할 것인지를 결정한 뒤, 전송할 어드레스를 생성한다. 이후, DRAM방식 인터페이스(20)는 해당 생성된 어드레스로 범용레지스터 쓰기버퍼(25)와 범용 레지스터(31) 사이의 데이터 버스 또는 DRAM 버퍼(29)와 컨트롤러(33) 사이의 데이터 버스를 통해 2 진수의 데이터를 전송할 수 있다.
보다 구체적으로, DRAM방식 인터페이스(20)는 DRAM 제어기(21), DRAM 어드레스 디코더(23), 범용레지스터 쓰기 버퍼(25), 범용레지스터 어드레스 및 제어신호 생성기(27), DRAM 버퍼(29)를 포함하여 구성된다. DRAM 제어기(21)는 호스트(10)로부터 DRAM 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성한다. 여기서, DRAM 제어신호(Cs)는 CKE, /CS, /RAS, /CAS/ WE, DQM을 포함할 수 있다. DRAM 제어기(21)는 디코딩된 제어신호(Cs_d)를 각각 범용레지스터 어드레스 및 제어신호 생성기(27) 또는 DRAM 버퍼(29)로 전송한다.
DRAM 어드레스 디코더(23)는 호스트(10)에서 수신된 어드레스(Address)의 미리 설정된 비트를 분석하여 범용레지스터(31)로 데이터를 전송할 것인지 또는 DRAM(35)로 데이터를 전송할 것인지를 판단하여 구분신호를 생성하며, 이와 함께 수신된 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성한다. 일실시 예로, 미리 설정된 비트는 호스트(10)에서 수신된 어드레스(Address)의 최상위 비트일 수 있다.
이후, DRAM 어드레스 디코더(23)는 분석된 내용에 따른 구분신호와, 디코딩된 어드레스(Address_d)를 범용레지스터 어드레스 및 제어 신호 생성기(27), 또는 DRAM 버퍼(29)로 전송한다. 또한, DRAM 어드레스 디코더(23)의 추가적인 기능으로, 호스트(10)로부터 수신된 어드레스(Address), 후술할 범용레지스터 어드레스(Address1), 및 DRAM 어드레스(Address2) 상호 간의 어드레스 변환 기능을 수행할 수도 있다.
범용레지스터 쓰기 버퍼(25)는 DRAM 데이터 버스(11)로부터 수신된 데이터를 저장한다. 범용레지스터 쓰기 버퍼(25)는 호스트(10)의 DRAM 클럭이 컨패니언 칩(30)의 클럭에 비해 상대적으로 빨라 호스트(10)의 DRAM 클럭과 컴패니언 칩(30)의 클럭이 동기화되지 않기 때문에 이를 보완하기 위해 사용된다.
범용레지스터 어드레스 및 제어신호 생성기(27)는 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하여, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신한다. 이후, 범용레지스터 어드레스 및 제어신호 생성기(27)는 구분신호에 따라 디코딩된 제어신호(Cs_d)를 변환하여 범용레지스터 제어신호(Cs1)를 생성한다. 이와 함께, 범용레지스터 어드레스 및 제어신호 생성기(27)는 디코딩된 어드레스(Address_d)를 변환하여 범용레지스터 어드레스(Address1)를 생성한다.
변환이 완료되면, 범용레지스터 어드레스 및 제어신호 생성기(27)는 범용레지스터 제어신호(Cs1) 및 범용레지스터 어드레스(Address1)를 범용레지스터(31)로 전송한다. 즉, 범용레지스터 어드레스 및 제어신호 생성기(27)는 DRAM 방식으로 입력되는 호스트 신호들을 범용레지스터(31)를 위한 신호로 변환하기 위한 유닛이다.
범용레지스터 어드레스 및 제어신호 생성기(27)는 변환된 범용레지스터 제어신호(Cs1)에 따라, 범용레지스터 어드레스(Address1)를 이용해 호스트(10)로부터 DRAM 데이터버스(11)를 거쳐 범용레지스터 쓰기 버퍼(25)에 저장된 DRAM 데이터(Data)를 범용레지스터(31)에 저장하도록 제어한다.
한편, 본 발명의 다른 실시 예로 읽기 모드의 경우, 범용레지스터 어드레스 및 제어신호 생성기(27)는 상기와 동일한 과정에 의해 변환된 범용레지스터 제어신호(Cs1)와, 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 범용레지스터(31)에 전송할 수 있다. 이에 따라, 범용레지스터(31)로부터 전송된 데이터는 범용레지스터 쓰기 버퍼(25)를 거치지 않고 범용 레지스터(31)와 호스트(20) 사이의 데이터 버스를 통해 직접 호스트(10)에 전송될 수 있다.
DRAM 버퍼(29)는 컴패니언 칩(30) 상의 DRAM(35)에 데이터를 읽고 쓰기 위해 사용된다. DRAM 버퍼(29)는 DRAM(35)에 데이터를 쓰는 경우 DRAM 데이터(Data)를 수신하여 저장한다. 한편, DRAM 버퍼(29)는 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하여, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신한다. DRAM 버퍼(29)는 구분신호에 따라 디코딩된 제어신호(Cs_d)를 변환하여 DRAM 제어신호(Cs2)를 생성하며, 디코딩된 어드레스(Address_d)를 변환하여 DRAM 어드레스(Address2)를 생성한다. DRAM 버퍼(29)는 저장된 DRAM 데이터(Data)를 DRAM 제어신호(Cs2) 및 DRAM 어드레스(Address2)를 이용해 연결된 DRAM(35)에 저장한다.
보다 구체적으로, DRAM 버퍼(29)는 DRAM 제어기(21)에서 수신된 디코딩된 DRAM 제어신호(Cs_d)에 따라, 해당 DRAM 어드레스(Address2)에 DRAM 데이터(Data)를 저장한다. DRAM 버퍼(29)는 범용레지스터 쓰기 버퍼(25)와 동일하게 호스트(10) 의 DRAM 클럭이 컨패니언 칩(30)의 클럭에 비해 상대적으로 빨라 호스트(10)의 DRAM 클럭과 컴패니언 칩(30)의 클럭이 동기화되지 않기 때문에 이를 보완하기 위해 사용된다.
한편, 본 발명의 다른 실시 예로 읽기 모드의 경우, DRAM 버퍼(29)는 상기와 동일한 과정에 의해 변환된 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 이용해, 읽기 커맨드를 컨트롤러(33)에 전송할 수 있다. 이에 따라, DRAM 버퍼(29)는 DRAM(35)으로부터 전송된 데이터를 저장한 뒤, 데이터 버스(11)를 통해 호스트(20)로 전송할 수 있다.
컴패니언 칩(30)은 범용레지스터(31), 컨트롤러(33), DRAM(35)을 포함할 수 있다. 범용레지스터(31)는 범용레지스터 어드레스 및 제어신호 생성기(27)에서 수신된 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 수신하며, 범용레지스터 쓰기 버퍼(25)로부터 데이터(Data)를 수신하여 저장한다.
컨트롤러(33)는 DRAM 버퍼(29)에서 수신된 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 DRAM(35)에 호환되는 제어신호와 어드레스로 변환한 뒤, DRAM(35)에 DRAM 데이터(Data)를 저장한다. DRAM(35)은 컨트롤러(33)에 의한 제어에 따라 해당 어드레스로 DRAM 데이터(Data)를 저장하는 저장 유닛이다.
도 4는 본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스를 이용한 고속 데이터 전송방법을 나타내는 흐름도이다.
도 1 내지 도 4를 참조하면, DRAM 제어기(21)는 호스트(10)로부터 전송된 제 어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성한다. 이와 동시에, DRAM 어드레스 디코더(23)는 수신된 어드레스(Address)의 미리 설정된 비트를 분석하여 범용레지스터(31)로 데이터를 전송할 것인지 또는 DRAM(35)로 데이터를 전송할 것인지를 판단하여 구분신호를 생성하며, 이와 함께 수신된 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성한다(S31). 일실시 예로, 미리 설정된 비트는 호스트(10)에서 수신된 어드레스(Address)의 최상위 비트일 수 있다.
이후, DRAM 제어기(21)는 디코딩된 제어신호(Cs_d)를 범용레지스터 어드레스 및 제어신호 생성기(27), 및 DRAM 버퍼(29)로 전송하며, DRAM 어드레스 디코더(23)는 구분신호와 디코딩된 어드레스(Address_d)를 범용레지스터 어드레스 및 제어신호 생성기(27), 및 DRAM 버퍼(29)로 전송한다(S33). 또한, DRAM 어드레스 디코더(23)는 호스트(10)로부터 수신된 어드레스(Address), 범용레지스터 어드레스(Address1), 및 DRAM 어드레스(Address2) 상호 간의 어드레스 변환 기능을 수행할 수도 있다.
범용레지스터 어드레스 및 제어신호 생성기(27)는 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하고, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신하여, 구분신호가 범용레지스터(31)로 데이터 전송을 나타낸 경우인지를 판단한다(S35).
판단결과, 범용레지스터(31)로 데이터 전송을 나타낸 경우 범용레지스터 어드레스 및 제어신호 생성기(27)는 디코딩된 제어신호(Cs_d)를 변환하여 범용레지스터제어신호(Cs1)를 생성하며, 디코딩된 어드레스(Address_d)를 변환하여 범용레지 스터 어드레스(Address1)를 생성한다(37a).
범용레지스터 어드레스 및 제어신호 생성기(27)는 변환된 범용레지스터 제어신호(Cs1)에 따라, 범용레지스터 어드레스(Address1)를 이용해 호스트(10)로부터 DRAM 데이터버스(11)를 거쳐 범용레지스터 쓰기 버퍼(25)에 저장된 DRAM 데이터(Data)를 범용레지스터(31)에 저장하도록 제어한다(S39a).
이에 따라, 범용레지스터(31)에 대한 저장 프로세서가 완료된다.
한편, 단계(S35)에서, DRAM 버퍼(29)도 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하여, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신하여, 구분신호가 DRAM(35)으로 데이터 전송을 나타낸 경우인지를 판단한다.
판단결과, DRAM(35)으로 데이터 전송을 나타낸 경우 DRAM 버퍼(29)는 디코딩된 제어신호(Cs_d)를 변환하여 DRAM 제어신호(Cs2)를 생성하며, 디코딩된 어드레스(Address_d)를 변환하여 DRAM 어드레스(Address2)를 생성한다(37b).
DRAM 버퍼(29)는 변환된 DRAM 제어신호(Cs2)에 따라, DRAM 어드레스(Address2)를 이용해 DRAM 데이터버스(11)를 거쳐 수신한 DRAM 데이터(Data)를 DRAM(35)에 저장하도록 제어한다(S39b). 이에 따라, DRAM(35)에 대한 저장 프로세서가 완료된다.
도 5는 본 발명의 다른 실시 예에 따른 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스를 이용한 고속 데이터 전송방법을 나타내는 흐름도이다. 도 1 내지 도 5를 참조하면, DRAM 제어기(21)는 호스트(10)로부터 전송된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성한다. 이와 동시에, DRAM 어드레스 디코더(23)는 수신된 어드레스(Address)의 미리 설정된 비트를 분석하여 범용레지스터(31)로부터 데이터를 수신할 것인지 또는 DRAM(35)로 데이터를 수신할 것인지를 판단하여 구분신호를 생성하며, 이와 함께 수신된 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성한다(S51). 일실시 예로, 미리 설정된 비트는 호스트(10)에서 수신된 어드레스(Address)의 최상위 비트일 수 있다.
이후, DRAM 제어기(21)는 디코딩된 제어신호(Cs_d)를 범용레지스터 어드레스 및 제어신호 생성기(27), 및 DRAM 버퍼(29)로 전송하며, DRAM 어드레스 디코더(23)는 구분신호와 디코딩된 어드레스(Address_d)를 범용레지스터 어드레스 및 제어신호 생성기(27), 및 DRAM 버퍼(29)로 전송한다(S53).
범용레지스터 어드레스 및 제어신호 생성기(27)는 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하여, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신하여, 구분신호가 범용레지스터(31)로부터의 데이터 수신을 나타낸 경우인지를 판단한다(S55).
판단결과, 범용레지스터(31)로부터 데이터 수신을 나타낸 경우 범용레지스터 어드레스 및 제어신호 생성기(27)는 디코딩된 제어신호(Cs_d)를 변환하여 범용레지스터제어신호(Cs1)를 생성하며, 디코딩된 어드레스(Address_d)를 변환하여 범용레지스터 어드레스(Address1)를 생성한다(S57a).
범용레지스터 어드레스 및 제어신호 생성기(27)는 변환된 범용레지스터 제어신호(Cs1)와, 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 범용레지스터(31)에 전송한다(S59a). 이에 따라, 범용레지스터(31)는 데이터를 범용레지스터 쓰기 버퍼(25)를 거치지 않고 직접 데이터 버스(11)를 통해서 호스트(10)로 전송한다(S61a). 이에 따라, 범용레지스터(31)에 대한 읽기 프로세서가 완료된다.
한편, 단계(S55)에서, DRAM 버퍼(29)도 DRAM 제어기(21)로부터는 디코딩된 제어신호(Cs_d)를 수신하여, DRAM 어드레스 디코더(23)로부터는 구분신호 및 디코딩된 어드레스(Address_d)를 수신하여, 구분신호가 DRAM(35)으로부터 데이터 수신을 나타낸 경우인지를 판단한다.
판단결과, DRAM(35)으로 데이터 수신을 나타낸 경우 DRAM 버퍼(29)는 디코딩된 제어신호(Cs_d)를 변환하여 DRAM 제어신호(Cs2)를 생성하며, 디코딩된 어드레스(Address_d)를 변환하여 DRAM 어드레스(Address2)를 생성한다(S57b).
DRAM 버퍼(29)는 변환된 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 이용해 읽기 커맨드를 컨트롤러(33)에 전송한다(S59b).
이에 따라, DRAM 버퍼(29)는 컨트롤러(33)의 제어에 따라 DRAM(35)으로부터 전송된 데이터를 저장한 뒤, 데이터 버스(11)를 통해 호스트(20)로 전송한다(S61b). 이에 따라, DRAM(35)에 대한 읽기 프로세서가 완료된다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스 템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분사되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
상기 본 발명의 내용은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명의 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치 및 이를 이용한 데이터 전송방법에 의해, 호스트와 컴패니언 칩 간의 인터페이스를 DRAM 방식으로 사용함으로써, 호스트로부터 컴패니언 칩으로의 데이터 전송 시간을 최소화함으로써, 시간당 데이터 전송률을 향상시키는 기술을 제공할 수 있다.
도 1은 종래의 DRAM 방식 인터페이스의 동작 타이밍을 나타내는 도면.
도 2는 본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM방식 인터페이스 구조 및 이에 연결된 호스트 및 컴패니언 칩 간의 관계를 나타내는 블록도.
도 3은 본 발명의 실시 예에 따른 DRAM방식 인터페이스의 구성을 나타내는 블록도.
도 4는 본 발명의 실시 예에 따른 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스를 이용한 고속 데이터 전송방법을 나타내는 흐름도.
도 5는 본 발명의 다른 실시 예에 따른 고속 데이터 전송을 위한 DRAM 방식의 호스트 인터페이스를 이용한 고속 데이터 전송방법을 나타내는 흐름도.
<도면의 주요부분에 대한 부호의 설명>
10: 호스트 11: DRAM 데이터버스
20: DRAM방식 인터페이스 21: DRAM 제어기
23: DRAM 어드레스 디코더 25: 범용레지스터 쓰기 버퍼
27: 범용레지스터 어드레스 및 제어신호 생성기
29: DRAM 버퍼 30: 컴패니언 칩
31: 범용레지스터 33: 컨트롤러
35: DRAM

Claims (20)

  1. 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기;
    상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더;
    상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하여 저장하는 범용레지스터 쓰기 버퍼; 및
    상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하여 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성한 뒤, 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 상기 DRAM 데이터버스를 거쳐 상기 범용레지스터 쓰기 버퍼에 저장된 상기 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 범용레지스터 어드레스 및 제어신호 생성기; 를 포함하며,
    상기 범용레지스터 어드레스 및 제어신호 생성기는, 읽기 모드의 경우 상기 변환된 범용레지스터 제어신호(Cs1)와, 상기 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 상기 범용레지스터에 전송하여, 상기 범용레지스터로부터 전송된 데이터를 상기 범용 레지스터와 상기 호스트 사이의 데이터 버스를 통해 직접 상기 호스트에 전송하도록 하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  2. 제 1 항에 있어서, 상기 미리 설정된 비트는,
    상기 DRAM 어드레스(Address)의 최상위 비트인 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  3. 삭제
  4. 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기;
    상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더; 및
    상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하며, 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하며, 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성한 뒤, 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 상기 DRAM 데이터버스를 거쳐 수신된 상기 DRAM 데이터를 DRAM에 저장하도록 제어하는 DRAM 버퍼; 를 포함하며,
    상기 DRAM 버퍼는, 읽기 모드의 경우 상기 변환된 DRAM 제어신호(Cs2)와 상기 DRAM 어드레스(Address2)를 이용해, 읽기 커맨드를 자신과 상기 DRAM 사이에 형성된 컨트롤러에 전송하여, 상기 컨트롤러의 제어에 따라 상기 DRAM으로부터 전송된 데이터를 저장한 뒤, 상기 호스트로 전송하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  5. 제 4 항에 있어서, 상기 미리 설정된 비트는,
    상기 DRAM 어드레스(Address)의 최상위 비트인 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  6. 삭제
  7. 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 디코딩된 제어신호(Cs_d)를 생성하는 DRAM 제어기;
    상기 호스트에서 수신된 DRAM 어드레스(Address)의 미리 설정된 비트를 분석하여 구분신호를 생성하며, 상기 DRAM 어드레스(Address)를 디코딩하여 디코딩된 어드레스(Address_d)를 생성하는 DRAM 어드레스 디코더;
    상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하여 저장하는 범용레지스터 쓰기 버퍼; 및
    상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하여 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성한 뒤, 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 상기 DRAM 데이터버스를 거쳐 상기 범용레지스터 쓰기 버퍼에 저장된 상기 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 범용레지스터 어드레스 및 제어신호 생성기; 및
    상기 디코딩된 제어신호(Cs_d), 상기 구분신호 및 상기 디코딩된 어드레스(Address_d)를 수신하며, 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 DRAM 데이터를 수신하며, 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성한 뒤, 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 상기 DRAM 데이터버스를 거쳐 수신된 상기 DRAM 데이터를 DRAM에 저장하도록 제어하는 DRAM 버퍼; 를 포함하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  8. 제 7 항 있어서, 상기 DRAM 어드레스 디코더는,
    상기 어드레스(Address), 상기 범용레지스터 어드레스(Address1), 및 상기 DRAM 어드레스(Address2) 상호 간 어드레스 변환 기능을 수행하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치.
  9. 범용레지스터 어드레스 및 제어신호 생성기는 DRAM 제어기로부터 전송된 디코딩된 제어신호(Cs_d), DRAM 어드레스 디코더로부터 구분신호 및 디코딩된 어드레스(Address_d)를 수신하는 제 1 단계;
    상기 범용레지스터 어드레스 및 제어신호 생성기는 상기 구분신호가 범용레지스터로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스 (Address_d)를 각각 변환하여 범용레지스터 제어신호(Cs1)와 범용레지스터 어드레스(Address1)를 생성하는 제 2 단계; 및
    상기 범용레지스터 어드레스 및 제어신호 생성기는 상기 범용레지스터 제어신호(Cs1)에 따라 상기 범용레지스터 어드레스(Address1)를 이용해 범용레지스터 쓰기 버퍼에 저장된 DRAM 데이터를 범용레지스터에 저장하도록 제어하는 제 3 단계; 를 포함하며,
    상기 제 3 단계에 있어서, 상기 범용레지스터 어드레스 및 제어신호 생성기는 읽기 모드의 경우 상기 범용레지스터 제어신호(Cs1)와, 상기 범용레지스터 어드레스(Address1)를 이용해 읽기 커맨드를 상기 범용레지스터에 전송하여, 상기 범용레지스터로부터 전송된 데이터를 상기 범용 레지스터와 호스트 사이의 데이터 버스를 통해 직접 상기 호스트에 전송하도록 하는 단계; 를 더 포함하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  10. 삭제
  11. 제 9 항에 있어서, 상기 제 3 단계에서의 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 DRAM 데이터는,
    상기 범용레지스터 쓰기 버퍼가 상기 호스트와 데이터 통신을 수행하기 위한 DRAM 데이터버스로부터 데이터를 수신하여 저장하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  12. 제 9 항에 있어서, 상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 디코딩된 제어신호(Cs_d)는,
    상기 DRAM 제어기가 상기 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  13. 제 12 항에 있어서, 상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 디코딩된 어드레스(Address_d)는,
    상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)를 디코딩하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  14. 제 13 항에 있어서, 상기 제 1 수신단계에서 상기 범용레지스터 어드레스 및 제어신호 생성기가 수신하는 상기 구분신호는,
    상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)의 최상위 비트를 분석하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  15. DRAM 버퍼는 DRAM 제어기로부터 전송된 디코딩된 제어신호(Cs_d), DRAM 어드레스 디코더로부터 구분신호 및 디코딩된 어드레스(Address_d)를 수신하는 제 1 단계;
    상기 DRAM 버퍼는 상기 구분신호가 DRAM으로의 데이터 전송을 나타낸 경우 상기 디코딩된 제어신호(Cs_d)와 상기 디코딩된 어드레스(Address_d)를 각각 변환하여 DRAM 제어신호(Cs2)와 DRAM 어드레스(Address2)를 생성하는 제 2 단계; 및
    상기 DRAM 버퍼는 상기 DRAM 제어신호(Cs2)에 따라 상기 DRAM 어드레스(Address2)를 이용해 호스트와 데이터 통신을 통해 수신한 DRAM 데이터를 DRAM에 저장하도록 제어하는 제 3 단계; 를 포함하며,
    상기 제 3 단계에 있어서, 상기 DRAM 버퍼는 읽기 모드의 경우 상기 DRAM 제어신호(Cs2)와 상기 DRAM 어드레스(Address2)를 이용해 읽기 커맨드를 자신과 상기 DRAM 사이에 형성된 컨트롤러에 전송하는 단계; 및
    상기 DRAM 버퍼는 상기 컨트롤러의 제어에 따라 상기 DRAM으로부터 전송된 데이터를 저장하고, 상기 호스트로 전송하는 단계; 를 더 포함하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  16. 삭제
  17. 제 15 항에 있어서, 상기 제 3 단계에서의 상기 DRAM 버퍼가 수신하는 상기 DRAM 데이터는,
    상기 DRAM 제어기가 상기 호스트로부터 수신된 제어신호(Cs)를 디코딩하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  18. 제 15 항에 있어서, 상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 디코딩된 제어신호(Cs_d)는,
    상기 DRAM 제어기가 상기 호스트로부터 수신한 제어신호(Cs)를 수신한 상기 DRAM 제어기가 상기 제어신호(Cs)를 디코딩하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  19. 제 18 항에 있어서, 상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 디코딩된 어드레스(Address_d)는,
    상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)를 디코딩하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
  20. 제 19 항에 있어서, 상기 제 1 수신단계에서 상기 DRAM 버퍼가 수신하는 상기 구분신호는,
    상기 DRAM 어드레스 디코더가 상기 DRAM 어드레스(Address)의 최상위 비트를 분석하여 생성하는 것을 특징으로 하는 고속 데이터 전송을 위한 DRAM방식 인터페이스 장치를 이용한 데이터 전송방법.
KR1020090043405A 2009-05-19 2009-05-19 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법 KR100922343B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090043405A KR100922343B1 (ko) 2009-05-19 2009-05-19 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090043405A KR100922343B1 (ko) 2009-05-19 2009-05-19 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법

Publications (1)

Publication Number Publication Date
KR100922343B1 true KR100922343B1 (ko) 2009-10-21

Family

ID=41562056

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090043405A KR100922343B1 (ko) 2009-05-19 2009-05-19 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법

Country Status (1)

Country Link
KR (1) KR100922343B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990002281A (ko) * 1997-06-19 1999-01-15 윤종용 디램 인터페이스 제어장치
KR20070059859A (ko) * 2005-12-06 2007-06-12 한국전자통신연구원 칩 내부 회로 간의 데이터 전송을 위한 통신 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990002281A (ko) * 1997-06-19 1999-01-15 윤종용 디램 인터페이스 제어장치
KR20070059859A (ko) * 2005-12-06 2007-06-12 한국전자통신연구원 칩 내부 회로 간의 데이터 전송을 위한 통신 시스템

Similar Documents

Publication Publication Date Title
US8930599B2 (en) Data transmission system and method thereof
US11681452B2 (en) Memory access technology and computer system
KR100613941B1 (ko) 커맨드당 포스트된 라이트를 갖는 메모리 장치
US11657011B2 (en) Avalon-to-Axi4 bus conversion method
CN111009272B (zh) 输入输出逻辑电路、物理层接口模块及fpga芯片、存储系统
CN115866081B (zh) 一种基于soc的工业以太网协议转换方法
KR100944892B1 (ko) 버스 시스템 및 버스 인터페이스
CN110941582B (zh) 一种bmc芯片的usb总线结构及其通信方法
CN113961494A (zh) 一种pcie总线与axi总线的桥接系统
KR100433149B1 (ko) 주변 디바이스의 usb 인터페이스 디바이스
US11423970B2 (en) Memory device receiving data clock signals and operation method thereof
KR100922343B1 (ko) 고속 데이터 전송을 위한 dram방식 인터페이스 장치 및 이를 이용한 데이터 전송방법
CN111722827B (zh) 一种高效ddr访问方法
CN111949585A (zh) 数据转换处理方法及装置
US20220253238A1 (en) Method and apparatus for accessing solid state disk
CN113342724A (zh) 一种基于fpga的数据传输方法与装置
CN101499854B (zh) 一种光纤信号与sas信号相互转换数据的方法
CN114385544A (zh) Uart芯片及fpga芯片
US6405260B2 (en) Data transmission method and apparatus for interfacing between main system and microcomputer
CN112148667B (zh) 一种基于fpga软核的缓存系统及方法
KR102381361B1 (ko) 다이나믹 클럭 게이팅 장치
CN113687791B (zh) 基于预读取和分支判断机制的存储器数据快速读取装置
CN113687792A (zh) 一种存储器数据快速读取方法
CN115033172B (zh) 一种存储模块管控方法、装置、设备及存储介质
CN114925010A (zh) 一种Quad SPI转AXI接口的方法

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
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: 20121011

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131007

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150427

Year of fee payment: 6

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20150924

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160923

Year of fee payment: 8