KR100891508B1 - 가상 디엠에이를 포함하는 시스템 - Google Patents

가상 디엠에이를 포함하는 시스템 Download PDF

Info

Publication number
KR100891508B1
KR100891508B1 KR1020070026118A KR20070026118A KR100891508B1 KR 100891508 B1 KR100891508 B1 KR 100891508B1 KR 1020070026118 A KR1020070026118 A KR 1020070026118A KR 20070026118 A KR20070026118 A KR 20070026118A KR 100891508 B1 KR100891508 B1 KR 100891508B1
Authority
KR
South Korea
Prior art keywords
address
data
virtual
ips
memory
Prior art date
Application number
KR1020070026118A
Other languages
English (en)
Other versions
KR20080084410A (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 삼성전자주식회사
Priority to KR1020070026118A priority Critical patent/KR100891508B1/ko
Priority to US12/049,434 priority patent/US20080228961A1/en
Publication of KR20080084410A publication Critical patent/KR20080084410A/ko
Application granted granted Critical
Publication of KR100891508B1 publication Critical patent/KR100891508B1/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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)

Abstract

여기에 개시된 시스템은 중앙처리장치와; 복수의 아이피들과; 상기 중앙처리장치의 제어에 따라 상기 복수의 아이피들 중 제1 및 제2 아이피들을 선택하고, 상기 제1 및 제2 아이피들 사이의 데이터 전송을 제어하는 버추얼 디엠에이를 포함한다.

Description

가상 디엠에이를 포함하는 시스템{SYSTEM INCLUDING VIRTUAL DMA}
도 1a과 도 1b는 DMA를 포함하지 않는 시스템과 타이밍을 도시한다.
도 2는 일반적인 DMA를 포함하는 시스템을 도시한다.
도 3a는 본 발명의 실시예에 따른 가상의 DMA를 포함하는 시스템의 블럭도이다.
도 3b는 도 3a에 도시된 버추얼 컨트롤러를 상세히 나타내는 블럭도이다.
도 3c는 본 발명에 따른 가상의 DMA를 포함하는 시스템의 동작을 도시한 타이밍도이다.
도 4는 도 4는 도 3a에 도시된 가상의 DMA를 포함하는 시스템을 구동하는 순서도이다.
도 5a는 본 발명의 또 다른 실시예에 따른 가상의 DMA를 포함하는 시스템의 블럭도이다.
도 5b는 도 5a에 도시된 버추얼 컨트롤러를 상세히 나타내는 블럭도이다이밍도이다. .
도 6는 본 발명에 따른 가상의 DMA를 이용하여 데이터 전송을 나타내는 타이밍도이다.
도 7은 본 발명에 따른 가상의 DMA를 이용하여 버스트 모드인 경우 독출동작을 예시하는 타이밍도이다.
*도면의 주요 부분에 대한 부호의 설명*
310 : IP1 320 : IP2
330 : IP3 340 : IP4
350 : CPU 360 : vDMA Controller
380 : DB 390 : DA
본 발명은 반도체 시스템에 관한 것으로, 좀 더 구체적으로는 가상의 DMA를 포함하는 시스템에 관한 것이다.
도 1에 도시된 일반적인 SoC(System On a Chip) 시스템(100)은 CPU(110), IP(Intellectual Property ; 120), 메모리(130), 및 데이터 버스(Data Bus ; 140)으로 구성된다.
IP(120)는 CPU(110)의 제어에 따라 데이터 버스(140)를 통하여 메모리(130)를 억세스한다. IP(120)는 CPU(110)가 처리하기 어려운 기능을 수행한다. 예를 들면, IP(120)는 3차원 그래픽 가속, 메모리, DSP(Digital Signal Process) 기능 등을 수행한다.
IP는 메모리의 데이터를 이용하여 복잡한 연산을 필요로 하는 경우 도 2에 도시된 바와 같이 DMA를 이용하여 IP가 직접 메모리의 데이터를 억세스한다.
도 2는 일반적인 DMA를 포함하는 시스템을 도시한다. 도 2를 참조하면, 시스템(200)은 CPU(210), IP(220), 메모리(230), 데이터 버스(240), 및 DMA(Direct Memory Access ; 250)을 포함한다.
IP(220)는 DMA(250)의 제어에 따라 데이터 버스(240)를 통하여 메모리(230)를 억세스한다. 시스템(200)이 DMA(250)를 포함하는 경우 시스템의 구성은 복잡해진다. 예를 들면, ARM(Advanced RISC Machine)을 포함하는 시스템은 중재기(Arbiter), DMA-Master 등의 블럭을 추가적으로 필요로 한다. 따라서, 단순한 칩을 구현하는 경우에도 시스템이 복잡해지는 문제가 발생한다.
그러나, 시스템이 DMA를 사용하지 않는 경우 메모리의 데이터를 CPU가 IP에 전달해 주는 과정은 도 1b에 도시된 바와 같이 여러 싸이클(Cycle)을 필요로 하게 된다. 즉, DMA를 사용하지 않으면서도 메모리 데이터를 억세스하는데 필요한 버스 트랜젝션 싸이클을 최소화하고자 하는 필요가 발생한다.
CPU only System DMA System
BUS CPU 독점 CPU, DMA가 나눠씀
DATA 처리 방식 CPU only, Software로만 Data 전송 Data 전송은 DMA가 전담
DATA 처리 속도 매우 느림(Software code에 의존) 매우 빠름
단점 ow speed High cost, difficult design
장점 Low cost High data rate
표 1은 CPU만이 내재된 시스템과 CPU와 DMA가 탑재된 시스템의 장단점을 나타낸다. DMA가 시스템에 탑재되는 경우 시스템의 성능은 향상되는 반면, 비용이 증가하고, 시스템의 구현이 어렵다.
따라서, 본 발명의 목적은 DMA를 사용하지 않으면서도 메모리 데이터를 억세스하는데 필요한 버스 트랜젝션 싸이클을 최소화하는데 있다.
본 발명의 목적은 DMA를 사용하지 않으면서도 CPU에 부하를 주지 않는 시스템을 제공하는데 있다.
상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면 시스템은 중앙처리장치와; 복수의 아이피들과; 상기 중앙처리장치의 제어에 따라 상기 복수의 아이피들 중 제1 및 제2 아이피들을 선택하고, 상기 제1 및 제2 아이피들 사이의 데이터 전송을 제어하는 버추얼 디엠에이를 포함한다.
(실시예)
본 발명의 신규한 시스템은 중앙처리장치와; 복수의 아이피들과; 상기 중앙처리장치의 제어에 따라 상기 복수의 아이피들 중 제1 및 제2 아이피들을 선택하고, 상기 제1 및 제2 아이피들 사이의 데이터 전송을 제어하는 버추얼 디엠에이를 포함한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시예를 첨부된 도면을 참조하여 설명한다.
도 3a는 본 발명의 실시예에 따른 가상의 DMA를 포함하는 시스템의 블럭도이고, 도 3b는 도 3a에 도시된 버추얼 컨트롤러를 상세히 나타내는 블럭도이고, 도 3c는 본 발명에 따른 가상의 DMA를 포함하는 시스템의 동작을 도시한 타이밍도이다. 도 4는 도 3a에 도시된 가상의 DMA를 포함하는 시스템을 구동하는 순서도이다.
도 3a 내지 도 4를 참조하면, 시스템(300)은 제1 IP(310), 제2 IP(320), 제3 IP(330), 제4 IP(340), CPU(350), 버추얼 디엠에이 컨트롤러(vDMA Controller: Virtual Direct Memory Access Controller ; 360), 데이터 버스(DB ; 380), 및 어드레스 버스(DA ; 390)를 포함한다.
제1 IP(310), 제2 IP(320), 제3 IP(330), 및 제4 IP(340)는 각각의 고유한 기능을 수행하도록 설계된다. 예를 들면, 제1 IP(310)는 2차원 그래픽 가속기이고, 제2 IP(320)는 메모리이고, 제3 IP(330)은 3차원 그래픽 가속기이고, 제4 IP(340)는 DSP 기능을 수행한다. CPU(360)은 시스템(300)의 전반적인 동작을 제어한다.
버추얼 디엠에이 컨트롤러(360)는 DA_now_reg(361), DA_target_reg(362), vDMA_en_reg(363), DA_start_reg(367), DA Range Comparator(364), 앤드 게이트(AND Gate ; 365), 오아 게이트(OR Gate ; 366), DA_Incrementor(368), 및 멀티플렉서(Multiplexor ; 370)를 포함한다.
DA_now_reg(361)는 도 3c에 도시된 바와 같이 CPU(350)의 제어에 따라 어드레스 버스(390)에 실린 어드레스(DA)보다 한 클럭(Clock) 지연된 어드레스(DA_now)를 생성하고, 생성된 어드레스(DA_now)를 저장한다. DA_target_reg(362)는 데이터 버스(38)로부터 IP에 전송될 데이터의 타겟 어드레스의 범위(Range ; DA_tgt_low, DA_tgt_high)를 입력받고, 입력받은 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)를 저장한다. 즉, DA_target_reg(362)는 타겟 로우 어드레 스(DA_tgt_low)와 타겟 하이 어드레스(DA_tgt_high) 사이의 범위를 설정한다. vDMA_en_reg(363)는 CPU(350)의 제어에 응답하여 버추얼 디엠에이 컨트롤러(360)의 활성화 정보를 저장한다. DA Range Comparator(364)는 DA_now_reg(361)로부터의 전송된 어드레스(DA_now)와 DA_target_reg(362)로부터의 전송된 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)를 비교하여 어드레스 매치 신호(Addr_match)를 출력한다. 앤드 게이트(365)는 DA Range Comparator(364)로부터 전송된 어드레스 매치 신호(Addr_match)와 vDMA_en_reg(363)로부터 전송된 인에이블 신호(vDMA_en)를 앤드 게이팅한다. 오아 게이트(366)는 앤드 게이트(365)의 출력과 기입 활성화 신호(WRITE_EN)를 오아 게이팅한다. DA_start_reg(367)는 데이터 버스(380)으로부터 데스티네이션 아이피(Destination IP)의 시작 어드레스를 전송받고, 데스티네이션 아이피의 시작 어드레스를 저장한다. DA_Incrementor(368)는 버추얼 디엠에이 컨트롤러(360)의 기입동작이 수행될 때마다 자동적으로 어드레스를 증가시킨다. 덧셈기(369)는 DA_start_reg(367)로부터 전송된 어드레스와 DA_Incrementor(368)로부터 증가된 어드레스를 합산한다. 멀티플렉서(370)는 vDMA_en_reg(363)의 제어에 응답하여 어드레스 버스(390)과 뎃셈기(369)의 결과중 어느 하나를 출력한다.
계속해서 도 3a 내지 도 4를 참조하면, 예를 들면, 제2 IP(320)는 메모리이고, 제1 IP(310)가 제2 IP(320)에 저장된 데이터를 억세스한다고 가정한다.
CPU(350)는 IP들(310-340)중 소스 아이피(Source IP)와 데스티네이션 아이피(Destination IP)를 선택한다. 즉, 소스 아이피는 제2 IP(320)이고, 데스티네이션 아이피는 제2 IP(320)의 메모리를 전송받을 제1 IP(310)이다. (단계 410) CPU(350)는 제1 IP(310)가 필요로 하는 메모리 영역을 선택한다. 즉, DA_target_reg(362)는 데이터 버스(38)로부터 IP에 전송될 데이터의 타겟 어드레스의 범위(Range ; DA_tgt_low, DA_tgt_high)를 입력받고, 입력받은 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)를 저장한다.(단계 420) 데스티네이션 아이피인 제1 아이피(310)의 시작 어드레스를 설정한다. 즉, CPU(350)는 제2 아이피(320)로부터 전송된 데이터를 저장하기 위한 시작 어드레스를 데이터 버스(380)을 통하여 DA_start_reg(367)에 저장한다. (단계 430)
CPU(350)는 버추얼 디엠에이 컨트롤러(360)를 활성화시킨다. 즉, CPU(350)는 vDMA_en_reg(363)의 출력 신호(vDMA_en)를 활성화시킨다.(단계 440) CPU(350)는 제1 IP(310)가 필요로 하는 메모리의 어드레스를 모니터링한다. (단계 450) 즉, DA Range Comparator(364)는 DA의 한 클럭(Clock) 지연된 어드레스(DA_now)가 DA_target_reg(362)의 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)안에 들어오는 지를 판단한다. (단계 450)
(단계 460) 만약, DA_now_reg(361)의 한 클럭(Clock) 지연된 어드레스(DA_now)가 DA_target_reg(362)의 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)안에 들어오면, DA Range Comparator(364)는 어드레스 매치 신호(Addr_match)를 활성화한다. vDMA_en_reg(363)의 출력 신호(vDMA_en)와 어드레스 매치 신호(Addr_match)가 활성화됨에 따라 오아 게이트(366)의 아이피 기입 활성화 신호(wEN_IP1)는 활성화된다. 제1 IP(310)는 멀티플렉서(370)로부터 전송된 어드레스(DA_IP1)를 전송받아 데이터 버스(380)에 실린 데이터(DB)를 억세스한다. (단 계 470) DA Incrementor(368)는 어드레스를 증가하고, 덧셈기(369)는 DA_start_reg(367)로부터 전송된 어드레스(DA_start)와 DA_Incrementor(368)로부터 증가된 어드레스를 합산한다. (단계 480)
DA_now_reg(361)의 한 클럭(Clock) 지연된 어드레스(DA_now)가 DA_target_reg(362)의 타겟 어드레스의 범위(DA_tgt_low, DA_tgt_high)를 벗어날 경우, DA Range Comparator(364)는 어드레스 매치 신호(Addr_match)를 불활성화하고, 버추얼 디엠에이(360)은 vDMA_en_reg(363)의 출력 신호(vDMA_en)가 활성화되어있는 동안 계속 DA_now를 모니터링하며 무한 루프(loop)를 수행한다. 이후, vDMA_en_reg(363)는 CPU(350)의 제어에 응답하여 출력 신호(vDMA_en)를 불활성화시킨다. (단계 490)
따라서, 본 발명의 버추얼 디엠에이 컨트롤러는 아이피가 메모리 또는 다른 아이피를 빠르게 억세스할 수 있도록 한다. 또한, 본 발명은 CPU가 메모리를 독출하는 동안 데이터 버스상에 실린 데이터를 아이피가 기입하도록 한다.
도 5a는 본 발명의 또 다른 실시예에 따른 가상의 DMA를 포함하는 시스템의 블럭도이고, 도 5b는 도 5a에 도시된 버추얼 컨트롤러를 상세히 나타내는 블럭도이다. 도 5a와 도 5b에 도시된 시스템(500)은 도 3a와 도 3b에 도시된 시스템(300)의 DA_start_reg(367), 멀티플렉서(370), DA_Incrementor(368), 및 덧셈기(369)를 제외하고는 모두 동일하다. 따라서, 중복되는 설명은 생략한다.
도 5a와 도 5b을 참조하면, 시스템(500)의 제1 IP(510)는 제1 파이포(FIFO : First-In First-Out ; 511)을 포함하고, 제3 IP(530)는 제2 파이포(531)을 포함하 고, 제4 IP(540)는 제3 파이포(541)을 포함한다.
파이포(511, 531, 541)은 데이터를 순차적으로 저장하고, 입력된 순서대로 출력한다. 따라서, 파이포의 특성상 데이터의 어드레스를 증가하는 회로는 불필요하다. 즉, 도 3b에 도시된 DA_start_reg(367), DA Incrementor(368), 덧셈기(369), 및 멀티플렉서(370)는 불필요하다. 따라서, 본 발명은 앞에서 예시에 비하여 더욱 단순하게 구현된다.
예를 들면, 제2 IP(520)는 메모리이고, 제1 IP(510)가 제2 IP(520)에 저장된 데이터를 억세스한다고 가정한다. 제2 IP(520)는 CPU(550)의 제어에 따라 버추얼 디엠에이 컨트롤러(560)의 어드레스(DA_IP2)에 응답하여 데이터를 데이터 버스(380)에 로딩한다. 제1 IP(510)는 버추얼 디엠에이 컨트롤러(560)의 아이피 기입 활성화 신호(vEN_IP1)에 응답하여 데이터 버스(580)에 실린 데이터를 입력받는다. 즉, 제1 IP(510)는 버추얼 디엠에이 컨트롤러(560)의 제어에 의한 어드레스(DA_IP1)를 필요로 하지 않는다.
즉, 본 발명의 버추얼 디엠에이 컨트롤러는 아비터를 포함하지 않는 DMA(즉, 아비터프리디엠에이(Arbiter-free DMA))이다.
도 6는 본 발명에 따른 가상의 DMA를 이용하여 데이터 전송을 나타내는 타이밍도이고, 도 7은 본 발명에 따른 가상의 DMA를 이용하여 버스트 모드인 경우 독출동작을 예시하는 타이밍도이다.
도 6를 참조하면, IP는 메모리를 독출하는 싸이클에 자동적으로 데이터가 기입된다. 도 7을 참조하면, 버스트 모드인 경우 IP는 입력되는 어드레스에 대응하는 데이터가 출력과 동시에 자동적으로 데이터가 기입된다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
이상과 같은 본 발명은 아이피가 메모리 또는 다른 아이피를 빠르게 억세스할 수 있도록 한다. 또한, 본 발명은 CPU가 메모리를 독출하는 동안 데이터 버스상에 실린 데이터를 아이피가 기입하도록 한다.

Claims (16)

  1. 복수의 아이피들;
    상기 복수의 아이피들 중 데이터를 전송할 제1 아이피와 상기 데이터를 전송받을 제2 아이피를 선택하는 선택 정보 및 상기 데이터에 대응하는 어드레스 정보를 제공하는 중앙처리장치; 및
    상기 선택 정보 및 상기 어드레스 정보에 따라 상기 제1 아이피의 독출동작 동안, 상기 제2 아이피의 기입동작이 실행되도록 제어하는 버추얼 디엠에이를 포함하는 시스템.
  2. 제 1 항에 있어서,
    상기 제1 아이피는 메모리인 것을 특징으로 하는 시스템.
  3. 제 2 항에 있어서,
    상기 버추얼 디엠에이는
    상기 중앙처리장치로부터 제공된 제1 어드레스를 상기 메모리로 제공하는 것을 특징으로 하는 시스템.
  4. 제 3 항에 있어서,
    상기 버추얼 디엠에이는 상기 제2 아이피에 기입하기 위한 제1 인에이블 신호들을 생성하는 시스템.
  5. 제 4 항에 있어서,
    상기 메모리는 상기 버추얼 디엠에이로부터의 상기 제1 어드레스 신호에 응답해서 상기 데이터를 상기 제2 아이피로 제공하는 시스템.
  6. 제 5 항에 있어서,
    상기 버추얼 디엠에이는 상기 중앙처리장치로부터 제공된 제2 어드레스를 상기 제2 아이피로 제공하는 것을 특징으로 하는 시스템.
  7. 제 6 항에 있어서,
    상기 제2 아이피는 상기 버추얼 디엠에이로부터의 제2 인에이블 신호 및 상기 제2 어드레스 신호에 응답해서 상기 메모리로부터의 상기 데이터를 저장하는 시스템.
  8. 제 1 항에 있어서,
    상기 복수의 아이피들 중 상기 선택된 제1 및 제2 아이피들을 제외한 나머지 아이피들은 디세이블되는 것을 특징으로 하는 시스템.
  9. 제 1 항에 있어서,
    상기 제2 아이피는 파이포(FIFO)를 포함하는 것을 특징으로 하는 시스템.
  10. 복수의 아이피들;
    상기 복수의 아이피들 중 데이터를 전송할 제1 아이피와 상기 데이터를 전송받을 제2 아이피를 선택하고, 상기 데이터를 억세스하기 위한 제1 및 제2 어드레스를 결정하고, 상기 제1 아이피에 억세스할 제3 어드레스를 제공하는 중앙처리장치; 및
    중앙처리장치의 제어에 응답하여 상기 제3 어드레스를 상기 제1 아이피로 전송하고, 상기 제2 아이피로 상기 제1 및 제2 어드레스와 기입 인에이블 신호를 전송하여 상기 제1 아이피의 독출동작 동안, 상기 제2 아이피의 기입동작이 실행되도록 제어하는 버추얼 디엠에이를 포함하는 시스템.
  11. 제 10 항에 있어서,
    상기 버추얼 디엠에이는,
    상기 데이터의 전송을 시작하기 위한 상기 제1 어드레스를 저장하는 제1 레지스터;
    상기 데이터의 전송을 종료하기 위한 상기 제2 어드레스를 저장하는 제2 레지스터; 및
    상기 제3 어드레스와 상기 제1 및 제2 어드레스를 비교하여 상기 인에이블 신호를 출력하는 어드레스 비교부를 포함하는 것을 특징으로 하는 시스템.
  12. 제 11 항에 있어서,
    상기 어드레스 비교부는,
    상기 제3 어드레스가 상기 제1 어드레스보다 크고, 상기 제2 어드레스보다 작은 경우 상기 제2 아이피에 상기 데이터를 저장하는 상기 기입 인에이블 신호를 출력하는 시스템.
  13. 제 11 항에 있어서,
    상기 어드레스 비교부는,
    상기 제3 어드레스가 상기 제1 어드레스보다 작거나, 상기 제2 어드레스보다 큰 경우 상기 버추얼 디엠에이를 불활성화하는 시스템.
  14. 제 10 항에 있어서,
    상기 복수의 아이피들, 상기 중앙처리장치 및 상기 버추얼 디엠에이를 상호 연결하는 시스템 버스를 더 포함하는 시스템.
  15. 제 10 항에 있어서,
    상기 복수의 아이피들 중 적어도 하나는 상기 제1 아이피를 억세스하는 시스템.
  16. 제 10 항에 있어서,
    상기 제2 아이피는 파이포(FIFO)를 포함하는 것을 특징으로 하는 시스템.
KR1020070026118A 2007-03-16 2007-03-16 가상 디엠에이를 포함하는 시스템 KR100891508B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070026118A KR100891508B1 (ko) 2007-03-16 2007-03-16 가상 디엠에이를 포함하는 시스템
US12/049,434 US20080228961A1 (en) 2007-03-16 2008-03-17 System including virtual dma and driving method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070026118A KR100891508B1 (ko) 2007-03-16 2007-03-16 가상 디엠에이를 포함하는 시스템

Publications (2)

Publication Number Publication Date
KR20080084410A KR20080084410A (ko) 2008-09-19
KR100891508B1 true KR100891508B1 (ko) 2009-04-06

Family

ID=39763797

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070026118A KR100891508B1 (ko) 2007-03-16 2007-03-16 가상 디엠에이를 포함하는 시스템

Country Status (2)

Country Link
US (1) US20080228961A1 (ko)
KR (1) KR100891508B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9032113B2 (en) * 2008-03-27 2015-05-12 Apple Inc. Clock control for DMA busses
US20110078760A1 (en) * 2008-05-13 2011-03-31 Nxp B.V. Secure direct memory access

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010080515A (ko) * 1998-11-24 2001-08-22 토토라노 제이. 빈센트 다수의 가상 직접 메모리 접근 채널들을 지원하기위한직접 메모리 접근 엔진
JP2001273245A (ja) * 2000-03-24 2001-10-05 Ricoh Co Ltd 電子機器
EP1341092A1 (en) 2002-03-01 2003-09-03 Motorola, Inc. Method and arrangement for virtual direct memory access
KR20050022712A (ko) * 2003-08-29 2005-03-08 엘지전자 주식회사 의사 디엠에이 장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69727465T2 (de) * 1997-01-09 2004-12-23 Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto Rechnersystem mit Speichersteuerung für Stossbetrieb-Übertragung
US6804741B2 (en) * 2002-01-16 2004-10-12 Hewlett-Packard Development Company, L.P. Coherent memory mapping tables for host I/O bridge
US7120708B2 (en) * 2003-06-30 2006-10-10 Intel Corporation Readdressable virtual DMA control and status registers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010080515A (ko) * 1998-11-24 2001-08-22 토토라노 제이. 빈센트 다수의 가상 직접 메모리 접근 채널들을 지원하기위한직접 메모리 접근 엔진
JP2001273245A (ja) * 2000-03-24 2001-10-05 Ricoh Co Ltd 電子機器
EP1341092A1 (en) 2002-03-01 2003-09-03 Motorola, Inc. Method and arrangement for virtual direct memory access
KR20050022712A (ko) * 2003-08-29 2005-03-08 엘지전자 주식회사 의사 디엠에이 장치 및 방법

Also Published As

Publication number Publication date
KR20080084410A (ko) 2008-09-19
US20080228961A1 (en) 2008-09-18

Similar Documents

Publication Publication Date Title
US10224080B2 (en) Semiconductor memory device with late write feature
US8656078B2 (en) Transaction identifier expansion circuitry and method of operation of such circuitry
JP4560646B2 (ja) ハブベースのメモリシステムにおけるダイレクトメモリアクセス用の装置および方法
US4967398A (en) Read/write random access memory with data prefetch
US5455915A (en) Computer system with bridge circuitry having input/output multiplexers and third direct unidirectional path for data transfer between buses operating at different rates
JP2003510732A (ja) 2倍データ速度同期式動的ランダムアクセスメモリのための構成可能同期装置
CN106021141B (zh) 半导体设备
CN113900974B (zh) 一种存储装置、数据存储方法及相关设备
CN116636189A (zh) 用于网络装置中的缓冲包的包仲裁
US20070162644A1 (en) Data packing in A 32-bit DMA architecture
JPH04350754A (ja) データチャンネルに対するインターフェースを含むワークステーションまたは類似のデータ処理システム
JP4812058B2 (ja) Fifo管理方法及びパイプラインプロセッサシステム
KR100891508B1 (ko) 가상 디엠에이를 포함하는 시스템
US6898659B2 (en) Interface device having variable data transfer mode and operation method thereof
US7913013B2 (en) Semiconductor integrated circuit
US7774513B2 (en) DMA circuit and computer system
US6199118B1 (en) System and method for aligning an initial cache line of data read from an input/output device by a central processing unit
JP2001282704A (ja) データ処理装置及びデータ処理方法とデータ処理システム
US20080320178A1 (en) DMA transfer apparatus
EP1262988A2 (en) Embedded memory access method and system for application specific integrated circuits
US20060190660A1 (en) Data ordering translation between linear and interleaved domains at a bus interface
US9367450B1 (en) Address arithmetic on block RAMs
US20050223129A1 (en) Arbitration of data transfer requests
US20040034748A1 (en) Memory device containing arbiter performing arbitration for bus access right
JP2005107873A (ja) 半導体集積回路

Legal Events

Date Code Title Description
A201 Request for 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: 20130228

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee