KR101805866B1 - 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법 - Google Patents

소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법 Download PDF

Info

Publication number
KR101805866B1
KR101805866B1 KR1020160148782A KR20160148782A KR101805866B1 KR 101805866 B1 KR101805866 B1 KR 101805866B1 KR 1020160148782 A KR1020160148782 A KR 1020160148782A KR 20160148782 A KR20160148782 A KR 20160148782A KR 101805866 B1 KR101805866 B1 KR 101805866B1
Authority
KR
South Korea
Prior art keywords
information
controller
memory
hardware functional
hardware
Prior art date
Application number
KR1020160148782A
Other languages
English (en)
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 KR1020160148782A priority Critical patent/KR101805866B1/ko
Application granted granted Critical
Publication of KR101805866B1 publication Critical patent/KR101805866B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

전자 장치는, 주 제어기; 다수의 하드웨어 기능 블록; 상기 주 제어기에 의해 제어되며, 상기 다수의 하드웨어 기능 블록을 제어하는 보조 제어기; 및 상기 다수의 하드웨어 기능 블록블록과 연관된 파라미터들이 정의되어 있는 제 1 메모리;를 포함한다. 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법에 따르면, 메인 프로세서에서의 작업량을 감소시켜 효율적인 처리가 가능하다.

Description

소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법{ELECTRONIC APPARATUS FOR SOFTWARE DEFINED RADIO AND SCHEDULING METHOD THEREFOR}
본 발명은 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법에 관한 것이다.
소프트웨어 디파인드 라디오(Software Defined Radio, SDR)는 다양한 무선 접속 환경에 대해 유연하게 적응 가능한 시스템 구축을 위하여, 개방형 구조의 단일 하드웨어 플랫폼상에 응용 소프트웨어를 다운로드하여 글로벌 통신이 가능하게 하는 라디오 통신 기술이다.
소프트웨어 다운로드에 의해 현지에서 재구성할 수 있는 통신 장치를 제공할 수 있는 소프트웨어 디파인드 라디오 시스템은, 하드웨어에 의존적이지 않고 소프트웨어에 의한 유연한 적용이 가능한 것이 특징으로, 퍼스널 컴퓨터와 무선 기술의 융합으로 생각할 수 있을 것이다.
그런데, 소프트웨어 디파인드 라디오 시스템의 경우, 다수의 통신 규격을 소프트웨어의 재구성에 의해 지원할 필요가 있어, 처리할 연산량이 많아 메인 프로세서에서의 작업량을 감소시키기 위한 연구가 필요하다.
미국공개특허공보 제2015-0278140호 : LOW POWER SOFTWARE DEFINED RADIO(SDR)(2015년 10월 1일 공개)
본 발명은 전술한 바와 같은 기술적 과제를 해결하는 데 목적이 있는 발명으로서, 메인 프로세서에서의 작업량을 감소시켜 효율적인 처리가 가능한 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법을 제공하는 것에 그 목적이 있다.
본 발명의 바람직한 일실시예에 따른 전자 장치는, 주 제어기; 다수의 하드웨어 기능 블록; 상기 주 제어기에 의해 제어되며, 상기 다수의 하드웨어 기능 블록을 제어하는 보조 제어기; 및 상기 다수의 하드웨어 기능 블록과 연관된 파라미터들이 정의되어 있는 제 1 메모리;를 포함한다.
구체적으로, 상기 주 제어기가 상기 보조 제어기로 헤더 정보인 제 1 주소 정보를 전송하면, 상기 보조 제어기는 상기 제 1 메모리로부터 상기 다수의 하드웨어 기능 블록으로 상기 제 1 주소 정보와 연관된 파라미터들을 전송하도록 한다.
아울러, 상기 제 1 주소 정보와 연관된 파라미터들은 다수의 파라미터 세트를 포함하는 것을 특징으로 한다. 바람직하게는, 다수의 파라미터 세트 각각은, 하나의 하드웨어 기능 블록으로 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함한다.
또한, 본 발명의 전자 장치는, 상기 다수의 하드웨어 기능 블록이 읽어들일 데이터가 저장되어 있거나 상기 다수의 하드웨어 기능 블록이 쓰기 위한 데이터 공간이 준비되어 있는 제 2 메모리;를 더 포함하는 것이 바람직하다, 아울러, 상기 다수의 하드웨어 기능 블록은 각각, 해당 다이렉트 메모리 액세스 정보를 이용하여 상기 제 2 메모리로부터 데이터를 읽어들이거나 상기 제 2 메모리에 데이터를 쓰는 것을 특징으로 한다.
바람직하게는, 상기 보조 제어기는, 상기 다수의 하드웨어 기능 블록 모두로 해당 파라미터 세트 정보의 전송이 완료된 경우, 상기 주 제어기로 연관 정보를 전송하는 것을 특징으로 한다.
아울러, 상기 제 1 메모리는, 적어도 하나의 헤더 및 헤더 각각과 연관된 다수의 파라미터 세트를 포함하고 있는 것이 바람직하다. 또한, 상기 헤더 각각과 연관된 다수의 파라미터 세트는, 상기 보조 제어기에 의해 제어되는 상기 다수의 하드웨어 기능 블록에 대응한다.
본 발명의 바람직한 일실시예에 따른 스케줄링 방법은, 주 제어기, 보조 제어기, 다수의 하드웨어 기능 블록, 제 1 메모리 및 제 2 메모리를 포함하는 전자 장치를 이용한다.
구체적으로 본 발명의 스케줄링 방법은, (a) 상기 주 제어기가 상기 보조 제어기로 주소 정보를 전송하는 단계; (b) 상기 보조 제어기가 상기 주소 정보를 이용하여, 연관된 상기 제 1 메모리의 헤더 정보를 읽어들이는 단계; (c) 상기 보조 제어기가 상기 헤더 정보와 연관된 파라미터 세트 정보를 상기 제 1 메모리로부터 해당 하드웨어 기능 블록으로 전송하는 단계; 및 (d) 해당 하드웨어 기능 블록이, 해당 파라미터 세트 정보를 이용하여 해당 작업을 실시하는 단계;를 포함하는 것이 바람직하다.
아울러, 본 발명의 스케줄링 방법은, 상기 (d) 단계 이후에, (e) 해당 파라미터 세트를 이용하여 해당 작업이 완료된 경우, 해당 하드웨어 기능 블록이 해당 작업 완료 정보를 상기 보조 제어기로 전송하는 단계; 및 (f) 상기 보조 제어기가 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료했는지를 판단하는 단계;를 더 포함하는 것을 특징으로 한다.
또한, 본 발명의 스케줄링 방법은, (g) 상기 (f) 단계의 판단 결과, 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료한 것이 아니라면, 상기 보조 제어기가 상기 헤더 정보와 연관된 다음 파라미터 세트를 다음 하드웨어 기능 블록으로 전송하는 단계; 및 (h) 상기 (f) 단계의 판단 결과, 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료하였다면, 상기 보조 제어기는 상기 주 제어기로 연관 정보를 전송하는 단계;를 더 포함하는 것이 바람직하다.
아울러, 해당 파라미터 세트 정보는, 해당 하드웨어 기능 블록으로 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함하고 있는 것을 특징으로 한다. 또한, 상기 (d) 단계에서, 해당 하드웨어 기능 블록은, 상기 다이렉트 메모리 액세스 정보를 이용하여 상기 제 2 메모리로부터 데이터를 읽어들이거나 상기 제 2 메모리에 데이터를 쓰는 것이 바람직하다.
본 발명의 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법에 따르면, 메인 프로세서에서의 작업량을 감소시켜 효율적인 처리가 가능하다.
도 1은 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치의 구성도.
도 2는 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치에 의한 스케줄링 방법의 흐름도.
도 3은 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치의 구성도.
도 4는 제 1 메모리의 구조도.
도 5는 제 2 메모리의 구조도.
도 6은 보조 제어기, 제 1 메모리의 헤더, 다수의 파라미터 세트 및 하드웨어 기능 블록 사이의 관계 설명도.
도 7은 하나의 파라미터 세트의 구조도.
도 8은 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치에 의한 스케줄링 방법의 흐름도.
이하, 첨부된 도면을 참조하면서 본 발명의 실시예들에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법에 대해 상세히 설명하기로 한다.
본 발명의 하기의 실시예들은 본 발명을 구체화하기 위한 것일 뿐 본 발명의 권리 범위를 제한하거나 한정하는 것이 아님은 물론이다. 본 발명의 상세한 설명 및 실시예들로부터 본 발명이 속하는 기술 분야의 전문가가 용이하게 유추할 수 있는 것은 본 발명의 권리 범위에 속하는 것으로 해석된다.
먼저, 도 1은 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)의 구성도를 나타낸다. 아울러, 도 2는, 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)에 의한 스케줄링 방법의 흐름도를 나타낸다.
도 1 및 도 2에 의해 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100) 및 그 스케줄링 방법에 대해 설명하기로 한다.
종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)는, 주 제어기(110), 하드웨어 기능 블록(130) 및 메모리(140)를 포함한다.
주 제어기(110)는 CPU와 같은 프로세서를 이용할 수 있고, 소프트웨어가 탑재되어 동작하는 부분이다. 아울러, 하드웨어 기능 블록(130)은, 하드웨어에 의해 구현되는 하드웨어 액셀러레이터(Hardware Accelerator)를 예로 들 수 있다.
종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)는, 주 제어기(110)에서 하드웨어 기능 블록(130)을 제어한다.
구체적으로, 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)를 이용한 스케줄링 방법은, 하드웨어 기능 블록(130)이 준비가 되었는 지를 판단하고(S110), S110 단계의 판단 결과, 하드웨어 기능 블록(130)이 준비가 되었다면, 주 제어기(110)가 하드웨어 기능 블록(130)의 파라미터를 설정한다(S120).
아울러, 하드웨어 기능 블록(130)은, S120 단계에서 설정된 파라미터에 따라 구성(Configuration)을 하고(S130), 작업을 실시한다(S140). 구체적으로 S140 단계는, 메모리(140)로부터 데이터를 읽어들여(S141) 작업을 실시하고(S142), 작업 실시 후, 해당 작업의 결과로서 메모리(140)로 데이터를 쓰는 단계(S143)를 포함한다.
작업이 완료되면(S150), 해당 정보를 주 제어기(110)로 전송하게 되고(S160), S160 단계의 정보에 따라 주 제어기(110)는 업데이트된 파라미터들을 읽어들인다(S170).
그런데, 종래의 소프트웨어 디파인드 라디오를 위한 전자 장치(100)와 같이, 하나의 주 제어기(110)에 의해 하드웨어 기능 블록(130)이 제어될 경우, 다수의 하드웨어 기능 블록(130)이 요구되는 소프트웨어 디파인드 라디오 분야에서는, 주 제어기(110)로 송수신되는 데이터량이 방대해져 많은 인터럽트가 발생함에 따라, 주 제어기(110)에 의한 빠른 처리가 어려워질 수 있다.
도 3은 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)의 구성도를 나타낸다.
도 3으로부터 알 수 있는 바와 같이, 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)는, 주 제어기(210), 보조 제어기(220), 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M), 제 1 메모리(240) 및 제 2 메모리(250)를 포함한다.
주 제어기(210)는 CPU와 같은 프로세서를 이용할 수 있고, 소프트웨어가 탑재되어 동작하는 부분이다. 아울러, 하드웨어 기능 블록(230_1, 230_2, 230_M)은, 하드웨어에 의해 구현되는 하드웨어 액셀러레이터(Hardware Accelerator)를 예로 들 수 있다.
주 제어기(210)는, 보조 제어기(220)를 제어한다. 즉, 본 발명의 주 제어기(210)는 하드웨어 기능 블록(230_1, 230_2, 230_M)을 직접적으로 제어하지 않는다.
보조 제어기(220)는, 작은 용량의 프로세서, 프로세서의 일부 또는 경우에 따라서는 하드웨어를 포함하여 구현될 수 있다. 보조 제어기(220)는, 주 제어기(210)에 의해 제어되며, 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 제어한다. 이를 위해 보조 제어기(220)에는 제어할 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)의 리스트가 저장되어 있는 것이 바람직하다.
이렇게 본 발명에 따르면, 주 제어기(210)가 직접 하드웨어 기능 블록(230_1, 230_2, 230_M)을 제어하지 않으므로, 주 제어기(210)의 인터럽트를 포함한 연산의 부담이 줄어들게 된다. 이에 따라, 주 제어기(210)는 본연의 소프트웨어 디파인드 라디오를 위한 소프트웨어 부분을 더욱 충실히 처리할 수 있게 된다.
상술한 바와 같은 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)를 위해서는, 2개의 메모리(240, 250)를 구비하고, 제 1 메모리(240)는 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 프로그램하는 목적으로 사용하고, 제 2 메모리(250)는 데이터의 저장을 위한 목적으로 사용하는 것이 바람직하다.
이렇게 메모리 구조를 제 1 메모리(240) 및 제 2 메모리(250)로 이원화하는 것에 의해, 더욱 효율적인 처리가 가능함은 물론이다.
도 4는 제 1 메모리(240)의 구조도를 나타내고, 도 5는 제 2 메모리(250)의 구조도를 나타낸다.
제 1 메모리(240)는, 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)이 실시할 작업이 파라미터들에 의해 정의되어 있는 것이 바람직하다. 구체적으로, 제 1 메모리(240)에는, 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)과 연관된 다수의 파라미터들, 즉 명령어 파라미터 세트가 저장되어 있다.
아울러, 제 2 메모리(250)는, 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)이 읽어들일 데이터가 저장되어 있거나 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)이 쓰기 위한 데이터 공간이 준비되어 있다. 이렇게 메모리 구조를 제 1 메모리(240) 및 제 2 메모리(250)로 이원화하는 것에 의해, 더욱 효율적인 처리가 가능함은 물론이다.
도 6은 보조 제어기(220), 제 1 메모리(240)의 헤더, 다수의 파라미터 세트 및 하드웨어 기능 블록(230_1, 230_2, 230_M) 사이의 관계 설명도를 나타낸다.
제 1 메모리(240)는, 적어도 하나의 헤더를 포함하고, 하나의 헤더와 연관하여 다수의 파라미터 세트를 포함하고 있는 것을 특징으로 한다. 헤더 정보는, 다수의 파라미터 세트를 하나의 파라미터 그룹으로 구성하기 위한 정보이다. 하나의 헤더 정보는 하나의 그룹의 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)에 대응된다.
즉, 하나의 헤더(H1)와 연관하여 저장된 다수의 파라미터 세트는, 하나의 보조 제어기(220)에 의해 제어되는 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)에 대응한다. 이 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 하나의 기능 블록 그룹(G1)이라고 할 때, 다른 기능 블록 그룹(G2)은 다른 하나의 보조 제어기(220)에 의해 제어되고, 제 1 메모리(240)의 다른 하나의 헤더(H2)를 이용하게 된다.
주 제어기(210)가 보조 제어기(220)로 제 1 메모리(240)의 헤더 정보인 제 1 주소 정보를 전송하면, 보조 제어기(220)는 제 1 메모리(240)로부터 해당 하드웨어 기능 블록(230_1, 230_2, 230_M)으로 제 1 주소 정보와 연관된 파라미터들을 전송하도록 제어한다.
즉, 제 1 주소 정보와 연관되어 저장된 파라미터들은 다수의 파라미터 세트를 구성한다. 하나의 파라미터 세트는, 하나의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 위한 다이렉트 메모리 액세스 정보(Direct Memory Access, DMA) 및 작업 정보를 포함하고 있는 것이 바람직하다.
도 7은 하나의 파라미터 세트의 구조도를 나타낸다.
모든 파라미터 세트는 동일한 도 7과 같은 구조를 가지며, 하나의 하드웨어 기능 블록(230_1, 230_2, 230_M)에 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함한다.
다이렉트 메모리 액세스 정보는, 하드웨어 기능 블록(230_1, 230_2, 230_M)이 읽어들일 적어도 하나의 입력 데이터 정보 및 하드웨어 기능 블록(230_1, 230_2, 230_M)이 쓰기 위한 적어도 하나의 출력 데이터 정보를 포함한다. 아울러, 하드웨어 기능 블록(230_1, 230_2, 230_M)은, 다이렉트 메모리 액세스 정보를 이용하여, 제 2 메모리(250)에 읽거나 쓰기를 할 수 있다.
아울러, 각각의 입력 데이터 정보는, 해당 입력 데이터의 시작 주소 정보; 해당 입력 데이터의 종료 주소 정보; 해당 입력 데이터의 오프셋 바이트 정보; 및 해당 입력 데이터의 길이 정보;를 포함한다.
또한, 각각의 출력 데이터 정보는, 해당 출력 데이터의 시작 주소 정보; 해당 출력 데이터의 종료 주소 정보; 및 해당 출력 데이터의 오프셋 바이트 정보;를 포함하고 있는 것이 바람직하다.
파라미터 세트 각각은, 4바이트의 25개 세부 구성을 포함하여, 제 1 메모리(240)에서 100바이트를 차지하게 된다.
구체적으로, 하나의 입력 데이터 정보는 4개의 세부 구성을 포함하므로 16바이트를 차지하고, 하나의 출력 데이터 정보는 3개의 세부 구성을 포함하므로 12바이트를 차지한다.
하나의 파라미터 세트에 포함된 작업 정보는, 적어도 하나의 파라미터를 포함한다. 작업 정보에 포함된 적어도 하나의 파라미터는, 하드웨어 기능 블록(230_1, 230_2, 230_M)의 작업을 위한 것으로 간단하게는 덧셈, 뺄셈과 같은 연산을 예로 들 수 있을 것이다.
정리하자면, 하드웨어 기능 블록(230_1, 230_2, 230_M)은, 다이렉트 메모리 액세스 정보를 이용하여 제 2 메모리(250)를 읽고, 읽어들인 데이터를 입력 데이터로 하여 작업을 실시하고. 작업 결과인 출력 데이터를 다이렉트 메모리 액세스 정보를 이용하여, 제 2 메모리(250)에 쓴다.
제 1 메모리(240)와 유사하게, 제 2 메모리(250)의 영역도 다수의 그룹으로 분리되어 구성되는 것이 바람직하다. 아울러, 제 2 메모리(250)의 각각의 그룹은, 하나의 그룹의 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 위한 영역으로 설정될 필요가 있다.
보조 제어기(220)는, 다수의 하드웨어 기능 블록(230_1, 230_2, 230_M) 모두로 해당 파라미터 세트 정보의 전송이 완료된 경우, 주 제어기(210)로 연관 정보를 전송하게 된다.
아울러, 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)는 다수의 보조 제어기(220)를 포함할 수 있다. 각각의 보조 제어기(220)는, 하나의 헤더 정보를 전송받아, 하나의 그룹의 하드웨어 기능 블록(230_1, 230_2, 230_M)을 제어하는 것이 바람직하다.
참고로 도 3에서는, 설명의 편의를 위해 하나의 보조 제어기(220) 및 하나의 그룹의 하드웨어 기능 블록(230_1, 230_2, 230_M)만이 도시되어 있다.
도 8은 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)에 의한 스케줄링 방법의 흐름도를 나타낸다.
본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)에 의한 스케줄링 방법은, 상술한 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)를 이용하므로, 별도의 설명이 없더라도 본 발명의 바람직한 일실시예에 따른 소프트웨어 디파인드 라디오를 위한 전자 장치(200)의 모든 특징을 포함하고 있음은 물론이다.
도 8로부터 알 수 있는 바와 같이, 본 발명의 스케줄링 방법은, 주 제어기(210)가 보조 제어기(220)로 주소 정보를 전송하여 설정하는 단계(S210), 보조 제어기(220)가 설정된 주소 정보를 이용하여, 연관된 제 1 메모리(240)의 헤더 정보를 읽어들이는 단계(S220), 보조 제어기(220)가 헤더 정보와 연관되어 저장된 파라미터 세트를 제 1 메모리(240)로부터 해당 하드웨어 기능 블록(230_1, 230_2, 230_M)으로 전송하여 저장하는 단계(S230) 및 해당 하드웨어 기능 블록(230_1, 230_2, 230_M)이 해당 파라미터 세트를 이용하여 해당 작업을 실시하는 단계(S240)를 포함한다.
해당 파라미터 세트는, 해당 하드웨어 기능 블록(230_1, 230_2, 230_M)에 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함한다. 다이렉트 메모리 액세스 정보는, 하드웨어 기능 블록(230_1, 230_2, 230_M)이 읽어들일 적어도 하나의 입력 데이터 정보 및 하드웨어 기능 블록(230_1, 230_2, 230_M)이 쓰기 위한 적어도 하나의 출력 데이터 정보를 포함한다. 하드웨어 기능 블록(230_1, 230_2, 230_M)은, 다이렉트 메모리 액세스 정보를 이용하여, 제 2 메모리(250)에 읽거나 쓰기를 할 수 있다.
아울러, 본 발명의 스케줄링 방법은, 해당 하드웨어 기능 블록(230_1, 230_2, 230_M)에서 해당 파라미터 세트를 이용한 해당 작업이 완료된 경우, 해당 작업 완료 정보를 보조 제어기(220)로 전송하는 단계(S250) 및 보조 제어기(220)가, 보조 제어기(220)에 의해 제어될 모든 하드웨어 기능 블록(230_1, 230_2, 230_M)이 작업을 완료했는지를 판단하는 단계(S260)를 더 포함하는 것을 특징으로 한다.
또한, 본 발명의 스케줄링 방법은, S260 단계의 판단 결과, 보조 제어기(220)에 의해 제어될 모든 하드웨어 기능 블록(230_1, 230_2, 230_M)이 작업을 완료한 것이 아니라면, 보조 제어기(220)가 헤더 정보와 연관된 다음 파라미터 세트와 연관된 작업을 수행하게 된다. 이에 따라, S230 단계 내지 S260 단계가 반복되게 된다.
즉, S260 단계의 판단 결과, 보조 제어기(220)에 의해 제어될 모든 하드웨어 기능 블록(230_1, 230_2, 230_M)이 작업을 완료한 것이 아니라면, 헤더 정보와 연관된 다음 파라미터 세트를 다음 하드웨어 기능 블록(230_1, 230_2, 230_M)으로 전송하여, 후속 단계를 밟게 된다(S270).
또한, 본 발명의 스케줄링 방법은, S260 단계의 판단 결과, 보조 제어기(220)에 의해 제어될 모든 하드웨어 기능 블록(230_1, 230_2, 230_M)이 작업을 완료된 것이하면, 보조 제어기(220)는 주 제어기(210)를 인터럽트하여 주 제어기(210)로 연관 정보를 전송한다(S280).
상술한 바와 같이 본 발명의 소프트웨어 디파인드 라디오를 위한 전자 장치(200) 및 그 스케줄링 방법에 따르면, 메인 프로세서인 주 제어기(210)는 보조 제어기(220)를 제어하고 보조 제어기(220)는 다수의 하드웨어 블록을 제어하는, 이원화된 단계적인 제어에 의해 주 제어기(210)로의 인터럽트 및/또는 주 제어기(210)로부터의 인터럽트가 막대하게 감소하여, 주 제어기(210)에 의한 처리의 부담을 극적으로 감소시킬 수 있음을 알 수 있다.
즉, 본 발명의 소프트웨어 디파인드 라디오를 위한 전자 장치(200) 및 그 스케줄링 방법에 따르면, 메인 프로세서에서의 작업량을 감소시켜 효율적인 처리가 가능함을 알 수 있다.
100 : 종래의 전자 장치
200 : 본 발명의 전자 장치
110, 210 : 주 제어기
220 : 보조 제어기
130, 230_1, 230_2, 230_M : 하드웨어 기능 블록
140 : 메모리
240 : 제 1 메모리
250 : 제 2 메모리

Claims (13)

  1. 주 제어기;
    다수의 하드웨어 기능 블록;
    상기 주 제어기에 의해 제어되며, 상기 다수의 하드웨어 기능 블록을 제어하는 보조 제어기; 및
    상기 다수의 하드웨어 기능 블록과 연관된 파라미터들이 정의되어 있는 제 1 메모리;를 포함하되,
    상기 주 제어기가 상기 보조 제어기로 헤더 정보인 제 1 주소 정보를 전송하면,
    상기 보조 제어기는, 상기 제 1 메모리로부터 해당 하드웨어 기능 블록으로 상기 제 1 주소 정보와 연관된 파라미터들을 전송하도록 하는 것을 특징으로 하는 전자 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 제 1 주소 정보와 연관된 파라미터들은 다수의 파라미터 세트를 포함하되,
    다수의 파라미터 세트 각각은, 하나의 하드웨어 기능 블록으로 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함하고 있는 것을 특징으로 하는 전자 장치.
  4. 제3항에 있어서,
    상기 전자 장치는,
    상기 다수의 하드웨어 기능 블록이 읽어들일 데이터가 저장되어 있거나 상기 다수의 하드웨어 기능 블록이 쓰기 위한 데이터 공간이 준비되어 있는 제 2 메모리;를 더 포함하되,
    상기 다수의 하드웨어 기능 블록은 각각, 해당 다이렉트 메모리 액세스 정보를 이용하여 상기 제 2 메모리로부터 데이터를 읽어들이거나 상기 제 2 메모리에 데이터를 쓰는 것을 특징으로 하는 전자 장치.
  5. 제4항에 있어서,
    상기 보조 제어기는,
    상기 다수의 하드웨어 기능 블록 모두로 해당 파라미터 세트 정보의 전송이 완료된 경우, 상기 주 제어기로 연관 정보를 전송하는 것을 특징으로 하는 전자 장치.
  6. 제1항에 있어서,
    상기 제 1 메모리는,
    적어도 하나의 헤더 및 헤더 각각과 연관된 다수의 파라미터 세트를 포함하고 있는 것을 특징으로 하는 전자 장치.
  7. 제6항에 있어서,
    상기 헤더 각각과 연관된 다수의 파라미터 세트는, 상기 보조 제어기에 의해 제어되는 상기 다수의 하드웨어 기능 블록에 대응하는 것을 특징으로 하는 전자 장치.
  8. 주 제어기, 보조 제어기, 다수의 하드웨어 기능 블록 및 제 1 메모리를 포함하는 전자 장치를 이용한 방법에 있어서,
    (a) 상기 주 제어기가 상기 보조 제어기로 주소 정보를 전송하는 단계;
    (b) 상기 보조 제어기가 상기 주소 정보를 이용하여, 연관된 상기 제 1 메모리의 헤더 정보를 읽어들이는 단계;
    (c) 상기 보조 제어기가 상기 헤더 정보와 연관된 파라미터 세트 정보를 상기 제 1 메모리로부터 해당 하드웨어 기능 블록으로 전송하는 단계; 및
    (d) 해당 하드웨어 기능 블록이, 해당 파라미터 세트 정보를 이용하여 해당 작업을 실시하는 단계;를 포함하는 방법.
  9. 제8항에 있어서,
    상기 방법은,
    상기 (d) 단계 이후에,
    (e) 해당 파라미터 세트를 이용하여 해당 작업이 완료된 경우, 해당 하드웨어 기능 블록이 해당 작업 완료 정보를 상기 보조 제어기로 전송하는 단계; 및
    (f) 상기 보조 제어기가 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료했는지를 판단하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    (g) 상기 (f) 단계의 판단 결과, 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료한 것이 아니라면, 상기 보조 제어기가 상기 헤더 정보와 연관된 다음 파라미터 세트를 다음 하드웨어 기능 블록으로 전송하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  11. 제9항에 있어서,
    (h) 상기 (f) 단계의 판단 결과, 상기 보조 제어기에 의해 제어될 모든 하드웨어 기능 블록이 작업을 완료하였다면, 상기 보조 제어기는 상기 주 제어기로 연관 정보를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  12. 제8항에 있어서,
    해당 파라미터 세트 정보는, 해당 하드웨어 기능 블록으로 전송할 다이렉트 메모리 액세스 정보 및 작업 정보를 포함하고 있는 것을 특징으로 하는 방법.
  13. 제12항에 있어서,
    상기 전자 장치는 제 2 메모리;를 더 포함하되,
    상기 (d) 단계에서,
    해당 하드웨어 기능 블록은, 상기 다이렉트 메모리 액세스 정보를 이용하여 상기 제 2 메모리로부터 데이터를 읽어들이거나 상기 제 2 메모리에 데이터를 쓰는 것을 특징으로 하는 방법.
KR1020160148782A 2016-11-09 2016-11-09 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법 KR101805866B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160148782A KR101805866B1 (ko) 2016-11-09 2016-11-09 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160148782A KR101805866B1 (ko) 2016-11-09 2016-11-09 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법

Publications (1)

Publication Number Publication Date
KR101805866B1 true KR101805866B1 (ko) 2017-12-07

Family

ID=60920385

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160148782A KR101805866B1 (ko) 2016-11-09 2016-11-09 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법

Country Status (1)

Country Link
KR (1) KR101805866B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855002A (zh) * 2019-11-13 2020-02-28 国网天津市电力公司 一种智能分级可拓模块化能源控制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060046771A1 (en) * 2004-09-01 2006-03-02 Katsuhiko Tsunehara Radio communication apparatus with a bus dedicated to data transmission
JP2006173664A (ja) * 2004-12-10 2006-06-29 National Institute Of Information & Communication Technology ソフトウェア無線機及び、プログラマブル信号処理装置、中央制御信号処理装置
WO2012111053A1 (ja) 2011-02-15 2012-08-23 日本電気株式会社 複素演算処理用コプロセッサ及びプロセッサシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060046771A1 (en) * 2004-09-01 2006-03-02 Katsuhiko Tsunehara Radio communication apparatus with a bus dedicated to data transmission
JP2006173664A (ja) * 2004-12-10 2006-06-29 National Institute Of Information & Communication Technology ソフトウェア無線機及び、プログラマブル信号処理装置、中央制御信号処理装置
WO2012111053A1 (ja) 2011-02-15 2012-08-23 日本電気株式会社 複素演算処理用コプロセッサ及びプロセッサシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855002A (zh) * 2019-11-13 2020-02-28 国网天津市电力公司 一种智能分级可拓模块化能源控制系统

Similar Documents

Publication Publication Date Title
US20200334145A1 (en) Storage device, computer system, and operation method of storage device configured to arbitrarily stop garbage collection
JP2006338538A (ja) ストリームプロセッサ
CN105208135A (zh) 一种文件传输方法和设备
KR101805866B1 (ko) 소프트웨어 디파인드 라디오를 위한 전자 장치 및 그 스케줄링 방법
KR101856006B1 (ko) 소프트웨어 디파인드 라디오를 위한 메모리 구조
CN110278716B (zh) Plc、网络单元、cpu单元、以及数据传送方法
JP2023126702A (ja) 情報処理装置、および、データ転送方法
KR101593835B1 (ko) Plc 시스템
US20160170921A1 (en) Semiconductor integrated circuit and method of data transfer processing the same
KR20090012901A (ko) 시스템 온 칩에서 재정의 가능한 디스크립터 장치 및 방법
JP2008210280A (ja) 半導体装置及びdmaコントローラ
KR20190095987A (ko) Plc 시스템
KR102280241B1 (ko) 메모리 액세스 제어 시스템, 메모리 액세스 제어 장치 및 이를 이용한 메모리 액세스 제어 방법
CN110971631B (zh) 访问ceph集群的方法、装置、服务器及介质
JP6940283B2 (ja) Dma転送制御装置、dma転送制御方法、及び、dma転送制御プログラム
JP4278580B2 (ja) プログラム変更方法、プログラマブルコントローラおよびプログラム編集装置。
JP2022165569A (ja) メモリシステム、メモリデバイス、およびデータ送信方法
KR20170133116A (ko) 전자 장치 및 그것의 동작 방법
US20030070029A1 (en) Data transmission transceiver unit and program updating method therefor
WO2018135437A1 (ja) 転送制御装置、転送装置、転送制御方法及び転送制御プログラム
JP2005500593A5 (ko)
JP2005071170A (ja) 記憶領域更新装置
JP2022061674A (ja) メモリ制御装置および制御方法
JP4854598B2 (ja) データ転送制御装置
JP2016133898A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム

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