[go: up one dir, main page]

KR100453821B1 - 마이크로 컨트롤러를 위한 데이터 버스 시스템 - Google Patents

마이크로 컨트롤러를 위한 데이터 버스 시스템 Download PDF

Info

Publication number
KR100453821B1
KR100453821B1 KR10-2002-0061487A KR20020061487A KR100453821B1 KR 100453821 B1 KR100453821 B1 KR 100453821B1 KR 20020061487 A KR20020061487 A KR 20020061487A KR 100453821 B1 KR100453821 B1 KR 100453821B1
Authority
KR
South Korea
Prior art keywords
data
bus
internal memory
signal
internal
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 - Lifetime
Application number
KR10-2002-0061487A
Other languages
English (en)
Other versions
KR20040032376A (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 KR10-2002-0061487A priority Critical patent/KR100453821B1/ko
Priority to US10/625,126 priority patent/US7133954B2/en
Publication of KR20040032376A publication Critical patent/KR20040032376A/ko
Application granted granted Critical
Publication of KR100453821B1 publication Critical patent/KR100453821B1/ko
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Microcomputers (AREA)

Abstract

본 발명의 마이크로 컨트롤러를 위한 데이터 버스 시스템은, 입/출력부, 중앙 처리 장치, 내부 메모리 및 주변 회로부를 포함하는 마이크로 컨트롤러를 위한 데이터 버스 시스템에 관한 것이다. 이 데이터 버스 시스템은, 중앙 처리 장치로부터 나가는 데이터와 외부로부터 입/출력부 또는 내부 메모리로 들어가는 데이터에 의해 사용되는 외부 억세스 버스와, 중앙 처리 장치로 들어가는 데이터와 입/출력부 또는 내부 메모리로부터 나가는 데이터와, 그리고 주변 회로부로 들어가거나 주변 회로부로부터 나가는 데이터에 의해 사용되는 내부 억세스 버스, 및 내부 메모리가 입/출력부로 통해 나가는 데이터에 의해 사용되는 내부 메모리 테스트 버스를 구비한다.

Description

마이크로 컨트롤러를 위한 데이터 버스 시스템{Data bus system for micro controller}
본 발명은 마이크로 컨트롤러를 위한 데이터 버스 시스템에 관한 것으로서, 특히 여러개의 하부 데이터 버스들을 구비한 마이크로 컨트롤러를 위한 데이터 버스 시스템에 관한 것이다.
일반적으로 마이크로프로세서(microprocessor)는 중앙 처리 장치(CPU: Central Processing Unit)의 여러 형태들 중 하나로서 컴퓨터의 중앙 처리 장치를 단일의 집적 회로에 집적한 반도체 소자이다. 마이크로 컨트롤러(micro controller)는, 이와 같은 마이크로프로세서를 이용한 중앙 처리 장치와, 일정한 용량의 기억 장치와, 그리고 입출력 제어 회로 등을 단일의 칩에 모두 내장한 것을 말한다. 이와 같은 마이크로 컨트롤러 내에서의 데이터 이동은 데이터 버스(data bus)를 통해 이루어지며, 데이터 버스를 통한 데이터 이동에 관련된 시스템을 데이터 버스 시스템이라 한다.
도 1은 종래의 마이크로 컨트롤러를 위한 데이터 버스 시스템의 일 예를 나타내 보인 블록도이다.
도 1을 참조하면, 상기 데이터 버스 시스템은 데이터 버스(102) 및 어드레스 버스(104)를 구비하며, 이 데이터 버스(102) 및 어드레스 버스(104)는 각각 입/출력부(112), 중앙 처리 장치(114), 메모리(116) 및 주변 회로부(118)와 연결된다. 따라서 중앙 처리 장치(114)와 메모리(116) 상호간, 중앙 처리 장치(114)와 주변 회로부(118) 상호간, 또는 중앙 처리 장치나 입/출력부(112) 상호간에는 데이터 버스(102)를 통해 데이터를 주고 받는다. 각각의 경우, 데이터 이동에 필요한 블록만 열리고 나머지 블록들은 열리지 않음으로써 데이터 이동을 방해하지 않는다.
그런데 이와 같은 종래의 데이터 버스 시스템은 입/출력부(112), 중앙 처리 장치(114), 메모리(116) 및 주변 회로부(118)가 하나의 데이터 버스(102)를 모두 공유하는 구조로 이루어진다. 따라서 데이터 버스(102)에 걸리는 부하 커패시턴스가 매우 크게 된다. 특히 최근의 추세는 마이크로 컨트롤러 내에 보다 많은 주변 회로들이 추가되는 추세에 있으며, 이에 따라 주변 회로들의 입/출력이 증가하게 되며, 결과적으로 데이터 버스(102)에 걸리는 부하 또한 증가하게 된다. 이와 같이 데이터 버스(102)에 걸리는 부하가 증가함에 따라 동작 속도가 떨어지고 전력 소모가 증가하게 된다는 문제가 발생한다.
본 발명이 이루고자 하는 기술적 과제는 데이터 버스 시스템을 구성하는 데이터 버스의 부하 커패시턴스를 감소시킴으로써 동작 속도를 증가시키고 전력 소모를 감소시킬 수 있는 마이크로 컨트롤러를 위한 데이터 버스 시스템을 제공하는 것이다.
도 1은 종래의 마이크로 컨트롤러를 위한 데이터 버스 시스템의 일 예를 나타내 보인 블록도이다.
도 2는 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템을 개략적으로 나타내 보인 블록도이다.
도 3은 도 2의 데이터 버스 시스템의 회로 구성을 구체적으로 나타내 보인 회로도이다.
도 4는 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템의 테스트 모드시에서의 클락 신호에 따른 내부 메모리 데이터 이동을 설명하기 위하여 나타내 보인 도면이다.
상기 기술적 과제를 달성하기 위하여, 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템은, 입/출력부, 중앙 처리 장치, 내부 메모리 및 주변 회로부를 포함하는 마이크로 컨트롤러를 위한 데이터 버스 시스템에 있어서, 상기 중앙 처리 장치로부터 나가는 데이터와 외부로부터 상기 입/출력부 또는 내부 메모리로 들어가는 데이터에 의해 사용되는 외부 억세스 버스; 상기 중앙 처리 장치로 들어가는 데이터와 상기 입/출력부 또는 내부 메모리로부터 나가는 데이터와, 그리고 상기 주변 회로부로 들어가거나 주변 회로부로부터 나가는 데이터에 의해 사용되는 내부 억세스 버스; 및 상기 내부 메모리가 상기 입/출력부로 통해 나가는 데이터에 의해 사용되는 내부 메모리 테스트 버스를 구비하는 것을 특징으로 한다.
상기 외부 억세스 버스 및 내부 억세스 버스는 래치 구조로 상호 연결되는 것이 바람직하다.
본 발명에 있어서, 상기 중앙 처리 장치와 상기 내부 억세스 버스 사이에서 데이터 이동 통로를 제공하는 중앙 처리 장치 읽기 버스; 중앙 처리 장치 읽기 신호에 의해 인에이블되어 상기 중앙 처리 장치 읽기 버스를 통해 데이터가 이동되도록 하는 제1 3-상태 버퍼; 상기 중앙 처리 장치와 상기 외부 억세스 버스 사이에서 데이터 이동 통로를 제공하는 중앙 처리 장치 쓰기 버스; 및 중앙 처리 장치 쓰기 신호에 의해 인에이블되어 상기 중앙 처리 장치 쓰기 버스를 통해 데이터가 이동되도록 하는 제2 3-상태 버퍼를 더 구비하는 것이 바람직하다.
그리고 상기 내부 메모리를 읽기 위하여 상기 내부 메모리와 상기 내부 억세스 버스 사이에 배치된 내부 메모리 읽기 컨트롤 블록; 및 상기 내부 메모리를 쓰기 위하여 상기 내부 메모리와 상기 외부 억세스 버스 사이에 배치된 내부 메모리 쓰기 컨트롤 블록을 더 구비하는 것이 바람직하다.
또한 상기 주변 회로부로부터 상기 내부 억세스 버스로의 데이터 이동 통로를 제공하는 주변 회로부 읽기 버스; 주변 회로부 읽기 신호에 의해 인에이블되어 상기 주변 회로부 읽기 버스를 통해 데이터가 이동되도록 하는 제3 3-상태 버퍼; 상기 내부 억세스 버스로부터 상기 주변 회로부로의 데이터 이동 통로를 제공하는 주변 회로부 쓰기 버스; 및 주변 회로부 쓰기 신호에 의해 인에이블되어 상기 주변 회로부 쓰기 버스를 통해 데이터가 이동되도록 하는 제4 3-상태 버퍼를 더 구비하는 것이 바람직하다.
또한 소정의 인에이블 신호에 의해 인에이블되어 상기 내부 메모리와 상기 내부 메모리 테스트 버스 사이의 데이터 전송을 가능하게 하는 제5 3-상태 버퍼를 더 구비하는 것이 바람직하다.
이 경우 상기 인에이블 신호는 내부 메모리 억세스 인에이블 신호, 테스트 모드 신호 및 내부 메모리 인에이블 신호를 입력하는 하는 AND 게이트의 출력 신호인 것이 바람직하다. 그리고 상기 내부 메모리 억세스 인에이블 신호는 시스템 클락에 동기되어 제공되며, 상기 내부 메모리 억세스 인에이블 신호의 상승 에지 혹은 하강 에지에 동기되어 상기 내부 메모리 데이터가 덤프되는 것이 바람직하다.
또한 외부 데이터 전송을 위한 데이터 포트; 상기 데이터 포트의 데이터를 컨트롤하기 위한 데이터 포트 컨트롤 블록; 및 상기 데이터 포트와 상기 데이터 포트 컨트롤 블록 및 상기 외부 억세스 버스 사이의 데이터 전송 통로를 제공하는 외부 데이터 버스를 더 구비하는 것이 바람직하다.
이 경우 소정의 인에이블 신호에 의해 인에이블되어 상기 내부 메모리 테스트 버스로부터 상기 데이터 포트 컨트롤 블록으로 데이터를 전송시키는 제6 3-상태 버퍼를 더 구비할 수 있다.
상기 인에이블 신호는 테스트 모드 신호 및 내부 메모리 인에이블 신호를 입력으로 하는 AND 게이트의 출력 신호인 것이 바람직하다.
그리고 외부 데이터 쓰기 신호에 의해 인에이블되어 상기 내부 억세스 버스로부터 상기 데이터 포트 컨트롤 블록으로의 데이터 전송을 가능하게 하는 제7 3-상태 버퍼; 및 내부 메모리 읽기 신호에 의해 인에이블되어 상기 내부 억세스 버스로부터 상기 데이터 포트 컨트롤 블록으로의 데이터 전송을 가능하게 하는 제8 3-상태 버퍼를 더 구비하는 것이 바람직하다.
또한 소정의 인에이블 신호에 의해 인에이블되어 상기 데이터 포트로부터 상기 외부 억세스 버스로의 데이터 이동을 가능하도록 하는 제8 3-상태 버퍼를 더 구비하는 것이 바람직하다.
이 경우 상기 인에이블 신호는 내부 메모리 쓰기 신호, 외부 데이터 읽기 신호 및 외부 메모리 읽기 신호를 입력으로 하는 OR 게이트의 출력 신호인 것이 바람직하다.
이하 첨부 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 그러나, 본 발명의 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시예들로 인해 한정되어지는 것으로 해석되어져서는 안된다.
도 2는 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템을 개략적으로 나타내 보인 블록도이다.
도 2를 참조하면, 본 발명에 따른 데이터 버스 시스템은 적어도 세 개의 버스 구조, 즉 내부 억세스 버스(internal access bus)(202), 외부 억세스 버스(external access bus)(204) 및 내부 메모리 테스트 버스(206)를 포함한다. 상기 내부 억세스 버스(202)와 외부 억세스 버스(204)는 래치(latch) 구조(208)에 의해 상호 연결된다. 이와 같은 내부 억세스 버스(202), 외부 억세스 버스(204) 및 내부 메모리 테스트 버스(206)는, 마이크로 컨트롤러 내에 포함되는입/출력부(212), 중앙 처리 장치(214), 내부 메모리(216) 및 주변 회로부(218) 사이에 데이터를 이동시키기 위한 통로를 제공한다. 입/출력부(212)는 외부로부터 데이터를 입력받거나 또는 외부로 데이터를 출력시키는 기능을 수행한다. 중앙 처리 장치(214)는 전체적인 제어를 수행하기 위하여 여러 가지 제어 신호들을 발생시키며, 일반적인 연산과 처리를 수행한다. 내부 메모리(216)는 마이크로 컨트롤러를 동작시키기 위한 구동 프로그램이 내장되는 장소를 제공한다. 내부 메모리(216)로서는 휘발성이나 비휘발성을 모두 사용할 수 있으며, 시스템 프로그램 뿐만 아니라 응용 프로그램도 내장될 수 있다. 주변 회로부(218)는 각종 주변 회로들을 포함하는데, 마이크로 컨트롤러의 성능과 용도에 따라 다양한 범주를 갖는다. 주변 회로부(218) 내에 포함되는 주변 회로들의 예로서는 타이머, 아날로그/디지털 컨버터, 디지털/아날로그 컨버터, 호스트 인터페이스 회로 등이 있다.
상기 내부 억세스 버스(202)는, 중앙 처리 장치(214)로 들어가는 데이터에 의해 사용되고, 입/출력부(212) 또는 내부 메모리(216)로부터 나가는 데이터에 의해 사용되며, 그리고 주변 회로부(218)로 들어가거나 주변 회로부(218)로부터 나가는 데이터에 의해서도 사용된다. 상기 외부 억세스 버스(204)는, 중앙 처리 장치(214)로부터 나가는 데이터에 의해 사용되며, 입/출력부(212) 또는 내부 메모리(216)로 들어가는 데이터에 의해서도 사용된다. 그리고 상기 내부 메모리 테스트 버스(206)는, 내부 메모리 테스트 모드로 동작시에 내부 메모리(216)가 입/출력부(212)로 통해 나가는 데이터에 의해 사용된다.
도 3은 도 2의 데이터 버스 시스템의 회로 구성을 구체적으로 나타내 보인 회로도이다.
도 3을 참조하면, 중앙 처리 장치(214)와 내부 억세스 버스(202) 사이에는 중앙 처리 장치 읽기 버스(301) 및 제1 3-상태 버퍼(401)가 배치된다. 즉 내부 억세스 버스(202)로부터 중앙 처리 장치(214)로 데이터를 이동시키는 경우에는 제1 3-상태 버퍼(401)의 인에이블 신호(CDBRDEN)에 의해 제1 3-상태 버퍼(401)가 열리고, 이에 따라 상기 데이터는 중앙 처리 장치 읽기 버스(301)와 제1 3-상태 버퍼(401)를 통해 내부 억세스 버스(202)로부터 중앙 처리 장치(214)로 이동된다. 중앙 처리 장치(214)와 외부 억세스 버스(204) 사이에는 중앙 처리 장치 쓰기 버스(302) 및 제2 3-상태 버퍼(402)가 배치된다. 즉 중앙 처리 장치(214)로부터 외부 억세스 버스(204)로 데이터를 이동시키는 경우에는 제2 3-상태 버퍼(402)의 인에이블 신호(CDBWREN)에 의해 제2 3-상태 버퍼(402)가 열리고, 이에 따라 상기 데이터는 중앙 처리 장치 쓰기 버스(302)와 제2 3-상태 버퍼(402)를 통해 중앙 처리 장치(214)로부터 외부 억세스 버스(204)로 이동된다.
주변 회로부(218)와 내부 억세스 버스(202) 사이에는, 주변 회로부 읽기 버스(303)와 제3 3-상태 버퍼(403), 그리고 주변 회로부 쓰기 버스(304)와 제4 3-상태 버퍼(404)가 배치된다. 주변 회로부(218)로부터 내부 억세스 버스(202)로 데이터가 이동되는 경우, 제3 3-상태 버퍼(403)의 인에이블 신호(PERIRDEN)에 의해 제3 3-상태 버퍼(403)가 열리며, 따라서 상기 데이터는 주변 회로부 읽기 버스(303)와 제3 3-상태 버퍼(403)를 통해 주변 회로부(218)로부터 내부 억세스 버스(202)로 이동된다. 마찬가지로, 내부 억세스 버스(202)로부터 주변 회로부(218)로 데이터가 이동되는 경우, 제4 3-상태 버퍼(404)의 인에이블 신호(PERIWREN)에 의해 제4 3-상태 버퍼(404)가 열리며, 따라서 상기 데이터는 주변 회로부 쓰기 버스(304)와 제4 3-상태 버퍼(404)를 통해 내부 억세스 버스(202)로부터 주변 회로부(218)로 이동된다.
내부 메모리(216)와 내부 억세스 버스(202) 사이에는 내부 메모리 읽기 컨트롤 블록(502), 내부 메모리 쓰기 블록(504) 및 메모리 버스(305)가 배치된다. 내부 메모리 읽기 컨트롤 블록(502)은, 내부 메모리(216)를 읽을 경우 메모리 버스(305)와 내부 억세스 버스(202) 사이의 데이터 이동을 컨트롤 하기 위한 컨트롤 신호들을 발생시킨다. 내부 메모리 쓰기 컨트롤 블록(504)은, 내부 메모리(216)를 쓸 경우 메모리 버스(305)와 외부 억세스 버스(204) 사이의 데이터 이동을 컨트롤 하기 위한 컨트롤 신호들을 발생시킨다. 이 내부 메모리 읽기 컨트롤 블록(502)과 내부 메모리 쓰기 컨트롤 블록(504)은 외부 메모리를 사용할 때에서 사용되지 않는다. 메모리 버스(305)는 내부 메모리(216)와 내부 억세스 버스(202) 또는 외부 억세스 버스(204) 사이의 데이터 이동 통로를 제공하기 위한 것이다.
상기 내부 메모리(216)는 내부 메모리 테스트 버스(206)를 통해 데이터 포트 컨트롤 블록(506)과 연결된다. 내부 메모리 테스트 버스(206)는 내부 메모리 테스트 모드시에만 사용된다. 내부 메모리가 읽기 전용일 경우 내부 메모리 테스트 버스(206)를 사용하여 큰 사이즈의 읽기 전용 내부 메모리(216)를 이 데이터 포트컨트롤 블록(506)과 내부 메모리 테스트 버스(206)를 사용하여 상기 테스트를 수행하게 되면 다른 데이터 이동에 영향을 주지 않고 빠른 속도로 테스트를 수행할 수 있다.
내부 메모리 테스트 버스(206)와 메모리 버스(305) 사이는 제5 3-상태 버퍼(405)가 배치되며, 내부 메모리 테스트 버스(206)와 데이터 포트 컨트롤 블록(506) 사이에는 제6 3-상태 버퍼(406)가 배치된다. 제5 3-상태 버퍼(405)의 인에이블 신호는 제1 AND 게이트(602)의 출력 신호이다. 제1 AND 게이트(602)의 입력 단자로는 내부 메모리 인에이블 신호(IMEMEN), 테스트 모드 인에이블 신호(TESTMODE) 및 내부 메모리 억세스 인에이블 신호(IOE)가 입력된다. 따라서 제1 AND 게이트(602)로 내부 메모리 인에이블 신호(IMEMEN), 테스트 모드 인에이블 신호(TESTMODE) 및 내부 메모리 억세스 인에이블 신호(IOE)가 모두 하이 레벨(high level)로 입력되는 경우에만 제5 3-상태 버퍼(405)가 열리게 되어 데이터가 내부 메모리(216)와 내부 메모리 테스트 버스(206) 사이로 이동할 수 있다. 제6 3-상태 버퍼(406)의 인에이블 신호는 제2 AND 게이트(604)의 출력 신호이다. 제2 AND 게이트(604)의 입력 단자로는 내부 메모리 인에이블 신호(IMEMEN) 및 테스트 모드 인에이블 신호(TESTMODE)가 입력된다. 따라서 제2 AND 게이트(604)로 내부 메모리 인에이블 신호(IMEMEN) 및 테스트 모드 인에이블 신호(TESTMODE)가 모두 하이 레벨로 입력되는 경우에만 제6 3-상태 버퍼(406)가 열리게 되어 데이터가 내부 메모리 테스트 버스(206)와 데이터 포트 컨트롤 블록(506) 사이로 이동할 수 있다.
데이터 포트 컨트롤 블록(506)과 내부 억세스 버스(202) 사이에는 제7 3-상태 버퍼(407) 및 제8 3-상태 버퍼(408)가 각각 배치된다. 제7 3-상태 버퍼(407)의 인에이블 신호는 외부 데이터 쓰기 신호(EIOWR)이며, 제8 3-상태 버퍼(408)의 인에이블 신호는 내부 메모리 읽기 신호(IMEMRD)이다. 즉 외부 데이터를 쓰는 경우, 외부 데이터 쓰기 신호(EIOWR)가 하이 레벨로 제7 3-상태 버퍼(407)로 입력되면, 제7 3-상태 버퍼(407)가 열려서 내부 억세스 버스(202)로부터 데이터 포트 컨트롤 블록(506)으로 데이터가 전송된다. 마찬가지로 내부 메모리를 읽을 경우, 내부 메모리 읽기 신호(IMEMRD)가 하이 레벨로 제8 3-상태 버퍼(408)로 입력되면, 제8 3-상태 버퍼(408)가 열려서 내부 억세스 버스(202)로부터 데이터 포트 컨트롤 블록(506)으로 데이터가 전송된다. 데이터 포트 컨트롤 블록(506)으로 전송된 데이터는 외부 데이터 버스(208)를 통해 데이터 포트(508)로 전송된다.
데이터 포트(508)는 외부 핀으로 외부 데이터를 읽을 경우, 내부 메모리를 쓸 경우, 또는 외부 메모리를 읽을 경우에 사용되며, 이를 위하여 제8 3-상태 버퍼(408)를 통해 외부 억세스 버스(204)와 연결된다. 제8 3-상태 버퍼(408)의 인에이블 신호는 OR 게이트(606)의 출력 단자로부터 출력되는 출력 신호이다. OR 게이트(606)의 입력 단자로는 내부 메모리 쓰기 신호(IMEMWR), 외부 데이터 읽기 신호(EIORD) 및 외부 메모리 읽기 신호(EMEMRD)가 입력된다. 따라서 내부 메모리를 쓰고자 하는 경우, 외부 데이터를 읽고자 하는 경우 또는 외부 메모리를 읽고자 하는 경우 OR 게이트(606)의 출력 단자로 하이 레벨의 출력 신호가 출력되고, 이 출력 신호는 제8 3-상태 버퍼(408)를 열리게 하여 데이터 포트(508)로부터 외부 억세스 버스(205)로 데이터를 전송시킨다.
이와 같은 데이터 버스 시스템에서 마이크로 컨트롤러를 구성하는 구성 요소들 사이의 데이터 전송 방식을 보다 상세히 설명하면 다음과 같다.
먼저 중앙 처리 장치(214)에서 주변 회로부(218)로의 데이터 이동은, 제2 3-상태 버퍼(402) 및 제4 3-상태 버퍼(404)가 열릴 수 있도록 적절한 인에이블 신호를 각각 인가함으로써, 중앙 처리 장치 쓰기 버스(302), 외부 억세스 버스(204), 내부 억세스 버스(202) 및 주변 회로부 쓰기 버스(304)를 차례로 거치면서 이루어질 수 있다. 주변 회로부(218)로부터 중앙 처리 장치(214)로의 데이터 이동은 주변 회로부 읽기 버스(303), 내부 억세스 버스(202) 및 중앙 처리 읽기 버스(301)를 차례로 거치면서 이루어질 수 있다. 이 경우 제3 3-상태 버퍼(403)와 제1 3-상태 버퍼(401)는 적절한 인에이블 신호의 인가에 의해 열리는 상태가 된다.
다음에 중앙 처리 장치(214)에서 내부 메모리(216)로의 데이터 이동은, 제2 3-상태 버퍼(402)가 열린 상태에서 중앙 처리 장치 읽기 버스(302), 외부 억세스 버스(204), 내부 메모리 쓰기 컨트롤 블록(504) 및 메모리 버스(305)를 차례로 거치면서 이루어진다. 반대로 내부 메모리(216)에서 중앙 처리 장치(214)로의 데이터 이동은, 제1 3-상태 버퍼(401)가 열린 상태에서 메모리 버스(305), 내부 메모리 읽기 컨트롤 블록(502), 내부 억세스 버스(202) 및 중앙 처리 장치 읽기 버스(301)를 차례로 거치면서 이루어진다.
주변 회로부(218)로부터 내부 메모리(216)로의 데이터 이동은, 제3 3-상태 버퍼(403)가 열린 상태에서 주변 회로부 읽기 버스(303), 내부 억세스 버스(202), 외부 억세스 버스(204), 내부 메모리 쓰기 컨트롤 블록(504) 및 내부 메모리버스(305)를 차폐로 거치면서 이루어진다. 반대로 내부 메모리(216)로부터 주변 회로부(218)로의 데이터 이동은, 제4 3-상태 버퍼(404)가 열린 상태에서 내부 메모리 버스(305), 내부 메모리 읽기 컨트롤 블록(502), 내부 억세스 버스(202) 및 주변 회로부 쓰기 버스(304)를 차례로 거치면서 이루어진다.
외부 메모리로부터 중앙 처리 장치(214)로의 데이터 이동을 위해서는, 먼저 데이터 포트(508)를 통해 입력되는 외부 메모리로부터의 데이터가, 제8 3-상태 버퍼(408)가 열린 상태에서 외부 데이터 버스(208)를 통해 외부 억세스 버스(204)로 전송된다. 이때 제8 3-상태 버퍼(408)는, 외부 메모리 읽기 신호(EMEMRD)에 의해 출력되는 OR 게이트(606)에 의해 인에이블된다. 외부 억세스 버스(204)로 전송된 데이터는, 내부 억세스 버스(202)를 통해 제1 3-상태 버퍼(401)가 열린 상태에서 중앙 처리 장치 읽기 버스(301)를 통해 중앙 처리 장치(214)로 전송된다. 상기 외부 메모리로부터의 데이터가 주변 회로부(218)로도 전송될 수 있는데, 이 경우에는 내부 억세스 버스(202)까지 데이터가 전송되는 과정이 동일하며, 내부 억세스 버스(202)까지 전송된 데이터는 제4 3-상태 버퍼(404)가 열린 상태에서 주변 회로부 쓰기 버스(304)를 통해 주변 회로부(218)로 전송된다.
도 4는 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템의 테스트 모드시에서의 클락 신호에 따른 내부 메모리 데이터 이동을 설명하기 위하여 나타내 보인 도면이다.
도 4를 참조하면, 내부 메모리 억세스 신호(IOE)가 클락 신호에 동기되어 제공되며, 이 내부 메모리 억세스 신호(IOE)의 상승 에지(raising edge)에 동기되어내부 메모리(216)로부터의 데이터(D0, D1, D2, …, D8, D9)가 덤프(dump)된다. 이와 같이 내부 메모리 억세스 신호(IOE)가 클락 신호에 동기되어 제공되므로 덤프 속도도 클락 신호에 비례하게 되며, 결과적으로 1 사이클 억세스로 테스트를 수행할 수 있으므로 테스트 소요 시간을 단축시킬 수 있다.
이상 본 발명을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시예에 한정되지 않으며, 본 발명의 기술적 사상 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러 가지 변형이 가능함은 당연하다.
이상의 설명에서와 같이, 본 발명에 따른 마이크로 컨트롤러를 위한 데이터 버스 시스템에 의하면, 데이터 버스를 내부 억세스 버스, 외부 억세스 버스 및 내부 메모리 테스트 버스로 구별하여 배치하고, 내부 억세스 버스와 외부 억세스 버스를 래치 구조로 상호 연결되도록 함으로써, 중앙 처리 장치, 내부 메모리, 주변 회로부 등의 마이크로 컨트롤러를 구성하는 단위 장치들 사이의 데이터 이동에 의한 각 버스의 부하 커패시턴스를 감소시킬 수 있으며, 이에 따라 고속 동작 및 저 전력 소모에 적합하며, 빠른 내부 메모리 테스트 속도를 제공하는 데이터 버스 시스템을 제공할 수 있다는 이점을 제공한다.

Claims (14)

  1. 입/출력부, 중앙 처리 장치, 내부 메모리 및 주변 회로부를 포함하는 마이크로 컨트롤러를 위한 데이터 버스 시스템에 있어서,
    상기 중앙 처리 장치로부터 나가는 데이터와 외부로부터 상기 입/출력부 또는 내부 메모리로 들어가는 데이터에 의해 사용되는 외부 억세스 버스;
    상기 중앙 처리 장치로 들어가는 데이터와 상기 입/출력부 또는 내부 메모리로부터 나가는 데이터와, 그리고 상기 주변 회로부로 들어가거나 주변 회로부로부터 나가는 데이터에 의해 사용되는 내부 억세스 버스; 및
    상기 내부 메모리가 상기 입/출력부로 통해 나가는 데이터에 의해 사용되는 내부 메모리 테스트 버스를 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  2. 제1항에 있어서,
    상기 외부 억세스 버스 및 내부 억세스 버스는 래치 구조로 상호 연결되는 것을 특징으로 하는 데이터 버스 시스템.
  3. 제1항에 있어서,
    상기 중앙 처리 장치와 상기 내부 억세스 버스 사이에서 데이터 이동 통로를 제공하는 중앙 처리 장치 읽기 버스;
    중앙 처리 장치 읽기 신호에 의해 인에이블되어 상기 중앙 처리 장치 읽기 버스를 통해 데이터가 이동되도록 하는 제1 3-상태 버퍼;
    상기 중앙 처리 장치와 상기 외부 억세스 버스 사이에서 데이터 이동 통로를 제공하는 중앙 처리 장치 쓰기 버스; 및
    중앙 처리 장치 쓰기 신호에 의해 인에이블되어 상기 중앙 처리 장치 쓰기버스를 통해 데이터가 이동되도록 하는 제2 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  4. 제1항에 있어서,
    상기 내부 메모리를 읽기 위하여 상기 내부 메모리와 상기 내부 억세스 버스 사이에 배치된 내부 메모리 읽기 컨트롤 블록; 및
    상기 내부 메모리를 쓰기 위하여 상기 내부 메모리와 상기 외부 억세스 버스 사이에 배치된 내부 메모리 쓰기 컨트롤 블록을 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  5. 제1항에 있어서,
    상기 주변 회로부로부터 상기 내부 억세스 버스로의 데이터 이동 통로를 제공하는 주변 회로부 읽기 버스;
    주변 회로부 읽기 신호에 의해 인에이블되어 상기 주변 회로부 읽기 버스를 통해 데이터가 이동되도록 하는 제3 3-상태 버퍼;
    상기 내부 억세스 버스로부터 상기 주변 회로부로의 데이터 이동 통로를 제공하는 주변 회로부 쓰기 버스; 및
    주변 회로부 쓰기 신호에 의해 인에이블되어 상기 주변 회로부 쓰기 버스를 통해 데이터가 이동되도록 하는 제4 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  6. 제1항에 있어서,
    소정의 인에이블 신호에 의해 인에이블되어 상기 내부 메모리와 상기 내부 메모리 테스트 버스 사이의 데이터 전송을 가능하게 하는 제5 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  7. 제6항에 있어서,
    상기 인에이블 신호는 내부 메모리 억세스 인에이블 신호, 테스트 모드 신호 및 내부 메모리 억세스 신호를 입력하는 하는 AND 게이트의 출력 신호인 것을 특징으로 하는 데이터 버스 시스템.
  8. 제7항에 있어서,
    상기 내부 메모리 억세스 인에이블 신호는 시스템 클락에 동기되어 제공되며, 상기 내부 메모리 억세스 인에이블 신호의 상승 에지에 동기되어 상기 내부 메모리 데이터가 덤프되는 것을 특징으로 하는 데이터 버스 시스템.
  9. 제1항에 있어서,
    외부 데이터 전송을 위한 데이터 포트;
    상기 데이터 포트의 데이터를 컨트롤하기 위한 데이터 포트 컨트롤 블록; 및
    상기 데이터 포트와 상기 데이터 포트 컨트롤 블록 및 상기 외부 억세스 버스 사이의 데이터 전송 통로를 제공하는 외부 데이터 버스를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  10. 제9항에 있어서,
    소정의 인에이블 신호에 의해 인에이블되어 상기 내부 메모리 테스트 버스로부터 상기 데이터 포트 컨트롤 블록으로 데이터를 전송시키는 제6 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  11. 제10항에 있어서,
    상기 인에이블 신호는 테스트 모드 신호 및 내부 메모리 인에이블 신호를 입력으로 하는 AND 게이트의 출력 신호인 것을 특징으로 하는 데이터 버스 시스템.
  12. 제9항에 있어서,
    외부 데이터 쓰기 신호에 의해 인에이블되어 상기 내부 억세스 버스로부터 상기 데이터 포트 컨트롤 블록으로의 데이터 전송을 가능하게 하는 제7 3-상태 버퍼; 및
    내부 메모리 읽기 신호에 의해 인에이블되어 상기 내부 억세스 버스로부터 상기 데이터 포트 컨트롤 블록으로의 데이터 전송을 가능하게 하는 제8 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  13. 제9항에 있어서,
    소정의 인에이블 신호에 의해 인에이블되어 상기 데이터 포트로부터 상기 외부 억세스 버스로의 데이터 이동을 가능하도록 하는 제8 3-상태 버퍼를 더 구비하는 것을 특징으로 하는 데이터 버스 시스템.
  14. 제13항에 있어서,
    상기 인에이블 신호는 내부 메모리 쓰기 신호, 외부 데이터 읽기 신호 및 내부 메모리 읽기 신호를 입력으로 하는 OR 게이트의 출력 신호인 것을 특징으로 하는 데이터 버스 시스템.
KR10-2002-0061487A 2002-10-09 2002-10-09 마이크로 컨트롤러를 위한 데이터 버스 시스템 Expired - Lifetime KR100453821B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2002-0061487A KR100453821B1 (ko) 2002-10-09 2002-10-09 마이크로 컨트롤러를 위한 데이터 버스 시스템
US10/625,126 US7133954B2 (en) 2002-10-09 2003-07-22 Data bus system for micro controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0061487A KR100453821B1 (ko) 2002-10-09 2002-10-09 마이크로 컨트롤러를 위한 데이터 버스 시스템

Publications (2)

Publication Number Publication Date
KR20040032376A KR20040032376A (ko) 2004-04-17
KR100453821B1 true KR100453821B1 (ko) 2004-10-20

Family

ID=32923717

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0061487A Expired - Lifetime KR100453821B1 (ko) 2002-10-09 2002-10-09 마이크로 컨트롤러를 위한 데이터 버스 시스템

Country Status (2)

Country Link
US (1) US7133954B2 (ko)
KR (1) KR100453821B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7711787B2 (en) 2004-12-15 2010-05-04 Electronics And Telecommunications Research Institute On-chip network interfacing apparatus and method
KR100839593B1 (ko) 2006-09-29 2008-06-19 한국전자통신연구원 온칩 네트워크의 병렬성을 높이기 위한 슬레이브 네트워크인터페이스 회로 및 그 시스템
US8421822B2 (en) * 2009-05-13 2013-04-16 David Odland Customizing footwear
US20110025704A1 (en) * 2009-07-31 2011-02-03 David Odland Customizing Accessories
US8421811B2 (en) * 2009-09-15 2013-04-16 David Odland Customized vehicle body
KR101284002B1 (ko) * 2011-09-07 2013-07-10 삼성전자주식회사 외부 메모리의 장착 수단을 구비하는 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4604709A (en) * 1983-02-14 1986-08-05 International Business Machines Corp. Channel communicator
JPH05274250A (ja) * 1992-03-25 1993-10-22 Toshiba Corp 情報処理装置
KR960008559A (ko) * 1994-08-29 1996-03-22 이헌조 모니터 보드
KR19990063487A (ko) * 1997-12-22 1999-07-26 가네꼬 히사시 데이터 버스의 효과적인 사용으로 처리 능력을 향상시킬 수 있는 정보 처리 장치 및 정보 처리 방법
KR20000025263A (ko) * 1998-10-09 2000-05-06 김영환 버스 제어회로
KR20010057245A (ko) * 1999-12-20 2001-07-04 윤종용 시스템 버스와 분리되는 외부 입출력 버스를 가지는마이크로 컨트롤러

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0821011B2 (ja) * 1987-06-03 1996-03-04 株式会社日立製作所 バス拡張制御方式
US5125080A (en) * 1989-11-13 1992-06-23 Chips And Technologies, Incorporated Logic support chip for AT-type computer with improved bus architecture
JP2910303B2 (ja) * 1990-06-04 1999-06-23 株式会社日立製作所 情報処理装置
US5305446A (en) 1990-09-28 1994-04-19 Texas Instruments Incorporated Processing devices with improved addressing capabilities, systems and methods
US5537517A (en) * 1991-10-23 1996-07-16 Seiko Epson Corporation Information processing device in an electronic apparatus utilizing an accessory control device and methods of application
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
WO1997004376A1 (en) * 1995-07-20 1997-02-06 Dallas Semiconductor Corporation Secure module with microprocessor and co-processor
US6088783A (en) * 1996-02-16 2000-07-11 Morton; Steven G DPS having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word
JP4226085B2 (ja) 1996-10-31 2009-02-18 株式会社ルネサステクノロジ マイクロプロセッサ及びマルチプロセッサシステム
US6725307B1 (en) * 1999-09-23 2004-04-20 International Business Machines Corporation Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system
US6816750B1 (en) * 2000-06-09 2004-11-09 Cirrus Logic, Inc. System-on-a-chip
JP3925062B2 (ja) * 2000-09-19 2007-06-06 三菱電機株式会社 車載電子制御装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4604709A (en) * 1983-02-14 1986-08-05 International Business Machines Corp. Channel communicator
JPH05274250A (ja) * 1992-03-25 1993-10-22 Toshiba Corp 情報処理装置
KR960008559A (ko) * 1994-08-29 1996-03-22 이헌조 모니터 보드
KR19990063487A (ko) * 1997-12-22 1999-07-26 가네꼬 히사시 데이터 버스의 효과적인 사용으로 처리 능력을 향상시킬 수 있는 정보 처리 장치 및 정보 처리 방법
KR20000025263A (ko) * 1998-10-09 2000-05-06 김영환 버스 제어회로
KR20010057245A (ko) * 1999-12-20 2001-07-04 윤종용 시스템 버스와 분리되는 외부 입출력 버스를 가지는마이크로 컨트롤러

Also Published As

Publication number Publication date
US20040177173A1 (en) 2004-09-09
KR20040032376A (ko) 2004-04-17
US7133954B2 (en) 2006-11-07

Similar Documents

Publication Publication Date Title
EP0189638B1 (en) Bus width adapter
US5566325A (en) Method and apparatus for adaptive memory access
EP1652058B1 (en) Switch/network adapter port incorporating selectively accessible shared memory resources
US6433600B2 (en) Method and apparatus for glitch protection for input buffers in a source-synchronous environment
JPH1011971A (ja) 半導体記憶装置
CN106487362B (zh) 半导体电路
KR100453821B1 (ko) 마이크로 컨트롤러를 위한 데이터 버스 시스템
JPH0342732A (ja) 半導体集積回路
JPH0146946B2 (ko)
KR0147703B1 (ko) 피씨아이 버스에서 플러그/플레이를 위한 배치회로
JPS6240800B2 (ko)
US6711646B1 (en) Dual mode (registered/unbuffered) memory interface
US5907519A (en) Write driver circuit with write-per-bit data masking function
EP0382342B1 (en) Computer system DMA transfer
KR950009576B1 (ko) 버스 인터페이스 장치
KR100344217B1 (ko) 듀얼포트 메모리를 이용한 통신 인터페이스회로
KR890003236Y1 (ko) 데이터 변환값의 라이트 및 리이드 회로
EP1849084B1 (en) Bus arbitration controller with reduced energy consumption
KR930000670B1 (ko) 메인 cpu와 서브 cpu의 공용램 인터페이스 회로
KR20050060715A (ko) 마이크로 프로세서의 초기화 장치
JP2762537B2 (ja) プログラムテーブル入出力回路
JPH0442329A (ja) データ処理装置
JPS6150300A (ja) メモリ
JPS59112489A (ja) Icメモリ
JPS6228994A (ja) メモリ集積回路

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20021009

PA0201 Request for examination
PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20040920

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20041012

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20041013

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20070919

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20081001

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20091001

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20100928

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20111007

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20121008

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20121008

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20131004

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20131004

Start annual number: 10

End annual number: 10

FPAY Annual fee payment

Payment date: 20141002

Year of fee payment: 11

PR1001 Payment of annual fee

Payment date: 20141002

Start annual number: 11

End annual number: 11

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 13

PR1001 Payment of annual fee

Payment date: 20160929

Start annual number: 13

End annual number: 13

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 14

PR1001 Payment of annual fee

Payment date: 20170929

Start annual number: 14

End annual number: 14

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 15

PR1001 Payment of annual fee

Payment date: 20180928

Start annual number: 15

End annual number: 15

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 16

PR1001 Payment of annual fee

Payment date: 20190924

Start annual number: 16

End annual number: 16

PR1001 Payment of annual fee

Payment date: 20201005

Start annual number: 17

End annual number: 17

PC1801 Expiration of term

Termination date: 20230409

Termination category: Expiration of duration