KR100948597B1 - 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법 - Google Patents

다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법 Download PDF

Info

Publication number
KR100948597B1
KR100948597B1 KR1020070132319A KR20070132319A KR100948597B1 KR 100948597 B1 KR100948597 B1 KR 100948597B1 KR 1020070132319 A KR1020070132319 A KR 1020070132319A KR 20070132319 A KR20070132319 A KR 20070132319A KR 100948597 B1 KR100948597 B1 KR 100948597B1
Authority
KR
South Korea
Prior art keywords
resource
resources
state
source
storage unit
Prior art date
Application number
KR1020070132319A
Other languages
English (en)
Other versions
KR20090064934A (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 KR1020070132319A priority Critical patent/KR100948597B1/ko
Priority to US12/239,508 priority patent/US20090158285A1/en
Publication of KR20090064934A publication Critical patent/KR20090064934A/ko
Application granted granted Critical
Publication of KR100948597B1 publication Critical patent/KR100948597B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • 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
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5014Reservation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

리소스들로 이루어진 다중 복호기를 갖는 다중 복호기 시스템에서의 상기 리소스들을 제어하는 리소스 공유 스케줄 장치는, 상기 리소스들의 상태 정보 및 상기 리소스들의 공유 스케줄 제어에 필요한 정보들을 저장하는 저장부; 및 임의의 소스 리소스에서 타겟 리소스 할당을 요청하면, 상기 타겟 리소스를 할당하여 상기 소스 리소스에 상기 타겟 리소스의 정보를 출력하고, 상기 리소스들의 상태를 갱신하는 제어기를 포함하여 상기 다중 복호기 간의 리소스를 공유하기 위해 상기 리소스들과 양방향으로 연결되어 리소스 공유 스케줄을 제어함으로써 전체적인 복호 시간을 단축할 수 있고, 리소스 사용 스케줄을 최적화할 수 있다.
NoC(Network on Chip), 다중 복호기, 리소스(또는 모듈), 리소스 공유 스케줄 제어 장치, 소스 리소스, 타겟 리소스, 리소스 상태, 예약 상태.

Description

다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치 및 그 장치에서의 리소스 공유 스케줄 제어 방법{Apparatus for controlling schedule of resources sharing in including plural multimedia decoders and Method for controlling schedule of resources sharing in apparatus for controlling schedule of resources sharing}
본 발명은 다중 복호기 시스템에 관한 것으로서, 특히 복수개의 복호 동작을 동시에 수행하는 다중 복호기 시스템에서의 리소스 공유 스케쥴 장치 및 그 장치에서의 리소스 공유 스케줄 제어 방법에 관한 것이다.
본 발명은 정보통신부 IT원천기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-S-077-03, 과제명: 온칩 네트워크 기반 SoC Platform 개발].
일반적으로 SoC(System-On-a-Chip) 설계에서 상호접속(interconnection) 방식으로 사용하는 버스(bus) 방식은 버스(bus)라는 하나의 미디어를 공유함으로 인 해 구성요소(component)간 통신이 느릴 뿐 아니라, 버스 접근 권한 분배를 위한 중앙제어(arbiter)를 사용하는 방식으로 확장이 용이하지 않는 등 단점을 가지고 있다. 이러한 단점을 극복하기 위해 최근 확장성 및 병렬 데이터 통신이 가능한 NoC(Network on Chip) 연구가 진행되었다.
상기 NoC 방식을 사용한 시스템의 일예는 첨부된 도 1에 도시된 바와 같으며, 상기 NoC 방식을 사용한 시스템은 SoC 설계 분야에서 구성요소(프로세서, memory, HW 등)의 상호접속을 위한 시스템이다.
상기 도 1을 참조하면, 상기 NoC 방식을 사용한 시스템은 하나의 스위치(switch)(10)에 하나의 리소스(혹은 모듈, 20)가 연결되어있는 구조이며, 하나의 스위치(10)는 5개의 입출력포트를 가지고, 정해진 라우팅 알고리즘(routing algorithm)에 의해서 입력 데이터는 목적지로 전달되며, 중앙제어 알고리즘(arbiter algorithm(round robin, priority 방식 등))에 의해 같은 출력포트로 두 개 이상의 입력 포트 데이터 전송 요구를 처리하며, 네트워크 혼잡(network congestion)이 있는 경우를 대비하여 버퍼링(buffering) 기능들이 구현된다. 스위치(10)간은 양방향 링크(30)로 연결된다.
도 2는 NoC 상호접속으로 구현한 일반적인 다중 복호기 시스템을 도시한 도면으로서, 이는 상기 NoC의 확장성을 이용하여 한 개의 복호기(또는 동영상 복호기)를 복수로 두어 다중 복호기 시스템을 구현한 것이다. 상기 도 2에서 점선 블록 41, 42는 각 하나의 복호기를 이루는 모듈을 그룹화한 것을 보여준다.
하나의 복호기는 일반 적으로 Motion Compensation(MC), Entropy decoder 모 듈(Ent.Dec), De-Blocking 모듈(DB), Inverse Transformation and Inverse Quantization 모듈(ITIQ) 등의 기능을 담당하는 모듈로 구성된다.
그런데, 일반적 복호기의 구성 모듈은 복호기가 복호해야 할 동영상 부호화 모드에 따라 그 동작의 복잡도의 차이가 커서 동작 시간이 일정하지 않고, 가변적인 특성이 있다. MC를 예를 들어 설명하면, 움직임 벡터의 위치가 정수 픽셀에 위치한 경우, 입력 데이터의 일정부분을 그대로 출력하고 동작을 마치는 반면, 1/4 픽셀 위치의 경우, 6tap 필터를 이용한 보간을 취하여 결과를 얻어야 하므로 동작시간이 길어지는 문제점이 있다.
만약, 다중 동영상 복호화기 내부의 한 복호화기(41)에 대해 모듈을 고정적으로 할당하여 사용하는 경우, 상기 복호기(41)의 MC 모듈의 동작시간이 길어지게 되면, MC 모듈의 전 단계 복호 동작을 수행하는 Ent.Dec. 모듈은 MC 모듈로 즉시 데이터를 전달하고, 다음 복호화를 수행하지 못하고 MC 모듈의 동작 종료를 기다려야 한다.
종래 기술과 같이 한 복호화기에 대해 모듈을 고정적으로 할당하여 사용하는 경우와 달리, 복호기 내의 모듈이 기다리는 시간을 줄여 전체적으로 동작 시간을 단축하기 위해서는 다중 동영상 복호화기가 서로 모듈 사용을 공유할 필요가 있다. 즉, 다중 동영상 복호화기가 서로 모듈 사용을 공유하는 경우, A 기능에 해당하는 모듈 중 다른 모드의 복호를 진행하여 동작을 일찍 종료한 AA 모듈을 사용하는 경우, B 모듈은 기다리는 시간을 낭비할 필요가 없어져 전체적으로 동작 시간을 단축할 수 있다.
따라서 상술한 바와 같은 문제점을 해결하기 위해 본 발명은 동일한 동작을 수행하는 리소스(또는 모듈)가 복수 존재하여 복수개의 복호 동작을 동시에 수행하는 다중 복호기 시스템에서 NoC 데이터 전송 방식을 적용하여 동영상 복호기 내부 모듈의 가변길이 동작 특성을 이용하여 모듈 사용 스케줄을 최적화하기 위한 리소스 공유 스케쥴 장치 및 그 장치에서의 리소스 공유 스케줄 제어 방법을 제공하고자 한다.
상기 이러한 본 발명의 목적들을 달성하기 위한 장치는, 다수의 리소스로 이루어진 다중 복호기를 갖는 다중 복호기 시스템에서의 상기 리소스들의 공유 스케줄을 제어하는 리소스 공유 스케줄 장치로서, 상기 리소스들의 상태 정보 및 상기 리소스들의 공유 스케줄 제어에 필요한 정보들을 저장하는 저장부; 및 임의의 소스 리소스에서 타겟 리소스 할당을 요청하면, 상기 타겟 리소스를 할당하여 상기 소스 리소스에 상기 타겟 리소스의 정보를 출력하고, 상기 리소스들의 상태를 갱신하는 제어기를 포함하며, 상기 다중 복호기 간의 리소스를 공유하기 위해 상기 리소스들과 양방향으로 연결되어 리소스 공유 스케줄을 제어함을 특징으로 한다.
상기 본 발명의 목적들을 달성하기 위한 방법은, 다수의 리소스로 이루어진 다중 복호기 및 상기 리소스들의 공유 스케줄을 제어하는 리소스 공유 스케줄 장치를 갖는 다중 동영상 복호 시스템에서, 상기 리소스 공유 스케줄 제어 장치가 리소스 공유 스케줄을 제어하기 위한 방법으로서, 저장부에 저장된 리소스 별, 동작 모드별 리소스 상태 및 리소스 공유 스케줄 제어를 위한 정보들을 초기화하는 과정; 임의의 소스 리소스로부터 공유하기 위한 타겟 리소스 할당을 요청받으면, 상기 타겟 리소스를 할당하는 과정; 및 상기 소스 리소스로부터 상태 갱신 요청을 받으면, 상기 저장부에 저장된 리소스 상태를 갱신하는 과정을 포함하는 것을 특징으로 한다.
따라서 본 발명은 다중 복호기 시스템의 다중 복호기의 가변 길이 동작 특성을 이용하여 리소스 공유 스케줄 제어 장치에서 다중 복호기 간에 리소스를 효율적으로 공유할 수 있도록 리소스를 할당하고, 리소스의 상태 변경에 따라 저장부에 저장된 리소스 상태 정보를 갱신함으로써 전체적인 복호 시간을 단축할 수 있고, 리소스 사용 스케줄을 최적화할 수 있는 효과가 있다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
그러면 본 발명의 실시예에 따른 다중 복호기 시스템의 리소스 공유 스케줄 제어 장치에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다. 여기서 상기 다중 복호기 시스템은 NoC 데이터 전송 방식을 적용하는 것을 예를 들어 설명하기로 한다.
도3은 본 발명의 실시예에 따른 NoC 기반 다중 복호기 시스템의 구조를 도시한 도면이고, 도 4는 본 발명의 실시예에 따른 다중 복호기 시스템의 리소스 공유 스케줄 제어장치의 내부 구조를 도시한 도면이다.
상기 다중 복호기 시스템은 다수의 리소스(또는 모듈)들로 이루어진 다중의 복호기와, 리소스 공유 스케줄 제어 장치(100)로 구성될 수 있다. 여기서 상기 다중의 복호기는 다수의 동영상 복호기일 수 있으며, 상기 각 복호기는 상기 도 2에 도시된 바와 같이, 스위치(10)로 연결된 다수의 리소스(20)들이 그룹화(41, 42)되어 구성된다.
상기 리소스 공유 스케줄 제어 장치(100)는 리소스 공유를 위하여 다중 복호 기 시스템을 구성하는 모든 리소스들과 양방향으로 연결되고, 다중 복호기가 같은 기능을 가진 리소스를 공유하여 복호를 수행할 수 있도록 복호기 동작 중 최단기간 사용 가능한 리소스를 할당하는 기능을 수행한다. 이러한 리소스 공유 스케줄 제어 장치는 상기 도 4에 도시된 바와 같이, 크게 제어기(110) 및 저장부로 구분되어 구성될 수 있다.
상기 제어부(110)는 임의의 소스 리소스에서 공유하기 위한 타겟 리소스 할당을 요청하면, 복호 동작 중 최단 기간 사용 가능한 리소스를 선택하여 선택한 리소스를 예약하여 상기 타겟 리소스로 할당하고, 상기 타겟 리소의 정보를 상기 요청한 소스 리소스로 출력한다. 그리고 상기 제어부(110)는 임의의 리소스로부터 상태 갱신 요청을 받으면, 상기 저장부에 저장된 리소스 상태를 갱신한다.
상기 저장부는 상기 리소스들의 상태 정보 및 상기 리소스들의 공유 스케줄 제어에 필요한 정보들을 저장하기 위해 리소스 상태 저장부(121), 예상 처리 시간 기록부(122), 리소스간 거리 기록부(123), 전송량 기록부(124)를 포함한다.
상기 리소스 상태 저장부(121)는 리소스 종류별(예를 들어 MC, DB 등) 예를 들어, MC 기능에 대해서는 상기 도 3의 41의 MC, 42의 MC 등과 같이, 시스템에 속한 MC 기능의 리소스 등에 대한 리소스 상태를 저장한다. 상기 리소스 상태 저장부(121)는 리소스 종류, 리소스, 리소스 상태 영역으로 구분되며, 상기 리소스 상태 영역은 동작상태(on/off), 예약(소스 리소스, 예약 대기 시간(waiting time), 예약상태(on/off)), 대기 시간(waiting timing) 영역으로 구분된다.
상기 예상 처리 시간 기록부(122)는 리소스 종류, 모드, 처리 시 간(processing time) 영역으로 구분되며, 리소스 종류별, 복호화 모드 별 예상 처리 시간(processing time)을 기록한다.
상기 리소스간 거리 기록부(123)는 소스 리소스(source resource), 타겟 리소스(target resource), 거리 영역으로 구분되며, 내부 리소스(모듈)간의 거리(hop 수) 즉, 모듈간 통신 시 거쳐야 할 최소 스위치(switch) 수를 기록한다. 예를 들어, 상기 도 3의 41의 MC와 DB 사이를 2 홉(hop)으로 기록할 수 있다.
상기 전송량 기록부(124)는 소스(source) 리소스 종류, 타겟(target) 리소스 종류, 전송량 영역으로 구분되며, 리소스 종류에 따른 전송 소스(source) 리소스, 타겟(target) 리소스 사이의 전송량을 기록한다.
그러면 이와 같은 리소스 공유 스케줄 제어 장치에서 리소스 공유 스케줄 제어하기 위한 방법에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다.
도 5는 본 발명의 실시예에 따른 리소스 공유 스케줄 제어 장치의 리소스 공유 스케줄 제어를 위한 동작을 도시한 도면이다.
설명에 앞서, 다중 복호기 시스템에 포함된 각 동영상 복호기는 다음 리소스 할당이 필요할 시 상기 리소스 공유 스케줄 제어 장치(100)에 리소스 할당 요청을 하는 것으로 가정하고, 상기 리소스 공유 스케줄 제어 장치(100)는 다음과 같이 초기화된 상태이다.
상기 리소스 상태 저장부(121)는 모든 리소스 종류, 그에 해당하는 모든 리소스에 대해 리소스 상태를 off로, 예약을 off로 설정한 상태이다.
상기 예상 처리 시간 기록부(122)는 리소스의 동작 특성을 측정하여 모든 리소스 종류, 가능한 모드에 대해 동작 사이클(cycle)을 측정한 후, 측정된 결과를 기록한 상태이다.
상기 리소스간 거리 기록부(123)는 구성한 NoC 구성에 따라 모든 리소스 간의 홉(hop) 수를 기록한 상태이고, 상기 전송량 기록부(124)는 모든 리소스 종류 및 가능한 모드에 대해 모든 타겟 리소스에 대한 전송량을 기록한 상태이다.
상기 도 5를 참조하면, 210단계에서 리소스 공유 스케줄 제어 장치(100)의 제어기(110)는 유휴(idle) 상태에서 다음 리소스 할당을 원하는 리소스의 타겟 리소스(target resource) 할당을 요청받으면, 타겟 리소스 할당을 수행한다. 이때, 경우에 따라 소스 리소스(source resource)로 타겟 리소스 정보를 출력한다. 이러한 타겟 리소스 할당 과정을 수행한 후 리소스 공유 스케줄 제어 장치(100)는 유휴 상태로 전환한다.
다음으로 220단계에서 리소스가 동작을 마쳐서 상태 변화를 알린 경우, 리소스 공유 스케줄 제어 장치(100)는 해당 리소스가 예약된 경우에는 예약 소스 리소스(resource)로 타겟 리소스(target resource) 정보를 출력하고, 그렇지 않은 경우 리소스 상태만 갱신(동작 off)하는 리소스 상태 갱신을 수행한다. 반면, 리소스가 동작을 시작하여 상태 변화를 알린 경우 즉, 소스 리소스로부터 데이터를 전송 받아 동작을 시작하면, 리소스 공유 스케줄 제어 장치(100)는 상기 리소스 상태 저장부(120)로부터 예약 대기 시간(예약 waiting time)을 대기 시간(waiting timing)으로 초기화하고, 예약 상태를 off로, 동작 상태를 on으로 설정한다.
다음으로 230단계에서 리소스 공유 스케줄 제어 장치(100)는 동작 상태가 on인 리소스의 대기 시간 갱신(waiting time update) 동작을 수행한다.
이와 같은 리소스 공유 스케줄 제어 동작을 보다 구체적으로 설명하기로 한다.
도 6은 본 발명의 실시예에 따라 타겟 리소스 할당 과정을 구체적으로 도시한 도면이다.
상기 도 6을 참조하면, 어떤 모듈이 동작을 마치기 전이라도 다음 단계의 복호화 동작을 위해 리소스 할당을 원하는 경우, 해당 모듈은 할당을 원하는 리소스 종류와 원하는 동작 모드와 함께 리소스 공유 스케줄 제어 장치에 타겟 리소스 할당 요청을 한다. 이에 따라 211단계에서 상기 리소스 공유 스케줄 제어 장치(100)의 제어기(110)는 타겟 리소스 할당 요청을 받아 타겟 리소스를 선택한다. 즉, 상기 리소스 상태 저장부(121)에서 타겟 종류의 리소스 상태를 확인하여 off 상태이거나, on 상태 중 예약 off인 리소스 중 하기 <수학식 1>의 'cost function'을 최소로 하는 리소스를 선택하는 방식으로 타겟 리소스를 선택한다.
Cost function = 전송 예상 시간 + 예상 대기(waiting) 시간
상기 <수학식 1>에서 전송 예상 시간은 상기 리소스간 거리 기록부(123)에 기록된 소스 리소스와 타겟 리소스 거리 값과, 홉(hop) 당 전송 시간의 값과, 상기 전송량 기록부(123)에 기록된 소스 리소스에서 타겟 리소스로 해당 모드에서의 전송량 값을 곱하여 얻을 수 있다. 그리고 상기 대기 시간은 on 상태인 경우 해당 리 소스를 사용하기 위해 예상되는 대기 시간이고, off 상태인 경우 0이다.
그런 다음 212단계에서 제어기(110)는 상기 리소스 상태 저장부(121)에서 상기 선택된 타겟 리소스 정보에 해당하는 영역의 리소스 상태 중 예약 상태를 설정하여 타겟 리소스를 예약한다. 즉, 예약 소스 리소스는 요청한 소스 리소스로 설정하고, 예약 대기 시간(예약 waiting time)은 요청한 동작 모드로 상기 예상 처리 시간 기록부(122)로부터 예상 처리 시간(processing time)을 추출하여 설정한 후, 예약을 on 상태로 설정한다.
이후, 213단계에서 제어기(110)는 상기 리소스 상태 저장부(121)에 설정된 상기 선택된 타겟 리소스 상태가 off 상태인지를 확인한다. 즉, on 상태로 즉시 사용이 불가능한 경우를 제외 즉, off 상태로 즉시 사용이 가능한지를 확인하여 off 상태가 아니면 동작을 종료한다. 만약, off 상태이면 214단계에서 제어기(110)는 요청한 소스 리소스로 타겟 리소스의 정보(address)를 출력한 후 동작을 종료한다.
도 7은 본 발명의 실시예에 따라 상태 갱신 요청에 따른 리소스 상태 갱신 과정을 구체적으로 도시한 도면이다.
어떤 모듈이 동작을 마치거나, 동작을 위한 입력을 모두 인가 받아 동작을 시작하는 시점에서 상태 변화를 알리기 위해 상태 갱신 요청을 하면, 221단계에서 제어기(110)는 요청 종류를 확인하여 갱신 시작을 나타내면 222단계를 수행한다.
222단계에서 제어기(110)는 상기 리소스 상태 저장부(121)에서 예약 상태를 확인하여 예약 대기 시간(waiting time)을 대기시간(waiting time)으로 설정하고, 예약을 off 상태로 설정하여 동작 on 상태로 리소스 상태를 변경한 후 동작을 종료 한다.
반면, 221단계에서 확인한 결과 갱신 시작이 아닌 종료를 나타내는 경우, 223단계에서 제어기(110)는 해당 리소스가 예약이 되어있는 리소스인지를 확인하여 예약이 되어있는 경우 224단계를 수행한다. 이때, 상기 리소스 상태 저장부(121)에서 동작 상태를 off로 변경한다.
224단계에서 제어기(110)는 예약한 소스 리소스로 타겟 리소스의 정보(address)를 출력하도록 명령하여 데이터 전송을 시작할 수 있도록 제어한 후 동작을 종료한다. 반면, 예약이 되어있지 않은 리소스인 경우 제어기(110)는 상기 222단계를 수행하여 리소스 상태를 갱신한다.
상기 220단계에서는 On 상태인 모듈의 동작 완료까지 기다려야 할 시간으로 예상되는 대기 시간(waiting time)을 클럭(clock)에 따라 갱신하고, 상기 대기 시간( waiting time)이 상기 222단계에서 모듈 시작(start) 시 대기 시간(waiting time)이 예측 처리 시간(processing time)으로 인가된 것을 초기값으로 하여 매 클럭(clock) 마다 1씩 감소시킨다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 발명청구의 범위뿐 만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.
도 1은 일반적인 NoC 데이터 전송 방식 기반 시스템의 구조를 도시한 도면,
도 2는 NoC 상호접속(interconnection)으로 구현한 일반적인 다중 복호기 시스템을 도시한 도면,
도 3은 본 발명의 실시예에 따른 NoC 기반 다중 복호기 시스템의 구조를 도시한 도면,
도 4는 본 발명의 실시예에 따른 다중 복호기 시스템의 리소스 공유 스케줄 제어장치의 내부 구조를 도시한 도면,
도 5는 본 발명의 실시예에 따른 리소스 공유 스케줄 제어 장치의 리소스 공유 스케줄 제어를 위한 동작을 도시한 도면,
도 6은 본 발명의 실시예에 따라 타겟 리소스 할당 과정을 구체적으로 도시한 도면,
도 7은 본 발명의 실시예에 따라 상태 갱신 요청에 따른 리소스 상태 갱신 과정을 구체적으로 도시한 도면.

Claims (14)

  1. 다수의 리소스로 이루어진 다중 복호기를 갖는 다중 복호기 시스템에서의 상기 리소스들의 공유 스케줄을 제어하는 리소스 공유 스케줄 장치에 있어서,
    상기 리소스들의 상태 정보 및 상기 리소스들의 공유 스케줄 제어에 필요한 정보들을 저장하는 저장부; 및
    임의의 소스 리소스에서 타겟 리소스 할당을 요청하면, 상기 타겟 리소스를 할당하여 상기 소스 리소스에 상기 타겟 리소스의 정보를 출력하고, 상기 리소스들의 상태를 갱신하는 제어기를 포함하며, 상기 다중 복호기 간의 리소스를 공유하기 위해 상기 리소스들과 양방향으로 연결되어 리소스 공유 스케줄을 제어함을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  2. 제1항에 있어서, 상기 저장부는,
    상기 리소스를 종류별로 구분하여 리소스 상태를 저장하는 리소스 상태 저장부;
    상기 리소스 종류별 예상 처리 시간(processing time)을 기록하는 예상 처리 시간 기록부;
    상기 리소스들을 연결하는 스위치의 홉 수로 상기 리소스 간의 거리를 기록하는 리소스간 거리 기록부; 및
    상기 리소스 종류에 따른 상기 소스(source) 리소스, 상기 타겟(target) 리소스 사이의 전송량을 기록하는 전송량 기록부를 포함하는 것을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  3. 제2항에 있어서,
    상기 제어기는 상기 리소스 상태 저장부에 저장된 상기 리소스 상태를 확인하여 복호 동작 중 최단 기간 사용 가능한 리소스를 선택하고, 선택된 리소스를 예약하여 상기 타겟 리소스로 할당함을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  4. 제3항에 있어서,
    상기 제어기는 상기 리소스 상태가 off 또는 on 상태 중 예약 상태가 off인 경우, 전송 예상 시간과 예상 대기 시간을 합한 시간이 최소인 리소스를 상기 최단 기간 사용 가능한 리소스로 선택함을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  5. 제4항에 있어서,
    상기 전송 예상 시간은 상기 리소스간 거리 기록부에 기록된 상기 리소스 간의 거리, 상기 홉(hop) 당 전송 시간 및 상기 전송량 기록부에 기록된 전송량을 모두 곱하여 구해짐을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  6. 제3항에 있어서,
    상기 제어기는 요청한 상기 소스 리소스를 예약 소스 리소스로 설정하고, 상기 예상 처리 시간 기록부로부터 요청한 동작 모드의 예상 처리 시간을 추출하여 추출된 예상 처리 시간을 예약 대기 시간으로 설정하고, 예약 상태를 on으로 설정하여 상기 리소스 상태 저장부의 리소스 상태 영역을 설정함으로써 상기 선택된 리소스를 예약함을 특징으로 하는 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치.
  7. 다수의 리소스로 이루어진 다중 복호기 및 상기 리소스들의 공유 스케줄을 제어하는 리소스 공유 스케줄 장치를 갖는 다중 동영상 복호 시스템에서, 상기 리소스 공유 스케줄 제어 장치가 리소스 공유 스케줄을 제어하기 위한 방법에 있어서,
    저장부에 저장된 리소스 별, 동작 모드별 리소스 상태 및 리소스 공유 스케 줄 제어를 위한 정보들을 초기화하는 과정과;
    임의의 소스 리소스로부터 공유하기 위한 타겟 리소스 할당을 요청받으면, 상기 타겟 리소스를 할당하는 과정; 및
    상기 소스 리소스로부터 상태 갱신 요청을 받으면, 상기 저장부에 저장된 리소스 상태를 갱신하는 과정을 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  8. 제7항에 있어서, 상기 리소스 상태 및 리소스 공유 스케줄 제어를 위한 정보들을 초기화하는 과정은,
    상기 저장부의 모든 리소스 종류 및 상기 모든 리소스 상태 영역의 동작 상태를 off로 설정하고, 예약 영역의 예약 상태를 off로 설정하는 단계;
    상기 리소스들의 동작 상태를 특정하여 상기 모든 리소스 종류별, 동작 모드별 동작 사이클을 측정하여 처리 시간을 기록하는 단계;
    상기 모든 리소스 간의 홉 수를 기록하는 단계; 및
    상기 모든 리소스 종류별, 동작 모드별 소스 리소스와 타겟 리소스 사이의 전송량을 기록하는 단계를 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  9. 제7항에 있어서, 상기 타겟 리소스를 할당하는 과정은,
    상기 소스 리소스로부터 상기 타겟 리소스 할당을 요청받는 단계;
    상기 저장부에 저장된 리소스 상태를 확인하여 복호 동작 중 최단 기간 사용 가능한 리소스를 선택하는 단계;
    상기 선택된 리소스를 예약하는 단계; 및
    상기 예약한 리소스를 상기 타겟 리소스로 할당하는 단계를 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  10. 제9항에 있어서, 상기 타겟 리소스를 할당하는 과정은,
    상기 타겟 리소스의 리소스 상태가 즉시 사용이 가능한 상태인 경우 상기 소스 리소스에 상기 타겟 리소스에 대한 정보를 출력하는 단계를 더 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  11. 제9항에 있어서,
    상기 복호 동작 중 최단 기간 사용 가능한 리소스를 선택하는 단계는, 상기 예약 상태가 off인 경우 전송 예상 시간과 예상 대기 시간을 합한 시간이 최소인 리소스를 상기 최단 기간 사용 가능한 리소스로 선택함을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  12. 제11항에 있어서,
    상기 전송 예상 시간은 상기 저장부에 기록된 리소스 간의 홉 수, 상기 홉(hop) 당 전송 시간 및 상기 기록된 소스 리소스와 타겟 리소스 사이의 전송량을 모두 곱하여 구해짐을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  13. 제9항에 있어서, 상기 선택된 리소스를 예약하는 단계는,
    요청한 상기 소스 리소스를 예약 소스 리소스로 설정하는 단계;
    요청한 동작 모드의 예상 처리 시간을 상기 저장부에서 추출하여 추출된 예상 처리 시간을 예약 대기 시간으로 설정하는 단계; 및
    상기 저장부의 예약 영역의 예약 상태를 on으로 설정하는 단계를 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
  14. 제7항에 있어서, 상기 저장부에 저장된 리소스 상태를 갱신하는 과정은,
    상기 소스 리소스의 상태가 시작을 알리는 경우, 상기 저장부에 저장된 상기 리소스 상태 갱신하는 단계;
    상기 소스 리소스의 상태가 종료를 알리는 경우, 상기 소스 리소스가 예약된 리소스인지 확인하는 단계;
    상기 소스 리소스가 예약된 리소스인 경우, 상기 소스 리소스로 상기 타겟 리소스에 대한 정보를 출력하는 단계; 및
    상기 소스 리소스가 예약된 리소스가 아닌 경우, 상기 저장부에 저장된 상기 리소스 상태 갱신하는 단계를 포함하는 것을 특징으로 하는 리소스 공유 스케줄 제어 장치에서의 리소스 공유 스케줄 제어 방법.
KR1020070132319A 2007-12-17 2007-12-17 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법 KR100948597B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070132319A KR100948597B1 (ko) 2007-12-17 2007-12-17 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법
US12/239,508 US20090158285A1 (en) 2007-12-17 2008-09-26 Apparatus and method for controlling resource sharing schedule in multi-decoding system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070132319A KR100948597B1 (ko) 2007-12-17 2007-12-17 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법

Publications (2)

Publication Number Publication Date
KR20090064934A KR20090064934A (ko) 2009-06-22
KR100948597B1 true KR100948597B1 (ko) 2010-03-24

Family

ID=40755030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070132319A KR100948597B1 (ko) 2007-12-17 2007-12-17 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법

Country Status (2)

Country Link
US (1) US20090158285A1 (ko)
KR (1) KR100948597B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100223396A1 (en) * 2009-02-27 2010-09-02 Yahoo! Inc. Intelligent status polling
WO2011001209A1 (en) * 2009-06-29 2011-01-06 Nokia Corporation Resource allocation in a computing device
CN104298561A (zh) * 2014-09-28 2015-01-21 浪潮(北京)电子信息产业有限公司 一种资源分配方法和装置
KR102423416B1 (ko) 2017-12-12 2022-07-22 한국전자통신연구원 서버리스 환경에서의 펑션 장기 실행 제공 장치 및 방법
EP3731089B1 (en) * 2017-12-28 2023-10-04 Cambricon Technologies Corporation Limited Scheduling method and related apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704362B2 (en) 2001-07-06 2004-03-09 Koninklijke Philips Electronics N.V. Resource scalable decoding

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623404A (en) * 1994-03-18 1997-04-22 Minnesota Mining And Manufacturing Company System and method for producing schedules of resource requests having uncertain durations
US5826082A (en) * 1996-07-01 1998-10-20 Sun Microsystems, Inc. Method for reserving resources
US6717988B2 (en) * 2001-01-11 2004-04-06 Koninklijke Philips Electronics N.V. Scalable MPEG-2 decoder
JP2003029989A (ja) * 2001-07-16 2003-01-31 Matsushita Electric Ind Co Ltd 分散処理システムおよびジョブ分散処理方法
US7430652B2 (en) * 2003-03-28 2008-09-30 Tarari, Inc. Devices for performing multiple independent hardware acceleration operations and methods for performing same
FR2873830B1 (fr) * 2004-07-30 2008-02-22 Commissariat Energie Atomique Procede d'ordonnancement de traitement de taches et dispositif pour mettre en oeuvre le procede
FR2875982B1 (fr) * 2004-09-28 2006-12-22 Commissariat Energie Atomique Architecture de communication semi-automatique noc pour applications "flots de donnees"
US7565161B2 (en) * 2005-12-23 2009-07-21 Alcatel-Lucent Usa Inc. Method and system for wireless priority call processing
US9870267B2 (en) * 2006-03-22 2018-01-16 Intel Corporation Virtual vector processing
US8185422B2 (en) * 2006-07-31 2012-05-22 Accenture Global Services Limited Work allocation model
KR100817022B1 (ko) * 2006-11-15 2008-03-26 한국전자통신연구원 스타-메쉬 혼합형 구조를 갖는 온칩 네트워크 기반의동영상 디코더
US20080168130A1 (en) * 2007-01-09 2008-07-10 Wen-Tzer Thomas Chen Method and system for determining whether to send a synchronous or asynchronous resource request
DE102009016742B4 (de) * 2009-04-09 2011-03-10 Technische Universität Braunschweig Carolo-Wilhelmina Mehrprozessor-Computersystem

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704362B2 (en) 2001-07-06 2004-03-09 Koninklijke Philips Electronics N.V. Resource scalable decoding

Also Published As

Publication number Publication date
US20090158285A1 (en) 2009-06-18
KR20090064934A (ko) 2009-06-22

Similar Documents

Publication Publication Date Title
US7802040B2 (en) Arbitration method reordering transactions to ensure quality of service specified by each transaction
WO2012120769A1 (ja) 中継装置、中継装置の制御方法、およびプログラム
JP4880802B1 (ja) 中継装置
US5938734A (en) Real time stream server for handling a plurality of real time stream data with different data rates
JP4808513B2 (ja) システムオンチップの大域的非同期通信アーキテクチャ
US6119196A (en) System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
KR100948597B1 (ko) 다중 복호기 시스템에서의 리소스 공유 스케줄 제어 장치및 그 장치에서의 리소스 공유 스케줄 제어 방법
US20180131979A1 (en) Architecture and method for high performance on demand video transcoding
JP2008500627A (ja) 信号処理装置
JP2008536391A (ja) 待ち時間の削減のためのネットワークオンチップ環境及び方法
JP5769093B2 (ja) ダイレクトメモリアクセスコントローラ、その方法およびコンピュータプログラム
JP2015187874A (ja) トランザクションの優先レベルを設定するデータ処理装置および方法
JPWO2012132264A1 (ja) 中継器、中継器の制御方法、およびプログラム
US7352741B2 (en) Method and apparatus for speculative arbitration
US7020161B1 (en) Prescheduling arbitrated resources
EP1439467B1 (en) System and method for allocating a plurality of sources to a plurality of channels
JP2009267837A (ja) 復号化装置
Hansson et al. Channel trees: Reducing latency by sharing time slots in time-multiplexed networks on chip
JP2001216279A (ja) リアルタイム・システム用時分割多重メモリーを用いた、複数のプロセッサーのインターフェース及び、同期化及びアービトレーション方法
KR20190074823A (ko) 서비스품질 제어를 위한 선입선출 버퍼 시스템
KR20080074545A (ko) 버스 시스템 및 그 제어 방법
JP4198421B2 (ja) データルーティング処理装置
JP3893625B2 (ja) 信号処理装置及び信号処理装置におけるプロセッサ間の接続を計画する方法
US20040243770A1 (en) Data transfer system
US20090167947A1 (en) Video data processor and data bus management method thereof

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
LAPS Lapse due to unpaid annual fee