JP2010267117A - Audio data transfer device, transfer method and audio data processing system - Google Patents

Audio data transfer device, transfer method and audio data processing system Download PDF

Info

Publication number
JP2010267117A
JP2010267117A JP2009118582A JP2009118582A JP2010267117A JP 2010267117 A JP2010267117 A JP 2010267117A JP 2009118582 A JP2009118582 A JP 2009118582A JP 2009118582 A JP2009118582 A JP 2009118582A JP 2010267117 A JP2010267117 A JP 2010267117A
Authority
JP
Japan
Prior art keywords
audio data
data
data transfer
channels
external memory
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2009118582A
Other languages
Japanese (ja)
Inventor
Koji Yamamoto
浩二 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009118582A priority Critical patent/JP2010267117A/en
Publication of JP2010267117A publication Critical patent/JP2010267117A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To suppress deterioration of data transfer efficiency between a cache memory and an external memory storing audio data of multi-channels processed by an arithmetic unit when a cache memory system is arranged between the external memory and the arithmetic unit. <P>SOLUTION: An audio data transfer device 40 includes a buffer memory 45 and a lookahead part 44. The lookahead part 44 controls to transfer at least part of the audio data of n pieces of channels (n is an integer of two or more) stored in the external memory 1 to the buffer memory 45. In addition, the lookahead part 44 adjusts the data transfer size when the audio data of m pieces of channels (m is an integer of 1-n) is transferred between the external memory 1 and the buffer memory 45 depending on m pieces of channels processed by the arithmetic unit 30 among the audio data of n pieces of channels. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、演算装置と外部メモリ間においてオーディオデータを転送する、オーディオデータ転送装置に関する。   The present invention relates to an audio data transfer device that transfers audio data between an arithmetic device and an external memory.

近年、デジタルテレビやDVDレコーダーなどのAV機器が急速に普及している。また、5.1チャネルや7.1チャネルなどマルチチャネルのオーディオデータが規格化されたことから、AV機器においてマルチチャネルのオーディオデータを処理しなければならなくなっている。   In recent years, AV devices such as digital televisions and DVD recorders are rapidly spreading. In addition, since multi-channel audio data such as 5.1 channel and 7.1 channel has been standardized, it is necessary to process multi-channel audio data in AV equipment.

AV機器は、符号化されたデータを復号するAVデコーダを有している。非特許文献1にはAVデコーダLSIが開示されている。
AVデコーダは、ビデオやオーディオの同期再生に必要なプログラム時刻参照値(PCR:Program Clock Reference)を示すPCRカウンタ、外部から入力したストリームデータをビデオデータ、オーディオデータ、字幕情報、文字スーパー情報などに分離する多重/分離コア、ビデオデータの映像信号処理を行うMPEG4−ビデオコア、映像を高画質化するためのフィルタ処理を行うフィルタコア、オーディオデータの音声復号処理を行う音声/オーディオコアなどを有しており、これらはそれぞれ並列に動作する。
また、AVデコーダでは、回路を小型化、低消費電力化するために各モジュールを共通の外部メモリに接続して動作する。
The AV device has an AV decoder that decodes the encoded data. Non-Patent Document 1 discloses an AV decoder LSI.
The AV decoder is a PCR counter indicating a program time reference value (PCR: Program Clock Reference) necessary for synchronous playback of video and audio, and stream data input from the outside is converted into video data, audio data, subtitle information, character super information, etc. Multiplexing / separation core for separation, MPEG4-video core for video signal processing of video data, filter core for filtering processing to improve video quality, audio / audio core for audio audio decoding processing, etc. These operate in parallel.
The AV decoder operates by connecting each module to a common external memory in order to reduce the size of the circuit and reduce power consumption.

オーディオデータの音声復号処理は、一般に、演算装置としてCPU(Central Processing Unit)やDSP(Digital Signal Processor)などを使用したソフトウェア処理で行われる。CPUやDSPが高速に動作するためには、外部メモリに格納されているプログラムやデータに対するメモリアクセス時間の短縮が必須となるため、音声/オーディオコアにはプログラム及びデータの先読み機構を備えたキャッシュシステムを持つ演算装置が使用されている。   Audio data audio decoding processing is generally performed by software processing using a CPU (Central Processing Unit), a DSP (Digital Signal Processor), or the like as an arithmetic unit. In order for the CPU and DSP to operate at high speed, it is essential to shorten the memory access time for the program and data stored in the external memory. Therefore, the voice / audio core has a cache with a program and data prefetching mechanism. Arithmetic unit with system is used.

特許文献1には、先読みパターンデータに基づくデータの先読み機能、先読みパターンデータ生成機能を有するネットワークキャッシュ装置およびプログラムが開示されている。
特許文献2には、キャッシュ領域を複数のブロックで構成し、各ブロックに優先度のランク分けを行い再利用率などからランクを適宜変更することで、キャッシュ領域を効率的に利用する、キャッシュ制御プログラムおよびキャッシュ処理行うコンピュータが開示されている。
特許文献3には、キャッシュシステムを用いた演算装置およびデータ処理システムが開示されている。
Patent Document 1 discloses a network cache device and a program having a data prefetch function based on prefetch pattern data and a prefetch pattern data generation function.
Patent Document 2 discloses a cache control in which a cache area is configured by a plurality of blocks, and the priority is ranked for each block, and the rank is appropriately changed based on a reuse rate or the like, thereby efficiently using the cache area. A computer that performs a program and cache processing is disclosed.
Patent Document 3 discloses an arithmetic device and a data processing system using a cache system.

特開平09−212421号公報JP 09-212421 A 特開2003−122634号公報JP 2003-122634 A 特開2008−003929号公報JP 2008-003929 A

石川正一、浅野篤、斯波万恵「モバイル放送受信端末用LSIチップセット(2)−限定受信LSI及びAVデコーダLSI」、東芝レビューVol.59 No.11 2004年、P24−26Masakazu Ishikawa, Atsushi Asano, Masae Sonami "LSI chip set for mobile broadcast receiving terminals (2)-limited receiving LSI and AV decoder LSI", Toshiba Review Vol.59 No.11 2004, P24-26

本願の発明者は、演算装置によって処理されるマルチチャネルのオーディオデータが格納されている外部メモリと演算装置との間にキャッシュメモリシステムを配置する場合、キャッシュメモリと外部メモリとの間のデータ転送効率が悪化するという問題があることを見出した。この問題は、キャッシュメモリと外部メモリの間のデータ転送サイズと、マルチチャネルのオーディオデータのデータ構造に起因する。以下、この問題について説明する。   When the inventor of the present application places a cache memory system between an external memory storing multi-channel audio data processed by the arithmetic device and the arithmetic device, the data transfer between the cache memory and the external memory is performed. We have found that there is a problem that efficiency decreases. This problem is caused by the data transfer size between the cache memory and the external memory and the data structure of multi-channel audio data. Hereinafter, this problem will be described.

一般に、キャッシュメモリと外部メモリの間のデータ転送サイズは、キャッシュメモリ内のキャッシュライン幅および先読みするデータ量などに応じて固定のサイズとなっている。このため、例えば、演算装置が処理するデータのサイズがデータ転送サイズに比べて小さい場合、演算装置が処理するデータ以外の不要なデータが外部メモリからキャッシュメモリに転送されてしまう。また、演算装置が処理するデータがデータ転送サイズに比べて大きい場合、外部メモリへのアクセスを複数回に分割して行わなければならない。これらの、無駄なデータ転送や、メモリアクセス回数の増加が、キャッシュメモリと外部メモリの間のデータ転送効率の低下をもたらす。   In general, the data transfer size between the cache memory and the external memory is a fixed size according to the cache line width in the cache memory, the amount of data to be read ahead, and the like. For this reason, for example, when the size of the data processed by the arithmetic device is smaller than the data transfer size, unnecessary data other than the data processed by the arithmetic device is transferred from the external memory to the cache memory. If the data processed by the arithmetic unit is larger than the data transfer size, access to the external memory must be divided into a plurality of times. These wasteful data transfer and increase in the number of memory accesses cause a decrease in data transfer efficiency between the cache memory and the external memory.

また、マルチチャネル(例えば、n個のチャネル;nは2以上の整数)のオーディオデータは、n個のチャネル分のデータの集合によって1つのサンプルデータが構成されている。このため、上述したキャッシュメモリと外部メモリの間のデータ転送効率の低下が一層顕著となる。すなわち、マルチチャネルのオーディオデータに含まれる一部のチャネル(例えば、m個のチャネル;mはnより小さい整数)のみが演算装置によって処理される場合であっても、キャッシュメモリによる先読みは、n個のチャネル分のデータを含むサンプルデータ単位で行われる。よって、必要なm個のチャネル以外の不要なチャネルのデータがキャッシュメモリと外部メモリの間で転送されてキャッシュメモリに蓄積されてしまうことや、不要なチャネルのデータ転送のために外部メモリへのアクセス回数の増加が生じてしまう。   In addition, multi-channel (for example, n channels; n is an integer of 2 or more) audio data includes one sample data composed of a set of data for n channels. For this reason, the decrease in the data transfer efficiency between the cache memory and the external memory described above becomes more remarkable. That is, even when only a part of channels (for example, m channels; m is an integer smaller than n) included in the multi-channel audio data is processed by the arithmetic device, the prefetching by the cache memory is n This is performed in units of sample data including data for channels. Therefore, unnecessary channel data other than the necessary m channels are transferred between the cache memory and the external memory and accumulated in the cache memory, or the data is transferred to the external memory for unnecessary channel data transfer. The number of accesses will increase.

なお、特許文献1に開示されたネットワークキャッシュ装置およびプログラムは、キャッシュされたデータから特定のパターンで先読みデータを作成するものであり、キャッシュメモリと外部メモリ間のデータの転送効率の向上を図るものではない。
特許文献2に開示されたキャッシュ制御プログラムおよびキャッシュ処理を行うコンピュータは、過去に使用したデータをキャッシュとして保持する際にランク付けを行うことで、再利用される頻度の高いデータがキャッシュメモリ上に存在する確率を向上させるものであり、外部メモリとキャッシュメモリ間のデータの転送効率の向上を図るものではない。
特許文献3に開示されたキャッシュシステムを用いた演算装置およびデータ処理システムは、データの先読みを行う領域の開始アドレス、終了アドレス、読み出しサイズ、アドレスのオフセット情報の保持とデータの先読みを制御するロードキャッシュ/ストアキャッシュ制御部を複数有することで、キャッシュメモリが演算装置とは独立して、アクセスが要求されたアドレスと連続するアドレスに格納されたデータをキャッシュメモリに先読みすることで演算装置の待ち時間を短縮するものであり、キャッシュメモリと外部メモリ間のデータの転送効率の向上を図るものではない。
Note that the network cache apparatus and program disclosed in Patent Document 1 create prefetch data in a specific pattern from cached data, and improve the transfer efficiency of data between the cache memory and the external memory. is not.
The cache control program and the computer that performs cache processing disclosed in Patent Document 2 perform ranking when holding data used in the past as cache, so that data that is frequently reused is stored in the cache memory. It is intended to improve the probability of existing data, and not to improve data transfer efficiency between the external memory and the cache memory.
An arithmetic unit and a data processing system using a cache system disclosed in Patent Document 3 are a load for controlling the start address, the end address, the read size, the address offset information, and the data prefetching of an area where data is prefetched. By having a plurality of cache / store cache control units, the cache memory is independent of the arithmetic unit, and the data stored in the address that is consecutive to the address requested to be accessed is prefetched into the cache memory, thereby waiting for the arithmetic unit. It is intended to shorten the time and does not improve the data transfer efficiency between the cache memory and the external memory.

本発明の第1の態様にかかるオーディオデータ転送装置は、バッファメモリ及び先読み部を有する。前記先読み部は、外部メモリに格納されているn個のチャネル(ただし、nは2以上の整数)のオーディオデータのうち少なくとも一部を前記バッファメモリへ転送する処理を制御する。さらに、前記先読み部は、前記n個のチャネルのオーディオデータのうち演算装置によって処理されるm個のチャネル(ただし、mは1以上、n以下の整数)に応じて、前記m個のチャネルのオーディオデータを前記外部メモリと前記バッファメモリの間で転送する際のデータ転送サイズを調整する。   The audio data transfer apparatus according to the first aspect of the present invention includes a buffer memory and a prefetch unit. The prefetch unit controls a process of transferring at least a part of audio data of n channels (where n is an integer of 2 or more) stored in an external memory to the buffer memory. Further, the prefetching unit may determine the number of the m channels according to m channels (where m is an integer between 1 and n) of the n channels of audio data. A data transfer size is adjusted when audio data is transferred between the external memory and the buffer memory.

本発明の第2の態様にかかるオーディオデータの転送方法は、以下の(a)及び(b)を含む。
(a)n個のチャネル(ただし、nは2以上の整数)のオーディオデータのうち演算装置によって処理されるm個のチャネル(ただし、mは1以上、n以下の整数)のオーディオデータを特定すること;および
(b)前記m個のチャネルに応じて調整されたデータ転送サイズを適用して、前記m個のチャネルのオーディオデータを外部メモリからバッファメモリに転送する処理を制御すること。
The audio data transfer method according to the second aspect of the present invention includes the following (a) and (b).
(A) Identifies audio data of m channels (where m is an integer equal to or greater than 1 and equal to or less than n) to be processed by a computing device among audio data of n channels (where n is an integer equal to or greater than 2) And (b) controlling a process of transferring audio data of the m channels from an external memory to a buffer memory by applying a data transfer size adjusted according to the m channels.

上述したように、本発明の各態様によれば、n個のチャネルのオーディオデータのうち演算装置による処理対象となるm個のチャネルに応じて、外部メモリとバッファメモリの間のデータ転送サイズを調整できる。このため、演算装置による処理対象になるか否かに拘らずn個のチャネルのオーディオデータを外部メモリとバッファメモリの間で転送することに起因する無駄なデータ転送の発生およびデータ転送回数の増加を抑制できる。   As described above, according to each aspect of the present invention, the data transfer size between the external memory and the buffer memory is set according to m channels to be processed by the arithmetic unit among the n channels of audio data. Can be adjusted. For this reason, the occurrence of useless data transfer and increase in the number of data transfers caused by transferring the audio data of n channels between the external memory and the buffer memory regardless of whether or not to be processed by the arithmetic unit Can be suppressed.

上述した本発明の各態様によれば、外部メモリに格納されたマルチチャネル・オーディオデータを演算装置に供給するために取得する際のデータ転送効率の悪化を抑制することができる。   According to each aspect of the present invention described above, it is possible to suppress deterioration in data transfer efficiency when acquiring multi-channel audio data stored in an external memory so as to be supplied to an arithmetic device.

発明の実施の形態1にかかるオーディオデータ転送装置の構成図である。It is a block diagram of the audio data transfer apparatus concerning Embodiment 1 of invention. 発明の実施の形態1にかかるデータアクセス記録部の記録情報を表した模式図である。It is the schematic diagram showing the recording information of the data access recording part concerning Embodiment 1 of invention. 発明の実施の形態1にかかるオーディオデータバッファの模式図である。It is a schematic diagram of the audio data buffer concerning Embodiment 1 of invention. 発明の実施の形態1にかかるオーディオデータ転送の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process of the audio data transfer concerning Embodiment 1 of invention. 発明の実施の形態1にかかるチャネルアクセスの解析を示すフローチャートである。It is a flowchart which shows the analysis of the channel access concerning Embodiment 1 of invention. 発明の実施の形態1にかかるデータアクセス記録部に記録されている情報を表した模式図である。It is the schematic diagram showing the information currently recorded on the data access recording part concerning Embodiment 1 of invention. 発明の実施の形態1にかかる6チャネル分のデータを転送する際の模式図である。It is a schematic diagram at the time of transferring the data for 6 channels concerning Embodiment 1 of invention. 発明の実施の形態2にかかるオーディオデータ転送装置の構成図である。It is a block diagram of the audio data transfer apparatus concerning Embodiment 2 of invention.

発明の実施の形態1.
最初に、本発明の実施の形態にかかるオーディオデータ処理システム50の構成を、図1を用いて説明する。当該オーディオデータ処理システム50を構成する各要素及び動作については後に詳細に説明する。
Embodiment 1 of the Invention
First, the configuration of an audio data processing system 50 according to an embodiment of the present invention will be described with reference to FIG. Each element and operation constituting the audio data processing system 50 will be described in detail later.

オーディオデータ処理システム50は、外部メモリ1、命令キャッシュ10、CPU30、オーディオデータ転送装置40を有する。オーディオデータ転送装置40は、データキャッシュ20、データアドレス判別部41、データアクセス解析部42、データアクセス記録部43、オーディオデータ先読み部44を有する。オーディオデータ先読み部44は、オーディオデータバッファ45を有する。   The audio data processing system 50 includes an external memory 1, an instruction cache 10, a CPU 30, and an audio data transfer device 40. The audio data transfer apparatus 40 includes a data cache 20, a data address determination unit 41, a data access analysis unit 42, a data access recording unit 43, and an audio data prefetch unit 44. The audio data prefetch unit 44 has an audio data buffer 45.

CPU30は、実行するプログラムが格納されているアドレスを命令キャッシュ10に対して出力し、前記アドレスに格納されているプログラムコードを読み出し、プログラムの実行によりオーディオデータ転送装置40との間でデータの入出力を行う。さらにCPU30は、データキャッシュ20とオーディオデータ先読み部44に内部データのクリア命令を出力する。   The CPU 30 outputs the address where the program to be executed is stored to the instruction cache 10, reads the program code stored at the address, and inputs data to the audio data transfer device 40 by executing the program. Output. Further, the CPU 30 outputs an internal data clear command to the data cache 20 and the audio data prefetch unit 44.

命令キャッシュ10は、外部メモリ1にアドレスを出力し、前記アドレスに格納されているデータを読み出す。   The instruction cache 10 outputs an address to the external memory 1 and reads data stored at the address.

オーディオデータ転送装置40は、CPU30と外部メモリ1それぞれとの間でデータの入出力を行う。   The audio data transfer device 40 inputs and outputs data between the CPU 30 and the external memory 1.

データアドレス判別部41は、外部メモリ1に確保されているオーディオデータの先頭アドレスと終了アドレスをあらかじめ保持している。データアドレス判別部41は、CPU30がデータアクセスを行う場合には、CPU30がアクセスしようとするデータのアドレス情報と、データアドレス判別部41が保持するアドレス情報を比較し、CPU30がアクセスしたいデータが、オーディオデータであるか否かの判別を行う。データアドレス判別部41は、CPU30がアクセスしようとするデータがオーディオデータであると判別した場合には、データアクセス解析部42にアドレス情報を出力する。また、データアドレス判別部41は、CPU30がアクセスしようとするデータがオーディオデータであると判別した場合には、オーディオデータ先読み部44とCPU30との間でデータ転送の仲介を行い、オーディオデータ以外のデータであると判別した場合には、データキャッシュ20とCPU30との間でデータ転送の仲介を行う。   The data address discriminating unit 41 holds in advance the start address and end address of the audio data secured in the external memory 1. When the CPU 30 performs data access, the data address determination unit 41 compares the address information of the data that the CPU 30 intends to access with the address information held by the data address determination unit 41, and the data that the CPU 30 wants to access is It is determined whether or not the data is audio data. When the CPU 30 determines that the data to be accessed is audio data, the data address determination unit 41 outputs address information to the data access analysis unit 42. In addition, when the data address determining unit 41 determines that the data to be accessed by the CPU 30 is audio data, the data address determining unit 41 mediates data transfer between the audio data prefetching unit 44 and the CPU 30, When it is determined that the data is data, the data transfer is mediated between the data cache 20 and the CPU 30.

データキャッシュ20は、先読み機構を持たないキャッシュメモリであり、データアドレス判別部41と外部メモリ1それぞれとの間でオーディオ以外のデータの入出力を行う。   The data cache 20 is a cache memory having no prefetching mechanism, and inputs / outputs data other than audio between the data address determination unit 41 and the external memory 1.

データアクセス解析部42は、データアドレス判別部41によりCPU30がアクセス要求しているデータがオーディオデータであると判別された場合には、データアドレス判別部41からCPU30がアクセスするオーディオデータのアドレス情報を入力し、アドレス情報からCPU30がアクセスを要求しているオーディオデータのチャネル構成を解析し、データアクセス記録部43に結果を出力する。   When the data address discriminating unit 41 discriminates that the data requested by the CPU 30 is the audio data, the data access analyzing unit 42 obtains the address information of the audio data accessed by the CPU 30 from the data address discriminating unit 41. The CPU 30 analyzes the channel configuration of the audio data requested to be accessed from the address information, and outputs the result to the data access recording unit 43.

データアクセス記録部43は、データアクセス解析部42とオーディオデータ先読み部44に対してCPU30がアクセス要求するチャネル情報を入出力し、CPU30がアクセスを要求するチャネルへのアクセス履歴を記録する。   The data access recording unit 43 inputs / outputs channel information requested by the CPU 30 to access to the data access analyzing unit 42 and the audio data prefetching unit 44, and records the access history to the channel requested by the CPU 30.

図2は、データアクセス記録部43の記録情報の一例を示す模式図ある。オーディオデータが8チャネル構成(以降、CH1乃至CH8と称す)の場合のデータアクセス記録部43に記録されているアクセス有無情報を表し、図2において丸印がついているところが前記アクセス有無情報に該当する。図2は、CH1乃至CH6がCPU30よりアクセス中のチャネルであることを表す。   FIG. 2 is a schematic diagram illustrating an example of recorded information of the data access recording unit 43. This represents access presence / absence information recorded in the data access recording unit 43 when the audio data has an 8-channel configuration (hereinafter referred to as CH1 to CH8), and the circled in FIG. 2 corresponds to the access presence / absence information. . FIG. 2 shows that CH1 to CH6 are channels being accessed by the CPU 30.

オーディオデータ先読み部44は、データアドレス判別部41と外部メモリ1のそれぞれに対してオーディオデータの入出力を行う。オーディオデータ先読み部44は、データアクセス記録部43に記録されているアクセス有無情報に基づいて、CPU30が次にアクセスするオーディオデータを外部メモリ1から先行して読み込み、これをオーディオデータバッファ45に書き込む。   The audio data prefetch unit 44 inputs and outputs audio data to and from the data address determination unit 41 and the external memory 1. Based on the access presence / absence information recorded in the data access recording unit 43, the audio data prefetching unit 44 reads audio data to be accessed next by the CPU 30 from the external memory 1 and writes it in the audio data buffer 45. .

ここでCPUが次にアクセスするオーディオデータを格納している外部メモリ1のアドレスの予測は、オーディオデータを外部メモリ1内に、規則性をもつように格納しておくことで行うことができる。例えば、外部メモリ1の連続するアドレス上に、あらかじめチャネル順にオーディオデータが順次格納された状態としておくことで、オーディオデータ先読み部44が有しているアドレス情報から、CPU30が次にアクセスするオーディオデータを格納している外部メモリ1のアドレスを予測することができる。   Here, the prediction of the address of the external memory 1 storing the audio data to be accessed next by the CPU can be performed by storing the audio data in the external memory 1 with regularity. For example, the audio data to be accessed next by the CPU 30 from the address information held by the audio data prefetch unit 44 is obtained by previously storing the audio data sequentially in the order of the channels on consecutive addresses in the external memory 1. Can be predicted.

オーディオデータ先読み部44は、オーディオデータバッファ45に格納されているデータをデータアドレス判別部41へ出力すると共に、CPU30からアクセス要求のあったオーディオデータのアドレス情報、オーディオデータバッファ45に格納されているデータ量、データアクセス解析部42で解析したCPU30がアクセスを要求するオーディオデータのチャネル構成の情報、データアクセス記録部43に保存されたアクセス有無情報に基づき、CPU30が次にアクセスするオーディオデータを格納している外部メモリ1のアドレスを予測し、オーディオデータバッファ45に格納されているデータと外部メモリ1のデータの入れ替えを行う。ここで、データアクセス記録部43に保存されたアクセス有無情報を利用することでアクセス済みのオーディオデータを把握することができ、外部メモリとオーディオバッファ間で効率良いデータ転送を図ることができる。   The audio data prefetch unit 44 outputs the data stored in the audio data buffer 45 to the data address determination unit 41 and stores the address information of the audio data requested to be accessed from the CPU 30 in the audio data buffer 45. Based on the data amount, the channel configuration information of the audio data requested by the CPU 30 analyzed by the data access analyzing unit 42, and the access presence / absence information stored in the data access recording unit 43, the audio data to be accessed next by the CPU 30 is stored. The address of the external memory 1 is predicted, and the data stored in the audio data buffer 45 and the data of the external memory 1 are exchanged. Here, the accessed audio data can be grasped by using the access presence / absence information stored in the data access recording unit 43, and efficient data transfer between the external memory and the audio buffer can be achieved.

ここで、オーディオデータ先読み部44は、データアクセス記録部43に記録された記録内容を参照せず、あらかじめオーディオデータ先読み部44が保持していた、CPU30がアクセスを要求するオーディオデータのチャネル構成の情報やオーディオデータが格納されている外部メモリ1のアドレス情報に基づいて、オーディオバッファ45にオーディオデータを入力することができる。また、データアドレス判別部41から入力されたアドレス情報に基づいて、外部メモリ1からオーディオデータバッファ45にオーディオデータを入力することもできる。   Here, the audio data prefetching unit 44 does not refer to the recording contents recorded in the data access recording unit 43, but has a channel configuration of the audio data that the audio data prefetching unit 44 previously holds and requests access by the CPU 30. Audio data can be input to the audio buffer 45 based on the address information of the external memory 1 in which information and audio data are stored. Also, audio data can be input from the external memory 1 to the audio data buffer 45 based on the address information input from the data address determination unit 41.

図3は、オーディオデータバッファ45の模式図であり、図3(a)はそれぞれのバンクにデータが何も入力されていない状態を示す。なお図3において、100〜107、200〜207、300〜307、400〜407、500〜507はそれぞれオーディオデータを表す。オーディオデータバッファ45は2つのバンクから構成されており、CPU30がアクセスするデータがバンク1からバンク2、バンク2からバンク1へ移動した場合にデータの入れ替えを行う。1バンク当たりのデータサイズは、CPU30の処理速度とオーディオデータ先読み部44と外部メモリ1のデータ転送速度に基づき、CPU30が次に同じバンクのデータへアクセスするまでにデータの入れ替えが終了するデータサイズとすると良い。   FIG. 3 is a schematic diagram of the audio data buffer 45. FIG. 3A shows a state in which no data is input to each bank. In FIG. 3, reference numerals 100 to 107, 200 to 207, 300 to 307, 400 to 407, and 500 to 507 represent audio data, respectively. The audio data buffer 45 is composed of two banks. When the data accessed by the CPU 30 moves from the bank 1 to the bank 2 and from the bank 2 to the bank 1, the data is exchanged. The data size per bank is based on the processing speed of the CPU 30, the data transfer speed of the audio data prefetch unit 44 and the external memory 1, and the data size at which the data replacement is completed before the CPU 30 accesses the data in the same bank next time. And good.

以下にオーディオデータバッファ45と外部メモリ1のデータ入れ替え動作を示す。   The data exchange operation between the audio data buffer 45 and the external memory 1 will be described below.

オーディオデータ先読み部44は、CPU30が参照したアドレスに格納されているデータがオーディオデータバッファ45に格納されていない場合は、オーディオデータバッファ45の全てのデータを外部メモリ1へ書き込み、新たにオーディオデータバッファ45にオーディオデータバッファ45のバッファサイズ分の前記CPU30が参照したアドレスに格納されているデータを外部メモリ1から読み込み、オーディオデータバッファ45へ書き込む。図3(b)に、オーディオバッファ45にデータを書き込んだ状態の例を示す。   When the data stored at the address referred to by the CPU 30 is not stored in the audio data buffer 45, the audio data prefetch unit 44 writes all the data in the audio data buffer 45 to the external memory 1 and newly adds the audio data. Data stored in the buffer 45 at the address referred to by the CPU 30 corresponding to the buffer size of the audio data buffer 45 is read from the external memory 1 and written to the audio data buffer 45. FIG. 3B shows an example of a state where data is written in the audio buffer 45.

CPU30が参照したアドレスに格納されているデータがオーディオデータバッファ45のバンク間を移動する場合には、データアクセス記録部43にアクセスチャネルの情報が記録されていなければ、CPU30がバンク間を移動する前にアクセスを行っていた方のバンクの全データを外部メモリ1へ書き込み、外部メモリ1へ書き込みを行った方のバンクに1バンク分のサイズのデータを読み込む。図3(c)に、バンク1が外部メモリ1へデータを書き込んだ後に、バンク1からデータの読み込みを行った状態の例を示す。図3(c)は図3(b)の状態から、オーディオデータ100〜107が格納されていた場所に、オーディオデータ300〜307が格納された状態となったこと示している。   When data stored at an address referenced by the CPU 30 moves between banks of the audio data buffer 45, the CPU 30 moves between banks unless access channel information is recorded in the data access recording unit 43. All data in the bank that was previously accessed is written to the external memory 1, and data of the size of one bank is read into the bank that has been written to the external memory 1. FIG. 3C shows an example of a state in which data is read from the bank 1 after the bank 1 writes data to the external memory 1. FIG. 3C shows that the audio data 300 to 307 are stored in the location where the audio data 100 to 107 are stored from the state of FIG.

データアクセス記録部43にアクセスチャネルの情報が記録されている場合は、CPU30がバンク間を移動する前にアクセスを行っていた方のバンクのデータから、データアクセス記録部43の内容に基づいて、特定チャネルについてCPU30がアクセスしているオーディオデータだけを外部メモリ1へ書き込み、外部メモリ1へ書き込みを行った領域に、特定チャネルについてCPU30がアクセスしているオーディオデータだけを外部メモリ1から読み込む。図3(d)に、CPU30がアクセスしているチャネルのデータだけを、バンク1が外部メモリ1へデータを書き込んだ後にバンク1からデータの読み込みを行った状態の例を示す。図3(d)は図3(b)の状態から、100、101、105、106が格納されていた場所にオーディオデータ300、301、305、306が格納された状態となったことを示している。   When the information of the access channel is recorded in the data access recording unit 43, based on the contents of the data access recording unit 43, the data of the bank to which the CPU 30 was accessing before moving between the banks is determined. Only the audio data accessed by the CPU 30 for the specific channel is written to the external memory 1, and only the audio data accessed by the CPU 30 for the specific channel is read from the external memory 1 into the area where the data is written to the external memory 1. FIG. 3D shows an example of a state in which only data of the channel accessed by the CPU 30 is read from the bank 1 after the bank 1 has written the data to the external memory 1. FIG. 3D shows that the audio data 300, 301, 305, and 306 are stored in the location where 100, 101, 105, and 106 are stored from the state of FIG. Yes.

データアクセス記録部43にチャネル情報が記録済みで、かつこれまでアクセスしていたバンク内のデータにCPU30が一度もアクセスしていないデータがある場合は、データアクセス記録部43のアクセス有無情報を全てクリアし、オーディオデータバッファ45に格納されている全てのデータを外部メモリ1に書き込み、新たにオーディオデータバッファ45にオーディオデータバッファ45のバッファサイズ分の前記CPU30が参照したアドレスに格納されているデータを外部メモリ1よりオーディオデータバッファ45に読み込む。図3(e)に、外部メモリ1からオーディオデータバッファ45にオーディオデータを新たに読み込んだ状態の例を示している。図3(e)では、オーディオバッファ45にこれまで格納されていたデータとは異なるデータが、オーディオバッファ45に格納された状態となったことを示している。   If the channel information has been recorded in the data access recording unit 43 and there is data that the CPU 30 has never accessed in the data in the bank that has been accessed so far, all the access presence / absence information in the data access recording unit 43 is stored. Clear, write all data stored in the audio data buffer 45 to the external memory 1, and newly store the data stored in the audio data buffer 45 at the address referenced by the CPU 30 for the buffer size of the audio data buffer 45 Are read from the external memory 1 into the audio data buffer 45. FIG. 3E shows an example of a state where audio data is newly read from the external memory 1 into the audio data buffer 45. FIG. 3E shows that data different from the data stored in the audio buffer 45 so far has been stored in the audio buffer 45.

CPU30が処理を終了する場合はCPU30からオーディオデータ先読み部44にオーディオデータバッファ45の内部データクリア要求を行う。オーディオデータ先読み部44はCPU30からの内部データクリア要求を受けると、オーディオデータバッファ45に格納されている全てのデータを外部メモリへ書き込むと共に、データアクセス記録部43のアクセス有無情報を全てクリアする。   When the CPU 30 finishes the process, the CPU 30 requests the audio data prefetch unit 44 to clear the internal data of the audio data buffer 45. When receiving the internal data clear request from the CPU 30, the audio data prefetch unit 44 writes all the data stored in the audio data buffer 45 to the external memory and clears all access presence / absence information in the data access recording unit 43.

図4は、オーディオデータ処理システム50及びオーディオデータ転送装置40の動作の一例をフローチャートで表したものである。
図4に示すように、まずCPU30がデータを取得するためのアクセス要求が出力される(ステップS10)。次に、このアクセス要求に含まれるアドレス情報から、該当するアドレスに格納された情報がオーディオデータであるか否かの判別を行う(ステップS11)。
FIG. 4 is a flowchart showing an example of the operations of the audio data processing system 50 and the audio data transfer device 40.
As shown in FIG. 4, first, the CPU 30 outputs an access request for acquiring data (step S10). Next, it is determined from the address information included in the access request whether or not the information stored at the corresponding address is audio data (step S11).

ステップS11でオーディオデータであると判別された場合には、オーディオデータ先読み部44にアドレス情報を転送し(ステップS12)、アドレス情報からアクセス要求されているチャネルデータの解析を行う(ステップS13)。解析結果は、データアクセス解析部に記録する(ステップS14)。オーディオデータ先読み部44は、現在要求されている外部メモリのアドレス情報と、ステップS14で記録された情報に基づいて、次にCPU30が外部メモリ1から要求する、特定のチャネルのオーディオデータを先読みする(ステップS15)。CPU30は、オーディオバッファに先読みされたオーディオデータを入力し、順次処理する(ステップS16)。   If it is determined in step S11 that the data is audio data, the address information is transferred to the audio data prefetch unit 44 (step S12), and the channel data requested to be accessed from the address information is analyzed (step S13). The analysis result is recorded in the data access analysis unit (step S14). The audio data prefetch unit 44 prefetches audio data of a specific channel that the CPU 30 next requests from the external memory 1 based on the currently requested external memory address information and the information recorded in step S14. (Step S15). The CPU 30 inputs the pre-read audio data to the audio buffer and sequentially processes it (step S16).

ステップS11でオーディオデータではないと判別された場合には、データキャッシュ20にアドレス情報を転送し(ステップS17)、CPU30が必要に応じて処理を行う(ステップS18)。   If it is determined in step S11 that the data is not audio data, the address information is transferred to the data cache 20 (step S17), and the CPU 30 performs processing as necessary (step S18).

図5は、データアクセス解析部42が、CPU30がアクセスするオーディオデータのアドレス情報を解析し、データアクセス記録部43にチャネル情報を書き込む際の手順の一例を示したフローチャートである。   FIG. 5 is a flowchart showing an example of a procedure when the data access analysis unit 42 analyzes the address information of the audio data accessed by the CPU 30 and writes the channel information in the data access recording unit 43.

データアクセス解析部42は、処理開始前は待機状態とし、処理の開始後にはCPU30がオーディオデータへのアクセスを行ったか否かの判別を行う。判別は、データアドレス判別部41が保持するオーディオデータのアドレス情報と、CPU30が参照したアドレスの比較により行う。CPU30がオーディオデータへのアクセスを行ったと判別された場合には、データアドレス判別部41からデータアクセス解析部42へ、CPU30が参照したアドレスを入力する。CPU30が行ったアクセスがオーディオデータに対してではないと判別された場合には、処理を繰り返す(ステップS20)。   The data access analysis unit 42 is in a standby state before the start of processing, and determines whether the CPU 30 has accessed audio data after the start of processing. The determination is performed by comparing the address information of the audio data held by the data address determination unit 41 with the address referred to by the CPU 30. When it is determined that the CPU 30 has accessed the audio data, the address referred to by the CPU 30 is input from the data address determination unit 41 to the data access analysis unit 42. If it is determined that the access performed by the CPU 30 is not for audio data, the process is repeated (step S20).

データアクセス解析部42は、データアドレス判別部41からCPU30がアクセスしたオーディオデータのアドレスが入力されたら、前記入力されたアドレスに基づき、CPU30がアクセスしたオーディオデータがどのチャネルであるかを判別する(ステップS21)。このとき、オーディオチャネルは、例えば式1により求めることができる。ここで%は割り算の余りを計算結果として返す、剰余の演算子を示す。
オーディオチャネル={(A−B)/C%D}+1・・・・式1
A:CPUのアクセスアドレス
B:オーディオデータ領域の先頭アドレス
C:1チャネル当たりのデータサイズ
D:総チャネル数
When the address of the audio data accessed by the CPU 30 is input from the data address determination unit 41, the data access analysis unit 42 determines which channel the audio data accessed by the CPU 30 is based on the input address ( Step S21). At this time, the audio channel can be obtained by Equation 1, for example. Here,% indicates a remainder operator that returns the remainder of division as a calculation result.
Audio channel = {(A−B) / C% D} +1.
A: CPU access address B: Start address of audio data area C: Data size per channel D: Total number of channels

データアクセス解析部42は、特定チャネルについてCPU30がアクセスしたオーディオデータがアクセス済みであるか否かを、データアクセス記録部43のアクセス有無情報に基づいて判別する(ステップS22)。CPU30がアクセスしたチャネルがアクセス済みの場合には、データアクセス記録部43への書き込みを終了する。CPU30がアクセスしたチャネルがアクセス済みでない場合は、特定チャネルについてCPU30がアクセスしたオーディオデータがアクセス済みであると、データアクセス記録部43に書き込み(ステップS23)、データアクセス解析部42は待機状態に戻る。   The data access analysis unit 42 determines whether the audio data accessed by the CPU 30 for the specific channel has been accessed based on the access presence / absence information of the data access recording unit 43 (step S22). When the channel accessed by the CPU 30 has been accessed, the writing to the data access recording unit 43 is terminated. When the channel accessed by the CPU 30 is not accessed, if the audio data accessed by the CPU 30 for the specific channel has been accessed, the data is recorded in the data access recording unit 43 (step S23), and the data access analyzing unit 42 returns to the standby state. .

図6は、CPU30が、不連続なチャネルを含んだチャネル構成でのデータアクセスを行う場合において、アクセスチャネルの情報がデータアクセス記録部43に記録されている状態を示している。この場合は、データサイズ優先モードとアクセス回数優先モードのいずれかを選択し、データ転送を行う。   FIG. 6 shows a state in which access channel information is recorded in the data access recording unit 43 when the CPU 30 performs data access in a channel configuration including discontinuous channels. In this case, either the data size priority mode or the access count priority mode is selected to perform data transfer.

データサイズ優先モードでは、不連続なチャネルを含んだチャネル構成の場合には、その前後のチャネルでデータ転送を分割する。図6に示すように、CPU30がCH1、CH2、CH6、CH7のオーディオデータに対してアクセスする場合は、CH1とCH2の2チャネル分のデータ転送とCH6とCH7の2チャネル分のデータ転送の2回にデータ転送を分割する。これにより、不要なデータの転送を行わないようにすることができ、データサイズを小さくすることができる。   In the data size priority mode, in the case of a channel configuration including discontinuous channels, data transfer is divided by the channels before and after the channel configuration. As shown in FIG. 6, when the CPU 30 accesses the audio data of CH1, CH2, CH6, and CH7, data transfer for 2 channels of CH1 and CH2 and data transfer of 2 channels of CH6 and CH7 are performed. Divide the data transfer into times. As a result, unnecessary data can be prevented from being transferred, and the data size can be reduced.

アクセス回数優先モードではデータ転送回数が1回で行われることを優先し、CPU30がアクセスを要求するオーディオデータについて、チャネル構成が不連続である場合において、CPU30が使用を予定していないチャネルのデータも含めてデータ転送を行う。図6に示すように、CPU30がCH1、CH2、CH6、CH7のオーディオデータに対してアクセスする場合は、CH1からCH7までの7チャネル分のデータを1度のデータ転送で転送する。   In the access count priority mode, priority is given to the number of data transfers performed once, and for audio data that the CPU 30 requests access to, data of channels that the CPU 30 does not plan to use when the channel configuration is discontinuous. Including data transfer. As shown in FIG. 6, when the CPU 30 accesses the audio data of CH1, CH2, CH6, and CH7, data for 7 channels from CH1 to CH7 are transferred by one data transfer.

図7は、CPU30が6チャネル分のデータにアクセスする際の、外部メモリ1からオーディオデータバッファ45へのデータ転送の模式図である。データ転送は、アクセスしたいデータのアドレスとサイズの情報を送信したり、他のモジュールがバスを使用中の場合は転送が終わるまで待ったりする調停期間と、調停期間に続いてデータの送受信を行うデータ転送期間から構成される。   FIG. 7 is a schematic diagram of data transfer from the external memory 1 to the audio data buffer 45 when the CPU 30 accesses data for six channels. Data transfer is an arbitration period in which information on the address and size of data to be accessed is transmitted, or when another module is using the bus, waiting until the transfer is completed, and data is transmitted and received following the arbitration period. It consists of a data transfer period.

図7(a)及び(b)は、本実施の形態にかかるオーディオデータ転送装置40のデータの転送効率が良いことを説明するための比較例である。また、図7(c)は、オーディオデータ転送装置40による転送を示している。   FIGS. 7A and 7B are comparative examples for explaining that the data transfer efficiency of the audio data transfer apparatus 40 according to the present embodiment is good. FIG. 7C shows transfer by the audio data transfer device 40.

図7(a)は、1回のデータ転送で送受信するデータの量が2チャネル分であり、6チャネルのデータを複数回に分割して転送する場合の例である。この場合、調停期間をCH1、CH2のデータ転送前に設けるのと同様に、CH3、CH4のデータ転送とCH5、CH6のデータ転送についても、調停期間を設ける必要がある。この場合のデータ転送は、調停期間、CH1のデータ転送、CH2のデータ転送、調停期間、CH3のデータ転送、CH4のデータ転送、調停期間、CH5のデータ転送、CH6のデータ転送となり、複数の調停期間を必要とすることから、全体のデータ転送時間は長くなってしまう。   FIG. 7A shows an example in which the amount of data transmitted and received in one data transfer is 2 channels, and 6-channel data is divided and transferred in multiple times. In this case, it is necessary to provide an arbitration period for the data transfer of CH3 and CH4 and the data transfer of CH5 and CH6 as well as providing the arbitration period before the data transfer of CH1 and CH2. The data transfer in this case is an arbitration period, CH1 data transfer, CH2 data transfer, arbitration period, CH3 data transfer, CH4 data transfer, arbitration period, CH5 data transfer, and CH6 data transfer. Since a period is required, the entire data transfer time becomes long.

図7(b)は、CPU30がアクセスするオーディオデータのチャネル構成にかかわらず一定の転送サイズでデータ転送が行われる例である。図7(b)では、1回のデータ転送で送受信するデータの量が8チャネル分であり、CPU30がアクセスするオーディオデータのチャネル構成がCH1乃至CH6までの6チャネル分だけの場合の例である。この場合は、調停期間、CH1のデータ転送、CH2のデータ転送、CH3のデータ転送、CH4のデータ転送、CH5のデータ転送、CH6のデータ転送、CH7のデータ転送、CH8のデータ転送を一連の処理として行うため、CPU30がアクセスすることを予定しないCH7、CH8のデータまで転送されてしまい、全体のデータ転送時間が長くなってしまう。   FIG. 7B is an example in which data transfer is performed with a fixed transfer size regardless of the channel configuration of audio data accessed by the CPU 30. FIG. 7B shows an example in which the amount of data transmitted and received in one data transfer is 8 channels and the channel configuration of audio data accessed by the CPU 30 is only 6 channels from CH1 to CH6. . In this case, a series of processes including an arbitration period, CH1 data transfer, CH2 data transfer, CH3 data transfer, CH4 data transfer, CH5 data transfer, CH6 data transfer, CH7 data transfer, and CH8 data transfer As a result, even the data of CH7 and CH8 that the CPU 30 does not plan to access is transferred, and the entire data transfer time becomes longer.

本実施の形態では、データアクセス記録部43に記録されたチャネル構成に基づいてCPU30がアクセスしているオーディオデータのデータサイズに合わせてデータ転送を行う。この図7(c)に示すようにCPU30がアクセスするオーディオデータのチャネル構成がCH1からCH6までの6チャネル分だけの場合、データ転送が調停期間、CH1のデータ転送、CH2のデータ転送、CH3のデータ転送、CH4のデータ転送、CH5のデータ転送、CH6のデータ転送となる。1回のアクセスで必要な6チャネル分のデータだけを転送するため、図7(a)や図7(b)に示した例よりデータの転送効率が良く、転送時間を短縮することができる。   In the present embodiment, data transfer is performed in accordance with the data size of the audio data being accessed by the CPU 30 based on the channel configuration recorded in the data access recording unit 43. As shown in FIG. 7C, when the channel configuration of the audio data accessed by the CPU 30 is only 6 channels from CH1 to CH6, the data transfer is an arbitration period, the data transfer of CH1, the data transfer of CH2, the data transfer of CH3 Data transfer, CH4 data transfer, CH5 data transfer, and CH6 data transfer. Since only 6 channels of data required for one access are transferred, the data transfer efficiency is better than the examples shown in FIGS. 7A and 7B, and the transfer time can be shortened.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、オーディオデータバッファ45のバンクの入れ替えにおいて、外部メモリ1に格納されている特定のチャネルのオーディオデータをオーディオデータバッファ45の特定のブロックに割り当てるようにすることで、CPU30がオーディオデータバッファ45に保持されている特定チャネルのオーディオデータを探索しやすい構成とすることもできる。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention. For example, when replacing the banks of the audio data buffer 45, the CPU 30 assigns the audio data of a specific channel stored in the external memory 1 to a specific block of the audio data buffer 45, so that the CPU 30 stores the audio data buffer 45. It is also possible to make it easy to search for audio data of a specific channel that is held.

発明の実施の形態2.
図8は、実施の形態2のオーディオデータ転送装置の構成図であり、CPU30がデータアクセス記録部43を書き換えて動作する方法における構成図である。
Embodiment 2 of the Invention
FIG. 8 is a configuration diagram of the audio data transfer apparatus according to the second embodiment, and is a configuration diagram in a method in which the CPU 30 operates by rewriting the data access recording unit 43.

データアクセス解析部42がなく、新たにCPU30からデータアクセス記録部43に、CPU30がアクセスするオーディオデータのチャネル構成に関する情報を出力することとした点で実施の形態1の構成とは異なる。   The configuration differs from that of the first embodiment in that the data access analysis unit 42 is not provided, and information regarding the channel configuration of audio data accessed by the CPU 30 is newly output from the CPU 30 to the data access recording unit 43.

実施の形態1では、データアクセス解析部42は、CPU30が参照するアドレス情報に基づいてチャネル構成の解析を行い、その結果をデータアクセス記録部43へ記録を行っていた。一方、実施の形態2ではCPU30がオーディオデータにアクセスする前にアクセスするチャネル構成をデータアクセス記録部43へ書き込み、その後、オーディオデータにアクセスを行う。   In the first embodiment, the data access analysis unit 42 analyzes the channel configuration based on the address information referred to by the CPU 30 and records the result in the data access recording unit 43. On the other hand, in the second embodiment, the channel configuration to be accessed before the CPU 30 accesses the audio data is written in the data access recording unit 43, and then the audio data is accessed.

オーディオデータ先読み部44は、データアクセス記録部43に書き込まれているアクセス有無情報を参照し、オーディオデータバッファ45と外部メモリ1とのデータ転送を行う。これにより、実施の形態1と同等の効果が得られる。   The audio data prefetch unit 44 refers to the access presence / absence information written in the data access recording unit 43 and transfers data between the audio data buffer 45 and the external memory 1. Thereby, an effect equivalent to that of the first embodiment can be obtained.

また、実施の形態2では、CPU30がオーディオデータにアクセスする以前にデータアクセス記録部43にアクセスするチャネル構成を記録してから、オーディオデータにアクセスを行う。そのため、オーディオデータ先読み部44は最初のオーディオデータアクセスからCPU30のアクセスするオーディオデータのチャネル構成に合わせたサイズでオーディオデータバッファ45と外部メモリ1とのデータ転送を行うことができる。   In the second embodiment, the audio data is accessed after recording the channel configuration for accessing the data access recording unit 43 before the CPU 30 accesses the audio data. Therefore, the audio data prefetch unit 44 can perform data transfer between the audio data buffer 45 and the external memory 1 with a size matching the channel configuration of the audio data accessed by the CPU 30 from the first audio data access.

実施の形態2で用いる各構成部は、実施の形態1に記載の各構成部と同様の機能を有するものであり、詳細な説明は省略する。   Each component used in the second embodiment has the same function as each component described in the first embodiment, and detailed description thereof is omitted.

なお、実施の形態2の装置でのオーディオデータ処理システム50及びオーディオデータ転送装置40の動作の流れは、図4のフローチャートにおいて、アドレス解析を行うステップS13が無く、CPU30がオーディオデータにアクセスする以前に、データアクセス記録部43にアクセスするチャネル構成をあらかじめ記録しておくステップを有するものとなる。   The operation flow of the audio data processing system 50 and the audio data transfer device 40 in the apparatus according to the second embodiment is the same as that shown in the flowchart of FIG. 4 before step S13 for performing address analysis and before the CPU 30 accesses the audio data. And a step of previously recording a channel configuration for accessing the data access recording unit 43.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、実施の形態1及び実施の形態2について、データバッファ45はリード及びライトの両方を行う必要はなく、リードアクセスのみであっても良い。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention. For example, in the first and second embodiments, the data buffer 45 does not need to perform both reading and writing, and may be only read access.

1 外部メモリ
10 命令キャッシュ
20 データキャッシュ
30 CPU
40 オーティオデータ転送装置
41 データアドレス判別部
42 データアクセス解析部
43 データアクセス記録部
44 オーディオデータ先読み部
45 オーディオデータバッファ
50 オーディオデータ処理システム
1 External memory 10 Instruction cache 20 Data cache 30 CPU
40 Audio Data Transfer Device 41 Data Address Determination Unit 42 Data Access Analysis Unit 43 Data Access Recording Unit 44 Audio Data Prefetching Unit 45 Audio Data Buffer 50 Audio Data Processing System

Claims (15)

バッファメモリと、
外部メモリに格納されているn個のチャネル(ただし、nは2以上の整数)のオーディオデータのうち少なくとも一部を前記バッファメモリへ転送する処理を制御する先読み部と、
を備え、
前記先読み部は、前記n個のチャネルのオーディオデータのうち演算装置によって処理されるm個のチャネル(ただし、mは1以上、n以下の整数)に応じて、前記m個のチャネルのオーディオデータを前記外部メモリと前記バッファメモリの間で転送する際のデータ転送サイズを調整する、
オーディオデータ転送装置。
Buffer memory,
A prefetch unit that controls a process of transferring at least a part of audio data of n channels (where n is an integer of 2 or more) stored in an external memory to the buffer memory;
With
The prefetching unit is configured to perform audio data of the m channels according to m channels (m is an integer of 1 to n) of the n channels of audio data. Adjusting the data transfer size when transferring between the external memory and the buffer memory,
Audio data transfer device.
前記先読み部は、前記m個のチャネルのオーディオデータを取得するために必要な前記バッファメモリと前記外部メモリの間のデータ転送回数が少なくなるように、前記データ転送サイズを調整する、請求項1に記載のオーディオデータ転送装置。   The prefetch unit adjusts the data transfer size so that the number of times of data transfer between the buffer memory and the external memory required for acquiring audio data of the m channels is reduced. The audio data transfer device described in 1. 前記先読み部は、前記m個のチャネルのオーディオデータを取得するために必要な前記バッファメモリと前記外部メモリの間の1回あたりのデータ転送サイズが小さくなるように、前記データ転送サイズを調整する、請求項1または請求項2に記載のオーディオデータ転送装置。   The prefetching unit adjusts the data transfer size so that a data transfer size per time between the buffer memory and the external memory necessary for acquiring the audio data of the m channels is reduced. The audio data transfer apparatus according to claim 1 or 2. 前記先読み部は、前記演算装置が前記外部メモリから前記オーディオデータを取得するために出力するアドレス情報に基づいて、前記m個のチャネルを特定する、
請求項1〜請求項3のいずれかに記載のオーディオデータ転送装置。
The prefetching unit identifies the m channels based on address information output by the arithmetic device to acquire the audio data from the external memory;
The audio data transfer device according to any one of claims 1 to 3.
前記先読み部は、前記演算装置から前記m個のチャネルを特定する通知を受ける、
請求項1〜請求項4のいずれかに記載のオーディオデータ転送装置。
The prefetching unit receives a notification identifying the m channels from the arithmetic unit;
The audio data transfer device according to any one of claims 1 to 4.
前記演算装置が前記外部メモリにアクセスした履歴に基づき、前記先読み部が、次に取得する前記m個のチャネルのオーディオデータを特定する
請求項1〜請求項5のいずれかに記載のオーディオデータ転送装置。
The audio data transfer according to any one of claims 1 to 5, wherein the prefetching unit specifies audio data of the m channels to be acquired next based on a history of the arithmetic device accessing the external memory. apparatus.
前記演算装置がアクセスするデータがオーディオデータであるかを判別するデータアドレス判別部と、前記データがオーディオデータでない場合に前記データをキャッシュするデータキャッシュ部をさらに備える
請求項1〜請求項6のいずれかに記載のオーディオデータ転送装置。
The data address determination unit for determining whether the data accessed by the arithmetic unit is audio data, and the data cache unit for caching the data when the data is not audio data. An audio data transfer device according to claim 1.
n個のチャネル(ただし、nは2以上の整数)のオーディオデータのうち演算装置によって処理されるm個のチャネル(ただし、mは1以上、n以下の整数)のオーディオデータを特定する第1のオーディオデータ特定ステップと、
前記m個のチャネルに応じて調整されたデータ転送サイズを適用して、前記m個のチャネルのオーディオデータを外部メモリからバッファメモリに転送する処理を制御する転送制御ステップと、
を含む、オーディオデータの転送方法。
First of identifying audio data of m channels (where m is an integer equal to or greater than 1 and equal to or less than n) to be processed by a computing device among audio data of n channels (where n is an integer equal to or greater than 2) Audio data identification step,
A transfer control step of controlling a process of transferring audio data of the m channels from an external memory to a buffer memory by applying a data transfer size adjusted according to the m channels;
Including audio data transfer method.
前記m個のチャネルのオーディオデータを取得するために必要な前記バッファメモリと前記外部メモリの間のデータ転送回数が少なくなるように、前記データ転送サイズを調整するデータ転送サイズ調整ステップ、
をさらに含む、請求項8に記載のオーディオデータ転送方法。
A data transfer size adjustment step of adjusting the data transfer size so that the number of times of data transfer between the buffer memory and the external memory required for acquiring the audio data of the m channels is reduced;
The audio data transfer method according to claim 8, further comprising:
前記m個のチャネルのオーディオデータを取得するために必要な前記バッファメモリと前記外部メモリの間の1回あたりのデータ転送サイズが小さくなるように、前記データ転送サイズを調整するデータ転送サイズ調整ステップ、
をさらに含む、請求項8または請求項9に記載のオーディオデータ転送方法。
A data transfer size adjustment step for adjusting the data transfer size so that a data transfer size per time between the buffer memory and the external memory required for acquiring the audio data of the m channels is reduced. ,
The audio data transfer method according to claim 8, further comprising:
前記第1のオーディオデータ特定ステップは、前記演算装置が前記外部メモリから前記オーディオデータを取得するために出力するアドレス情報に基づいて行われる
請求項8〜請求項10のいずれかに記載のオーディオデータ転送方法。
The audio data according to any one of claims 8 to 10, wherein the first audio data specifying step is performed based on address information output by the arithmetic device to acquire the audio data from the external memory. Transfer method.
前記演算装置から前記m個のチャネルを特定する通知を受けるチャネル特定通知受信ステップ
をさらに含む、請求項8〜請求項11のいずれかに記載のオーディオデータ転送方法。
12. The audio data transfer method according to claim 8, further comprising a channel specification notification receiving step of receiving a notification specifying the m channels from the arithmetic device.
前記演算装置が前記外部メモリにアクセスした履歴に基づき、次に取得する前記m個のチャネルのオーディオデータを特定する第2のオーディオデータ特定ステップ
をさらに含む、請求項8〜請求項12のいずれかに記載のオーディオデータ転送方法。
13. The audio data specifying step according to claim 8, further comprising a second audio data specifying step of specifying audio data of the m channels to be acquired next based on a history of access to the external memory by the arithmetic device. The audio data transfer method described in 1.
前記演算装置がアクセスするデータがオーディオデータであるかを判別するオーディオデータ判別ステップと、
前記データがオーディオデータでない場合にデータキャッシュ部に前記データをキャッシュするデータキャッシュステップと、
を含む、請求項8〜請求項13のいずれかに記載のオーディオデータ転送方法。
An audio data discriminating step for discriminating whether the data accessed by the arithmetic unit is audio data;
A data cache step of caching the data in a data cache unit when the data is not audio data;
The audio data transfer method according to claim 8, comprising:
前記演算装置と、前記外部メモリと、
請求項1から請求項7のいずれかに記載のオーディオデータ転送装置を備える
オーディオデータ処理システム。
The arithmetic unit, the external memory,
An audio data processing system comprising the audio data transfer device according to any one of claims 1 to 7.
JP2009118582A 2009-05-15 2009-05-15 Audio data transfer device, transfer method and audio data processing system Pending JP2010267117A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009118582A JP2010267117A (en) 2009-05-15 2009-05-15 Audio data transfer device, transfer method and audio data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009118582A JP2010267117A (en) 2009-05-15 2009-05-15 Audio data transfer device, transfer method and audio data processing system

Publications (1)

Publication Number Publication Date
JP2010267117A true JP2010267117A (en) 2010-11-25

Family

ID=43364028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009118582A Pending JP2010267117A (en) 2009-05-15 2009-05-15 Audio data transfer device, transfer method and audio data processing system

Country Status (1)

Country Link
JP (1) JP2010267117A (en)

Similar Documents

Publication Publication Date Title
US9477476B2 (en) Fusing immediate value, write-based instructions in instruction processing circuits, and related processor systems, methods, and computer-readable media
CN102595240B (en) Video signal/image-decoding system and corresponding video signal/image decoding method
JP5868136B2 (en) Variable resolution processing of frame type data
TWI236591B (en) Method and apparatus for determining a dynamic random access memory page management implementation
CN102067088A (en) Multiprocessor
US9411519B2 (en) Implementing enhanced performance flash memory devices
KR101812300B1 (en) Allocation of memory buffers in computing system with multiple memory channels
US20120239873A1 (en) Memory access system and method for optimizing SDRAM bandwidth
CN109801659B (en) DRAM bank activation management
KR101757355B1 (en) Method and apparatus for cache access mode selection
AU2014301874B2 (en) Data writing method and memory system
JP2002041285A (en) Data processing equipment and data processing method
US20140173243A1 (en) Efficient management of computer memory using memory page associations and memory compression
US20060095637A1 (en) Bus control device, arbitration device, integrated circuit device, bus control method, and arbitration method
US7861012B2 (en) Data transmitting device and data transmitting method
TW200900943A (en) PRD (Physical Region Descriptor) pre-fetch methods for DMA (Direct Memory Access) unit
JP2010267117A (en) Audio data transfer device, transfer method and audio data processing system
JP2005234794A (en) File system controller
JP2005316716A (en) Data processing program and data processing device
US20160217085A1 (en) Processor and system for processing stream data at high speed
US7903885B2 (en) Data converting apparatus and method
CN101163243A (en) Streaming data reproduction system
US10461956B2 (en) Semiconductor device, allocation method, and display system
US11029881B2 (en) Memory controller, memory system, and information processing system
JP2009266152A (en) Controller, hard disk drive and control method