KR20020074717A - 중재를 이용한 다채널 직접 메모리 접근 장치 - Google Patents

중재를 이용한 다채널 직접 메모리 접근 장치 Download PDF

Info

Publication number
KR20020074717A
KR20020074717A KR1020010014671A KR20010014671A KR20020074717A KR 20020074717 A KR20020074717 A KR 20020074717A KR 1020010014671 A KR1020010014671 A KR 1020010014671A KR 20010014671 A KR20010014671 A KR 20010014671A KR 20020074717 A KR20020074717 A KR 20020074717A
Authority
KR
South Korea
Prior art keywords
dma
request
block
internal
state machine
Prior art date
Application number
KR1020010014671A
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 KR1020010014671A priority Critical patent/KR20020074717A/ko
Publication of KR20020074717A publication Critical patent/KR20020074717A/ko

Links

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
    • G06F13/30Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping

Landscapes

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

Abstract

본 발명에 따른 직접 메모리 접근 장치는 미리 결정된 우선 순위가 부여되는 외부 장치들로부터 각각 출력되는 요구 신호들에 응답하여 데이터 전송을 제어한다. 상기 직접 메모리 접근 장치는 상기 외부 장치들로부터 제공되는 요구 신호들을 입력받고, 상기 외부 장치들 각각의 우선 순위에 따라 내부 요구 신호로서 상기 입력된 요구 신호들을 순차적으로 출력하는 요구 중재 블럭과; 제어 로직에 저장된 레지스터 값들과 상기 요구 중재 블럭으로부터의 내부 요구 신호에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호의 생성을 제어하기 위한 제어 신호들을 발생하는 상태 머신과; 그리고 상기 상태 머신으로부터 제공되는 제어 신호들에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호를 발생하는 블럭을 포함한다.

Description

중재를 이용한 다채널 직접 메모리 접근 장치{MULTI CHANNEL DIRECT ACCESS MEMORY DEVICE USING ARBITRATION}
본 발명은 반도체 장치에 관한 것으로, 좀 더 구체적으로는 직접 메모리 접근 장치에 관한 것이다.
일반적으로, 직접 메모리 접근 (direct memory access, 이하 "DMA"라 칭함)는 프로세서가 수행하는 메모리에서 메모리로 (memory to memory), 메모리에서 디바이스로 (memory to device), 디바이스에서 메모리로 (device to memory)의 데이터 전송을 프로세서를 배재한 상태에서 데이터 전송을 수행한다. 이러한 이유는 프로세서 로드를 덜어주고 데이터 접근 시간을 줄임으로써 전체적인 데이터 처리 성능을 향상시키는 데 사용된다.
모든 DMA 기능은 기본적으로 소오스 어드레스 (source address)와 목적 어드레스 (destination address)와 다른 제어 신호들 (read, write, chip select)을 제공하고, 추가적으로 버스트 모드를 지원하기 위하여 내부에 저장 장치 (예를 들면, 메모리, FIFO)을 내장하는 DMA도 존재한다.
본 발명에서는 종래의 DMA가 동시에 여러 블럭을 지원할 때 각 채널 마다 동일한 DMA를 할당하는 것이 아니고, 하나의 DMA 상태 머신과 DMA 요구를 중재할 수 있는 중재기를 사용하여 하드웨어 크기를 줄이면서 종래의 다중 채널 DMA와 같은 효과를 발휘할 수 있는 DMA를 제공하는 것이다.
본 발명의 목적은 하나의 DMA 상태 머신과 DMA 요구를 중재할 수 있는 중재기를 이용하여 하드웨어 크기를 줄일 수 있는 직접 메모리 접근 장치를 제공하는 것이다.
도 1은 본 발명에 따른 다채널 직접 메모리 접근 장치를 보여주는 블럭도;
도 2는 종래 기술에 따른 다채널 직접 메모리 접근 장치를 보여주는 블럭도;
도 3은 다채널 직접 메모리 접근 동작을 설명하기 위한 타이밍도; 그리고
도 4는 다채널 직접 메모리 접근 동작의 상태 천이를 보여주는 도면이다.
* 도면의 주요 부분에 대한 부호 설명 *
10, 100 : 상태 머신 블럭
20, 200 : 제어 로직 블럭
400 : 요구 중재 블럭
(구성)
상술한 제반 목적을 달성하기 위한 본 발명에 따르면, 미리 결정된 우선 순위 (priority)가 부여되는 외부 장치들로부터 각각 출력되는 요구 신호들에 응답하여 데이터 전송을 제어하는 직접 메모리 접근 장치는 상기 외부 장치들로부터 제공되는 요구 신호들을 입력받고, 상기 외부 장치들 각각의 우선 순위에 따라 내부 요구 신호로서 상기 입력된 요구 신호들을 순차적으로 출력하는 요구 중재 블럭과; 제어 로직에 저장된 레지스터 값들과 상기 요구 중재 블럭으로부터의 내부 요구 신호에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호의 생성을 제어하기 위한 제어 신호들을 발생하는 상태 머신과; 그리고 상기 상태 머신으로부터 제공되는 제어 신호들에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호를 발생하는 블럭을 포함한다.
(작용)
이러한 장치에 의하면, DMA 중재 로직을 추가하여 종래 기술과 같은 DMA 블럭을 외부 요구 수에 따라서 증가시키는 종래 기술의 구조를 탈피하여 게이트 사이즈 축소 및 전류 소모 감소의 효과를 얻을 수 있다.
(실시예)
이하 본 발명의 바람직한 실시예가 참조 도면들에 의거하여 이하 상세히 설명된다.
먼저 DMA를 사용하기 위한 블럭이 4개 존재한다고 가정하고 본 발명의 구체적인 예를 들겠다. 이러한 상황에서 DMA를 구현할 수 있는 방법은 두 가지로 나뉘어질 수 있다.
첫번째 방법은 각 DMA 요구를 발생시키는 블럭마다 DMA를 따로 분리하여 동시에 데이터 전송을 진행할 수 있는 방법이 그것이고,
두번째 방법은 데이터 전송을 동시에 진행하는 것이 아니라 DMA 요구에 우선 순위(priority)를 두어서 우선 순위가 높은 순서대로 처리를 하는 방법이 그것이다.
첫번째 방법은 속도를 빠르게 할 수 있는 반면에 게이트 크기가 커져서 칩 파워 측면에서는 배터리를 사용하는 셀룰러 폰 (cellular phone), PCS 폰에서는 바람직하지 않다. 그러한 이유로, 본 발명에서는 두번째 방법을 사용하여 게이트 크기를 줄이고 전력 소비를 줄이는 DMA가 제공된다.
각 블럭에서 동시에 혹은 서로 시간적 차이를 두고 DMA 요구가 존재할 때 DMA 중재를 수행하는 블럭에서는 미리 지정한 우선 순위에 따라서 DMA 상태 머신에 DMA 수행 명령 (internal_rqstb)을 지시한다.
이때, 다른 블럭에서 발생된 DMA 요구 신호 (rqstb)는 중재 블럭에서 이전의 DMA 요구 신호 (dma_rqstb)에 대한 처리가 종료될 때까지 홀딩한다.
선행 DMA 요구 신호에 대한 처리가 종료되면, 다음 순서의 DMA 요구 신호를 다시 처리한다.
본 발명에서 추가된 서브 블럭은 외부 블럭에서 들어오는 DMA 요구를 중재하는 RQST 중재기 블럭 (400)이다. 즉, 도 1에서 RQST 중재기 블럭이 그것이다. 이 RQST 중재기 블럭 (400)이 없다면, 도 2에 도시된 종래 기술에 따른 DMA 블럭이 각 채널 수마다 추가되어야 한다. 즉, 도 2에 도시된 바와 같은 블럭이 4개가 더 존재해야 한다.
도 1을 참조하면, 미리 결정된 우선 순위 (priority)가 부여되는 외부 장치들로부터 각각 출력되는 요구 신호들에 응답하여 데이터 전송을 제어하는 직접 메모리 접근 장치는 상태 머신 (100), 제어 로직 (200), 그리고 요구 중재 블럭 (400)을 포함한다. 상기 요구 중재 블럭은 상기 외부 장치들로부터 제공되는 요구 신호들을 입력받고, 상기 외부 장치들 각각의 우선 순위에 따라 내부 요구 신호로서 상기 입력된 요구 신호들을 순차적으로 출력한다. 상기 상태 머신은 제어 로직에 저장된 레지스터 값들과 상기 요구 중재 블럭으로부터의 내부 요구 신호에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호의 생성을 제어하기 위한 제어 신호들을 발생한다. BUS IF 블럭 (300)은 상기 상태 머신으로부터 제공되는 제어 신호들에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호를 발생한다.
도 1에서, 외부 인터페이스를 통해 외부 장치들로부터 각각 제공되는 EXT_RQSTB0, EXT_RQSTB1, EXT_RQSTB2, EXT_RQST3 신호들이 RQST 중재기 블럭 (400)으로 입력되어 미리 정의된 우선 순위에 따라서 순서가 설정된 후 내부 요구 신호 (internal_rqstb)로 멀티플렉싱되어 DMA 상태 머신 (100)의 입력 신호로서 입력되고 미리 지정된 제어 블럭 (200)의 레지스터 값을 입력 받는다. 이때, 입력된 레지스터 값은 우선 순위가 높은 요구 신호가 발생한 해당 외부 블럭의 레지스터가 입력된다.
이후, DMA 상태 머신 (100)의 제어에 따라서 소오스 어드레스, 목적 어드레스 그리고 독출/기입 신호가 발생된다. 이에 대한 구체적인 동작 타이밍도가 도 3에 도시되어 있다. 그리고, DMA 기능을 싶게 이해할 수 있는 기능 상태 천이도가도 4에 도시되어 있다.
DMA 중재 로직을 추가하여 종래 기술과 같은 DMA 블럭을 외부 요구 수에 따라서 증가시키는 종래 기술의 구조를 탈피하여 게이트 사이즈 축소 및 전류 소모 감소의 효과를 얻을 수 있다.
이상에서, 본 발명에 따른 회로의 구성 및 동작을 상기한 설명 및 도면에 따라 도시하였지만, 이는 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상 및 범위를 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다.
상술한 바와 같이, DMA 중재 로직을 추가하여 종래 기술과 같은 DMA 블럭을 외부 요구 수에 따라서 증가시키는 종래 기술의 구조를 탈피하여 게이트 사이즈 축소 및 전류 소모 감소의 효과를 얻을 수 있다.

Claims (1)

  1. 미리 결정된 우선 순위 (priority)가 부여되는 외부 장치들로부터 각각 출력되는 요구 신호들에 응답하여 데이터 전송을 제어하는 직접 메모리 접근 장치에 있어서,
    상기 외부 장치들로부터 제공되는 요구 신호들을 입력받고, 상기 외부 장치들 각각의 우선 순위에 따라 내부 요구 신호로서 상기 입력된 요구 신호들을 순차적으로 출력하는 요구 중재 블럭과;
    제어 로직에 저장된 레지스터 값들과 상기 요구 중재 블럭으로부터의 내부 요구 신호에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호의 생성을 제어하기 위한 제어 신호들을 발생하는 상태 머신과; 그리고
    상기 상태 머신으로부터 제공되는 제어 신호들에 응답하여 소오스 어드레스, 목적 어드레스 그리고 제어 신호를 발생하는 블럭을 포함하는 것을 특징으로 하는 직접 메모리 접근 장치.
KR1020010014671A 2001-03-21 2001-03-21 중재를 이용한 다채널 직접 메모리 접근 장치 KR20020074717A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010014671A KR20020074717A (ko) 2001-03-21 2001-03-21 중재를 이용한 다채널 직접 메모리 접근 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010014671A KR20020074717A (ko) 2001-03-21 2001-03-21 중재를 이용한 다채널 직접 메모리 접근 장치

Publications (1)

Publication Number Publication Date
KR20020074717A true KR20020074717A (ko) 2002-10-04

Family

ID=27698161

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010014671A KR20020074717A (ko) 2001-03-21 2001-03-21 중재를 이용한 다채널 직접 메모리 접근 장치

Country Status (1)

Country Link
KR (1) KR20020074717A (ko)

Similar Documents

Publication Publication Date Title
US7472213B2 (en) Resource management device
US6950910B2 (en) Mobile wireless communication device architectures and methods therefor
EP1239374B1 (en) Shared program memory for use in multicore DSP devices
US6738845B1 (en) Bus architecture and shared bus arbitration method for a communication device
EP1226493B1 (en) Bus architecture and shared bus arbitration method for a communication processor
GB2429380A (en) Controller for a shared bus which can switch between arbitration algorithms dependent upon a process to be run
US7725621B2 (en) Semiconductor device and data transfer method
EP1582989B1 (en) Data transfer processing device and data transfer processing method
JP2002073527A (ja) Dmaコントローラ
US7380027B2 (en) DMA controller and DMA transfer method
TWI471731B (zh) 記憶體存取方法、記憶體存取控制方法、spi快閃記憶體裝置以及spi控制器
JP2008046771A (ja) ダイレクトメモリアクセスコントローラ
US5548797A (en) Digital clock pulse positioning circuit for delaying a signal input by a fist time duration and a second time duration to provide a positioned clock signal
KR20020074717A (ko) 중재를 이용한 다채널 직접 메모리 접근 장치
JP5360594B2 (ja) Dma転送装置及び方法
JPH09153009A (ja) 階層構成バスのアービトレーション方法
US20040034748A1 (en) Memory device containing arbiter performing arbitration for bus access right
US8764874B2 (en) Arrangement, method, integrated circuit and device for routing requests
JPH11306074A (ja) 情報処理装置
JP2007108858A (ja) ピン共有装置およびピン共有方法
US7707450B1 (en) Time shared memory access
JP2007128196A (ja) 情報処理システム及び情報処理システムの制御方法
JP2005242408A (ja) 共有メモリアクセス制御方法
JPS61183764A (ja) ダイレクトメモリアクセス制御方式
JP2007334600A (ja) 半導体集積回路装置

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination