KR920005834B1 - 직접 메모리 억세스 제어시스템 - Google Patents

직접 메모리 억세스 제어시스템 Download PDF

Info

Publication number
KR920005834B1
KR920005834B1 KR1019880000161A KR880000161A KR920005834B1 KR 920005834 B1 KR920005834 B1 KR 920005834B1 KR 1019880000161 A KR1019880000161 A KR 1019880000161A KR 880000161 A KR880000161 A KR 880000161A KR 920005834 B1 KR920005834 B1 KR 920005834B1
Authority
KR
South Korea
Prior art keywords
memory
dma
signal
control device
auxiliary
Prior art date
Application number
KR1019880000161A
Other languages
English (en)
Other versions
KR880009307A (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 후지쓰 가부시끼가이샤
Publication of KR880009307A publication Critical patent/KR880009307A/ko
Application granted granted Critical
Publication of KR920005834B1 publication Critical patent/KR920005834B1/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
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

내용 없음.

Description

직접 메모리 억세스 제어시스템
제1도는 종래의 DMA 제어시스템의 개략적 구조를 도시한 블록도.
제2도는 본 발명의 DMA 제어시스템의 원리를 도시한 블록도.
제3도는 본 발명에 따른 메모리 대 메모리 전송제어장치의 일예를 도시한 블록도.
제4도는 제3도의 판정기의 판정논리를 나타내는 도면.
제5도는 본 발명이 적용되는 DMA 제어시스템의 상세예를 도시한 블록도.
제6도는 DMA 제어장치의 특정예를 도시한 회로도.
제7도는 우선순위결정회로의 특정예를 도시한 회로도.
제8도는 상태판정회로의 특정예를 도시한 회로도.
제9도는 DMA 요구발생회로의 특정예를 도시한 회로도.
제10도는 디스크 제어장치의 특정예를 도시한 블록도.
본 발명은 직접 메모리 억세스(이하 DMA라 칭함) 방법에 의해 제어되는 시스템에 관한 것이다.
예를들어, DMA 제어장치는 주메모리와 서브메모리 및 서브메모리와 보조메모리간에 데이타를 전송함으로써 중앙처리장치(CPU)의 부하를 감소시키기 위하여 컴퓨터시스템에서 사용된다. "주 메모리"는 CPU와 데이타통신을 하는 시스템 메모리를 칭하며 주 기억장치라고도 불리운다. "서브메모리"는 주 메모리와 데이타통신을 하는 메모리이며 예를들어 소위 캐쉬메모리에 해당한다. 더우기 "보조 메모리"는 예를들어 디스크 메모리에 해당하는 외부 메모리이다. 보통, 다수의 디스크 메모리가 구비된다. 디스크 메모리, 즉 보조메모리는 보조메모리 제어장치 즉, 동일한 것으로 대응하여 제공되는 디스크 제어장치를 통하여 DMA 제어장치에 접속된다. 유사하게, 캐쉬 메모리는 메모리 대 메모리 전송제어장치를 통하여 DMA 제어장치에 접속된다. 이 경우에, 각 디스크 제어장치의 데이타 전송능력(CPdk)과 메모리 대 메모리 전송제어장치의 데이타 전송능력(CPmm)의 합계(CPdk+CPmm)는 DMA 제어장치의 데이타 전송능력(CPdma)보다 작거나 같아야 한다. 즉 CPdk+CPmm
Figure kpo00001
CPdma이어야 한다. 부등식 부호(
Figure kpo00002
)가 반대이면, DMA 제어장치는 불충분한 능력으로 인하여 작동하지 않는다. 이 경우에, 불충분한 능력을 보충하기 위하여 DMA 제어장치의 데이타 전송능력을 증가시킬 수 있지만, 이것은 DMA 제어장치의 하드웨어 양을 증가시키므로 경제적인 측면에서 볼 때 잇점이 없다.
이후 상세히 설명될 바와 같이, 종래의 DMA 제어장치에서는 서브 채널의 상태(상기 각 DMA 제어장치의 제어정보)를 알 수 없다. 따라서, 데이타 전송요구의 수가 최대일 때도 DMA 제어장치의 데이타 전송능력(CPdma)을 초과하지 못하도록 일정한 제한이 가해진다. 이 제한은 메모리 대 메모리 전송제어장치의 데이타 전송능력이 일정레벨(예를들어, 1Mbyte)로 유지되는 것을 의미한다.
따라서, 두개의 디스크 제어장치중의 하나가 DMA 제어장치에 대한 데이타 전송요구를 발하지 않을 때, 즉 DMA 제어장치의 능력에 여유가 있을 때, 그 여유분만큼 메모리 대 메모리 제어장치의 데이타 전송능력을 증가시킬 수 있음에도 불구하고, 메모리 대 메모리 전송제어장치의 데이타 전송능력은 설정레벨(예를들어, 1Mbyte)로 제한 유지된다. 따라서, 종래의 DMA 제어시스템에서는, 데이타 전송효율이 저하되는 단점이 있었다.
본 발명의 목적은 DMA 모드하의 데이타 전송효율이 이론적으로 획득가능한 최대레벨까지 향상된 DMA 제어시스템을 제공하는데 있다.
상기 언급한 목적을 위해 본 발명은 다음과 같은 사실을 주지한다. DMA 제어장치의 데이타 처리능력에 여유가 있을 때, 서브 메모리와 주 메모리간의 데이타 전송속도는 더 빨라질 수 있다. 역으로, DMA 제어장치의 데이타 처리능력에 여유가 없을 때는 속도는 늦어진다. 이를 주지한 상태에서 메모리 대 메모리 데이타 전송속도가 DMA 제어장치의 부하조건에 따라 자동적으로 변화되도록 메모리 대 메모리 전송제어장치를 구성할 수 있다.
본 발명의 상기 목적 및 특징은 첨부도면을 참고로 한 이하의 설명에 의하여 더 명확하게 될 것이다.
본 발명의 구성을 설명하기에 앞서 본 발명의 이해를 돕기 위하여 종래의 DMA 제어시스템을 설명하겠다.
제1도는 종래의 DMA 제어시스템의 개략적 구조를 나타내는 블록도이다. 제1도에서, DMA 제어장치(1)는 보조제어장치, 즉 디스크 제어장치(2, 3) 및 메모리 대 메모리 전송제어장치(4)에 접속되어 이들과 동작한다. 디스크 제어장치(2, 3)는 최소한 하나의 보조메모리, 즉 디스크 메모리와 따로따로 상호동작한다. 더욱이, 메모리 대 메모리 전송제어장치(4)는 서브메모리, 즉 캐쉬 메모리(7)와 상호동작한다.
디스크 제어장치(2, 3) 및 메모리 대 메모리 전송제어장치(4)는 DMA 제어장치(1)의 우선순위결정회로(11)에 데이타 전송제어를 DMA 제어장치(1)에 요구하기 위한 신호, 즉 DMA 요구신호 (DMA REQ)를 발한다. 이 요구의 인식, 즉 DMA 인식신호(DMA ACK)가 수신될 때, 디스크 제어장치(2)는 데이타 전송을 실행하기 위하여 서브 채널 레지스터(REG)(8)(점선 8'로 도시됨)와 상호 동작한다. 유사하게, 디스크 제어장치(3)는 서브 채널 레지스터(REG)(9)(9')와 상호 동작하며 메모리 대 메모리 전송제어장치(4)는 각각 데이타 전송을 실행하기 위하여 서브 채널 레지스터(REG)(10)(10')와 상호동작한다. 이 경우에, 예를들어 DMA 제어장치(1)의 데이타 전송능력이 6Mbyte이고, 디스크 제어장치(2, 3)의 데이타 전송능력이 각각 2.5Mbyte이며, 메모리 대 메모리 전송제어장치(4)의 데이타 전송능력이 최대 2.5Mbyte이면, 제어장치(2, 3, 4)의 데이타 전송능력의 총합계, 즉 7.5Mbyte는 DMA 제어장치(1)의 데이타 처리능력(6Mbyte)을 초과한다.
이 과부하를 방지하기 위하여, 종래에는 메모리 대 메모리 전송제어장치(4)의 데이타 전송능력이 일정레벨(상기 예에 따라, 1(=6-2.5×2)Mbyte)로 정해져 있었다. 이것은 하드웨어 또는 소프트웨어에 의하여 이뤄질 수 있다.
그러나, 전술한 바와 같이, 메모리 대 메모리 전송제어장치(4)의 데이타 전송능력이 항상 일정 레벨로 정해져 있으며, DMA 제어 시스템의 데이타 전송효율은 저하되고 따라서 시스템의 데이타 처리속도가 늦어진다.
다음은 본 발명의 DMA 제어시스템을 설명한다.
제2도는 본 발명의 DMA 제어 시스템의 원리를 나타내는 블록도이다. 이해를 돕기 위하여, 예를들어 다음과 같은 데이타 전송능력을 가정한다 :
DMA 제어장치(12) : 6Mbyte
디스크 제어장치(2) : 2.5Mbyte
디스크 제어장치(3) : 2.5Mbyte
메모리 대 메모리 전송제어장치(13) : 최대 4Mbyte
여기에서, 디스크 제어장치(2, 3) 및 메모리 대 메모리 전송제어장치(13)가 DMA 제어장치(12)의 우선순위결정회로(14)에 DMA 요구신호를 발하였다고 가정하자. 우선순위결정회로(14)는 최우선순위를 갖는 장치로부터 DMA 요구를 수신하여(이 경우에, 디스크 제어장치(2, 3)의 우선순위는 메모리 대 메모리 전송제어장치(13)의 우선순위보다 높다고 가정한다) DMA 개시신호(S1)를 메모리 대 메모리 전송제어장치(13)의 상태판정회로(16)에 가한다. 직후에, 상태판정회로(16)는 데이타를 전송하는동안 DMA 인식(ACK)신호(DMA ACK)를 디스크 제어장치(2, 3)로 반환시킨다.
또한, 우선순위결정회로(14)는 데이타 전송의 실행동안 메모리식별(ID) 신호(S2)와 DMA 개시신호의 인가에 대한 서브 채널 레지스터의 제어정보를 상태판정회로(16)에 인가한다. 전술한 DMA 인식신호(DMA ACK)가 수신될 때, 디스크 제어장치(2 혹은 3)가 데이타 전송을 시작하였고, 데이타 전송속도를 감소시키기 위해 DMA 요구 발생회로(15)로 명령이 발하였는지를 ID 신호(S2)로부터 판정한다. DMA 요구발생회로(15)는 우선순위 결정회로(14)에 가해질 DMA 요구신호(DMA REQ)를 발하기 위한 간격을 연장시켜서 데이타 전송속도를 1Mbyte(1+2.5×2=6)로 조정한다. 즉, 저속의 데이타 전송이 수행된다.
서브 채널레지스터(8 혹은 9)의 제어정보에 근거한 데이타 전송이 완료되었을 때, 우선순위 결정회로(14)는 DMA 전송정지신호(S3)를 상태판정회로(16)에 가하고, ID 신호(S2)에 의하여 데이타 전송이 완료한 것에 대해서는 제어장치(2, 3)로 통고를 한다. 상태판정회로(16)는 제어장치가 DMA 동작을 완료하였음을 통지할 수 있다. DMA 동작의 완료의 통지에 의하여, 상태판정회로(16)는 데이타 전송속도를 상승시키기 위하여 DMA 요구발생회로(15)에 명령을 발한다. DMA 요구발생회로(15)는 우선순위결정회로(14)에 가해질 DMA 요구신호(DMA REQ)를 발하는 시간격을 짧게 하여서 데이타 전송속도를 3.5Mbyte(3.5+2.5=6)로 조정한다.
더욱이 상태판정회로(16)는 서브 채널 레지스터(8, 9)의 제어하에 데이타를 전송하지 않을 때 DMA 요구발생회로에 데이타 전송속도를 저하시킬 명령을 공급하지 않을 것이므로 메모리 대 메모리 전송제어장치(13)는 4Mbyte의 고속 데이타 전송을 유지한다. 서브 채널 레지스터(8 혹은 9)에 대응하는 제어장치(2 혹은 3)가 데이타 전송을 시작하고 따라서 우선순위결정회로(14)가 DMA 개시신호(S1) 및 ID 신호(S2)를 공급하면, 상태판정회로(16)는 DMA 요구발생회로(15)에 DMA 요구신호를 발하는 시간격을 연장시키므로 데이타 전송속도는 3.5Mbyte가 된다. 서브 채널 레지스터(8, 9)에 대응하는 제어장치(2, 3)가 데이타를 전송하고 있으면, 메모리 대 메모리 전송제어장치(13)의 데이타 전송속도가 1Mbyte가 되도록 시간격을 조절한다.
상기 구성으로 인하여, 상태판정회로(16)가 우선순위결정회로(14)로부터 제공된 신호(S1, S2)를 감시함으로서 서브 채널 레지스터(8, 9)의 동작상태를 판정할 수 있으므로, 동작상태에 따라서 DMA 요구발생회로(15)에 대한 DMA 요구(DMA REQ)를 발하는 시간격을 연장 또는 단축할 수 있다. 따라서, 메모리 대 메모리 전송제어장치(13)는 DMA 제어장치(12)의 최대 데이타 전송능력을 얻기 위한 자동제어를 수행할 수 있다. 결과적으로, 고효율 데이타 처리를 할 수 있는 DMA 제어 시스템이 실현될 수 있다.
제3도는 본 발명에 따른 메모리 대 메모리 전송제어장치의 일예를 보여주는 블록도이다. 제3도에서, 제2도에 도시된 것처럼, 메모리 대 메모리 전송제어장치(13)는 DMA 요구발생회로(15) 및 상태판정회로(16)를 포함한다. 먼저, 우선순위결정회로(14)에서 제공된 상태신호는, 즉 DMA 개시신호(S1), ID 신호(S2) 및 DMA 전송정지신호(S3)가 디코더에 입력되어서 예를들어 3종류의 디코드된 출력신호(S4, S5및 S6)를 발생하도록 디코드된다. 이 신호(S4, S5및 S6)는 판정기(18)에 입력된다. 디코더(17) 및 판정기(18)는 상태판정회로(16)를 구성한다.
제4도는 제3도의 판정기의 판정논리의 일예를 보여주는 도면이다. 이 판정논리를 참고로 제3도의 동작을 설명한다. S4="0", S5="0" 및 S6="1"이면, 판정기(18)는 데이타 전송속도가 고속(HIGH)으로 되어야 한다는 취지의 명령(CMD)를 발한다.
명령(CMD)은 계수기(19)에 입력되고 계수기(19)의 출력은 DMA 요구발생기(20)를 제어한다. 계수기(19) 및 발생기(20)는 DMA 요구발생회로(15)를 구성한다.
판정기(18)가 고속명령을 발할때, 계수기(19)는 고속명령에 대응하는 더낮은 수를 계수하며 이것이 끝났을때 장치(12)에 DMA 요구신호(DMA REQ)를 출력하기 위하여 DMA 요구발생기(20)를 제어한다.
디코더(17)의 출력신호가 S4="1", S5="0" 및 S6="1"이면 판정기는 데이타 전송속도가 중간속도(MID)로 되어야 한다는 취지의 명령(CMD)를 발한다. 유사하게, S4="0", S5="1" 및 S6="1"일 때 판정기(18)는 중간명령(CMD)을 발한다. 이때, 계수기(19)는 중간속도 명령에 대응하는 수를 계수하며 이것이 종료될 때, 장치(12)에 DMA 요구신호(DMA REQ)를 출력하기 위하여 DMA 요구발생기(20)를 제어한다.
만일 디코더(17)의 출력신호가 S4="1", S5="1" 및 S6="1"이면 판정기(18)는 데이타 전송속도가 저속(LOW)으로 되어야 한다는 취지의 명령(CMD)을 발한다. 이때, 계수기(19)는 저속명령에 대응하는 더 큰 수를 계수하며 이것이 끝났을 때 장치(12)에 DMA 요구신호(DMA REQ)를 출력하기 위하여 DMA 요구발생기(20)를 제어한다.
신호(S6)가 S6="0"일 때, 이것은 메모리 대 메모리 전송제어장치(13)와 캐쉬 메모리 간에 데이타 전송이 수행되지 않고 있음을 의미하므로 판정기(18)는 S4및 S5의 "1" 혹은 "0" 상태에 관계없이 계수기(19)에 어떤 명령(CMD)도 발하지 않음을 주지하라. 이것은 메모리 대 메모리 전송제어장치(13)로부터 DMA 요구신호를 출력할 필요가 없기 때문이다.
제5도는 본 발명이 적용되는 DMA 제어 시스템의 상세예를 도시한 블록도이다. 도면에 있어서 동일 구성소자는 동일 부재번호 또는 기호로 나타낸다. 도면에서, DMA 제어장치(12)와 메모리 대 메모리 전송제어장치(13)를 접속하는 링크(a) 및 링크 (b,b')는 본 발명의 특이한 특성이다. 링크(a)는 제2도에 도시되어 있고 제어신호(S1, S2및 S3)의 전송을 위해 사용된다. 링크(b)는 제2도에 도시되어 있지만, 실제로 링크(b')도 사용된다. 링크(c, d)는 디스크 제어장치(2, 3)에 접속된다. 부가해서, 부재번호(21)는 전술한 주메모리, 그리고 22A 및 22B는 프로세서를 나타낸다. 두 프로세서는 역활을 분담하여 고속 컴퓨터 시스템에서 결합 프로세서로 형성된다. 부재번호(23, 24)는 메모리 버스(26)와 입/출력(I/O) 버스(27)의 데이타전송에 있어 충돌이 없도록 하기 위하여 두방향 게이트(25)의 개폐 및 명령교환을 지시하는 버스 조정자를 나타낸다.
프로세서(22)는 디스크메모리(5, 6)를 직접 억세스하는 것처럼 동작하지만, 제5도의 시스템에서, 캐쉬메모리(7)는 디스크 메모리(5, 6)의 소망데이타를 카피하여 기억시켜, 억세스되므로, 프로세서(22)는 데이타를 훨씬 빨리 처리할 수 있다. 일반적으로, 디스크 캐쉬 메모리는 디스크 메모리(5, 6)의 일부로써 제공되며 이것은 범용디스크 메모리의 사용을 불가능하게 하므로 경제적으로 불리하다. 본 발명의 요지는 제5도의 주메모리(21)와 캐쉬 메모리(7)간의 DMA 전송속도를 가변시키는데 있다.
먼저, DMA 모드를 개시할때, 프로세서(22)가 DMA 제어장치(12)에서의 대응서브 채널 레지스터(8, 9, 10, 10b ; 전술한 링크(b')에 관련된 10b)에 DMA 제어정보를 기입한다. 이때, 버스조정자(24)는 I/O 버스(27)의 어드레스를 감시하고 그것이 DMA 제어장치(12) 또는 디스크 제어장치(2 또는 3)를 위한 어드레스이면 두방향게이트(25)의 수신기 축을 구동한다.
다음에, 프로세서(22)는 어드레스를 디스크 제어장치(2 또는 3)의 디스크섹터 레지스터(제10도에 111로 도시됨)에 기입한다. 이 어드레스는 디스크 메모리에서의 소망데이타의 위치를 나타낸다.
프로세서(22)는 디스크 제어장치(2 또는 3)의 DMA 개시 플래그 (제10도에서의 레지스터(112))를 디스플레이한다.
디스크 제어장치(2 또는 3)는 DMA 제어장치(12)로 DMA 요구신호(DMA REQ) (제2도)를 출력한다.
디스크 제어장치(2 또는 3)는 버스조정자(24)에게 I/O 버스(27)의 사용을 요구하는 신호를 전송한다.
전술한 DMA REQ에 대한 응답, 즉, DMA 인식신호 (DMA ACK)가 DMA 제어장치(12)로부터 리턴될때 데이타는 상기 디스크 메모리에 의해 판독되기 시작한다. 더욱이, 데이타는 디스크 제어장치(2 또는 3)로부터 DMA 제어장치(!2)로 전송된다. DMA 제어장치(12)는 버스조정자(23)로 메모리버스(26')의 사용요구신호를 전송한다. 사용요구에 대한 응답이 리턴될때, DMA 제어장치(12)는 캐쉬 메모리(7)에 데이타를 기입한다.
또한, DMA 제어장치(12)는 버스조정자(23)로 메모리버스(26)의 사용요구를 출력하여 데이타를 메모리 대 메모리 전송제어장치(13)의 제어하에 캐쉬 메모리(7)로부터 주 메모리(21)로 전송한다. 본 발명의 요지는 메모리 대 메모리 전송제어장치(13)의 제어하에 DMA 요구를 어떻게 발하는냐에 있다.
제6도는 DMA 제어장치의 특정예를 도시한 회로도이다. 도면에서, 서브 채널 레지스터(31)는 #0 내지 #2 레지스터(제2도의 8, 9 및 10에 대응) 및 #3 레지스터(서브 채널 레지스터와 쌍을 형성하는 레지스터 10b)로 구성된다. 더 상세히는, 그것은 DMA 모드레지스터 (DMR), 어드레스레지스터(ADR) (33) 및 바이트 계수기 (BC) (34)로 구성된다. DMR(32)은 프로세서(22)로부터 I/O 버스(27)를 통하여 DMA 방향, 제1 전송 바이트수 및 DMA 개시플레그를 그것들에 기입한다. ADR(33)은 프로세서(22)로부터의 메모리버스(26 혹은 26')의 어드레스를 그것들에 기입한다. 더욱이, BC(34)는 남아 있는 전송바이트의 수를 디스플레이한다. 감산기(35)는 나머지를 디스플레이하기 위해 제공되며 감산기(35)는 DMR(32)에 기억된 전송바이트의 수에서 각 전송을 뺀다 (도면에서 -x로 도시됨). 감산이 최종적으로 BC의 내용을 재료로 할때 전송은 중지되며 정지(#0 내지 #3)의 신호는 우선순위결정회로에 가해진다.
어드레스 레지스터(ADR) (33)는 어떤전송의 각 종료와 더불어 전송이 시작되는 데이타의 헤드 어드레스를 나타낸다. 이를 위해 가산기(36)가 제공되어 DMR(32)에 기록된 전송바이트의 수를 가산한다(+y로 도시됨).
실제로, 전술한 서브 채널 레지스터(#3) (10b에 대응된)는 에러정정을 위하여 캐쉬 메모리(7)로부터 주메모리(21)에 전송된 데이타의 메모리 대 메모리 전송제어장치(13) (제5도)의 버퍼메모리(도시되지않음)에서의 기억장소를 위하여 요구된다. 상술한 에러 정정을 위한 에러 정정회로를 제6도에 ECC(37)로 도시하였다.
제7도는 우선순위결정회로의 특정예를 도시한 블록도이며, 제6도에서의 블록(14)의 상세도이다. 도시된 바와 같이, 우선순위결정회로(14)는 우선순위결정논리(41), 응답제어회로(42), 디코딩회로(43) 및 OR 게이트(44)로 구성된다. 우선순위결정논리(41)는 전술한 링크(c, d, b 및 b')로부터 DMA 요구신호 (DMA REQ)를 수신하여 우선기준에 입각하여 소정의 최우선 요구를 수신한다. 우선순위결정논리는 잘 알려져 있으므로 상세하게 설명하지 않는다.
예를들어, 논리(41)가 링크(c)로부터 DMA 요구를 수신할때, 신호는 링크(P)를 통해 응답제어회로(42)에 가해지고, 회로(42)를 구동시키므로, 확인신호(ACK)가 발생된다. ACK가 리턴되는 링크는 라인(q)에 의하여 표시된다. 라인(q)에서, 수신된 링크, 즉 "c"의 ID가 나타낸다. 이 "c"에 근거하여 회로(42)는 ACK를 링크(c)를 따라 리턴시킨다. 이것에 의하여, 디스크 제어장치(2) (제5도)는 디스크 메모리로부터 판독데이타의 DMA 전송을 개시한다. 즉, 회로(42)는 한편으로는 DMA 개시신호를 서브 채널 레지스터(31)에 공급하며, 다른 한편으로는 DMA 개시신호를 메모리 대 메모리 전송제어장치(13)의 상태판정회로(16) (제2도 및 제3도)에 대한 제어신호(S1)로서 공급된다. 회로(13)는 전술한 ID를 도시하는 제어신호(S2)를 제공받는다. DMA 전송을 이미 실행한 장치, 예를들어 디스크 제어장치(3) (제5도)가 소정의 데이타의 전송을 완료할때, 정지(#1)신호가 감산기(35)로부터 (제6도)우선순위결정회로(14)에 보내어진다. 이 정지(#1)는 디코딩회로(43)에 의해 수신되며 따라서 DMA 정지신호가 나온 장치는 디코드된다. 이 경우에, DMA 정지신호의 ID는 링크(d), 즉 디스크 제어장치(3)를 도시한 것이다. 이 ID, 즉 "d"는 ID 신호(S2)로서 OR 게이트를 통하여 메모리 대 메모리 전송제어장치(13)의 상기 상태판정회로(16)에 제공된다.
제8도는 상태판정회로의 특정예를 도시한 회로도이다. 이 상태판정회로(16)는, 제3도를 참고로 설명한 바와 같이, 디코더(17) 및 판정기(18)로 나누어진다. 더우기 S1, S2및 S3, S4, S5및 S6, 및 명령(CMD)은 제8도에 도시된 장치에 나타난다. ID 신호는 서브 채널 레지스터(#0 내지 #3)를 판정하며, 2비트(DI0, DI1)로 그것들을 판정할 수 있다. 즉, 아래표(1)를 참조하라.
[표 1]
Figure kpo00003
ID 신호(ID0 및 ID1)를 수신하는 것은 D 플립-플롭(D FF) (51 내지 54)이다. D FF(51 및 52)의 출력은 DMA 개시가 발하여질때(START ID0, START ID1)의 ID를 도시하는 반면에 D FF (53 및 54)의 출력은 DMA 정지가 발하여질때 (STOP ID0, STOP ID1)의 ID를 도시한 것이다.
이들 신호(START ID0, ID1 및 STOP ID0, ID1)는 다음단의 AND 게이트 (61 내지 68)에 입력된다.
AND 게이트 (61 내지 64)의 입력은 조합을 다르게 하여 인버터로 제공된다. AND는 DMA가 개시한 (START0 내지 START3) 서브 채널(#0 내지 #3)에 대해 출력한다. 한편, AND 게이트(65 내지 68)의 입력은 조합을 다르게 하여 인버터로 제공되며, AND 출력은 DMA가 정지된(STOP0 내지 STOP3) 서브채널(#0 내지 #3)에 대해 표시한다.
이 신호(START0 내지 START3 및 STOP0 내지 STOP3)는 다음단의 JK 플립-플롭(JK FF)에 입력된다. JK FF은 J 입력이 "1"일때 "1"의 FF 출력을 가지며, K 입력이 "1"일때 리세트된다. 따라서, JK FF(71내지 74)의 출력은 어떤 서브 채널이 비지(busy)인지를 도시한 신호(BSY0 내지 BSY3)가 된다. 신호(BSY0 내지 BSY3)는 전술한 디코드된 출력신호(S4, S5, 및 S6)를 형성한다. 신호(S6)는 BSY2 및 BSY3의 OR 변형이므로, OR 게이트(OR1)가 제공되었다. 이것은 BSY2 및 BSY3는 동시에 "1"이 되지 않기 때문이다.
신호(S4내지 S6)는 판정기(18)에서의 ANC게이트(81 내지 84)로 입력된다. AND게이트(81 내지 84)의 입력은 조합을 다르게 하여 인버터로 제공된다. 제4도의 판정은 간단한 논리로 이뤄진다.
중간속도명령을 출력하는 제4도의 OR게이트는 제8도의 OR게이트(OR2)에 대응한다. 따라서, 고속명령(HIGH), 중속명령(MID) 및 저속명령(LOW)이 발하여져서 계수기 (제3도의 19)에 가해진다.
예를들어 MID1 및 MID2와 같은 두 상이한 형태의 중속명령은 AND게이트(82 및 83)의 출력으로 부터 발하여질 수 있음을 주지하라.
아래의 표 (2)는 비지신호(BSY0 내지 BSY3)의 논리패턴과 속도명령(CMD)간의 대응에를 도시한 것이다.
[표 2]
Figure kpo00004
제9도는 DMA 요구발생회로의 특정예를 도시한 회로도이다. 이 DMA 요구발생회로(15)는 대개 제3도에서 설명된 계수기(19) 및 DMA요구발생기(20)로 나누어진다.
제3도에 도시된(제4도 및 제8도에 도시됨) 속도명령(CMD)을 입력으로 취하여 명령에 대응하는 DMA 요구신호 (DMA REQ)를 출력한다.
계수기(19)는 심장부로서 계수장치(95)를 가지며, 이것은 감산기(96)로 부터의 다운(down)계수기로서의 역활을 한다.
다운 계수기는 초기에 사전설정된 계수치를 갖고 있으며, 제1, 제2 및 제3 사전설정기 (91, 92, 93) 예를들어 소위 디프(dip)스위치로 부터 사전설정치를 공급받는다. 사전설정기(91, 92, 93)는 대, 중, 소의 사전설정치를 각각 공급한다. 고, 중 및 저속의 명령(CMD)중 어떤것이 발하여지는 가에 따라서 어떤 사전설정치가 선택되는지 결정되는데, 선택기(SEL) (94)로 선택을 한다.
계수장치(95)의 계수의 제로여부는 제로비교기(97)에 의해 검출된다. 제로가 아니면(NO), 계수동작은 계속된다. 제로에 도달하면(YES), 트리거신호(St)가 발하여져서 DMA요구발생회로(20)로 출력되며, 동시에 선택기(94)는 클리어된다.
트리거신호(St)는 미분회로(D) (98)에 의해 얻어질 수 있다. 제로비교기(97)의 출력이 다음단의 회로(20)에 계속 가해지면, 정정 DMA요구신호가 발생될 수 없으므로 회로(98)가 필요하다.
전술한 트리거신호(St)가 CMA요구플래그 플립-플롭(REQ FLG FF) (101)에 입력되어서 DMA요구플래그를 설정한다. DMA요구플래그는 전술한 속도명령 (HIGH, MID, LOW)에 대응하는 시간격에만 설정된다.
플래그가 설정될때, DMA요구신호(DMA REQ #2 또는 DMA REQ #3)는 AND수단(102) 및 SR플립-플롭(S/R) (103)을 경유하며 DMA제어장치(12) (제 2, 6 및 7도)의 우선순위 결정회로(14)에 전송된다. 회로(14)가 DMA요구신호를 수신할 때, DMA ACK #2혹은 DMA ACK #3이 리턴되며, 이것에 의하여 DMA요구 플래그가 리세트되므로 다음 새로운 DMA요구를 수신할 수 있다.
메모리 버스(26)가 비사용단계에 있으면, DMA전송이 실행될 수 없으므로 메모리버스(26)가 아이들(idle)인가를 체크할 필요가 있다. 따라서 AND수단(102)이 구비된다. AND수단(102)은 버스아이들 신호
Figure kpo00005
가 버스조정자(23)로 부터 수신되어 DMA요구플래그를 SR FF(103)에 공급될 때 개방된다.
AND수단(102)은 소프트웨어 혹은 하드웨어에 의하여 실현될 수 있으며 다음과 같은 방식에 따라 소프트웨어에 의하여 실현될 수 있다.
첫째, 버스의 상태를 표시하는 정보를 기억하기 위한 다른 플립플롭(FF)이 채용되어, 버스상태가 소프트웨어의 제어하에서 기억된 정보를 판독하므로써 인식되며, 둘째, REQ FLG FF(101)의 출력이 소프트웨어의 제어하에 출력을 판독함으로써 인식되며 그래서 상기 2가지의 인식의 결과에 따라, 소프트웨어는 DMA요구 FF(103)의 세팅을 제어할 수 있으며, 상기 제1 또는, 제2의 선택은 시스템 설계자에 의하여 자유롭게 결정될 수 있다.
DMA REQ #2 및 DMA REQ #3은 캐쉬메모리(7)로의 DMA데이타전송 및 메모리 대 메모리 전송제어장치(13) (제5도)로 부터의 DMA데이타전송에 대응하며, 전술한 서브채널 레지스터(#2 및 #3)에 대응한다. 따라서, DMA REQ #2 및 #3이 동시에 존제하는 것은 금지되어야 한다. 이를 위하여, SR FF(103)가 제공되어서 DMA REQ #2 및 #3이 세트측 및 리세트측으로 부터 상보적으로 출력된다.
제10도는 디스크 제어장치의 특정예를 보여주는 블록도이다. 디스크 제어장치(2, 73)는 동일하게 구성된다.
디스크 섹터 레지스터(111)는 이미 제5도에서 설명하였다. 디스크 섹터 레지스터(111)는 판독될 디스크 메모리(5 혹은 6)로 부터 결정하는 어드레스를 기억하며, 또한 디스크 인터페이스 제어기(116)와 상호 동작한다. 제어기(116)는 데이타버퍼(115)에 접속된다.
I/O버스(27)가 비지이고, 디스크 메모리로 부터 판독된 데이타가 버스로 공급될 수 없을때, 데이타는 버퍼(115)에 일시적으로 기억된다. I/O버스(27)가 비지인가 아이들인가는 버스조정자(24)와의 상호관계에서 알 수 있다. 이를 위하여 버스 요구제어기(113)가 제공된다.
데이타 전송요구가 DMA REQ형으로 DMA제어장치(12)의 우선순위 결정회로로 발하여지고 DMA ACK가 리턴될때, DMA전송이 시작된다. 이 경우에, DMA전송개시 명령은 DMA개시플래그 레지스터(112)의 I/O버스(27)를 통하여 프로세서(22)로 부터 먼저 설정된다.
이 설정에 의하여, 버스 요구제어기(113)는 I/O버스의 점유상태를 확인한다. 점유 가능하며, DMA, REQ가 발하여 진다.
진술한 바와 같이, 본 발명에 따라, 주메모리와 서브메모리 즉, 캐쉬메모리간의 DMA데이타 전송도를 가변화할수 있다.
또한, 전송속도는 DMA제어장치의 기타 보조메모리 즉, 디스크메모리의 부하상태에 따라 선택될 수 있다. 따라서 DMA제어시스템은 전반적으로 향상된 데이타 전송효율을 제공한다.

Claims (14)

  1. DMA제어시스템에 있어서 : 프로세서(22) ; 상기 프로세서에 접속되고 상기 프로세서에 대한 데이타를 기억하는 주메모리(21) ; 서브메모리 ; 상기 서브메모리에 접속되고, 주메모리와 서브메모리간의 데이타 전송을 제어하며, 가변효과 데이타전송속도로 동작하는 메모리 대 메모리 전송제어장치(13) ; 보조메모리 ; 상기 보조메모리에 접속되고, 상기 서브메모리와 상기 보조메모리간의 데이타전송을 제어하며, 일정한 데이타 전송속도로 동작하는 보조제어장치(2,3) ; 상기 주메모리와 상기 보조제어장치 사이에 접속되고, 상기 두 장치사이에 데이타를 전송하며, 상기 주메모리와 상기 메모리 대 메모리 전송제어장치 사이에 접속되고 상기 두 장치사이에 데이타를 전송하며, 직접 메모리억세스(DMA) 데이타전송을 제어하기 위하여 상기 메모리 대 메모리 전송제어장치 및 상기 보조제어장치와 상호 동작하며 DMA전송능력을 갖춘 DMA제어장치(12)로 구성되며 ; 동작 보조메모리의 데이타 전송속도의 총계보다 작은 DMA전송능력 만큼의 여유 전송 능력을 갖는 상기 DMA제어장치를 상기 보조메모리가 작동시킬때, 상기 보조제어장치에 의해 결정된 상기 서브채널의 상태에 따라 데이타전송을 수행하기 위해 상기 보조메모리가 작동되는지 여부를 나타내는 상태 신호를 공급하는 우선순위 결정수단(14)을 상기 DMA제어장치(12)가 구비하며 ; 상기 메모리 대 메모리 전송제어장치(13)에 있어서 ; 상기 상태신호에 따라서 상기 메모리 대 메모리 전송제어장치의 데이타 전송속도를 결정하는 상태판정수단(16) ; 및 상기 상태판정수단으로 부터 발하여진 속도지정 명령에 따라 상기 DMA제어장치로 출력되는 DMA요구신호를 발하는 사이에 가변 시간격을 공급하는 DMA요구발생수단(15)을 구비하여 ; 및 상기 보조제어장치(2, 3)가 작동되어 상기 DMA제어장치(12)의 여유전송능력이 변하며, 상기 상태판정수단(16)이 상기 보조제어장치에 의한 DMA전송의 혼잡에 응하여 DMA요구신호들 간의 가변 시간격을 변화시킴으로써 상기 감소 여유 전송에 대해 확인하기 위하여 상기 메모리 대 메모리 전송제어장치의 효율적인 데이타를 전송속도를 변화시키는 것을 특징으로하는 DMA제어시스템.
  2. 제1항에 있어서, 상기 서브메모리는 캐쉬메모리(7)를 구비하고, 상기 보조메모리는 디스크메모리(5, 6)를 구비하는 것을 특징으로 하는 시스템.
  3. 제2항에 있어서, 상기 우선순위 결정수단(14)은 적어도 세종류의 상태신호, 즉 DMA개시신호(s1)인 제1상태신호, 식별(ID)신호(S2)인 제2상태신호, 및 DMA정지신호(S3)인 제3상태신호를 제공하며, 상기 ID신호가 DMA가 개시한 서브채널 레지스터의 번호 또는 DMA가 정지한 서브채널 레지스터의 번호를 나타내는 것을 특징으로 하는 시스템.
  4. DMA제어시스템에 있어서, 프로세서(22) ; 상기 프로세서에 접속되고 상기 프로세서에 대한 데이타를 기억하는 주메모리 서브메모리 ; 상기 서브메모리에 접속되고, 주메모리와 서브메모리간의 데이타전송을 제어하며, 가변효과 데이타 전송속도로 동작하는 메모리 대 메모리 전송제어장치(13) ; 보조메모리 ; 상기 보조메모리에 접속되고, 상기 서브메모리와 상기 보조메모리간의 데이타전송을 제어하며, 일정한 데이타 전송속도를 동작하는 보조제어장치(2,3) ; 상기 주메모리와 상기 보조제어장치 사이에 접속되고, 상기 두장치 사이에 전송되며, 상기 주메모리와 상기 메모리대 메모리 전송제어장치 사이에 접속되고 상기 두 장치사이에 데이타를 전송하며, 직접 메모리억세스(DMA) 데이타전송을 제어하기 위하여 상기 메모리 대 메모리 전송제어장치 및 상기 보조제어 장치와 상호 동작하며 DMA전송능력을 갖춘 DMA제어장치(12)로 구성되며 ; 동작 보조메모리의 데이타 전송속도의 총계보다 작은 DMA전송능력 만큼의 여유 전송능력을 갖는 상기 DMA제어장치를 상기 보조메모리가 작동시킬때, 상기 보조제어장치에 의해 결정된 상기 서브채널의 상태에 따라 데이타 전송을 수행하기 위해 상기 보조메모리가 작동되는지 여부를 나타내는 상태신호를 공급하는 우선순의 결정수단(14)을 상기 DMA제어장치(12)가 구비하며 ; 상기 메모리 대 메모리 전송제어장치(13)에 있어서 ; 상기 상태신호에 따라서 상기 메모리 대 메모리 전송제어장치의 데이타 전송속도를 결정하는 상태판정수단(16) ; 및 상기 상태판정수단으로부터 발하여진 속도지정 경령에 따라 상기 DMA제어장치를 출력되는 DMA요구신호를 발하는 사이에 가변 시간격을 공급하는 DMA요구발생수단(15)을 구비하며 ; 및 상기 보조제어장치(2,3)가 작동되어 상기 DMA제어장치(12)의 여유 전송능력이 변하며, 상기 상태판정수단(16)이 상기 보조제어장치에 의한 DMA전송의 혼잡에 응하여 DMA요구신호들 간의 가변 시간격을 변화시킴으로써 상기 감소 여유 전송에 대해 확인하기 위하여 상기 메모리 대 메모리 전송제어장치의 효율적인 데이타 전송속도를 변화시키며 상기 서브메모리는 캐쉬메모리(7)를 구비하고, 상기 보조메모리는 디스크메모리(5, 6)를 구비하며 ; 상기 우선순위 결정수단(14)은 적어도 세종류의 상태신호, 즉 DMA개시신호(S1)인 제1상태신호, 식별(ID) 신호(S2)인 제2상태신호 9 및 DMA정지신호 (S3)인 제3상태신호를 제공하며, 상기 ID신호가 DMA가 개시한 서브채널 레지스터의 번호 또는 DMA가 정지한 서브채널 레지스터의 번호를 나타내며 상기 상태판정수단(16)은 : 상기 결정수단(14)에 접속되고, 입력으로서 상기 DMA개시신호, ID신호 및 DMA정지신호를 수신하여 다수의 비트로 구성되는 디코딩된 출력신호를 발생하는 디코더(17) ; 및 상기 디코더에 접속되고, 입력으로서 상기 디코더로 부터 다수의 비트를 수신하여 적어도 고속명령, 중속명령 및 저속명령중 대응하는 것을 선택하는 판정기(18)를 구비하는 것을 특징으로 하는 시스템.
  5. 제4항에 있어서, 상기 DMA요구발생수단(15)은 : 상기 판정기(18)에 연결되고 상기 고속, 중속 및 저속명령중 어느 하나에 따라 대, 중 및 소(제로포함)계수치를 계수하는 계수기(19) ; 및 상기 계수기(19)에 접속되고 상기 대, 중 및 소 계수치 각각에 따라 대, 중 및 소시간격을 갖는 DMA요구신호를 상기 DMA제어장치로 출력하는 DMA요구발생기(20)를 구비하는 것을 특징으로 하는 시스템.
  6. DMA제어 시스템에 있어서 : 프로세서(22) ; 상기 프로세서에 접속되고 상기 프로세서에 대한 데이타를 기억하는 주메모리 서브메모리 ; 상기 서브메모리에 접속되고, 주메모리와 서브메모리간의 데이타전송을 제어하며, 가변효과 데이타 전송속도로 동작하는 메모리 대 메모리 전송제어장치(13) ; 보조메모리 ; 상기 보조메모리에 접속되고, 상기 서브메모리와 상기 보조메모리간의 데이타전송을 제어하며, 일정한 데이타 전송속도로 동작하는 보조제어장치(2.3) ; 상기 주메모리와 상기 보조제어장치 사이에 접속되고, 상기 두 장치사이에 데이타를 전송하며, 상기 주 메모리와 상기 메모리 대 메모리 전송제어장치 사이에 접속되고 상기 두장치 사이에 데이타를 전송하며, 직접 메모리억세스(DMA) 데이타전송을 제어하기 위하여 상기 메모리 대 메모리전송제어장치 및 상기 보조제어 장치와 상호 동작하며 DMA전송능력을 갖춘 DMA제어장치로 구성되며 ; 동작 보조메모리의 데이타 전송속도의 총계보다 작은 DMA전송능력만큼의 여유 전송능력을 갖는 상기 DMA제어장치를 상기 보조메모리가 작동시킬때, 상기 보조제어장치에 의해 결정된 상기 서브채널의 상태에 따라 데이타전송을 수행하기 위해 상기 보조메모리가 작동되는지 여부를 나타내는 상태신호를 공급하는 우선순위 결정수단을 상기 DMA제어장치가 구비하며 ; 상기 메모리 대 메모리 전송제어장치(13)에 있어서 : 상기 상태신호에 따라서 상기 메모리 대 메모리 전송제어장치의 데이타 전송속도를 결정하는 상태판정수단(16) ; 및 상기 상태판정수단으로 부터 발하여진 속도지정 경령에 따라 상기 DMA제어장치를 출력되는 DMA요구신호를 발하는 사이에 가변 시간격을 공급하는 DMA요구발생수단(15)을 구비하며 ; 및 상기 보조제어장치가 작동되어 상기 DMA제어장치(12)의 여유 전송능력이 변하며, 상기 상태판정수단(16)이 상기 보조제어장치에 의한 DMA전송의 혼잡에 응하여 DMA요구신호들 간의 가변 시간격을 변화시킴으로로써 상기 감소 여유 전송에 대해 확인하기 위하여 상기 메모리 대 메모리 전송제어장치의 효율적인 데이타 전송속도를 변화시키며, 상기 서브메모리는 캐쉬메모리(7)를 구비하고, 상기 보조메모리는 디스크메모리(5, 6)를 구비하며 ; 상기 우선순위 결정수단(14)은 적어도 세종류의 상태신호, 즉 DMA개시신호(S1)인 제1상태신호, 식별(ID) 신호(S2)인 제2상태신호, 및 DMA정지신호(S3)인 제3상태신호를 제공하며, 상기 ID신호가 DMA가 개시한 서브채널 레지스터의 번호 또는 DMA가 정지한 서브채널 레지스터의 번호를 나타내며 ; 상기 판정수단(16)은 : 상기 결정수단(14)에 접속되고, 입력으로서 상기 DMA개시신호, ID신호 및 DMA정지신호를 수신하며 다수의 비트로 구성되는 디코딩된 출력신호를 발생하는 디코더(17) ; 및 상기 디코더에 접속되고, 입력으로서 상기 디코더로 부터 다수의 비트를 수신하여 적어도 고속명령, 중속명령, 및 저속명령중 대응하는 것을 선택하는 판정기를 구비하며 ; 상기 우선순위 결정수단(14)은 : DMA요구신호를 수신하여 최우선 순위를 갖는 요구를 선택하고 선택된 메모리를 판정하기 위한 상기 식별 (ID)신호 및 요구의 수신을 보여주는 수신신호를 출력하는 우선순위 결정논리(41) ; 상기 수신신호 및 식별신호가 수신될때, 상기 DMA요구를 발할 보조제어로 DMA인식신호를 리턴시키고, 또한 상기 DMA개시신호를 발하는 응답제어회로(42) ; 상기 DMA요구를 발한 메모리제어장치가 DMA데이타 전송을 종료할때, 상기 DMA 정지신호를 발하고 또한 메모리제어장치를 식별하는 식별(ID)신호를 출력하는 디코딩회로(43) ; 및 상기 DMA개시 신호출력에 대응하는 식별(ID)신호 및 상기 DMA정지신호 출력에 대응하는 식별(ID)신호를 OR동작하게 하는 OR게이트(44)를 구비하는 것을 특징으로 하는 시스템.
  7. 제6항에 있어서, 상기 DMA제어장치(12)가 서브채널 레지스터(8, 9, 10)를 구비하고 상기 응답제어회로(42) 및 상기 디코딩회로(43)에 접속되며, 상기 DMA개시신호 및 식별(ID)신호를 수신하며 제어정보를 형성하며, 상기 서브채널 레지스터는 각 DMA데이타 전송의 종료가 검출될 때 검출신호를 상기 디코딩회로에 인가하여 상기 디코딩회로로 부터 상기 식별신호가 출력되도록 하게끔 하는 것을 특징으로 하는 시스템.
  8. 제4항에 있어서, 상기 디코더(17)는 : 상기 응답제어회로 및 상기 디코딩회로에 접속되고 각 D-입력에서 상기 DMA개시신호를 공통으로 수신하며 식별신호를 각각 수신하는 2개의 개시 D플립-플롭(51, 52) ; 상기 디코딩회로에 접속되고 각 D-입력에서 상기 DMA정지 신호를 공통으로 수신하며 식별신호를 각각 수신하는 2개의 정지 D플립-플롭(53, 54) ; 상기 개시 D플립-플롭에 접속되고 DMA개시신호가 발생하는 메모리제어장치 즉 2개의 상기 개시 D플립-플롭(51, 52)의 출력으로 부터 결정하는 개시 AND게이트(61 내지 64) ; 상기 정지 D플립-플롭에 접속되고 DMA정지신호가 발생하는 메모리제어장치 즉 2개의 상기 정지 D플립-플롭(53, 54)의 출력으로 부터 결정하는 정지 AND게이트(56 내지 68) ; 및 상기 정지 및 개시 AND게이트에 접속되고, J-입력으로서 상기 개시 AND게이트로 부터의 출력을 수신하며, K-입력으로서 상기 정지 AND게이트로 부터의 출력을 수신하는 KJ플립-플롭(71 내지 74)을 구비하며, 상기 JK플립-플롭의 출력이 상기 디코드된 출력신호(BSY 0 내지 3)로서 사용되는 것을 특징으로 하는 시스템.
  9. 제8항에 있어서, 상기 판정기(18)는 상기 JK플립-플롭에 접속되고 입력으로서 상기 디코드된 출력 신호를 수신하여 상기 비트패턴이 일치될때만 개방되는 판정기 AND게이트(81 내지 84)들을 구비하며, 상기 AND게이트들이 상기 고속, 중속 및 저속명령을 출력하는 적어도 3개의 AND게이트인 것을 특징으로 하는 시스템.
  10. 제5항에 있어서, 상기 계수기(19)는 상기 계수장치(95)에 사전설정될 상기 대, 중 및 소 계수치를 공급하는 사전설정기(91 내지 93) ; 상기 사전설정기 및 상기 판정기 AND게이트에 접속되고 상기 계수장치(95)를 사전설정하는 상기 고, 중, 저속명령중의 하나에 따라 상기 사전설정기의 출력중 하나를 선택하는 선택기(94) ; 상기 계수장치에 접속되고 상기 계수장치의 계수치가 제로에 도달하였는지 여부를 검출하고 제로에 도달할 때까지 상기 다운카운트를 계속하도록 하는 제로비교기(97) ; 및 상기 제로비교기에 접속되고 상기 계수치가 제로에 도달할때 트리거신호를 발생하기 위하여 상기 제로비교기 출력미분하는 미분회로(98)를 구비하는 것을 특징으로 하는 시스템.
  11. 제10항에 있어서, 상기 DMA요구발생회로(15)는 : 상기 미분회로에 접속되고 DMA요구플래그를 설정하기 위하여 상기 트리거 신호를 수신하는 플래그 플립-플롭(101) ; 상기 플래그 플립- 플롭(101)에 접속되고 데이타 전송이 상기 DMA요구에 근거하여 행하여지는 메모리버스가 사용되지 않고 있음을 확인하여 상기 DMA요구플래그를 통과시키는 것을 확인하는 AND수단(102) ; 및 상기 AND수단(102) 및 상기 우선순위 결정회로(14)에 접속되고, 상기 AND수단을 경유하여 통과하는 DMA요구플래그에 따라 두개의 DMA요구신호를 상기 우선순위 결정회로에 상보적으로 전송하는 RS플립-플롭(103)을 구비하여, 상기 두개의 DMA요구신호는 상기 캐쉬메모리로 부터의 데이타전송 및, 캐쉬메모리의 데이타전송을 나타내며, 상기 우선순위 결정회로(14)로 부터 리턴된 각 DMA인식신호에 의하여 리세트되는 것을 특징으로 하는 시스템.
  12. 제11항에 있어서, 상기 AND수단(102)은 상기 메모리 버스가 버스조정자(23)에 의해 사용되고 있지않는가의 여부를 지시하는 것을 특징으로 하는 시스템.
  13. DMA제어 시스템에 있어서 : 주메모리(21) ; 보조메모리 ; 서브메모리 ; 상기 보조메모리에 접속되고 상기 보조메모리의 데이타기억장치를 제어하며 액티브일때 보조 전송능력을 가지는 보조메모리 제어장치(2,3) ; 상기 주 메모리 및 상기 보조메모리 제어장치에 접속되고, 상기 주메모리와 상기 보조메모리 제어장치간 그리고 상기 주메모리와 상기 서브메모리간의 데이타 전송을 수행하며 상기 보조메모리 제어장치가 액티브일때 보조 전송능력보다 적은 전송능력 만큼의 여유 전송능력 및 전송능력을 갖는 직접메모리억세스 제어장치(12) ; 및 상기 서브메모리와 상기 직접메모리억세스 제어장치 사이에 접속되고, 전송능력을 충분하게 하기 위해 상기 직접메모리억세스 제어장치(12)를 경유하는 데이타전송을 조정하는 여유 전송능력에 응하여 상기 직접 메모리억세스 제어장치를 경유하는 상기 서브메모리와 상기 주메모리간의 데이타전송에 대하여 상기 메모리 대 메모리 전송제어장치의 데이타 전송속도를 가변시키는 수단을 포함하는 메모리 대 메모리 전송제어장치(13)로 구성되는 것을 특징으로 하는 DMA제어 시스템.
  14. 제13항에 있어서, 데이타 전송속도를 가변시키는 상기 수단이 현행 부하에 응하여 상기 메모리 대 메모리 전송제어장치에 의해 상기 직접 메모리억세스 제어장치로 보내진 직접 메모리억세스 요구들간의 시간을 조정하는 타이머를 구비하는 것을 특징으로 하는 시스템.
KR1019880000161A 1987-01-12 1988-01-12 직접 메모리 억세스 제어시스템 KR920005834B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP62-4664 1987-01-12
JP62004664A JPS63172359A (ja) 1987-01-12 1987-01-12 直接メモリアクセスシステム
JP?62-4664 1987-01-12

Publications (2)

Publication Number Publication Date
KR880009307A KR880009307A (ko) 1988-09-14
KR920005834B1 true KR920005834B1 (ko) 1992-07-20

Family

ID=11590190

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019880000161A KR920005834B1 (ko) 1987-01-12 1988-01-12 직접 메모리 억세스 제어시스템

Country Status (7)

Country Link
US (1) US5016165A (ko)
EP (1) EP0275157B1 (ko)
JP (1) JPS63172359A (ko)
KR (1) KR920005834B1 (ko)
CA (1) CA1306071C (ko)
DE (1) DE3851445T2 (ko)
ES (1) ES2058242T3 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276845A (en) * 1988-08-25 1994-01-04 Yamaha Corporation Apparatus with multiple buses for permitting concurrent access to a first memory by a processor while a DMA transfer is occurring between a second memory and a communications buffer
JP2774862B2 (ja) * 1990-07-16 1998-07-09 株式会社日立製作所 Dma制御装置および情報処理装置
US5649232A (en) * 1991-06-14 1997-07-15 Integrated Device Technology, Inc. Structure and method for multiple-level read buffer supporting optimal throttled read operations by regulating transfer rate
US5261072A (en) * 1991-10-31 1993-11-09 Tandy Corporation Compact disk data transfer system using cache memory
JPH07504527A (ja) * 1992-03-09 1995-05-18 オースペックス システムズ インコーポレイテッド 高性能の不揮発性ram保護式の書き込みキャッシュアクセラレータシステム
JPH0683321A (ja) * 1992-09-04 1994-03-25 Fuji Xerox Co Ltd 画像データ処理装置
CA2135681C (en) * 1993-12-30 2000-01-18 Srinivas V. Makam System and method for directly accessing long-term memory devices
US5991835A (en) * 1994-11-22 1999-11-23 Teac Corporation Peripheral data storage device in which time interval used for data transfer from relatively fast buffer memory to relatively slower main memory is selected in view of average of time intervals during which data blocks were recently received from host
US6598136B1 (en) * 1995-10-06 2003-07-22 National Semiconductor Corporation Data transfer with highly granular cacheability control between memory and a scratchpad area
KR0160193B1 (ko) * 1995-12-30 1998-12-15 김광호 직접메모리접근 제어장치
US5781927A (en) * 1996-01-30 1998-07-14 United Microelectronics Corporation Main memory arbitration with priority scheduling capability including multiple priorty signal connections
JP3519205B2 (ja) * 1996-03-21 2004-04-12 シャープ株式会社 Dmaコントローラ
KR100810288B1 (ko) * 1999-12-17 2008-03-06 소니 가부시끼 가이샤 정보 처리 장치 및 방법과 기록매체
JP4178010B2 (ja) * 2002-08-27 2008-11-12 アルプス電気株式会社 データ伝送方法
US7793295B2 (en) 2004-08-26 2010-09-07 Mediatek Incoropration Setting bandwidth limiter and adjusting execution cycle of second device using one of the GBL classes selected based on priority of task from first device
DE102004046438B4 (de) * 2004-09-24 2006-07-06 Infineon Technologies Ag Vorrichtung zum Steuern des Zugriffs von Verarbeitungseinrichtungen auf Speicher in einem eingebetteten System
JP4934000B2 (ja) * 2007-10-12 2012-05-16 株式会社リコー 調停装置、調停方法及びプログラム
US8621154B1 (en) 2008-04-18 2013-12-31 Netapp, Inc. Flow based reply cache
US8161236B1 (en) 2008-04-23 2012-04-17 Netapp, Inc. Persistent reply cache integrated with file system
US8171227B1 (en) 2009-03-11 2012-05-01 Netapp, Inc. System and method for managing a flow based reply cache
US8367460B2 (en) 2010-06-22 2013-02-05 Micron Technology, Inc. Horizontally oriented and vertically stacked memory cells
JP5424138B2 (ja) * 2012-02-17 2014-02-26 株式会社リコー 調停装置、画像形成装置、調停方法及びプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5831459A (ja) * 1981-08-19 1983-02-24 Hitachi Ltd 磁気バブルメモリ装置
US4556953A (en) * 1982-02-24 1985-12-03 Caprio A Ronald Interchangeable interface circuitry arrangements for use with a data processing system
JPS6052468B2 (ja) * 1982-03-04 1985-11-19 株式会社東芝 Dmaバス負荷可変装置
JPS58217034A (ja) * 1982-06-11 1983-12-16 Nec Corp デ−タ処理装置
JPS5927334A (ja) * 1982-08-06 1984-02-13 Hitachi Ltd ダイレクトメモリアクセスメモリ装置
JPS60222951A (ja) * 1984-04-20 1985-11-07 Hitachi Ltd デ−タ転送方式
US4688166A (en) * 1984-08-03 1987-08-18 Motorola Computer Systems, Inc. Direct memory access controller supporting multiple input/output controllers and memory units
JPS61251951A (ja) * 1985-04-30 1986-11-08 Usac Electronics Ind Co Ltd デ−タ転送速度制御方式
US4716523A (en) * 1985-06-14 1987-12-29 International Business Machines Corporation Multiple port integrated DMA and interrupt controller and arbitrator

Also Published As

Publication number Publication date
CA1306071C (en) 1992-08-04
JPS63172359A (ja) 1988-07-16
ES2058242T3 (es) 1994-11-01
EP0275157A2 (en) 1988-07-20
EP0275157B1 (en) 1994-09-14
KR880009307A (ko) 1988-09-14
DE3851445D1 (de) 1994-10-20
EP0275157A3 (en) 1991-09-18
US5016165A (en) 1991-05-14
JPH0560623B2 (ko) 1993-09-02
DE3851445T2 (de) 1995-02-09

Similar Documents

Publication Publication Date Title
KR920005834B1 (ko) 직접 메모리 억세스 제어시스템
US20160248695A1 (en) Detection and control of resource congestion by a number of processors
JPS6327738B2 (ko)
JPS63269247A (ja) メモリ制御サブシステム
JPS60246460A (ja) デジタルコンピユ−タ−システムで交信路の制御を割当てる調停機構
JPH02144649A (ja) マルチプロセサシステムにおけるダイレクト・メモリ・アクセス制御装置
JPH07104817B2 (ja) データレコード転送方法
JP2539058B2 (ja) デ―タプロセッサ
KR100630071B1 (ko) 다중 프로세서 환경에서의 dma를 이용한 고속 데이터전송 방법 및 그 장치
KR900001120B1 (ko) 우선도가 낮은 유니트를 우선도가 높은 위치에 위치시키기 위한 분배된 우선도 회로망 로직을 가진 데이타 처리 시스템
CA2003571C (en) Communication command control system between cpus
GB1595471A (en) Computer system
US4494186A (en) Automatic data steering and data formatting mechanism
JP2589821B2 (ja) 情報処理システムの中央処理ユニット
EP0437712A2 (en) Tandem cache memory
JP3206585B2 (ja) バス制御装置、マスタ装置及びスレーブ装置並びにバス制御方法
JP3684902B2 (ja) ディスクアレイ制御装置
EP0340347A2 (en) Bus arbitration system
KR0145932B1 (ko) 고속중형 컴퓨터시스템에 있어서 디엠에이제어기
JPS61125670A (ja) デ−タ転送装置
JP3211705B2 (ja) マルチプロセッサ用高速バスシステム
JPS5858707B2 (ja) アクセス制御装置
JPS6248259B2 (ko)
JP2003085125A (ja) メモリ制御器及びメモリ制御方法
JP2619124B2 (ja) パイプラインアクセスメモリ

Legal Events

Date Code Title Description
A201 Request for examination
E601 Decision to refuse application
E902 Notification of reason for refusal
J2X1 Appeal (before the patent court)

Free format text: APPEAL AGAINST DECISION TO DECLINE REFUSAL

G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20030708

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee