KR100259855B1 - 공통 마이크로 프로세서 버스의 중재 장치 - Google Patents

공통 마이크로 프로세서 버스의 중재 장치 Download PDF

Info

Publication number
KR100259855B1
KR100259855B1 KR1019970079008A KR19970079008A KR100259855B1 KR 100259855 B1 KR100259855 B1 KR 100259855B1 KR 1019970079008 A KR1019970079008 A KR 1019970079008A KR 19970079008 A KR19970079008 A KR 19970079008A KR 100259855 B1 KR100259855 B1 KR 100259855B1
Authority
KR
South Korea
Prior art keywords
logic
output
flip
microcontroller
low
Prior art date
Application number
KR1019970079008A
Other languages
English (en)
Other versions
KR19990058834A (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 KR1019970079008A priority Critical patent/KR100259855B1/ko
Publication of KR19990058834A publication Critical patent/KR19990058834A/ko
Application granted granted Critical
Publication of KR100259855B1 publication Critical patent/KR100259855B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/366Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 공통 마이크로 프로세서 버스의 중재 장치에 관한 것으로서, 특히 마스터 프로세서와 다수의 슬레이브 프로세서를 채택한 시스템이나 장치내에서 독립적으로 운용되는 마이크로 프로세서 버스에서 중앙 처리 장치의 버스 사용권 요구 없이 액세스 중재가 가능하도록 하기 위한 중재 장치에 관한 것이다.
본 발명은 다수의 마이크로 제어기와, 버퍼를 통해서 상기 마이크로 제어기의 버스를 제어하는 주 CPU 및 상기 마이크로 제어기와 버퍼 및 주 CPU의 버스 사용을 조정하는 중재 로직에 있어서, 마이크로 제어기로부터 입력되는 스트로브B 신호가 로우이고 로직2의 출력이 로우일때만 하이를 출력하는 로직1, 상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하는 D-플립플롭1, 상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하고 상기 D-플립플롭2와는 서로 반전된 클럭을 가지는 D-플립플롭2, 주 CPU로부터 입력되는 스트로브A가 로우이고, 상기 D-플립플롭1 및 D-플립플롭2의 출력을 모두 로우일때만 하이를 출력하는 로직2, 상기 로직2의 출력을 반전시켜 버퍼의 이네이블 신호로 공급하는 반전기, 마이크로 제어기의 스트로브B 신호가 로우이고 상기 D-플립플롭2의 출력이 로우일때만 하이를 출력하는 로직3 및 상기 로직3의 출력을 지연시켜 마이크로 제어기의 액세스 터미네이션 신호로 공급하는 지연기를 포함한다.

Description

공통 마이크로 프로세서 버스의 중재 장치
본 발명은 공통(Common) 마이크로 프로세서 버스(Micro-Processor Bus)의 중재 장치(Arbiter Logic)에 관한 것으로서, 특히 마스터 프로세서(Master Processor)와 다수의 슬레이브 프로세서(Slave Processor)를 채택한 시스템이나 장치내에서 독립적으로 운용되는 마이크로 프로세서 버스에서 중앙 처리 장치(Central Processing Unit: CPU)의 버스 사용권 요구 없이 액세스(Access) 중재가 가능하도록 하기 위한 중재 장치에 관한 것이다.
다수의 프로세서 및 메모리를 포함하고 있는 시스템에서 각 장치간의 통신은 버스를 이용한다. 통상적으로 프로세서간의 통신을 위해서는 양방향 포트 램(Dual Port Random Access Memory: DPRAM)을 이용한다. 상기 양방향 포트 램은 프로세서간의 처리 메시지를 주고받는 버퍼의 역할을 수행한다.
도 1 은 통상적인 두 프로세서간의 통신을 나타낸 동작도이다. 도시된 바와 같이, CPU와 주변 회로로 구성된 두 프로세서는 어드레스(Address)/데이터(Data)/제어(Control) 버스를 통해서 양방향 램과 연결된다. 상기 프로세서 및 양방향 램은 중재기(Arbiter)에 의하여 조정된다.
그러나 이러한 경우, 독립적인 버스 구조를 갖는 한 프로세서가 현재 자신의 고유한 작업을 수행하는 다른 프로세서 내부의 레지스터(Register)를 액세스하고자 할 때는 별도의 버스 사용 방법이 필요하다는 문제점이 발생된다.
따라서 본 발명은 상기한 바와 같은 문제점을 해결하기 위하여, 독립적인 버스로 운영되는 다수의 마이크로 제어기(Controller)를 하나의 독립 버스를 갖는 주(main) CPU와 정합하여, 액세스전 버스 사용권을 요구할 필요 없이 주 CPU가 마이크로 제어기의 내부 레지스터를 액세스 제어하여 마이크로 제어기의 동작 모드에 영향을 주도록 구성된 공통 마이크로 프로세서 버스의 중재 장치를 제공하는 것을 목적으로 한다.
도 1 은 통상적인 두 프로세서간의 통신을 나타낸 동작도.
도 2 는 본 발명에 의한 공통 마이크로 프로세서 버스의 통신 방법을 나타낸 구성도.
도 3 은 도 2 에 나타낸 중재 로직의 내부 구성도.
상기한 바와 같은 목적을 달성하기 위하여 창안된 본 발명의 바람직한 일 실시예는,
다수의 마이크로 제어기와, 버스를 통해서 상기 마이크로 제어기와 연결된 버퍼와, 상기 버퍼를 통해서 상기 마이크로 제어기의 버스를 제어하는 주 CPU 및 상기 마이크로 제어기와 버퍼 및 주 CPU의 버스 사용을 조정하는 중재 로직에 있어서,
마이크로 제어기로부터 입력되는 스트로브B 신호가 로우이고 로직2의 출력이 로우일때만 하이를 출력하는 로직1;
상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하는 D-플립플롭1;
상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하고 상기 D-플립플롭2와는 서로 반전된 클럭을 가지는 D-플립플롭2;
주 CPU로부터 입력되는 스트로브A가 로우이고, 상기 D-플립플롭1 및 D-플립플롭2의 출력을 모두 로우일때만 하이를 출력하는 로직2;
상기 로직2의 출력을 반전시켜 버퍼의 이네이블 신호로 공급하는 반전기;
마이크로 제어기의 스트로브B 신호가 로우이고 상기 D-플립플롭2의 출력이 로우일때만 하이를 출력하는 로직3; 및
상기 로직3의 출력을 지연시켜 마이크로 제어기의 액세스 터미네이션 신호로 공급하는 지연기를 포함한다.
본 발명의 바람직한 일 실시예에 있어서, 상기 D-플립플롭 1 및 D-플립플롭 2는 주 CPU와 마이크로 제어기의 액세스 상태 여부를 나타내는 플래그의 역할을 수행하는 것이 바람직하며,
상기 마이크로 제어기가 현재 버스를 점유중인 경우 상기 D-플립플롭1이 하이를 출력하는 것이 바람직하며,
상기 주 CPU가 현재 버스를 점유중인 경우 상기 D-플립플롭2가 하이를 출력하는 것이 바람직하며,
상기 D-플립플롭1 및 D-플립플롭2는 주 CPU의 액세스에 우선 순위를 두는 것이 바람직하며,
상기 지연기는 상기 마이크로 제어기의 액세스 시간 조건에 따른 지연값을 가지는 것이 바람직하며,
상기의 로직2는 스트로브B가 로우가 된 다음, 클럭 1주기 후에 출력을 하이로 하는 것이 바람직하다.
도 2 는 본 발명에 의한 공통 마이크로 프로세서 버스의 통신 방법을 나타낸 구성도이다. 도시된 바와 같이 주 CPU와 주변 회로를 가지는 프로세서 모듈과; 마이크로 제어기와 주변 회로를 가지는 프로세서 모듈; 상기 시스템과 어드레스/제어 버스를 통해서 연결된 버퍼1; 상기 프로세서 모듈과 데이터 버스를 통해서 연결된 버퍼2; 상기 프로세서 모듈 및 버퍼의 버스 사용을 조정하는 중재기를 포함한다.
두 프로세서 모듈은 버퍼로서 버스를 분리한다. 주 CPU에서 마이크로 제어기 버스를 점유하는 경우 버퍼가 열려서, 주 CPU의 버스가 마이크로 제어기의 버스를 순간 점유하게 된다. 중재 로직은 주 CPU와 마이크로 제어기의 스트로브 중 특정 스트로브가 액티브일 때, 상대 스트로브의 상태에 따라 마이크로 제어기 버스의 점유를 허가함으로써, 주 CPU의 버스 사용을 허용한다. 또한 중재 로직은 액세스 터미네이션을 제어하여 주 CPU의 액세스를 스탠바이시킬 수 있다.
도 3 은 도 2 에 나타낸 중재 로직의 내부 구성도를 나타낸 것이다. 도시된 바와 같이, 마이크로 제어기로부터 입력되는 스트로브B 신호가 로우이고 로직2의 출력이 로우일때만 하이를 출력하는 로직1과; 상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하는 D-플립플롭1; 상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하고 상기 D-플립플롭2와는 서로 반전된 클럭을 가지는 D-플립플롭2; 주 CPU로부터 입력되는 스트로브A가 로우이고, 상기 D-플립플롭1 및 D-플립플롭2의 출력을 모두 로우일때만 하이를 출력하는 로직2; 상기 로직2의 출력을 반전시켜 버퍼의 이네이블 신호로 공급하는 반전기; 마이크로 제어기의 스트로브B 신호가 로우이고 상기 D-플립플롭2의 출력이 로우일때만 하이를 출력하는 로직3; 및 상기 로직3의 출력을 지연시켜 마이크로 제어기의 액세스 터미네이션 신호로 공급하는 지연기를 포함한다.
이하 상기 도 2 및 도 3 을 참조하여 본 발명의 동작에 대하여 설명한다. 상기 로직2과 로직3의 출력은 최종적인 마이크로 제어기의 액세스 선택이 된다. 로직2의 출력인 선택A 신호는 주 CPU에 의한 마이크로 제어기의 버스 액세스를 허락하는 신호가 된다. 로직3의 출력인 선택B 신호는 마이크로 제어기 자신에 의한 버스 액세스를 허락하는 신호가 된다. 상기 선택A 신호와 선택B 신호에 의해서 마이크로 제어기의 버스 사용이 결정된다.
두 개의 D-플립플롭은 플래그의 역할을 한다. 각 플립플롭은, 하나의 프로세서 모듈이 액세스하고자 할 때 상대방의 액세스 상태 여부를 나타낸다. 또한 상대방이 액세스 스탠바이 상태일 때 자신의 액세스 정보를 플래그에 등록할 수 있다.
먼저 로직1으로 입력되는 마이크로 제어기의 액세스 스트로브인 스트로브B가 로우(Low)이고 또하나의 입력이 로우(low)인 경우에만 로직1은 하이(high)를 출력한다. 로직1의 또다른 입력은 로직2의 출력인 선택A 신호이다. 즉, 로직1은 스트로브B가 로우(액티브)이고 선택A가 로우(스탠바이)인 경우에만 하이를 출력한다. 이 경우 D 플립플롭1 클럭의 상승에지에서 플립플롭1의 출력이 하이가 되어, 현재 마이크로 제어기가 버스를 점유중임을 알린다. 버스가 사용중인 동안은 플립플롭1의 출력이 하이를 유지한다.
만약 로직3으로 입력되는 플립플롭2의 출력이 로우(스탠바이)이라면 로직3은 하이를 출력한다. 그러면 로직3의 출력신호는 마이크로 제어기의 액세스 시간 조건에 따른 지연값을 가지는 지연소자를 거쳐서 마이크로 제어기에 액세스 터미네이션B 신호를 인가한다. 액세스 터미네이션B 신호가 인가된 마이크로 제어기는 액세스 종료를 허용한다.
그동안 스트로브A가 로우(액티브)가 되더라도 로직2의 논리회로에서 플립플롭의 출력조건이 맞지 않으므로 논리차단된다. 그러므로 선택A는 로우(스탠바이) 상태로 남아 있으며 이것은 플립플롭의 리셋 조건(하이)에도 영향을 미치지 못한다. 이 경우 선택A가 액티브 되지 못해서 마이크로 제어기에 액세스 터미네이션이 인가되지 않으며 주 CPU의 액세스는 펜딩(Pending)상태이고 버퍼 또한 닫혀 있으므로, 마이크로 제어기는 아무 영향없이 현재의 액세스를 마무리한다.
이후 마이크로 제어기의 스트로브B가 하이(스탠바이)가 되면, 클럭 1주기가 지나간 후에 플립 플롭의 출력이 로우가 된다. 이것은 선택A 신호가 하이(액티브)가 되는 조건이 되며, 이 정보는 플립플롭의 리셋과 동시에 로직1의 입력조건에 영향을 준다. 결국 스트로브B의 선택B 연관논리가 차단되어 버퍼를 이네이블하여, 주 CPU의 버스가 마이크로 제어기의 버스와 연결된다. 그러면 주 CPU의 액세스 상태에 따라 마이크로 제어기가 제어된다. 이후 마이크로 제어기에서 제공되는 액세스 터미네이션 신호가 주 CPU로 제공되어 액세스를 종료케 한다.
상기와 같이, 마이크로 제어기의 액세스가 종료한 다음 클럭 1주기가 지나면 실제 액세스A를 액티브화한다. 이것은 실질적으로 마이크로 제어기의 제어 신호선에서 발생되는 해제 천이 시간을 고려한 동작이다. 또한 입력 클럭을 서로 반전시켜 적용한 2개의 플립플롭을 사용하여, 마이크로 제어기와 주 CPU의 액세스가 어느 순간 동시에 점유 신호가 인가되더라도 어느 한쪽만 선택하도록 한다. 이 경우 우선 순위는 주 CPU에 있다.
본 발명에 의한 중재 로직을 병렬로 확장하면 다수의 마이크로 제어기와 1개의 주 CPU의 정합에도 응용할 수 있다.
상기한 바와 같이 동작하는 본 발명은, 다수의 마이크로 프로세서를 채택하여 작어을 분산 처리하고자 하는 시스템의 설계시 프로세서간의 버스 사용 순위를 정함으로써 통신 정합을 수행할 수 있다.

Claims (7)

  1. 다수의 마이크로 제어기와, 버스를 통해서 상기 마이크로 제어기와 연결된 버퍼와, 상기 버퍼를 통해서 상기 마이크로 제어기의 버스를 제어하는 주 CPU 및 상기 마이크로 제어기와 버퍼 및 주 CPU의 버스 사용을 조정하는 중재 로직에 있어서,
    마이크로 제어기로부터 입력되는 스트로브B 신호가 로우이고 로직2의 출력이 로우일때만 하이를 출력하는 로직1;
    상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하는 D-플립플롭1;
    상기 로직1의 출력을 입력으로 하며 로직2의 출력을 리셋으로 하고 상기 D-플립플롭2와는 서로 반전된 클럭을 가지는 D-플립플롭2;
    주 CPU로부터 입력되는 스트로브A가 로우이고, 상기 D-플립플롭1 및 D-플립플롭2의 출력을 모두 로우일때만 하이를 출력하는 로직2;
    상기 로직2의 출력을 반전시켜 버퍼의 이네이블 신호로 공급하는 반전기;
    마이크로 제어기의 스트로브B 신호가 로우이고 상기 D-플립플롭2의 출력이 로우일때만 하이를 출력하는 로직3; 및
    상기 로직3의 출력을 지연시켜 마이크로 제어기의 액세스 터미네이션 신호로 공급하는 지연기를 포함하는, 공통 마이크로 프로세서 버스의 중재 장치.
  2. 제 1 항에 있어서, 상기 D-플립플롭 1 및 D-플립플롭 2는 주 CPU와 마이크로 제어기의 액세스 상태 여부를 나타내는 플래그의 역할을 수행하는, 공통 마이크로 프로세서 버스의 중재 장치.
  3. 제 2 항에 있어서, 상기 마이크로 제어기가 현재 버스를 점유중인 경우 D-플립플롭1이 하이를 출력하는, 공통 마이크로 프로세서 버스의 중재 장치.
  4. 제 2 항에 있어서, 상기 주 CPU가 현재 버스를 점유중인 경우 D-플립플롭2가 하이를 출력하는, 공통 마이크로 프로세서 버스의 중재 장치.
  5. 제 2 항에 있어서, 상기 D-플립플롭1 및 D-플립플롭2는 주 CPU의 액세스에 우선 순위를 두는, 공통 마이크로 프로세서 버스의 중재 장치.
  6. 제 1 항에 있어서, 상기 지연기는 상기 마이크로 제어기의 액세스 시간 조건에 따른 지연값을 가지는, 공통 마이크로 프로세서 버스의 중재 장치.
  7. 제 1 항에 있어서, 상기의 로직2는 스트로브B가 로우가 된 다음, 클럭 1주기 후에 출력을 하이로 하는, 공통 마이크로 프로세서 버스의 중재 장치.
KR1019970079008A 1997-12-30 1997-12-30 공통 마이크로 프로세서 버스의 중재 장치 KR100259855B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970079008A KR100259855B1 (ko) 1997-12-30 1997-12-30 공통 마이크로 프로세서 버스의 중재 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970079008A KR100259855B1 (ko) 1997-12-30 1997-12-30 공통 마이크로 프로세서 버스의 중재 장치

Publications (2)

Publication Number Publication Date
KR19990058834A KR19990058834A (ko) 1999-07-26
KR100259855B1 true KR100259855B1 (ko) 2000-06-15

Family

ID=19529993

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970079008A KR100259855B1 (ko) 1997-12-30 1997-12-30 공통 마이크로 프로세서 버스의 중재 장치

Country Status (1)

Country Link
KR (1) KR100259855B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL422480A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Metastabilnościowy generator losowy
PL422478A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Arbiter
PL422479A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Metastabilnościowy generator losowy

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170243628A1 (en) * 2016-02-22 2017-08-24 Mediatek Inc. Termination topology of memory system and associated memory module and control method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL422480A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Metastabilnościowy generator losowy
PL422478A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Arbiter
PL422479A1 (pl) * 2017-08-08 2019-02-11 Politechnika Warszawska Metastabilnościowy generator losowy

Also Published As

Publication number Publication date
KR19990058834A (ko) 1999-07-26

Similar Documents

Publication Publication Date Title
EP1239374B1 (en) Shared program memory for use in multicore DSP devices
US7266632B2 (en) Programmable logic device including programmable interface core and central processing unit
EP1164494A1 (en) Bus architecture for system on a chip
US9298210B2 (en) Clock gating circuit and bus system
JP4182801B2 (ja) マルチプロセサシステム
US11467892B2 (en) Inter-processor communication
KR0133236B1 (ko) 공유메모리 시스템 및 조정시스템과 조정방법
US11487684B2 (en) Power management in a seamlessly integrated microcontroller chip
JP2006040276A (ja) 選択的なクロック制御に基づいて消費電力を節減させるバス仲裁システム及びその方法
KR100259855B1 (ko) 공통 마이크로 프로세서 버스의 중재 장치
US6105082A (en) Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle
KR970066899A (ko) 데이터 프로세서, 데이터 처리 시스템, 및 데이터 프로세서를 이용한 외부장치로의 액세스 방법
JP4124579B2 (ja) バス制御システム
KR100487218B1 (ko) 칩 내장형 버스를 인터페이스하기 위한 장치 및 방법
KR100190184B1 (ko) 직렬버스를 통해 데이타를 송신하는 회로
KR100446282B1 (ko) 시스템 버스 인터페이스 회로
JPS615363A (ja) 共有メモリの制御装置
JPH08180027A (ja) 調停回路
KR20050122973A (ko) 개선형 마이크로컨트롤러 버스 구조의 전력 소비 감소 장치
SU1490678A1 (ru) Устройство управлени двухпортовой пам тью
KR0176655B1 (ko) 멀티 프로세서 사이 중재회로
EP1380960A1 (en) Memory access from different clock domains
JPH04308955A (ja) マルチプロセッサ装置
JP2007128196A (ja) 情報処理システム及び情報処理システムの制御方法
JPH08129523A (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: 20090226

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee