KR20150004284A - 제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치 - Google Patents

제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치 Download PDF

Info

Publication number
KR20150004284A
KR20150004284A KR1020140081772A KR20140081772A KR20150004284A KR 20150004284 A KR20150004284 A KR 20150004284A KR 1020140081772 A KR1020140081772 A KR 1020140081772A KR 20140081772 A KR20140081772 A KR 20140081772A KR 20150004284 A KR20150004284 A KR 20150004284A
Authority
KR
South Korea
Prior art keywords
unit
model
configuration register
control device
dma
Prior art date
Application number
KR1020140081772A
Other languages
English (en)
Other versions
KR102166650B1 (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 KR20150004284A publication Critical patent/KR20150004284A/ko
Application granted granted Critical
Publication of KR102166650B1 publication Critical patent/KR102166650B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Bus Control (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

본 발명은 제어 장치(1)의 작동 방법에 관한 것으로서, 상기 방법에서 제어 장치(1)는 소프트웨어 제어형 메인 컴퓨터 유닛(2)과, 구성 데이터에 기반하여 알고리즘을 연산하기 위한, 특히 베이즈 회귀법을 실행하기 위한 순수 하드웨어 기반 모델 연산 유닛(3)과, 저장 유닛(5)을 포함하며, 상기 저장 유닛(5) 내에 모델 저장 영역(51)이 정의되고, 이 모델 저장 영역에는 구성 데이터를 모델 연산 유닛(3)에 제공하기 위한 구성 레지스터 블록(31)이 할당되며, 구성 데이터가 기록되는 구성 레지스터 블록(31) 내 최상위 주소에 연산 시작 구성 레지스터(33)가 할당되고, 상기 연산 시작 구성 레지스터의 기록이 모델 연산 유닛(3)에서 연산을 시작하게 하며, 구성 데이터는 저장 유닛(5)의 일 저장 영역에서 증분 백업 프로세스에 의해 모델 저장 영역(51)으로부터 구성 레지스터 블록(31)으로 기록되고, 증분 백업 프로세스에서 주소들은 오름차순으로 복사된다.

Description

제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치{METHOD FOR OPERATING A CONTROL DEVICE AND CONTROL DEVICE WITH A MODEL CALCULATION UNIT}
본 발명은 일반적으로 물리 유닛들을 제어하기 위한 제어 장치, 특히 소프트웨어로 제어되는 컴퓨터 유닛과 하드웨어 기반 모델 연산 유닛을 포함하는 제어 장치에 관한 것이다. 또한, 본 발명은 컴퓨터 유닛을 통해 모델 연산 유닛을 제어하기 위한 방법에 관한 것이다.
플랜트 모델 또는 시스템 모델의 연산을 위해 제어 장치는 순수 하드웨어 기반 논리 유닛들을 가질 수 있으며, 이러한 논리 유닛들은 모델 함수값을 연산하는 모델 연산 유닛들이다. 이는, 예컨대 특히 가우스 프로세스 모델 형태의 데이터 기반 함수 모델에서처럼, 플랜트 모델 또는 시스템 모델들의 연산이 복잡한 수학적 함수들과 루프 연산들 때문에 복잡한 경우, 특히 중요하다.
모델 연산 유닛들은 연산을 위해 초기화될 수 있고, 연산을 실향할 수 있으며, 특히 시스템 내에 존재하는 소프트웨어로 작동되는 메인 컴퓨터 유닛(마이크로컨트롤러)으로 연결된 적합한 인터페이스에 의해 슬립 모드로 전환되어 스위치-오프될 수 있다. 연산을 위해 필요한, 함수 모델을 기술하는 구성 데이터가 상기 모델 연산 유닛을 위해 일련의 구성 레지스터들에 전송될 수 있고, 이들 구성 레지스터는 일반적으로 제어 장치의 내부 메모리의 특정 관련 저장 영역과 연계되어 있다. 모델 연산 유닛에서 연산을 시작하기 위해, 일반적으로 연산 프로세스를 시작하기 위해 구성 레지스터들 중 특정 구성 레지스터가 기록되며, 이때 상기 구성 레지스터에 기록된 데이터의 유형은 중요하지 않을 수 있다.
공보 US 2005/0102488 A1호에는 펌웨어 레지스터의 프로그래밍을 위한 언어가 기술되어 있다.
그 외에도, 공보 US 5,619,702호에는 각각의 하드웨어 레지스터를 정의하고 이 하드웨어 레지스터에 비트를 할당하는 데이터베이스의 사용이 기술되어 있다.
본 발명에 따라 제1항에 따른 제어 장치의 작동 방법 및 또 다른 독립항에 따른 제어 장치가 제공된다.
그 밖의 본 발명의 바람직한 구성들은 종속항들에 제시되어 있다.
제1 양태에 따라 제공되는 제어 장치의 작동 방법에서, 제어 장치는 소프트웨어 제어형 메인 컴퓨터 유닛과, 구성 데이터에 기반하여 알고리즘을 연산하기 위한, 특히 베이즈 회귀법(Bayes-Regression)을 실행하기 위한 순수 하드웨어 기반 모델 연산 유닛과, 저장 유닛을 포함하며, 저장 유닛 내에 모델 저장 영역이 정의되며, 이 모델 저장 영역에는 구성 데이터를 모델 연산 유닛에 제공하기 위한 구성 레지스터 블록이 할당되며, 구성 데이터가 기록되는 구성 레지스터 블록 내 최상위 주소에 연산 시작 구성 레지스터가 할당되고, 이 연산 시작 구성 레지스터의 기록은 모델 연산 유닛에서의 연산을 시작하게 하며, 이때 구성 데이터는 저장 유닛의 일 저장 영역에서 증분 백업(incremental backup) 프로세스를 이용하여 모델 저장 영역으로부터 구성 레지스터 블록으로 기록되고, 상기 증분 백업 프로세스에서 주소들은 오름차순으로 복사된다.
소프트웨어로 제어되는 제어 유닛 및 하드웨어로 구현된 모델 연산 유닛을 포함하며, 제어 유닛의 부담 경감을 위해 함수 모델, 특히 데이터 기반 함수 모델이 별도의 모델 연산 유닛에서 연산되는 제어 장치들에서는, 모델 연산 유닛의 제어와 모델 함수의 정의가 구성 레지스터를 통해 이루어진다. 구성 레지스터는 모델 연산 유닛에 함수값을 연산하기 위한 알고리즘의 시작값을 제공하고, 더불어 매개변수 함수 모델을 위한 매개변수들 또는 초모수들(hyperparameter) 및 비모수적(non-parametric) 데이터 기반 함수 모델의 연산을 위한 표본점 데이터가 저장된다. 데이터 기반 함수 모델의 각 함수값 연산 전에 모델 연산 유닛을 이용하여 구성 데이터를 설정하고 연산 프로세스를 시작하는, 소프트웨어 제어형 메인 컴퓨터 유닛의 작업은 메인 컴퓨터 유닛의 성능이 약할 때 적지 않은 부담을 의미할 수 있다.
메인 컴퓨터 유닛의 부담 경감을 위해, 모델 연산 유닛에서 연산 프로세스를 시작하는 구성 레지스터가 구성 레지스터들의 마지막 구성 레지스터로서 구성 레지스터 블록에 기록된다. 이를 위해, 이들 구성 레지스터는 바람직하게 내부 메모리의 관련 저장 영역에, 즉 모델 저장 영역에 할당됨으로써, 간단한 증분 메모리 백업 프로세스를 통해, 특히 이미 공지되어 있는 DMA 유닛의 블록 복사 프로세스 기능을 이용하여, 모델 연산 유닛을 위한 구성값들이 저장되어 있는 모델 저장 영역으로부터 모델 연산 유닛의 구성 레지스터 블록으로 전송된다. 이때, 연산 프로세스를 시작하는 특정 구성 레지스터가 관련 저장 영역의 최상위 메모리 주소로서 제공되고, 그에 따라 증분 메모리 백업 프로세스를 통해 마지막으로 기록된다. 이와 같은 방식으로 이미 간단한 증분 메모리 백업 프로세스의 종료 후 연산이 시작될 수 있고, 이 연산의 시작을 위해 필요한 초기 데이터에 대한 접근이 이루어질 수 있다. 그 결과, 구성 데이터의 기록 이후 특정 구성 레지스터를 별도로 기록할 필요가 없어질 수 있다. 이 방법은 특히 구성 레지스터 블록에서 기록 프로세스를 실행할 수 있는 DMA 유닛의 사용 시 유리한 데, 그럴 경우 컴퓨터 유닛의 부하가 완전히 경감되기 때문이다.
증분 백업 프로세스는 처리 단위(granularity)를 가질 수 있으며, 이때 처리 단위가 모델 저장 영역보다 더 크면, 연산 시작 구성 레지스터에 할당된 메모리 주소에 미사용 저장 영역이 접속된다.
DMA 유닛은 메인 컴퓨터 유닛으로부터 복수의 연속 블록 복사 기능들을 실행하라는 지시를 받을 수 있다.
복수의 연속 블록 복사 기능을 실행하라는 DMA 유닛의 지시에 상응하게 모델 연산 유닛에서 복수의 연산이 실행될 수 있으며, 이때 제2 DMA 유닛은 여러 번의 블록 복사 프로세스에 의해 시작된 각각의 연산 후 연산 결과를 복사하고, 제1 DMA 유닛에 다음 블록 복사 프로세스를 실행하도록 지시한다.
또 다른 한 양태에 따라, 물리 유닛의 작동을 위한 제어 장치가 제공되며, 이 제어 장치는
- 소프트웨어 제어형 메인 컴퓨터 유닛과,
- 구성 데이터에 기반해 알고리즘을 연산하기 위한, 특히 베이즈 회귀법을 실행하기 위한 순수 하드웨어 기반 모델 연산 유닛과,
- 구성 데이터의 저장을 위한 저장 유닛으로서, 이 저장 유닛 내에서 모델 저장 영역이 정의되고, 상기 모델 저장 영역에 구성 데이터를 모델 연산 유닛에 제공하기 위한 구성 레지스터 블록이 할당되며, 구성 레지스터 블록 내 최상위 주소에 연산 시작 구성 레지스터가 할당되며, 모델 연산 유닛은 연산 시작 구성 레지스터가 기록되면 알고리즘의 연산을 시작하도록 형성되는, 저장 유닛을 포함한다.
또한, 블록 복사 프로세스에 의해 모델 저장 영역에의 접근 또는 이의 판독을 실행하기 위해 제1 DMA 유닛이 제공될 수 있다.
메인 컴퓨터 유닛은 제1 DMA 유닛의 기능을 시작할 수 있고, 제1 DMA 유닛으로 하여금 여러 번의 블록 복사 프로세스를 실행케 하도록 형성될 수 있으며, 그에 따라 모델 연산 유닛에서 복수의 연산이 차례로 실행된다.
하기에서 첨부 도면들을 참고하여 본 발명의 바람직한 실시예들을 상술한다.
도 1은 소프트웨어 제어형 메인 컴퓨터 유닛 및 하드웨어로 구현된 모델 연산 유닛을 포함하는 제어 장치의 개략도이다.
도 2는 모델 연산 유닛에 할당된, 그리고 구성 레지스터들이 할당되어 있는 내부 메모리의 저장 영역에 관한 도이다.
도 3은 복수의 프로그래밍 모델을 가진 저장 유닛의 저장 영역에 관한 도이다.
도 4는 도 1의 모델 연산 유닛에서 연산될 복수의 함수 모델을 이용한 모델 연산을 시작하는 방법을 설명하는 흐름도이다.
도 5는 2개의 DMA 유닛을 구비한 모델 연산 유닛에서 연산될 복수의 함수 모델을 이용한 모델 연산을 시작하는 방법을 설명하는 흐름도이다.
도 1에는 차량에서, 특히 예컨대 내연기관과 같은 물리 유닛을 작동하기 위한 제어 장치(1)의 구조가 개략적으로 도시되어 있다. 제어 장치(1)는 모델 연산 유닛(3)과 함께 통합되어 형성된 메인 컴퓨터 유닛(2)으로서 마이크로컨트롤러를 포함한다. 모델 연산 유닛(3)은 실질적으로, 하드웨어에 기반하여 함수 연산, 특히 베이즈 회귀법을 위한 함수 연산을 실행할 수 있는 하드웨어 유닛이다. 특히, 모델 연산 유닛은 루프 연산에서 지수 함수 연산, 덧셈 연산 및 곱셈 연산을 실행하도록 형성된다.
함수 모델을 기술하는 초모수들 및 표본점 데이터에 기반하여 테스트 지점에 대한 함수값을 결정하기 위해, 메인 컴퓨터 유닛(2)에 의해 모델 연산 유닛(3)에서의 연산들이 시작된다. 초모수들과 표본점 데이터는 메인 컴퓨터 유닛(2) 및 모델 연산 유닛(3)과 함께 통합된 저장 유닛(5) 안에 저장되어, 제어하려는 물리 유닛의 작동을 기술하는 데이터 기반 함수 모델의 표현에 이용된다.
메인 컴퓨터 유닛(2)과 모델 연산 유닛(3)은 내부 통신 연결부, 특히 시스템 버스(4)에 의해 서로 통신 가능하게 연결되어 있다. 또한, 메인 컴퓨터 유닛(2) 및 모델 연산 유닛(3)과의 신호 통신을 보장하기 위해, 저장 유닛(5) 및 DMA(Direct Memory Access) 유닛(6)이 상기 내부 통신 연결부와 연결될 수 있다.
기본적으로 모델 연산 유닛(3)은 고정 연산 시퀀스를 규정하는 하드웨어(하드 와이어링)만을 가지며, 바람직하게는 소프트웨어 코드를 실행하도록 형성되지 않는다. 이런 이유로, 모델 연산 유닛(3)에 프로세서를 제공할 필요도 없다. 이로써 그러한 모델 연산 유닛(3)의 리소스 최적화 구현이 가능해진다. 구현된 하드웨어 루틴에 따른 연산을 통해 연산 시간이 소프트웨어 알고리즘에 비해 현저히 단축될 수 있다.
데이터에 기반한 비모수적 함수 모델의 이용은 베이즈 회귀법에 근거한다. 베이즈 회귀의 기초는 예컨대 "Gaussian processes for machine learning"(MIT Press 2006, C. E. Rasmussen 외 공저)에 설명되어 있다. 베이즈 회귀는 모델에 기반하는 데이터 기반 방법이다. 모델을 생성하기 위해서는 트레이닝 데이터의 측정점들 및 출력 변수의 관련 출력 데이터가 필요하다. 모델의 생성은, 상기 트레이닝 데이터에 전적으로 또는 부분적으로 상응하거나, 이들 트레이닝 데이터로부터 생성되는 표본점 데이터를 사용하여 이루어진다. 또한, 모델 함수의 공간을 매개변수화하여 차후 모델 예측에 대한 트레이닝 데이터의 개별 측정점의 영향을 효과적으로 가중하는 추상적인 초모수들이 결정된다.
모델 연산 유닛(3)은 구성 레지스터들(32)을 포함하는 구성 레지스터 블록(31)에 접근할 수 있도록 형성된다. 특히, 모델 연산 유닛(3)은 구성 레지스터들(32)을 포함하는 구성 레지스터 블록(31)을 시스템의 저장 영역에 배치하거나 메모리 맵 레지스터(memory mapped register)로서 구현하도록 형성된다.
구성 레지스터 블록(31)의 구성 레지스터(32)는 함수 모델의 연산에 필요한 매개변수들 및 주소 포인터들을 획득하도록 형성된다. 무엇보다도 데이터, 특히 주소 포인터가 필요하고, 이 주소 포인터는 함수 모델의 연산을 위한 초모수들과 표본점 데이터가 위치하는 주소 영역을 스타트 포인터를 이용하여 지시하고, 경우에 따라 데이터의 길이를 지시한다. 또한, 계산할 루프를 위한 초기화 값들이 설정될 수 있으며, 이와 마찬가지로 데이터 기반 함수 모델의 함수값의 연산에 근거가 되는 오프셋값 역시 설정될 수 있다. 추가 매개변수들의 전달도 가능하다.
모델 연산 유닛(3)에서 함수 모델의 연산을 시작하기 위해 메인 컴퓨터 유닛(2)은 우선 구성 레지스터들(32)을 구성한 다음, 특정 연산 시작 구성 레지스터(33)의 기록을 통해, 상기 유닛 내에 내재된 비트들의 구성을 수반하거나 수반하지 않고, 모델 연산 유닛(3)을 시작해야 한다.
기존에는 구성 레지스터들(32)의 기록 및 모델 연산 유닛(3)의 시작이 전적으로 메인 컴퓨터 유닛(2)에 의존하였기 때문에, 특히 더 짧은 시간 내에 복수의 모델 연산이 연속적으로 실행되는 경우 메인 컴퓨터 유닛은 상당한 부하를 받는다. 그러므로 도 2에 도시된 것처럼 구성 레지스터 블록(31)이 형성된다. 도면에서 볼 수 있듯이, 상기 구성 레지스터 블록(31)이 일련의 구성 레지스터(32)를 포함하고, 연산 시작 구성 레지스터(33)가 최상위 메모리 주소에 제공됨에 따라, 구성 데이터가 연속 기록 프로세스(증분 메모리 주소로 기록)에서 구성 레지스터 블록(31)에 기록된다. 그럼으로써 연산 시작 구성 레지스터(33)에 할당된 주소가 가장 마지막에 기록된다. 그 결과, 메인 컴퓨터 유닛(2)에서 상기 메인 컴퓨터 유닛(2)의 부하를 더 덜어주는 증분 메모리 백업 명령이 사용될 수 있다.
또한, 상기 임무는 메인 컴퓨터 유닛(2)으로부터 DMA 유닛(6)으로 이양될 수도 있다. 일반적으로 DMA 유닛들은 정해진 단위를 가지므로, 전송되는 데이터 블록의 크기가 정해져 있다. 그러나 연산 시작 구성 레지스터(33)는 항시, 잔여 구성 레지스터(32)에 할당된 메모리 주소의 바로 뒤에 오는 메모리 주소에 위치한다. DMA 유닛(6)의 단위(G)가 더 크면, 연산 시작 구성 레지스터(33)를 위한 메모리 주소에 연결되는 잔여 메모리 주소들이 미사용 저장 영역(34)으로서 표시되거나 예약된다.
또한, 모델 연산 유닛(3)의 결과, 상태 및 그 외 정보를 제공하기 위해 판독 전용 레지스터들(35)이 형성될 수 있다.
DMA 유닛(6)이 모델 연산 유닛(3)을 구성하도록 하기 위해, 복수의 프로그래밍 모델(F01, F02, ... , F0M)을 포함하는 구조가 정의되어야 한다. 도 3에서 M개 프로그래밍 모델(F01, F02, ... , F0M)은 DMA 단위(G)에 상응하게 연속적으로 모델 저장 영역(51)에 저장된다. 각 프로그래밍 모델은, 구성 레지스터(32)와 연산 시작 구성 레지스터(33)에 기록되는 구성 매개변수를 포함한다. 또한, 프로그래밍 모델은 앞서 설명한 것처럼 미사용 저장 영역(34)의 예약된 메모리 주소들을 포함할 수 있다.
DMA 유닛(6)을 사용하는 경우, 메인 컴퓨터 유닛(2)의 임무는 DMA 유닛(6)을 구성하여 이를 주소 정보들을 이용하여 시작시키기만 하면 되며, 이들 주소 정보는 모델 저장 영역(51) 내 구성 데이터의 시작 주소 및 모델 연산 유닛(3)을 위한 구성 레지스터 블록(31)의 기준 주소에 의해 지시되는 목적지 주소에 의해 결정된다.
도 4에 개략적으로 도시되어 있는 방법에서 모델 연산 유닛(3)은 연속적으로 상이한 프로그래밍 모델들(F01, F02, ... , F0M)로 구성되어 시작될 수 있다. DMA 유닛(6)은 동일한 목적지 기준 주소로 반복가능한 블록 복사 과정들을 지원해야 한다. 이를 위해, 메인 컴퓨터 유닛(2)은 단계(S1)에서 상응하는 지시를 DMA 유닛(6)? 1회 송출할 것이다. 단계(S2)에서 DMA 유닛(6)은 구성 레지스터 블록(31)에서 1회의 블록 복사 프로세스를 통해 연산 프로세스를 시작한다. 각각의 연산 후에 단계(S3)에서 DMA 유닛(6)의 모델 연산 유닛(3)이 예컨대 인터럽트를 이용하여 연산 종료를 시그널링한다. 상기 단계들(S2 및 S3)의 이런 과정은 연산될 각 프로그래밍 모델(F01, F02, ... , F0M)을 위해 수행된다. 연산될 마지막 프로그래밍 모델(F0M)의 연산이 종료된 후에는 단계(S3) 대신 단계(S4)에서 상응하는 통지가 메인 컴퓨터 유닛(2)에 전송된다.
상기 연산 결과를 상이한 메모리 주소에 복사하기 위해, 상기 방법이 제2 DMA 유닛(7)을 이용해서도 구현될 수 있다. 이를 위해, 제2 DMA 유닛(7)은 메인 컴퓨터 유닛(2)의 도움없이 동일한 소스 기준 주소로 반복가능한 복사 과정들을 지원해야 한다.
이를 위해, 메인 컴퓨터 유닛(2)은 단계들(S11 및 S12)에서 두 DMA 유닛(6, 7)을 구성한다. 단계(S13)에서 제1 DMA 유닛(6)은 모델 연산 유닛(3)에서 블록 복사 프로세스를 통해 연산 프로세스를 시작한다. 각 연산의 종료 후 단계(S14)에서 모델 연산 유닛(3)은 상응하는 내용을 제2 DMA 유닛(7)에 전송한다. 제2 DMA 유닛(7)은 모델 연산 유닛(3)의 인터럽트에 의해 트리거된다.
제2 DMA 유닛(7)은, 각 연산 후에 모델 연산 유닛(3)의 연산 결과를 또 다른 메모리 주소에 전송하고 단계(S15)에서 제1 DMA 유닛(6)을 활성화하는 데 사용된다.
다음으로, 단계(S13)에서 구성 레지스터 블록(31)에 구성 데이터를 기록하기 위한 블록 복사 프로세스를 통해 모델 연산 유닛(3)의 재구성 및 연산의 시작이 이루어진다. 각 연산의 종료 후 모델 연산 유닛(3)은 단계(S14)에서 상응하는 내용을 제2 DMA 유닛(7)에 시그널링하고, 단계(S15)에서 제1 DMA 유닛(6)이 추가로 트리거된다.
마지막 연산의 종료 후 제2 DMA 유닛(7)의 특성들에 기초하여 단계(S16)에서 메인 컴퓨터 유닛(2)에 연산 종료가 통지된다. 이는 제2 DMA 유닛(7)의 인터럽트의 발생을 통해 이루어질 수 있고, 상기 인터럽트는 직접 메인 컴퓨터 유닛(2)으로 전송되거나, 제1 DMA 유닛(6)으로 전송되며, 이 경우 제1 DMA 유닛이 상기 인터럽트를 메인 컴퓨터 유닛(2)으로 전송한다.
모든 프로그래밍 모델(F01, F02, ... , F0M)은 구성 데이터를 이용하여 제2 DMA 유닛(7)으로의 인터럽트 발생을 결정하며, 제2 DMA 유닛(7)은 프로그래밍 모델에 따라 모델 연산 유닛(3)에서 함수 모델의 연산 종료 후 제1 DMA 유닛(6)을 위한 인터럽트를 발생시킨다.

Claims (16)

  1. 제어 장치(1)의 작동 방법이며,
    상기 제어 장치(1)는 소프트웨어 제어형 메인 컴퓨터 유닛(2)과, 구성 데이터에 기반하여 알고리즘을 연산하기 위한 순수 하드웨어 기반 모델 연산 유닛(3)과, 저장 유닛(5)을 포함하며,
    저장 유닛(5) 내에 모델 저장 영역(51)이 정의되고, 이 모델 저장 영역에는 구성 데이터를 모델 연산 유닛(3)에 제공하기 위한 구성 레지스터 블록(31)이 할당되며, 구성 데이터가 기록되는 구성 레지스터 블록(31) 내 최상위 주소에 연산 시작 구성 레지스터(33)가 할당되고, 상기 연산 시작 구성 레지스터의 기록이 모델 연산 유닛(3)에서 연산을 시작하게 하며,
    구성 데이터는 저장 유닛(5)의 일 저장 영역에서 증분 백업 프로세스에 의해 모델 저장 영역(51)으로부터 구성 레지스터 블록(31)으로 기록되고, 증분 백업 프로세스에서 주소들은 순차적으로 복사되는, 제어 장치의 작동 방법.
  2. 제1항에 있어서, 증분 백업 프로세스는 DMA 유닛(6)의 블록 복사 기능에 의해 수행되는, 제어 장치의 작동 방법.
  3. 제2항에 있어서, 증분 백업 프로세스는 처리 단위를 가지며, DMA의 처리 단위를 조정하기 위해 연산 시작 구성 레지스터(33)에 할당된 메모리 주소에 미사용 저장 영역이 접속되는, 제어 장치의 작동 방법.
  4. 제2항 또는 제3항에 있어서, DMA 유닛(6)은 메인 컴퓨터 유닛(2)으로부터 동일한 목적지 기준 주소로 복수의 연속 블록 복사 기능을 실행하라는 지시를 받는, 제어 장치의 작동 방법.
  5. 제4항에 있어서, 복수의 연속 블록 복사 기능을 실행하라는 DMA 유닛(6)의 지시에 따라 모델 연산 유닛(3)에서 복수의 연산이 실행되고, 여러 번의 블록 복사 프로세스에 의해 시작되는 각각의 연산 후 제2 DMA 유닛(7)이 상기 연산 결과를 복사하고, 제1 DMA 유닛(6)에 다음 블록 복사 프로세스를 실행하도록 지시하는, 제어 장치의 작동 방법.
  6. 물리 유닛의 작동을 위한 제어 장치(1)이며, 이 제어 장치는,
    - 소프트웨어 제어형 메인 컴퓨터 유닛(2)과,
    - 구성 데이터에 기반하여 알고리즘을 연산하기 위한 순수 하드웨어 기반 모델 연산 유닛(3)과,
    - 구성 데이터를 저장하기 위한 저장 유닛(5)으로서, 저장 유닛(5) 내에 모델 저장 영역(51)이 정의되고, 이 모델 저장 영역에는 구성 데이터를 모델 연산 유닛(3)에 제공하기 위한 구성 레지스터 블록(31)이 할당되며, 구성 레지스터 블록(31) 내 최상위 주소에 연산 시작 구성 레지스터(33)가 할당되는, 저장 유닛을 포함하며,
    모델 연산 유닛(3)은, 상기 연산 시작 구성 레지스터(33)가 기록되면 알고리즘의 연산을 시작하도록 형성되는, 물리 유닛의 작동을 위한 제어 장치(1).
  7. 제6항에 있어서, 블록 복사 프로세스를 이용하여 구성 레지스터 블록(31)의 기록을 수행하기 위해 제1 DMA 유닛(6)이 제공되는, 물리 유닛의 작동을 위한 제어 장치.
  8. 제7항에 있어서, 제1 DMA 유닛(6)의 기능을 시작하기 위해, 메인 컴퓨터 유닛(2)이 제공되는, 물리 유닛의 작동을 위한 제어 장치.
  9. 제7항 또는 제8항에 있어서, 메인 컴퓨터 유닛(2)은 제1 DMA 유닛(6)이 여러 번의 블록 복사 프로세스의 실행하도록 형성되며, 그에 따라 모델 연산 유닛(3)에서 복수의 연산이 차례로 실시되는, 물리 유닛의 작동을 위한 제어 장치.
  10. 제9항에 있어서, 제2 DMA 유닛(7)은, 여러 번의 블록 복사 프로세스에 의해 시작된 각각의 연산 후 연산 결과를 복사하고, 제1 DMA 유닛(6)에 다음 블록 복사 프로세스를 실행할 것을 지시하기 위해 제공되는, 물리 유닛의 작동을 위한 제어 장치.
  11. 제1항 내지 제3항 중 어느 한 항에 따른 방법의 모든 단계들을 실행하도록 구비된 컴퓨터 프로그램.
  12. 제11항에 따른 컴퓨터 프로그램이 저장되어 있는 전자 저장 매체.
  13. 물리 유닛의 작동을 위한 제어 장치(1)이며, 이 제어 장치는,
    - 소프트웨어 제어형 메인 컴퓨터 유닛(2)과,
    - 구성 데이터에 기반하여 알고리즘을 연산하기 위한 순수 하드웨어 기반 모델 연산 유닛(3)과,
    - 구성 데이터를 저장하기 위한 저장 유닛(5)으로서, 저장 유닛(5) 내에 모델 저장 영역(51)이 정의되고, 이 모델 저장 영역에는 구성 데이터를 모델 연산 유닛(3)에 제공하기 위한 구성 레지스터 블록(31)이 할당되며, 구성 레지스터 블록(31) 내 최상위 주소에 연산 시작 구성 레지스터(33)가 할당되는, 저장 유닛을 포함하며,
    모델 연산 유닛(3)은, 상기 연산 시작 구성 레지스터(33)가 기록되면 알고리즘의 연산을 시작하도록 형성되고,
    제어 장치(1)는 제12항에 따른 전자 저장 매체를 포함하는, 물리 유닛의 작동을 위한 제어 장치.
  14. 제1항에 있어서, 상기 알고리즘의 연산은 베이즈 회귀법의 실행인, 제어 장치의 작동 방법.
  15. 제1항에 있어서, 증분 백업 프로세스에서 주소들은 오름차순으로 복사되는, 제어 장치의 작동 방법.
  16. 제6항에 있어서, 상기 알고리즘의 연산은 베이즈 회귀법의 실행인, 물리 유닛의 작동을 위한 제어 장치.
KR1020140081772A 2013-07-02 2014-07-01 제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치 KR102166650B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102013212842.8A DE102013212842A1 (de) 2013-07-02 2013-07-02 Verfahren zum Betreiben eines Steuergeräts sowie Steuergerät mit einer Modellberechnungseinheit
DE102013212842.8 2013-07-02

Publications (2)

Publication Number Publication Date
KR20150004284A true KR20150004284A (ko) 2015-01-12
KR102166650B1 KR102166650B1 (ko) 2020-10-16

Family

ID=52106201

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140081772A KR102166650B1 (ko) 2013-07-02 2014-07-01 제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치

Country Status (5)

Country Link
US (1) US9785410B2 (ko)
JP (1) JP6420983B2 (ko)
KR (1) KR102166650B1 (ko)
CN (1) CN104281547B (ko)
DE (1) DE102013212842A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013213420A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
CN108139723A (zh) * 2015-11-19 2018-06-08 帝斯贝思数字信号处理和控制工程有限公司 用于运行控制器的方法以及设置用于外部旁路的控制器
US10261790B2 (en) * 2016-03-31 2019-04-16 Intel Corporation Memory copy instructions, processors, methods, and systems
DE102016216947A1 (de) * 2016-09-07 2018-03-08 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines mehrschichtigen Perzeptronenmodells
DE102016216950A1 (de) * 2016-09-07 2018-03-08 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines mehrschichtigen Perzeptronenmodells mit Vorwärts- und Rückkopplung
DE102018202093A1 (de) 2018-02-12 2019-08-14 Robert Bosch Gmbh Verfahren und Vorrichtung zur Berechnung von Datenmodellen in sicherheitskritischen Systemen
CN108446096B (zh) 2018-03-21 2021-01-29 杭州中天微系统有限公司 数据计算系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063805A1 (en) * 2007-08-31 2009-03-05 Zheng Xu Data acquisition messaging using special purpose registers
US20110282517A1 (en) * 2010-04-27 2011-11-17 Felix Streichert Microcontroller having a computing unit and a logic circuit, and method for carrying out computations by a microcontroller for a regulation or a control in a vehicle

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6097435A (ja) 1983-11-02 1985-05-31 Hitachi Ltd 演算処理装置
US5161117A (en) 1989-06-05 1992-11-03 Fairchild Weston Systems, Inc. Floating point conversion device and method
US5619702A (en) 1994-05-25 1997-04-08 National Instruments Corporation Method and apparatus for programming registers using simplified commands
KR100572945B1 (ko) * 1998-02-04 2006-04-24 텍사스 인스트루먼츠 인코포레이티드 효율적으로 접속 가능한 하드웨어 보조 처리기를 구비하는디지탈 신호 처리기
JP2000137674A (ja) * 1998-10-30 2000-05-16 Nec Corp バースト転送メモリマップトレジスタ
JP2001350713A (ja) * 2000-06-07 2001-12-21 Hitachi Ltd 転送制御装置
US20050102488A1 (en) 2003-11-07 2005-05-12 Bullis George A. Firmware description language for accessing firmware registers
IL187038A0 (en) * 2007-10-30 2008-02-09 Sandisk Il Ltd Secure data processing for unaligned data
JP5347544B2 (ja) * 2009-02-09 2013-11-20 トヨタ自動車株式会社 半導体集積回路
DE102010028266A1 (de) * 2010-04-27 2011-10-27 Robert Bosch Gmbh Steuergerät und Verfahren zur Berechnung einer Ausgangsgröße für eine Steuerung
CN102346899A (zh) * 2011-10-08 2012-02-08 亿赞普(北京)科技有限公司 一种基于用户行为的广告点击率预测方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063805A1 (en) * 2007-08-31 2009-03-05 Zheng Xu Data acquisition messaging using special purpose registers
US20110282517A1 (en) * 2010-04-27 2011-11-17 Felix Streichert Microcontroller having a computing unit and a logic circuit, and method for carrying out computations by a microcontroller for a regulation or a control in a vehicle

Also Published As

Publication number Publication date
US20150012575A1 (en) 2015-01-08
DE102013212842A1 (de) 2015-01-08
KR102166650B1 (ko) 2020-10-16
CN104281547A (zh) 2015-01-14
JP6420983B2 (ja) 2018-11-07
JP2015015024A (ja) 2015-01-22
CN104281547B (zh) 2019-03-22
US9785410B2 (en) 2017-10-10

Similar Documents

Publication Publication Date Title
KR20150004284A (ko) 제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치
CN109669772B (zh) 计算图的并行执行方法和设备
CN105765541B (zh) 用于机动车的控制器
CN109144515B (zh) Dcs图形化算法组态的离线仿真方法和装置
US11281963B2 (en) Programmable neuron core with on-chip learning and stochastic time step control
US20190130270A1 (en) Tensor manipulation within a reconfigurable fabric using pointers
US10120702B2 (en) Platform simulation for management controller development projects
JPS5975347A (ja) 論理回路のシミユレ−シヨン装置
CN107957965A (zh) 服务质量序数修改
TW202011411A (zh) 快閃記憶體控制器及相關的存取方法及電子裝置
US11544189B2 (en) System and method for memory management
US8886512B2 (en) Simulation apparatus, computer-readable recording medium, and method
US7430502B2 (en) Using thermal management register to simulate processor performance states
US20170153619A1 (en) Programmable controller system
US7761280B2 (en) Data processing apparatus simulation by generating anticipated timing information for bus data transfers
US8122205B2 (en) Structured virtual registers for embedded controller devices
CN1312583C (zh) 仿真装置和仿真方法
US10223077B2 (en) Determination of signals for readback from FPGA
Vojtko et al. Adaptability of an Embedded Operating System: a Formal Description of a Processor
US11281584B1 (en) Method and apparatus for cloning data among peripheral components and a main system
JP4363431B2 (ja) データ転送方式
Lin et al. Automated development tools for Linux USB drivers
WO2019113021A1 (en) Tensor manipulation within a reconfigurable fabric using pointers
KR20240059343A (ko) 시스템 온 칩 및 이의 동작 방법
CN116974979A (zh) 在嵌入式存储器上部署文件系统的方法、系统和电路

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant