KR101988482B1 - 전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 - Google Patents
전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 Download PDFInfo
- Publication number
- KR101988482B1 KR101988482B1 KR1020170105501A KR20170105501A KR101988482B1 KR 101988482 B1 KR101988482 B1 KR 101988482B1 KR 1020170105501 A KR1020170105501 A KR 1020170105501A KR 20170105501 A KR20170105501 A KR 20170105501A KR 101988482 B1 KR101988482 B1 KR 101988482B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- tactical
- remote
- local
- parallel processing
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 103
- 238000000034 method Methods 0.000 claims abstract description 12
- 238000007670 refining Methods 0.000 claims abstract description 8
- 230000015654 memory Effects 0.000 claims description 27
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 16
- 238000012360 testing method Methods 0.000 description 10
- 238000012937 correction Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000002411 adverse Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004899 motility Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 전술 데이터 링크 시스템의 데이터 처리 기술에 관한 것으로, n개의 블록을 갖는 병렬 처리 장치와 연계하는 데이터 처리 장치에 있어서, 전술 데이터를 비교일치(correlation) 연산에 필요한 데이터로 정제하는 데이터 정제부; 및 상기 데이터 정제부의 정제 데이터의 일부를 상기 n개의 블록에 대응하는 n개의 그룹으로 분할하여 상기 n개의 블록에 할당하고, 상기 병렬 처리 장치로부터 상기 비교일치 연산의 결과를 반환받는 병렬 처리부를 포함할 수 있다.
Description
본 발명은 전술 데이터 링크 시스템(Tactical Data Link System)과, 전술 데이터 링크 시스템 내에서 수행되는 데이터 처리 기술에 관한 것이다.
다양한 방식으로 운용되고 있는 전술 데이터 링크를 통해 전술정보를 활용하는 무기체계에서는, 피아의 전술상황 정보를 운용자에게 제공하기 위해, 탐지체계가 보고하는 아군과 적군의 전술 데이터를 항적(track) 단위로 관리하고 있다.
전술 데이터를 관리하는 체계들은 Link-16, Link-11, ISDL, Link-K 등의 표준 규칙 또는 체계에서 정의한 고유 통신 규칙을 준수한다. 이러한 다양한 종류의 전술 데이터 링크 통신이 함께 운용되는 환경에서 전술 데이터를 통합 관리해야 하는 체계는 다수의 출처로부터 이종(異種) 전술 데이터를 보고받아 통합 관리할 필요가 있다.
다종의 전술 데이터 링크 운용환경에서 항적을 관리하는 체계는, 동일한 항적이 다수의 전술 데이터 링크 환경에 의해 탐지되어도 복수의 항적이 아닌 단일 항적으로 인식될 수 있도록 운용되어야 하며, 이를 위해 항적 관리 체계는 항적 비교일치(track correlation) 연산을 수행한다. 항적 비교일치 연산은 각기 보고된 두 항적이 특정 시점에서 유사한 위치, 진로, 속도 및 고도의 속성을 가지는지 분석하여, 탐지된 다수의 전술항적이 실제로 단일 항적인지를 판별하는 기술이다.
기존의 전술 데이터 링크 시스템에서는 이러한 항적 비교일치 연산을 순차적(sequential)인 방식으로 수행하기 때문에, 평균 수억 번의 비교일치 연산 과정을 수반하여 시스템 부하를 가중시킬 수 있다.
본 발명의 실시예에서는, 항적 단위의 전술 데이터에 대한 비교일치 연산 시에 시스템 부하를 줄일 수 있는 전술 데이터 링크 시스템의 데이터 처리 기술을 제안하고자 한다.
본 발명의 실시예에 따르면, n개의 블록을 갖는 병렬 처리 장치와 연계하는 데이터 처리 장치에 있어서, 전술 데이터를 비교일치(correlation) 연산에 필요한 데이터로 정제하는 데이터 정제부; 및 상기 데이터 정제부의 정제 데이터의 일부를 상기 n개의 블록에 대응하는 n개의 그룹으로 분할하여 상기 n개의 블록에 할당하고, 상기 병렬 처리 장치로부터 상기 비교일치 연산의 결과를 반환받는 병렬 처리부를 포함하는 전술 데이터 링크 시스템의 데이터 처리 장치를 제공할 수 있다.
여기서, 상기 병렬 처리부는, 상기 정제 데이터의 다른 일부를 상기 병렬 처리 장치의 글로벌 메모리에 할당하며, 상기 정제 데이터의 상기 일부와 상기 정제 데이터의 상기 다른 일부의 비교일치 연산 결과를 상기 글로벌 메모리로부터 반환받고, 상기 정제 데이터의 상기 일부는 로컬 데이터이고, 상기 정제 데이터의 상기 다른 일부는 원격 데이터일 수 있다.
또한, 상기 데이터 정제부는, 상기 로컬 데이터와 상기 원격 데이터에 대한 유효성을 검사할 수 있다.
또한, 상기 유효성이 검사된 상기 로컬 데이터와 상기 원격 데이터의 오차를 보정하는 전처리부를 더 포함할 수 있다.
또한, 상기 데이터 전처리부는, 상기 로컬 데이터 및 상기 원격 데이터의 측지 오차(geodetic error), 고도 오차, 탐지방위 오차, 거리 오차 및 위치 오차 중 적어도 하나를 보정할 수 있다.
또한, 상기 전술 데이터는, 전술 항적(track)을 포함할 수 있다.
본 발명의 실시예에 따르면, 전술 데이터 링크 시스템의 로컬 데이터와 원격 데이터 간의 비교일치 연산을 n개의 블록 단위로 수행하는 병렬 처리 장치; 및 상기 로컬 데이터를 상기 n개의 블록에 대응하는 n개의 그룹으로 분할하여 상기 n개의 블록에 할당하고, 상기 원격 데이터를 상기 병렬 처리 장치의 글로벌 메모리에 할당하며, 상기 병렬 처리 장치의 상기 비교일치 연산에 따른 결과를 상기 글로벌 메모리로부터 반환받는 데이터 처리 장치를 포함하는 전술 데이터 링크 시스템을 제공할 수 있다.
여기서, 상기 전술 데이터 링크 시스템은, 제1 시점에서 상기 로컬 데이터를 수신하는 로컬 중계기; 및 상기 제1 시점에서 상기 원격 데이터를 수신하는 원격 중계기와 연결되며, 상기 병렬 처리 장치는, 상기 로컬 데이터와 상기 원격 데이터를 비교하여 동일한 노드로부터 발생된 데이터이면 상기 로컬 데이터와 상기 원격 데이터를 단일 데이터로 판단할 수 있다.
또한, 상기 병렬 처리 장치는, 상기 로컬 데이터와 상기 원격 데이터에 포함된 위치(latitude, longitude), 속도(speed), 항로(course) 및 고도(altitude) 중 적어도 하나의 정보를 비교할 수 있다.
본 발명의 실시예에 의하면, 전술 데이터 링크 시스템은 수신되는 전술 데이터를 병렬 처리 블록에 대응하는 그룹별로 분할하여 병렬 처리 장치에 할당함으로써, 항적 단위의 전술 데이터에 대한 비교일치 연산 시에 시스템 부하를 크게 줄일 수 있다.
도 1은 전술 데이터 링크 시스템에서 수행되는 전형적인 비교일치 연산을 예시적으로 설명하는 개념도이다.
도 2는 본 발명의 실시예에 따른 전술 데이터 링크 시스템을 설명하기 위한 전술 데이터 링크를 예시적으로 설명하는 도면이다.
도 3은 본 발명의 실시예에 따른 전술 데이터 링크 시스템의 블록도이다.
도 4는 본 발명의 실시예에 따른 전술 데이터 링크 시스템의 데이터 처리 장치에 의해 수행되는 로컬 데이터 그룹 할당을 예시적으로 설명하는 개념도이다.
도 5는 도 3의 데이터 정제부(100)의 상세 블록도이다.
도 6은 도 3의 전처리부(110)의 상세 블록도이다.
도 7은 도 3의 연산부(200)의 상세 블록도이다.
도 8은 순차 연산 방식의 CPU(Control Processing Unit)와 병렬 연산 방식의 GPU(Graphics Processing Unit)의 코어 아키텍처(core architecture)를 개략적으로 비교한 도면이다.
도 2는 본 발명의 실시예에 따른 전술 데이터 링크 시스템을 설명하기 위한 전술 데이터 링크를 예시적으로 설명하는 도면이다.
도 3은 본 발명의 실시예에 따른 전술 데이터 링크 시스템의 블록도이다.
도 4는 본 발명의 실시예에 따른 전술 데이터 링크 시스템의 데이터 처리 장치에 의해 수행되는 로컬 데이터 그룹 할당을 예시적으로 설명하는 개념도이다.
도 5는 도 3의 데이터 정제부(100)의 상세 블록도이다.
도 6은 도 3의 전처리부(110)의 상세 블록도이다.
도 7은 도 3의 연산부(200)의 상세 블록도이다.
도 8은 순차 연산 방식의 CPU(Control Processing Unit)와 병렬 연산 방식의 GPU(Graphics Processing Unit)의 코어 아키텍처(core architecture)를 개략적으로 비교한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
MCRC(Master Control and Report Center), KNTDS(Korean Naval Tactical Data System)와 같은 기존 전술 데이터 링크 체계에서는, 해당 전술 데이터 링크에서 관리하는 로컬 데이터(local data)와 제3의 전술 데이터 링크를 통해 수신되는 원격 데이터(remote data)를 순차적(sequential)인 방식으로 비교하는 알고리즘을 적용하고 있다.
도 1은 전술 데이터 링크 시스템에서 수행되는 전형적인 비교일치 연산을 예시적으로 설명하는 개념도이다.
도 1과 같이, M개의 로컬 데이터가 수신되고, N개의 원격 데이터가 수신된다고 가정할 경우, 로컬 데이터 #1과 N개의 원격 데이터 간의 비교일치 연산을 순차적으로 수행하고, 이어서 로컬 데이터 #2와 N개의 원격 데이터 간의 비교일치 연산을 순차적으로 수행하여 단일 항적 여부를 판별할 수 있다.
만일, 전술 데이터(로컬 데이터 및 원격 데이터)의 용량이 적을 때는 시스템에 큰 부하를 주지 않으나, 수 만개 이상의 항적 관리가 요구되는 근래의 전술 데이터 링크 환경에서는, 평균 수억 번의 비교일치 연산 과정이 순차적으로 수행되기 때문에, 비교일치 연산을 위한 장치, 예를 들어 CPU에 부하를 가중시켜 점유율이 크게 상승할 수 있다. 이러한 CPU의 과도한 점유율은 다른 프로세스의 쓰레드(thread) 동작에도 악영향을 끼칠 수 있다.
본 발명의 실시예는 전술 데이터 링크 시스템으로 수신되는 전술 데이터를 병렬 처리 블록에 대응하는 그룹별로 분할하여 병렬 처리 장치의 블록에 할당함으로써, 항적 단위의 전술 데이터에 대한 비교일치 연산 시에 시스템 부하를 줄일 수 있는 기술을 제공하고자 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 전술 데이터 링크 시스템을 설명하기 위한 전술 데이터 링크를 예시적으로 설명하는 도면이다.
도 2에 도시한 바와 같이, 전술 데이터 링크는, 전술 데이터 링크 시스템(1)과, 전술 데이터 링크 시스템(1)에 연결되는 로컬 중계기(b) 및 원격 중계기 그룹(b-1~b-n)과, 로컬 중계기(b) 및/또는 원격 중계기 그룹(b-1~b-n)에 연결되는 노드 그룹(a-1, a-2)을 포함할 수 있다.
노드 그룹(a-1~a-2) 중 임의의 노드, 예를 들어 노드1(a-1)로부터 송신되는 전술 데이터는 로컬 중계기(b)를 거쳐 전술 데이터 링크 시스템(1)으로 제공될 수 있다. 이 경우, 전술 데이터는 전술 데이터 링크 시스템(1)에서 관리되는 로컬 데이터로 명명될 수 있다.
아울러, 노드1(a-1)로부터 송신되는 전술 데이터는 원격 중계기 그룹(b-1~b-n) 중 임의의 원격 중계기, 예를 들어 원격 중계기1(b-1)을 거쳐 전술 데이터 링크 시스템(1)으로 제공될 수 있다. 이 경우, 전술 데이터는 전술 데이터 링크 시스템(1)에서 관리되지 않는 원격 데이터로 명명될 수 있다.
로컬 중계기(b)와 원격 중계기1(b-1)을 통해 전술 데이터 링크 시스템(1)으로 제공되는 전술 데이터는 동일한 노드인 노드1(a-1)로부터 송신되는 데이터이므로, 로컬 중계기(b)를 통해 제공되는 로컬 데이터와 원격 중계기1(b-1)을 통해 제공되는 원격 데이터는 동일한 항적을 갖는 전술 데이터로 판별될 수 있다. 전술 데이터의 동일성 여부 판별은 비교일치 연산에 의해 수행될 수 있음은 전술한 바와 같다.
종래에는 이러한 비교일치 연산을 도 1과 같이 순차적으로 처리하였으나, 본 발명의 실시예에서는 데이터 처리 과정을 통해 비교일치 연산을 병렬로 처리할 수 있도록 전술 데이터를 정제하고 병렬 처리 블록에 할당하는 것을 특징으로 한다.
도 3은 본 발명의 실시예에 따라 전술 데이터 정제 및 병렬 처리에 적합한 전술 데이터 링크 시스템의 블록도로서, 본 발명의 실시예에 따른 전술 데이터 링크 시스템은 데이터 처리 장치(10)와 병렬 처리 장치(20)를 포함할 수 있다.
먼저, 데이터 처리 장치(10)는 데이터 정제부(100), 전처리부(110) 및 병렬 처리부(120)를 포함할 수 있다.
데이터 정제부(100)는 로컬 중계기(b)를 통해 수신되는 로컬 데이터와, 원격 중계기 그룹(b-1~b-n)을 통해 수신되는 원격 데이터를 비교일치 연산에 필요한 데이터로 정제할 수 있다. 예컨대, 전술 항적 단위인 전술 데이터에는 운동성 데이터, 식별 데이터, 무장 데이터 등 다양한 데이터들이 포함될 수 있는데, 이들 데이터들 중 비교일치 연산에 필요한 데이터는 운동성 데이터와 식별 데이터가 해당될 수 있으므로, 이들 데이터만을 정제할 필요가 있다. 이와 함께, 데이터 정제부(100)는 로컬 데이터와 원격 데이터에 대해서 필드 및 송수신 규칙에 따른 유효성을 검사하여 오류 발생 가능성이 있는 데이터를 필터링할 수 있다. 여기서, 유효성 검사는, 예를 들어 연동통제문서(Interface Control Document, ICD) 또는 전술 데이터 링크 표준문서의 규약에 따라 수행될 수 있다. 또한, 데이터 정제부(100)는 유효성이 검사된 로컬 데이터와 원격 데이터를 공통 포맷으로 변환할 수 있다.
전처리부(110)는 데이터 정제부(100)를 통해 공통 포맷으로 변환된 로컬 데이터와 원격 데이터의 오차를 보정할 수 있다. 전처리부(110)를 통해 보정되는 오차는, 예를 들어 로컬 데이터 및 원격 데이터의 측지 오차(geodetic error), 고도, 탐지방위, 거리, 위치 중 적어도 하나의 오차일 수 있다.
병렬 처리부(120)는 전처리부(110)를 통해 오차 보정된 로컬 데이터를 병렬 처리 장치(20)의 복수 개의 블록에 대응하는 복수 개의 그룹으로 분할하여 복수 개의 블록에 할당할 수 있다. 도 3에서 병렬 처리부(120)로부터 병렬 처리 장치(20)의 연산부(200)로 제공되는 데이터는 로컬 데이터 그룹일 수 있다. 여기서, 병렬 처리 장치(20)의 블록이라 함은, 병렬 처리 장치(20)의 연산을 담당하는 코어(core)를 의미하며, 병렬 처리부(120)가 병렬 처리 장치(20)에 할당하는 로컬 데이터 그룹의 수는 병렬 처리 장치(20)의 코어의 개수에 상응할 수 있다.
도 4는 이와 같은 병렬 처리부(120)에 의해 수행되는 로컬 데이터 그룹 할당을 예시적으로 설명하는 개념도이다.
도 4에 도시한 바와 같이, 병렬 처리부(120)는 전술 데이터 링크 시스템(1)에 수신되는 로컬 데이터를 병렬 처리 장치(20)의 블록(코어) 개수만큼 분할한 로컬 데이터 그룹을 설정할 수 있다. 예를 들어, 10,000개의 로컬 데이터가 전술 데이터 링크 시스템(1)에 수신되고, 이러한 로컬 데이터의 비교일치 연산을 수행하는 병렬 처리 장치의 블록(코어)의 개수가 100개라고 가정하면, 병렬 처리부(120)는 10,000개의 로컬 데이터를 병렬 처리 장치(20)의 블록 개수와 상응하는 100개의 로컬 데이터 그룹으로 분할할 수 있다.
병렬 처리부(120)에 의해 분할되는 로컬 데이터 그룹은 병렬 처리 장치(20)의 각각의 블록에 할당될 수 있으며, 병렬 처리 장치(20)의 각각의 블록에서는 로컬 데이터 그룹으로 설정된 각각의 로컬 데이터를 쓰레드(thread) 단위로 비교일치 연산을 수행할 수 있다.
다시 도 3을 참조하면, 병렬 처리부(120)는 전처리부(110)를 통해 오차 보정된 원격 데이터를 병렬 처리 장치(20)에 할당할 수 있으며, 이후 병렬 처리 장치(20)에서 수행된 비교일치 연산 결과를 병렬 처리 장치(20)로부터 반환받을 수 있다. 병렬 처리 장치(20)에서 수행되는 비교일치 연산은 로컬 데이터와 원격 데이터 간의 비교일치 연산을 의미한다.
병렬 처리 장치(20)는 연산부(200), 제1 글로벌 메모리(210) 및 제2 글로벌 메모리(220)를 포함할 수 있다.
연산부(200)는 병렬 처리 장치(10)로부터 제공되는 로컬 데이터 그룹의 로컬 데이터와, 후술하는 제1 글로벌 메모리(210)에 적재되는 원격 데이터에 대해 블록 별로 비교일치 연산을 수행할 수 있다. 이러한 연산부(200)는 도 4의 병렬 처리 장치(20) 내의 각각의 블록들을 포함할 수 있으며, 각각의 블록은 다수의 쓰레드(도 4의 경우 100개의 쓰레드)가 동시에 액세스가 가능하도록 별도의 메모리(도시 생략됨)를 포함할 수 있다. 여기서, 별도의 메모리는, 예를 들어 공유 메모리(shared memory), 로컬 메모리(local memory) 등을 포함할 수 있다.
제1 글로벌 메모리(210)는 데이터 처리 장치(10)의 병렬 처리부(120)로부터 제공되는 원격 데이터를 적재할 수 있다. 제1 글로벌 메모리(210)에 적재되는 원격 데이터는 연산부(200)의 비교일치 연산 과정에 이용될 수 있다.
제2 글로벌 메모리(220)는 연산부(200)의 비교일치 연산 결과 데이터를 임시 적재할 수 있다. 제2 글로벌 메모리(220)에 임시 적재되는 비교일치 연산 결과 데이터는 데이터 처리 장치(10)의 병렬 처리부(120)로 반환될 수 있다.
이러한 제1 글로벌 메모리(210) 및 제2 글로벌 메모리(220)는, 예를 들어 RAM(Random Access Memory)을 포함할 수 있다.
도 5는 도 3의 데이터 정제부(100)의 상세 블록도로서, 이더넷/시리얼(Ethernet/Serial) 통신부(101), 메시지 디코딩부(102), 메시지 인코딩부(103) 및 공통 포맷 관리부(104)를 포함할 수 있다.
도 5에 도시한 바와 같이, 이더넷/시리얼 통신부(101)는 로컬 중계기(b)로부터의 로컬 데이터와 원격 중계기 그룹(b-1~b-n)으로부터의 원격 데이터를 이더넷 또는 시리얼로 수신하는 역할을 한다.
메시지 디코딩부(102)는 이더넷/시리얼 통신부(101)를 통해 수신되는 로컬 데이터와 원격 데이터에 대해 필드 변환을 수행할 수 있다. 예를 들어, 메시지 디코딩부(102)는 연동통제문서(ICD) 또는 전술 데이터 링크의 표준문서의 규약에 따라 로컬 데이터와 원격 데이터의 유효성을 검사하여 필드 변환을 수행할 수 있다.
메시지 인코딩부(103)는 메시지 디코딩부(102)의 역 기능을 수행할 수 있다. 메시지 인코딩부(103)는 주지의 인코딩 방식을 사용할 수 있으므로 구체적인 설명은 생략하기로 한다.
공통 포맷 관리부(104)는 메시지 디코딩부(102)를 통해 유효하게 변환된 로컬 데이터 및 원격 데이터의 필드 값을 공통 포맷으로 변환할 수 있다.
도 6은 도 3의 전처리부(110)의 상세 블록도로서, 측지 오차 보정부(111), 센서 오차 보정부(112), 데이터 처리 오차 보정부(113) 및 원격 노드 오차 보정부(114)를 포함할 수 있다.
도 6에 도시한 바와 같이, 측지 오차 보정부(111)는, 예를 들어 로컬 중계기(b)를 통해 수신되는 로컬 데이터의 위도 및 경도, 고도 등에 대한 측지 오차를 보정할 수 있다.
센서 오차 보정부(112)는 로컬 중계기(b)로부터 수신되는 로컬 데이터로부터 임의의 노드, 예를 들어 노드1(a-1)에 포함된 센서의 기계적/논리적 고도 및 탐지방위, 그리고 거리에 대한 오차를 보정할 수 있다.
데이터 처리 오차 보정부(113)는 좌표 변환에 따른 오차, 비교일치 시점의 시간과 탐지(수신) 시간과의 오차 등을 보정할 수 있다. 이러한 데이터 처리 오차 보정부(113)는, 예를 들어 보외법(extrapolation)을 적용하여 오차를 보정할 수 있다.
원격 노드 오차 보정부(114)는 원격 중계기 그룹(b-1~b-n)을 통해 전술 데이터 링크 시스템(1)으로 원격 데이터를 전송하는 원격 노드, 예를 들어 노드2(a-2)의 위치 정보의 오차를 보정할 수 있다. 로컬 데이터와 원격 데이터는 이러한 전처리부(110)의 각각의 오차 기능을 거쳐 오차가 보정될 수 있으며, 이때 각각의 보정부(111~114)의 보정 함수들은 병렬 처리부(120)를 통해 커널(kernel) 함수로 변환되어 병렬 처리 장치(20)의 각각의 블록에 쓰레드 단위로 할당될 수 있다.
도 7은 도 3의 연산부(200)의 상세 블록도로서, 비교일치 파라미터 관리부(201), 비교일치 제한조건 관리부(202), 위치 시험부(203), 속도 시험부(204), 방위 시험부(205), 고도 시험부(206) 및 IFF(Identification Friend or Foe)/SIF(Ship In Frames) 코드 시험부(207)를 포함할 수 있다.
도 7에 도시한 바와 같이, 비교일치 파라미터 관리부(201)는 비교일치 연산을 위한 파라미터를 관리할 수 있다. 이러한 비교일치 연산을 위한 파라미터는, 예를 들어 측지 오차(geodetic error), 고도 오차, 탐지방위 오차, 거리 오차, 위치 오차 중 적어도 하나를 포함할 수 있으며, 이들 파라미터는 디폴트 또는 사용자 입력에 의해 변경될 수 있다.
비교일치 제한조건 관리부(202)는 불필요한 비교일치 연산을 방지하기 위해 비교일치 연산 항목에서 제외시킬 경우를 관리할 수 있다. 비교일치 연산 항목에서 제외되는 경우는, 예를 들어 전술 항적 간 범주가 상이한 경우, 전술 항적의 품질이 일정 수준 이하인 경우, 전술 항적 간 실제 상태와 모의 상태가 상이한 경우 등을 포함할 수 있다.
위치 시험부(203), 속도 시험부(204), 방위 시험부(205) 및 고도 시험부(206)는, 전술 데이터 링크의 표준 알고리즘 또는 체계에서 자체 규약하고 있는 알고리즘으로 구성될 수 있으며, 이때 사용되는 파라미터는 비교일치 파라미터 관리부(201)를 통해 입력될 수 있다.
IFF/SIF 코드 시험부(207)은 적아 식별 코드 값이 같거나 호환이 되는 조건에서만 비교일치 될 수 있다는 가정을 설정한 체계에서는 옵션으로 사용될 수 있다.
각 시험부(203~207)의 함수들은 병렬 처리부(120)를 통해 커널함수로 변환되어 병렬 처리 장치(20)의 각 블록에 쓰레드로 할당되고, 비교일치 파라미터는 병렬 처리 장치(20)의 제1 글로벌 메모리(210)에 적재되어 각 커널함수가 동시에 사용할 수 있도록 한다.
도 8은 순차 연산 방식의 CPU(Control Processing Unit)와 병렬 연산 방식의 GPU(Graphics Processing Unit)의 코어 아키텍처(core architecture)를 개략적으로 비교한 도면이다.
CPU는 현재 최대 8개의 코어를 탑재할 수 있으며, 각 코어 별로 쓰레드를 수행하고 자료 동기화를 위해서는 개발자의 전문지식이 필요로 하다. 반면, GPU는 기본적으로 수백 개의 코어를 내장하고 있으므로, 데이터의 병렬 처리에 최적화되어 있으며 코어 별 산술 연산 장치, 메모리와 장치의 글로벌 메모리를 이용하여 쓰레드 할당, 쓰레드간 자료 동기화를 장치에서 직접 제어할 수 있는 장점을 가지고 있다. 또한, 병렬 처리 장치를 논리적으로 2차원 또는 3차원의 그리드/블록/쓰레드로 관리함으로써 병렬화된 데이터의 인덱스와 매핑하여 동시 처리가 용이하다는 장점이 있다.
최신 사양의 CPU보다 데스크탑에서 흔히 볼 수 있는 보급형 그래픽 카드 모델이 최소 5배 이상의 연산속도를 낼 수 있다. 특히, 병렬 처리 장치는 CPU와 달리 주변 장치로써 메인보드 교체 없이 PCI-익스프레스 등과 같은 인터페이스를 통해 쉽게 업그레이드 또는 추가 장착이 용이하여 체계 성능 업그레이드시 비용 절감 효과와 비용 대비 성능 효과가 매우 우수한 것이 특징이다.
한편, 본 발명의 실시예에 따른 데이터 처리 장치(10)는, 일반적인 GPU와 달리 계산 전용의 칩(Chip)으로 온-보드(On-Board)화 시키거나, 소형 카드 형태로 장착된 군용 단말기 또는 어플라이언스(appliance) 형태로 개발 및 장착하고, 비교일치 등 병렬 처리 커널 함수를 펌웨어 형태로 적용함으로써 그 기능을 최대화시킬 수 있을 것으로 예상된다.
이상 설명한 바와 같이, 본 발명의 실시예에 의하면, 수신되는 전술 데이터를 병렬 처리 블록에 대응하는 그룹별로 분할하여 병렬 처리 장치에 할당함으로써, 항적 단위의 전술 데이터에 대한 비교일치 연산 시에 시스템 부하를 크게 줄이도록 구현한 것이다.
한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록에서 설명된 기능들을 수행하는 수단을 생성하게 된다.
이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.
그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
1: 전술 데이터 링크 시스템
10: 데이터 처리 장치
100: 데이터 정제부
110: 전처리부
120: 병렬 처리부
20: 병렬 처리 장치
200: 연산부
210: 제1 글로벌 메모리
220: 제2 글로벌 메모리
10: 데이터 처리 장치
100: 데이터 정제부
110: 전처리부
120: 병렬 처리부
20: 병렬 처리 장치
200: 연산부
210: 제1 글로벌 메모리
220: 제2 글로벌 메모리
Claims (9)
- n개의 블록을 갖는 병렬 처리 장치와 연계하는 데이터 처리 장치에 있어서,
전술 데이터를 비교일치(correlation) 연산에 필요한 데이터로 정제하는 데이터 정제부; 및
상기 데이터 정제부의 정제 데이터의 일부를 상기 n개의 블록에 대응하는 n개의 그룹으로 분할하여 상기 n개의 블록에 할당하고, 상기 병렬 처리 장치로부터 상기 비교일치 연산의 결과를 반환받는 병렬 처리부를 포함하고,
상기 병렬 처리부는,
상기 정제 데이터의 다른 일부를 상기 병렬 처리 장치의 글로벌 메모리에 할당하며,
상기 정제 데이터의 상기 일부와 상기 정제 데이터의 상기 다른 일부의 비교일치 연산 결과를 상기 글로벌 메모리로부터 반환받고,
상기 정제 데이터의 상기 일부는 로컬 데이터이고, 상기 정제 데이터의 상기 다른 일부는 원격 데이터이고,
상기 데이터 정제부는, 상기 로컬 데이터와 상기 원격 데이터에 대한 유효성을 검사하는
전술 데이터 링크 시스템의 데이터 처리 장치. - 삭제
- 삭제
- 제 1 항에 있어서,
상기 유효성이 검사된 상기 로컬 데이터와 상기 원격 데이터의 오차를 보정하는 전처리부를 더 포함하는
전술 데이터 링크 시스템의 데이터 처리 장치. - 제 4 항에 있어서,
상기 데이터 전처리부는,
상기 로컬 데이터 및 상기 원격 데이터의 측지 오차(geodetic error), 고도 오차, 탐지방위 오차, 거리 오차 및 위치 오차 중 적어도 하나를 보정하는
전술 데이터 링크 시스템의 데이터 처리 장치. - 제 1 항에 있어서,
상기 전술 데이터는, 전술 항적(track)을 포함하는
전술 데이터 링크 시스템의 데이터 처리 장치. - 전술 데이터 링크 시스템의 로컬 데이터와 원격 데이터 간의 비교일치 연산을 n개의 블록 단위로 수행하는 병렬 처리 장치; 및
상기 로컬 데이터를 상기 n개의 블록에 대응하는 n개의 그룹으로 분할하여 상기 n개의 블록에 할당하고, 상기 원격 데이터를 상기 병렬 처리 장치의 글로벌 메모리에 할당하며, 상기 병렬 처리 장치의 상기 비교일치 연산에 따른 결과를 상기 글로벌 메모리로부터 반환받는 데이터 처리 장치를 포함하고,
상기 데이터 처리 장치는,
상기 로컬 데이터와 상기 원격 데이터에 대한 유효성을 검사하는
전술 데이터 링크 시스템. - 제 7 항에 있어서,
상기 전술 데이터 링크 시스템은,
제1 시점에서 상기 로컬 데이터를 수신하는 로컬 중계기; 및
상기 제1 시점에서 상기 원격 데이터를 수신하는 원격 중계기와 연결되며,
상기 병렬 처리 장치는,
상기 로컬 데이터와 상기 원격 데이터를 비교하여 동일한 노드로부터 발생된 데이터이면 상기 로컬 데이터와 상기 원격 데이터를 단일 데이터로 판단하는
전술 데이터 링크 시스템. - 제 8 항에 있어서,
상기 병렬 처리 장치는, 상기 로컬 데이터와 상기 원격 데이터에 포함된 위치(latitude, longitude), 속도(speed), 항로(course) 및 고도(altitude) 중 적어도 하나의 정보를 비교하는
전술 데이터 링크 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170105501A KR101988482B1 (ko) | 2017-08-21 | 2017-08-21 | 전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170105501A KR101988482B1 (ko) | 2017-08-21 | 2017-08-21 | 전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190020479A KR20190020479A (ko) | 2019-03-04 |
KR101988482B1 true KR101988482B1 (ko) | 2019-06-12 |
Family
ID=65759969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170105501A KR101988482B1 (ko) | 2017-08-21 | 2017-08-21 | 전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101988482B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102441348B1 (ko) | 2021-12-20 | 2022-09-07 | 한화시스템 주식회사 | 표준 메시지 동적 정의 알고리즘을 이용한 전술데이터링크의 표준 메시지 생성 방법 및 전술 데이터 송수신 방법 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102542534B1 (ko) * | 2022-12-02 | 2023-06-13 | 국방과학연구소 | 표준 적합성 시험을 수행하는 방법 및 전자 장치 |
KR102524523B1 (ko) * | 2022-12-21 | 2023-04-21 | 국방과학연구소 | 원격 운용이 요구되는 군사용 전술데이터 링크의 대역폭 절감을 위한 운용 장치 및 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4140706B2 (ja) * | 2003-01-29 | 2008-08-27 | 三菱電機株式会社 | 目標追尾装置 |
KR101659485B1 (ko) * | 2016-04-05 | 2016-09-23 | 국방과학연구소 | 그리드 방식을 기반으로 하는 전술 데이터링크 처리 장치 및 그 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101818760B1 (ko) * | 2011-07-22 | 2018-01-15 | 삼성전자주식회사 | 시뮬레이션 장치 및 그의 시뮬레이션 방법 |
-
2017
- 2017-08-21 KR KR1020170105501A patent/KR101988482B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4140706B2 (ja) * | 2003-01-29 | 2008-08-27 | 三菱電機株式会社 | 目標追尾装置 |
KR101659485B1 (ko) * | 2016-04-05 | 2016-09-23 | 국방과학연구소 | 그리드 방식을 기반으로 하는 전술 데이터링크 처리 장치 및 그 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102441348B1 (ko) | 2021-12-20 | 2022-09-07 | 한화시스템 주식회사 | 표준 메시지 동적 정의 알고리즘을 이용한 전술데이터링크의 표준 메시지 생성 방법 및 전술 데이터 송수신 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20190020479A (ko) | 2019-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284823B (zh) | 一种运算装置及相关产品 | |
KR101988482B1 (ko) | 전술 데이터 링크 시스템, 전술 데이터 링크 시스템의 데이터 처리 장치 | |
US8521929B2 (en) | Virtual serial port management system and method | |
JP7433029B2 (ja) | 作業負荷の繰り返し冗長化 | |
US9367372B2 (en) | Software only intra-compute unit redundant multithreading for GPUs | |
US11544113B2 (en) | Task scheduling for machine-learning workloads | |
CN116467061B (zh) | 一种任务执行的方法、装置、存储介质及电子设备 | |
JP2020109552A (ja) | 推論処理装置及び情報処理システム | |
CN105302766B (zh) | 嵌入式控制器可重新配置的处理器间通信的机构和装置 | |
CN104094558A (zh) | 多线程化分组处理 | |
US10042687B2 (en) | Paired value comparison for redundant multi-threading operations | |
EP2750045A1 (en) | Method and apparatus for allocating interrupts in a multi-core system | |
CN117354185A (zh) | 一种信号测试方法及系统、一种车辆 | |
JP7512529B2 (ja) | データ処理のためのデータ処理ネットワーク | |
CN109254795B (zh) | 并行控制方法及电子设备 | |
US9122603B2 (en) | Failure detection in high-performance clusters and computers using chaotic map computations | |
KR20130067454A (ko) | 항공 시스템에서의 헬스 모니터링 방법 | |
US11074200B2 (en) | Use-after-free exploit prevention architecture | |
CN113641186A (zh) | 一种无人机编队射频兼容性设计方法 | |
CN112711546A (zh) | 内存配置方法、装置及存储介质 | |
JP2020109551A (ja) | 情報処理装置及び情報処理システム | |
KR102033330B1 (ko) | 항공전자 통신 모듈 및 이의 동작 방법 | |
CN109286978B (zh) | 一种定位网络的组网方法、装置、终端设备及存储介质 | |
KR101595062B1 (ko) | 그래프 극대 매칭 방법 | |
US11354132B2 (en) | Load balancing of two processors when executing diverse-redundant instruction sequences |
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 | ||
GRNT | Written decision to grant |