KR970006644B1 - 버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치 - Google Patents

버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치 Download PDF

Info

Publication number
KR970006644B1
KR970006644B1 KR1019930018516A KR930018516A KR970006644B1 KR 970006644 B1 KR970006644 B1 KR 970006644B1 KR 1019930018516 A KR1019930018516 A KR 1019930018516A KR 930018516 A KR930018516 A KR 930018516A KR 970006644 B1 KR970006644 B1 KR 970006644B1
Authority
KR
South Korea
Prior art keywords
bus
data
instruction
address
request
Prior art date
Application number
KR1019930018516A
Other languages
English (en)
Other versions
KR940007669A (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 KR940007669A publication Critical patent/KR940007669A/ko
Application granted granted Critical
Publication of KR970006644B1 publication Critical patent/KR970006644B1/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/36Handling requests for interconnection or transfer for access to common bus or bus system
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7817Specially adapted for signal processing, e.g. Harvard architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Bus Control (AREA)

Abstract

내용없음.

Description

버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치
제1도는 실시예의 일구성을 표시한 블록도.
제2도는 실시예에 있어서의 버스제어부의 일구성을 표시한 블록도.
제3도는 실시예에 있어서의 버스제어부내의 억세스공간판정회로의 일예를 표시한 회로도.
제4도는 실시예에 있어서의 버스제어부내의 버스아비터(Bus Arbiter)의 일예를 표시한 회로도.
제5도는 실시예에 있어서의 버스제어부내의 버스상태관리회로의 일예를 표시한 회로도.
제6도는 실시예에 있어서의 버스제어부내의 버스제어신호생성회로의 일예를 표시한 회로도.
제7도는 실시예에 있어서의 버스제어부내의 버스절환수단제어신호생성회로의 일예를 표시한 회로도.
제8도는 실시예에 있어서의 버스제어부내의 버스개방요구검출회로의 일예를 표시한 회로도.
제9도는 실시예에 있어서의 버스제어부내의 주변회로억세스금지요구검출회로의 일예를 표시한 회로도.
제10도는 메모리공간의 할당의 예를 표시한 설명도.
제11도는 실시예에 있어서의 내장 ROM어드레스버스와 내장 RAM어드레스버스를 단접(斷接)하는 버스절환수단의 일예를 표시한 회로도.
제12도는 실시예에 있어서의 내장 ROM데이터버스와 내장 RAM데이터어드레스버스를 단접하는 버스절환수단의 일예를 표시한 회로도.
제13도는 실시예에 있어서의 내장 RAM어드레스버스와 주변회로어드레스버스를 단접하는 버스절환수단의 일예를 표시한 회로도.
제14도는 실시예에 있어서의 내장 RAM데이터버스와 주변회로어드레스버스를 단접하는 버스절환수단의 일예를 표시한 회로도.
제15도는 실시예에 있어서의 내장 RAM어드레스버스와 외부어드레스버스를 단접하는 버스절환수단의 일예를 표시한 회로도.
제16도는 실시예에 있어서의 내장 RAM데이터버스와 외부어드레스버스를 단접하는 버스절환수단의 일예를 표시한 회로도.
제17도는 버스상태신호의 비트할당의 예를 표시한 설명도.
제18도는 실시예에 있어서의 내장 ROM으로부터의 명령페치(fetch)의 동작예를 표시한 타이밍도.
제19도는 실시예에 있어서의 내장 RAM에 대한 로우드 및 스토어의 동작예를 표시한 타이밍도.
제20도는 실시예에 있어서의 주변회로에 대한 로우드 및 스토어의 동작예를 표시한 타이밍도.
제21도는 실시예에 있어서의 내장 ROM으로부터의 명령페치와 내장 RAM으로부터의 로우드를 동시에 행하는 동작예를 표시한 타이밍도.
제22도는 실시예에 있어서의 내장 RAM으로부터의 명령페치와 내장 ROM으로부터의 로우드를 동시에 행하는 동작예를 표시한 타이밍도.
제23도는 실시예에 있어서의 외부데이터버스가 8비트의 경우의 로우드의 동작예를 표시한 타이밍도.
제24도는 실시예에 있어서의 버스절환수단의 제어를 비이트단위로 행하였을때의 데이터억세스의 동작예를 표시한 타이밍도.
제25도는 실시예에 있어서의 버스개방하였을때의 칩외부로부터의 데이터억세스의 동작예를 표시한 타이밍도.
제26도는 실시예에 있어서의 내장의 주변회로 대신에 칩외부의 주변회로로부터의 데이터의 로우드하는 동작예를 표시한 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
1 : 디코우더부 102 : PC계산부
103 : 데이터패스부 104 : 내장 ROM
105 : 내장 RAM 106 : 주변회로
107 : 버스인터페이스부 111 : 명령페치버퍼
112 : 명령어드레스버퍼 113 : 오퍼런드어드레스버퍼
114 : 로우드버퍼 115 : 스토어버퍼
116 : 외부버스인터페이스부
117 : 제1버스절환수단(제1버스스위치)
118 : 제2버스절환수단(제2버스스위치) 120 : 버스제어부
201 : 억세스공간판정회로 202 : 버스아아비터
203 : 버스상태관리회로 204 : 버스제어신호생성회로
205 : 버스절환제어신호생성회로 206 : 버스개방요구검출회로
207 : 주변회로억세스금지요구검출회로
본 발명은 프로세서코어, 메모리 및 DMA 등의 주변기능을 가진 마이크로콘트로올러에 관한 것으로서, 버스구성 및 버스제어방식의 개량에 관한 것이다.
종래의 마이크로콘트로올러는, 프로세서코어, 프로그램을 격납하는 내장 ROM, 데이터를 격납하는 내장 RAM 및 DMA 등의 내장주변회로가, 동일한 버스에 접속된 것(종래기술의 제1의 예)이 있다.
이상과 같은 구성의 마이크로콘트로올러에서는, 버스제어회로가 버스의 조정(Aribtration)을 행하고, 버스의 충돌(Bus conflict)이 발생하지 않는다. 즉, 내장 ROM으로부터의 명령전송(Instruction Fetch)과, 내장 RAM에 대한 데이터억세스는 동시에 발생하지 않도록 조정하고 있다.
또, 프로그램을 격납하는 내장 ROM과, 데이터를 격납하는 내장 RAM이 별도의 버스에 접속된 구성의 것(종래기술의 제2의 예)도 있다.
이 종류의 마이크로콘트로올러에서는, 내장 RAM으로부터 명령해독부에의 명령전송과 내장 RAM에 대한 연산실행부로부터의 데이터억세스를 동시에 행하는 일이 가능하다.
그러나, 종래기술의 제1의 예로 표시한 마이크로콘트로올러에서는, 프로세서코어의 처리능력에는 여력(余力)이 있어도 버스의 전송능력의 한계에 의해, 마이크로콘트로올러 자체의 성능을, 이제 이 이상 향상시킬 수 없다고 하는 문제가 있었다. 구체적으로 말하면, 프로세서코어가 내장 ROM으로부터 명령코드를 버스를 개재해서 페치(fetch)하는 동안은, 내장 RAM이나 내장 주변회로에 대해서 억세스할 수는 없다. 또, 프로세서코어가 내장 RAM에 데이터를 전송하는 동안은, 내장 ROM으로부터 명령코드를 페치할 수 없다.
또, 종래기술의 제1예에서 표시한 마이크로콘트로올러에 있어서는, 내부어드레스버스, 내부데이터버스에 다수의 자원이 접속되기 때문에, 버스의 부하가 무거워지고, 이에 의해 버스의 부하용량이 증대하므로서 파형납이 발생하므로, 클록주파수를 향상시킬 수 없다고 하는 문제도 가지고 있었다.
종래기술의 제2예에서 표시한 마이크로콘트로올러에서는, 연산실행부는 내장 RAM에 대해서 데이터를 전송하기 위해서, 내장 RAM에 접속되어 있는 버스에 접속되어 있으므로, 내장 ROM에 격납하는 데이터(예를들면, 명령실행에 사용하는 정수데이터등)를 연산실행부에 전송할 수 없다로 하는 문제, 또는 일단 데이터를 명령해독부에 전송한 후에, 명령해독부로부터 연산실행부로 데이터를 전송하기 위해서 현저한 성능열화를 초래한다고 하는 문제가 있었다.
또, 상기 문제점에 추가해서, 종래기술의 제1 및 제2예에 표시한 마이크로콘트로올러에 있어서, 내장하고 있는 주변회로를 별개의 기능을 가진 회로에 용이하게 대체할 수 없다고 하는 문제도 가지고 있었다.
본 발명의 목적은, 버스의 충돌을 회피하고, 버스의 데이터전송처리능력을 향상시키므로서, 또 버스상의 부하를 경감하고, 클록주파수를 향상시키므로서, 데이터처리의 성능을 향상시키는 버스제어장치를 제공하는 것이다.
또, 내장하는 주변회로를 다른기능을 가진 회로와 용이하게 대체하는 버스제어장치를 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명은, 다음 구성을 가지므로서 이루어진다.
① 명령(Instruction)을 해독하는 명령해독수단과, 프로그램을 격납하는 명령기억수단과, 명령해독수단과 명령기억수단을 접속하는 어드레스 m비트, 데이터 n비트의 제1버스와 명령해독수단의 해독결과에 따라서 명령을 실행하는(Execute) 명령실행수단과, 명령실행시에 사용하는 데이터를 격납하는 데이터기억수단과, 명령실행수단과 데이터기억수단을 접속하는 어드레스 m비트, 데이터 n비트의 제2버스와 제1버스와 제2버스를 전기적으로 접속 또는 절단하는 제1절환수단을 구비하고, 명령실행수단이 명령기억수단에 격납된 프로그램을 명령실행수단에 전송하는 전송요구를 냈을 경우, 및 명령해독수단이 데이터기억수단에 격납된 데이터를 명령해독수단으로 전송하는 제2전송요구를 냈을 경우는, 제1절환수단에 의해 제1버스와 제2버스를 접속하고, 명령해독수단이 명령기억수단에 격납된 프로그램을 명령해독수단에 전송하는 제3의 전송요구를 냈을 경우, 명령실행수단이 데이터기억수단에 격납된 데이터를 명령실행수단에 전송하는 제4의 전송요구를 냈을 경우, 및 제3, 제4의 전송요구가 동시에 나왔을 경우는, 제1절환수단에 의해 제1버스와 제2버스를 절단하는 버스제어수단을 설치한 구성을 가진다.
② 또, 본 발명은 제4버스에 접속하여, 제1데이터처리수단으로 행하는 처리이외의 데이터처리를 행하는 제2데이터처리수단과, 제1데이터처리수단의 동작을 금지하는 요구를 내는 데이터처리금지수단과, 그 금지요구를 검출하는 데이터처리금지요구검출수단과, 데이터처리금지요구검출수단이 금지요구를 검출했을때에, 제5의 전송요구가 내어졌을 경우는, 제1, 제3의 절환수단에 의해 제1버스, 제2버스, 및 제4버스를 접속하여, 제2절환수단에 의해 제2버스와 제3버스를 절단하고, 제2데이터처리수단으로부터 명령해독수단으로 데이터를 전송하고, 제6의 전송요구가 내어졌을 경우, 및 제3, 제6의 전송요구가 동시에 내어졌을 경우는, 제3절환수단에 의해 제2버스와 제4버스를 접속하여, 제1, 제2절환수단에 의해 제1, 제2, 제3버스를 절단하여, 제2데이터처리수단과 명령실행수단 사이에서 데이터를 전송하는 제어수단을 설치한 구성을 가진다.
③ 또한, 상기 ①의 구성은, 명령(Instruction)을 해독하는 명령해독수단과, 프로그램을 격납하는 명령기억수단과, 명령해독수단과 명령기억수단을 접속하는 어드레스 p비트, 데이터 q비트의 제1버스와, 명령해독수단의 해독결과에 따라서 명령을 실행하는(Execute) 명령실행수단과, 명령실행시에 사용하는 데이터를 격납하는 데이터기억수단과, 명령실행수단과 데이터기억수단을 접속하는 어드레스 p비트, 데이터 q비트의 제2버스와, 제1버스와 제2버스를 전기적으로 접속 또는 절단하는 제1절환수단에 있어서, 제1절환수단에 의해 제1버스와 제2버스의 r비트(1rq-1)의 데이터버스를 절단하고, 제1버스와 제2버스의(q-r)비트의 데이터버스를 접속하여, 명령기억수단에 격납된 r비트의 데이터를 명령기억수단으로부터 명령해독수단에, 명령기억수단에 격납된 (q-r )비트의 데이터를 명령기억수단으로부터 명령실행수단에 동시에 전송하는 버스제어수단을 구비한 구성으로 해도 된다.
상기 구성에 의해, 절환수단에 의해 제1버스와 제2버스가 분리되어 있는 경우는, 명령해독수단은 명령기억수단으로부터 명령을 억세스할 수 있고, 명령실행수단은 데이터기억수단에 대해서 데이터를 억세스할 수 있고, 또한 동시에 억세스하는 일이 가능해진다. 절환수단에 의해 제1버스와 제2버스가 접속되어 있는 경우는, 명령해독수단은 명령기억수단, 및 데이터기억수단의 양쪽에 억세스할 수 있다. 이에 의해, 버스상의 자원에 자유롭게 억세스하는 동시에, 버스이 데이터전송처리능력을 향상시킬 수 있다. 또, 버스를 분리하므로서, 버스에 대한 부하를 경감할 수 있고, 클록주파수를 용이하게 향상할 수 있고, 성능향상을 도모할 수 있다.
또, 데이터처리금지수단을 설치하므로서, 제3버스에 접속되어 있는 제1데이터처리수단을, 제2데이터처리수단에 의해, 성능을 열화시키지 않고 용이하게 대체할 수 있다.
이하, 본 발명의 제1실시예의 버스제어장치에 대해서, 도면을 참조하면서 설명한다.
제1도는 본 발명의 실시예에 있어서의 버스제어장치의 일구성을 표시한 블록도이다.
제1도에 있어서, (101)은 디코우더부(Instruction Decoder)로서, 명령을 해독하고, 프로세서코어의 각부에의 제어신호를 출력한다.
(102)는 PC계산부이며, 디코우더부(101)에서 해독할 다음 명령의 어드레스를 계산하고, 주로 후술하는 내장 ROM(104)에 억세스한다.
(103)은 데이터페이스부이며, 디코우더부(101)로부터 출력되는 제어신호에 의거하여, 연산이나 처리를 행하고, 후술하는 내장 RAM(105), 내장 ROM(104), 주변회로(106)에 억세스한다. 상기한 디코우더부(101), PC계산부(102), 및 데이터패스부(103)를 합쳐서 프로세서코어라고 호칭한다.
(104)는 내장 ROM이고, 명령코우드로 이루어진 프로그램을 격납하고 있고, PC계산부(102)나 데이터패스부(103)로부터 억세스된다. 상기 내장 ROM에 접속되고 있는 어드레스를 내장 ROM어드레스버스, 내장 ROM에 접속되고 있는 데이터버스를 내장 ROM데이터버스라고 호칭한다.
(105)는 내장 RAM이며, 데이터를 격납하고, 주로 데이터패스부(103)로부터 억세스된다. 상기 내장 RAM에 접속되어 있는 어드레스버스를 내장 RAM어드레스버스, 내장 RAM에 접속되어 있는 데이터버스를 내장 RAM데이터버스라고 호칭한다.
(106)의 주변회로(Peripherals)이며, DMA, 타이머 등의 주변기능을 가진다. 이 주변회로에 접속되어 있는 어드레스버스를 주변회로어드레스버스, 주변회로에 접속되어 있는 데이터버스를 주변회로데이터버스라고 호칭한다.
(107)은 매스인터페이스부이며, 111∼120으로 이루어지고, 어드레스버스 및 데이터버스를 개재해서, 프로세서코어(디코우더부(101), PC계산부(102) 및 데이터패스부(103)와, 내장 ROM(104), 내장 RAM(105), 주변회로(106), 및 칩외부에 접속되는 메모리(이후, 외부메모리라고 호칭한다)와의 사이에서, 데이터의 수급(受汲)을 행한다.
(111)은 명령페치버퍼이며, 페치한 명령을 일시 유지한다.
(112)는 명령어드레스부버퍼이며, 페치하는 명령의 어드레스를 일시 유지한다.
(113)은 오퍼런드어드레스버퍼이며, 로우드, 스토어하는 데이터의 어드레스를 일시 유지한다.
(114)는 로우드버퍼이며, 데이터패스부(103)에의 로우드데이터를 일시 유지한다.
(115)는 스토어버퍼이며, 데이터패스부(103)로부터 출력되는 스토어데이터를 일시 유지한다.
(116)은 외부버스인터페이스부이며, 내부어드레스버스, 내부데이터버스와, 칩외부의 외부어드레스버스, 외부데이터버스와의 인터페이스를 행한다.
(117)은 제1버스절환수단(이하, 제1버스스위치하고 호칭한다)이며, 내장 ROM어드레스버스(AROMBUS[15 : 0])및 내장 ROM데이터버스(DROMBUS[15 : 0])와, 내장 RAM어드레스버스(ARAMBUS[15 : 0]) 및 내장 RAM어드레스버스(DRAMBUS[15 : 0])을 접속하거나, 분리하거나 한다.
(118)은 제2버스절환수단(이하, 제2버스스위치라고 호칭한다)이며, 내장 RAM어드레스버스 및 내장 RAM데이터버스와, 주변회로어드레스버스(APERI BUS[15 : 0]) 및 주변회로데이터버스(DPERI BUS[15 : 0])를 접속하거나, 분리하거나 한다.
(120)은 버스제어부이며, 내장 ROM(104), 내장 RAM(105), 주변회로(106), 외부메모리에 대한 데이터억세스의 제어나, 제1버스스위치(117), 및 제2버스스위치(118)의 동작의 제어를 행한다.
제2도는 버스제어부(120)의 상세한 일구성예를 표시한 블록도이며, 제3도 제9도는 버스제어부(120)내의 각 블록의 구체적 회로예이다. 여기서, 어드레스버스, 데이터버스의 버스폭은, 간단하게 하기 위하여 16비트로 하고, 내장 ROM(104), 내장 RAM(105), 주변회로(106), 및 외부메모리는, 제10도는 표시한 메모리공간에 할당되어 있다고 한다. 또, 제11도∼제14도는 제1버스스위치(117), 및 제2버스스위치(118)의 구체적 회로예이며, 제15도, 제16도는 외부버스인터페이스부(116)의 구체적 회로예이다.
(201)은 억세스공간판정회로이며, 명령페치의 경위 명령어드레스(IA[15 : 12]) 로우드, 스토어의 경우의 오퍼런드어드레스(OA[15 : 12]), 버스개방시에 칩외부에 접속되는 DMA(이후, 외부 DMA라고 호칭한다)등으로부터 내장자원에의 억세스하는 경우의 어드레스(ARAMBUS[15 : 12])를 해독하고, 억세스하는 공간을 표시하는 억세스공간식별신호(IROM1, IROM2, IRAM1, IPER11, IEXT1, DROM1, DPER11, DEXT1, DEXT2, EROM1, ERAM1, EPER11, EEXT1)를 출력한다.
(202)는 버스아아비터(BUS Arbvitor)이며, 명령페치요구신호(IFREQ), 로우드요구신호(OFREQ), 스토어요구신호(STPEQ)를 입력하고, 버스조정을 행하여, 명령페치개시신호(IFSTRT), 로우드개시신호(OFSTRT), 및 스토어개시신호(STSTRI)를 출력한다.
(203)은 버스상태관리회로이며, 제17도의 표로 표시한 버스상태신호(BUSST[3 : 0])를 출력한다.
(204)는 버스제어신호생성회로이며, 내장 ROM(104), 내장 RAM(105), 주변회로(106), 외부메모리의 각각에 대해서, 어드레스스트로브신호(NROMAS, NRAMA S, NPERIAS, NEXTAS), 리이드이네이블신호(NROMRE, NRAMRE, NPERIRE, NEXTRE), 라이트이네이블신호(NROMWE, NRAMWE, NPERIWE, NEXTWE), 억세스사이즈신호(NROMWD, NRAMWD, NPERIWD, NEXTWD)를 출력한다.
(205)는 버스절환제어신호생성회로이며, 제1버스스위치(117), 및 제2버스스위치(118)에 대한 제어신호(NAROAM, NARAOM, NDROAMU, NDROAML, NDRAOM, NDRAPER, NDPERAM)를 출력한다. (206)은 버스개방요구검출회로이며, 버스개방요구신호(NRELREQ)를 입력하고, 버스개방신호(BUSREL)를 버스상태관리회로(203)에 출력하여, 수리되었을 경우에는, 버스개방수리신호(NRELACK)를 출력한다.
(207)은 주변회로억세스금지요구검출회로이며, 주변회로에의 억세스의 금지를 요구하는 주변회로억세스금지요구신호(INHREQ)를 입력하여, 버스제어신호생성회로(204), 버스절환제어신호생성회로(205)에 대해서 주변회로금지신호(IOINH)를 출력한다.
단 제1실시예에서는, 버스제어부(120)에의 입력신호인 BUS 8BIT, DFU, DF L, NRELREQ, NINHREQ는 항상 부정되어 있는 것으로 한다.
이상과 같이 구성된 정보처리장치에 대해서, 이하, 기본적인 버스억세스를 예로 들어서, 타이밍도를 참조하면서, 그 동작에 대해서 설명한다.
먼저, 내장 ROM(104)으로부터 명령을 페치하는 경우에 대해서, 제18도의 타이밍도를 사용해서 설명한다.
PC계산부(102)는, 다음 명령 또는 분기선(先)의 명령어드레스(IA[15 : 0])를 계산하여, 명령페치요구신호(IFREQ)와 동시에, 그 명령어드레스를 T02타이밍으로 출력한다. 이때 억세스공간판정회로(201)는 명령어드레스를 해독하여, 명령이 내장 RO M으로부터 페치되는 것을 판별하고, 내장 ROM 명령엑세스 신호(IROM2)를 TO2 타이밍에, 내장 ROM 명령억세스신호(IROM1)를 T11타이밍으로 어서트(assert)한다. 버스아아비터(202)는, 명령페치요구신호만이 어서트되므로써, 명령페치개시신호(IFSTRT)를 T02타이밍으로 어서트하고, 명령페치요구수리신호(IFACK)를 T11타이밍으로 어서트한다. 버스상태관리회로(203)는, 명령페치개시신호가 어스트되므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 명령만의 전송상태(BUSST[3 : 0]=0100)로 천이(遷移)한다. 버스상태신호가 명령만의 전송상태가 된 것으로써, 버스사이클이 개시되고, 명령어드레스를 명령어드레스버퍼(112)에 유지하고, 내장 ROM어드레스버스에 출력한다.
버스제어신호생성회로(204)는, 버스상태신호가 명령만의 전송상태로 내장 ROM 명령억세스신호가 어서트되어 있으므로, ROM 제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NROMAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것의 표시하는 억세스사이즈신호(NROMWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NROMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호와 내장 ROM 명령억세스신호로부터, 내장 ROM에 억세스하는 것을 판별하고, T11타이밍으로 버스스위치(117)에 대한 버스절환제어신호(NAROAM, NARAOM, NDROAMU, NDROAML, NDRAOM)를 전부 부정하므로서 버스스위치(117)를 끊고, 내장 ROM어드레스버스 및 내장 ROM데이터버스와 내장 RAM어드레스버스 및 내장 RAM데이터버스를 분리한다. 내장 ROM(104)는, ROM제어신호에 의거하여, 어드레스에 대응하는 명령을 판독하여, T12타이밍으로 내장 ROM데이터버스에 출력한다. 그리고 리이드이네이블신호가 부정하는 타이밍으로 명령을 내장 ROM데이터버스로부터 명령페치버퍼(111)에 래치하고, 디코우더부(101)에 출력하여, 디코우더부에서 명령의 해독을 행한다.
이어서, 데이터패스부(103)가 내장 RAM(105)으로부터 데이터를 로우드 및 스토어하는 경우에 대해서, 제19도의 타이밍도를 사용해서 설명한다.
데이터패스부(103)는, 로우드해야할 데이터의 오퍼런드어드레스(OA[15 : 1])를 계산하여, 로우드요구신호(OFREQ)와 동시에, 오퍼런드어드레스를 T02타이밍으로 출력한다. 이때, 억세스공간판정회로(201)는 오퍼런드어드레스를 해독하여, 데이터가 내장 RAM으로부터 리이드되는 것을 판별하여, 내장 ROM데이터억세스신호(DROMI)를 T11타이밍에 어서트한다. 버스아아비터(202)는, 리이드요구신호만이 어서트되므로서, 로우드개시신호(OFSTRT)를 T02타이밍으로 어서트한다. 버스상태관리회로(203)는, 리이드개시신호가 어서트되므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 오퍼런드만의 전송상태(BUSST[3 : 0]=0010)로 천이한다. 버스상태신호가 오퍼런드만의 전송상태로 되므로서, 버스사이클이 개시되고, 오퍼런드어드레스를 오퍼런드어드레스버퍼(113)에 유지하고, 내장 RAM어드레스버스에 출력한다. 버스제어신호생성회로(204)는, 버스상태신호가 오퍼런드만의 전송상태로, 내장 RAM데이터억세스신호가 어서트되고 있으므로, RAM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시한 어드레스스트로브신호(NRAMAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NRAMWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NRAMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호와 내장 RAM데이터억세스신호로부터, 내장 RAM에 억세스하는 것을 판별하고, T11타이밍으로 버스스위치(117),(118)에 대한 버스절환제어신호(NAROAM, NARAOM, NDOAMU, NDROAML, NDRAOM, NDRAPER, NDPERAM)를 전부 부정하므로서 버스스위치(117),(118)를 끊고, 내장 RAM 어드레스 및 내장 RAM 데이타버스와 주변회로어드레스버스 및 주변회로 데이타가 분리된다. 내장 ROAM어드레스버스 및 내장 RAM데이터버스와 내장 RAM어드레스버스 및 내장 RAM데이터버스가 분리되고, 내장 RAM(105)은, RAM제어신호에 의거하여, 어드레스에 대응하는 데이터를 판독하고, T12타이밍으로 내장 RAM데이터버스에 출력한다. 그리고 리이드이네이블신호를 부정하는 타이밍으로 데이터를 내장 RAM데이터버스로부터 로우드버퍼(114)에 래치하고, 데이터패스부(103)에 출력한다.
또, 데이터패스부(103)가 내장 RAM(105)에 데이터를 스토어하는 경우는, 상기 데이터로우드에 있어서 어드레스를 오퍼런드어드레스버퍼(113)에 유지하는 T21타이밍으로, 스토어데이터를 스토어버퍼(115)에 유지한다. 그리고, 버스제어신호생성회로(204)가 내장 RAM(105)에 대해서 RAM제어신호를 출력, 즉, 어드레스스트로브신호(NRAMAS)를 T21타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NRAMWD)를 T21타이밍으로 어서트하고, 리이트사이클인 것을 표시한 라이트이네이블(NRAMRE)를 T22타이밍으로 어스트한다. 그리고, 어퍼런드어드레스를 T21타이밍으로 내장 RAM 어드레스번스에, 스토어데이터를 T22 타이밍으로 내장 RAM데이터버스를 출력한다. 내장 RAM(105)은 RAM제어신호에 의거하여, 어드레스에 대응하는 내장 RAM에 내장 RAM데이터버스상의 데이터를 라이트이네이블신호를 부정하는 타이밍으로 기록한다.
다음에, 데이터패스부(103)가 주변회로(106)로부터 데이터를 로우드 및 스토어하는 경우에 있어서, 제20도의 타이밍도를 사용해서 설명한다.
기본적으로 상기 내장 RAM(105)에 대한 억세스와 마찬가지이며, 다른 점은 버스제어부(120)에 의한 버스제어신호의 제어와 버스스위치(117),(118)의 제어이다. 주변회로(106)를 억세스하는 경우, 버스제어신호생성회로(204)는, 버스상태신호가 오퍼런드만의 전송상타로, 주변회로데이터억세스신호(DPER11)가 어스트 되어 있으므로, 주변회로제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NPERIAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NPERIWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 라이드이네이블신호(NPERIRE)를 T12타이밍으로 어서트한다. 이와동시에, 버스절환제어신호생성회로(205)는, 버스상태신호와 주변회로데이터억세스신호로부터, 주변회로(106)에 억세스하는 것을 판별하고, T11타이밍으로 NAROAM, NARAOM, NDROAMU, NDROAML, NDRAOM의 버스절환제어신호를 전부 부정하므로서 버스스위치(117)를 끊고, NDRAPER, NDPERAM의 버스절환제어신호를 어스트하므로서 버스스위치(118)를 접속하도록 제어한다.
즉, 내장 ROM어드레스버스 및 내장 ROM데이터버스와 내장 RAM어드레스 및 내장 RAM데이터버스와는 분리하고, 내장 RAM어드레스버스 및 내장 RAM데이터버스와 주변회로어드레스버스 및 주변회로데이터버스는 접속한다. 이에 의해, 오퍼런드어드레스버퍼(113)로부터 출력한 어드레스는 내장 RAM어드레스버스 및 주변회로어드레스버스를 개재해서, 주변회로에 공급된다. 주변회로(106)는, 주변회로제어신호에 의거하여, 어드레스에 대응하는 데이터를 T12타이밍으로 주변회로데이터버스로 출력한다. 그리고, 리이드이네이블신호를 부정하는 타이밍으로, 내장 RAM데이터버스를 개재해서 데이터를 로우드버퍼(114)에 유지하고, 데이터패스부(103)에 출력한다.
또, 데이타패스부(103)가 주변회로(106)에 데이터를 스토어하는 경우는, 상기 데이터로우드에 있어서 어드레스를 오퍼런드어드레스버퍼(113)에 유지하는 T12타이밍으로, 스토어데이터를 스토어버퍼(115)에 유지한다. 그리고, 버스제어신호생성회로(204)가 주변회로(106)에 대해서 주변회로제어신호를 출력, 즉 어드레스스트로브신호(NPERIAS)를 T21타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NPERIWD)를 T21타이밍으로 어서트하고, 리이드사이클인 것을 표시한 라이트이네이블(NPERIWE)를 T22타이밍으로 어서트한다. 그리고 오퍼런드어드레스를 T21타이밍으로 내장 RAM어드레스버스에 스토어데이터를 T22타이밍으로 내장 RAM데이터버스에 출력한다. 상기 주변회로제어신호에 의거하여 주변회로(106)는, 주변회로어드레스버스를 개재해서 입력된 어드레스에 대응하는 주변회로에, 주변회로데이터버스상의 데이터를 라이트이네이블신호를 부정하는 타이밍으로 기록한다.
다음에, 내장 ROM(104)에 대해서 명령페치, 및 내장 RAM(105)에 대해서 동시에 로우드를 행하는 경우의 동작에 대해서, 제21도의 타이밍도를 사용해서 설명한다.
PC계산부(102)는, 명령페치요구신호(IFREQ)와 동시에, 그 명령어드레스(IA[15 : 0])를 T02타이밍으로 출력하고, 데이터패스부(103)는, 로우드요구신호(OFREQ)와 동시에, 그 오퍼런드어드레스를 T02타이밍으로 출력한다. 이때 억세스공간판정회로(201)는 명령어드레스 및 오퍼런드어드레스를 해독하고, 명령이 내장 ROM으로부터 페치되고, 데이터가 내장 RAM으로부터 로우드되는 것을 판별하고, 내장 ROM명령억세스신호(IROM2)를 TO2타이밍으로 내장 ROM명령억세스신호(IROM1)와 내장 RA M데이터억세스신호(DRAM1)를 T11타이밍으로 어서트한다. 버스아아비터(202)는, 명령페치요구신호와 로우드요구신호의 양쪽이 어서트되고 있으나, 억세스공간식별신호로부터 명령페치와 로우드가 버스상에서 충돌하지 않는 것을 판정하고, 명령페치개시신호(IFSTRT)와 로우드개시신호(OFSTRT)를 T02타이밍으로 동시에 어서트하고, 명령페치요구수리신호(IFACK)를 T11타이밍으로 어서트한다.
버스상태관리회로(203)는, 명령페치개시신호와 로우드개시신호가 어서트되므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 명령, 오퍼런드동시전송상태(BUSST[3 : 0]=0110)로 천이된다. 그리고, 명령어드레스를 명령어드레스버퍼(112)에 유지하고, 내장 ROM어드레스버스에 출력하고, 오퍼런드어드레스를 오퍼런드어드레스버퍼(113)에 유지하고, 내장 RAM어드레스버스에 출력한다. 버스제어신호생성회로(204)는, 버스상태신호, AC 억세스공간식별신호로부터, 내장 ROM, 내장 RAM에 대해서 억세스하는 것을 판정하고, ROM제어신호, 및 RAM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NROMAS와 NRAMAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NROMWD와 NRAMWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 라이드이네이블(NROMRE와 NRAMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호, 및 억세스공간식별신호로부터, 명령이 내장 ROM으로부터 페치되고, 데이터 내장 RAM으로부터 모우드되는 것을 판별하고, T11타이밍으로 버스스위치(117),(118)에 대한 버스절환제어신호(NAROAM, NARAOM, NDROAMU, NDROAML, NDR AOM, NDRAPER, NDPERAM))를 전부 부정하므로서, 버스스위치(117),(118)를 끊고, 내장 ROM어드레스버스 및 내장 ROM데이터버스와 내장 RAM어드레스버스 및 내장 RAM데이터버스를 분리하고, 내장 RAM어드레스버스 및 내장 RAM데이터버스와 주변회로어드레스버스 및 주변회로데이터버스가 분리된다. 내장 ROM(104)은, ROM제어신호에 의거하여, 어드레스에 대응하는 명령을 판독하고, T12타이밍으로 내장 ROM데이터버스에 출력한다. 그리고 리이드이네이블신호를 부정하는 타이밍으로 명령을 내장 ROM데이터버스로부터 명령페치버퍼(111)에 래치(latch)하고, 디코우더부(101)에 출력하여, 디코우더부에서 명령의 해독을 행한다. 동시에, 내장 RAM(105)은, RAM제어신호에 의거하여, 어드레스에 대응하는 데이터를 판독하여, T12타이밍으로 내장 RAM데이터버스에 출력한다. 그리고 리이드이네이블신호가 부정하는 타이밍으로 데이터를 내장 RAM데이터버스로부터 로우드버퍼(114)에 래치(latch)하고, 데이터패스부(103)에 출력한다.
마지막으로, 내장 ROM(104)에 대해서 데이터로우드, 및 내장 RAM(105)에 대해서 동시에 명령페치를 행하는 경우의 동작에 대해서, 제22도의 타이밍도를 사용해서 설명한다.
PC계산부(102)는, 명령페치요구신호(IFREQ)와 동시에, 명령어드레스(IA[15 : 0])를 T02타이밍으로 출력하고, 데이터패스부(103)는, 로우드요구신호(OFREQ)와 동시에, 그 오퍼런드어드레스를 T02타이밍으로 출력한다. 이때, 억세스공간판정회로(201)는 명령어드레스, 및 오퍼런드어드레스를 해독하고, 명령이 내장 RAM 으로부터 페치되고, 데이터가 내장 ROM으로부터 로우드되는 것을 판별하고, 내장 RAM명령억세스신호(IRAMI)와 내장 ROM데이터억세스신호(DROMI)를 T11타이밍으로 어서트한다. 버스아아비터(202)는, 명령페치요구신호의 로우드요구신호의 양쪽이 어서트되고 있으나, 억세스공간식별신호로부터 명령페치와 로우드가 버스상에서 충돌하는 것을 판정하고, 로우드개시신호(OFSTRT)밖에 T02타이밍으로 어서트하지 않는다. 버스상태관리회로(203)는, 로우드개시신호가 어서트되었으므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 명령, 오퍼런드만의 전송상태(BUSST[3 : 0]=0010)로 천이한다. 그리고, 오퍼런드어드레스를 오퍼런드어드레스버퍼(113)에 유지하고, 내장 RAM어드레스버스에 출력한다.
이때, 명령어드레스는 명령어드레스버퍼(112)에 유지되나, 내장 ROM어드레스버스에 출력하지 않는다. 버스제어신호생성회로(204)는, 버스상태신호, 및 억세스공간식별신호로부터, 내장 ROM에 대해서 억세스하는 것을 판정하여, ROM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NROMAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NROMWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드네이블신호(NROMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호, 및 억세스공간식별신호로부터, 데이터가 내장 ROM으로부터 로우드되는 것을 판별하고, T11타이밍으로 버스스위치(117)에 대한 버스절환제어신호(NAROAM, NDROAMU, NDROAML)를 어서트하여, 버스스위치(117)에 대한 버스절환제어신호(NARROM, NDROAMU, NDROAML)를 어서트하여, 버스스위치 (117)에 대한 버스절환제어신호(NAROAM, NDRAOM)를 부정하므로서, 버스스위치(117)를 접속하고, 내장 RAM어드레스버스로부터 내장 ROM어드레스버스에, 및 네장 ROM데이터버스로부터 내장 RAM데이터버스에 데이터가 전송될 수 있게 한다. 내장 ROM(104)은, ROM제어신호에 의거하여, 어드레스에 대응하는 명령을 판독하여, T12타이밍으로 내장 ROM데이터버스에 출력한다. 그리고, 리이드이네이블신호가 부정하는 타이밍으로, 내장 RAM데이터버스를 개재해서 데이터를 로우드버퍼(114)에 유지하여 데이터패스부(103)에 출력한다.
로우드사이클중의 T12타이밍으로 로우드요구신호가 부정되므로, 버스아아비터(202)는, 명령페치요구신호에 따라서, 명령페치개시신호(IFSTRT)를 T12타이밍으로 어서트하여, 명령페치요구수리신호(IFACK)를 T21타이밍으로 어서트한다. 버스상태관리회로(203)는, 명령페치개시신호가 어서트되므로서, T21타이밍으로 버스상태신호를 오퍼런드만의 전송상태(BUSST[3 : 3]=0010)로부터 명령만의 전송상태(BUSST[3 : 0]=0100)으로 천이된다. 그리고, 명령어드레스버퍼(112)에 유지되고 있는 명령어드레스를, 내장 ROM어드레스버스에 출력한다. 버스제어신호생성회로(204)는, 버스상태신호, 및 억세스공간식별신호로부터, 내장 RAM에 대해서 억세스하는 것을 판정하여, RAM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NRAMAS)를 T21타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NRAMWD)를 T21타이밍으로 어서트하여, 리이드사이클인 것을 표시하는 라이드이네이블(NRAMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호, 및 억세스공간식별신호로부터, 명령이 내장 RAM으로부터 페치되는 것을 판별하고, T21타이밍으로 버스스위치(117)에 버스절환제어신호(NAROAM, NDRAOM)를 어서트하여, 버스스위치(117)에 대한 버스절환제어신호(NARAOM, NDROAMU, NDROAML)를 부정하므로서, 버스스위치(117)를 접속하여, 내장 ROM어드레스버스로부터 내장 RAM어드레스버스에, 및 내장 RAM데이터버스로부터 내장 ROM데이터버스에 데이터가 전송될 수 있게 한다. 내장 RAM(105)은, RAM제어신호에 의거하여, 어드레스에 대응하는 대응하는 데이터를 판독하여, T22타이밍으로 내장 RAM데이터버스에 출력한다. 그리고, 리이드이네이블신호가 부정하는 타이밍으로 내장 ROM데이터버스를 개재해서 데이터를 명령페치버퍼(111)에 유지하여, 디코우더부(101)에 출력하여, 디코우더부에서 명령의 해독을 행한다.
이상과 같이 본 실시예에 의하면, 버스제어부(120)가 명령어드레스, 오퍼런드어드레스를 해독하여, 버스스위치를 제어해서 내부버스를 분리시키므로서, 명령과 데이터를 동시에 억세스할 수 있다. 또, 버스스위치를 제어하고, 필요한 경우에만 내부버스를 접속하므로서, 내장 ROM(104)내에 격납되어 있는 데이블데이터를 용이하게 데이터버스부에 전송할 수 있다. 그 위에, 분리하므로서, 각 내부버스에 대한 부하가 경감하므로, 클록주파수를 용이하게 향상시킬 수 있다.
다음에, 본 발명의 제2실시예에 대해서 도면을 참조하면서 설명한다.
제1도가 본 발명의 실시예에 있어서의 버스제어장치의 일구성을 표시한 블록도이나, 제1실시예의 다른 것은, 버스제어부(120)에의 입력인 모드신호(BUS 8BIT)가 어서트되어 있는 것이다.
BUS 8BIT신호는 외부데이터버스(D[15 : 8])의 버스폭이 8비트인 모드인 것을 표시한 것이다. 이 경우, 외부데이터버스의 하위 8비트(D[7 : 0])상의 데이터는 유효하지 않고, 외부데이터버스가, 내부데이터버스(DROM BUS[15 : 0], DRAM BUS [15 : 0], DPERI BUS[15 : 0])에 대해서 좁아져 있다.
이상과 같이 구성된 정보처리장치에 있어서, 이하, 데이터패스부(103)가 외부데이터버스에 접속되어 있는 외부메모리로부터 데이터를 로우드하는 경우를 예로 들어서, 제23도의 타이밍도를 참조하면서, 그 동작에 대해서 설명한다.
데이터패스부(103)는, 로우드해야 할 데이터의 오퍼런드어드레스(OA[15 : 0])를 계산하여 로우도요구신호(OFREQ)와 동시에, 그 오퍼런드어드레스를 T02타이밍으로 출력한다. 여기서, 오퍼런드어드레스의 LSB(0A[0])는 0, 즉, 16비트 어라이먼트가 취해져 있는 것으로 한다. 억세스공간판정회로(201)는 오퍼런드어드레스를 해독하여, 데이터가 외부메모리로부터 판독되는 것을 판별하여, 외부데이터억세스신호(DEXT2)를 T02타이밍으로 어서트하여 외부데이터억세스신호(DEXT1)를 T11타이밍으로 어서트한다. 버스아아비터(202)는, 리이드요구신호만이 어서트되므로서, 로우드개시신호(OFSTRT)를 T02타이밍으로 어서트한다. 버스상태관리회로(203)는 리이드개시신호가 어서트되고, 또한 외부데이터버스가 8비트폭인 것을 표시하고 BUS 8BIT 신호가 어서트되어 있으므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 오퍼런드만의 전송으로 제1바이트째의 전송상태를 표시한 BUSST[3 : 0]=0011로 천이한다. 이에 의해, 버스사이클이 개시되고, 오퍼런드어드레스를 오퍼런드어드레스버퍼(113)에 유지하고, 내장 RAM어드레스버스에 출력한다. 버스제어신호생성회로(204)는, 버스상태신호와 억세스공간식별회로로부터, 외부버스제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NEXTAS)를 T11타이밍으로 어서트하여, 판독사이클인 것을 표시하는 리이드이네이블신호(NEXTRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호와 억세스공간식별신호로부터, 외부메모리에 억세스하는 것을 판별하고, T11타이밍으로 버스스위치(117),(118)에 대한 버스절환제어신호(NAROAM, NARAOM, NDROAMU, WDROAML, NDRAOM, NDPE RAM)를 전부 부정하므로서, 버스스위치(117),(118)를 끊고, 내장 ROM어드레스버스 및 내장 ROM데이터버스 및 내장 ROM데이터버스와 내장 RAM어드레스버스 및 내장 RAM데이터버스가 분리되고, 내장 RAM어드레스버스 및 내장 RAM데이터버스와 주변회로어드레스버스 및 주변회로 데이터버스가 분리된다.
외부메모리는, 외부버스제어신호에 의거하여, 어드레스에 대응하는 데이터를 판독하고, T11타이밍으로 외부데이터버스(D[15 : 8])에 출력한다. 버스상태신호가 제1바아트째의 전송상태이므로, 외부버스인터페이스부(116)는 외부데이터버스의 상위 8비트(D[15 : 8])의 데이터를 내장 RAM데이터버스의 하위 8비트(DRAM BUS [7 : 0])에 출력하여, 리이드이네이블신호가 부정하는 타이밍으로 데이터를 내장 RAM데이터버스로부터 로우드버퍼(114)의 하위에 유지한다.
이어서, 버스상태관리회로(203)는, 버스상태신호가 BUSST[3 : 0]=0011이므로, T21타이밍으로 버스상태신호를 오퍼런드만의 전송으로 제1바이트째의 전송상태(BUSST[3 : 0]=0011)로부터 오퍼런드만의 전송으로 제2바이트째의 전송상태(BUSST[3 : 0]=0010)로 천이된다. 버스제어신호생성회로(204)와 버스절환제어신호생성회로(205)의 거동은, 버스상태회로의 BUSST[0]에 의존하지 않으므로, 제1바이트째의 전송과 마찬가지의 버스제어신호, 버스절환제어신호를 출력한다. 외부버스인터페이스부(116)는, 버스상태신호가 BUSST[3 : 0]=0011로부터 BUSST[3 : 0]=0010으로 천이하므로서, 외부어드레스버스의 LSB(A[0])를 강제적으로 1로 한다.
이에 의해, 제1바이트째의 어드레스를 1증가시킨 것으로 된다. 외부메모리는 외부버스제어신호에 의거하여, 어드레스에 대응하는 데이터를 판독하여, T22타이밍으로 외부데이터버스(D[15 : 8])에 출력한다. 버스상태신호가 제2바이트째의 전송상태이므로, 외부버스인터페이스부(116)는 외부데이터의 상위 8비트(D[15 : 8])의 데이터를 내장 RAM데이터버스의 상위 8비트(DRAM BUS [15 : 8])에 출력하여, 리이드이네이블신호가 부정하는 타이밍으로 데이터를 내장 RAM데이터버스로부터 로우드버퍼(114)의 상위에 유지한다. 이에 의해, 16비트데이터가 갖추어졌으므로, 로우드버퍼(114)는 데이터를 데이터패스부(103)에 출력한다.
이상과 같이, 외부데이터버스폭이 내장데이터버스폭보다 좁은 모드를 설치하고, 그것을 표시하는 신호(BUS 8BIT)를 버스제어부(120)가 판정하고, 복수회로버스 억세스하므로서, 외부데이터버스를 내장데이터버스폭보다 좁은 버스폭으로 할 수 있고, 칩외부에 접속하는 메모리와의 폭을 삭감할 수 있으므로, 본 칩을 실장하는 보오드의 코스트를 억제하는 일이 가능해진다.
다음에, 본 발명의 제3실시예에 대해서 도면을 참조하면서 설명한다.
제1도가 본 발명의 실시예에 있어서의 버스제어장치의 일구성을 표시한 블록도이나, 제1실시예와 다른 것은, 버스제어부(120)에의 입력인 신호(DFU, DFL)가 어서트되는 것이다.
DFU, DFL신호는, 제1버스스위치(117)내의 내장 ROM데이터버스(DROMBUS[15 : 0])와 내장 RAM데이터버스(DRAMBUS[15 : 0])와의 접속관계를 제어하는 것이며, DFU신호가 어서트되었을 경우는 상위 8비트(DROMBUS[15 : 8]과 DRAMBUS[15 : 8])가 접속되고, DFL신호가 어서트되었을 경우에는 하위 8비트(DROMBUS[7 : 0]와 DRAMBUS[7 : 0])가 접속된다.
이상과 같이 구성된 정보처리장치에 대해서, 이하, 데이터패스부(103)가 내장 RAM(104)으로부터 데이터를 로우드하는 경우를 예로 들어서, 제24도의 타이밍도를 참조하면서, 그 동작에 대해서 설명한다.
PC계산부(102)는, 다음 명령 또는 분기선(先)의 명령어드레스(IA[15 : 0])를 계산하여, 명령페치요구신호(IFREQ)와 동시에, 그 명령어드레스를 T02타이밍으로 출력한다. 이때 억세스공간판정회로(201)는 명령어드레스를 해독하여, 명령이 내장 RO M으로부터 페치되는 것을 판별하여, 내장 ROM명령억세스신호(IROM2)를 T02타이밍으로, 내장 ROM명령억세스신호(IROM1)를 T11타이밍으로 어서트한다.
버스아아비터(202)는, 명령페치요구신호만이 어서트되므로서, 명령페치개시신호(IFSTRT)FF T02타이밍에 어서트하여, 명령페치요구수리신호(IFACK)를 T11타이밍에 어서트한다. 버스상태관리회로(203)는, 명령페치개시신호가 어스트되므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 명령만의 전송상태(BUSST[3 : 0]=0100)로 천이한다. 버스상태신호가 명령만의 전송상태가 되었으므로, 버스사이클이 개시되고, 명령어드레스를 명령어드레스버퍼(112)에 유지하고, 내장 ROM어드레스버스에 출력한다. 버스제어신호생성회로(204)는, 버스상태신호와 억세스공간식별신호에 따라서, ROM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NROMAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NROMWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NROMRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 버스상태신호와 억세스공간식별신호로부터, 내장 ROM에 억세스하는 것을 판별하고, T11타이밍으로 버스스위치(117)에 대한 버스절환제어신호(NAROAM, NDRAO M, NDROAMU, NDROAML)를 부정한다. 그러나, DFU 신호가 어서트되어 있으므로서, 버스절환제어신호(NDROAMU)만은 어서트된다. 이에 의해 내장 ROM어드레스버스와 내장 RAM어드레스버스는 분리되고, 내장 ROM데이터버스와 내장 RAM데이터버스의 하위 8비트는 분리되나 내장 RAM데이터버스와 내장 ROM데이터버스의 상위 8비트는 접속되고, 내장 ROM데이터버스로부터 내장 RAM데이터버스에 8비트 데이터의 전송이 가능하게 된다. 내장 ROM(104)은, ROM제어신호에 의거하여, 어드레스에 대응하는 명령을 판독하여, T12타이밍으로 내장 ROM데이터버스에 출력한다. 그리고 리이드이네이블신호가 부정하는 타이밍으로, 내장 ROM데이터버스로부터 하위 8비트의 데이터를 명령페치버퍼(111)의 하위 8비트에 래치하여, 디코우더부(101)에 출력하는 동시에, 내장 ROM데이터버스의 상위 8비트의 데이터를 내장 RAM데이터버스를 개재해서, 로우드버퍼(114)의 상위 8비트에 래치하여, 데이터패스부(103)에 출력한다.
이상과 같이, 제1버스스위치(117)내의 내장 ROM데이터버스(DROMBUS[15 : 0])와 내장 RAM데이터버스(DRAMBUS[15 : 0])와의 접속관계를 바이트단위로 지정하는 신호(DFU, DFL)를 버스제어부(120)가 입력하고, 그에 의거하여 제1버스스위치(117)를 제어하는 회로를, 버스절환제어신호생성회로(205)에 배설하므로서, 일단, 명령을 해독한 후에 내장 ROM(104)에 격납되어 있는 테이블데이터를 데이터패스부(103)에 전송하지 않고, 다음 명령의 페치와 동시에, 내장 ROM(104)내의 데이터를 데이터패스부에 전송할 수 있으므로, 고속으로 처리를 행하는 일이 가능하게 된다.
다음에, 본 발명의 제4실시예에 대해서 도면을 참조하면서 설명한다.
제1도가 본 발명의 실시예에 있어서의 버스제어장치의 일구성을 표시한 블록도이나, 제1실시예와 다른 것은, 버스제어부(120)에의 입력인 신호(NRELREO)가 어서트되는 일이다.
NRELREQ 신호는, 내부버스(AROMBUS[15 : 0], DROMBUS[15 : 0], ARA MBUS[15 : 0], DRAMBUS[15 : 0], APERIBUS[15 : 0], DPERIBUS[15 : 0])를 개방하여, 칩외부로부터 억세스하는 것을 요구하는 것이다.
이상과 같이 구성된 정보처리장치에 있어서, 이하, 칩외부의 일부 DMA가 내장 ROM로부터 데이터를 로우드하는 경우를 예로 들어서, 제25도의 타이밍도를 참조하면서, 그 동작에 대해서 설명한다.
외부 DMA는, 칩내부의 자원을 억세스하기 위해서, 내부버스의 개방을 요구하는 NRELREQ 신호를 T01타이밍으로 어서트한다. 버스개방요구검출회로(206)는 NRELREQ 신호가 어스트된 것을 검출하고 버스상태관리회로(203)에 버스개방이 요구되고 있는 것을 표시한 BUSREL신호를 어서트한다. 버스상태관리회로(203)는, BUSREL신호가 어서트되므로서, T11타이밍으로 버스상태신호를 아이들상태(BUSST[3 : 0]=0000)로부터 버스개방상태(BUST[3 : 0]=1000)로 천이한다. 버스개방요구검출회로(206)는버스상태신호가 버스개방상태로 천이되므로서, 버스개방요구수리신호( NREQACK)를 어서트하여, 외부 DMA에 버스개방상태가 된것을 통지한다. 외부 DMA는 버스개방상태가 된 것을 수용하여, 내장 ROM(104)으로부터 데이터를 로우드하기 위해서, 외부어드레스버스(A[15 : 0])에 억세스해야할 데이터의 어드레스를 T11 방향으로 출력한다. 이와 동시에, 외부 DMA는 칩외부로부터 내부자원에 대한 버스제어신호를 출력한다, 구체적으로는 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NDMAAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NDMAWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NDMARE)를 T22타이밍으로 어서트한다. 이때, 억세스공간판정회로(201)는 외부버스인터페이스부(116)를 개재해서 내장 RAM어드레스버스(ARAMBUS[15 : 0])에 입력된 어드레스를 해독하고, 데이터가 내장 ROM으로부터 로우드되는 것을 판별하여, 내장 ROM외부억세스신호(EROM1)를 T21타이밍으로 어서트한다. 버스제어신호생성회로(204)는, 버스상태신호와 억세스공간식별신호로부터, 내장 ROM에 대해서 억세스하는 것을 판정하여, ROM제어신호를 출력한다. 구체적으로는 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NDMAAS)를 T11타이밍으로 어서트하여, 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NDMAWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NDMARE)를 T22타이밍으로 어서트한다.
이때, 억세스공간판정회로(201)는 외부버스인터페이스부(116)를 개재해서 내장 RAM어드레스버스(ARAMBUS[15 : 0])에 입력된 어드레스를 해독하고, 데이터가 내장 ROM으로부터 로우드되는 것을 판별하여, 내장 ROM외부억세스신호(EROM1)를 T21타이밍으로 어서트한다. 버스제어신호생성회로(204)는, 버스상태신호와 억세스공간 식별신호로부터, 내장 ROM에 대해서 억세스하는 것을 판정하여, ROM제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NROMAS)를 T21타이밍으로 어서트하여,워어드(16)비트 억세스인 것을 표시한 억세스사이즈신호(NROMWD)를 T21타이밍에 어서트하고, 리이드사이클인 것을 표시한 리이드네이블신호(NROMRE)를 T22타이밍으로 어서트한다. 이와 동시에, 버스절환제신호생성회로(205)는, 버스상태신호, 및 억세스공간식별신호로부터, 데이터가 내장ROM으로부터 로우드되는 것을 판별하고, T21타이밍으로 버스스위치(117)에 대한 버스절환제어신호(NARAOM, NDROAMU, NDROAML)를 어서트하고, 버스스위치(117)에 대한 버스절환제어신호(NARAOM, NDRAOM)를 부정하므로서, 버스스위치(117)를 접속하여, 내장 RAM어드레스버스로부터 내장 ROM어드레스버스에, 및 내장 ROM데이터버스로부터 내장 RAM데이터버스에 데이터가 전송될 수있게 한다.
내장 ROM(104)는, ROM제어신호에 의거하여, 어드레스에 대응하는 명려7ㅇ을 판독하고, T22타이밍으로 내장 ROM데이터버스에 출력한다. 그리고, 외부 DMA는, 내장 RAM데이터버스, 및 외부버스인터페이스부(116)를 개재해서 외부데이터버스에 출력된 데이터를 NDMARE신호가 부정하는 타이밍으로 획득한다.
이상과 같이, 버스개방요구 검출회로(206)를 배설하고, 버스개방요구를 검출하여 버스개방상태에 버스제어신호와 버스절환제어신호를 제어하는 회로를, 버스제어신호생성회로(204)와 버스절환제어신호생성회로(205)에 배설하므로서, 외부로부터 어드레스 및 데이터를 부여해서, 칩내부의 자원을 억세스할 수 있고, 약간의 하아드웨어를 투하하는 것만으로, 내장자원의 테스트를 행할 수 있고, 외부 DMA에도 대응할 수 있다.
마지막으로, 본 발명의 제5실시예에 대해서 도면을 참조하면서 설명한다.
제1도가 본 발명의 제5실시예에 있어서의 버스제어장치의 일구성을 표시한 블록도이나, 제1실시에와 다른 것은 버스제어부(120)에의 입력인 신호(NINHREQ)가 어스트되는 것이다.
NINHREQ신호는, 칩내장의 주변회로(106)를 사용하는 일을 금지할 것을 요구하는 것이다.
이상과같이 구성된 정보처리장치에 대해서, 이하, 데이터패스부(103)가 칩내장의 주변회로(106) 대신에 칩외부의 주변회로로부터 데이터를 로우드하는 경우를 예로 들어서, 제26도의 타이밍도를 참조하면서, 그 동작에 대해서 설명한다.
기본적으로는 제1실시예의 주변회로(106)에 대한 억세스와 마찬가지이며, 다른점은 버스제어부(120)에 의한 버스제어신호의 제어와 버스스위치(117), (118)의 제어이다. 칩내장의 주변회로(106) 대신에 칩외부의 주변회로로부터 데이터를 로우드할 경우, 데이터패스부(103)는 칩내장의 주변회로(106)를 사용하는 일을 급지할 것을 요구하는 NINHREQ신호를 T01타이밍으로 출력한다. 주변회로억세스금지요구검출회로(207)는 NINHREQ신호가 어스트된 것을 검출하고, 버스제어신호생성회로(204)와 버스절환제어신호생성회로(205)에 주변회로억세스금지신호(IOINH)를 T02타이밍에 어스트한다. 버스제어신호생성신호회로(204)는, 주변호로억세스 금지신호가 어스트되어 있으므로서, 외부버스제어신호를 출력한다. 구체적으로는, 어드레스가 출력되고 있는 것을 표시하는 어드레스스트로브신호(NEXTAS)를 T11타이밍으로 어스트하여 워어드(16비트) 억세스인 것을 표시한 억세스사이즈신호(NEXTWD)를 T11타이밍으로 어서트하고, 리이드사이클인 것을 표시한 리이드이네이블신호(NEXTRE)를 T12타이밍으로 어서트한다. 이와 동시에, 버스절환제어신호생성회로(205)는, 주변회로억세스금지신호가 어스트되어 있으므로서, 칩내장의 주변회로(106) 대신에 칩외부의 주변회로에 억세스하는 것을 판별하고, T11타이밍에 주변회로데이터버스(DPERIBUS[15 : 0])로부터 내장 RAM데이터버스(DRAMBUS[15 : 0])에 데이터를 전송하는 것을 표시하는 버스절환제어신호(NDPERAM)를 부정하므로서 버스스위치(118)를 분리한다. 이에 의해, 오퍼런드어드레스버퍼(113)로부터 출력한 어드레스는 내장 RAM어드레스버스 및 외부어드레스버스(A[15 : 0])를 개재해서, 칩외부의 주변회로에 공급한다. 칩외부의 주변회로는, 외부버스제어신호에 의거하여, 어드레스에 대응하는 데이터를 T12타이밍으로 외부데이터버스([15 : 0])에 출력한다. 그리고, 리이드이네이블신호가 부정하는 타이밍으로, 내장 RAM데이터버스를 개재해서 데이터를 로우드버퍼(114)에 유지하고, 데이터패스부(103)에 출력한다.
이상과 같이, 내장주변호로금지모우드검출회로를 배설하므로서, 내장해 있지 않은 주변회로를, 칩외부의 주변회로, 또는 버스개방상태의 별개칩과 접속하므로서, 침외부의 주변회로, 또는 별개칩내의 주변회로를 마치 칩에 내장하고 있는 주변회로인 것처럼 사용할 수 있다.

Claims (7)

  1. 명령(Instruction)을 해독하는 명령해독수단과, 프로그램을 격납하는 명령기억수단과, 명령해독수단과 명령기억수단을 접속하는 어드레스 m비트, 데이터 n비트의 제1버스와, 명령해독수단의 해독결과에 따라서 명령을 실행하는(Execute) 명령실행수단과, 명령실행시에 사용하는 데이터를 격납하는 데이터기억수단과, 명령실행수단과 데이터기억수단을 접속하는 어드레스 m비트, 데이터 n비트의 제2버스와 제1버스와 제2버스를 전기적으로 접속 또는 절단하는 제1절환수단을 구비하고, 명령실행수단이 명령기억수단에 격납된 프로그램을 명령실행수단에 전송하는 전송요구를 냈을 경우, 및 명령해독수단이 데이터기억수단에 격납된 데이터를 명령해독수단으로 전송하는 제2전송요구를 냈을 경우는, 제1절환수단에 의해 제1버스와 제2버스를 접속하고, 명령해독수단이 명령기억수단에 격납된 프로그램을 명령해독수단에 전송하는 제3의 전송요구를 냈을 경우, 명령실행수단이 데이터기억수단에 격납된 데이터를 명령실행수단에 전송하는 제4의 전송요구를 냈을 경우, 및 제3, 제4의 전송요구가 동시에 나왔을 경우는, 제1절환수단에 의해 제1버스와 제2버스를 절단하는 버스제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  2. 제1항에 있어서, 명령실행수단으로 행하는 처리이외의 데이터처리를 행하는 제1데이터처리수단(복수형)과, 제1데이터처리수단이 접속되는 어드레스 m비트, 데이터 n비트의 제3버스와 제2버스와 제3버스를 전기적으로 접속 또는 절단하는 제2절환수단을 구비하고, 명령해독수단이 제1데이터처리수단으로부터 명령해독수단으로 데이터를 전송하는 제5도의 전송요구를 냈을 경우는, 제1절환수단, 및 제2절환수단에 의해 제1버스, 제2버스, 및 제3버스를 접속하고, 명령실행수단이 제1데이터처리수단으로부터 명령실행수단으로 데이터를 전송하는 제6의 전송요구를 냈을 경우, 및 제3, 제6의 전송요구가 동시에 나왔을 경우에는, 제1절환수단에 의해 제1버스와 제2버스를 절단하고, 제2절환수단에 의해 제2버스와 제3버스를 접속하는 버스제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  3. 제2항에 있어서, 명령기억수단, 데이터기억수단으로부터 대용량의 외부기억수단(복수형)과 외부기억수단이 접속되는 어드레스 m비트, 데이터 n비트의 제4버스와, 제2버스와 제4버스를 전기적으로 접속 또는 절단하는 제3절환수단을 구비하고, 명령해독수단이 외부기억수단으로부터 명령해독수단으로 데이터를 전송하는 제7의 전송요구를 냈을 경우는, 제1절환수단, 및 제3절환수단에 의해 제1버스, 제2버스, 및 제4버스를 접속하고, 명령실행수단이 외부기억수단으로부터 명령실행수단으로 데이터를 전송하는 제8의 전송요구를 냈을 경우, 및 제3, 제7의 전송요구가 동시에 나왔을 경우에는, 제1절환수단, 및 제2절환수단에 의해 제1버스, 제2버스, 및 제3버스를 절단하고, 제3절환수단에 의해 제2버스와 제4버스를 접속하는 버스제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  4. 제3항에 있어서, 제3의 절환수단에 n비트의 버퍼를 구비하고, 제4버스가 데이터 K비트(K<n)이고, 제7의 전송요구, 및 제8의 전송요구가 나왔을 경우에, 제2버스와 제3절환수단내 버퍼사이에서는, n비트의 데이터를 전송하고, 제4버스와 제3절환수단내 버퍼의 사이에서는, K비트 데이터를 h(h는 정수, 또한(h-1)×K<n×K)회, 전송하는 버스제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  5. 제3항에 있어서, 제4버스에 접속되고, 제1, 제2, 및 제3의 버스개방(Bus release)을 요구하는 버스개방수단과, 그 개방요구를 검출하는 버스개방요구검출수단과, 버스개방요구검출수단이 버스개방요구를 검출했을때에, 버스개방요구수단이 명령기억수단과 버스개방요구수단사이의 데이터 전송요구를 냈을 경우에, 제1, 제3의 절환수단에 의해 제1, 제2, 및 제4버스를 접속하고, 제2절환수단에 의해 제2버스와 제3버스를 절단하고, 버스개방요구수단이 데이터기억수단과 버스개방요구수단사이의 데이터 전송요구를 냈을 경우에, 제2절환수단에 의해 제2버스와 제4버스를 접속하고, 제1, 제2절환수단에 의해 제1, 제2, 및 제3버스를 절단하고, 버스개방요구수단이 제1데이터처리수단과 버스개방요구수단 사이의 데이터 전송요구를 냈을 경우에, 제2, 제3절환수단에 의해 제2, 제3, 및 제4버스를 접속하고, 제1절환수단에 의해 제1버스와 제2버스를 절단하는 버스제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  6. 제3항에 있어서, 제4버스에 접속하여, 제1데이터처리수단으로 행하는 처리이외의 데이터처리를 행하는 제2데이터처리수단과, 제1데이터처리수단의 동작을 금지하는 요구를 내는 데이터처리금지수단과, 그 금지요구를 검출하는 데이터처리금지요구검출수단과, 데이터처리금지요구검출수단과이 금지요구를 검출했을때에, 제5의 전송요구가 나왔을 경우는, 제1, 제3의 절환수단에 의해 제1버스, 제2버스, 및 제4버스를 접속하고, 제2절환수단에 의해 제2버스와 제3버스를 절단하고, 제2데이터처리수단으로부터 명령해독수단으로 데이터를 전송하고, 제6의 전송요구가 나왔을 경우, 및 제3, 제6의 전송요구가 동시에 나왔을 경우는, 제3의 절환수단에 의해 제2버스와 제4버스를 접속하고, 제1, 제2절환수단에 의해 제1, 제2, 및 제3버스를 절단하고, 제2데이터처리수단과 명령실행수단 사이에서 데이터를 전송하는 제어수단을 설치한 것을 특징으로 하는 버스제어장치.
  7. 명령(Instruction)을 해독하는 명령해독수단과, 프로그램을 격납하는 명령기억수단과, 명령해독수단과 명령기억수단을 접속하는 어드레스 p비트, 데이터 q비트의 제1버스와, 명령해독수단의 해독결과에 따라서 명령을 실행하는(Execute) 명령실행수단과, 명령실행시에 사용하는 데이터를 격납하는 데이터기억수단과, 명령실행수단과 데이터기억수단을 접속하는 어드레스 p비트, 데이터 q비트의 제2버스와, 제1버스와 제2버스를 전기적으로 접속 또는 절단하는 제1절환수단에 있어서, 제1절환수단에 의해 제1버스와 제2버스의 r비트(1rq-1)의 데이터버스를 절단하고, 제1버스와 제2버스의(q-r)비트의 데이터버스를 접속하여, 명령기억수단에 격납된 r비트의 데이터를 명령기억수단으로부터 명령해독수단으로, 명령기억수단에 격납된(q-r)비트의 데이터를 명령기억수단으로부터 명령실행수단으로 동시에 전송하는 버스제어수단을 구비한 것을 특징으로 하는 버스제어장치.
KR1019930018516A 1992-09-16 1993-09-15 버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치 KR970006644B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP24665992A JP3226055B2 (ja) 1992-09-16 1992-09-16 情報処理装置
JP92-246659 1992-09-16

Publications (2)

Publication Number Publication Date
KR940007669A KR940007669A (ko) 1994-04-27
KR970006644B1 true KR970006644B1 (ko) 1997-04-29

Family

ID=17151712

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930018516A KR970006644B1 (ko) 1992-09-16 1993-09-15 버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치

Country Status (6)

Country Link
US (1) US5481679A (ko)
EP (1) EP0588607B1 (ko)
JP (1) JP3226055B2 (ko)
KR (1) KR970006644B1 (ko)
DE (1) DE69327374T2 (ko)
TW (1) TW224524B (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3904244B2 (ja) 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
JPH07250085A (ja) * 1994-03-10 1995-09-26 Fujitsu Ltd データ通信装置におけるバスの負荷分散方法及びデータ通信装置用バス切替制御装置
JPH086918A (ja) * 1994-06-15 1996-01-12 Nec Corp マイクロコンピュータ
US6735683B2 (en) 1994-09-14 2004-05-11 Hitachi, Ltd. Single-chip microcomputer with hierarchical internal bus structure having data and address signal lines coupling CPU with other processing elements
US5822550A (en) * 1994-12-22 1998-10-13 Texas Instruments Incorporated Split data path fast at-bus on chip circuits systems and methods
US5740386A (en) * 1995-05-24 1998-04-14 Dell Usa, L.P. Adaptive expansion bus
JP2976850B2 (ja) * 1995-07-13 1999-11-10 日本電気株式会社 データ処理装置
US5717891A (en) * 1995-10-12 1998-02-10 Analog Devices, Inc. Digital signal processor with caching of instructions that produce a memory conflict
US5784639A (en) * 1995-12-29 1998-07-21 Intel Corporation Load buffer integrated dynamic decoding logic
KR970049630A (ko) * 1995-12-30 1997-07-29 김광호 외부장치 억세스방법
US5862408A (en) * 1996-05-13 1999-01-19 Advanced Micro Devices, Inc. Microprocessor system having multiplexor disposed in first and second read paths between memory CPU and DMA for selecting data from either read path
US5887144A (en) * 1996-11-20 1999-03-23 International Business Machines Corp. Method and system for increasing the load and expansion capabilities of a bus through the use of in-line switches
US6061754A (en) * 1997-06-25 2000-05-09 Compaq Computer Corporation Data bus having switch for selectively connecting and disconnecting devices to or from the bus
US6338110B1 (en) * 1997-11-14 2002-01-08 Sun Microsystems, Inc. Partitioning of storage channels using programmable switches
JPH11203161A (ja) * 1998-01-07 1999-07-30 Mitsubishi Electric Corp マイクロコンピュータ
US6618777B1 (en) * 1999-01-21 2003-09-09 Analog Devices, Inc. Method and apparatus for communicating between multiple functional units in a computer environment
US7197589B1 (en) * 1999-05-21 2007-03-27 Silicon Graphics, Inc. System and method for providing access to a bus
JP2001318879A (ja) * 2000-05-11 2001-11-16 Fuji Photo Film Co Ltd 集積回路およびその制御方法
JP2002041452A (ja) * 2000-07-27 2002-02-08 Hitachi Ltd マイクロプロセッサ、半導体モジュール及びデータ処理システム
US8103855B2 (en) * 2007-09-22 2012-01-24 Navosha Corporation Linking functional blocks for sequential operation by DONE and GO components of respective blocks pointing to same memory location to store completion indicator read as start indicator

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2021823B (en) * 1978-05-30 1983-04-27 Intel Corp Data transfer system
CH651951A5 (de) * 1980-10-20 1985-10-15 Inventio Ag Einrichtung zur steuerung des zugriffes von prozessoren auf eine datenleitung.
US4445193A (en) * 1981-06-16 1984-04-24 International Business Machines Corporation Bisynchronous host/terminal communication system with non-clock-generating modem & PLL generated clock signal
US4439839A (en) * 1981-08-24 1984-03-27 International Telephone And Telegraph Corporation Dynamically programmable processing element
US5179734A (en) * 1984-03-02 1993-01-12 Texas Instruments Incorporated Threaded interpretive data processor
US4639910A (en) * 1984-12-14 1987-01-27 Itt Corporation Apparatus for establishing communication paths
US5247689A (en) * 1985-02-25 1993-09-21 Ewert Alfred P Parallel digital processor including lateral transfer buses with interrupt switches to form bus interconnection segments
US4787082A (en) * 1986-07-24 1988-11-22 American Telephone And Telegraph Company, At&T Bell Laboratories Data flow control arrangement for local area network
JPS63240632A (ja) * 1987-03-27 1988-10-06 Nec Corp 情報処理装置
EP0346917A3 (en) * 1988-06-17 1990-11-07 Modular Computer Systems Inc. Bus stealing method for concurrent cpu and i/o processing
US5056000A (en) * 1988-06-21 1991-10-08 International Parallel Machines, Inc. Synchronized parallel processing with shared memory
JP2685245B2 (ja) * 1988-10-05 1997-12-03 株式会社東芝 プログラマブルコントローラ
US5247639A (en) * 1989-06-20 1993-09-21 Nec Corporation Microprocessor having cache bypass signal terminal
DE4022365C2 (de) * 1989-07-20 2000-02-24 Nippon Telegraph & Telephone Datenübertragungssystem
US5212631A (en) * 1990-08-31 1993-05-18 Allen-Bradley Company, Inc. Programmable controller processor module having multiple program instruction execution sections

Also Published As

Publication number Publication date
JP3226055B2 (ja) 2001-11-05
JPH0696008A (ja) 1994-04-08
US5481679A (en) 1996-01-02
EP0588607B1 (en) 1999-12-22
DE69327374T2 (de) 2000-05-11
KR940007669A (ko) 1994-04-27
DE69327374D1 (de) 2000-01-27
TW224524B (ko) 1994-06-01
EP0588607A1 (en) 1994-03-23

Similar Documents

Publication Publication Date Title
KR970006644B1 (ko) 버스의 데이터전송처리능력(Data throughput)을 향상시키는 버스제어장치
US7162556B2 (en) Matrix type bus connection system and power reduction method therefor
KR100272938B1 (ko) 반도체장치및컴퓨터시스템
US5483660A (en) Method and apparatus for performing multiplexed and non-multiplexed bus cycles in a data processing system
JP3987577B2 (ja) システム管理モード情報を他の情報と共にキャッシュに入れる方法および装置
CN102033734B (zh) 数据处理引擎
US6535959B1 (en) Circuit and method for reducing power consumption in an instruction cache
US6760810B2 (en) Data processor having instruction cache with low power consumption
US8140797B2 (en) Integrated circuit and method of securing access to an on-chip memory
US6505309B1 (en) Processing unit and method of debugging the processing unit
US5822762A (en) Information processing device with decision circuits and partitioned address areas
US6049852A (en) Preserving cache consistency in a computer system having a plurality of memories with overlapping address ranges
JP4097883B2 (ja) データ転送装置および方法
US6349388B1 (en) Timer processing engine for supporting multiple virtual minimum time timers
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
US6484238B1 (en) Apparatus and method for detecting snoop hits on victim lines issued to a higher level cache
EP0383097A2 (en) Cache memory
US20050172108A1 (en) Device and method of switching registers to be accessed by changing operating modes in a processor
JP3077807B2 (ja) マイクロコンピュータシステム
KR100196522B1 (ko) 고속 및 고집적 마이크로프로세서를 위한 캐쉬 메모리 장치
US6223241B1 (en) Sharing of the indirect addressing of the registers of a peripheral dedicated to emulation
JP3785807B2 (ja) 制御装置
JPH0981458A (ja) データ処理システムにおけるキャッシュのアクセス方法
JP2560312B2 (ja) 情報処理システム
JPH04290139A (ja) データ処理システム

Legal Events

Date Code Title Description
A201 Request for examination
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: 20130819

Year of fee payment: 17

EXPY Expiration of term