KR0184780B1 - 메모리 인터페이스방법 및 장치 - Google Patents

메모리 인터페이스방법 및 장치 Download PDF

Info

Publication number
KR0184780B1
KR0184780B1 KR1019940032219A KR19940032219A KR0184780B1 KR 0184780 B1 KR0184780 B1 KR 0184780B1 KR 1019940032219 A KR1019940032219 A KR 1019940032219A KR 19940032219 A KR19940032219 A KR 19940032219A KR 0184780 B1 KR0184780 B1 KR 0184780B1
Authority
KR
South Korea
Prior art keywords
data
memory
signal
state
central processing
Prior art date
Application number
KR1019940032219A
Other languages
English (en)
Other versions
KR960018939A (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 KR1019940032219A priority Critical patent/KR0184780B1/ko
Publication of KR960018939A publication Critical patent/KR960018939A/ko
Application granted granted Critical
Publication of KR0184780B1 publication Critical patent/KR0184780B1/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/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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns

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

본 발명은 메모리 인터페이스방법 및 장치에 관한 것이다. 본 발명의 인터페이스장치는 MC68000 또는 MC68010 중앙처리장치에서 출력되는 어드레스유효신호(AS), 읽기/쓰기신호(R/W), 상위데이타유효신호(UDS), 하위데이타유효신호(LDS) 및 중앙처리장치에서 사용하는 클럭에 동기되는 클럭(CPU_CLK)을 입력받아 메모리에 대한 데이타 읽기/쓰기를 제어하기 위한 제어신호를 발생하는 EPLD 또는 PAL등으로 구현되는 제어수단과, 중앙처리장치의 상위데이타버스라인과 메모리 사이에 연결되는 제1데이타전달수단과 중앙처리장치의 하위데이타버스라인과 메모리 사이에 연결되는 제2데이타전달수단을 구비하여, 제어수단의 제어신호에 따라 두개의 데이타전달수단의 전달동작이 가능하도록 구성된다.
따라서, 본 발명은 단일 바이트 메모리칩으로 구성되는 주기억장치와 중앙처리장치 사이에 데이타 리이드/라이트 동작처리에 대한 인터페이스가 가능한 효과를 제공한다.

Description

메모리 인터페이스방법 및 장치
제1도는 종래의 메모리 인터페이스장치를 나타낸 구성도.
제2도는 제1도 장치의 읽기/쓰기 제어부를 나타낸 상세도.
제3도는 제2도 장치의 동작타이밍도.
제4도는 본 발명의 바람직한 실시예에 따른 메모리 인터페이스장치를 나타내는 구성도.
제5도는 제4도 장치의 읽기/쓰기 제어부를 나타내는 상세도.
제6도는 제5도 장치의 제어기에 대한 상태의 변천도.
제7도는 제5도 장치의 동작타이밍도.
* 도면의 주요부분에 대한 부호의 설명
41 : 어드레스디코더 43 : 바이트용 메모리
45 : 읽기/쓰기 제어부 51 : 제어기
53, 55 : 데이타전달기 LAT1, LAT2 : 래치
BUF1, BUF2 : 버퍼
본 발명은 메모리 인터페이스방법 및 장치에 관한 것으로서, 특히 단일 바이트 메모리소자를 주기억장치로 구성시의 인터페이스방법 및 장치에 관한 것이다.
일반적으로 모토로라사에서 개발한 MC68000 또는 MC68010를 중앙처리장치(Centrol Processing Unit;CPU)로 사용하는 회로에 있어서, 메모리와 중앙처리장치의 데이타 읽기(READ)/쓰기(WRITE) 동작의 차이점을 보완하기 위한 종래의 메모리 인터페이스장치가 제1도에 도시되어 있다.
제1도는 종래의 메모리 인터페이스장치를 나타내는 구성도이다. 도시한 바와 같이, 종래의 메모리 인터페이스장치는 중앙처리장치(도시되지 않음)에서 출력된 어드레스신호(A23-A1)와 어드레스유효신호(AS)를 입력받아 메모리를 칩 인에이블하는 신호(CS)를 발생시키는 어드레스디코더(11)를 구비하고 있다. 어드레스디코더(11)의 출력단에는 어드레스신호(A23-A1)와 메모리칩인에이블신호(CS) 및 소정의 제어신호들을 입력받아 중앙처리장치와 데이타를 주고 받을 수 있는 복수개의 메모리(13,15)가 각각 연결된다. 이 메모리들중 짝수 바이트용 메모리(13)는 짝수어드레스로 지정되며, 중앙처리장치와 상위 8비트의 데이타(D15-D8)버스로 연결된다. 홀수 바이트용 메모리(15)는 홀수어드레스로 지정되며, 중앙처리장치와 하위 8비트의 데이타(D7-D0)버스로 연결된다. 한편, 이 메모리들(13,15)로 제어신호를 공급하는 읽기/쓰기 제어부(17)는 중앙처리장치에서 출력된 상위 및 하위데이타유효신호(UDS,LDS) 및 읽기/쓰기신호(R/W)를 입력받아 읽기/쓰기인에이블신호(RD_EVEN,RD_ODD,WR_EVEN,WR_ODD)를 출력하도록 구성된다.
이와 같이 구성된 종래의 메모리 인터페이스장치에 대한 동작을 제2도 및 제3도를 참조하여 설명한다.
먼저, 중앙처리장치가 명령실행중에 출력하는 어드레스신호(A23-A1)와 어드레스유효신호(AS)는 어드레스디코더(11)로 인가된다. 어드레스디코더(11)는 어드레스신호(A23-A1)를 해독하여 짝수 바이트용과 홀수 바이트용으로 분할된 메모리(13,15)를 선택하기 위한 신호(CS)를 발생시킨다. 어드레스신호(A23-A1)는 메모리(13,15)로도 인가된다. 그래서, 메모리를 칩 인에이블하는 신호(CS)에 의해 인에이블된 메모리에 대한 데이타 읽기 또는 쓰기 동작을 위한 어드레스로 사용된다. 중앙처리장치가 출력하는 데이타 읽기동작을 할 것인지 또는 쓰기동작을 할 것인지를 선택하기 위한 읽기/쓰기신호(R/W)는 읽기/쓰기 제어부(17)로 인가된다. 일기/쓰기 제어부(17)는 또한, 중앙처리장치가 출력하는 상위 및 하위데이타유효신호(UDS,LDS)를 인가받는다.
제2도와 같이 구성되는 읽기/쓰기 제어부(17)는 중앙처리장치로부터 인가되는 상위데이타유효신호(USD)를 인버터(21)를 통해 반전시킨 후 이 신호와 읽기/쓰기신호(R/W)를 난드게이트(22)를 이용하여 부정논리곱하면 상위데이타 읽기신호(RD_EVEN)를 얻을 수 있다. 이와 마찬가지로 중앙처리장치로부터 인가되는 하위데이타유효신호(LDS)를 인버터(23)를 통해 반전시킨 후 이 신호와 읽기/쓰기신호(R/W)를 난드게이트(24)를 이용하여 부정 논리곱하면 하위데이타 읽기신호(RD_ODD)를 얻을 수 있다. 또한, 읽기/쓰기신호(R/W)를 인버터(25)를 통해 반전시킨 후 이 신호와 반전된 상위데이타유효신호를 난드게이트(26)를 이용하여 부정논리곱하면 상위데이타 쓰기신호(WR_EVEN)를 얻을 수 있고, 반전된 읽기/쓰기신호와 반전된 하위데이타유효신호를 난드게이트(28)를 이용하여 부정논리곱하면 하위데이타 쓰기신호(WR_ODD)를 얻을 수 있다.
제3도에 나타낸 타이밍도와 같이, 읽기/쓰기신호(R/W)는 읽기사이클의 경우 하이레벨(H)로, 쓰기사이클의 경우에는 로우레벨(L)로 표시된다. 읽기사이클동안 중앙처리장치로부터 상위 또는/및 하위데이타유효신호(UDS,LDS)를 로우레벨(L)로 출력하면 읽기/쓰기 제어부(17)는 로우레벨(L)의 상위 또는/및 하위데이타 읽기신호(RD_EVEN,RD_ODD)를 출력한다. 여기서, 상위데이타유효신호(UDS)또는 하위데이타유효신호(LDS)는 중앙처리장치의 데이타버스중 상위 8비트 또는 하위 8비트데이타버스에 유효한 데이타가 출력되고 있음을 표시하는 제어신호이다. 이때, 읽기/쓰기 제어부(17)는 하이레벨(H)의 상위 및 하위데이타 쓰기신호(WR_EVEN,WR_ODD)를 출력한다. 한편, 쓰기사이클동안 중앙처리장치로부터 상위 또는/및 하위데이타유효신호(UDS,LDS)를 로우레벨(L)로 출력하면 읽기/쓰기 제어부(17)는 로우레벨(L)의 상위 또는/및 하위데이타 쓰기신호(WR_EVEN,WR_ODD)를 출력한다. 이때, 읽기/쓰기 제어부(17)는 하이레벨(H)의 상위 및 하위데이타 읽기신호(RD_EVEN,RD_ODD)를 출력한다. 여기서, 입력에 대해 출타이밍이 일치하지 않고 약간의 지연이 발생한다.
다시, 제1도에서 짝수 바이트용 메모리(13)는 읽기/쓰기 제어부(17)로부터 로우레벨(L)의 상위데이타 일기신호(RD_EVEN)가 인가되는 동안 읽기인에이블() 사이클로 하여 어드레스신호(A23-A1)에 의해 지정된 영역에 저장되어 있는 1바이트 즉, 8비트데이타를 판독하여 상위데이타(D15-D8)버스에 실려 보낸다. 홀수 바이트용 메모리(15)도 일기/쓰기 제어부(17)로부터 로우레벨(L)의 하위데이타 읽기신호(RD_ODD)가 인가되는 동안 읽기인에이블()사이클로 하여 어드레스신호(A23-A1)에 의해 지정된 영역에 저장되어 있는 1바이트 즉, 8비트데이타를 판독하여 하위데이타(D7-D0)버스에 실려 보낸다. 반면에, 읽기/쓰기 제어부(17)로부터 로우레벨(L)의 상위데이타 쓰기신호(WR_EVEN)가 인가되면 그 구간동안 짝수 바이트용 메모리(13)는 쓰기인에이블()사이클로 하여 상위데이타(D15-D8)버스에 실려있는 데이타를 어드레스신호(A23-A1)에 의해 지정된 영역에 기록한다. 홀수 바이트용 메모리(15)도 일기/쓰기 제어부(17)로부터 로우레벨(L)의 하위데이타 쓰기신호(WR_ODD)가 인가되는 동안 쓰기인에이블()사이클로 하여 하위 데이타(D7-D0)버스에 실려있는 데이타를 어드레스신호(A23-A1)에 의해 지정된 영역에 기록한다.
이와 같은 종래의 메모리 인터페이스장치에서는 주기억장치를 구성함에 있어 2개의 메모리소자를 필요로 한다. 이 2개의 메모리소자는 MC68000 또는 MC68010 중앙처리장치의 어드레스신호가 A23-A1라인으로 지정되어 있어 각각 짝수어드레스로만 지정되어 있는 짝수 바이트용 메모리와, 홀수어드레스로만 지정되어 있는 홀수 바이트용 메모리로 이루어진다. 그래서, 바이트단위의 데이타를 처리하는 경우 2개의 메모리소자중 어느 메모리에 대해서라도 데이타 읽기/쓰기동작이 가능하다. 하지만, 워드단위의 데이타 내지 롱워드단위의 데이타를 처리하는 경우 항상 짝수 어드레스로 지정된 짝수 바이트용 메모리에서 부터 데이타 읽기/쓰기동작이 가능하다. 그래서, 이 중앙처리장치에 8비트 크기의 데이타포트를 가진 단일메모리칩으로 주기억장치를구성하려고 할 경우 중앙처리장치가 가지고 있는 16비트의 데이타버스(D15-D0)중 상위 8비트(D15-D8) 또는 하위 8비트(D7-D0)에 데이타포트를 연결하게 된다. 만약, 메모리의 데이타포트를 하위 8비트(D7-D0) 데이타포트에 연결하였을 경우 실제 메모리공간은 홀수어드레스상에만 존재하게 될 것이다. 이러한 경우 워드단위 또는 롱워드단위의 데이타 처리가 불가능하게 된다. 그래서, 종래에는 2개의 메모리칩 즉, 짝수 바이트용 메모리칩과 홀수 바이트용 메모리칩을 사용해햐만 했다.
따라서, 본 발명의 목적은 전술한 문제점을 해소하여 단일 바이트 메모리칩으로 주기억장치를 구성하여도 바이트, 워드 및 롱워드단위의 데이타 처리가 모두 가능한 중앙처리장치와 메모리 사이의 인터페이스방법을 제공함에 있다.
본 발명의 다른 목적은 전술한 메모리 인터페이스방법을 구현하기 위한 장치를 제공함에 있다.
이와 같은 목적들을 달성하기 위한 본 발명에 따른 메모리 인터페이스 방법은 주기억장치로 하나의 바이트단위 메모리를 이용하며, 이 메모리에 대한 데이타 읽기/쓰기동작을 중앙처리장치가 구동하는 신호에 따라 동작하도록 하기 위한 메모리 인터페이스방법에 있어서, 상기 중앙처리장치로부터 인가된 어드레스신호와 어드레스유효신호를 해독하여 상기 메모리를 칩 인에이블하는 신호를 발생시키는 어드레스디코딩단계와, 상기 중앙처리장치로 부터 인가된 읽기/쓰기신호가 읽기사이클이면 상기 메모리의 읽기동작을 인에이블상태로 만들고, 쓰기사이클이면 쓰기동작을 인에이블상태로 만드는 읽기/쓰기 인에이블단계와, 상기 중앙처리장치에서 사용하는 클럭의 소정엣지마다 중앙처리장치의 입력신호를 검출하여 5개의 상태중 하나의 상태로 천이하는 상태천이단계와, 천이된 상태에 따라 상기 중앙처리장치의 상위데이타버스와 상기 메모리의 데이타버스 사이의 데이타 전달경로를 결정하여 버스에 실려있는 데이타를 전달하는 제1데이타전달단계와, 천이된 상태에 따라 상기 중앙처리장치의 하위데이타버스와 상기 메모리의 데이타버스 사이의 데이타 전달경로를 결정하여 버스에 실려있는 데이타를 전달하는 제2데이타전달단계와, 천이된 상태에 따라 상기 중앙처리장치가 출력하지 않는 1비트의 어드레스신호를 생성하여 중앙처리장치로부터 인가된 어드레스신호와 합쳐 상기 메모리의 읽기 및 쓰기시 필요한 어드레스로 출력하는 어드레스합성단계와, 읽기인에이블상태에서 상기 어드레스합성단계의 어드레스신호로 지정된 상기 메모리영역에 저장된 데이타를 판독하여 상기 제1데이타 전달단계 및 제2데이타전달단계를 통해 전달된 데이타를 기록하는 쓰기 단계를 포함한다.
본 발명의 다른 목적을 달성하기 위한 본 발명에 따른 메모리 인터페이스장치는 중앙처리장치와 주기억장치의 데이타 읽기/쓰기 동작의 차이점을 보완하기 위한 메모리 인터페이스장치에 있어서, 상기 중앙처리장치로부터 인가된 어드레스신호와 어드레스유효신호를 해독하여 메모리를 칩 인에이블하는 신호를 발생시키는 어드레스디코더와, 상기 칩인에이블신호에 의해 동작 가능한 인에이블상태가 되며, 바이트단위로 데이타를 저장하거나 독출이 가능한 하나의 메모리와, 상기 중앙처리장치로부터 인가된 어드레스 유효신호와 읽기/쓰기신호,상위데이타유효신호, 하위데이타유효신호, 클럭신호 및 리셋신호를 입력받아 1비트의 어드레스신호를 생성하고 상기 메모리의 읽기 및 쓰기동작을 인에이블상태로 만들며, 중앙처리장치와 메모리의 데이타버스사이의 데이타를 전달하는 읽기/쓰기 제어부, 및 상기 중앙처리장치로부터 인가된 어드레스신호에 상기읽기/쓰기 제어부로부터 생성된 어드레스신호를 합쳐 상기 메모리의 읽기 및 쓰기시 필요한 어드레스로 출력하는 어드레스합성노드를 포함한다.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 기술하기로 한다.
제4도는 본 발명에 따른 메모리 인터페이스장치를 나타내는 구성도이다. 도시한 바와 같이, 본 발명의 메모리 인터페이스장치는 중앙처리장치(도시되지 않음)에서 출력된 어드레스신호(A23-A1)와 어드레스유효신호(AS)를 입력받아 메모리를 칩 인에이블하는 신호(CS)를 발생시키는 어드레스디코더(41)를 구비하고 있다. 어드레스디코더(41)의 출력단에는 하나의 바이트용 메모리(43)가 연결된다. 이 메모리(43)에 대한 데이타 리이드/라이트동작은 중앙처리장치가 구동하는 신호에 따라 동작하는 읽기/쓰기 제어부(45)에 의해 이루어진다. 이 읽기/쓰기 제어부(45)는 제5도에 상세하게 도시되어 있다.
제5도는 제4도 장치의 읽기/쓰기 제어부(45)를 나타내는 상세도이다. 도시한 바와 같이, 읽기/쓰기 제어부(45)는 중앙처리장치로부터 메모리에 대한 데이타 리이드/라이트 동작을 수행할 경우 그것이 바이트오퍼레이션(Byte-Operation)인지 워드오퍼레이션(Word-Operation)인지를 구별하여 그에 따라 메모리에 쓰여지는 데이타의 제어를 위한 신호를 출력하는 제어기(51)를 구비하고 있다. 이 제어기(51)의 제어신호를인가받는 2개의 데이타 전달기(53,55)는 래치(LAT1,LAT2) 및 버퍼(BUF1,BUF2)로 이루어져 데이타의 전달경로를 동적으로 구성한다. 여기서, 제어기(51)는 EPLD 또는 PAL회로등으로 구성 가능하다.
이와 같이 구성되는 본 발명의 메모리 인터페이스장치에 대한 동작을 첨부한 나머지 도면을 참조하여 좀더 구체적으로 설명한다.
먼저, 중앙처리장치가 명령실행중에 출력하는 어드레스신호(A23-A1)와 어드레스유효신호(AS)는 어드레스디코더(41)로 인가된다. 어드레스디코더(41)는 어드레스신호(A23-A1)를 해독하여 단일 바이트용 메모리(43)를 칩인에이블하기 위한 신호(CS)를 발생시킨다. 어드레스신호(A23-A1)는 메모리(43)로도 인가된다. 읽기/쓰기 제어부(45)의 제어기(51)는 단일 바이트용 메모리(43)에 대한 데이타경로설정을 위한 제어신호를 발생하기 위해 제6도에 도시한 바와 같은 하나의 상태머신(State Machine)을 갖는다. 제어기(51)는 또한, 중앙처리장치로 입력되는 주클럭(CPU_CLK)를 입력받고, 리셋신호(RESET), 어드레스유효신호(AS), 읽기/쓰기신호(R/W), 상위 및 하위데이타유효신호(UDS,LDS)를 입력받아 상태를 천이하면서 중앙처리장치가 출력하지 않는 어드레스신호 ''A0'', 쓰기인에이블신호(WE), 읽기인에이블신호(OE)를 발생시킨다. 제어기(51)에 대한 로직은 다음과 같이 ALTERA사의 MAX-PLUS2 EPLD 컴파일러 소스 코드로 작성되었다.
즉, 제6도에 도시한 바와 같이 제어기(51)는 5개의 상태를 가지고 있으며, 동작중 리셋신호(RESET)가 검출되면 아이들(IDLE)상태로 천이한다(101). 여기서, 아이들(IDLE)상태는 초기상태로 볼 수 있다. 어떤 상태에서 다른 상태로의 천이조건은 현재의 상태와 입력되는 신호에 따라 결정되고, 그것이 주클럭(CPU_CLK)의 상승엣지에서 검출된다. 아이들(IDLE)상태에서 어드레스유효신호(AS)가 로우레벨(L)이고, 상위데이타유효신호(UDS)가 로우레벨(L)로 표시되면 제어기(51)는 단일 바이트용 메모리(43)의 짝수어드레스에 대해 동작하는 짝수(EVEN)상태로 천이한다(102). 또한, 아이들(IDLE)상태에서 어드레스유효신호(AS)가 로우레벨(L)이고, 상위데이타유효신호(UDS)가 하이레벨(H)이며, 하위데이타유효신호(LDS)가 로우레벨(L)로 검출되면 단일 바이트용 메모리(43)의 홀수어드레스에 대해 동작하는 홀수(ODD)상태로 천이한다(103). 아이들(IDLE)상태의 제어기(51)는 전술한 이외의 입력조건에서는 그대로 아이들상태에 머물러있게 된다.
한편, 홀수(ODD)상태에서 제어기(51)는 중앙처리장치에서 출력하지 않는 어드레스비트인 A0신호를 제7도에서 보듯이 하이레벨(H)로 출력하고, 중앙처리장치가 외부로 사이클을 수행시 중앙처리장치에 데이타 읽기 또는 쓰기 동작이 처리되었음을 알리기 위한 데이타인식(DTK)상태로 천이한다(104). 짝수(EVEN)상태에서 제어기(51)는 워드 또는 롱워드단위로 데이타 처리를 하기 위해 중앙처리장치로부터 상위데이타유효신호(UDS) 및 하위데이타유효신호(LDS)가 모두 로우레벨(L)로 인가되면 홀수(ODD)상태로 천이하기 전에 타이밍을 맞추기 위한 더미(INCA)상태로 천이하고(105), 그 이외의 다른 조건에서는 데이타인식(DTK)상태로 천이한다(104). 더미(INCA)상태에서는 무조건 홀수(ODD)상태로 천이한다(103). 데이타인식(DTK)상태에서는 데이타인식신호(DTACK)를 로우레벨(L)로 출력하고 무조건 아이들(IDLE)상태로 천이한다(101).
위와 같은 5개의 상태를 가질 수 있는 제어기(51)는 중앙처리장치로부터 읽기/쓰기신호(R/W)를 입력받는다. 제7도에 나타낸 타이밍도와 같이, 읽기/쓰기신호(R/W)는 읽기사이클의 경우 하이레벨(H)로, 쓰기사이클의 경우에는 로우레벨(L)로 표시된다. 5개의 상태중 홀수(ODD) 또는 짝수(EVEN)상태의 제어기(51)가 읽기사이클동안 중앙처리장치로부터 상위 또는/및 하위데이타유효신호(UDS,LDS)를 로우레벨( L)로 입력받으면 로우레벨(L)의 읽기인에이블신호(OE)를 출력한다. 또한, 홀수(ODD) 또는 짝수(EVEN)상태의 제어기(51)는 쓰기사이클동안 중앙처리장치로부터 상위 또는 /및 하위데이타유효신호(UDS,LDS)를 로우레벨(L)로 입력받으면 로우레벨(L)의 쓰기인에이블신호(WE)를 출력한다. 쓰기 및 읽기인에이블신호(WE,OE)는 단일 바이트용 메모리(43)의 쓰기인에이블단자()와 읽기인에 이블단자()로 각각 공급한다. 한편, 제어기(51)가 홀수(ODD)상태에서만 발생시키는 1비트 어드레스신호(A0)는 중앙처리장치로부터 출력되는 어드레스신호(A23-A1)와 합쳐져 단일 바이트용 메모리(43)의 동작어드레스신호로 사용된다. 읽기인에이블신호(OE)는 또한 2개의 데이타전달기(53,55)로 공급된다.
다시, 제5도에서 제어기(51)는 제7도에 나타낸 바와 같이 짝수(EVEN)상태에서 로우레벨(L)의 읽기인에이블신호(OE)와 함께 하이레벨(H)의 상위래치인에이블신호(ULE)를 제1데이타전달기(53)의 래치(LAT1)로 공급한다. 여기서, 래치(LAT1)는 중앙처리장치의 상위데이타버스(D15-D8)라인에 출력단(Q1)이 연결되고, 단일 바이트용 메모리(43)의 8비트 데이타버스(MD7-MD0)라인에 입력단(D1)이 연결된다. 제어기(51)가 홀수(ODD)상태에서는 제7도에 나타낸 바와 같이 로우레벨(L)의 읽기인에이블신호(OE)와 함께 하이레벨(H)의 하위래치인에이블신호(LLE)를 제2데이타전달기(55)의 래치(LAT2)로 공급한다. 여기서, 래치(LAT2)는 중앙처리장치의 하위데이타버스(D7-D0)라인에 출력단(Q2)이 연결되고, 단일 바이트용 메모리(43)의 데이타버스(MD7-MD0)라인에 입력단(D2)이 연결된다. 상위래치인에이블신호(ULE) 및 하위래치인에이블신호(LLE)는 중앙처리장치가 메모리로부터 워드 또는 바이트단위의 데이타를 독출하고자 할 때 메모리의 데이타를 해당데이타라인에 연결된 래치에 저장하기 위해 사용하는 신호이다. 래치(LAT1,LAT2)는 인에이블단자(E1,E2)로 하이레벨(H)이 입력되고, 읽기인에이블단자()로 로우레벨(L)이 입력되면 메모리에 연결되어 있는 8비트의 데이타버스(MD7-MD0)에 실려있는 데이타를 입력단(D1,D2 )을 통해 받아들여 저장한다. 이 상태에서, 제어기(51)는 앞서 설명한 바와 같이 데이타인식(DTK)상태가 되어 래치(LAT1,LAT2)에 저장되어 있는 데이타를 중앙처리장치가 받아들일 수 있돌고 제7도에 나타낸 바와 같이 로우레벨(L)의 데이타인식신호(DTACK)를 중앙처리장치로 공급한다.
반면에, 중앙처리장치가 메모리에 워드 또는 바이트단위의 데이타를 기록하고자 하는 경우 중앙처리장치의 데이타를 해당 데이타라인에 연결된 데이타버퍼를 인에이블시켜야 한다. 이때, 제어기(51)는 제7도에 나타낸 바와 같이 짝수(EVEN)상태에서 로우레벨(L)의 쓰기인에이블신호(WE)와 함께 로우레벨(L)의 상위버퍼인에이블신호(UBE)를 제1데이타전달기(53)의 버퍼(BUF1)로 공급한다. 여기서, 버퍼(BUF1)는 중앙처리장치의 상위데이타버스(D15-D8)라인에 입력단이 연결되고, 단일 바이트용 메모리(43)의 8비트 데이타버스(MD7-MD0)라인에 출력단이 연결된다. 제어기(51)가 홀수(ODD)상태에서는 제7도에 나타낸 바와 같이 로우레벨(L)의 쓰기인에이블신호(WE)와 함께 로우레벨(L)의 하위버퍼인에이블신호(LBE)를 제2데이타전달기(55)의 버퍼(BUF2)로 공급한다. 여기서, 버퍼(BUF2)는 중앙처리장치의 하위데이타버스(D7-D0)라인에 입력단이 연결되고, 단일 바이트용 메모리(43)의 데이타버스(MD7-MD0)라인에 출력단이 연결된다. 버퍼(BUF1,BUF2)는 인에이블단자로 로우레벨(L)이 입력되면 동작가능한 인에이블상태가 되어 중앙처리장치에 연결되어 있는 상위 8비트의 데이타버스(D15-D8) 또는 하위 8비트의 데이타버스(D7-D0)에 실려있는 데이타를 입력받아 버퍼링한다. 이 상태에서, 제어기(51)는 앞서 설명한 바와 같이 데이타인식(DTK)상태가 되어 버퍼(BUF1,BUF2)에 존재하는 데이타를 단일 바이트용 메모리(43)의 지정된 어드레스상에 기록할 수 있도록 제7도에 도시한 바와 같이 로우레벨(L)의 데이타인식신호(DTACK)를 중앙처리장치로 공급한다.
이처럼, 단일 바이트 메모리소자 하나로 주기억장치를 구성시 주기억장치와 MC68000 또는 MC68010 중앙처리장치 사이에 데이타 리이드/라이트 동작을 위한 인터페이스기능을 수행한다.
상술한 바와 같이, 본 발명은 메모리 인터페이스방법 및 장치에 관한 것으로서 두개의 메모리칩을 사용해야만 인터페이스가 가능했던 종래에 비해 단일 메모리 칩으로 주기억장치를 구성해도 인터페이스가 가능하도록 하는 효과를 갖는다.

Claims (18)

  1. 중앙처리장치와 주기억장치의 데이타 읽기/쓰기 동작의 차이점을 보완하기 위한 메모리 인터페이스장치에 있어서, 상기 중앙처리장치로부터 인가된 어드레스신호와 어드레스유효신호를 해독하여 메모리를 칩 인에이블하는 신호를 발생시키는 어드레스디코더; 상기 칩인에이블신호에 의해 동작 가능한 인에이블상태가 되며, 바이트단위로 데이타를 저장하거나 독출이 가능한 하나의 메모리; 상기 중앙처리장치로부터 인가된 어드레스유효신호와 읽기/쓰기신호, 상위데이타유효신호, 하위데이타유효신호, 클럭신호 및 리셋신호를 입력받아 1비트의 어드레스신호를 생성하고 상기 메모리의 읽기 및 쓰기동작을 인에이블상태로 만들며, 중앙처리장치와 메모리의 데이타버스사이의 데이타를 전달하는 읽기/쓰기 제어부; 및 상기 중앙처리장치로부터 인가된 어드레스신호에 상기 읽기/쓰기 제어부로부터 생성된 어드레스신호를 합쳐 상기 메모리의 읽기 및 쓰기시 필요한 어드레스로 출력하는 어드레스합성노드를 포함하는 메모리 인터페이스장치.
  2. 제1항에 있어서, 상기 읽기/쓰기 제어부는 상기 중앙처리장치의 상위 8비트 데이타버스라인과 상기 메모리의 8비트 데이타버스라인 사이에 연결되며, 제어기의 제어신호에 따라 메모리의 데이타버스에 실려있는 데이타를 중앙처리장치로 전달하거나 중앙처리장치의 상위데이타버스에 실려있는 데이타를 메모리로 전달하기 위한 제1데이타전달기; 상기 중앙처리장치의 하위 8비트 데이타버스라인과 상기 메모리의 8비트 데이타버스라인 사이에 연결되며, 제어기의 제어신호에 따라 메모리의 데이타버스에 실려있는 데이타를 중앙처리장치로 전달하거나 중앙처리장치의 하위데이타버스에 실려있는 데이타를 메모리로 전달하기 위한 제2데이타전달기; 및 5개의 상태를 갖는 하나의 상태머신으로 이루어지며, 현재 상태에서 상기 중앙처리장치로부터 입력되는 신호에 따라 상태를 천이하여 상기 제1데이타전달기 및 제2데이타전달기로 동작을 인에이블시키는 신호를 공급하고 상기 메모리로 읽기 및 쓰기인에이블신호를 공급하며 1비트 어드레스신호를 발생하는 제어기를 구비함을 특징으로 하는 메모리 인터페이스장치.
  3. 제2항에 있어서, 상기 제어기는 상기 중앙처리장치로부터 리셋신호가 인가되면 초기상태인 아이들상태로 천이하고, 아이들상태에서 중앙처리장치로부터 상위데이타유효신호가 인가되면 상기 메모리의 짝수어드레스에 대해 동작하는 짝수상태로 천이하고, 중앙처리장치로부터 하위데이타유효신호가 인가되면 상기 메모리의 홀수어드레스에 대해 동작하는 홀수상태로 천이하며, 중앙처리장치로부터 상위데이타유효신호 및 하위데이타유효신호가 모두 인가되면 일단 짝수상태로 천이하는 것을 특징으로 하는 메모리 인터페이스장치.
  4. 제3항에 있어서, 상기 제어기는 홀수상태에서 상기 중앙처리장치가 출력하지 않는 1비트 어드레스신호를 출력하고, 상기 중앙처리장치로 데이타 읽기 또는 쓰기동작이 처리되었음을 알리기 위한 데이타인식상태로 천이하는 것을 특징으로 하는 메모리 인터페이스장치.
  5. 제3항에 있어서, 상기 제어기는 짝수상태에서 상기 중앙처리장치로 데이타 읽기 또는 쓰기동작이 처리되었음을 알리기 위한 데이타인식상태로 천이하고, 상위데이타유효신호 및 하위데이타유효신호가 모두 인가된 경우에는 타이밍을 맞추기 위한 더미상태로 일단 천이한 후 홀수상태로 천이하는 것을 특징으로 하는 메모리 인터페이스장치.
  6. 제5항에 있어서, 상기 제어기는 더미상태에서는 무조건 홀수상태로 천이하는 것을 특징으로 하는 메모리 인터페이스장치.
  7. 제4항 또는 제5항에 있어서, 상기 제어기는 데이타인식상태에서 무조건 아이들상태로 천이하는 것을 특징으로 하는 메모리 인터페이스장치.
  8. 제7항에 있어서, 상기 제어기는 상기 중앙처리장치로부터 인가되는 읽기/쓰기신호가 논리 1로 검출되면 읽기사이클로 인식하고, 논리 0로 검출되면 쓰기사이클로 인식하는 것을 특징으로 하는 메모리 인터페이스장치.
  9. 제8항에 있어서, 상기 제어기는 짝수상태의 읽기사이클동안 중앙처리장치로부터 상위데이타유효신호가 입력되면 읽기인에이블신호를 상기 메모리로 공급함과 아울러 읽기인에이블신호와 상위래치인에이블신호를 제1데이타전달기로 공급하고, 홀수상태의 읽기사이클동안 중앙처리장치로부터 하위데이타유효신호가 입력되면 읽기인에이블신호를 상기 메모리로 공급함과 아울러 읽기인에이블신호와 하위래치인에이블신호를 제2데이타전달기로 공급하는 것을 특징으로 하는 메모리 인터페이스장치.
  10. 제8항에 있어서, 상기 제어기는 짝수상태의 쓰기사이클동안 중앙처리장치로부터 상위데이타유효신호가 입력되면 쓰기인에이블신호를 상기 메모리로 공급함과 아울러 상위버퍼인에이블신호를 제1데이타전달기로 공급하고, 홀수상태의 쓰기사이클동안 중앙처리장치로부터 하위데이타유효신호가 입력되면 쓰기인에이블신호를 상기 메모리로 공급함과 아울러 하위버퍼인에이블신호를 제2데이타전달기로 공급하는 것을 특징으로 하는 메모리 인터페이스장치.
  11. 제9항에 있어서, 상기 제1데이타전달기는 상기 중앙처리장치의 상위데이타버스라인에 출력단이 연결되고, 상기 메모리의 8비트 데이타버스라인에 입력단이 연결되며, 읽기인에이블단자와 인에이블단자로 상기 제어기의 읽기인에이블신호와 상위래치인에이블신호가 각각 입력되면 메모리에 연결되어 있는 8비트의 데이타버스에 실려있는 데이타를 입력단을 통해 입력받아 래치하는 제1래치; 및 상기 중앙처리장치의 상위데이터버스라인에 입력단이 연결되고, 상기 메모리의 8비트 데이타버스라인에 출력단이 연결되며, 상기 제어기로부터 상위버퍼인에이블신호가 입력되 동작 가능한 인에이블상태가 되어 중앙처리장치에 연결되어 있는 상위 8비트의 데이타버스에 실려있는 데이타를 입력받아 버퍼링하는 제1버퍼로 이루어진 것을 특징으로 하는 메모리 인터페이스장치.
  12. 제10항에 있어서, 상기 제2데이타전달기는 상기 중앙처리장치의 하위데이타버스라인에 출력단이 연결되고, 상기 메모리의 8비트 데이타버스라인에 입력단이 연결되며, 읽기인에이블단자와 인에이블단자로 상기 제어기의 읽기인에이블신호와 하위래치인에이블신호가 각각 입력되면 메모리에 연결되어 있는 8비트 데이타버스에 실려있는 데이타를 입력단을 통해 입력받아 래치하는 제2래치; 및 상기 중앙처리장치의 하위데이타버스라인에 입력단이 연결되고, 상기 메모리의 8비트 데이타버스라인에 출력단이 연결되며, 상기 제어기로부터 하위버퍼인에이블신호가 입력되면 동작 가능한 인에이블상태가 되어 중앙처리장치에 연결되어 있는 하위 8비트의 데이타버스에 실려있는 데이타를 입력받아 버퍼링하는 제2버퍼로 이루어진 것을 특징으로 하는 메모리 인터페이스장치.
  13. 주기억장치로 하나의 바이트단위 메모리를 이용하며, 이 메모리에 대한 데이타 읽기/쓰기동작을 중앙처리장치가 구동하는 신호에 따라 동작하도록 하기 위한 메모리 인터페이스방법에 있어서, 상기 중앙처리장치로부터 인가된 어드레스신호와 어드레스유효신호를 해독하여 상기 메모리를 칩 인에이블하는 신호를 발생시키는 어드레스디코딩단계; 상기 중앙처리장치로부터 인가된 읽기/쓰기신호가 읽기사이클하면 상기 메모리의 읽기동작을 인에이블상태로 만들고, 쓰기사이클이면 쓰기동작을 인에이블상태로 만드는 읽기/쓰이 인에이블단계; 상기 중앙처리장치에서 사용하는 클럭의 소정엣지마다 중앙처리장치의 입력신호를 검출하여 5개의 상태중 하나의 상태로 천이하는 상태천이단계; 천이된 상태에 따라 상기 중앙처리장치의 상위데이타버스와 상기 메모리의 데이타버스 사이의 데이타 전달경로를 결정하여 버스에 실려있는 데이타를 전달하는 제1데이타전달단계; 천이된 상태에 따라 상기 중앙처리장치의 하위데이타버스와 상기 메모리의 데이타버스 사이의 데이타 전달경로를 결정하여 버스에 실려있는 데이타를 전달하는 제2데이타전달단계; 천이된 상태에 따라 상기 중앙처리장치가 출력하지 않는 1비트의 어드레스신호를 생성하여 중앙처리장치로부터 인가된 어드레스신호와 합쳐 상기 메모리의 읽기 및 쓰기시 필요한 어드레스로 출력하는 어드레스합성단계; 읽기인에이블상태에서 상기 어드레스합성단계의 어드레스신호로 지정된 상기 메모리영역에 저장된 데이타를 판독하여 상기 제1데이타전달단계 및 제2데이타전달단계로 출력하는 데이타읽기단계; 및 쓰기인에이블상태에서 상기 어드레스합성단계의 어드레스신호로 지정된 상기 메모리영역에 상기 제1데이타전달단계 및 제2데이타전달단계를 통해 전달된 데이타를 기록하는 쓰기단계를 포함하는 메모리 인터페이스방법.
  14. 제13항에 있어서, 상기 5개의 상태는 초기상태인 아이들상태, 상기 메모리의 짝수어드레스에 대한 데이타 읽기 및 쓰기동작을 처리하는 짝수상태, 상기 메모리의 홀수어드레스에 대한 데이타 읽기 및 쓰기동작을 처리하는 홀수상태, 상기 중앙처리장치로 데이타 읽기 또는 쓰기동작이 처리되었음을 알리기 위한 데이타인식상태 및 타이밍을 맞추기 위한 더미상태인 것을 특징으로 하는 메모리 인터페이스방법.
  15. 제14항에 있어서, 상기 상태천이단계는 리셋신호가 인가되면 아이들상태로 천이하는 제1단계; 아이들상태에서 상위데이타유효신호가 인가되면 짝수상태로 천이하고, 짝수상태에서 데이타인식상태로 천이하는 제2단계; 아이들상태에서 하위데이타유효신호가 인가되면 홀수상태로 천이하고, 홀수상태에서 데이타인식상태로 천이하는 제3단계; 아이들상태에서 상위데이타유효신호와 하위데이타유효신호가 모두 인가되면 짝수상태로 일단 천이되며, 짝수상태에서 더미상태를 거친 후 홀수 상태로 천이하는 제4단계; 및 데이타인식상태에서 무조건 아이들상태로 천이하는 제5단계를 갖는 것을 특징으로 하는 메모리 인터페이스방법.
  16. 제15항에 있어서, 상기 제1데이타전달단계는 짝수상태에서 읽기사이클동안 상기 메모리의 데이타버스에 실려있는 데이타를 입력받아 래치하고, 쓰기사이클동안 상기 중앙처리장치의 상위데이타버스에 실려있는 데이타를 입력받아 버퍼링하며, 데이타인식상태로 천이하는 것을 특징으로 하는 메모리 인터페이스방법.
  17. 제15항에 있어서, 상기 제2데이타전달단계는 홀수상태에서 읽기사이클동안 상기 메모리의 데이타버스에 실려있는 데이타를 입력받아 래치하고, 쓰기사이클동안 상기 중앙처리장치의 하위데이타버스에 실려있는 데이타를 입력받아 버퍼링하며, 데이타인식상태로 천이하는 것을 특징으로 하는 메모리 인터페이스방법.
  18. 제15항에 있어서, 상기 어드레스합성단계는 홀수상태에서 1비트의 어드레스신호를 생성하는 것을 특징으로 하는 메모리 인터페이스방법.
KR1019940032219A 1994-11-30 1994-11-30 메모리 인터페이스방법 및 장치 KR0184780B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940032219A KR0184780B1 (ko) 1994-11-30 1994-11-30 메모리 인터페이스방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940032219A KR0184780B1 (ko) 1994-11-30 1994-11-30 메모리 인터페이스방법 및 장치

Publications (2)

Publication Number Publication Date
KR960018939A KR960018939A (ko) 1996-06-17
KR0184780B1 true KR0184780B1 (ko) 1999-05-15

Family

ID=19399855

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940032219A KR0184780B1 (ko) 1994-11-30 1994-11-30 메모리 인터페이스방법 및 장치

Country Status (1)

Country Link
KR (1) KR0184780B1 (ko)

Also Published As

Publication number Publication date
KR960018939A (ko) 1996-06-17

Similar Documents

Publication Publication Date Title
KR100694440B1 (ko) 반도체기억장치
US5602780A (en) Serial to parallel and parallel to serial architecture for a RAM based FIFO memory
KR100443606B1 (ko) 다중 메모리 어드레스를 저장 및 처리하기 위한 시스템 및방법
US7251188B2 (en) Memory access interface for a micro-controller system with address/data multiplexing bus
JP4667773B2 (ja) データ反転を有するメモリシステム及びメモリシステムにおけるデータ反転方法
KR100241514B1 (ko) 마이크로 컴퓨터
KR100377708B1 (ko) 저소비 전력화가 가능한 파이프라인 방식의 반도체 기억장치
US6883041B2 (en) Direct memory access device
KR0184780B1 (ko) 메모리 인터페이스방법 및 장치
US6510483B1 (en) Circuit, architecture and method for reading an address counter and/or matching a bus width through one or more synchronous ports
KR970059914A (ko) 플래시 메모리 시스템
JPH0353363A (ja) バスアーキテクチャ変換回路
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
JPS60554A (ja) メモリ制御装置
US6757752B2 (en) Micro controller development system
KR950009077B1 (ko) 듀얼포트 디램
JP3176144B2 (ja) 同期型スタチックメモリ
KR100259293B1 (ko) 디티브이의 온-스크린 디스플레이 처리장치
KR100252508B1 (ko) 통신처리시스템의 프로세서 보드에서 롬 인터페이스장치
KR100381024B1 (ko) 마이크로프로세서 개발 시스템의 기능을 효율적으로 지원하기위한 회로
JP3242474B2 (ja) データ処理装置
KR930007016B1 (ko) 판독수정기록(Read Modify Write, RMW)사이클 지원을 위한 잠금 처리회로
KR0182644B1 (ko) 메모리의 읽기 및 쓰기제어장치
KR100213699B1 (ko) 엠시68040을 사용하는 중앙처리장치의 주변장치 액세스 회로
JPH10105457A (ja) メモリ制御システムおよびメモリ制御回路

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20031222

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee