KR20030022493A - 통신 시스템의 메모리 억세스 장치 - Google Patents
통신 시스템의 메모리 억세스 장치 Download PDFInfo
- Publication number
- KR20030022493A KR20030022493A KR1020010055605A KR20010055605A KR20030022493A KR 20030022493 A KR20030022493 A KR 20030022493A KR 1020010055605 A KR1020010055605 A KR 1020010055605A KR 20010055605 A KR20010055605 A KR 20010055605A KR 20030022493 A KR20030022493 A KR 20030022493A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- cpu
- access
- dma
- bus
- Prior art date
Links
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/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- 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/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Abstract
본 발명은 통신 시스템에서 DMA가 메모리 억세스를 수행하는 동안에도 CPU가 기다리지 않고 다른 작업을 수행할 수 있도록 한 통신 시스템의 메모리 억세스 장치에 관한 것으로, 시스템 동작에 필요한 응용 프로그램 및 관련 데이터를 저장하는 메모리와, 전반적인 시스템 동작을 제어하는 CPU와, 해당 메모리의 억세스를 수행하는 DMA를 구비하는 통신 시스템의 메모리 억세스 장치에 있어서, 상기 DMA로부터 인가되는 억세스 요구 신호에 따라 응답 신호를 생성시켜 상기 DMA에게 버스를 사용할 수 있는 권한을 부여해 주거나, 버퍼 인에이블 제어 신호를 생성시킴과 동시에 DMA 억세스 완료 신호를 생성시켜 상기 CPU에 인가하는 억세스 제어부와; 상기 억세스 제어부로부터 인가되는 버퍼 인에이블 제어 신호에 따라 상기 CPU가 버스를 사용할 수 있도록 해 주는 버퍼를 포함하여 이루어진 것을 특징으로 한다.
Description
본 발명은 통신 시스템의 메모리 억세스 장치에 관한 것으로, 특히 DMA가 메모리 억세스를 수행하는 동안에도 CPU가 기다리지 않고 다른 작업을 수행할 수 있도록 한 통신 시스템의 메모리 억세스 장치에 관한 것이다.
일반적으로, 통신 시스템에서 메모리 억세스를 위한 구성은 도 1에 도시된 바와 같이, 크게 시스템 동작에 필요한 응용 프로그램 및 관련 데이터를 저장하고 있는 메모리(13)와, 전반적인 시스템 동작을 제어하고 해당 메모리(13)를 억세스할 수 있는 권한을 제어하는 CPU(11)와, 해당 CPU(11)의 제어에 따라 해당 메모리(13)의 억세스를 수행하는 DMA(12)를 포함하여 이루어져 있는데, 해당 메모리(13)에 연결되어 있는 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)는 해당 CPU(11)와 DMA(12)에 공유되어 이루어져 있다.
상술한 바와 같이 구성된 통신 시스템에서의 메모리 억세스에 대한 동작을 간략하게 살펴보면 다음과 같다.
우선, DMA(12)에서 메모리(13)를 억세스하고자 하는 경우에 억세스 요구 신호(req_s)를 생성시켜 CPU(11)로 인가하면, 해당 CPU(11)에서는 해당 DMA(12)로부터 인가되는 억세스 요구 신호(req_s)에 대응하는 응답 신호(ack_s)를 생성시켜 해당 DMA(12)로 인가해 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용할 수 있는 권한을 준다.
이에, 상기 DMA(12)는 상기 CPU(11)로부터 응답 신호(ack_s)를 수신받아 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 통해 상기 메모리(13)를 억세스한다.
그리고, 상기 CPU(11)는 상기 DMA(12)와 동일한 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용하고 있기 때문에, 상기 DMA(12)가 해당 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 점령하여 상기 메모리(13)를 억세스하는 경우, 상기 CPU(11)는 개방된 상태로 있는 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 통해 에러가 발생할 수 있으므로, 상기 DMA(12)의 억세스 동작 수행이 종료될 때까지 다른 작업을 수행하지 못하고 대기해야 한다.
즉, 일반적인 통신 시스템에서 CPU와 DMA가 동일한 어드레스 버스와 데이터 버스를 사용하고 있으므로, DMA가 메모리를 억세스하고 있는 경우에 CPU는 항상 대기 상태로 있어야 함으로 CPU의 성능을 저하시키는 단점이 있었다.
전술한 바와 같은 단점을 해결하기 위한 것으로, 본 발명은 통신 시스템에서 CPU의 메모리 억세스 장치에 있어서 DMA가 메모리 억세스를 수행하는 동안에도 CPU에서 다른 작업을 수행할 수 있도록 함으로써, CPU 성능 향상에 기여하고자 하는데, 그 목적이 있다.
또한, 본 발명은 통신 시스템의 메모리 억세스 장치에 있어서, CPU와 DMA가 공유하고 있는 버스를 버퍼를 통하여 분리함으로써, DMA가 메모리를 억세스하고 있는 동안에도 CPU에서 다른 작업을 수행할 수 있도록 하는데, 그 목적이 있다.
도 1은 일반적인 통신 시스템에서 메모리 억세스(Memory Access)를 위한 구성을 간략하게 나타낸 블록도.
도 2는 본 발명의 실시 예에 따른 통신 시스템의 메모리 억세스 장치를 나타낸 구성 블록도.
도 3은 도 2에 있어 CPU(Central Processing Unit)에서 메모리를 판독하는 동작을 나타낸 타이밍도.
도 4는 도 2에 있어 CPU에서 메모리에 기록하는 동작을 나타낸 타이밍도.
* 도면의 주요 부분에 대한 부호의 설명 *
21 : CPU 22 : DMA(Direct Memory Access)
23 : 메모리 24 : 버퍼(Buffer)
25 : 억세스 제어부(Access Controller)
상술한 바와 같은 목적을 달성하기 위한 본 발명은 시스템 동작에 필요한 응용 프로그램 및 관련 데이터를 저장하는 메모리와, 전반적인 시스템 동작을 제어하는 CPU와, 해당 메모리의 억세스를 수행하는 DMA를 구비하는 통신 시스템의 메모리 억세스 장치에 있어서, 상기 DMA로부터 인가되는 억세스 요구 신호에 따라 응답 신호를 생성시켜 상기 DMA에게 버스를 사용할 수 있는 권한을 부여해 주거나, 버퍼 인에이블 제어 신호를 생성시킴과 동시에 DMA 억세스 완료 신호를 생성시켜 상기 CPU에 인가하는 억세스 제어부와; 상기 억세스 제어부로부터 인가되는 버퍼 인에이블 제어 신호에 따라 상기 CPU가 버스를 사용할 수 있도록 해 주는 버퍼를 포함하여 이루어진 것을 특징으로 한다.
바람직하게는, 상기 CPU는 상기 억세스 제어부로부터 수신되는 DMA 억세스 완료 신호에 따라 상기 버퍼를 통해 버스를 점령하여 상기 메모리를 억세스하는 것을 특징으로 한다.
또한 바람직하게는, 상기 버퍼는 상기 CPU와 상기 메모리 사이에 설치되며, 상기 억세스 제어부로부터 인가되는 버퍼 인에이블 제어 신호에 의해 디스에이블 상태로 전환된 경우에 상기 메모리 측과 연결되어 있는 버스를 단절시켜 상기 CPU가 상기 메모리를 억세스할 수 없도록 하는 것을 특징으로 한다. 이하, 본 발명의 실시 예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.
본 발명의 실시 예에 따른 통신 시스템의 메모리 억세스 장치는 도 2에 도시된 바와 같이, CPU(21)와, DMA(22)와, 메모리(23)와, 버퍼(24)와, 억세스 제어부(25)를 포함하여 이루어진다.
상기 CPU(21)는 전반적인 시스템 동작을 제어하는데, 상기 억세스 제어부(25)로부터 수신되는 DMA 억세스 완료 신호(dad_s)에 따라 상기 버퍼(24)를 통해 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 점령하여 상기 메모리(23)를 억세스하도록 한다.
상기 DMA(22)는 상기 메모리(23)의 억세스를 수행하는데, 상기 메모리(23)를 억세스하고자 하는 경우에 억세스 요구 신호(req_s)를 생성시켜 상기 억세스 제어부(25)로 인가하며, 상기 억세스 제어부(25)로부터 응답 신호(ack_s)를 수신받아 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 통해 상기 메모리(23)를 억세스하도록 한다.
상기 메모리(23)는 시스템 동작에 필요한 응용 프로그램 및 관련 데이터를 저장하는 역할을 수행한다.
상기 버퍼(24)는 상기 CPU(21)와, 상기 DMA(22) 및 메모리(23) 사이에 설치되어 있는데, 상기 억세스 제어부(25)로부터 버퍼 인에이블 제어 신호(bec_s)를 수신받아 인에이블되어 상기 CPU(21)에게 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용할 수 있는 권한을 부여해 주도록 한다.
상기 억세스 제어부(25)는 상기 DMA(22)로부터 인가되는 억세스 요구신호(req_s)에 따라 응답 신호(ack_s)를 생성시켜 상기 DMA(22)로 인가해 상기 DMA(22)에게 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용할 수 있는 권한을 부여해 주거나, 버퍼 인에이블 제어 신호(bec_s)를 생성시켜 상기 버퍼(24)로 인가함과 동시에 DMA 억세스 완료 신호(dad_s)를 생성시켜 상기 CPU(21)에 인가해 준다.
본 발명의 실시 예에 따른 통신 시스템의 메모리 억세스 장치의 동작을 살펴보면 다음과 같다.
우선, DMA(22)에서 메모리(23)를 억세스하고자 하는 경우에 억세스 요구 신호(req_s)를 생성시켜 억세스 제어부(25)로 인가하면, 해당 억세스 제어부(25)에서는 해당 DMA(22)로부터 인가되는 억세스 요구 신호(req_s)에 대응하는 응답 신호(ack_s)를 생성시켜 해당 DMA(22)로 인가해 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용할 수 있는 권한을 준다.
이에, 상기 DMA(22)는 상기 억세스 제어부(25)로부터 응답 신호(ack_s)를 수신받아 디코딩(Decoding)을 통해 칩 선택 신호(cs) 및 기록/판독 신호(rd//wr)를 만들어 상기 메모리(23)에 전달하여 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 통해 상기 메모리(23)를 억세스한다.
이 때, 상기 CPU(21)는 버퍼(24)에 의해 메모리(23) 측과 연결되어 있는 어드레스 버스(A_Bus) 및 데이터 버스(D_Bus)와는 단절되어 있으므로, 별 영향을 받지 않고 다른 작업을 수행할 수 있게 된다.
그리고, 도 3 및 도 4에 도시된 바와 같은 타이밍도를 참고하여 간략하게 설명하면, 상기 CPU(21)에서 CPU 칩 선택 신호(cpu_cs) 및 CPU 기록/판독 신호(cpu_rd//wr)를 액티브(Active) 상태로 상기 버퍼(24)에 인가하여도 상기 억세스 제어부(25)로부터 '로우(Low)' 레벨 액티브인 DMA 억세스 완료 신호(dad_s)를 수신하지 못 하면, 상기 CPU(21)는 상기 메모리(23)를 억세스할 수 없다.
그 이유는 상기 버퍼(24)가 디스에이블(Disable) 상태로 있어 상기 CPU(21)로부터 CPU 칩 선택 신호(cpu_cs) 및 CPU 기록/판독 신호(cpu_rd//wr)를 인가받아도 상기 메모리(23) 측으로 칩 선택 신호(cs) 및 기록/판독 신호(rd//wr)를 전달할 수 없으므로, 상기 CPU(21)가 상기 메모리(23) 측과 연결되어 있는 어드레스 버스(A_Bus) 및 데이터 버스(D_Bus)를 사용할 수 없기 때문이다.
그런데, 만약 상기 DMA(22)로부터 인가되는 억세스 요구 신호(req_s)가 없으면, 상기 억세스 제어부(25)에서는 상기 DMA(22)로부터 인가되는 억세스 요구 신호(req_s)가 없음을 감지하여 버퍼 인에이블 제어 신호(bec_s)를 생성시켜 상기 버퍼(24)로 인가하며, 이와 동시에 DMA 억세스 완료 신호(dad_s)를 생성시켜 상기 CPU(21)에 인가해 준다.
이에 따라, 상기 버퍼(24)는 상기 억세스 제어부(25)로부터 버퍼 인에이블 제어 신호(bec_s)를 수신받아 인에이블되어 상기 CPU(21)에게 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 사용할 수 있도록 해 준다.
그러면, 상기 CPU(21)는 상기 억세스 제어부(25)로부터 수신되는 DMA 억세스 완료 신호(dad_s)에 따라 상기 버퍼(24)를 통해 어드레스 버스(A_Bus)와 데이터 버스(D_Bus)를 점령하여 상기 메모리(23)를 억세스하도록 한다.
이 때, 상기 CPU(21)에서 상기 메모리(23)를 판독하거나 기록하는 동작을 도 3 및 도 4에 도시된 바와 같은 타이밍도를 참고하여 간략하게 설명하면, 상기 억세스 제어부(25)에서 '로우' 레벨 액티브인 버퍼 인에이블 제어 신호(bec_s)를 생성시켜 상기 버퍼(24)로 인가하여 상기 버퍼(24)를 인에이블 상태로 전환시켜 줌과 동시에 '로우' 레벨 액티브인 DMA 억세스 완료 신호(dad_s)를 생성시켜 상기 CPU(21)에 인가해 준다.
이에 따라, 상기 CPU(21)는 상기 억세스 제어부(25)로부터 '로우' 레벨 액티브인 DMA 억세스 완료 신호(dad_s)를 수신받은 후, '로우' 레벨의 CPU 칩 선택 신호(cpu_cs) 및 '하이(High)' 레벨의 CPU 기록/판독 신호(cpu_rd//wr)를 상기 버퍼(24)에 인가하고 상기 버퍼(24)에서는 '로우' 레벨의 칩 선택 신호(cs) 및 '하이' 레벨의 기록/판독 신호(rd//wr)를 상기 메모리(23)에 인가하여 상기 메모리(23)로부터 데이터를 판독하거나, '로우' 레벨의 CPU 칩 선택 신호(cpu_cs) 및 '로우' 레벨의 CPU 기록/판독 신호(cpu_rd//wr)를 상기 버퍼(24)에 인가하고 상기 버퍼(24)에서는 '로우' 레벨의 칩 선택 신호(cs) 및 '로우' 레벨의 기록/판독 신호(rd//wr)를 상기 메모리(23)에 인가하여 상기 메모리(23)로부터 데이터를 기록해 준다.
이상과 같이, 본 발명에 의해 통신 시스템의 메모리 억세스 장치에 있어서,CPU와 DMA가 공유하고 있는 버스를 버퍼를 통하여 분리함으로써, DMA가 메모리를 억세스하고 있는 동안에도 CPU로 하여금 다른 작업을 수행할 수 있도록 하여 CPU의 성능 향을 기대할 수 있다.
Claims (3)
- 시스템 동작에 필요한 응용 프로그램 및 관련 데이터를 저장하는 메모리와, 전반적인 시스템 동작을 제어하는 CPU와, 해당 메모리의 억세스를 수행하는 DMA를 구비하는 통신 시스템의 메모리 억세스 장치에 있어서,상기 DMA로부터 인가되는 억세스 요구 신호에 따라 응답 신호를 생성시켜 상기 DMA에게 버스를 사용할 수 있는 권한을 부여해 주거나, 버퍼 인에이블 제어 신호를 생성시킴과 동시에 DMA 억세스 완료 신호를 생성시켜 상기 CPU에 인가하는 억세스 제어부와;상기 억세스 제어부로부터 인가되는 버퍼 인에이블 제어 신호에 따라 상기 CPU가 버스를 사용할 수 있도록 해 주는 버퍼를 포함하여 이루어진 것을 특징으로 하는 통신 시스템의 메모리 억세스 장치.
- 제1항에 있어서,상기 CPU는 상기 억세스 제어부로부터 수신되는 DMA 억세스 완료 신호에 따라 상기 버퍼를 통해 버스를 점령하여 상기 메모리를 억세스하는 것을 특징으로 하는 통신 시스템의 메모리 억세스 장치.
- 제1항에 있어서,상기 버퍼는 상기 CPU와 상기 메모리 사이에 설치되며, 상기 억세스 제어부로부터 인가되는 버퍼 인에이블 제어 신호에 의해 디스에이블 상태로 전환된 경우에 상기 메모리 측과 연결되어 있는 버스를 단절시켜 상기 CPU가 상기 메모리를 억세스할 수 없도록 하는 것을 특징으로 하는 통신 시스템의 메모리 억세스 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010055605A KR20030022493A (ko) | 2001-09-10 | 2001-09-10 | 통신 시스템의 메모리 억세스 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010055605A KR20030022493A (ko) | 2001-09-10 | 2001-09-10 | 통신 시스템의 메모리 억세스 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030022493A true KR20030022493A (ko) | 2003-03-17 |
Family
ID=27723336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010055605A KR20030022493A (ko) | 2001-09-10 | 2001-09-10 | 통신 시스템의 메모리 억세스 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20030022493A (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03144990A (ja) * | 1989-10-31 | 1991-06-20 | Toshiba Corp | メモリ装置 |
JPH05120201A (ja) * | 1991-10-24 | 1993-05-18 | Canon Inc | データ処理装置 |
JPH09282228A (ja) * | 1996-04-10 | 1997-10-31 | Hitachi Ltd | 主記憶制御装置 |
JPH1063609A (ja) * | 1996-08-14 | 1998-03-06 | Meidensha Corp | ダイレクト・メモリ・アクセス調停方式 |
KR20000039885A (ko) * | 1998-12-16 | 2000-07-05 | 서평원 | 교환기의 프로토콜 정합장치 |
-
2001
- 2001-09-10 KR KR1020010055605A patent/KR20030022493A/ko not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03144990A (ja) * | 1989-10-31 | 1991-06-20 | Toshiba Corp | メモリ装置 |
JPH05120201A (ja) * | 1991-10-24 | 1993-05-18 | Canon Inc | データ処理装置 |
JPH09282228A (ja) * | 1996-04-10 | 1997-10-31 | Hitachi Ltd | 主記憶制御装置 |
JPH1063609A (ja) * | 1996-08-14 | 1998-03-06 | Meidensha Corp | ダイレクト・メモリ・アクセス調停方式 |
KR20000039885A (ko) * | 1998-12-16 | 2000-07-05 | 서평원 | 교환기의 프로토콜 정합장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101558482B1 (ko) | 공유 멀티 포트 메모리 장치에서 뱅크의 공유 및 리프레쉬 | |
JP2007508607A (ja) | 複数のプロセッサと1つのメモリシステムを有するシステムのためのメモリインタフェース | |
KR20070122228A (ko) | 외부 디바이스 액세스 장치 | |
US5761727A (en) | Control apparatus for a memory architecture using dedicated and shared memory segments | |
KR20030022493A (ko) | 통신 시스템의 메모리 억세스 장치 | |
KR100874169B1 (ko) | 프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및이를 수행하기 위한 방법 | |
KR20040045446A (ko) | 버스트 모드를 지원하는 외부 메모리가 있는 인터페이싱프로세서 | |
KR20000026338A (ko) | Arm 중앙처리장치를 내장한 마이크로 컨트롤러의 버스제어방법 | |
JP2837698B2 (ja) | ダイレクト・メモリ・アクセス制御装置 | |
JP2591785B2 (ja) | コンピュータ装置 | |
JPH0635747A (ja) | デバッグ支援装置 | |
KR100604569B1 (ko) | 멀티 프로세서간 데이터 통신장치와 그 장치를 포함하는이동 통신 단말기 | |
KR20020078683A (ko) | 저장매체의 액세스 제어장치 | |
KR20000001614U (ko) | 병렬포트에서의 dma채널 자동 변경장치 | |
KR19990031220A (ko) | 브이.엠.이 버스 시스템에서 브이.엠.이 버스 제어장치 | |
JPH02133856A (ja) | データ転送装置 | |
JPH064469A (ja) | 入出力装置制御方式 | |
JP2004280677A (ja) | バス制御装置及びそのデータアクセス制御方法 | |
JPH0322073A (ja) | データ転送制御装置 | |
JPH0256693B2 (ko) | ||
JPS62187956A (ja) | Dma制御方式 | |
JP2000322376A (ja) | バスインターフェース変換回路 | |
JPH06214941A (ja) | Dma制御回路 | |
JPH05298248A (ja) | データ転送制御方式 | |
JP2003186626A (ja) | 記憶装置の制御方法およびこの方法に用いる記憶装置、ディスクアレイ装置、及びディスクコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |