KR20130005235A - 기술적 유닛들의 어셈블리 설치 방법 - Google Patents

기술적 유닛들의 어셈블리 설치 방법 Download PDF

Info

Publication number
KR20130005235A
KR20130005235A KR1020120072650A KR20120072650A KR20130005235A KR 20130005235 A KR20130005235 A KR 20130005235A KR 1020120072650 A KR1020120072650 A KR 1020120072650A KR 20120072650 A KR20120072650 A KR 20120072650A KR 20130005235 A KR20130005235 A KR 20130005235A
Authority
KR
South Korea
Prior art keywords
units
unit
assembly
mutex
technical
Prior art date
Application number
KR1020120072650A
Other languages
English (en)
Other versions
KR101955727B1 (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 KR20130005235A publication Critical patent/KR20130005235A/ko
Application granted granted Critical
Publication of KR101955727B1 publication Critical patent/KR101955727B1/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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Abstract

본 발명은 기술적 유닛(12, 14, 16)의 어셈블리(10)의 설치 방법 및 이 어셈블리(10)에 관한 것이다. 상기 방법은 기술적 유닛(12, 14, 16)의 어셈블리(10)의 자동 설치 및 실행에 이용되며, 기술적 유닛(12, 14, 16)은 시스템 통신 버스(50)에 의해 서로 연결되어 있으며, 문의하는 유닛(12, 14, 16)은 시스템 리소스에 대한 문의를 다른 모든 유닛(12, 14, 16)에게 보내고, 다른 모든 유닛은 리소스가 이미 유닛(12, 14, 16)에 직접 할당되었는지 여부를 검사하고, 문의받은 모든 유닛(12, 14, 16)은 그에 상응하는 대답을 문의하는 유닛(12, 14, 16)으로 보내고, 다른 유닛(12, 14, 16) 중 어느 것도 시스템 리소스를 이미 할당받지 않았으면, 유닛에 시스템 리소스가 할당된다.

Description

기술적 유닛들의 어셈블리 설치 방법{METHOD FOR SETTING UP AN ASSEMBLY OF TECHNICAL UNITS}
본 발명은 기술적 유닛들 특히 전기 및/또는 전자 유닛들의 어셈블리 설치 방법에 관한 것으로서, 유닛들이 설치되면 하나의 시스템을 형성한다. 또한, 본 발명은 상기 어셈블리에 관한 것이다.
기술적 유닛이란 예를 들어 기술적 실행 과정들의 폐루프 및/또는 개루프 제어를 위해 또는 기술적 함수들의 변환을 위해 이용되는 기술적 장치를 의미한다. 복잡한 함수와 기능을 실현하기 위해, 개별 장치 또는 유닛은 하나의 시스템으로, 예를 들어 적층 시스템 또는 랙 시스템(Rack-system)으로 조합된다. 시스템이란 어셈블리 또는 구조 및 요소들의 총체이며, 이 요소들은 상호 관련되어 있으며 과제, 의미 또는 목적과 연관된 유닛을 형성하고 이런 관점에서 환경에 대해 구분되는 방식으로 상호 작용한다.
그와 같이 조합된 시스템들은 일반적으로 제어 및 관리 기관을 필요로 한다. 현재 제어 및 관리 기능은 시스템 내에 이를 위해 제공된 제어 및 관리 장치, 즉 많은 경우에 이를 위해서만 제공된 장치에 제공되어 있다.
제어 및 관리 과제를 하나의 장치에 그와 같이 고정 할당할 때, 이용되어야 하는 상기 장치가 일반적으로 전체 시스템의 기능에 기여하지 않는다는 단점이 있다. 오히려 이러한 장치는 에너지를 공급받아야 하고, 장치는 부가적으로 열을 발생하며 공간을 필요로 한다.
특허문헌 제EP 1 199 632 A1호는 리소스 액세스의 시간적 비교를 위한 방법 및 유닛을 기술하고 있다. 이때 컴퓨팅 환경에서 복수의 스레드가 실행된다. 그 외에도 복수의 뮤텍스가 제공되고, 하나의 뮤텍스에 하나의 스레드만이 할당된다. 상기 방법의 범위에서 제어 프로그램은, 리소스 액세스를 문의하는 해당 스레드에 뮤텍스가 할당되도록 실행된다.
이런 배경하에서 본 발명은 제1항에 따른 방법 및 제6항의 특징을 가지는 어셈블리에 관한 것이다. 실시예들은 종속항들 및 상세한 설명에 제시된다.
본 발명에 의한 방법에 따르면 제어 및 관리 과제를 충족하는 고정적으로 할당되는 유닛이 없다. 이런 유닛은, 필요한 제어 및 관리 함수의 동적 분배가 이루어지고, 더 정확하게는 시스템 리소스 및 함수를 어셈블리에 제공된 유닛에 분배하는 것에 의해 대체된다.
시스템의 설치시 필요한 제어 및 관리 함수(시스템 함수)는 몇몇 또는 심지어 모든 기존의 유닛에 의해 실행된다. 이런 유닛들은 전체 시스템의 시스템 함수들에 참가한다. 즉 시스템 함수들은 유닛들에 동적으로 할당된다. 전술한 방법은 이런 유닛들 중 어느 하나만이 특정한 시스템 함수에 대한 실행 권한을 얻는 것을 보장한다. 상기 유닛은 상기 권한을 다시 포기할 수 있다. 에러의 경우에 다시 다른 유닛들이 실행 권한을 얻을 수 있다.
중요한 요소는 소위 시스템 뮤텍스(상호 배제)이다. 뮤텍스는 모든 유닛을 위해 이용될 수 있으며 운영 시스템과 무관하다. 시스템 뮤텍스를 얻은 유닛은 그와 관련된 제어 및 관리 함수를 실행할 실행 권한을 얻는다. 즉 할당될 수 있는 각각의 시스템 함수에 하나의 시스템 뮤텍스가 할당된다. 시스템 뮤텍스를 얻은 유닛은 시스템 함수를 실행할 수 있다.
시스템 뮤텍스를 실행하기 위해, 모든 장치는 시스템 관리 버스 또는 통신 버스에 의해 연결되어야 한다. 상기 버스는 멀티마스터 기능을 제공하여야 한다. 이는 복수의 유닛이 통신 매체를 위해 경쟁하여 하나만이 성취하는 것을 의미한다.
이제 물리적 뮤텍스 메모리는, 뮤텍스도 할당되어 있는 곳에만 이제 존재한다. 이는 에러 발생시 무효화가 준 자동적으로 이루어지는 장점을 갖는다. 이때 모든 유닛은 시스템 통신 버스와 연결되어 있다. 상기 시스템 통신 버스는 소위 멀티마스터 기능을 가지며, 모든 유닛을 위한 뮤텍스의 할당이 멀티마스터 기능을 이용하여 제어될 수 있다. 이와 같은 방식으로 시스템 함수가 모든 유닛에 분배될 수 있다.
본 발명의 그 외 장점들 및 실시예들은 상세한 설명 및 첨부 도면에 제시된다.
앞서 언급하였고 하기에서 설명하려는 특징들은 본 발명의 범위를 벗어남이 없이 각각의 경우 제시된 조합으로뿐만 아니라 다른 조합으로도 또는 단독으로 이용될 수 있음은 자명하다.
도 1은 본 발명에 따른 어셈블리의 실시예를 도시한 도면이다.
도 2는 시스템 기능을 도시한 도면이다.
도 3은 시스템 뮤텍스의 할당을 도시한 도면이다.
도 4는 시스템 함수의 할당을 도시한 도면이다.
본 발명은 실시예들을 이용해 도면에 개략적으로 도시되어 있으며 하기에서 도면을 참고로 상술된다.
도 1에는 전체적으로 도면 부호 "10"으로 표시된 적층 가능한 어셈블리의 실시예가 도시되어 있다. 어셈블리(10)는 제1 기술적 유닛(12), 제2 유닛(14) 및 제3 유닛(16)을 포함한다. 어셈블리(10)의 기술적 유닛들(12, 14, 16)은 적층 가능한 시스템 또는 랙 시스템을 형성한다.
베이스 유닛 또는 하부 유닛이라고도 하는 제1 유닛(12)은 시스템 통신 버스 마스터(20)와 시스템 통신 버스 슬레이브(22) 및 열거 또는 카운팅을 통해 얻는 어드레스(24)를 갖는다. 그에 상응하게 제2 유닛(14)은 시스템 통신 버스 마스터(30)와 시스템 통신 버스 슬레이브(32) 및 제2 유닛(14)의 어드레스(34)를 갖는다. 또한, 시스템 함수(z 36)가 제공되어 있다. 상부 유닛 또는 탑 유닛이라고도 할 수 있는 제3 유닛(16)은 시스템 통신 버스 마스터(40)와 시스템 통신 버스 슬레이브(42) 및 어드레스(44)를 갖는다. 또한, 시스템 함수(x 46) 및 시스템 함수(y 48)가 제공되어 있다.
유닛(12, 14, 16)은 시스템 통신 버스(50) 및 데이터 라인(52)과 연결되어 있으며, 유닛(12, 14, 16)의 고장에 대한 정보 및 이에 따른 어셈블리(10) 또는 어셈블리(10)를 통해 형성된 시스템의 고장에 대한 정보가 데이터 라인에 전송된다.
도시된 어셈블리(10) 및 시스템은 하드웨어 유닛을 위해, 이 경우에는 유닛(12, 14 및 16)을 위해 개발되었다. 유닛(12, 14 및 16)은 단독으로 또는 어셈블리(10) 내에서 동작할 수 있다. 시스템 내에 유닛(12, 14, 16)을 조합하면, 시스템의 거동을 관리할 필요성이 증가한다. 전용 시스템 제어기가 존재하지 않기 때문에, 유닛(12, 14, 16)은 자체적으로 시스템 함수를 커버해야 한다. 그러므로 유닛(12, 14, 16)은 시스템 기능의 로컬 설치를 시도한다. 구체적인 시스템 함수가 복수의 유닛(12, 14, 16)에서 실행되지 않도록 보장하기 위해, 각 시스템 함수는 시스템 뮤텍스를 통해 보호된다. 시스템 뮤텍스가 시스템 내에서 실행되면, 유닛(12, 14, 16)은 시스템 관련 정보를 공동으로 이용해야 한다. 정보를 교환하기 위한 매체는 시스템 통신 버스(50)이다.
도시된 실시예에서 시스템 통신 버스(50)는 적절한 통신 기법을 이용한다. 각각의 통신 유닛 또는 유닛(12, 14, 16)은 고유 어드레스를 필요로 한다. 시스템 내에서 어드레스(24, 34, 44)는 하드웨어 카운팅을 통해 얻게 된다. 카운팅 함수는 어셈블리(10) 내 각 유닛(12, 14, 16)에 고유 번호 또는 고유 어드레스를 제공한다. 이는 제1 유닛(12)을 통해 하측에서 개시되고 최상측 유닛(16)에서 종료할 때까지 잇따라 계속된다. 이런 프로세스는 어셈블리(10)의 실행 시간 동안 발생할 수 있는 변화를 커버하기 위해 순환적으로 반복된다. 그러므로 본 발명에 따른 방법은 어셈블리(10)의 초기화 및/또는 작동을 위해 실행될 수 있다.
이용된 시스템 통신 버스(50)는 기본적으로 하기의 특징을 가져야 했다:
- 멀티마스터 성능
시스템 내 모든 유닛은 버스 마스터일 수 있다. 버스로의 액세스는 마스터에 의해 "획득된" 중재 단계를 통해 제어된다. 그 후부터 다른 모든 마스터는 그 한 마스터가 버스를 다시 해제할 때까지 슬레이브로서 거동한다.
- 동기화
아비트레이션이 모든 시점에서 확실히 기능하도록, 마스터들은 동시에 클럭 발생기로서 동작하며 자신의 클럭을 서로 동기화하여야 한다. 발생하는 클럭은 가장 느린 마스터를 통해 결정된다. 클럭의 주파수 및 펄스/휴지 비율이 모든 클럭 주기에 따라 변할 수 있다.
- 원자적 시퀀스
버스를 가지고 있는 마스터는 다음의 시퀀스 즉 동기화 또는 다른 모든 노드에 대한 정보의 동기적 또는 동시적 판독을 원자적으로 실행할 수 있으며, 정보는 리세시브 상태를 가지거나 도미넌트 상태를 갖는다. 이때 각 노드는 버스에서 정보의 로컬 상태를 동시에 이용한다. 이때 도미넌트 상태는 리세시브 상태를 덮어쓰기 한다. 마스터는 버스에서 정보의 상태를 평가하고, 그에 상응하는 로컬 액션을 도입하고 마스터의 로컬 상태를 적절하게 갱신한다. 그 후에야 비로소 마스터는 버스를 다시 해제한다. 이때 정보는 "이용가능" 상태 또는 "점유" 상태를 가지는 시스템 뮤텍스에 상응한다. 도미넌트 상태가 점유되어 있다. 리세시브 상태의 "이용가능"이 버스에서 판독되면, 시스템 함수는 로컬 스타트된다. 이때 시스템 뮤텍스의 로컬 상태는 "점유"로 세팅된다.
시스템 정보를 수신 및/또는 제공하기 위해, 모든 유닛(12, 14, 16)은 버스 슬레이브(22, 32, 42)를 가져야 한다. 시스템 정보를 능동적으로 문의 또는 제공하기 위해, 추가의 선택적 버스 마스터(20, 30, 40)가 필요하다. 모든 유닛(12, 14, 16) 내에 마스터(20, 30 또는 40) 및 슬레이브(22, 32 또는 42)는 동일 어드레스(24, 34, 44)를 이용한다.
시스템 통신 버스(50)의 통신 메커니즘은 유니캐스트 및 브로드캐스트 메커니즘을 포함한다. 하기 액섹스 모두는 시스템의 원자적 프로세스이다.
브로드캐스트 유니캐스트 원자적 액세스
판독 지원되지 않음 1슬레이브의 1마스터
기록 1마스터 대 모든 슬레이브 1마스터 대 1슬레이브
시스템 뮤텍스 할당 1마스터 대 모든 슬레이브 - 모든 슬레이브 대 1마스터 지원되지 않음
시스템에 뮤텍스 기능을 제공하기 위해, 브로드캐스트 모드에서 뮤텍스 할당은 특수한 메커니즘이다. 원자적 프로세스를 분배하는 유닛(12, 14, 16)은 액세스 또는 문의를 호출하므로 시스템 전체 뮤텍스에 대한 원자적 판독-변경자-기록-액세스를 실행할 수 있다.
동적으로 분배된 부가적 시스템 과제를 인식하는데 이용되는 전용 기능을 갖는 유닛 역시 제공될 수 있다.
도 2에는 시스템 기능을 설명하기 위해 전체적으로 도면 부호 60으로 표시된 유닛의 가능한 구조가 도시되어 있다. 유닛(60)은 시스템 함수를 위한 외부 클라이언트(62)와 연결되어 있다. 도면에 네트워크 액세스를 위한 인터페이스(64), 시스템 함수 프레임(66), 뮤텍스 서버(68), 시스템 버스 리소스 매니저(70), 버스 마스터와 슬레이브 모듈(72) 및 하드웨어 카운터(74)가 도시되어 있다. 시스템 함수 프레임(66) 내에 네트워크 액세스를 위한 제1 함수(76), 시스템 함수 프로토콜을 위한 제2 함수(78), 제1 시스템 함수(80), 제2 시스템 함수(82), 제3 시스템 함수(84), 하드웨어 액세스를 위한 제3 함수(86) 및 하드웨어 액세스를 위한 제4 함수(88)가 제공되어 있다. 또한, 도면에 선택적 제1 하드웨어 유닛(92) 및 선택적 제2 하드웨어 유닛(94)이 도시되어 있다.
실행된 시스템 통신이 각각의 유닛(60)에서 리소스 매니저(70)를 통해 처리되는데, 하드웨어 액세스를 위한 함수(90)는 리소스 매니저 내에 제공되어 있다. 리소스 매니저(70)는 특정한 시점에서 하나의 개별 내부 클라이언트를 위한 시스템 통신 버스에 대한 액세스를 보장한다. 다른 것들은 줄 서있다.
뮤텍스 서버(68)는 그와 같은 내부 클라이언트이며, 부가의 클라이언트가 있을 수 있다. 리소스 매니저(70)는 시스템 통신 버스 프로토콜의 일부를 이용한다.
시스템의 시스템 통신 버스는 멀티마스터 멀티슬레이브 통신을 이용한다. 모든 유닛은 버스 슬레이브와 버스 마스터를 포함한다. 유닛이 데이터 교환을 전혀 개시하지 않으면, 마스터는 생략될 수 있다. 유닛의 마스터와 슬레이브는 동일 어드레스를 이용한다. 유닛의 각각의 어드레스는 하드웨어 카운팅의 경우에 얻었던 유닛 수에 상응한다.
시스템 통신 버스에서 데이터 교환은 브로드캐스트 또는 유니캐스트 통신으로서 이루어질 수 있다. 브로드캐스트 모드의 경우에 일반적인 브로드캐스트 어드레스가 이용된다. 유니캐스트의 경우에 콘택하려는 슬레이브의 유니케스트가 이용된다. 시스템 통신 버스가 멀티마스터 시스템을 나타내기 때문에, 버스에서 아비트레이션을 보장하기 위해, 전송 개시자의 어드레스를 각각의 메시지에 기록하는 것이 필요하다.
시스템 통신 버스의 통신은 모든 유닛이 카운팅된 경우에만 허용된다. 이는, 카운팅이 성공적으로 실행되자마자, 최상측 유닛에 의해 전송되는, 고유 시스템 관리 버스 메시지를 통해 표시된다. "카운팅 실행" 상태는 각각의 유닛에 의해 수신되고 그 유닛에 저장된다. 이 정보는 일정한 시간 후에 유효성을 상실하고 규칙적인 간격으로 갱신되어야 한다. 하드웨어 카운팅이 순환적으로 실행되기 때문에, 상기 상태 역시 순환적으로 확대된다.
어드레스하려는 슬레이브(장치 대기)의 "디바이스-업" 상태는 초기화하는 유닛 내에서 세팅되기 전에, 유니캐스트 통신이 실행되어서는 안된다. 그러므로 유니캐스트 작동을 이용하는 각각의 유닛은 유닛의 "디바이스-업" 브로드캐스트 메시지를 모니터링하고, 이것은 유닛과 접촉하려는 계획을 갖는다. 마찬가지로 이런 상태는 일정한 시간 후 무효화되는 정보를 의미하므로 규칙적인 간격으로 갱신되어야 한다.
한 유닛 내에서 하나의 기관만이 시스템 통신 버스에 관한 정보를 요구하거나 이해할 수 있다는 것에 유의해야 한다. 또한, 상기 유닛은 상기 정보를 평가하고 그에 상응하는 액션을 도입할 수 있어야 한다. 이때 정보는 시스템 뮤텍스의 상태에 상응하고 액션은 시스템 함수에 상응한다. 일반적으로 기관은 소프트웨어이다. 그러나 순수한 하드웨어 기관도 생각할 수 있다.
하기의 표에는 가능한 시스템 통신 버스 메시지의 개관이 제시되어 있다.
메시지 메시지 유형 전송 개시자 데이터 수신자 전송 조건
카운팅 실행 브로드캐스트 상부 유닛 모든 유닛 하드웨어 카운팅이 성공적으로 상부 유닛에 도달하는 경우 매번
디바이스 업 브로드캐스트 모든 유닛 모든 유닛 카운팅이 실행되고 유닛이 통신시 참여하고 시스템 함수를 실행할 수 있는 동안 순환적으로
시스템 뮤텍스 문의 브로드캐스트 모든 유닛 모든 유닛 카운팅 실행이 있고 뮤텍스 서버가 어떤 시스템 뮤텍스를 문의하면
유닛들이 공통으로 이용할 수 있는 어떤 리소스를 할당하고 이용하기 위해, 할당된 시스템 뮤텍스가 처음에 할당되어야 한다. 시스템 리소스는 일정한 시스템 함수의 기관이거나 공동으로 이용되는 하드웨어 특성, 예를 들어 트리거 채널일 수 있다. 고유의 시스템 뮤텍스가 각각의 시스템 리소스에 할당된다. 시스템 뮤텍스는 독특한 뮤텍스 ID 및 불 잠금(Boolean interlocking) 상태를 통해 정해진다.
각 유닛에 단지 하나의 뮤텍스 서버가 있다. 각 시점에서 하나의 문의만이 처리된다. 다른 문의들은 줄 서있다. 시스템 내 모든 뮤텍스 서버가 일정한 뮤텍스의 할당을 아비트레이션한다. 아비트레이션은 "뮤텍스 액세스" 메시지에 의해 실행된다. 이런 메시지에서 문의하는 유닛은 뮤텍스 ID를 전송하며, 이를 모든 유닛에 알리기 위해, 이것은 뮤텍스 ID를 요구한다. 각각의 유닛은 유닛이 뮤텍스를 뮤텍스 서버 안에 할당하였는지를 검사하고 로컬 시스템 뮤텍스 점유 상태 또는 잠금 상태로 응답한다. "시스템 뮤텍스 점유"는 버스 응답에서 도미넌트 비트와 같으며, 그 반면에 "시스템 뮤텍스 없음"은 리세시브이다. 유닛이 시스템 뮤텍스를 잠갔다면, 이의 도미넌트 응답은 다른 유닛들의 동시적으로 또는 동기적으로 전송된 리세시브 응답을 덮어쓰기 할 것이다.
그러면 문의하는 유닛은 시스템 뮤텍스가 이미 점유되고 시스템 리소스가 이용되지 않는다는 것이 확인된다. 응답이 리세시브한 경우 시스템 뮤텍스는 없음롭다. 그러면 문의하는 유닛이 시스템 뮤텍스 점유 상태를 뮤텍스 서버 내에서 "시스템 뮤텍스 점유"로 업데이트한 다음, 버스 전송을 종료하고 버스를 해제한다. "시스템 뮤텍스 점유"는 단지 뮤텍스 소유자의 뮤텍스 서버 내에만 저장된다. 시스템 뮤텍스에 대한 액세스는 펌웨어와 시스템 통신 버스에서의 원자적 연산이다. 시스템 뮤텍스 점유 상태가 뮤텍스 액세스의 결과에 근거하여 업데이트되었다면, 뮤텍스 액세스는 그 후에만 버스에서 종료될 수 있다. 유닛의 리셋 후에 상태는 "뮤텍스 없음" 상태이다.
도 3에 시스템 뮤텍스의 할당이 도시되어 있다. 이때 n번째 유닛(100)과 k번째 유닛(102)이 도시되어 있다. 카운팅 실행되자마자, 제1 단계(104)에서 뮤텍스 문의가 시스템 함수를 통해 이루어진다. 이는 원자적 연산을 의미한다. 버스 마스터(108)에서 뮤텍스(n)에 관한 문의(화살표 106)가 이루어지고, 버스 마스터는 시스템 통신 버스(110)와 연결되어 있다. 이는 화살표(121) 및 화살표(124)에 상응한다. 버스 마스터(108)로부터 뮤텍스(n)에 대해 보고가 반송되고(화살표 112) 뮤텍스(n)가 없다는 할당이 이루어진다(화살표 114). 또한, 도면은 버스 슬레이브(118)를 도시한다.
또한, 그 외 유닛(102')이 다시 주어지고, 이의 거동은 유닛(102)의 거동에 상응한다.
k번째 유닛(102) 및 그 외 유닛(102')에서 뮤텍스(n)에 대한 문의시(화살표 124와 124') 뮤텍스(n)에 대한 메모리 유닛(122) 및 메모리 유닛(122')이 판독되고 저장된 값(화살표 126과 126')이 시스템 통신 버스 슬레이브(132와 132')에 의해 출력된다. 이때 응답(126과 126')은 동시에 또는 동기적으로 시스템 통신 버스(110)에 의해 전송된다. k번째 유닛(102) 또는 그 외 유닛(102')의 시스템 통신 버스 마스터(130 또는 130')는 관련되어 있지 않다.
그러므로 화살표(106)로 표시된 문의는 k번째 유닛(102) 또는 그 외 유닛(102')의 경우 입력(화살표 124와 124')에 상응한다. 그에 대한 반응, k번째 유닛(102 또는 102')의 출력(화살표 126과 126')은 n번째 유닛(100)의 경우 입력(화살표 112)을 전제한다. 꺽쇠 괄호 표시(140)로 원자적 액세스가 포함된다.
화살표(114)는 도미넌트 응답이 존재하지 않아서, 뮤텍스가 없으며 할당되어 있는 경우에 대한 출력을 나타낸다. 이 할당은 메모리 유닛(116) 안에 기록된다.
운영 시스템 및 하드웨어 플랫폼의 상이한 종류의 이식성(portability)이 보장되도록 시스템 함수가 구성되어야 한다. 그러므로 운영 시스템 메커니즘과 하드웨어 액세스는 논리적 기능에 의해 분리되어야 한다. 각각의 시스템 함수는 함수 라이브러리로서 대표된다. 시스템 함수 라이브러리는 시스템 함수의 논리적 부분만을 포함한다. 이는 목표 시스템 및 운영 시스템과 무관하다. 각각의 하드웨어 특성은 고유 목표 라이브러리로 이동된다. 시스템 함수로 외부 통신은 매체 고유 인터페이스 함수 라이브러리를 통해 실현될 수 있다. 모든 시스템 함수, 인터페이스 라이브러리 및 목표 고유의 함수 라이브러리는 시스템에 고유하게 시스템 함수 프레임 내에서 실행된다.
각각의 시스템 함수의 활성화는 전용 시스템 뮤텍스를 통해 보호된다. 할당된 시스템 뮤텍스가 성공적으로 점유되거나 차단되는 경우에만, 시스템 함수가 동작할 수 있다.
유닛 내에서 시스템 함수의 활성화는 시스템 에러 신호의 스위칭온, 리셋, 해제의 경우 이루어질 수 있다. 활성화는 바람직하게는 고성능의 유닛에서 이루어져야 한다. 활성화(시스템 에러 신호가 리셋되고 유닛의 카운팅이 이루어진다)를 위한 조건이 충족된 후, 활성화는 유닛의 성능에 의존적인 지연 시간을 통해 달성될 수 있으며, 이때 고성능의 유닛들은 가장 짧은 반응 시간 또는 지연 시간을 갖는다. 지연 후 시스템 함수 프레임은 이용가능한 함수에 대한 시스템 뮤텍스를 점유하려 시도한다. 그러면 성공적으로 점유된 각각의 시스템 뮤텍스에 대해 각 시스템 함수가 활성화된다.
시스템 에러 신호는 시스템 전체적으로 이용되는 하드웨어 신호이다. 이것은, 임의의 유닛이 리셋되면, 차단시 카운팅되지 않았거나 유닛이 시스템 함수를 실행할 수 없으면, 상기 유닛을 통해 세팅된다. 이것이 유선의 OR 신호이고 이 신호가 각각의 유닛을 리셋하기 전에는 리셋되지 않는다.
시스템 함수의 활성화를 위한 시스템 에러 신호를 이용하면, 유닛에 에러가 있는 경우, 시스템 함수의 활성화가 새롭게 이루어지는 것이 보장된다. 시스템 에러 신호가 리셋되었고(시스템 통신 버스에서 어드레스 할당에 상응한다) 카운팅이 이루어지면, 각각의 유닛에서 고유 지연 시간이 새롭게 흐른다. 그 후 각각의 유닛은 다시 여전히 활성화되지 않은 시스템 함수를 위한 시스템 뮤텍스를 점유하려 시도한다. 에러를 통해 영향을 받지 않았던 유닛들은 이미 활성화된 시스템 함수를 갖는다. 에러 있는 유닛에서 실행된 시스템 함수는 새로이 동일 유닛에서 활성화되거나 에러 있는 유닛이 다시 동작하거나 시스템에 의해 제거되었으면 다른 유닛이 이를 넘겨받을 수 있다.
도 4에 시스템 함수의 활성화시 진행 과정이 그래프로 재현되어 있다. 종축(200)의 신호 파형이 횡축(202)의 도시간에 대해 시되어 있다. 제1 곡선(204)은 유닛(x)의 시스템 에러를 나타낸다. 제2 곡선(206)은 유닛(y)에서 시스템 에러를 나타낸다. 제3 곡선(208)은 유닛(z)의 에러를 나타낸다. 제4 곡선(210)은 첫번째 3개의 곡선(204, 206, 208)의 OR 결합이고 시스템 에러를 나타낸다. 제5 곡선(212)은 "카운팅 실행" 신호의 값을 제공한다. 그러므로 메시지 "카운팅 실행"은 시점(214)에서 송출한다.
유닛(x)에 대해 제1 시간 간격(220)은 유닛(x)의 성능에 의존적인 지연을 나타낸다. 제2 시간 간격(222)에서 시스템 뮤텍스에 따른 문의가 이루어진다. 제3 시간 간격(224)에서 시스템 함수의 인스턴트화가 이루어진다.
유닛(y)에 대해 제1 시간(230)은 유닛(y)의 성능에 의존적인 지연을 나타낸다. 제2 시간(232)에서 시스템 뮤텍스에 따른 문의가 이루어진다. 제3 시간 간격(234)에서 시스템 함수의 인스턴트화가 이루어진다.
유닛(z)에 대해 제1 시간 간격(240)은 유닛(z)의 성능에 의존적인 지연을 나타낸다. 제2 시간 간격(242)에서 시스템 뮤텍스에 따른 문의가 이루어진다. 제3 시간 간격(244)에서 시스템 함수의 인스턴트화가 이루어진다.

Claims (11)

  1. 기술적 유닛(12, 14, 16, 60, 100, 102, 102')의 어셈블리(10)의 자동 설치 방법이며,
    기술적 유닛(12, 14, 16, 60, 100, 102, 102')은 시스템 통신 버스(50, 110)에 의해 서로 연결되어 있으며, 문의하는 유닛(12, 14, 16, 60, 100, 102, 102')은 시스템 리소스에 대한 문의를 다른 모든 유닛(12, 14, 16, 60, 100, 102, 102')에게 보내고, 다른 모든 유닛은 리소스가 이미 유닛(12, 14, 16, 60, 100, 102, 102') 자체에 할당되었는지 여부를 검사하고, 문의받은 모든 유닛(12, 14, 16, 60, 100, 102, 102')은 문의하는 유닛(12, 14, 16, 60, 100, 102, 102')에 상응하는 대답을 보내고, 다른 유닛(12, 14, 16, 60, 100, 102, 102') 중 어느 것에도 시스템 리소스가 이미 할당되지 않았으면, 유닛에 시스템 리소스가 할당되는, 기술적 유닛의 어셈블리의 자동 설치 방법.
  2. 제1항에 있어서, 각각의 시스템 리소스에 하나의 시스템 뮤텍스가 할당되고 문의하는 유닛(12, 14, 16, 60, 100, 102, 102')은 시스템 리소스에 대한 문의시 상기 시스템 뮤텍스를 지정하는, 기술적 유닛의 어셈블리의 자동 설치 방법.
  3. 제1항 또는 제2항에 있어서, 문의받은 유닛(12, 14, 16, 60, 100, 102, 102')은, 시스템 리소스가 이미 유닛 자체에 의해 할당된 경우에 대해 시스템 통신 버스(50, 110)에 도미넌트 응답을 주고 시스템 리소스가 유닛 자체에 의해 점유되지 않는 경우에 대해 시스템 통신 버스에 리세시브 응답을 주는, 기술적 유닛의 어셈블리의 자동 설치 방법.
  4. 제1항 또는 제2항에 있어서, 어셈블리(10)의 인스턴트화를 위해 실행되는 기술적 유닛(12, 14, 16, 60, 100, 102, 102')의 어셈블리(10)의 자동 설치 방법.
  5. 제1항 또는 제2항에 있어서, 어셈블리(10)의 작동을 위해 실행되는, 기술적 유닛의 어셈블리의 자동 설치 방법.
  6. 복수의 기술적 유닛(12, 14, 16, 60, 100, 102, 102')을 구비한 어셈블리이며,
    기술적 유닛이 시스템 통신 버스(50, 110)에 의해 서로 연결되어 있으며, 시스템 통신 버스는 멀티마스터 성능을 가지며 다른 모든 유닛(12, 14, 16, 60, 100, 102, 102')에 대한 유닛(12, 14, 16, 60, 100, 102, 102') 중 어느 한 유닛의 문의를 허용하고 상기 한 유닛(12, 14, 16, 60, 100, 102, 102')에 대한 다른 모든 유닛(12, 14, 16, 60, 100, 102, 102')의 동시적 또는 동기적 응답을 허용하는, 복수의 기술적 유닛을 구비한 어셈블리.
  7. 제6항에 있어서, 시스템 통신 버스(50, 110)로서 I2C 버스가 이용되는, 복수의 기술적 유닛을 구비한 어셈블리.
  8. 제6항에 있어서, 각각의 유닛(12, 14, 16, 60, 100, 102, 102')은 할당된 시스템 뮤텍스가 저장되어 있는 뮤텍스 서버(68)를 가지는, 복수의 기술적 유닛을 구비한 어셈블리.
  9. 제6항에 있어서, 기술적 유닛(12, 14, 16, 60, 100, 102, 102')이 랙 내에 배치되는, 복수의 기술적 유닛을 구비한 어셈블리.
  10. 제6항에 있어서, 동적으로 분배된 부가의 시스템 과제를 검출하는데 이용되는 전용 기능을 가지는 유닛(12, 14, 16, 60, 100, 102, 102')이 제공되는, 복수의 기술적 유닛을 구비한 어셈블리.
  11. 복수의 기술적 유닛(12, 14, 16, 60, 100, 102, 102')을 구비한, 제1항 또는 제2항에 따른 방법의 실행을 위한 어셈블리이며, 기술적 유닛이 시스템 통신 버스(50, 110)에 의해 서로 연결되어 있으며, 시스템 통신 버스는 멀티마스터 성능을 가지며 다른 모든 유닛(12, 14, 16, 60, 100, 102, 102')에 대한 유닛(12, 14, 16, 60, 100, 102, 102') 중 어느 한 유닛의 문의를 허용하고 상기 한 유닛(12, 14, 16, 60, 100, 102, 102')에 대한 다른 모든 유닛(12, 14, 16, 60, 100, 102, 102')의 동시적 또는 동기적 응답을 허용하는, 복수의 기술적 유닛을 구비한 어셈블리.
KR1020120072650A 2011-07-05 2012-07-04 기술적 유닛들의 어셈블리 설치 방법 KR101955727B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102011078630.9 2011-07-05
DE102011078630A DE102011078630A1 (de) 2011-07-05 2011-07-05 Verfahren zum Einrichten einer Anordnung technischer Einheiten

Publications (2)

Publication Number Publication Date
KR20130005235A true KR20130005235A (ko) 2013-01-15
KR101955727B1 KR101955727B1 (ko) 2019-03-07

Family

ID=47426420

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120072650A KR101955727B1 (ko) 2011-07-05 2012-07-04 기술적 유닛들의 어셈블리 설치 방법

Country Status (6)

Country Link
US (1) US8938471B2 (ko)
JP (1) JP6092536B2 (ko)
KR (1) KR101955727B1 (ko)
CN (1) CN103019851B (ko)
DE (1) DE102011078630A1 (ko)
FR (1) FR2978849B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2745767T3 (es) * 2015-03-31 2020-03-03 Abb Schweiz Ag Método y sistema para la agregación coherente y la sincronización de datos recopilados a partir de dispositivos de distribución

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080010643A1 (en) * 2006-07-07 2008-01-10 Nec Electronics Corporation Multiprocessor system and access right setting method in the multiprocessor system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04332065A (ja) * 1991-05-08 1992-11-19 Matsushita Electric Ind Co Ltd データ転送方法
US6754736B1 (en) * 1999-06-23 2004-06-22 Fujitsu Limited Information processing apparatus, data inputting/outputting method, and program storage medium therefor
US6823472B1 (en) * 2000-05-11 2004-11-23 Lsi Logic Corporation Shared resource manager for multiprocessor computer system
EP1199632A1 (en) 2000-10-20 2002-04-24 Sun Microsystems, Inc. Method and apparatus for resource access synchronization
JP2002175287A (ja) * 2000-12-08 2002-06-21 Matsushita Electric Ind Co Ltd 排他制御装置及び排他制御方法
JP2002207714A (ja) * 2001-01-11 2002-07-26 Mitsubishi Electric Corp マルチプロセッサ装置
US20050015430A1 (en) * 2003-06-25 2005-01-20 Rothman Michael A. OS agnostic resource sharing across multiple computing platforms
US7275121B1 (en) * 2005-04-05 2007-09-25 Nvidia Corporation System and method for hardware assisted resource sharing
DE102005061392A1 (de) * 2005-12-22 2007-06-28 Robert Bosch Gmbh Bus-Guardian eines Teilnehmers eines Kommunikationssystems, sowie Teilnehmer für ein Kommunikationssystem
EP2174221A2 (en) * 2007-07-24 2010-04-14 GE Aviation Systems LLC High integrity and high availability computer processing module
US8220004B2 (en) * 2009-04-17 2012-07-10 Nokia Corporation Method, apparatus and computer program product for sharing resources via an interprocess communication
US8627331B1 (en) * 2010-04-30 2014-01-07 Netapp, Inc. Multi-level parallelism of process execution in a mutual exclusion domain of a processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080010643A1 (en) * 2006-07-07 2008-01-10 Nec Electronics Corporation Multiprocessor system and access right setting method in the multiprocessor system

Also Published As

Publication number Publication date
FR2978849A1 (fr) 2013-02-08
JP6092536B2 (ja) 2017-03-08
US8938471B2 (en) 2015-01-20
CN103019851A (zh) 2013-04-03
US20130013632A1 (en) 2013-01-10
DE102011078630A1 (de) 2013-01-10
JP2013016180A (ja) 2013-01-24
FR2978849B1 (fr) 2018-05-18
KR101955727B1 (ko) 2019-03-07
CN103019851B (zh) 2018-05-22

Similar Documents

Publication Publication Date Title
US4633392A (en) Self-configuring digital processor system with logical arbiter
US10656874B2 (en) Storage device operation control method, and storage device
CN103119916A (zh) 向同类总线用户自动分发地址的方法
US4374414A (en) Arbitration controller providing for access of a common resource by a duplex plurality of central processing units
CN103297456A (zh) 一种分布式系统下共享资源的访问方法及分布式系统
KR20040015223A (ko) 클러스터형 컴퓨터 시스템의 자원 작용 수행 방법,클러스터형 컴퓨터 시스템 및 그의 수행을 위한 컴퓨터프로그램
US9100397B2 (en) BACnet MS/TP automatic MAC addressing
KR20090067152A (ko) 클러스터 커플러 유닛, 클러스터 동기화 방법 및 네트워크
US20060200605A1 (en) Electronic apparatus system with master node and slave node
WO2014173364A1 (zh) 共享资源访问方法和装置
CN104854845B (zh) 使用高效的原子操作的方法和装置
CN101169774B (zh) 一种多处理器系统、共享控制装置及启动从处理器的方法
CN104461705B (zh) 一种业务访问的方法及存储控制器、集群存储系统
EP0137609B1 (en) Multi-master communication bus
US20110029964A1 (en) Method and system for updating programs in a multi-cluster system
US7012930B2 (en) Apparatus and method for pre-arbitrating use of a communication link
JP2015517140A (ja) 分散リアルタイムシステムにおけるソフトウェア故障封じ込めユニット(SWFCUs)を形成するための方法および装置
KR20130005235A (ko) 기술적 유닛들의 어셈블리 설치 방법
US20080303692A1 (en) Method and System for Assigning Identity Addresses to Local Management Modules
US6970950B2 (en) Method for operating a modular control system and control system therefor
Jensen A distributed function computer for real-time control
JP2780662B2 (ja) マルチプロセッサシステム
JP2005258983A (ja) 複数のクラスタシステムを有するコンピュータシステム、および、コンピュータシステムの制御方法
JP4097847B2 (ja) バス・ブリッジのアービトレーション方法
KR100465343B1 (ko) 동적 시분할 공유버스 구조

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right