[go: up one dir, main page]

KR970002187B1 - 다수개의 포트를 갖는 레지스터 파일 메모리 구조 - Google Patents

다수개의 포트를 갖는 레지스터 파일 메모리 구조 Download PDF

Info

Publication number
KR970002187B1
KR970002187B1 KR1019930031728A KR930031728A KR970002187B1 KR 970002187 B1 KR970002187 B1 KR 970002187B1 KR 1019930031728 A KR1019930031728 A KR 1019930031728A KR 930031728 A KR930031728 A KR 930031728A KR 970002187 B1 KR970002187 B1 KR 970002187B1
Authority
KR
South Korea
Prior art keywords
signal
data
signal line
input
cpu
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1019930031728A
Other languages
English (en)
Other versions
KR950020097A (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 KR1019930031728A priority Critical patent/KR970002187B1/ko
Publication of KR950020097A publication Critical patent/KR950020097A/ko
Application granted granted Critical
Publication of KR970002187B1 publication Critical patent/KR970002187B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Static Random-Access Memory (AREA)

Abstract

내용없음.

Description

다수개의 포트를 갖는 레지스터 파일 메모리 구조
제1도는 본 발명의 실시예로써 3포트레지스터 파일 메모리를 도시한 개략적인 블럭도.
제2도는 본 발명의 16×8 레지스터 파일을 나타내는 블럭도.
제3a도 및 b도는 본 발명의 3포트 파일을 나타내는 블럭도.
* 도면의 주요부분에 대한 부호의 설명
110 : 3 포트 파일 메모리 210, 220, 230, 360 : 8 비트 레지스터
310, 320, 330, 340 : 레지스터 파일 410, 420, 430 : 복호기
본 발명은 다수개의 포트(Port)를 갖는 레지스터 파일 메모리 구조에 관한 것으로, 특히 다수개의 중앙처리 장치(CPU)와 단일 메모리 간에 어드레스, 데이타 및 제어신호 통신에 있어서 다른 중앙처리장치의 동작에 어떠한 영향도 주지않고 원하는 시간에 공용 메모리를 사용할 수 있도록 하는 레지스터 파일 메모리 구조에 관한 것이다.
일반적으로 다수개의 CPU가 1 포트 메모리를 공용으로 사용하는 경우, 어드레스 버퍼 및 데이타 버퍼가 필요하며, 어떤 하나의 CPU가 공용메모리와 통신하는 중 다른 CPU가 공용 메모리를 사용하지 못하도록 하기 위해 별도의 충돌 방지 회로가 필요하다.
이와 같은 CPU가 공용 메모리를 사용하고자 하는 경우, 버스 사용 요구 신호(Bus Request; B/R)를 외부로 출력하며, 외부로부터 버스 사용 허가신호(READY 또는 Acknowledge; /ACK)를 전달받은 후에 버스를 통하여 메모리와 통신할 수가 있다.
전술한 바와 같은 CPU와 메모리간의 통신에 있어서, 특히 디지탈 신호 처리장치(DSP)와 같이 실시간(Real Time)처리를 요하는 경우에, 버스 사용에 많은 시간이 요구되기 때문에, 실질적으로 CPU 동작의 효율이 감소하게 된다.
또한, 선행하는 기술로써 2포트 메모리는 통상적으로 그 용량이 1K×8비트 이상이거나, 또는 4×4 비트 이하의 용량을 가진 실질적으로 CPU간에 정보를 교환하는데 요구되는 메모리의 용량이 16×8 비트 정도의 2포트 메모리 또는 3포트 메모리를 구현하고자 하는 경우에, 1K×8 2포트 메모리를 이용하면 용량이 필요 이상으로 과다하며, 4×4 2포트 메모리를 이용하면 8개의 메모리가 요구됨으로 그 실장 면적이 방대해진다등의 단점이 있었다.
따라서 본 발명은 다수개의 CPU와 한개의 공용 메모리로 구성되는 레지스터 파일 메모리를 구현하고자 하는 경우에, 어떠한 부가적인 버퍼없이도 어드레스, 데이타, 제어신호를 다른 CPU와의 전소에 영향없이 상호 통신할 수 있도록 하여 CPU의 효율을 개선하는 다수개의 포트를 갖는 레지스터 파일 메모리 구조를 제공하는데 그 목적이 있다.
전술한 본 발명의 목적 및 다른 잇점들은 첨부한 도면을 참조한 본 발명의 바람직한 실시예를 통해 명백하게 설명할 것이다.
본 발명에 따른 다수의 포트를 갖는 레지스터 파일 메모리 구조는 다수개의 포트를 갖는 레지스터 파일 메모리 구조에 있어서, 적어도 2개 이상의 어드레스, 데이타, 선택, 판독 및 기록신호를 입력하는 입력단과; 상기 적어도 2개 이상의 입력단을 통해 상기 입력된 데이타를 상기 수신되는 기록신호에 의해 출력하는 출력단과; 상기 데이타의 입력 및 출력을 제어하기 위해 입력 제어 클럭 펄스신호 및 데이타 출력 허용 신호에 대한 제어 신호를 입력하는 제어신호 입력단을 포함하는 것을 특징으로 한다.
이하 본 발명을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
제1도는 본 발명에 따른 다수개의 포트를 갖는 레지스터 파일 메모리 구조에 있어서, 예를 들어, 3포트 레지스터 파일 메모리 구조를 도시한 개략적인 블럭도로서, 도시된 바와 같이 3포트 레지스터 파일 메모리 구조는 3개의 포트(111 내지 115, 116 내지 120, 121 내지 125)를 구비하며, 후술하는 바와 같이 제3도에 도시된 레지스터 파일(310, 320, 330, 340)과 복호기(410, 420, 430)가 내장되어, 동시에 3개의 CPU(제1 내지 제3 CPU)에 의하여 판독 및 기록이 가능하다.
먼저, 제1포트(111 내지 115)는 제1CPU와의 통신을 하기 위한 것으로, 신호선(111)은 제1CPU의 어드레스 신호(0 내지 4), 즉, C1AB[0,4]신호가 통신되는 선을 나타내는데, 신호선(111)을 통하여 통신되는 신호는 3포트 파일 메모리(110) 내의 데이타를 판독할 위치 또는 데이타를 기록, 저장할 위치 지정 신호로써, 후술하는 제3b도의 복호기(410)의 입력(411)으로 작용하여 제3a도의 레지스터 파일(310, 320, 330, 340)중 하나를 지정하며, 동시에 선택된 레지스터 파일내의 8비트 레지스터 16개중 하나를 선택한다.
또한, 신호선(112)은 제1CPU의 데이타신호(0 내지 7), 즉, C1DB[0.7] 신호가 통신되는 선을 나타내는데, 이는 제1CPU에 의해 3포트 파일 메모리(110)에 기록 저장될 데이타 또는 판독되어지는 데이타를 통신하며, 후술하는 제3a도의 신호선(311)과 동일한 신호선이다.
그리고, 신호선(113)은 제1CPU의 선택신호, 즉, /C1CS 신호가 통신되는 신호선을 나타내며, 제1CPU가 3포트 파일 메모리(110)에 데이타를 기록 또는 판독하는 경우 '0'의 신호가 입력되며, 후술하는 제3b도의 신호선(412)과 동일한 신호선이다.
신호선(114)은 제1CPU의 판독 신호, 즉, /C1RD 신호가 통신되는 신호선으로써, 제1CPU가 3포트 파일 메모리(110)로부터 데이타를 판독하는 경우 '0'의 신호가 입력된다.
마지막으로, 신호선(115)은 제1CPU의 기록신호, 즉, /C1WR가 통신되는 선을 나타낸다.
한편, 이러한 신호선들(111,112,113,114,115)을 통하여 전송되는 신호와 이에 따른 동작을 살펴보면 다음과 같다.
전술한 선택신호선(113)으로 입력되는 신호(/C1CS)가 논리 '0'이고, 신호선(114)으로 입력되는 판독신호(/C1RD)가 논리 '0'이면, 전술한 어드레스 신호(C1AB[0,4])에 의해 지정 선택된 레지스터 파일내의 8비트 레지스터의 내용(C1DB[0,7])이 판독되어 전술한 데이타 신호선(112)으로 출력된다.
그리고, 선택 신호선(113)으로 입력되는 신호(/C1CS)가 논리 '0'이고, 신호선(115)으로 입력되는 기록신호(/C1WR)가 논리 '0'이면, 전술한 어드레스 신호(C1AB[0,4])에 의해 선택된 레지스터 파일 위치에 전술한 데이타 신호선(112)으로 수신되는 데이타(C1DB[0,7])를 저장하게 된다.
또한, 제2포트(116 내지 120)는 제2CPU와의 통신을 하기 위한 것으로, 신호선(116)은 제2CPU의 어드레스 신호(0 내지 4), 즉, (C2AB[0,4])신호가 통신되는 선을 나타내는데, 신호선(116)을 통하여 통신되는 신호(C2AB[0,4])는 3포트 파일 메모리(110) 내의 데이타를 판독할 위치 또는 데이타를 기록, 저장할 위치 지정 신호로써, 후술하는 제3b도의 복호기(420)의 입력(421)으로 작용하여 제3a도의 레지스터 파일(310,320) 중 하나를 지정하며, 동시에 선택된 레지스터 파일내의 16개의 8비트 레지스터중 하나를 선택한다.
또한, 신호선(117)은 제2 CPU의 데이타신호(0 내지 7), 즉, (C2DB[0,7])신호가 통신되는 선을 나타내는데, 이는 제2 CPU에 의해 3포트 파일 메모리(110)에 기록 저장될 데이타 또는 판독되어지는 데이타(C2DB[0,7])를 통신하며, 후술하는 제3a도의 신호선(316)과 동일한 신호선이다.
그리고, 신호선(118)은 제2 CPU의 선택신호, 즉 /C2CS 신호가 통신되는 신호선을 나타내며, 제2 CPU가 3포트 파일 메모리(110)에 데이타를 기록 또는 판독하는 경우 '0'의 신호가 입력되며, 후술하는 제3b도의 신호선(422)과 동일한 신호선이다.
신호선(119)은 제2 CPU의 판독신호, 즉, /C2RD 신호가 통신되는 신호선으로써, 제2 CPU가 3포트 파일 메모리(110)로부터 데이타를 판독하는 경우 '0'의 신호가 입력되며, 후술하는 제3b도의 신호선(423)과 동일한 신호선이다.
마지막으로, 신호선(120)은 제2 CPU의 기록신호, 즉, /C2WR가 통신되는 선을 나타내는데, 이는 후술하는 제3b도의 신호선(424)과 동일한 신호선이다.
한편, 이러한 신호선들(116,117,118,119,120)을 통하여 전송되는 신호와 이에 따른 동작을 살펴보면 다음과 같다.
전술한 선택신호선(117)으로 입력되는 신호(/C2CS)가 논리 '0'이고, 신호선(118)으로 입력되는 판독신호(/C2RD)가 논리 '0'이면, 전술한 어드레스 신호(C2AB[0,4])에 의해 지정 선택된 레지스터 파일내의 8비트 레지스터의 내용(C2DB[0,7])이 판독되어 전술한 데이타 신호선(117)으로 출력된다.
그리고, 선택 신호선(117)으로 입력되는 신호(/C2CS)가 논리 '0'이고, 신호선(120)으로 입력되는 기록신호(/C2WR)가 논리 '0'이면, 전술한 어드레스 신호(C2AB[0,4])에 의해 선택된 레지스터 파일 위치에 전술한 데이타 신호선(116)으로 수신되는 데이타(C2DB[0,7])를 저장하게 된다.
제3포트(121 내지 125)는 제3 CPU와의 통신을 하기 위한 것으로, 신호선(121)은 제3 CPU의 어드레스 신호(0 내지 4), 즉, C3AB[0,4] 신호가 통신되는 선을 나타내는데, 신호선(121)을 통하여 통신되는 신호는 3포트 파일 메모리(110)내의 데이타를 판독할 위치 또는 데이타를 기록, 저장할 위치 지정 신호로써, 후술하는 제3b도의 복호기(430)의 입력(431)으로 작용하여 제3a도의 레지스터 파일(330,340)중 하나를 지정하며, 동시에 선택된 레지스터 파일내의 8비트 레지스터 16개중 하나를 선택한다.
또한, 신호선(122)은 제3 CPU의 데이타신호(0 내지 7), 즉, C3DB[0,7]신호가 통신되는 선을 나타내는데, 이는 제3 CPU에 의해 3포트 파일 메모리(110)에 기록 저장될 데이타 또는 판독되어지는 데이타를 통신하며, 후술하는 제3a도의 신호선(319)과 동일한 신호선이다.
그리고, 신호선(123)은 제3 CPU의 선택신호, 즉, /C3CS 신호가 통신되는 신호선을 나타내며, 제3 CPU가 3포트 파일 메모리(110)에 데이타를 기록 또는 판독하는 경우 '0'의 신호가 입력되며, 후술하는 제3b도의 신호선(432)과 동일한 신호선이다.
신호선(124)은 제3 CPU의 판독 신호(/C3RD)가 통신되는 신호선으로서, 제3 CPU가 3포트 파일 메모리(110)로부터 데이타를 판독하는 경우 '0'의 신호가 입력된다.
마지막으로, 신호선(125)은 제3 CPU의 기록신호(/C3WR)가 통신되는 선을 나타낸다.
한편, 이러한 신호선들(121,122,123,124,125)을 통하여 전송되는 신호와 이에 따른 동작을 살펴보면 다음과 같다.
전술한 선택신호선(123)으로 입력되는 신호(/C3CS)가 논리 '0'이고, 신호선(124)으로 입력되는 판독신호(/C3RD)가 논리 '0'이면, 전술한 어드레스 신호(C3AB[0,4])에 의해 지정 선택된 레지스터 파일내의 8비트 레지스터의 내용(C3DB[0,7])이 판독되어 전술한 데이타 신호선(112)으로 출력된다.
그리고, 선택 신호선(123)으로 입력되는 신호(/C3CS)가 논리 '0'이고, 신호선(125)으로 입력되는 기록신호(/C3WR)가 논리 '0'이면, 전술한 어드레스 신호(C3AB[0,4])에 의해 선택된 레지스터 파일 위치에 전술한 데이타 신호선(122)으로 수신되는 데이타(C3DB[0,7])를 저장하게 된다.
다음에, 제2도를 참조하면, 제2도는 본 발명에 따른 16×8 레지스터 파일의 상세한 블럭도로서, 도시된 바와 같이 16×8 레지스터 파일은 16개의 8비트 레지스터(210 내지 360)로 구성된다. 여기서, 8비트 레지스터(210)의 데이타인(DI) 단자에 접속되는 신호선(211)은 데이타 입력신호 라인(0 내지 7)을 나타내며, 8비트 레지스터(210)의 데이타 출력(DO)단자에 접속되는 신호선(213)은 데이타 출력신호(Q0 내지 8)를 나타낸다. 또한 8비트 레지스터((210), (220),…,(360))로의 클럭 펄스(CP)단자로 입력되는 신호선(212), (215), (217)…(243)은 8비트 레지스터((210),(220),…,(360)) 각각의 데이타 입력 제어 클럭 펄스 신호를 나타내며, 8비트 레지스터의 단자(10E)로 입력되는 신호선((214),(216),(218),…,(244))은 각 레지스터에 대한 데이타 출력 허용 신호를 나타낸다.
전술한 바와 같은 형태로 구성되는 16×8 레지스터 파일은, 예를 들어 클럭 신호가 논리 '1' 상태일때, 데이타 입력신호(0 내지 7)의 내용이 신호선(211)을 통해 8비트 레지스터(210) 내부에 저장장되는 반면에, 데이타 출력 허용신호가 '로우'레벨 상태일 때 8비트 레지스터(210)내부에 저장된 정보(데이타 출력신호 0 내지 7)가 신호선(213)을 통해 출력된다.
제3도를 참조하면, 제3도는 본 발명의 바람직한 일실시예로서, 3-포트 레지스터 파일 메모리 구조를 도시한 것이다. 도시된 바와 같이 제3a도에는 8비트 레지스터 16개로 구성된 16×8레지스터 파일 4개가 도시되며 제3b도에는 제어신호 복호기 3개(410 내지 430)가 도시된다.
먼저, 제3a도에서 각각의 레지스터 파일(310,320,330,340)은 동일한 구조를 가지며, 하나의 레지스터 파일은 제2도에서 도시된 바와 같이 16개의 8비트 레지스터로 이루어진다.
신호선(311)은 데이타신호(0 내지 7), 즉, C1DB(0,7) 신호가 통신되는 신호선을 나타내고, 파일 1 내지 4(310 내지 340)에 각각 결합되며, 이는 제1도에 도시된 신호선(112)과 동일한 신호선이다.
신호선(312)은, 레지스터 파일(310)로 입력 제어 클럭 펄스 신호(0 내지 15), 즉, 제1CPU의 입력제어 클럭스신호(0 내지 15(C1CP[0.15]) 신호가 입력되는 신호선을 나타내는데, 이는 후술하는 제3b도의 신호선(415)을 통하여 전송되는 신호(C1CP[0,31])중 16개의 신호인데, 이러한 신호들(C1CP0 내지 C1CP15)은 제2도에 도시된 신호선들(212,215,217,243)을 통하여 8비트 레지스터(210,220,…,230,360)로 제공되어 8비트 레지스터(210,220,230,360)의 클럭펄스 신호((CP0 내지 CP15)의 역할을 한다. 또한, 신호선(313)은 레지스터 파일(330)로 제1 CPU의 입력 제어 클럭 펄스신호(16 내지 31), 즉, (C1CP[16,31]) 신호가 입력되는 신호선을 나타내며, 이러한 신호들(C1CP16 내지 C1CP31)도 제2도에 도시된 신호선들(212,215,217,…,243)을 통하여 8비트 레지스터(210,220,230,…,360)로 제공되어 8비트 레지스터(210,220,230,…360)의 클럭펄스 신호(CP0 내지 CP15)의 역할을 한다.
한편, 신호선(314) 및 (315)는 제1 CPU의 데이타 출력 허용신호(C1OE[0,15], C1OE[16,31]), 즉, 레지스터 파일(320) 및 레지스터 파일(340)에서의 데이타를 출력하기 위한 허용신호(0 내지 15, 16 내지 31)가 전송되는 신호선을 나타내는데, 신호선(314)을 통하여 전송되는 제1 CPU에 데이타 출력 허용신호(C1OE[0,15])들 중 신호(C1OE0)는 제2도에 도시된 신호선(214)을 통하여 전송되는 신호(OE0)의 역할을 수행하고, 신호(C1OE1)는 신호선(216)을 통하여 전송되는 신호(OE1)의 역할을 수행하며, 신호(C1OE15)는 신호선(244)을 통하여 전송되는 신호(OE15)의 역할을 수행한다. 또한 신호선(315)을 통하여 전송되는 제1 CPU의 출력 허용신호(C1OE[16,31])들은 각각, 신호(C1OE16)는 제2도에 도시된 신호선(214)을 통하여 전송되어 신호(OE0)의 역할을 수행하고, 신호(C1OE17)는 제2도에 도시된 신호선(216)을 통하여 전송되어 신호(OE1)의 역할을 수행하며, 신호(C1OE31)는 제2도에 도시된 신호선(244)을 통하여 전송되어 신호(OE15)의 역할을 수행한다.
또한, 신호선(317)은 제2 CPU의 데이타 출력 허용신호(C2CP[0,15])가 전송되는 신호선을 나타내는데, 이러한 제2 CPU의 데이타 출력허용신호는 제3b도의 신호선(426)을 통하여 전송되는 신호와 동일하다. 이러한 각각의 신호들(C2CP0,C2CP1,C2CP2,C2CP15)은 제2도에 도시된 신호선들(214,216,…,244)을 통하여 각각의 8비트 레지스터(210,220,230,…,360)로 전송되어 신호(OE0,OE1,OE2,…,OE15)의 역할을 수행한다.
신호선(318)은, 레지스터 파일(320)로 입력 제어 클럭 펄스 신호(0 내지 15), 즉, 제2 CPU의 입력제어 클럭 펄스신호(0 내지 15(C2CP[0,15]) 신호가 입력되는 신호선을 나타내는데, 이는 후술하는 제3b도의 신호선(425)을 통하여 전송되는 신호(C2CP[0,16])인데, 이러한 신호들(C2CP0 내지 (C2CP15)은 제2도에 도시된 신호선들(212,215,217,…,243)을 통하여 8비트 레지스터(210,220,230,360)로 제공되어 8비트 레지스터(210,220,230,…,360)의 클럭펄스 신호(CP0 내지 CP15)의 역할을 한다.
신호선(320)은 제3 CPU의 데이타 출력허용신호(C3OE[0,15]) 즉, 제3b도의 신호선(436)을 통하여 전송되는 신호와 동일한 신호가 전송되는데, 이 신호들(C3OE0, C3OE1,C3OE2,C3OE15)은 각각 신호선들(214,216,…,244)을 통하여 각각의 8비트 레지스터(210,220,230,…,360)로 전송되어 출력허용신호(OE0,OE1,…,OE15)의 역할을 수행한다.
그리고, 신호선(321)은 제3 CPU의 입력제어 클럭펄스신호(C3CP[0,15]) 즉, 제3b도의 신호선(435)을 통하여 전송되는 신호와 동일한 신호가 전송되는데, 이신호들(C3CP1,C3CP2,C3CP3,C3CP15)은 각각 신호선들(212,215,…,243)을 통하여 각각의 8비트 레지스터(210,220,230,360)로 전송되어 클럭펄스신호(CP0,CP1,…,CP15)의 역할을 수행한다.
한편, 레지스터 파일(310)은 제1 CPU가 제2 CPU로 데이타를 전송할 때 사용되며, 레지스터 파일(320)은 제2 CPU로부터 제1CPU로 데이타를 전송할 때 사용된다. 그리고, 레지스터 파일(330)은 제1 CPU가 제3 CPU로 데이타를 전송할 때 사용되며, 레지스터 파일(340)은 제3 CPU로부터 제1 CPU로 데이타를 전송할 때 사용된다.
제3b도에서, 복호기(410)는 제1 CPU로부터 신호선(111,411)을 통하여 어드레스 신호, 신호선(113,412)을 통하여 선택신호, 신호선(114,413)을 통하여 판독신호 및 신호선(115,414)을 통하여 전송되는 기록신호를 입력으로 하여 제1 CPU가 데이타를 기록저장할 4개의 레지스터 파일(310,320,330,340) 중 하나를 선택하고, 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C1CP[0,31])을 생성하여 신호선(312,313)으로 전송하며, 또한, 제1 CPU가 데이타를 판독할 제3a도의 4개의 레지스터 파일(310,320,330,340)중 하나를 선택하고 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C1CP[0,31])를 생성하여 제3a도의 신호선(314,315)으로 전송한다.
복호기(420)는 제2 CPU로부터 신호선(116,421)을 통한 어드레스신호, 신호선(118,422)을 통한 선택신호, 신호선(119,423)을 통한 판독신호 및 신호선(120,424)을 통한 기록신호를 입력으로 하여 제2 CPU가 데이타를 기록 저장할 제3a도의 2개 레지스터 파일(310,320) 중 하나를 선택하고, 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C2CP[0,15])를 생성하여 제3a도의 신호선(318)으로 전송하며, 또한 제2 CPU가 데이타 판독할 2개의 레지스터 파일(310,320) 중 하나를 선택하고 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C2OE[0,15])를 생성하여 제3a도의 신호선(317)으로 전송한다.
복호기(430)는 제3 CPU로부터 신호선(121,431)을 통한 어드레스신호, 신호선(123,432)을 통한 선택신호, 신호선(124,433)을 통한 판독신호 및 신호선(125,434)을 통한 기록신호를 입력으로 하여 제3 CPU가 데이타를 기록 저장할 제3a도의 2개의 레지스터 파일(330,340) 중 하나를 선택하고, 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C3CP[0,15])를 생성하여 제3a도의 신호선(321)으로 전송하며, 또한, 제3 CPU가 데이타를 판독할 2개의 레지스터 파일(330,340) 중 하나를 선택하고 선택된 레지스터 파일내의 16개의 8비트 레지스터를 선택하기 위한 신호(C3CP[0,15])를 생성하여 제3a도의 신호선(320)으로 전송한다.
한편, 신호선(411)은 어드레스 신호(0 내지 4)가 복호기(410)로 입력되는 신호선을 나타내며, 신호선(412)은 선택신호가 입력되는 복호기(410)신호선을 나타낸다. 또한 신호선(413)은 판독신호가 복호기(410)로 전송되는 선을 나타내며, 신호선(414)은 기록신호가 복호기(410)로 입력되는 신호선을 나타낸다. 신호선(415) 및 (416)은 복호기 (410)로부터 전술한 블럭(310 내지 340)으로 제어 클럭 신호 및 데이타 출력 허용신호를 전달하는 출력선을 나타낸다.
전술한 바와 같이 이루어진 복호기(410)에서 신호선(412)을 통해 입력되는 선택신호가 논리 '0' 상태이고, 신호선(413)을 통해 입력되는 판독신호가 논리 '0'이면, 신호선(411)으로 입력되는 어드레스 신호(0 내지 4)에 따라 32개의 8비트 레지스터중 하나를 선택하고, 선택된 8비트 레지스터를 제어하기 위하여 신호선(416)으로부터의 출력 허용신호중(0 내지 31) 하나가 논리 '0' 상태로 된다.
한편, 출력선(416)을 통해 출력되는 출력 허용신호(0 내지 31)는 전술한 파일(1 내지 4) 각각의 8비트 레지스터에 분리되어 연결되며, 상기 출력 허용신호중(0 내지 31) 하나를 인가받은 8비트 레지스터는 저장되어 있는 데이타 정보를 상기 파일 1(310)의 신호선(311)으로 출력한다.
또한, 신호선(412)으로의 선택신호가 논리 '0'상태이고, 신호선(414)으로의 기록신호가 논리 '0'이면, 신호선(411)으로의 어드레스 신호에 따라 32개의 8비트 레지스터중 하나를 선택하고, 선택된 8비트 레지스터를 제어하기 위하여 신호선(415)을 통해 출력되는 입력 제어 클럭 펄스신호중(0 내지 31) 하나가 논리 '1' 상태로 된다. 여기서, 입력 제어클럭 펄스신호(0 내지 31)는 각각의 8비트 레지스터에 분리되어 연결되어 있으며, 상기 입력 제어 클럭 펄스신호중(0 내지 31) 하나를 인가받은 8비트 레지스터(310)는 신호선(311)으로 입력되는 데이타 정보를 저장하게 된다.
또한, 본 발명에 따르면, 각각의 레지스터 파일은 제2도에 도시된 바와 같이 16개의 8비트 레지스터로 이루어지며 각각의 8비트 레지스터에는 8개의 데이타 입력신호선(211)과, 8개의 데이타 출력신호선(213), 1개의 입력 제어클럭펄스신호, 및 1개의 데이타 출력허용신호가 접속된다.
한편, 상술한 바와 같이, 본 발명은 각각의 포트마다 하나의 레지스터가 접속되어 사용되므로, 2개의 CPU에서 메모리의 동일한 어드레스에 데이타를 기록(WRITE)할 경우에도, 2개의 CPU로부터 제공되는 데이타들의 충돌이 발생하지 않는다. 즉, 2개의 CPU로부터 제공되는 데이타를 공용의 메모리의 동일한 어드레스에 동시에 기록할 수 있다.
따라서, 본 발명에 따른 다수의 포트를 갖는 레지스터 파일 메모리 구조에 의하면, 공용 메모리를 다른 CPU의 동작에 전혀 무관하게 요구하는 시간에 사용할 수 있게 하여 CPU의 효율을 개선하는 잇점이 있다. 또한, 다수개의 CPU와 1개의 공용 메모리간의 통신을 어떠한 별도의 장치를 부가하지 않고도 어드레스 데이타, 제어신호를 연결하여 통신하므로써 부품 소요 갯수 및 실장 면적을 극소화할 수 있을 뿐 만 아니라 2개의 CPU에서 동일 어드레스에 동시에 데이타를 기록하고자 할 경우에도 데이타의 충돌없이 데이타를 기록할 수 있는 커다른 잇점이 있다.

Claims (4)

  1. 다수개의 포트를 갖는 레지스터 파일 메모리 구조에 있어서, 적어도 2개 이상의 어드레스, 데이타, 선택, 판독 및 기록신호를 입력하는 입력단과; 상기 적어도 2개 이상의 입력단을 통해 상기 입력된 데이타를 상기 수신되는 기록신호에 의해 출력되는 출력단과; 상기 데이타의 입력 및 출력을 제어하기 위해 입력 제어 클럭펄스 신호 및 데이타 출력 허용 신호에 대한 제어신호를 입력하는 제어신호 입력단을 포함하는 레지스터 파일 메모리 구조.
  2. 제1항에 있어서, 상기 입력 제어 클럭 펄스신호 및 데이타 출력 허용신호 생성은, 상기 적어도 2개 이상의 어드레스, 데이타, 판독 및 기록신호를 수신하여 각기 대응하는 제어 클럭 펄스 및 데이타 출력 허용신호를 생성하는 적어도 2개 이상의 제어신호 복호기로 구성됨을 특징으로 하는 레지스터 파일 메모리 구조.
  3. 제2항에 있어서, 상기 어드레스, 데이타 및 제어신호를 각 포트별로 동작 분리되도록 구성됨을 특징으로 하는 레지스터 파일 메모리 구조.
  4. 제2항에 있어서, 상기 판독 및 기록신호의 동작은 갈 포트별로 분리되어 동작함을 특징으로 하는 레지스터 파일 메모리 구조.
KR1019930031728A 1993-12-30 1993-12-30 다수개의 포트를 갖는 레지스터 파일 메모리 구조 Expired - Fee Related KR970002187B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930031728A KR970002187B1 (ko) 1993-12-30 1993-12-30 다수개의 포트를 갖는 레지스터 파일 메모리 구조

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930031728A KR970002187B1 (ko) 1993-12-30 1993-12-30 다수개의 포트를 갖는 레지스터 파일 메모리 구조

Publications (2)

Publication Number Publication Date
KR950020097A KR950020097A (ko) 1995-07-24
KR970002187B1 true KR970002187B1 (ko) 1997-02-25

Family

ID=19374679

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930031728A Expired - Fee Related KR970002187B1 (ko) 1993-12-30 1993-12-30 다수개의 포트를 갖는 레지스터 파일 메모리 구조

Country Status (1)

Country Link
KR (1) KR970002187B1 (ko)

Also Published As

Publication number Publication date
KR950020097A (ko) 1995-07-24

Similar Documents

Publication Publication Date Title
US5375089A (en) Plural port memory system utilizing a memory having a read port and a write port
US6483183B1 (en) Integrated circuit (IC) package with a microcontroller having an n-bit bus and up to n-pins coupled to the microcontroller
US4172283A (en) Computer system comprising at least two individual computers and at least one system bus bar
US6308244B1 (en) Information processing apparatus with improved multiple memory access and control
EP0217479A2 (en) Information processing unit
KR970002187B1 (ko) 다수개의 포트를 갖는 레지스터 파일 메모리 구조
US5349693A (en) Control circuit for digital data transfer
US5428801A (en) Data array conversion control system for controlling conversion of data arrays being transferred between two processing systems
JPH0512883A (ja) シーケンシヤルメモリ
EP0789363B1 (en) Memory system and data communications system
JPH0227759B2 (ko)
US4775929A (en) Time partitioned bus arrangement
JPH0160864B2 (ko)
SU822290A1 (ru) Полупроводниковое запоминающееуСТРОйСТВО
JPH08235054A (ja) 共有メモリ
KR100361657B1 (ko) 아이디이 타입의 하드 디스크 장치 및 그 제어 방법
KR920001543Y1 (ko) 엘리베이터 시스템의 데이타 보호회로
US20020125501A1 (en) Integrated circuit
KR960003973B1 (ko) 감시제어부와 레지스터간 데이타 교환시스템의 레지스터장치
US6191993B1 (en) First in first out memory circuit
KR900003590B1 (ko) 원 보드 메모리의 듀얼 포트 제어회로
JPH03116350A (ja) データ転送のバス構造
JPS6211753B2 (ko)
JPH01142849A (ja) 加入者線信号装置
JPS58115674A (ja) 記憶装置

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

St.27 status event code: A-2-2-Q10-Q13-nap-PG1605

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20000226

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20000226

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000