KR102453652B1 - 화상 처리 장치 및 반도체 장치 - Google Patents

화상 처리 장치 및 반도체 장치 Download PDF

Info

Publication number
KR102453652B1
KR102453652B1 KR1020160010035A KR20160010035A KR102453652B1 KR 102453652 B1 KR102453652 B1 KR 102453652B1 KR 1020160010035 A KR1020160010035 A KR 1020160010035A KR 20160010035 A KR20160010035 A KR 20160010035A KR 102453652 B1 KR102453652 B1 KR 102453652B1
Authority
KR
South Korea
Prior art keywords
cache
control unit
processing unit
decoding
moving picture
Prior art date
Application number
KR1020160010035A
Other languages
English (en)
Other versions
KR20160094308A (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 KR20160094308A publication Critical patent/KR20160094308A/ko
Application granted granted Critical
Publication of KR102453652B1 publication Critical patent/KR102453652B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Abstract

스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 접속되는 캐시 메모리를 구비하는 화상 처리 장치에 있어서, 캐시 메모리의 사용 효율을 향상시킨다.
화상 처리 장치에 있어서, 동화상 복호 처리부가 입력된 스트림으로부터 복호할 대상의 화상의 특징량을 추출하고, 그 특징량에 기초하여 외부 메모리로부터 캐시 메모리로의 캐시 필의 리드 사이즈를 변경한다. 특징량이란, 예를 들어 1픽처(프레임, 필드 등) 내의 인트라 매크로 블록의 비율이나, 움직임 벡터의 변동이다. 인트라 매크로 블록의 비율이 높을 때에는, 캐시 필의 리드 사이즈를 작게 한다.

Description

화상 처리 장치 및 반도체 장치{IMAGE PROCESSING DEVICE AND SEMICONDUCTOR DEVICE}
본 발명은 화상 처리 장치 및 반도체 장치에 관한 것으로서, 특히 레퍼런스 화상을 일시적으로 유지하는 캐시 메모리를 구비하는 동화상 복호 처리에 적절하게 이용할 수 있는 것이다.
동화상을 취급하는 시스템은, 4K나 슈퍼 하이비전 등의 대형 화면화가 진행되고 있다. 이들 대량의 신호를 다루는 동화상 복호 장치는, 복호한 픽처(프로그레시브 스캔의 경우의 프레임, 인터레이스 스캔의 경우의 필드 등의 화면을 가리킨다)의 화상 데이터를 유지하기 위해서, 대용량의 메모리를 구비한다. 동화상의 복호 처리에 있어서의 움직임 예측, 움직임 보상 등의 처리에서는, 복호 대상의 픽처의 전 또는 후의 픽처 화상 데이터를, 레퍼런스 화상으로서 참조하기 위해서, 메모리 액세스를 위하여 높은 대역폭이 필요하게 되는데, 그것에 수반하여, 소비 전력이나 고성능화하기 위한 비용이 커진다. 그로 인해, 대역폭을 삭감하는 기술이 필요하게 되었고, 이후 더욱 고해상도화될 동화상의 복호 처리를 행함에 있어서, 캐시 메모리 등을 사용한 대역폭을 삭감하는 기술이 중요하다.
특허문헌 1에는, 범용 프로세서 상의 소프트웨어로 실행되는 MPEG(Motion Picture Element Group) 비디오 신장 처리에 포함되는 움직임 보상 처리에 있어서, 데이터 캐시 미스를 경감하는 기술이 개시되어 있다. 어떤 매크로 블록의 움직임 보상 처리에서 움직임 벡터가 가리키는 참조 영역의 우측에 인접하는 영역의 어드레스를 데이터 캐시 컨트롤러에 부여하여 프리로드 명령을 발행하고, 이 영역의 데이터를 주기억으로부터 데이터 캐시에 프리로드한다. 여기서, 매크로 블록이란 복호 처리의 대상인, 복수의 화소를 포함하는 단위 영역(예를 들어 16화소×16화소의 영역)이며, 1픽처에는 복수의 매크로 블록이 행방향과 열방향의 2차원으로 배열되어 있다. 복호 처리는, 픽처의 좌측 상단의 매크로 블록으로부터 순차 우측의 매크로 블록을 대상으로 하여 실행되고, 또한 순차 아래의 행의 매크로 블록을 좌측으로부터 우측으로 순서대로 복호 대상으로 하여 실행된다. 어떤 매크로 블록의 움직임 보상 처리에서 움직임 벡터가 가리키는 참조 영역의 우측에 인접하는 영역은, 다음으로 복호 처리가 실행되는 매크로 블록의 움직임 보상 처리에서도 움직임 벡터가 가리키는 참조 영역이 되어 있을 확률이 높기 때문에, 그 영역의 화상 데이터를 프리로드해 둠으로써, 데이터 캐시 미스를 경감할 수 있게 된다.
특허문헌 2에는, 화상 데이터를 기억하는 캐시 메모리에 있어서, 캐시 히트율을 향상시키는 기술이 개시되어 있다. 인터레이스 화상의 톱 필드와 보텀 필드의 데이터가, 각 캐시 라인 내에서 혼재하지 않도록 구성한다. 필드 구조의 인터레이스 화상의 경우, 톱 필드와 보텀 필드에 대한 복호화 처리는 따로따로 실행되기 때문에, 캐시 라인 내에 2개의 필드 데이터가 혼재하고 있으면, 어느 한쪽의 필드 데이터만이 필요한 경우에도, 캐시 내에는 양쪽의 필드 데이터가 읽어들여지게 되어, 캐시 효율을 저하시켜버린다. 각 캐시 라인 내에는, 톱 필드와 보텀 필드 중 어느 한쪽만이 기억되어 있으므로, 캐시 효율은 저하되지 않게 된다. 또한, 동화상 부호화의 표준 규격의 하나인 H.264에 있어서의 MBAFF(MacroBlock-Adaptive Frame/Field) 등, 처리 단위의 화소 영역의 변경에 따라, 캐시의 웨이수와 그 엔트리수가 변경된다. 화상 데이터에의 액세스 입도가 높은 경우에는 웨이수를 저감시켜서 화상의 넓은 범위의 데이터를 캐시 내에 남기고, 액세스 입도가 낮은 경우에는, 웨이수를 증가시켜서 화상의 좁은 범위의 데이터를 교체함으로써, 캐시 메모리를 효율적으로 이용하여, 캐시 히트율의 향상을 도모하고 있다.
일본 특허 공개 평11-215509호 공보 일본 특허 공개 제2010-146205호 공보
특허문헌 1 및 2에 대하여 본 발명자가 검토한 결과, 이하와 같은 새로운 과제가 있는 것을 알았다.
특허문헌 1에 개시되는 기술에 의하면, 순차 복호 처리의 대상이 되는 매크로 블록이, 동일한 방향 또한 동일한 크기의 움직임 벡터에 의한 움직임 보상 처리를 실행하면, 데이터 캐시 미스를 경감한다는 효과는 최대화된다. 그러나, 발명자가 검토한 결과, 복호 대상의 스트림 특성에 따라서는, 데이터 캐시 메모리에 프리로드한 데이터가 참조되지 않는 경우가 있는 것을 알았다. 스트림은 1픽처마다 인터 매크로 블록과 인트라 매크로 블록을 포함하는 경우가 있다. 인터 매크로 블록은, 스트림에 포함되는 움직임 벡터가 가리키는 레퍼런스 화상을 참조하는, 움직임 보상을 수반하는 복호 처리가 행하여지는 매크로 블록이다. 한편, 인트라 매크로 블록은, 움직임 보상을 수반하지 않고, 복호 대상의 픽처 내의 복호 완료 화상 데이터를 참조하여 복호 처리가 행하여지는 매크로 블록이다. 스트림을 생성하는 부호화 처리에서는, 매크로 블록마다, 움직임 보상을 행하여 인터 예측을 행할지, 움직임 보상을 행하지 않고 인트라 예측을 행할지를, 적절하게 전환함으로써, 부호화 효율의 향상을 도모할 경우가 있다. 이러한 경우에는, 스트림은 1픽처마다 인터 매크로 블록과 인트라 매크로 블록을 포함하게 된다. 복호 대상의 매크로 블록이 인터 매크로 블록이며, 그 움직임 벡터가 참조하는 참조 영역의 화상 데이터를 데이터 캐시 메모리에 읽어들인 후에, 상기와 같이 반드시 그 우측에 인접하는 영역의 어드레스를 데이터 캐시 컨트롤러에 부여하여 프리로드를 행해도, 다음으로 복호 대상이 되는 매크로 블록이 반드시 그 프리로드된 화상 데이터를 참조한다고는 할 수 없다. 다음으로 복호 대상이 되는 매크로 블록이 인트라 매크로 블록인 경우에는, 애당초 움직임 보상이 행하여지지 않으므로 애당초 참조 영역을 필요로 하지 않고, 데이터 캐시 메모리는 액세스되지 않으므로, 프리로드된 화상 데이터는 쓸모없게 될 가능성이 높다. 또한, 다음으로 복호 대상이 되는 매크로 블록이 인터 매크로 블록이어도, 움직임 벡터의 방향 또는 크기가 전의 매크로 블록의 움직임 벡터와 크게 상이한 경우에는, 전의 매크로 블록의 참조 영역과는 상이한 영역이 참조되어, 프리로드된 화상 데이터가 쓸모없게 될 가능성이 높은 것을 알았다.
특허문헌 2에 개시되는 기술을 채용해도, 인터레이스 처리 시의 톱, 보텀 또는 처리 단위의 화소 영역의 변경 등, 픽처 단위의 고정적인 정보를 기초로 하여, 캐시 구성(웨이수와 엔트리수)을 변경하는 것에 지나지 않기 때문에, 픽처마다 변화하는 스트림의 특징의 변동에는 대응할 수 없어, 캐시 효율의 향상은 되지 않는다. 예를 들어 인트라 매크로 블록이 많은 프레임의 경우, 캐시 필에 의해 캐시 메모리에 읽어들여진 데이터가 사용되지 않는, 재이용성의 저하가 발생하여, 캐시 필이 쓸모없는 데이터 리드를 많이 발생시키게 되는 것을 알았다.
이상과 같이, 스트림의 특징에 상관없이 일률적으로 프리로드를 실행하면, 프리로드한 데이터가 참조되지 않는 경우가 있고, 그만큼, 데이터 캐시 메모리에 캐시 필하기 위하여 데이터 리드에 의해 버스의 대역을 불필요하게 사용하게 되는 것을 알았다. 이 불필요한 데이터 리드에 의해 소비 전력의 증가를 초래한다. 또한, 특허문헌 1에 개시되는 범용 프로세서와 같이, 버스가 다른 기능 모듈과 공용되는 경우에는, 상기 불필요한 데이터 리드가, 다른 모듈을 위한 대역을 압박하기 때문에, 시스템 전체로서의 성능 열화를 초래할 우려가 있는 것을 알았다. 또한, 특허문헌 2에 개시된 바와 같이, 픽처 단위의 고정적인 정보를 기초로 하여, 캐시 구성(웨이수와 엔트리수)을 변경해도, 픽처마다에 변화하는 스트림의 특징의 변동에는 대응할 수 없어, 캐시 효율의 향상에는 불충분한 것을 알았다.
이러한 과제를 해결하기 위한 수단을 이하에 설명하지만, 기타의 과제와 신규 특징은, 본 명세서의 기술 및 첨부 도면으로부터 밝혀질 것이다.
일 실시 형태에 의하면, 하기와 같다.
즉, 스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 접속되는 캐시 메모리를 구비하는 화상 처리 장치에 있어서, 동화상 복호 처리부가 입력된 스트림으로부터 복호할 대상의 화상의 특징량을 추출하고, 그 특징량에 기초하여 외부 메모리로부터 캐시 메모리로의 캐시 필의 리드 사이즈를 변경한다.
상기 일 실시 형태에 의해 얻어지는 효과를 간단하게 설명하면 하기와 같다.
즉, 동화상 복호 처리부가 외부 메모리에 저장되는 레퍼런스 화상을, 캐시 메모리를 통하여 읽어들일 때에, 캐시 메모리에의 불필요한 캐시 필을 저감할 수 있어, 캐시 메모리의 사용 효율을 향상시킬 수 있다.
도 1은 실시 형태 1의 동화상 복호 장치의 구성예를 도시하는 블록도이다.
도 2는 인트라 매크로 블록의 비율이 낮은 경우의 캐시 메모리 구성예를 도시하는 설명도이다.
도 3은 인트라 매크로 블록의 비율이 높은 경우의 캐시 메모리 구성예를 도시하는 설명도이다.
도 4는 어드레스 제어부에 있어서의 어드레스 변환 처리의 설명도이다.
도 5는 실시 형태 2의 동화상 복호 장치의 구성예를 도시하는 블록도이다.
도 6은 실시 형태 2의 어드레스 제어부에 있어서의 어드레스 변환 처리의 설명도이다.
도 7은 움직임 벡터 분산 산출 처리의 일례를 도시하는 설명도이다.
도 8은 실시 형태 3의 동화상 복호 장치의 구성예를 도시하는 블록도이다.
도 9는 실시 형태 4의 동화상 처리 장치의 구성예를 도시하는 블록도이다.
도 10은 실시 형태 5의 동화상 복호 장치의 구성예를 도시하는 블록도이다.
도 11은 동화상 복호 장치를 탑재하는 LSI(Large Scale Integration circuit)의 구성예를 도시하는 블록도이다.
실시 형태에 대하여 상세하게 설명한다.
〔실시 형태 1〕 <인트라 매크로 블록의 비율에 기초하는 캐시 구성의 변경>
도 1은, 실시 형태 1의 동화상 복호 장치의 구성예를 도시하는 블록도이다. 동화상 복호 장치(1)는 동화상 복호 처리부(4), 캐시 메모리(2), 캐시 제어부(3), 어드레스 제어부(5), 태그 비교 제어부(6), 리드 커맨드 제어부(7), 캐시 라인 제어부(8), 및 인트라 매크로 블록 비율 산출부(11)를 포함하여 구성된다. 동화상 복호 처리부(4)는 스트림(91)을 읽어들이고, 이에 대하여 동화상의 복호 처리를 행한다. 도시되는, 기능 블록 간을 접속하는 화살표는, 단수 또는 복수의 배선에 의해 실장되는 신호의 흐름을 나타내고 있고, 복수의 배선을 나타내는 버스 표기는 채용하고 있지 않다. 이 점은 본원에 있어서의 다른 블록도에 대해서도 마찬가지이다.
특별히 제한되지 않지만, 예를 들어, 동화상은 H.264 등의 표준에 준하여 부호화되어 있고, 스트림(91)은 부호화 처리에 의해 생성된 바이너리 코드와, 그 부호화 처리에 사용된 부호화 정보(92)를 포함한다. 동화상은, 시계열의 픽처(프로그레시브 스캔의 경우의 프레임, 인터레이스 스캔의 경우의 필드 등의 화면을 가리킨다)를 포함한다. 각 픽처는 행방향과 열방향의 2차원으로 배열된 복수의 매크로 블록을 포함한다. 매크로 블록이란, 부호화 처리 및 복호 처리의 단위로서, 예를 들어 16화소×16화소의 영역을 포함한다. 동화상의 부호화 처리에는, 인트라 예측과 인터 예측이 사용된다. 인트라 예측이란, 부호화 대상의 매크로 블록이 배치되어 있는 것과 동일한 픽처 내의 화상 데이터를 참조하는 예측 부호화이며, 인터 예측이란, 부호화 대상의 매크로 블록이 배치되어 있는 것과는 상이한 픽처의 화상 데이터를 참조하는 예측 부호화이다. 인트라 예측을 사용할지 인터 예측을 사용할지의 선택은, 매크로 블록마다 행해지고, 어느 쪽이 사용되었는지를 나타내는 정보(93)는 스트림(91) 내의 부호화 정보(92)에 포함된다. 인터 예측을 사용한 경우에는, 부호화 처리에 있어서 움직임 벡터(MV: Motion Vector)가 구해지고, 구해진 움직임 벡터의 정보(MV 정보)(94)도, 아울러 부호화 정보(92)에 포함된다. 동화상의 부호화 처리에는, 추가로 양자화 처리나 가변 길이 부호화 처리가 포함되어도 되고, 이때, 부호화 정보(92)에는, 양자화 파라미터나 가변 길이 부호의 부호 길이 정보 등이 포함된다.
동화상 복호 처리부(4)는 읽어들인 스트림(91)에 대하여 복호 처리를 행하고, 복호된 화상을 외부 메모리(60)(도시하지 않음)로 출력한다. 복호 대상의 매크로 블록이, 인터 예측을 사용하여 부호화된 매크로 블록(인터 매크로 블록이라 칭한다)일 때에는, 동화상 복호 처리부(4)는 이미 복호되어 출력된 화상의 일부를, 그 복호 처리에 있어서 레퍼런스 화상(95)으로서 외부 메모리(60)로부터 캐시 메모리(2)에 읽어들여서 참조한다. 참조해야 할 레퍼런스 화상(95)이 저장되어 있는 어드레스는, 동화상 복호 처리부(4)로부터 어드레스 제어부(5)를 통하여 요구 어드레스로서 태그 비교 제어부(6)에 공급되고 있다. 태그 비교 제어부(6)는 태그 메모리(도시하지 않음)를 포함하고, 요구 어드레스와 태그 메모리에 유지되어 있는 태그 데이터의 비교를 행하여, 캐시 히트인지 캐시 미스인지의 판정을 행한다. 판정 결과는 리드 커맨드 제어부(7)와 캐시 제어부(3)에 공급된다. 캐시 히트인 경우, 캐시 제어부(3)는 요구 어드레스에 대응하는 데이터를 캐시 메모리(2)로부터 판독하여 동화상 복호 처리부(4)에 공급한다. 캐시 미스인 경우, 캐시 제어부(3)는 리드 커맨드 제어부(7)에 의해 지정되는 리드 사이즈의 데이터를, 캐시 메모리(2)에 캐시 필한다.
인트라 매크로 블록 비율 산출부(11)에는, 동화상 복호 처리부(4)로부터, 인트라/인터 매크로 블록 정보(93)가 공급된다. 인트라/인터 매크로 블록 정보(93)는 입력된 스트림(91) 내의 부호화 정보(92)에 포함되고, 그 매크로 블록의 부호화 처리에 있어서, 인트라 예측과 인터 예측 중에서 어느 쪽이 사용되었는지를 나타내는 정보이다. 인트라 매크로 블록 비율 산출부(11)는 인트라 매크로 블록 비율(97)을 산출하여 캐시 라인 제어부(8)에 공급한다. 캐시 라인 제어부(8)는 인트라 매크로 블록 비율(97)에 기초하여, 어드레스 제어부(5)에 있어서의 어드레스 제어, 태그 비교 제어부(6)에 있어서의 태그 메모리의 구성과 태그 사이즈, 엔트리 사이즈의 제어, 및 리드 커맨드 제어부(7)와 캐시 제어부(3)에 있어서의 라인 사이즈와 캐시 필 시의 리드 사이즈를 제어한다.
실시 형태 1의 동화상 복호 장치(1)의 동작에 대하여 설명한다. 동화상 복호 처리부(4)는 입력된 스트림(91)에 대한 복호 처리의 과정에서 얻어진 인트라/인터 매크로 블록 정보(93)를 인트라 매크로 블록 비율 산출부(11)로 출력한다. 인트라 매크로 블록 비율 산출부(11)는 인트라/인터 매크로 블록 정보(93)에 기초하여, 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율(97)을 산출한다. 캐시 라인 제어부(8)는 인트라 매크로 블록 비율 산출부(11)로부터 공급되는, 인트라 매크로 블록의 비율(97)에 따라, 인터 예측 시에 참조하는, 레퍼런스 화상을 저장하는 캐시 메모리(2)의 캐시 라인 사이즈와 엔트리수를 변경한다.
도 2와 도 3은, 캐시 메모리의 구성예를 도시하는 설명도이며, 도 2는 인트라 매크로 블록의 비율(97)이 낮은 경우의 예, 도 3은 높은 경우의 예이다. 각각, 4개의 SRAM(Static Random Access Memory)인 SRAM0 내지 SRAM4를 사용하여 캐시 메모리(2)를 구성하는 예이다. 인트라 매크로 블록의 비율(97)이 낮은 경우에는, 도 2에 도시된 바와 같이, SRAM0 내지 SRAM4를 병렬로 액세스할 수 있도록 구성하고, 캐시 라인 사이즈를 크게, 엔트리수를 적게 한다. 한편, 인트라 매크로 블록의 비율(97)이 높은 경우에는, 도 3에 도시된 바와 같이, SRAM0 내지 SRAM4를 개별로 액세스할 수 있도록 구성하고, 캐시 라인 사이즈를 작게, 엔트리수를 많게 한다.
어드레스 제어부(5)는 캐시 라인 제어부(8)로부터 지정되는 캐시 라인 사이즈와 엔트리수에 따라, 동화상 복호 처리부(4)로부터 요구되는 레퍼런스 화상의 어드레스를 변환한다. 동화상 복호 처리부(4)는 예를 들어, 참조하는 레퍼런스 화상이 저장되는 어드레스를 지정한 리드 커맨드를 발행한다.
도 4는, 어드레스 제어부(5)에 있어서의 어드레스 변환 처리의 설명도이다.
어드레스 제어부(5)는 인트라 블록의 비율이 적은 경우, 상단에 도시된 바와 같이, 동화상 복호 처리부(4)로부터 입력되는 레퍼런스 화상 리드 커맨드의 어드레스를, 상위 비트로부터, 프레임 어드레스(401)와, 엔트리 어드레스(402)와, 워드 어드레스(403)로 분할한다. 프레임 어드레스(401)는 태그와의 비교에서 사용된다. 엔트리 어드레스(402)는 캐시 메모리(2) 중의 캐시 라인의 선택에 사용된다. 워드 어드레스(403)는, 캐시 라인 중의 데이터의 선택에 사용된다.
인트라 매크로 블록의 비율이 많은 경우, 하단에 도시된 바와 같이, 어드레스 제어부(5)에서의 리드 어드레스의 분할을, 404, 405, 406과 같이 변경한다. 인트라 매크로 블록의 비율이 적은 경우에 비해, 워드 어드레스(406)를 좁게, 엔트리 어드레스(405)를 넓게 한다.
태그 비교 제어부(6)는 도 1에는 도시가 생략되어 있지만 태그 메모리를 포함하여 구성되고, 어드레스 제어부(5)로부터 레퍼런스 화상 리드 커맨드에 의해 리드를 요구하는 요구 어드레스와, 태그 메모리에 유지되는 태그 데이터를 비교하여 캐시 히트인지 캐시 미스인지의 판정을 행한다. 이때, 태그 비교 제어부(6)는 캐시 라인 제어부(8)로부터 지시되는 엔트리수에 따라, 태그 메모리의 구성을 절환함과 함께, 어드레스 제어부(5)로부터 입력되는 프레임 어드레스(401, 403)와, 엔트리 어드레스(402, 404)로 선택한 태그와의 비교를 행하고, 캐시에 히트했는지 미스했는지를 판정한다.
태그 비교 제어부(6)에서 캐시 미스라고 판정된 경우, 리드 커맨드 제어부(7)는 캐시 라인 제어부(8)로부터 지정되는 캐시 라인 사이즈에 따라 캐시 메모리(2)에 리드하는 데이터 사이즈를 결정하고, 리드 커맨드를 생성한다.
캐시 제어부(3)는 캐시 라인 제어부(8)로부터 지정되는 엔트리수에 따라서 캐시의 구성을 도 2, 도 3과 같이 제어하고, 태그 비교 제어부(6)로부터 출력된 엔트리 어드레스와 워드 어드레스가 나타내는 데이터를 캐시 메모리로부터 판독하고, 동화상 복호 처리부(4)에 전송한다.
캐시 미스인 경우, 리드 커맨드 제어부(7)에서 생성된 리드 커맨드를 외부 메모리에 발행하고, 레퍼런스 화상(95)의 리드 처리를 행한다.
이상과 같이, 인트라 매크로 블록의 비율(97)이 높은 경우에는, 캐시 라인 사이즈를 작게 함으로써, 캐시 미스 시에 리드하는 참조되지 않는 불필요한 레퍼런스 화상의 데이터 전송량을 적게 할 수 있어, 소비 전력을 삭감하고, 시스템 성능을 향상시킬 수 있다. 한편, 인트라 매크로 블록의 비율(97)이 적은 경우에는, 캐시 라인 사이즈를 크게 함으로써, 장래 참조될 확률이 높고, 재이용율이 높은 레퍼런스 화상(95)을 미리 캐시(2)에 프리로드할 수 있어, 캐시 메모리의 사용 효율을 향상시킬 수 있다.
인트라 예측을 행하는 매크로 블록이 차지하는 비율이 높은 픽처에서는, 동화상 복호 처리부가 레퍼런스 화상에 액세스하는 빈도가 낮기 때문에, 캐시 메모리의 라인 사이즈를 작게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 미스가 될 가능성이 높은, 불필요한 캐시 필을 억제할 수 있다. 또한, 이때, 캐시 메모리는, 많은 엔트리를 캐시할 수 있도록 구성되므로, 픽처 전체에서의 히트율은 향상된다. 한편, 인트라 예측을 행하는 매크로 블록이 차지하는 비율이 낮은 픽처에서는, 동화상 복호 처리부가 레퍼런스 화상에 액세스하는 빈도가 높기 때문에, 캐시 메모리의 라인 사이즈를 크게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 메모리의 히트율을 향상시킬 수 있다.
여기서, 본 실시 형태 1에서는, 인트라 매크로 블록 비율(97)을 픽처마다 산출하고, 그것에 수반하여 픽처마다 캐시 메모리(2)와 태그 메모리를 포함하는 태그 비교 제어부(6)의 구성을 변경함으로써, 캐시의 구성을 변경하는 예를 나타냈지만, 제어의 단위는 픽처 단위에 한정되지 않는다. 예를 들어, 복수의 픽처에 걸쳐서 인트라 매크로 블록의 비율을 추출하고, 그 크기가 현저하게 변화하는 경우에, 캐시의 구성을 변경하도록 구성할 수 있다. 이에 의해, 캐시의 구성이 변경되는 빈도가 저감되어, 민감한 반응을 억제할 수 있다. 한편, 1픽처를 복수의 영역으로 분할하고, 그 영역마다 인트라 매크로 블록의 비율을 추출하고, 그 영역마다 캐시의 구성을 변경하도록 구성할 수 있다. 이에 의해, 캐시의 구성이 복호 대상의 화상 영역 마다의 특징에 따라서 세밀하게 적응적으로 변경되어, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다. 예를 들어, 고정된 배경 내를 물체가 랜덤하게 움직이고 있는 화상을 복호하는 경우에는, 배경은 픽처 간의 상관이 높기 때문에, 인터 예측이 채용되고, 물체가 움직이는 영역에는 픽처 간의 상관은 낮기 때문에 인트라 예측이 채용되는 경향이 있다고 생각된다. 이러한 경우에, 영역마다 캐시의 구성이 최적화되기 때문에, 인트라 예측이 많이 채용된다고 생각되는, 물체가 움직이는 영역에서는, 캐시의 라인 사이즈는 작게 되어, 불필요한 캐시 필의 발생이 억제되고, 한편, 인터 예측이 많이 채용된다고 생각되는, 배경 영역에서는, 캐시의 라인 사이즈는 크게 되어, 히트율의 향상이 기대된다.
본 실시 형태 1에서는 도 2와 도 3을 인용하여, 캐시 메모리(2)를 4개의 SRAM을 포함하는 예를 나타냈지만, 이것은 일례에 지나지 않고, SRAM의 개수를 포함하여 캐시 메모리(2)의 구성, 및 태그 비교 제어부(6)의 구성은 임의이다.
〔실시 형태 2〕 <움직임 벡터(MV)의 변동에 기초하는 캐시 구성의 변경>
도 5는, 실시 형태 2의 동화상 복호 장치의 구성예를 도시하는 블록도이다. 동화상 복호 장치(1)는 도 1에 도시한 실시 형태 1의 동화상 복호 장치와 마찬가지로, 동화상 복호 처리부(4), 캐시 메모리(2), 캐시 제어부(3), 어드레스 제어부(5), 태그 비교 제어부(6), 리드 커맨드 제어부(7), 및 캐시 라인 제어부(8)를 포함하는 한편, 인트라 매크로 블록 비율 산출부(11) 대신에 MV 분산 산출부(12)를 포함하여 구성된다. MV 분산 산출부(12)의 「MV」는, 움직임 벡터(Motion Vector)의 약칭으로서, 부호화 시에 인터 예측이 채용된 매크로 블록에 대응하는 부호화 정보의 하나(MV 정보(94))이다.
MV 분산 산출부(12)에는, 동화상 복호 처리부(4)로부터, MV 정보(94)가 공급된다. MV 정보(94)는 입력된 스트림(91) 내의 부호화 정보(92)에 포함되고, 그 매크로 블록의 부호화 처리에 있어서 인터 예측이 사용되었을 때에 그 움직임 벡터(MV)를 나타내는 정보이다. MV 분산 산출부(12)는 움직임 벡터의 변동(MV 변동)(98)을 산출하여 캐시 라인 제어부(8)에 공급한다. 캐시 라인 제어부(8)는 MV 변동(98)에 기초하여, 어드레스 제어부(5)에 있어서의 어드레스 제어, 태그 비교 제어부(6)에 있어서의 태그 메모리의 구성과 태그 사이즈, 엔트리 사이즈의 제어, 및 리드 커맨드 제어부(7)와 캐시 제어부(3)에 있어서의 라인 사이즈와 캐시 필 시의 리드 사이즈를 제어한다. MV 분산 산출부(12) 이외의 구성과 동작은, 실시 형태 1의 동화상 복호 장치와 마찬가지이므로, 상세한 설명을 생략한다.
실시 형태 2의 동화상 복호 장치(1)의 동작에 대하여 설명한다. 동화상 복호 처리부(4)는 입력된 스트림(91)에 대한 복호 처리의 과정에서 얻어진 MV 정보(94)를 MV 분산 산출부(12)로 출력한다. MV 분산 산출부(12)는 입력된 MV 정보(94)에 기초하여, 1픽처 내의 MV 변동(98)을 산출한다. 캐시 라인 제어부(8)는 MV 분산 산출부(12)로부터 공급되는, MV 변동(98)에 따라, 화면간 예측 시에 참조하는, 레퍼런스 화상을 저장하는 캐시의 캐시 라인 사이즈와 엔트리수를 변경한다. 캐시 메모리(2)는 도 2 및 도 3을 인용하여 설명한 실시 형태 1의 캐시 메모리(2)와 마찬가지로 구성되고, 동작할 수 있다.
도 6은, 실시 형태 2의 어드레스 제어부에 있어서의 어드레스 변환 처리의 설명도이다.
어드레스 제어부(5)는 MV의 변동이 작은 경우, 상단에 도시된 바와 같이, 동화상 복호 처리부(4)로부터 입력되는 레퍼런스 화상 리드 커맨드의 어드레스를, 상위 비트로부터, 프레임 어드레스(601)와, 엔트리 어드레스(602)와, 워드 어드레스(603)로 분할한다. 프레임 어드레스(601)는 태그와의 비교에서 사용된다. 엔트리 어드레스(602)는 캐시 메모리(2) 중의 캐시 라인의 선택에 사용된다. 워드 어드레스(603)는, 캐시 라인 중의 데이터의 선택에 사용된다.
MV의 변동이 큰 경우, 하단에 도시된 바와 같이, 어드레스 제어부(5)에서의 리드 어드레스의 분할을, 604, 605, 606과 같이 변경한다. 인트라 매크로 블록의 비율이 적은 경우에 비해, 워드 어드레스(606)를 좁게, 엔트리 어드레스(605)를 넓게 한다.
태그 비교 제어부(6), 리드 커맨드 제어부(7), 및 캐시 제어부(3)는 캐시 라인 제어부(8)로부터 지시되는 캐시 라인 사이즈와 엔트리수에 따라, 실시 형태 1과 마찬가지로 동작한다.
MV의 변동(98)이 큰 경우에는, 캐시 라인 사이즈를 작게 함으로써, 캐시 미스 시에 리드하는 참조되지 않는 불필요한 레퍼런스 화상(95)의 데이터 전송량을 적게 할 수 있어, 소비 전력을 삭감하고, 시스템 성능을 향상시킬 수 있다. 한편, MV의 변동(98)이 작은 경우에는, 캐시 라인 사이즈를 크게 함으로써, 장래 참조될 확률이 높고, 재이용율이 높은 레퍼런스 화상(95)을 미리 캐시 메모리(2)에 프리로드할 수 있으므로, 캐시 메모리의 사용 효율을 향상시킬 수 있다.
이러한 효과가 얻어지는 원리에 대하여 보충한다.
극단적인 상태이긴 하지만, 픽처 내의 모든 매크로 블록이, 동일한 방향 또한 동일한 크기의 움직임 벡터를 사용하여 움직임 예측을 행하는 경우를 가정하면, 어떤 매크로 블록의 복호에서의 레퍼런스 화상의 리드 시에 캐시 미스가 발생했을 때에는, 그 레퍼런스 화상에 인접하는 레퍼런스 화상도 아울러 캐시 필해 두는 것이 효율적이다. 후속 매크로 블록에서도 동일한 방향 또한 동일한 크기의 움직임 벡터를 사용하여 움직임 예측이 행하여지므로, 액세스되는 레퍼런스 화상도, 앞선 복호 처리에서 액세스된 레퍼런스 화상에 후속하기 때문에, 상기 캐시 필에 의해 미리 캐시 메모리 내에 읽어들여져, 캐시 히트하기 때문이다. 이렇게 움직임 벡터가 동일한 방향 또한 동일한 크기가 아니어도, 그 변동이 작으면, 후속 매크로 블록의 복호 처리에서 액세스되는 레퍼런스 화상은, 그 시점에서 실행되고 있는 복호 처리에서 액세스되는 레퍼런스 화상의 근방에 존재하게 되므로, 캐시 필의 리드 사이즈를 크게 함으로써 히트율이 향상될 가능성이 높다. 반대로 그 변동이 크면, 후속 매크로 블록의 복호 처리에서 액세스되는 레퍼런스 화상은, 그 시점에서 실행되고 있는 복호 처리에서 액세스되는 레퍼런스 화상의 근방에 존재할 확률은 낮으므로, 캐시 필의 리드 사이즈를 크게 하면 캐시 미스할 확률이 높고, 불필요한 캐시 필이 된다. 그로 인해, 리드 사이즈를 작게 하여, 불필요한 캐시 필을 억제한다.
여기서, 본 실시 형태 2에서는, MV의 변동(98)을 픽처마다 산출하고, 그것에 수반하여 픽처마다 캐시 메모리(2)와 태그 메모리를 포함하는 태그 비교 제어부(6)의 구성을 변경함으로써, 캐시의 구성을 변경하는 예를 나타냈지만, 제어의 단위는 픽처 단위에 한정되지 않는다. 예를 들어, 복수의 픽처에 걸쳐서 MV의 변동을 추출하고, 그 크기가 현저하게 변화하는 경우에, 캐시의 구성을 변경하도록 구성할 수 있다. 이에 의해, 캐시의 구성이 변경되는 빈도가 저감된다. 한편, 1픽처를 복수의 영역으로 분할하고, 그 영역마다 MV의 변동을 추출하고, 그 영역마다 캐시의 구성을 변경하도록 구성할 수 있다. 이에 의해, 캐시의 구성이 복호 대상의 화상 특징에 따라서 세밀하게 적응적으로 변경되어, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다. 예를 들어, 고정된 배경을 카메라가 팬(카메라를 가로로 흔듬)하고, 그 중에서 물체가 랜덤하게 움직이고 있는 화상을 복호하는 경우에는, 팬되고 있는 배경에서의 MV는 방향과 크기가 대략 동등하기 때문에, MV의 변동은 거의 발생하지 않은 것에 비해서, 물체가 움직이는 영역에서는 MV의 변동이 크다. 이러한 경우에, 영역마다 캐시의 구성이 최적화되면, MV의 변동이 큰, 물체가 움직이는 영역에서는, 캐시의 라인 사이즈는 작게 됨으로써, 불필요한 캐시 필의 발생이 억제되고, 한편, MV의 변동이 작은 배경 영역에서는, 캐시의 라인 사이즈는 크게 됨으로써, 히트율의 향상이 기대된다.
또한, 본 실시 형태 2와 상술한 실시 형태 1을 조합한 실시 형태도 바람직하다. 즉, 1픽처마다, 또는, 복수의 픽처마다, 또는, 1픽처 내의 영역마다, 인트라 매크로 블록의 비율을 산출하고, 그 비율이 낮은 경우, 즉 인터 매크로 블록의 비율이 높은 경우에, 추가로 MV의 변동을 참조하여, 캐시의 구성을 제어할 수 있다. 이에 의해, 더 세밀하게 복호 화상의 특징에 적합한 캐시의 구성을 취할 수 있어, 캐시 메모리의 사용 효율을 더욱 향상시킬 수 있다.
도 7은, 움직임 벡터 분산 산출 처리의 일례를 도시하는 설명도이다. 본 실시 형태 2의 MV 분산 산출부(12)에 있어서의 MV 변동(98)을 산출하기 위한 알고리즘은, 여러가지 채용 가능하지만, 여기에서는 그 일례에 대하여 설명한다.
MV는 방향과 크기를 갖는 2차원의 벡터이며, 도 7에는 MV가 지시하는 영역이 나타난다. MV 분산 산출부(12)에서는, MV가 지시하는 레퍼런스 화상 내의 영역을, 901부터 908의 8영역으로 나눈다. 903, 907, 906 및 902는 소정값 이하의 크기의 MV에 의해 나타나는, 각각 제1 사분면, 제2 사분면, 제3 사분면 및 제4 사분면의 영역이며, 904, 908, 905 및 901은 상기 소정값보다 큰 크기의 MV에 의해 나타나는, 각각 제1 사분면, 제2 사분면, 제3 사분면 및 제4 사분면의 영역이다. 영역마다 그 영역을 지시하는 MV의 수를 카운트하고, 그 카운트값과, 픽처 내의 총 MV수로부터 변동을 도출한다. 예를 들어, 총 MV수의 1/4를 역치로 하여, 8영역 모두의 MV수가 그 값을 초과하지 않는 경우에, MV의 변동이 크다고 판정한다.
이에 의해, 움직임 벡터의 변동을, 승산 등의 복잡한 연산을 사용하지 않고, 용이하게 산출할 수 있다.
〔실시 형태 3〕 <가변 길이 부호화 처리의 결과로부터 현 픽처의 특징량을 추출>
도 8은, 실시 형태 3의 동화상 복호 장치의 구성예를 도시하는 블록도이다. 동화상 복호 장치(1)는 동화상 복호 처리부(4), 캐시 메모리(2), 복호 정보 처리부(30), 및 캐시 구성 제어부(20)를 포함하여 구성된다. 캐시 구성 제어부(20)는 실시 형태 1의 인트라 매크로 블록 비율 산출부(11), 또는, 실시 형태 2의 MV 변동 산출부(12), 또는, 다른 복호 화상 해석 수단을 포함하고, 또한, 캐시 라인 제어부(8), 어드레스 제어부(5), 태그 비교 제어부(6), 리드 커맨드 제어부(7), 및 캐시 제어부(3)를 포함한다. 동화상 복호 처리부(4)는 가변 길이 부호의 복호 처리를 행하는 가변 길이 부호 처리부(41)와, 가변 길이 부호의 복호 결과로부터, 화상 신호의 복호 처리를 행하는 화상 신호 처리부(42)를 포함하여 구성된다. 복호 정보 처리부(30)는 가변 길이 부호 처리부(41)에 의한 가변 길이 부호의 복호 처리 결과로부터, 인트라 매크로 블록의 정보(93), 또는 MV 정보(94) 등의 부호화 정보(92)를 추출하고, 캐시 구성 제어부(20)로 출력한다.
실시 형태 3의 동화상 복호 장치(1)의 동작에 대하여 설명한다. 가변 길이 부호 처리부(41)는 입력되는 스트림(91)에 대하여 1픽처 단위로 가변 길이 부호의 복호 처리를 실행한다. 화상 신호 처리부(42)는 가변 길이 부호 처리부(41)로부터 출력된 가변 길이 부호 복호 데이터에 대하여 신호 처리를 행하여 화상으로 복호한다. 이 복호 처리는, 가변 길이 부호 처리부(41)에 대하여 1픽처 지연되어서 처리된다. 즉, 가변 길이 부호 처리부(41)와 화상 신호 처리부(42)는 1픽처를 스텝으로 하는 파이프라인를 포함하고 있다.
한편, 복호 정보 처리부(30)는 가변 길이 부호 처리부(41)가 처리하고 있는 픽처와 동일한 픽처의 인트라 매크로 블록 정보(93) 또는 MV 정보(94) 등의 부호화 정보(92)를 캐시 구성 제어부(20)로 출력한다. 이로 인해, 캐시 구성 제어부(20)는 화상 신호 처리부(42)가 다음으로 처리할 픽처의 정보를 수취하는 것이 가능하게 된다. 이에 의해, 화상 신호 처리부(42)가 다음 픽처를 처리하는 시점에서는, 동일한 픽처의 인트라 매크로 블록 정보(93) 또는 MV 정보(94) 등의 부호화 정보(92)를 사용하여, 캐시 구성 제어부(20)가 캐시의 구성을 적절하게 변경할 수 있다. 이러한 파이프라인 구성에 의해, 화상 신호 처리의 처리 대상의 픽처와, 그 시점에서의 캐시의 구성을 지정하기 위하여 사용한 인트라 매크로 블록 정보(93)나 MV 정보(94) 등의 부호화 정보(92)를 부여한 픽처를, 동일한 픽처에 정렬시킬 수 있기 때문에, 캐시의 구성이 그 픽처에 의해 적절하게 적합된다.
이에 의해, 화상 신호 처리부가 처리를 행하고 있는 픽처 그 자체로부터 추출된 특징량에 기초하여, 라인 사이즈와 엔트리 사이즈 등의 캐시 메모리의 구성이 동적 제어되므로, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다. 가변 길이 부호 처리부와 화상 신호 처리부로 나누지 않고 일체로 복호 처리를 행하는 경우에는, 1픽처의 복호 처리를 완료했을 때에, 그 픽처의 특징량이 추출되므로, 추출된 특징량에 기초하여 캐시 메모리의 구성이 변경되는 것은, 가장 빠른 경우에도 다음 픽처의 복호 처리가 실행되는 시점이 된다. 이에 비해, 가변 길이 부호 처리부와 화상 신호 처리부를 1픽처 단위의 파이프라인 구성으로 하고, 가변 길이 부호 처리의 결과로부터 특징량을 추출하면, 다음 파이프라인 스테이지에서 실행되는 화상 신호 처리에서는, 그 시점에서의 복호 대상의 픽처 자체의 특징량에 기초하여, 캐시 메모리의 구성을 지정할 수 있기 때문에, 보다 적절한 제어가 가능하게 된다.
〔실시 형태 4〕 <스트림과 병행하여(병렬로) 입력되는 부호화 정보로부터 현 픽처의 특징량을 추출>
도 9는, 실시 형태 4의 동화상 처리 장치의 구성예를 도시하는 블록도이다. 동화상 복호 장치(1)는 동화상 복호 처리부(4), 캐시 메모리(2), 부호화 정보 처리부(31), 및 캐시 구성 제어부(20)를 포함하여 구성된다. 캐시 구성 제어부(20)은 실시 형태 1의 인트라 매크로 블록 비율 산출부(11), 또는, 실시 형태 2의 MV 변동 산출부(12), 또는, 다른 복호 화상 해석 수단을 포함하고, 또한, 캐시 라인 제어부(8), 어드레스 제어부(5), 태그 비교 제어부(6), 리드 커맨드 제어부(7), 및 캐시 제어부(3)를 포함한다. 동화상 복호 장치(1)에는, 예를 들어 외장된, 또는 내장된 동화상 부호화기(70)로부터, 스트림(91)에 추가로, 거기에 대응하는 부호화 정보(92)가 병렬로 입력된다. 여기서, 부호화 정보(92)란, 동화상 부호화기(70)가 원화상에 대하여 부호화 처리를 행한 때의 정보이며, 실시 형태 1에 있어서 설명한 바와 같이, 인트라/인터 매크로 블록 정보(93), MV 정보(94), 나아가, 양자화 파라미터나 가변 길이 부호의 부호 길이 정보 등이 포함된다. 통상, 부호화 정보(92)는 스트림(91)에 포함되지만, 본 실시 형태에서는, 이것과는 병렬로, 동화상 복호 장치(1) 내의 부호화 정보 처리부(31)에 공급된다. 즉, 스트림(91)이 동화상 복호 처리부(4)에 입력되고, 대응하는 부호화 정보(92)가 부호화 정보 처리부(31)에 병렬로 입력된다.
실시 형태 4의 동화상 복호 장치(1)의 동작에 대하여 설명한다.
동화상 부호화기(70)는 동화상 복호 장치(1) 내의 동화상 복호 처리부(4)에 스트림(91)을 공급하고, 이것과 병렬로, 그 스트림(91)의 부호화 처리에 의해 생성된 부호화 정보(92)를 부호화 정보 처리부(31)에 공급한다. 부호화 정보 처리부(31)는 공급된 부호화 정보(92)로부터, 캐시 구성 제어부(20)가 필요로 하는 정보, 예를 들어 인트라/인터 매크로 블록 정보(93) 또는 MV 정보(94)를 추출하여 공급한다. 캐시 구성 제어부(20)는 예를 들어 실시 형태 1에서 설명한 것과 마찬가지로, 인트라 매크로 블록 비율 산출부(11)를 포함하여 구성되고, 공급되는 인트라/인터 매크로 블록 정보(93)를 분석하고, 인트라 매크로 블록 비율(97)을 산출하고, 이것에 기초하여 캐시의 구성을 변경한다. 또는, 캐시 구성 제어부(20)는 예를 들어 실시 형태 2에서 설명한 것과 마찬가지로, MV 분산 산출부(12)를 포함하여 구성되고, 공급되는 MV 정보(94)를 분석하고, MV 변동(98)을 산출하고, 이것에 기초하여 캐시의 구성을 변경한다. 스트림(91)이 공급되는 동화상 복호 처리부(4)의 동작은, 실시 형태 1과 실시 형태 2의 동화상 복호 처리부(4)의 동작과 마찬가지이다.
이에 의해, 동화상 복호 처리부(4)가 복호 처리의 대상으로 하고 있는 픽처와 동일한 픽처의 부호화 정보를 사용하여, 캐시 구성 제어부(20)가 캐시의 구성을 적절하게 변경할 수 있다. 즉, 동화상 복호 처리부에 있어서의 복호 처리와, 복호 대상 화상 해석부에 있어서의 특징량의 추출 처리를 독립시킬 수 있으므로, 복호 대상의 픽처 그 자체로부터 추출된 특징량에 기초하여, 캐시 메모리의 구성이 동적 제어되므로, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다.
〔실시 형태 5〕 <기타 실시 형태>
이상, 실시 형태 1 내지 4를 나타내서 여러가지 실시 형태에 대하여 설명했지만, 그 요지를 일탈하지 않는 범위에서 여러가지로 변경 가능하다.
도 10은, 실시 형태 5의 동화상 복호 장치의 구성예를 도시하는 블록도이다. 동화상 복호 장치(1)는 스트림(91)이 입력되는 동화상 복호 처리부(4)와, 외부 메모리(60)에 저장되는 데이터를 일시 기억하는 캐시 메모리(2)를 구비하고, 동화상 복호 처리부(4)가 스트림(91)을 복호할 대상의 화상으로부터 특징량(96)을 추출하고, 추출한 특징량(96)에 기초하여 외부 메모리(60)로부터 캐시 메모리(2)에의 캐시 필의 리드 사이즈를 변경한다. 도 10에는, 부호화 정보(92)가 입력되어 특징량(96)을 출력하는 복호 대상 화상 해석부(10)와, 특징량(96)에 기초하여 캐시 메모리(2)의 리드 사이즈를 변경하는 캐시 구성 변경 제어부(9)와, 캐시 제어부(3)를 포함하는 캐시 구성 제어부(20)가 탑재된 동화상 복호 장치(1)가 나타난다. 동화상 복호 처리부(4)가 캐시 제어부(3)에 대하여 레퍼런스 화상을 요구하면, 캐시 제어부(3)는 캐시 히트인지 캐시 미스인지의 판정을 행하고, 캐시 미스가 발생했을 때에는, 캐시 구성 변경 제어부(9)에 의해 지정되는 리드 사이즈로, 캐시 메모리(2)에의 캐시 필을 행한다.
이에 의해, 동화상 복호 처리부가 외부 메모리에 저장되는 레퍼런스 화상을, 캐시 메모리를 통하여 읽어들일 때에, 캐시 메모리에의 불필요한 캐시 필을 저감할 수 있고, 캐시 메모리의 사용 효율을 향상시킬 수 있다. 복호 대상의 화상으로부터 추출되는 특징량에 기초하여, 캐시 필되는 레퍼런스 화상의 양이 적정화되어, 캐시 미스를 저감할 수 있다.
어떤 매크로 블록의 복호에서의 레퍼런스 화상의 리드 시에 캐시 미스가 발생했을 때에, 그 레퍼런스 화상을 읽어들이는 캐시 필에 있어서, 상기 특징량에 기초하여 캐시 필의 사이즈가 적정화된다. 특징량이, 다음에 복호 처리의 대상이 되는 매크로 블록이 참조하는 레퍼런스 화상이, 그 레퍼런스 화상과 인접하고 있을 가능성이 높은 것을 나타내는 경우에는, 캐시 필의 사이즈를 크게 함으로써, 이후의 매크로 블록을 대상으로 하는 복호 처리에서의 캐시 메모리의 히트율을 향상시킬 수 있다. 반대로 특징량이, 다음에 복호 처리의 대상이 되는 매크로 블록이 참조하는 레퍼런스 화상이, 그 레퍼런스 화상과 인접하고 있을 가능성이 낮은 것을 나타내는 경우에는, 캐시 필의 사이즈를 작게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 미스가 될 가능성이 높은, 불필요한 캐시 필을 억제할 수 있다.
실시 형태 1은, 특징량(96)으로서 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율(97)을 채용한 실시 형태이다. 복호 대상 화상 해석부(10)의 일례로서 인트라 매크로 블록 비율 산출부(11)를 구비하고, 인트라 매크로 블록 비율 산출부(11)는 부호화 정보(92)의 일례인 인트라/인터 매크로 블록 정보(93)로부터, 인트라 매크로 블록의 비율(97)을 추출한다. 캐시 구성 변경 제어부(9)는 인트라 매크로 블록의 비율(97)이 높을수록, 캐시 메모리(2)에의 리드 사이즈를 작게 하고, 인트라 매크로 블록의 비율(97)이 낮을수록, 리드 사이즈를 크게 한다. 또한, 캐시 구성 변경 제어부(9)는 도 1에서는, 캐시 라인 제어부(9)와, 어드레스 제어부(5)와, 태그 비교 제어부(6)와, 리드 커맨드 제어부(7)를 포함하고 있다.
인트라 예측을 행하는 매크로 블록이 차지하는 비율이 높은 픽처에서는, 동화상 복호 처리부가 레퍼런스 화상에 액세스하는 빈도가 낮기 때문에, 캐시 메모리의 라인 사이즈를 작게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 미스가 될 가능성이 높은, 불필요한 캐시 필을 억제할 수 있다. 또한, 이때, 캐시 메모리는, 많은 엔트리를 캐시할 수 있도록 구성되므로, 픽처 전체에서의 히트율은 향상된다. 한편, 인트라 예측을 행하는 매크로 블록이 차지하는 비율이 낮은 픽처에서는, 동화상 복호 처리부가 레퍼런스 화상에 액세스하는 빈도가 높기 때문에, 캐시 메모리의 라인 사이즈를 크게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 메모리의 히트율을 향상시킬 수 있다.
실시 형태 2는, 특징량(96)으로서 움직임 벡터의 변동(MV 변동)(98)을 채용한 실시 형태이다. 복호 대상 화상 해석부(10)의 일례로서 MV 분산 산출부(12)를 구비하고, MV 분산 산출부(12)는 부호화 정보(92)의 일례인 MV 정보(94)로부터, MV 변동(98)을 추출한다. 캐시 구성 변경 제어부(9)는 MV 변동(98)이 클수록, 캐시 메모리(2)에의 리드 사이즈를 작게 하고, MV 변동(98)이 작을수록, 리드 사이즈를 크게 한다. 또한, 캐시 구성 변경 제어부(9)는 도 5에서는, 캐시 라인 제어부(9)와, 어드레스 제어부(5)와, 태그 비교 제어부(6)와, 리드 커맨드 제어부(7)를 포함하고 있다.
움직임 벡터의 변동이 작은 픽처에서는, 캐시 필 시의 리드 사이즈를 크게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 메모리의 히트율을 향상시킬 수 있다. 한편, 움직임 벡터의 변동이 큰 픽처에서는, 캐시 필 시의 리드 사이즈를 작게 함으로써, 후속 매크로 블록을 대상으로 하는 복호 처리에서 캐시 미스가 될 가능성이 높은, 불필요한 캐시 필을 억제할 수 있다.
이때, MV 분산 산출부(12)의 일 구성예는, 예를 들어 도 7을 인용하여 상술한 바와 같이, 복호 대상 화상에 대응하는 레퍼런스 화상을, 복호 대상의 매크로 블록을 중심으로 한 방향과 거리에 기초하여 복수의 영역으로 분할하고, 각 영역을 나타내는 움직임 벡터의 수를 카운트함으로써 빈도 분포를 계측하고, 그 빈도 분포에 기초하여 특징량(96)으로서의 MV 변동(98)을 추출한다.
이에 의해, 움직임 벡터의 변동을, 승산 등의 복잡한 연산을 사용하지 않고, 용이하게 산출할 수 있다.
실시 형태 3은, 동화상 복호 처리부(4)에, 1픽처 단위로 파이프라인 동작하는, 가변 길이 부호 처리부(41)와 화상 신호 처리부(42)를 구비하는 예이다. 복호 대상 화상 해석부(10)는 가변 길이 부호 처리부(41)의 복호 결과로부터 특징량(96)을 추출하고, 화상 신호 처리부(41)는 가변 길이 부호 처리부(42)의 복호 결과에 대하여 복호 처리를 행한다.
이에 의해, 동화상 복호 처리부에 있어서의 복호 처리와, 복호 대상 화상 해석부에 있어서의 특징량의 추출 처리를 독립시킬 수 있으므로, 복호 대상의 픽처 그 자체로부터 추출된 특징량에 기초하여, 캐시 메모리의 구성이 동적 제어되므로, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다.
이때, 실시 형태 1과 마찬가지로, 복호 대상 화상 해석부(10)를 인트라 매크로 블록 비율 산출부(11)로 하고, 특징량(96)으로서 인트라 매크로 블록의 비율(97)을 사용해도 되고, 실시 형태 2와 마찬가지로, 복호 대상 화상 해석부(10)를 MV 분산 산출부(12)로 하고, 특징량(96)으로서 MV 변동(98)을 사용해도 되고, 또는, 다른 특징량을 사용해도 된다.
실시 형태 4는, 부호화 정보(92)가 동화상 복호 처리부(4)로부터가 아니라, 별도 구비하는 동화상 부호화기(70)로부터, 스트림(91)과 병렬로 공급되는 예이다. 복호 대상 화상 해석부(10)는 동화상 부호화기(70)에 의해 공급되는 부호화 정보(92)로부터 특징량(96)을 추출한다.
이에 의해, 상술한 실시 형태 3의 경우와 마찬가지로, 동화상 복호 처리부에 있어서의 복호 처리와, 복호 대상 화상 해석부에 있어서의 특징량의 추출 처리를 독립시킬 수 있으므로, 복호 대상의 픽처 그 자체로부터 추출된 특징량에 기초하여, 캐시 메모리의 구성이 동적 제어되므로, 캐시 메모리의 사용 효율을 보다 향상시킬 수 있다.
이때, 실시 형태 1과 마찬가지로, 복호 대상 화상 해석부(10)를 인트라 매크로 블록 비율 산출부(11)로 하고, 특징량(96)으로서 인트라 매크로 블록의 비율(97)을 사용해도 되고, 실시 형태 2와 마찬가지로, 복호 대상 화상 해석부(10)를 MV 분산 산출부(12)로 하고, 특징량(96)으로서 MV 변동(98)을 사용해도 되고, 또는, 다른 특징량을 사용해도 된다.
여기서, 특징량(96)은 반드시 1픽처 단위로 규정되는 파라미터일 필요는 없다. 예를 들어, 1픽처만으로부터 추출되는 파라미터 대신에, 복수의 픽처의 누적에 의한 파라미터로 할 수 있다. 복호 처리의 대상 픽처의 1픽처 전의 픽처의 특징량에 기초하여, 그 복호 처리에 있어서의 레퍼런스 화상의 참조에 있어서의 캐시 구성을 변경하는 대신, 그 픽처까지 누적한 정보를 사용하여 캐시의 구성을 변경한다. 이에 의해, 픽처 단위로 극단적으로 경향이 바뀌는 경우에, 민감한 반응을 억제할 수 있다. 또한, 복호 대상이 되어 있는 현 픽처의 특징량의 예측값으로서 바람직한 값이 된다.
한편, 특징량(96)은 1픽처 내의 분할된 각 영역에서 규정되고, 그에 따라 캐시 구성을 변경할 수 있도록 구성해도 된다.
도 11은, 동화상 복호 장치를 탑재하는 LSI의 구성예를 도시하는 블록도이다. LSI(50)는, 동화상 복호 장치(1), 버스(51), 메모리 인터페이스(52), CPU(53), DMAC(54), ROM/RAM(55), 화상 인터페이스(56), 동화상 입력 처리부(57), 및 단자(58, 59)를 구비한다. 특별히 제한되지 않지만, LSI(50)는, 예를 들어, 공지된 CMOS(Complementary Metal-Oxide-Semiconductor field effect transistor) 반도체의 제조 기술을 사용하여, 실리콘 등의 단일 반도체 기판 상에 형성된다. 버스(51)는 각 기능 모듈을 서로 접속한다. CPU(53)는 Central Processing Unit의 약칭이며, ROM/RAM(55)으로부터 공급되는 프로그램을 실행함으로써, LSI(50) 전체를 제어한다. DMAC(54)는 Direct Memory Access Controller의 약칭이며, CPU(53)에 의해 미리 소정의 파라미터가 설정됨으로써, CPU(53)에 의한 프로그램 실행의 백그라운드에서 실행되는 데이터 전송을 행한다. ROM/RAM(55)은 Read Only Memory/Random Access Memory의 약칭이며, ROM에는 CPU(53)에 공급할 프로그램 코드, 상수 파라미터 등이 유지되고, RAM은 워크 메모리로서 사용된다. 화상 인터페이스(56)는 외부로부터 단자(59)를 통하여 입력되는, 화상 데이터를 동화상 입력 처리부(57)에 전송하는 인터페이스이다. LSI(50)의 단자(58)에는 외부 메모리(60)가 접속 가능하고, 접속된 외부 메모리(60)에는, 메모리 인터페이스(52)를 통하여 액세스할 수 있다. 동화상 복호 장치(1)는 복호 대상 화상 해석부(10)와 캐시 구성 변경 제어부(9)와 캐시 제어부(3)를 포함하는 캐시 구성 제어부(20)와, 동화상 복호 처리부(4)와, 캐시 메모리(2)를 구비한다. 동화상 복호 장치(1)는 도 10을 인용하여 상술한 바와 같이, 여러가지 구성예를 채용할 수 있다.
스트림(91)은 예를 들어 단자(59)로부터 입력되는 화상 데이터로부터, 화상 인터페이스(56), 동화상 입력 처리부(57)에 의해 생성되고, 메모리 인터페이스(52)를 통하여 외부 메모리(60)에 저장되어 있고, 동화상 복호 장치(1) 내의 동화상 복호 처리부(4)에는, 재차 외부 메모리(60)로부터 판독되어서 공급된다. 스트림(91)의 외부 메모리(60)로부터의 판독은, 예를 들어, 동화상 복호 처리부(4)로부터의 요구에 따라, DMAC(54)가 CPU(53)에 의한 프로그램 처리의 백그라운드에서 실행한다. 동화상 복호 처리부(4)에 있어서의 복호 처리의 결과, 생성되는 복호 화상은, 버스(51), 메모리 인터페이스(52)를 통하여 외부 메모리(60)에 기입되어, 후속 픽처 복호 처리에 있어서 레퍼런스 화상(95)으로서 참조된다. 동화상 복호 처리부(4)에 의한 캐시 메모리(2)에의 레퍼런스 화상(95)의 요구, 및 캐시 미스 발생 시의 외부 메모리(60)로부터 캐시 메모리(2)에의 읽어들임(캐시 필)은 도 10을 인용하여 상술한 바와 같다.
동화상 복호 처리부(4)가 외부 메모리(60)에 저장되는 레퍼런스 화상(95)을 캐시 메모리(2)를 통하여 읽어들일 때에, 캐시 메모리(2)에의 불필요한 캐시 필을 저감할 수 있어, 캐시 메모리(2)의 사용 효율을 향상시킬 수 있으므로, 버스(51)의 트래픽이 경감된다. 이로 인해, CPU(53)에 의한 프로그램 실행의 성능이 실효적으로 향상된다.
여기에서 나타낸 LSI(50)의 구성은, 단지 일례이며, 여러가지로 변경 가능하다. 예를 들어, 화상 인터페이스(56)와 동화상 입력 처리부(57) 대신에, 스트림(91)을 패킷에 포함하는 통신 인터페이스를 구비할 수 있다. 버스(51)는 계층화되어 있어도 되고, 복수의 CPU를 구비하고 있어도 된다. 또한, 동화상 부호화기를 동일 칩 내에 혼재해도 된다.
이상 본 발명자에 의해 이루어진 발명을 실시 형태에 기초하여 구체적으로 설명했지만, 본 발명은 그에 한정되는 것은 아니라, 그 요지를 일탈하지 않는 범위에서 여러가지 변경 가능한 것은 말할 필요도 없다.
예를 들어, 각 기능 블록의 명칭은, 그 기능 블록이 갖는 기능을 나타내도록 명명되어 있지만, 그 분할·통합은 임의이다.
1: 동화상 복호 장치
2: 캐시 메모리
3: 캐시 제어부
4: 동화상 복호 처리부
5: 어드레스 제어부
6: 태그 비교 제어부
7: 리드 커맨드 제어부
8: 캐시 라인 제어부
9: 캐시 구성 변경 제어부
10: 복호 대상 화상 해석부
11: 인트라 매크로 블록 비율 산출부
12: 움직임 벡터(MV) 분산 산출부
20: 캐시 구성 제어부
30: 복호 정보 처리부
31: 부호화 정보 처리부
41: 가변 길이 부호 처리부
42: 화상 신호 처리부
50: LSI
51: 버스
52: 메모리 인터페이스
53: CPU
54: DMAC
55: ROM/RAM
56: 화상 인터페이스
57: 동화상 입력 처리부
58, 59: 단자
60: 외부 메모리
70: 동화상 부호화기
91: 스트림
92: 부호화 정보
93: 인트라/인터 매크로 블록 정보
94: MV 정보
95: 레퍼런스 화상
96: 특징량
97: 인트라 매크로 블록 비율
98: MV의 변동
401, 404, 601, 604: 프레임 어드레스
402, 405, 602, 605: 엔트리 어드레스
403, 406, 603, 606: 워드 어드레스
901~908: MV가 지시하는 영역

Claims (20)

  1. 스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 저장되는 데이터를 일시 기억하는 캐시 메모리와, 캐시 제어부와, 복호 대상 화상 해석부와, 상기 동화상 복호 처리부로부터의 요구에 따라서 요구 어드레스를 출력하는 어드레스 제어부와, 태그 메모리를 갖는 태그 비교 제어부와, 리드 커맨드 제어부와, 캐시 라인 제어부를 구비하고,
    상기 복호 대상 화상 해석부는, 상기 스트림으로부터 상기 동화상 복호 처리부에 의한 복호 대상 화상의 특징량을 추출하고,
    상기 캐시 라인 제어부는, 상기 특징량에 기초하여, 상기 리드 커맨드 제어부에 대하여 상기 외부 메모리로부터 상기 캐시 메모리에의 리드 사이즈를 지정하고,
    상기 태그 비교 제어부는, 상기 요구 어드레스와 상기 태그 메모리에 유지되는 태그 데이터를 비교하여 캐시 히트인지 캐시 미스인지의 판정을 행하고,
    캐시 히트인 경우, 상기 캐시 제어부는, 상기 요구 어드레스에 대응하는 데이터를 상기 캐시 메모리로부터 판독하여 상기 동화상 복호 처리부에 공급하고,
    캐시 미스인 경우, 상기 캐시 제어부는, 상기 리드 커맨드 제어부에 의해 지정되는 리드 사이즈의 데이터를, 상기 외부 메모리로부터 판독하여 상기 캐시 메모리에 기입하고,
    상기 복호 대상 화상 해석부는, 상기 복호 대상 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 상기 특징량으로서 추출하고,
    상기 캐시 라인 제어부는,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    화상 처리 장치.
  2. 제1항에 있어서, 상기 동화상 복호 처리부는, 가변 길이 부호 처리부와, 상기 가변 길이 부호 처리부의 복호 결과에 대하여 복호 처리를 행하는 화상 신호 처리부를 구비하고,
    상기 가변 길이 부호 처리부와 상기 화상 신호 처리부는, 1픽처 단위로 파이프라인 동작하고,
    상기 복호 대상 화상 해석부는, 상기 가변 길이 부호 처리부의 복호 결과로부터 상기 특징량을 추출하고,
    상기 어드레스 제어부는, 상기 화상 신호 처리부로부터의 요구에 따라서 상기 요구 어드레스를 출력하는,
    화상 처리 장치.
  3. 스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 저장되는 데이터를 일시 기억하는 캐시 메모리와, 캐시 제어부와, 복호 대상 화상 해석부와, 상기 동화상 복호 처리부로부터의 요구에 따라서 요구 어드레스를 출력하는 어드레스 제어부와, 태그 메모리를 갖는 태그 비교 제어부와, 리드 커맨드 제어부와, 캐시 라인 제어부와, 상기 스트림에 대응하는 부호화 정보가 입력되는 부호화 정보 처리부를 구비하고,
    상기 복호 대상 화상 해석부는, 상기 부호화 정보 처리부를 통하여 공급되는 상기 부호화 정보로부터, 특징량을 추출하고,
    상기 캐시 라인 제어부는, 상기 특징량에 기초하여, 상기 리드 커맨드 제어부에 대하여 상기 외부 메모리로부터 상기 캐시 메모리에의 리드 사이즈를 지정하고,
    상기 태그 비교 제어부는, 상기 요구 어드레스와 상기 태그 메모리에 유지되는 태그 데이터를 비교하여 캐시 히트인지 캐시 미스인지의 판정을 행하고,
    캐시 히트인 경우, 상기 캐시 제어부는, 상기 요구 어드레스에 대응하는 데이터를 상기 캐시 메모리로부터 판독하여 상기 동화상 복호 처리부에 공급하고,
    캐시 미스인 경우, 상기 캐시 제어부는, 상기 리드 커맨드 제어부에 의해 지정되는 리드 사이즈의 데이터를, 상기 외부 메모리로부터 판독하여 상기 캐시 메모리에 기입하고,
    상기 복호 대상 화상 해석부는, 복호 대상 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 상기 특징량으로서 추출하고,
    상기 캐시 라인 제어부는,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    화상 처리 장치.
  4. 제3항에 있어서, 상기 화상 처리 장치는, 동화상 부호화기를 더 구비하고,
    상기 동화상 부호화기는, 동화상에 대한 부호화 처리를 행하여 생성되는 스트림을 상기 동화상 복호 처리부에 공급하고, 상기 부호화 처리에 있어서의 부호화 정보를 상기 부호화 정보 처리부에 공급하는,
    화상 처리 장치.
  5. 동화상 복호 처리부와 캐시 메모리와 캐시 구성 제어부를 구비하고, 외부 메모리를 접속 가능한 반도체 장치로서,
    상기 캐시 구성 제어부는, 복호 대상 화상 해석부와 캐시 구성 변경 제어부와 캐시 제어부를 포함하고,
    상기 동화상 복호 처리부는, 상기 외부 메모리로부터 스트림을 읽어들이고, 읽어들인 스트림에 대하여 복호 처리를 행하고, 상기 복호 처리에 의해 생성되는 복호 화상을 상기 외부 메모리에 기입하고,
    상기 복호 대상 화상 해석부는, 상기 스트림으로부터 상기 동화상 복호 처리부에 의한 복호 대상 화상의 특징량을 추출하고,
    상기 캐시 구성 변경 제어부는, 상기 특징량에 기초하여, 상기 캐시 제어부에 대하여 상기 캐시 메모리의 캐시 미스 시의 리드 사이즈를 지정하고,
    상기 복호 대상 화상 해석부는, 상기 복호 대상 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 상기 특징량으로서 추출하고,
    상기 캐시 구성 변경 제어부는,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    반도체 장치.
  6. 제5항에 있어서, 상기 동화상 복호 처리부는, 가변 길이 부호 처리부와, 화상 신호 처리부를 구비하고,
    상기 가변 길이 부호 처리부와 상기 화상 신호 처리부는, 1픽처 단위로 파이프라인 동작하고,
    상기 복호 대상 화상 해석부는, 상기 가변 길이 부호 처리부의 복호 결과로부터 상기 특징량을 추출하고,
    상기 화상 신호 처리부는, 상기 가변 길이 부호 처리부의 복호 결과에 대하여 복호 처리를 행하는,
    반도체 장치.
  7. 동화상 복호 처리부와 캐시 메모리와 캐시 구성 제어부를 구비하고, 외부 메모리를 접속 가능한 반도체 장치로서,
    상기 캐시 구성 제어부는, 복호 대상 화상 해석부와 캐시 구성 변경 제어부와 캐시 제어부를 포함하고,
    상기 동화상 복호 처리부는, 상기 외부 메모리로부터 스트림을 읽어들이고, 읽어들인 스트림에 대하여 복호 처리를 행하고, 상기 복호 처리에 의해 생성되는 복호 화상을 상기 외부 메모리에 기입하고,
    상기 반도체 장치는, 상기 스트림에 대응하는 부호화 정보가 입력되는 부호화 정보 처리부를 더 구비하고,
    상기 복호 대상 화상 해석부는, 상기 부호화 정보 처리부를 통하여 공급되는 상기 부호화 정보로부터, 특징량을 추출하고,
    상기 캐시 구성 변경 제어부는, 상기 특징량에 기초하여, 상기 캐시 제어부에 대하여 상기 캐시 메모리의 캐시 미스 시의 리드 사이즈를 지정하고,
    상기 복호 대상 화상 해석부는, 복호 대상 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 상기 특징량으로서 추출하고,
    상기 캐시 구성 변경 제어부는,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    반도체 장치.
  8. 제7항에 있어서, 상기 반도체 장치는, 동화상을 부호화하여 상기 스트림과 상기 부호화 정보를 생성하는 동화상 부호화기를 더 구비하는,
    반도체 장치.
  9. 스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 저장되는 데이터를 일시 기억하는 캐시 메모리를 구비하고,
    상기 동화상 복호 처리부가 상기 스트림을 복호할 대상의 화상으로부터 특징량을 추출하고, 상기 특징량에 기초하여 상기 외부 메모리로부터 상기 캐시 메모리에의 캐시 필의 리드 사이즈를 변경하고,
    상기 동화상 복호 처리부가 상기 스트림을 복호할 대상의 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 상기 특징량으로서 추출하고,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    화상 처리 장치.
  10. 제9항에 있어서, 상기 동화상 복호 처리부는, 1픽처 단위로 파이프라인 동작하는, 가변 길이 부호 처리부와 화상 신호 처리부를 구비하고,
    상기 화상 처리 장치는, 상기 가변 길이 부호 처리부의 복호 결과로부터 상기 특징량을 추출하고,
    상기 화상 신호 처리부는, 상기 가변 길이 부호 처리부의 복호 결과에 대하여 복호 처리를 행하는,
    화상 처리 장치.
  11. 스트림이 입력되는 동화상 복호 처리부와, 외부 메모리에 저장되는 데이터를 일시 기억하는 캐시 메모리를 구비하는 화상 처리 장치로서,
    상기 화상 처리 장치에는, 상기 스트림에 대응하는 부호화 정보가 공급되고,
    상기 화상 처리 장치는,
    공급된 상기 부호화 정보로부터, 상기 동화상 복호 처리부가 상기 스트림을 복호할 대상의 화상에 있어서의 1픽처 내의 모든 매크로 블록에 차지하는 인트라 매크로 블록의 비율을 특징량으로서 추출하고,
    상기 특징량에 기초하여 상기 외부 메모리로부터 상기 캐시 메모리에의 캐시 필의 리드 사이즈를 변경하고,
    상기 인트라 매크로 블록의 비율이 높을수록, 상기 리드 사이즈를 작게 하고,
    상기 인트라 매크로 블록의 비율이 낮을수록, 상기 리드 사이즈를 크게 하는,
    화상 처리 장치.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020160010035A 2015-01-30 2016-01-27 화상 처리 장치 및 반도체 장치 KR102453652B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015016372A JP6438777B2 (ja) 2015-01-30 2015-01-30 画像処理装置および半導体装置
JPJP-P-2015-016372 2015-01-30

Publications (2)

Publication Number Publication Date
KR20160094308A KR20160094308A (ko) 2016-08-09
KR102453652B1 true KR102453652B1 (ko) 2022-10-12

Family

ID=55398184

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160010035A KR102453652B1 (ko) 2015-01-30 2016-01-27 화상 처리 장치 및 반도체 장치

Country Status (5)

Country Link
US (2) US9906805B2 (ko)
EP (1) EP3051816B1 (ko)
JP (1) JP6438777B2 (ko)
KR (1) KR102453652B1 (ko)
CN (1) CN105847819B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116881180A (zh) * 2017-05-19 2023-10-13 莫维迪乌斯有限公司 用于当取回像素核时降低存储器延迟的方法、系统和设备
CN110800301A (zh) * 2018-09-30 2020-02-14 深圳市大疆创新科技有限公司 编码设备的控制方法、装置及存储介质
US11294808B2 (en) 2020-05-21 2022-04-05 Micron Technology, Inc. Adaptive cache
US11422934B2 (en) 2020-07-14 2022-08-23 Micron Technology, Inc. Adaptive address tracking
US11409657B2 (en) 2020-07-14 2022-08-09 Micron Technology, Inc. Adaptive address tracking
JP7425446B2 (ja) 2020-07-21 2024-01-31 日本電信電話株式会社 参照画像キャッシュメモリ、データ要求方法及びコンピュータプログラム
US11507516B2 (en) 2020-08-19 2022-11-22 Micron Technology, Inc. Adaptive cache partitioning
CN114584786B (zh) * 2022-01-20 2024-02-13 百果园技术(新加坡)有限公司 基于视频解码的内存分配方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110213932A1 (en) * 2010-02-22 2011-09-01 Takuma Chiba Decoding apparatus and decoding method

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822760A (en) * 1994-01-31 1998-10-13 Fujitsu Limited Cache-memory system having multidimensional cache
US6009236A (en) * 1994-09-26 1999-12-28 Mitsubishi Denki Kabushiki Kaisha Digital video signal record and playback device and method for giving priority to a center of an I frame
JP3123496B2 (ja) 1998-01-28 2001-01-09 日本電気株式会社 動き補償処理方法及びシステム並びにその処理プログラムを記録した記録媒体
EP1139669A1 (en) * 2000-03-28 2001-10-04 STMicroelectronics S.r.l. Coprocessor for motion estimation in digitised video sequence encoders
US20030142818A1 (en) * 2001-09-28 2003-07-31 Nec Usa, Inc. Techniques for efficient security processing
KR100451584B1 (ko) * 2001-12-20 2004-10-08 엘지전자 주식회사 웨이블릿 변환과 움직임 추정을 이용한 동영상 부호화 및복호화 장치
GB0323284D0 (en) 2003-10-04 2003-11-05 Koninkl Philips Electronics Nv Method and apparatus for processing image data
JP4744510B2 (ja) * 2004-04-22 2011-08-10 シリコン ハイブ ビー・ヴィー データ値の多次元アレイへのパラレルなアクセスを提供するデータ処理装置
EP1739672A1 (en) * 2005-07-01 2007-01-03 Deutsche Thomson-Brandt Gmbh Method and apparatus for managing memory accesses in an AV decoder
US7752350B2 (en) * 2007-02-23 2010-07-06 International Business Machines Corporation System and method for efficient implementation of software-managed cache
JP5181325B2 (ja) * 2007-08-08 2013-04-10 国立大学法人電気通信大学 カット部検出システム及びショット検出システム並びにシーン検出システム、カット部検出方法
JP2010146205A (ja) 2008-12-17 2010-07-01 Toshiba Corp キャッシュメモリ装置及び画像処理装置
US8635405B2 (en) * 2009-02-13 2014-01-21 Nec Corporation Computational resource assignment device, computational resource assignment method and computational resource assignment program
CN101557518B (zh) * 2009-05-11 2011-12-14 华亚微电子(上海)有限公司 运动补偿方法及装置、高速缓存替换方法及装置
JP5115519B2 (ja) * 2009-05-26 2013-01-09 富士通株式会社 動画像復号装置、動画像復号方法及び動画像復号用コンピュータプログラム
JP2011097197A (ja) * 2009-10-27 2011-05-12 Yamaha Corp メモリアクセス制御装置
US9877033B2 (en) * 2009-12-21 2018-01-23 Qualcomm Incorporated Temporal and spatial video block reordering in a decoder to improve cache hits
JP5741073B2 (ja) * 2011-03-03 2015-07-01 富士通株式会社 画像符号化装置、画像符号化方法、及び画像符号化プログラム
JP6571314B2 (ja) * 2013-06-18 2019-09-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法
US10346148B2 (en) * 2013-08-12 2019-07-09 Amazon Technologies, Inc. Per request computer system instances
US9367392B2 (en) * 2014-08-01 2016-06-14 Winbond Electronics Corporation NAND flash memory having internal ECC processing and method of operation thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110213932A1 (en) * 2010-02-22 2011-09-01 Takuma Chiba Decoding apparatus and decoding method

Also Published As

Publication number Publication date
US20160227236A1 (en) 2016-08-04
CN105847819B (zh) 2020-03-06
CN105847819A (zh) 2016-08-10
JP6438777B2 (ja) 2018-12-19
EP3051816A1 (en) 2016-08-03
KR20160094308A (ko) 2016-08-09
JP2016143940A (ja) 2016-08-08
US20180139460A1 (en) 2018-05-17
US9906805B2 (en) 2018-02-27
EP3051816B1 (en) 2019-04-10

Similar Documents

Publication Publication Date Title
KR102453652B1 (ko) 화상 처리 장치 및 반도체 장치
US20170344513A1 (en) Video encoding and decoding using parallel processors
US8068545B2 (en) Method and apparatus for processing image data
US8731044B2 (en) Moving-picture processing apparatus
US8976860B2 (en) Method and apparatus for determination of motion estimation search window area utilizing adaptive sliding window algorithm
US20200007862A1 (en) Method of adaptive filtering for multiple reference line of intra prediction in video coding, video encoding apparatus and video decoding apparatus therewith
KR100881539B1 (ko) 메모리 직접 접근 방식의 이미지 데이터 구조
US8654850B2 (en) Image coding device and image coding method
US20170188033A1 (en) Method and Apparatus of Bandwidth Estimation and Reduction for Video Coding
CN106604036B (zh) 数据编码设备和数据编码方法
US20150091920A1 (en) Memory latency tolerance in block processing pipelines
US20100118961A1 (en) High-speed motion estimation apparatus and method
CN112995679A (zh) 视频的运动适应性编码
JP2009170992A (ja) 画像処理装置およびその方法、並びにプログラム
US10674160B2 (en) Parallel video encoding device and encoder configured to operate in parallel with another encoder
US7881367B2 (en) Method of video coding for handheld apparatus
JPWO2004093458A1 (ja) 動画像符号化又は復号化処理システム及び動画像符号化又は復号化処理方法
KR100686393B1 (ko) 하드웨어 구현에 적합한 움직임 예측 장치 및 그 방법
JP4676888B2 (ja) データ処理装置
US20110032993A1 (en) Image decoding device, image decoding method, integrated circuit, and receiving device
JP5803697B2 (ja) 動画像復号装置及び動画像復号方法
US20090201989A1 (en) Systems and Methods to Optimize Entropy Decoding
JP2009272948A (ja) 動画像復号化装置及び動画像復号化方法
US20120263230A1 (en) Image coding apparatus and integrated circuit
RU2557579C1 (ru) Способ и система обработки изображения

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