JPH09185371A - Musical sound generating device - Google Patents

Musical sound generating device

Info

Publication number
JPH09185371A
JPH09185371A JP7353236A JP35323695A JPH09185371A JP H09185371 A JPH09185371 A JP H09185371A JP 7353236 A JP7353236 A JP 7353236A JP 35323695 A JP35323695 A JP 35323695A JP H09185371 A JPH09185371 A JP H09185371A
Authority
JP
Japan
Prior art keywords
data
cpu
external memory
address
read
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.)
Granted
Application number
JP7353236A
Other languages
Japanese (ja)
Other versions
JP2901143B2 (en
Inventor
Tokio Shirakawa
登喜夫 白川
Shizuhiko Kawai
靜彦 川合
Masaki Kudo
政樹 工藤
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP7353236A priority Critical patent/JP2901143B2/en
Priority to US08/773,200 priority patent/US5804749A/en
Publication of JPH09185371A publication Critical patent/JPH09185371A/en
Application granted granted Critical
Publication of JP2901143B2 publication Critical patent/JP2901143B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent the operation of a CPU from becoming slow owing to access to an external memory by a sound source part as much as possible as to the device having the sound source part and CPU integrated into one chip. SOLUTION: This device has the sound source 7 and CPU 102 integrated into one chip and an external memory 2 is connected to the device. For example, plural unit access data of the CPU 102 are included in one address of the external memory 2 and when data in successive addresses are accessed by the CPU 102, the data which are temporarily read out are held and then sent back to the CPU 102 when requested for a following slot. Further, data in a next address is preread and held at the slot where the held data is sent back to the CPU 102, and when a request is made at a following slot, the held data is read out and sent back to the CPU 102.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、波形メモリから
読み出した波形データに基づいて楽音を生成する楽音生
成装置に関し、特に音源部とCPUとを1チップ上に構
成した楽音生成装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a musical tone generating apparatus for generating a musical tone based on waveform data read from a waveform memory, and more particularly to a musical tone generating apparatus having a tone generator section and a CPU on one chip.

【0002】[0002]

【従来の技術】従来より、波形メモリ読み出し方式の音
源部とそれを制御する中央処理装置(CPU)とを1チ
ップ化した装置(LSI)が知られている。このような
装置では、チップの外部にメモリを接続し、音源部とC
PUとでその外部メモリを共有するようにしている。外
部メモリには、音源部が読み出すべき波形データとCP
Uが読み出すべき制御プログラムが記憶されている。
2. Description of the Related Art Conventionally, there has been known a device (LSI) in which a sound source section of a waveform memory reading system and a central processing unit (CPU) for controlling the sound source section are integrated into one chip. In such a device, a memory is connected to the outside of the chip and the sound source section and C
The external memory is shared with the PU. The external memory has waveform data and CP that should be read by the tone generator.
A control program to be read by U is stored.

【0003】このような装置では、外部メモリが共有さ
れているため(すなわち、同じアドレスバスおよびデー
タバスを共用して、音源部からの外部メモリのアクセス
とCPUからの外部メモリのアクセスとを行なうた
め)、外部メモリをCPUまたは音源部の何れに接続す
るかを切り替える必要がある。切り替えの方式として、
例えば所定のレジスタに所定の値を設定することにより
外部メモリをCPUと音源部との何れに接続するかを静
的に切り替える方式や、音源部の状況に応じて外部メモ
リをCPUと音源部の何れに接続するかを切り替える方
式(例えば、通常はCPU優先で外部メモリをアクセス
し、音源部が波形データを必要とするとき音源部優先で
外部メモリをアクセスするように切り替える)などがあ
る。また、CPUと音源部の外部メモリアクセスを固定
のタイムスロットに割り当て、CPUと音源部とが交互
に外部メモリをアクセスするようにしたチップも提案さ
れている。
In such a device, since the external memory is shared (that is, the same address bus and data bus are shared, the external memory is accessed from the tone generator and the external memory is accessed from the CPU. Therefore, it is necessary to switch which of the CPU and the sound source unit the external memory is connected to. As a switching method,
For example, by setting a predetermined value in a predetermined register, a method of statically switching which one of the CPU and the sound source unit is connected to the external memory, or the external memory of the CPU and the sound source unit is switched according to the situation of the sound source unit. There is a method of switching to which connection (for example, normally, the CPU is given priority to access the external memory, and when the sound source section needs the waveform data, the sound source section is given priority to access the external memory). Also, a chip has been proposed in which the external memory access of the CPU and the tone generator is assigned to a fixed time slot so that the CPU and the tone generator alternately access the external memory.

【0004】[0004]

【発明が解決しようとする課題】上述したような音源部
とCPUとを1チップ化した装置では、音源部による外
部メモリのアクセス(波形データの読み出し)によって
CPUが外部メモリをアクセスしたい場合にウエイト
(WAIT)がかかってしまい、CPUの動作が遅くな
ってしまうという問題があった。
In the device in which the tone generator and the CPU are integrated into one chip as described above, the weight is applied when the CPU wants to access the external memory by accessing the external memory (reading the waveform data) by the tone generator. There is a problem that (WAIT) is applied and the operation of the CPU becomes slow.

【0005】この発明は、音源部とCPUとを1チップ
化した装置において、音源部による外部メモリのアクセ
スによってCPUの動作が遅くなることを極力防止する
ことができる楽音生成装置を提供することを目的とす
る。
The present invention is to provide a tone generation device capable of preventing the CPU operation from being delayed as much as possible by the access to the external memory by the tone generator in a device in which the tone generator and the CPU are integrated into one chip. To aim.

【0006】[0006]

【課題を解決するための手段】この目的を達成するた
め、請求項1に係る発明は、中央処理装置と音源装置と
を1チップ上に形成するとともに、前記音源装置が読み
出す波形データと前記中央処理装置が読み出すデータと
を記憶した記憶手段が接続され、前記記憶手段の1アド
レス中に前記中央処理装置の単位アクセスデータが複数
含まれるような楽音生成装置であって、所定時間のタイ
ムスロットごとの処理によって所定回数の前記中央処理
装置からの前記記憶手段のアクセスと所定回数の前記音
源装置からの前記記憶手段のアクセスとを繰り返すもの
において、前記音源装置が前記記憶手段をアクセスする
タイムスロットの前のタイムスロットで前記中央処理装
置が読み出したデータを保持しておく保持手段と、前記
音源装置が前記記憶手段をアクセスするタイムスロット
において、前記保持手段により前記中央処理装置の読み
出したいデータが保持されているかどうかを判定する判
定手段と、前記判定手段で保持されていると判定された
場合は、該保持されているデータから前記中央処理装置
の読み出したいデータを取り出して前記中央処理装置に
供給する供給手段とを備えたことを特徴とする。
In order to achieve this object, the invention according to claim 1 forms a central processing unit and a sound source device on one chip, and at the same time, waveform data read by the sound source unit and the central unit. A musical tone generating apparatus connected to a storage unit for storing data read by a processing unit, wherein one address of the storage unit includes a plurality of unit access data of the central processing unit, and for each time slot of a predetermined time. By repeating the access of the storage means from the central processing unit a predetermined number of times and the access of the storage means from the sound source device a predetermined number of times by the processing of Holding means for holding the data read by the central processing unit in the previous time slot; In the time slot for accessing the stage, the holding means holds the holding data if the holding means holds the data to be read by the central processing unit. It is characterized by further comprising a supply means for extracting the data desired to be read by the central processing unit from the stored data and supplying the data to the central processing unit.

【0007】「所定時間のタイムスロットごとの処理に
よって所定回数の前記中央処理装置からの前記記憶手段
のアクセスと所定回数の前記音源装置からの前記記憶手
段のアクセスとを繰り返す」は、例えば、「中央処理装
置が3回アクセス→音源装置が1回アクセス」というよ
うな場合でもよいし、「中央処理装置が3回アクセス→
音源装置が1回アクセス→中央処理装置が2回アクセス
→音源装置が1回アクセス」というような変則的な場合
も含む。ただし、中央処理装置は、音源装置が記憶手段
をアクセスしているタイムスロットでも記憶手段に対す
るアクセス要求を発行する。本発明は、そのような場
合、すなわち音源装置が記憶手段をアクセスしているタ
イムスロットにおいて、中央処理装置からのアクセス要
求に対して、保持してあったデータを返す(いわゆる、
キャッシングあるいはプリフェッチ)ようにすることを
特徴とするものである。また、保持手段における「前記
音源装置が前記記憶手段をアクセスするタイムスロット
の前のタイムスロットで」の「前の」は、必ずしも直前
のタイムスロットでなくてもよい。
"Repeating a predetermined number of times of access of the storage means from the central processing unit and a predetermined number of times of access of the storage means from the sound source device by processing for each time slot for a predetermined time" is, for example, " The central processing unit may access three times → the sound source device may access once, or “the central processing unit may access three times →
The sound source device accesses once, the central processing unit accesses twice, and the sound source device accesses once. However, the central processing unit issues an access request to the storage means even in the time slot in which the sound source device is accessing the storage means. The present invention returns the held data in response to an access request from the central processing unit in such a case, that is, in the time slot in which the sound source device is accessing the storage means (so-called,
(Caching or prefetch). Further, "before" of "in the time slot before the time slot in which the sound source device accesses the storage means" in the holding means does not necessarily have to be the immediately preceding time slot.

【0008】また、請求項2に係る発明は、中央処理装
置と音源装置とを1チップ上に形成するとともに、前記
音源装置が読み出す波形データと前記中央処理装置が読
み出すデータとを記憶した記憶手段が接続され、前記記
憶手段の1アドレス中に前記中央処理装置の単位アクセ
スデータが複数含まれるような楽音生成装置であって、
所定時間のタイムスロットごとの処理によって所定回数
の前記中央処理装置からの前記記憶手段のアクセスと所
定回数の前記音源装置からの前記記憶手段のアクセスと
を繰り返すものにおいて、前記中央処理装置からのアク
セス要求に応じて前記記憶手段をアクセスするタイムス
ロットで、前記中央処理装置が読み出したデータから取
り出したデータを前記中央処理装置に供給するととも
に、該読み出したデータを保持しておく第1の保持手段
と、前記第1の保持手段に保持されていたデータから取
り出したデータを前記中央処理装置からのアクセス要求
に応じて前記中央処理装置に供給するタイムスロット
で、該保持されていたデータの次のアドレスのデータを
前記記憶手段から読み出して保持しておく第2の保持手
段と、前記中央処理装置からアクセス要求が発行された
タイムスロットにおいて、前記第1の保持手段または第
2の保持手段の何れかに、前記中央処理装置の今回読み
出したいデータが保持されているかどうかを判定する判
定手段と、前記判定手段で保持されていると判定された
場合は、前記第1の保持手段または第2の保持手段に保
持されているデータから前記中央処理装置の読み出した
いデータを取り出して前記中央処理装置に供給する供給
手段とを備えたことを特徴とする。
According to a second aspect of the present invention, the central processing unit and the tone generator are formed on one chip, and the storage means stores the waveform data read by the tone generator and the data read by the central processor. A tone generation device in which a plurality of unit access data of the central processing unit are included in one address of the storage means,
An access from the central processing unit in which the access of the storage unit from the central processing unit a predetermined number of times and the access of the storage unit from the sound source device a predetermined number of times are repeated by processing for each time slot of a predetermined time. First holding means for supplying to the central processing unit the data extracted from the data read by the central processing unit and holding the read data in a time slot for accessing the storage unit in response to a request And a time slot for supplying the data taken out from the data held in the first holding means to the central processing unit in response to an access request from the central processing unit. Second holding means for reading the address data from the storage means and holding it, and the central processing unit. Determination means for determining whether or not the data to be read this time by the central processing unit is held in either the first holding means or the second holding means in the time slot in which the access request is issued from If it is determined that the data is held by the determination means, the data to be read by the central processing unit is extracted from the data held in the first holding means or the second holding means, and the data is read by the central processing unit. And a supply means for supplying.

【0009】上記構成によれば、中央処理装置から連続
したアドレスのデータをアクセスする際に、一旦読み出
したデータを保持しておいて後のスロットで要求された
場合に保持しておいたデータから取り出して中央処理装
置に返すようにしているので、音源部による外部メモリ
のアクセスによってCPUの外部メモリアクセスが実質
的に待たされるケースが減少する。特に、中央処理装置
のプログラムのフェッチなどにおいて効果がある。
According to the above arrangement, when accessing data at consecutive addresses from the central processing unit, the data read once is held and the data held when requested by a subsequent slot is used. Since the data is taken out and returned to the central processing unit, the number of cases in which the external memory access of the CPU is substantially delayed due to the access of the external memory by the sound source unit is reduced. In particular, it is effective in fetching a program of the central processing unit.

【0010】[0010]

【発明の実施の形態】以下、図面を用いてこの発明の実
施の形態を説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0011】図1は、この発明に係る音源チップを用い
た電子楽器のブロック構成を示す。この電子楽器は、音
源チップ1、外部メモリ2、鍵盤3、パネル4、バッフ
ァ5、MIDI端子6、電源部7、水晶8、切り替え部
(SX)9、およびサウンドシステム10を備えてい
る。
FIG. 1 shows a block configuration of an electronic musical instrument using a sound source chip according to the present invention. This electronic musical instrument includes a sound source chip 1, an external memory 2, a keyboard 3, a panel 4, a buffer 5, a MIDI terminal 6, a power supply section 7, a crystal 8, a switching section (SX) 9, and a sound system 10.

【0012】音源チップ1は、波形メモリ読み出し方式
の音源部とその音源部を制御するCPUとを1チップ化
したものである。外部メモリ2は、ROM(リードオン
リメモリ)またはRAM(ランダムアクセスメモリ)か
らなり、音源部(TG)104が読み出す波形データや
CPU102が読み出して実行する制御プログラムなど
を格納する。鍵盤3は、演奏者が演奏操作するための複
数の鍵を備えた鍵盤である。パネル4は、電子楽器の各
種の設定を行なうためのスイッチや表示器などを含んで
いる。MIDI(Musical Instrument Digital Interfa
ce)端子6は、外部のMIDI機器とのMIDI方式に
よる入出力を行なう接続端子であり、バッファ5は電気
的なインターフェースをとるバッファである。電源7
は、音源チップ1に3.3V(ボルト)または5.0Vの動作
電圧を供給する電源部である。水晶8はマスタークロッ
クの周波数を規定する水晶であり、ここでは、18MH
zから32MHzまでの範囲の所定周波数の水晶を、設
計しようとする電子楽器の性能に応じて、セットする。
The sound source chip 1 is one in which a sound source section of a waveform memory reading system and a CPU for controlling the sound source section are integrated into one chip. The external memory 2 is composed of a ROM (read only memory) or a RAM (random access memory), and stores waveform data read by the sound source unit (TG) 104, a control program read and executed by the CPU 102, and the like. The keyboard 3 is a keyboard provided with a plurality of keys for a player to perform a performance operation. The panel 4 includes switches and indicators for making various settings of the electronic musical instrument. MIDI (Musical Instrument Digital Interfa)
ce) terminal 6 is a connection terminal for inputting / outputting to / from an external MIDI device according to the MIDI method, and buffer 5 is a buffer serving as an electrical interface. Power supply 7
Is a power supply unit that supplies an operating voltage of 3.3 V (volt) or 5.0 V to the sound source chip 1. The crystal 8 is a crystal that defines the frequency of the master clock.
A crystal with a predetermined frequency in the range of z to 32 MHz is set according to the performance of the electronic musical instrument to be designed.

【0013】切り替え部(SX)9は、この音源チップ
1のCPU102の動作クロックと音源部104の動作
クロックとの比および外部メモリ2のアクセスをCPU
102に許す区間と音源部104に許す区間との区間長
さの比を切り替えるための切り替え部である。この切り
替え部(SX)9の切り替え状態に応じて音源チップ1
の外部メモリアクセス動作がどのように変化するかにつ
いては後述するが、切り替え部(SX)9は所定電圧を
印加する(「1」を表す)か接地する(「0」を表す)
かを切り替えるものであるので、以下では「SX=1」
または「SX=0」で切り替え部(SX)9の切り替え
状態を表現するものとする。サウンドシステム10は、
音源チップ1(詳しくはDAC105)から出力される
楽音信号を放音するためのサウンドシステムである。
The switching unit (SX) 9 controls the ratio of the operating clock of the CPU 102 of the tone generator chip 1 to the operating clock of the tone generator unit 104 and the access of the external memory 2 by the CPU.
It is a switching unit for switching the ratio of the section lengths of the section allowed by 102 and the section allowed by the sound source unit 104. According to the switching state of the switching unit (SX) 9, the sound source chip 1
The change in the external memory access operation of will be described later, but the switching unit (SX) 9 applies a predetermined voltage (represents "1") or grounds (represents "0").
Since this is to be switched, "SX = 1" in the following.
Alternatively, “SX = 0” represents the switching state of the switching unit (SX) 9. The sound system 10
This is a sound system for emitting a tone signal output from the tone generator chip 1 (specifically, the DAC 105).

【0014】音源チップ1は、パラレルポート101、
CPU102、外部メモリ制御回路(MC)103、音
源部(TG)104、デジタルアナログ変換器(DA
C)105、MIDIインターフェイス106、タイマ
107、RAM108、クロック発生器109、および
バスライン110を備えている。
The sound source chip 1 includes a parallel port 101,
CPU 102, external memory control circuit (MC) 103, tone generator (TG) 104, digital-analog converter (DA)
C) 105, MIDI interface 106, timer 107, RAM 108, clock generator 109, and bus line 110.

【0015】パラレルポート101は、鍵盤3およびパ
ネル4をバスライン110に接続するインターフェース
である。CPU102は、パラレルポート101を介し
て鍵盤3およびパネル4の操作状況を検出し、あるいは
パネル4の表示装置に表示データを送出する。さらにC
PU102は、この電子楽器全体の動作を制御する。例
えば、ユーザによりパネル4において音色の選択操作が
なされたとき、CPU102は、選択された音色の音色
制御データを必要に応じて外部メモリ2から読み出し、
現在選択されている音色を示す内部RAM108上の音
色指定データ領域に設定する。また、鍵盤3の鍵の操作
を検出したとき、あるいはMIDIのノートオンイベン
トを受信したとき、CPU102は、それらに応じて該
音色指定データ領域に設定されている音色のデータとと
もにノートナンバやノートオンを音源部104に送出し
て、発音を指示する。さらに、自動演奏や自動伴奏が指
示されていたとき、CPU102は、必要に応じて自動
演奏データや自動伴奏データを外部メモリ2から読み出
し、音源部104に発音を指示して自動演奏や自動伴奏
を実行する。CPU102は、以上のような処理を、外
部メモリ2からプログラムを順次読み出して実行するこ
とにより実現する。
The parallel port 101 is an interface for connecting the keyboard 3 and the panel 4 to the bus line 110. The CPU 102 detects the operation status of the keyboard 3 and the panel 4 via the parallel port 101, or sends display data to the display device of the panel 4. Furthermore C
The PU 102 controls the operation of the entire electronic musical instrument. For example, when the user performs a tone color selection operation on the panel 4, the CPU 102 reads out tone color control data of the selected tone color from the external memory 2 as necessary,
It is set in the tone color designation data area on the internal RAM 108 showing the tone color currently selected. Further, when the operation of the key of the keyboard 3 is detected or when the MIDI note-on event is received, the CPU 102 correspondingly outputs the note number and the note-on along with the tone color data set in the tone color designation data area. Is sent to the sound source unit 104 to instruct the sound generation. Further, when the automatic performance or the automatic accompaniment is instructed, the CPU 102 reads the automatic performance data or the automatic accompaniment data from the external memory 2 as necessary, and instructs the sound source unit 104 to generate a sound to perform the automatic performance or the automatic accompaniment. Run. The CPU 102 realizes the above processing by sequentially reading the programs from the external memory 2 and executing them.

【0016】音源部(TG)104は、波形メモリ読み
出し方式の音源であり、CPU102からの指示に基づ
いて外部メモリ2から波形データを読み出し、楽音信号
を生成してDAC105に送出する。音源部104は、
詳しくは、外部メモリ2から波形データ(波形サンプ
ル)を読み出すためのアドレスを発生するアドレス発生
器、読み出した波形データを用いてサンプル間の補間演
算を行なう補間回路、ローパスフィルタなどのデジタル
フィルタ、エンベロープ付与回路、ミキサ、およびエフ
ェクタなどを備えたものである。DAC105は、音源
部104から出力されるデジタル楽音信号をアナログ信
号に変換しサウンドシステム10に送出する。
The tone generator unit (TG) 104 is a tone generator of a waveform memory reading system, which reads waveform data from the external memory 2 based on an instruction from the CPU 102, generates a tone signal and sends it to the DAC 105. The sound source unit 104 is
Specifically, an address generator that generates an address for reading waveform data (waveform sample) from the external memory 2, an interpolation circuit that performs an interpolation calculation between samples using the read waveform data, a digital filter such as a low-pass filter, and an envelope. It is provided with an applying circuit, a mixer, an effector and the like. The DAC 105 converts the digital musical tone signal output from the sound source unit 104 into an analog signal and sends it to the sound system 10.

【0017】外部メモリ制御回路(MC)103は、外
部メモリ2をCPU102または音源部104の何れに
接続するかを制御するためのコントローラである。外部
メモリ2は16ビットデータを単位として読み書きされ
るメモリであるので、外部メモリ制御回路(MC)10
3と外部メモリ2とを接続するアドレスおよびデータ線
111のうちデータ線は16ビット長である。外部メモ
リ2に格納されている波形データは16ビットサンプル
からなり音源部104はそのような波形データを読み出
すので、外部メモリ制御回路(MC)103と音源部1
04とを接続するアドレスおよびデータ線112のうち
データ線は16ビット長である。CPU102は8ビッ
トマイクロプロセッサであるので、CPUバス110の
うちデータバス(外部メモリ制御回路(MC)103と
の接続部分113も含む)は8ビット長である。外部メ
モリ制御回路(MC)103の詳細は図2で後述する。
The external memory control circuit (MC) 103 is a controller for controlling whether the external memory 2 is connected to the CPU 102 or the tone generator section 104. Since the external memory 2 is a memory that is read and written in units of 16-bit data, the external memory control circuit (MC) 10
The data line of the address and data line 111 connecting 3 to the external memory 2 is 16 bits long. The waveform data stored in the external memory 2 consists of 16-bit samples, and the tone generator 104 reads such waveform data. Therefore, the external memory control circuit (MC) 103 and the tone generator 1
The data line of the address and data lines 112 connecting to 04 is 16 bits long. Since the CPU 102 is an 8-bit microprocessor, the data bus (including the connection portion 113 with the external memory control circuit (MC) 103) of the CPU bus 110 has an 8-bit length. Details of the external memory control circuit (MC) 103 will be described later with reference to FIG.

【0018】MIDIインターフェイス106は、外部
のMIDI機器との間のインターフェイスである。タイ
マ107は、CPU102にタイマ割り込みをかけるた
めのタイマである。このタイマ107は、自動演奏や自
動伴奏のテンポクロックの発生や、音色や音量などの楽
音特性の時間変化の制御に使用される。RAM108
は、音源チップ1内部のメモリであり、CPU102の
ワークエリアなどに用いる。CPU102は、外部メモ
リ2および内部メモリ108のすべての領域にアクセス
可能である。
The MIDI interface 106 is an interface with an external MIDI device. The timer 107 is a timer for issuing a timer interrupt to the CPU 102. The timer 107 is used for generation of tempo clocks for automatic performance and automatic accompaniment, and control of temporal changes in musical tone characteristics such as tone color and volume. RAM108
Is a memory inside the tone generator chip 1 and is used as a work area of the CPU 102. The CPU 102 can access all areas of the external memory 2 and the internal memory 108.

【0019】クロック発生器109は、水晶8の周波数
に応じたマスタークロックを発生し、適宜分周して、音
源チップ1内部の各部に動作クロックを供給する。φT
Gは音源部104に供給する動作クロック、φCPUは
CPU102に供給する動作クロックである。音源部1
04は、φTGを基準とするタイムスロットで(具体的
にはφTGの1周期を1タイムスロットとする)時分割
動作を行ない、複数チャンネル分の楽音を生成する。音
源部104の内部の各回路ブロック(図示せず)は、8
つのタイムスロットで1チャンネル分の動作を行なう。
直線補間を行なうため、発音中のチャンネルでは、1チ
ャンネル当たり外部メモリ2を2回アクセスする必要が
ある。そこで、音源部104は、4つのタイムスロット
で1回の割合で外部メモリ2をアクセスして、16ビッ
ト波形データを1つ読み出すことができるようになって
いる。CPU102は、φCPUを動作クロックとして
動作する。CPU102は、1クロック当たり最大1回
のアクセス(外部メモリ2、パラレルポート101、音
源部104、内部RAM108などに対するアクセス)
を要求し、そこでWAIT信号が発生しない場合は、同
1クロックの時間内に1回の同アクセスを実行する。ク
ロック発生器109が出力するφMCは、外部メモリ2
をCPU102または音源部104の何れに接続するか
を決定するための基準信号である。φMIDIはMID
I入出力のための動作クロックを示す。
The clock generator 109 generates a master clock according to the frequency of the crystal 8, divides the frequency appropriately, and supplies an operation clock to each unit inside the tone generator chip 1. φT
G is an operation clock supplied to the sound source unit 104, and φCPU is an operation clock supplied to the CPU 102. Sound source section 1
A time slot 04 is a time slot based on φTG (specifically, one cycle of φTG is one time slot) and performs a time division operation to generate musical tones for a plurality of channels. Each circuit block (not shown) inside the sound source unit 104 has eight
One time slot operates for one channel.
Since linear interpolation is performed, it is necessary to access the external memory 2 twice for each channel that is producing a sound. Therefore, the sound source unit 104 can access the external memory 2 once in four time slots and read one piece of 16-bit waveform data. The CPU 102 operates using φCPU as an operation clock. The CPU 102 makes a maximum of one access per clock (access to the external memory 2, the parallel port 101, the sound source unit 104, the internal RAM 108, etc.)
If the WAIT signal is not generated there, the same access is executed once within the same one clock time. The φMC output from the clock generator 109 is the external memory 2
Is a reference signal for determining whether to connect the CPU 102 or the sound source unit 104. φ MIDI is MID
The operation clock for I / O is shown.

【0020】特に、この音源チップ1では、切り替え部
(SX)9の切り替え状況に応じて、φTGとφCPU
の周波数の比を変化させることができる。具体的には、
SX=0のときは(φTGの周波数):(φCPUの周
波数)=1:1とし、SX=1のときは(φTGの周波
数):(φCPUの周波数)=2:1としている。ま
た、この音源チップ1では、切り替え部(SX)9の切
り替え状況に応じて、外部メモリ2がCPU102に接
続される時間区間長さ(以下、CPUアクセス時間と呼
ぶ)と外部メモリ2が音源部104に接続される時間区
間長さ(以下、音源アクセス時間と呼ぶ)との比を変化
させることができる。具体的には、SX=0のときは
(CPUアクセス時間):(音源アクセス時間)=3:
1とし、SX=1のときは(CPUアクセス時間):
(音源アクセス時間)=1:1としている。
Particularly, in this sound source chip 1, φTG and φCPU are selected depending on the switching status of the switching unit (SX) 9.
The frequency ratio of can be changed. In particular,
When SX = 0, (φTG frequency) :( φCPU frequency) = 1: 1, and when SX = 1, (φTG frequency) :( φCPU frequency) = 2: 1. In the sound source chip 1, the time interval length in which the external memory 2 is connected to the CPU 102 (hereinafter, referred to as CPU access time) and the external memory 2 are in the sound source unit according to the switching status of the switching unit (SX) 9. It is possible to change the ratio to the length of the time section connected to 104 (hereinafter referred to as the sound source access time). Specifically, when SX = 0, (CPU access time) :( sound source access time) = 3:
1 and when SX = 1 (CPU access time):
(Sound source access time) = 1: 1.

【0021】CPUの処理性能を高くしたい場合には、
電源電圧を高く、かつ高い周波数の水晶を接続しマスタ
ークロックの周波数を高くして、SX=0とする。マス
タークロックの周波数が高いので、(φTGの周波
数):(φCPUの周波数)=1:1としたφTGを基
準とすれば、(CPUアクセス時間):(音源アクセス
時間)=3:1として相対的に音源アクセス時間を短く
しても、十分な品質の楽音生成ができる程度のサンプリ
ング周波数を確保できる。一方、CPUの処理性能が低
くてよい場合には、電源電圧を低く、かつ低い周波数の
水晶を接続しマスタークロックの周波数を低くして、S
X=1とする。マスタークロックの周波数を低くすると
それに応じてφTGの周波数も低くなり楽音の品質が低
下してしまうので、SX=1としてφTGの周波数をφ
CPUの周波数の2倍とし、充分な品質の楽音生成がで
きる程度のサンプリング周波数を確保する。また、マス
タークロックの周波数を低くするとそれに応じて一定時
間内で波形データをアクセスできる回数が減っていくこ
とになり楽音の品質低下が起こるが、ここではSX=1
として相対的に音源アクセス時間を増やし、十分な品質
の楽音生成ができる程度のサンプリング周波数を確保し
ている。
To increase the processing performance of the CPU,
The power supply voltage is high, and a high-frequency crystal is connected to increase the master clock frequency to set SX = 0. Since the frequency of the master clock is high, if φTG with (φTG frequency) :( φCPU frequency) = 1: 1 is used as a reference, (CPU access time) :( sound source access time) = 3: 1 Even if the sound source access time is shortened, it is possible to secure a sampling frequency at which musical tone of sufficient quality can be generated. On the other hand, when the processing performance of the CPU may be low, the power supply voltage is set low, and a low-frequency crystal is connected to lower the master clock frequency.
Let X = 1. If the frequency of the master clock is lowered, the frequency of φTG is correspondingly lowered and the quality of the musical sound is deteriorated. Therefore, the frequency of φTG is set to φ with SX = 1.
The sampling frequency is set to be twice the frequency of the CPU so that a musical tone of sufficient quality can be generated. Further, if the frequency of the master clock is lowered, the number of times the waveform data can be accessed within a certain period of time is reduced accordingly, and the quality of the musical sound deteriorates. Here, SX = 1.
As a result, the sound source access time is relatively increased, and the sampling frequency is ensured to the extent that musical sound of sufficient quality can be generated.

【0022】上述したように、外部メモリ2は16ビッ
トのデータバス幅を有しており、読み出しや書き込みは
16ビットデータを単位として行なわれる。すなわち、
外部メモリ2をアクセスする際に入力されるアドレスは
16ビット単位のデータを特定するアドレスである。音
源部104は16ビット単位の波形サンプルデータを1
回のアクセスで読み出す。音源部104から外部メモリ
2に出力するアドレスは16ビット単位の波形データを
特定するアドレスである。一方、CPU102の処理単
位は8ビットであり、CPU102からの外部メモリ2
のアクセスはプログラムのフェッチも含めて8ビットの
データ幅を単位として行なわれる。CPU102から外
部メモリアクセスのために出力するアドレスは8ビット
単位のデータを特定するアドレスであるが、そのアドレ
スは、最下位ビット以外の部分(以下、「上位アドレ
ス」と呼ぶ)が外部メモリ2内の16ビットデータを特
定するアドレスで、最下位ビットがその16ビットデー
タの上位か下位か(0のとき上位、1のとき下位)を示
すアドレスになっている。したがって、CPU102か
ら連続するアドレスの8ビットデータを順次アクセスす
る場合、外部メモリ2では、16ビットデータの上位8
ビット、その16ビットデータの下位8ビット、次アド
レスの16ビットデータの上位8ビット、その16ビッ
トデータの下位8ビット、…、というように、同じ16
ビットデータ中では上位→下位の順に8ビットデータが
読み出される。
As described above, the external memory 2 has a 16-bit data bus width, and reading and writing are performed in units of 16-bit data. That is,
The address input when accessing the external memory 2 is an address that specifies 16-bit unit data. The sound source unit 104 sets the waveform sample data in units of 16 bits to 1
Read with one access. The address output from the tone generator 104 to the external memory 2 is an address that specifies waveform data in 16-bit units. On the other hand, the processing unit of the CPU 102 is 8 bits, and the external memory 2 from the CPU 102
Is accessed in units of 8-bit data width including program fetch. The address output from the CPU 102 for accessing the external memory is an address that specifies 8-bit unit data. However, in the address, a portion other than the least significant bit (hereinafter, referred to as “upper address”) is stored in the external memory 2. Of the 16-bit data, the least significant bit is an address indicating whether the 16-bit data is upper or lower (0 means higher, 1 means lower). Therefore, when sequentially accessing 8-bit data of consecutive addresses from the CPU 102, the upper 8 bits of the 16-bit data are stored in the external memory 2.
The same 16 bits, the lower 8 bits of the 16-bit data, the upper 8 bits of the 16-bit data of the next address, the lower 8 bits of the 16-bit data, and so on.
In the bit data, 8-bit data is read in the order of high-order → low-order.

【0023】CPU102が任意の8ビットデータを外
部メモリ2から読み出したとき、実際には、その8ビッ
トデータを上位または下位に含む16ビットデータが外
部メモリ2から読み出されていることになる。そこでこ
の音源チップ1では、CPU102からの要求に応じて
読み出すべき8ビットデータを含む16ビットデータを
外部メモリ2から読み出し、そのうち要求された8ビッ
トデータをCPU102に返すとともに、その際、外部
メモリ制御回路(MC)103において当該読み出した
16ビットデータを保持しておき、次スロットでCPU
102が当該16ビットデータ中の何れかの8ビットデ
ータを要求したときに、保持してあるデータから読み出
して返す(いわゆるキャッシングを行なう)ようにして
いる。保持してあったデータを返すだけであるので実際
に外部メモリ2をアクセスする必要はなく、当該スロッ
トで音源部4からの外部メモリ2のアクセスを行なえる
ことになる。これにより、音源部104から外部メモリ
2をアクセスしているタイムスロットにおいても、所定
の条件を満たす場合には、CPU102が所望のデータ
を読み出せるようにしている。このようなキャッシング
機能は、特に命令フェッチなどで連続するアドレスのデ
ータを読み出す場合に有効である。
When the CPU 102 reads arbitrary 8-bit data from the external memory 2, 16-bit data including the 8-bit data in the upper or lower order is actually read from the external memory 2. Therefore, in the tone generator chip 1, 16-bit data including 8-bit data to be read in response to a request from the CPU 102 is read from the external memory 2, and the requested 8-bit data is returned to the CPU 102, and at the same time, external memory control is performed. The read 16-bit data is held in the circuit (MC) 103, and the CPU is used in the next slot.
When the 102 requests any 8-bit data in the 16-bit data, the stored data is read out and returned (so-called caching is performed). Since only the held data is returned, it is not necessary to actually access the external memory 2, and the sound source unit 4 can access the external memory 2 in the slot. As a result, even in the time slot in which the sound source unit 104 is accessing the external memory 2, the CPU 102 can read out the desired data when the predetermined condition is satisfied. Such a caching function is particularly effective when reading data of consecutive addresses by instruction fetch or the like.

【0024】図2は、そのようなCPUアクセスにおけ
るキャッシングを行なうための図1の外部メモリ制御回
路(MC)103のブロック構成を示す。なお、点線で
囲んだ部分220は後述する変形例において有効な部分
であり、いま説明している外部メモリ制御回路(MC)
103には存在しないものとする。すなわち、CPUバ
ス110のうちアドレス線231(最下位ビットは除
く)は直接セレクタ201の入力232に接続されてい
るものとする。
FIG. 2 shows a block configuration of the external memory control circuit (MC) 103 of FIG. 1 for performing such caching in CPU access. A portion 220 surrounded by a dotted line is an effective portion in a modified example described later, and the external memory control circuit (MC) described just now.
It does not exist in 103. That is, it is assumed that the address line 231 (excluding the least significant bit) of the CPU bus 110 is directly connected to the input 232 of the selector 201.

【0025】図2において、外部メモリ制御回路(M
C)103は、セレクタ201,202、アクセス制御
回路203、ラッチ204、比較器205、アドレスデ
コーダ206、キャッシュ制御回路207、ラッチ20
8、セレクタ209、および書き込み制御回路210を
備えている。
In FIG. 2, an external memory control circuit (M
C) 103 is a selector 201, 202, access control circuit 203, latch 204, comparator 205, address decoder 206, cache control circuit 207, latch 20.
8, a selector 209, and a write control circuit 210.

【0026】CPUバス110からのアドレスの最下位
ビットはキャッシュ制御回路207に入力する。CPU
バス110からの上位アドレスは、セレクタ201の一
方の入力(アドレス線232)、アドレスデコーダ20
6、比較器205の一方の入力、およびラッチ204に
入力する。ラッチ204の出力は、もう一方の入力とし
て比較器205に入力する。アドレスデコーダ206の
デコード結果はキャッシュ制御回路207に入力する。
比較器205の比較結果はキャッシュ制御回路207に
入力する。キャッシュ制御回路207は、比較器205
およびアドレスデコーダ206からの出力、並びにCP
Uアドレスの最下位ビットに基づいて、セレクタ209
を切り替える。
The least significant bit of the address from the CPU bus 110 is input to the cache control circuit 207. CPU
The upper address from the bus 110 is supplied to one input of the selector 201 (address line 232) and the address decoder 20.
6, one input of the comparator 205, and the latch 204. The output of the latch 204 is input to the comparator 205 as the other input. The decoding result of the address decoder 206 is input to the cache control circuit 207.
The comparison result of the comparator 205 is input to the cache control circuit 207. The cache control circuit 207 has a comparator 205.
And output from the address decoder 206, and CP
Based on the least significant bit of the U address, the selector 209
Switch.

【0027】セレクタ201の出力端子は外部メモリ2
のアドレス線236に接続されている。セレクタ201
の一方の入力は上述したようにCPU102からの上位
アドレスであり、もう一方の入力には音源部104のア
ドレス線233が接続されている。セレクタ202に
は、外部メモリ2のデータ線(16ビット)237、並
びに、CPUバス110側のデータ線(16ビット)2
34および音源部104のデータ線(16ビット)23
5が接続されている。外部メモリ2に対するデータの読
み出しおよび書き込み(書き込みは外部メモリ2がRA
Mの場合のみ)を行なえるようにするため、セレクタ2
02は双方向にデータを流すことができるセレクタにな
っている(実際にはデータ読み出しの際に使うセレクタ
とデータ書き込みの際に使うセレクタとが設けられてい
るが、ここでは1つのセレクタ202で代表させて表す
ものとする)。アクセス制御回路203は、クロック発
生器109から出力されるφMCに応じて、さらに音源
部104から出力される空きチャンネル情報に応じて、
セレクタ201,202を切り替える。
The output terminal of the selector 201 is the external memory 2
Of the address line 236. Selector 201
One input is the upper address from the CPU 102 as described above, and the address line 233 of the sound source unit 104 is connected to the other input. The selector 202 includes a data line (16 bits) 237 of the external memory 2 and a data line (16 bits) 2 of the CPU bus 110 side.
34 and data line (16 bits) 23 of the tone generator 104
5 is connected. Reading and writing of data from / to the external memory 2
Selector 2 in order to enable
02 is a selector that allows data to flow in both directions (actually, a selector used for reading data and a selector used for writing data are provided, but here, one selector 202 is used. Shall be represented on behalf of). The access control circuit 203 responds to φMC output from the clock generator 109 and further to free channel information output from the tone generator 104,
The selectors 201 and 202 are switched.

【0028】CPUバス110のデータ線(8ビット)
は、セレクタ209の出力側端子、および書き込み制御
回路210に接続されている。セレクタ209の入力側
には、次の4つのデータ線241〜244が接続されて
いる。241は(セレクタ202を介して)外部メモリ
2のデータ線237の上位8ビットにつながるデータ
線、242は(セレクタ202を介して)外部メモリ2
のデータ線237の下位8ビットにつながるデータ線、
243はラッチ208の出力側の上位8ビットにつなが
るデータ線、244はラッチ208の出力側の下位8ビ
ットにつながるデータ線である。ラッチ208の入力側
は、(セレクタ202を介して)外部メモリ2のデータ
線237(16ビット)に接続されている。
Data line of CPU bus 110 (8 bits)
Are connected to the output side terminal of the selector 209 and the write control circuit 210. The following four data lines 241 to 244 are connected to the input side of the selector 209. 241 is a data line (via the selector 202) connected to the upper 8 bits of the data line 237 of the external memory 2 and 242 is (via the selector 202) the external memory 2
Data line connected to the lower 8 bits of the data line 237 of
243 is a data line connected to the upper 8 bits of the output side of the latch 208, and 244 is a data line connected to the lower 8 bits of the output side of the latch 208. The input side of the latch 208 is connected to the data line 237 (16 bits) of the external memory 2 (via the selector 202).

【0029】書き込み制御回路210からの書き込みデ
ータを送出するデータ線は、セレクタ202への入力デ
ータ線234に接続されている。アクセス制御回路20
3、キャッシュ制御回路207、および書き込み制御回
路210は、制御信号を互いに授受するための制御信号
線251で接続されている。
The data line for sending the write data from the write control circuit 210 is connected to the input data line 234 to the selector 202. Access control circuit 20
3, the cache control circuit 207, and the write control circuit 210 are connected by a control signal line 251 for exchanging control signals with each other.

【0030】図2の外部メモリ制御回路(MC)103
の動作を説明する。外部メモリ2をCPU側に接続する
か音源側に接続するかは、アクセス制御回路203が決
定する。具体的には、アクセス制御回路203は、φM
C=1かつ音源部104からの空きチャンネル情報が出
力されていないとき、当該タイムスロットで当該チャン
ネルに関し波形データを読み出すものとし、外部メモリ
2を音源側に接続する。それ以外は、外部メモリ2をC
PU側に接続する。空きチャンネル情報とは、当該スロ
ットで処理するチャンネルが空き状態(発音していない
状態、または発音状態だが楽音が充分に減衰した状態)
か否かを示す情報である。
External memory control circuit (MC) 103 of FIG.
Will be described. The access control circuit 203 determines whether the external memory 2 is connected to the CPU side or the sound source side. Specifically, the access control circuit 203 uses φM
When C = 1 and the empty channel information is not output from the sound source unit 104, the waveform data of the channel is read in the time slot, and the external memory 2 is connected to the sound source side. Otherwise, use the external memory 2 as C
Connect to the PU side. Free channel information means that the channel to be processed by the slot is empty (no sound is being generated, or a sound is being generated but the tone has been sufficiently attenuated).
This is information indicating whether or not.

【0031】外部メモリ2を音源側に接続する場合、ア
クセス制御回路203は、外部メモリ2のアドレス線2
36と音源部104のアドレス線233とを接続し、外
部メモリ2のデータ線237と音源部104のデータ線
235とを接続するように、セレクタ201および20
2を切り替える。これにより、音源部104から出力さ
れたアドレスがセレクタ201を介して外部メモリ2に
入力し、当該アドレスのデータ(波形サンプル)が外部
メモリ2から読み出され、セレクタ202を介して音源
部104に渡される。
When the external memory 2 is connected to the sound source side, the access control circuit 203 uses the address line 2 of the external memory 2.
36 and the address line 233 of the tone generator 104, and the data lines 237 of the external memory 2 and the data line 235 of the tone generator 104 are connected to each other.
Switch 2. As a result, the address output from the sound source unit 104 is input to the external memory 2 via the selector 201, the data of the address (waveform sample) is read from the external memory 2, and is input to the sound source unit 104 via the selector 202. Passed.

【0032】外部メモリ2をCPU側に接続する場合、
アクセス制御回路203は、外部メモリ2のアドレス線
236とCPUバス110側のアドレス線232とを接
続し、外部メモリ2のデータ線237とCPUバス11
0側のデータ線234とを接続するように、セレクタ2
01および202を切り替える。
When the external memory 2 is connected to the CPU side,
The access control circuit 203 connects the address line 236 of the external memory 2 and the address line 232 of the CPU bus 110 side, and connects the data line 237 of the external memory 2 and the CPU bus 11 to each other.
The selector 2 is connected so that the data line 234 on the 0 side is connected.
01 and 202 are switched.

【0033】アクセス制御回路203の制御の元で外部
メモリ2がCPU側または音源側の何れかに接続される
こととは独立に、CPU102はメモリアクセス要求
(始めは読み出し要求として説明する)を発行する。こ
のCPU102からのアクセス要求で出力されるアドレ
スの最下位ビットはキャッシュ制御回路207に入力
し、上位アドレスはアドレスデコーダ206に入力す
る。アドレスデコーダ206は、CPU102からの上
位アドレスをデコードし、デコード結果をキャッシュ制
御回路207に出力する。キャッシュ制御回路207
は、アドレスデコーダ206からの出力に基づいて、C
PU102がアクセスする領域が外部メモリ2であるか
内部メモリ108であるかを判別することができる。C
PU102が外部メモリ2以外をアクセスする場合は、
アドレスデコーダ206でそのことが検出され、当然に
外部メモリ制御回路(MC)103ではCPUバス11
0と外部メモリ2とを接続する動作は行なわない。以下
では、CPU102からのアクセス要求でアクセスする
領域が外部メモリ2であることが、アドレスデコーダ2
06からの出力に基づいて、確認されていることを前提
として説明する。
Under the control of the access control circuit 203, independently of the external memory 2 being connected to either the CPU side or the sound source side, the CPU 102 issues a memory access request (first described as a read request). To do. The least significant bit of the address output by the access request from the CPU 102 is input to the cache control circuit 207, and the upper address is input to the address decoder 206. The address decoder 206 decodes the upper address from the CPU 102 and outputs the decoding result to the cache control circuit 207. Cache control circuit 207
C based on the output from the address decoder 206
It is possible to determine whether the area accessed by the PU 102 is the external memory 2 or the internal memory 108. C
When the PU 102 accesses other than the external memory 2,
This is detected by the address decoder 206, and the external memory control circuit (MC) 103 naturally receives the CPU bus 11
The operation of connecting 0 and the external memory 2 is not performed. In the following, the address decoder 2 indicates that the area accessed by the access request from the CPU 102 is the external memory 2.
Based on the output from 06, it will be described on the assumption that the confirmation has been made.

【0034】CPU102からの上位アドレスはラッチ
204にラッチされる。同時に、ラッチ204はラッチ
してあった前回のCPUアクセスの上位アドレスを比較
器205に出力する。比較器205は、ラッチ204に
ラッチされている前回のCPUアクセスの上位アドレス
と今回のCPUアクセスの上位アドレスとを比較し、比
較結果をキャッシュ制御回路207に出力する。これに
より、キャッシュ制御回路207は、CPU102から
アクセス要求が発行されるごとに、前回のアクセス時の
上位アドレス(前回の読み出しアドレス)と今回のアク
セス時の上位アドレス(今回の読み出しアドレス)とが
一致しているか否かを判別できる。
The upper address from the CPU 102 is latched in the latch 204. At the same time, the latch 204 outputs the latched upper address of the previous CPU access to the comparator 205. The comparator 205 compares the upper address of the previous CPU access latched in the latch 204 with the upper address of the current CPU access, and outputs the comparison result to the cache control circuit 207. As a result, the cache control circuit 207 sets the upper address at the time of the previous access (the previous read address) and the upper address at the time of the current access (the read address of this time) each time the access request is issued from the CPU 102. You can determine whether or not you are doing.

【0035】また、キャッシュ制御回路207は、CP
U102からのアドレスの最下位ビットに基づいて、い
まアクセスしようとしている8ビットデータが外部メモ
リ2から読み出す16ビットデータのうちの上位か下位
かを判別できる(アドレス最下位ビットが0のときは上
位、1のときは下位)。
Also, the cache control circuit 207
Based on the least significant bit of the address from U102, it is possible to determine whether the 8-bit data that is about to be accessed is the upper or the lower of the 16-bit data read from the external memory 2 (when the least significant bit is 0, the upper bit is 0). 1 is lower).

【0036】さらに、キャッシュ制御回路207は、ア
クセス制御回路203からの制御信号により、現タイム
スロットが外部メモリ2をCPU側と音源側の何れに接
続するタイムスロットであるかを知る。
Further, the cache control circuit 207 knows from the control signal from the access control circuit 203 whether the current time slot is the time slot connecting the external memory 2 to the CPU side or the sound source side.

【0037】以上のように、CPU102から外部メモ
リ2へのアクセス要求が発行された場合、キャッシュ制
御回路207は以下の〜を認識できる。 現タイムスロットが外部メモリ2をCPU側と音源側
の何れに接続するタイムスロットであるか 前回のアクセス時の上位アドレス(前回の読み出しア
ドレス)と今回のアクセス時の上位アドレス(今回の読
み出しアドレス)とが一致しているか否か 所望の8ビットデータは、外部メモリ2から読み出す
16ビットデータのうちの上位か下位か
As described above, when the access request to the external memory 2 is issued from the CPU 102, the cache control circuit 207 can recognize the following items. Whether the current time slot is the time slot that connects the external memory 2 to the CPU side or the sound source side High-order address at the previous access (previous read address) and high-order address at the current access (current read address) Whether the desired 8-bit data is the high-order or low-order of the 16-bit data read from the external memory 2.

【0038】上記〜に示した種々のケースにおい
て、外部メモリ制御回路(MC)103、特にキャッシ
ュ制御回路207は、以下の(1)および(2)のよう
に動作する。
In the above-mentioned various cases, the external memory control circuit (MC) 103, particularly the cache control circuit 207, operates as in the following (1) and (2).

【0039】(1)現タイムスロットが、外部メモリ2
とCPU側とを接続するタイムスロットであるときは、
次の(1−1)または(1−2)とする。
(1) The current time slot is the external memory 2
When it is a time slot that connects the
The following (1-1) or (1-2) is set.

【0040】(1−1)前回アクセス時の上位アドレス
と今回アクセス時の上位アドレスとが異なる場合は、外
部メモリ2からデータ読み出しを行なって、要求された
データをCPU102に返す。現タイムスロットでは、
外部メモリ2がCPU側に接続されているから、CPU
バス110からの上位アドレスはセレクタ201を介し
て外部メモリ2に入力し、そのアドレスの16ビットデ
ータが読み出される。読み出された16ビットデータの
上位8ビットはデータ線241を介して、下位8ビット
はデータ線242を介して、それぞれセレクタ209に
入力する。キャッシュ制御回路207は、CPU102
からのアドレスの最下位ビットが0のときは、セレクタ
209の入力241を選択出力して、外部メモリ2から
読み出した16ビットデータのうち上位8ビットをCP
Uバス110に流す。また、アドレス最下位ビットが1
のときは、セレクタ209の入力242を選択出力し
て、外部メモリ2から読み出した16ビットデータのう
ち下位8ビットをCPUバス110に流す。外部メモリ
2から読み出した16ビットデータは、ラッチ208に
ラッチ(キャッシング)しておく。
(1-1) If the upper address at the time of the previous access is different from the upper address at the time of this time access, the data is read from the external memory 2 and the requested data is returned to the CPU 102. In the current timeslot,
Since the external memory 2 is connected to the CPU side,
The upper address from the bus 110 is input to the external memory 2 via the selector 201, and the 16-bit data of that address is read. The upper 8 bits of the read 16-bit data are input to the selector 209 via the data line 241, and the lower 8 bits are input to the selector 209 via the data line 242. The cache control circuit 207 is the CPU 102.
When the least significant bit of the address from 0 is 0, the input 241 of the selector 209 is selected and output, and the upper 8 bits of the 16-bit data read from the external memory 2 are CP.
Pour into U-bus 110. The least significant bit of the address is 1
In this case, the input 242 of the selector 209 is selected and output, and the lower 8 bits of the 16-bit data read from the external memory 2 are passed to the CPU bus 110. The 16-bit data read from the external memory 2 is latched (caching) in the latch 208.

【0041】(1−2)前回アクセス時の上位アドレス
と今回アクセス時の上位アドレスとが一致している場合
は、前回外部メモリ2から読み出した16ビットデータ
がラッチ208にラッチされており、今回はそのラッチ
208から上位または下位の8ビットをCPU102に
渡せばよく、外部メモリ2をアクセスする必要はない。
そこで、キャッシュ制御回路207は、CPU102か
らのアドレスの最下位ビットに基づいて、ラッチ208
にラッチされている16ビットデータのうち上位または
下位の8ビットデータを選択出力する。すなわち、CP
U102からのアドレスの最下位ビットが0のときは、
セレクタ209の入力243のデータ(ラッチ208の
上位の8ビットデータ)をCPUバス110のデータバ
スに流してCPU102に渡し、CPU102からのア
ドレスの最下位ビットが1のときは、セレクタ209の
入力244のデータ(ラッチ208の下位の8ビットデ
ータ)をCPUバス110のデータバスに流してCPU
102に渡す。なお、この(1−2)は現タイムスロッ
トが外部メモリ2とCPU側とを接続するタイムスロッ
トである場合であるから、ラッチ208から読まずに、
外部メモリ2から(1−1)と同様にして所望のデータ
を読み出してもよい。
(1-2) If the upper address at the time of the previous access and the upper address at the time of this time match, the 16-bit data read from the external memory 2 the last time is latched in the latch 208, Need only pass the upper or lower 8 bits from the latch 208 to the CPU 102, and it is not necessary to access the external memory 2.
Therefore, the cache control circuit 207, based on the least significant bit of the address from the CPU 102, latches 208.
The upper or lower 8-bit data of the 16-bit data latched by is selected and output. That is, CP
When the least significant bit of the address from U102 is 0,
The data of the input 243 of the selector 209 (higher 8-bit data of the latch 208) is passed to the data bus of the CPU bus 110 and passed to the CPU 102. When the least significant bit of the address from the CPU 102 is 1, the input 244 of the selector 209 Data (lower 8-bit data of the latch 208) to the data bus of the CPU bus 110
Hand it over to 102. Note that (1-2) is a case where the current time slot is a time slot that connects the external memory 2 and the CPU side. Therefore, without reading from the latch 208,
Desired data may be read from the external memory 2 in the same manner as (1-1).

【0042】(2)現タイムスロットが、外部メモリ2
と音源側とを接続するタイムスロットであるときは、次
の(2−1)または(2−2)とする。
(2) The current time slot is the external memory 2
When it is a time slot for connecting the source and the sound source side, the following (2-1) or (2-2) is set.

【0043】(2−1)前回アクセス時の上位アドレス
と今回アクセス時の上位アドレスとが異なる場合、キャ
ッシュ制御回路207は、CPU102に対しWAIT
信号を送ってCPU102からの外部メモリアクセスを
待たせる。
(2-1) When the upper address at the time of the previous access is different from the upper address at the time of this access, the cache control circuit 207 causes the CPU 102 to WAIT.
A signal is sent to wait for the external memory access from the CPU 102.

【0044】(2−2)前回アクセス時の上位アドレス
と今回アクセス時の上位アドレスとが一致している場合
は、前回外部メモリ2から読み出した16ビットデータ
がラッチ208にラッチされているということである。
そこで、キャッシュ制御回路207は、上記(1−2)
と同様にして、CPU102からのアドレスの最下位ビ
ットに基づいて、ラッチ208にラッチされている16
ビットデータのうち上位または下位の8ビットデータを
CPU102に渡す。この(2−2)は、現タイムスロ
ットが外部メモリ2と音源側とを接続するタイムスロッ
トである場合であるから、音源部104が外部メモリ2
から波形サンプルを読み出す動作は並行して実行されて
おり、CPU側から見ると恰も外部メモリ2をアクセス
したかのように所望のデータが受け取れることになる。
(2-2) If the upper address at the time of the previous access and the upper address at the time of this access match, the 16-bit data read from the external memory 2 the last time is latched by the latch 208. Is.
Therefore, the cache control circuit 207 uses the above (1-2)
16 latched in the latch 208 based on the least significant bit of the address from the CPU 102.
The upper or lower 8-bit data of the bit data is passed to the CPU 102. This (2-2) is a case where the current time slot is a time slot that connects the external memory 2 and the sound source side, so that the sound source unit 104 uses the external memory 2
The operation of reading the waveform sample from is executed in parallel, and from the CPU side, desired data can be received as if the external memory 2 was accessed.

【0045】以上(1)(2)ではCPU102からの
外部メモリアクセス要求が読み出し要求である場合を説
明したが、外部メモリ2がRAMのときは書き込みもで
きるように書き込み制御回路210が設けられている。
CPU102から外部メモリ2に対する書き込み要求が
発行されたとき、現タイムスロットが外部メモリ2をC
PU側に接続するタイムスロットであるなら、書き込み
制御回路210は、CPUバス110からの書き込みデ
ータを外部メモリ2に書き込む。CPU102から外部
メモリ2に対する書き込み要求が発行されたとき、現タ
イムスロットが外部メモリ2を音源側に接続するタイム
スロットであるなら、書き込み制御回路210は、CP
U102にWAIT信号を送って書き込みを待たせる。
In the above (1) and (2), the case where the external memory access request from the CPU 102 is a read request has been described, but when the external memory 2 is a RAM, the write control circuit 210 is provided so that writing can be performed. There is.
When a write request for the external memory 2 is issued from the CPU 102, the current time slot is set to C in the external memory 2.
If it is a time slot connected to the PU side, the write control circuit 210 writes the write data from the CPU bus 110 to the external memory 2. When the CPU 102 issues a write request to the external memory 2 and the current time slot is a time slot that connects the external memory 2 to the sound source side, the write control circuit 210 causes the CP
A WAIT signal is sent to U102 to make writing wait.

【0046】図3は、電源電圧が5.0VかつSX=0か
つマスタークロックの周波数が28MHzの場合のCP
U102および音源104からの外部メモリ2へのアク
セスタイミングを示す波形図である。図3を参照して、
SX=0の場合について説明する。301はマスターク
ロックの波形を示す。また、302,303は、それぞ
れ、φTGおよびφCPUの波形を示す。SX=0のと
きはマスタークロックを1/4分周したクロックがφC
PUおよびφTGとして出力される。304は、φTG
を基準とするタイムスロットを示す。タイムスロット3
04の各スロット内に記載した000〜255の数字は
タイムスロットの番号を示す。音源部104は、このタ
イムスロット304にしたがって、32チャンネル(第
0〜第31チャンネル)分の楽音生成動作を時分割で実
行する。音源部104は、8つのタイムスロットで1チ
ャンネル分の楽音生成を行なうので、000番〜007
番のタイムスロットで第0チャンネルの処理を行ない、
008番〜015番のタイムスロットで第1チャンネル
の処理を行ない、…、248番〜255番のタイムスロ
ットで第31チャンネルの処理を行なうことになる。図
3では、主として、248番〜255番のタイムスロッ
トすなわち第31チャンネルの処理区間(矢印305の
範囲)を示している。
FIG. 3 shows the CP when the power supply voltage is 5.0 V, SX = 0 and the master clock frequency is 28 MHz.
FIG. 7 is a waveform diagram showing access timings of the U102 and the sound source 104 to the external memory 2. Referring to FIG.
The case of SX = 0 will be described. Reference numeral 301 denotes a master clock waveform. Reference numerals 302 and 303 denote waveforms of φTG and φCPU, respectively. When SX = 0, the master clock divided by 1/4 is φC
It is output as PU and φTG. 304 is φTG
Indicates a time slot based on. Time slot 3
The numbers 000 to 255 described in each slot of 04 indicate the number of the time slot. The sound source unit 104 performs the tone generation operation for 32 channels (0th to 31st channels) in time division according to the time slot 304. The tone generator 104 generates musical sound for one channel in eight time slots.
No. 0 time slot, processing channel 0,
The first channel is processed in the 008th to 015th time slots, and the 31st channel is processed in the 248th to 255th time slots. FIG. 3 mainly shows the 248th to 255th time slots, that is, the processing section of channel 31 (range of arrow 305).

【0047】SX=0のときは、(「0」を出力する時
間長さ):(「1」を出力する時間長さ)=3:1となる
ようにφMCが出力される。306は、φMCの波形を
示す。矢印307がφMC=0の区間、矢印308がφ
MC=1の区間であり、その比は3:1になっている。
309は、CPU102または音源部104のどちらか
ら外部メモリ2へアクセス可能であるかを示す。「CP
U」と記載された区間がCPU102から外部メモリ2
をアクセス可能な区間、「音源」と記載された区間が音
源部104から外部メモリ2をアクセス可能な区間を示
す。
When SX = 0, φMC is output such that (time length for outputting “0”) :( time length for outputting “1”) = 3: 1. 306 shows the waveform of φMC. An arrow 307 indicates a section where φMC = 0, and an arrow 308 indicates φ
The section is MC = 1, and the ratio is 3: 1.
Reference numeral 309 indicates which of the CPU 102 and the sound source unit 104 can access the external memory 2. "CP
The section described as “U” is from the CPU 102 to the external memory 2
, And the section described as “sound source” indicates the section in which the external memory 2 can be accessed from the sound source unit 104.

【0048】図1,2で説明したように、CPU102
からの外部メモリアクセス要求に対し、外部メモリ2か
ら読み出すべきデータが既にラッチ208に保持されて
いた場合は、実際に外部メモリ2をアクセスすることな
くラッチ208から読み出したデータをCPU102に
返す。したがって、309に示した「CPU」のスロッ
トで必ずCPU102から外部メモリ2をアクセスする
とは限らないし、「音源」のスロットでもCPU102
からのアクセス要求に応じてデータをCPU102に返
すことがある。
As described with reference to FIGS. 1 and 2, the CPU 102
When the data to be read from the external memory 2 is already held in the latch 208 in response to the external memory access request from the CPU, the data read from the latch 208 is returned to the CPU 102 without actually accessing the external memory 2. Therefore, the external memory 2 is not always accessed from the CPU 102 in the “CPU” slot shown at 309, and the CPU 102 does not always access the external memory 2 in the “sound source” slot.
The data may be returned to the CPU 102 in response to an access request from the CPU.

【0049】311は、CPU102から連続するアド
レスの8ビットデータを順次読み出し要求した場合に返
されるデータの一例を示す。248番のタイムスロット
で、CPU102から、あるアドレスのデータ(16ビ
ットデータの上位とする)を読み出し要求したとする。
このとき、CPU102から指定された上位アドレスで
外部メモリ2から16ビットデータが読み出され、その
上位8ビットがCPU102に返されるとともに、読み
出した16ビットデータはラッチ208にラッチされ
る。この248番のタイムスロットにおける処理は、上
記(1−1)の場合に相当する。
Reference numeral 311 indicates an example of data returned when the CPU 102 sequentially requests reading of 8-bit data of consecutive addresses. It is assumed that the CPU 102 requests the reading of data of a certain address (upper 16-bit data) at the 248th time slot.
At this time, 16-bit data is read from the external memory 2 at the upper address specified by the CPU 102, the upper 8 bits are returned to the CPU 102, and the read 16-bit data is latched by the latch 208. The process in the 248th time slot corresponds to the case of (1-1).

【0050】次に、249番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの下位になる)を読み出し要求したとする。このと
き、指定された上位アドレスのデータは既にラッチ20
8にラッチされているので、ラッチ208の下位8ビッ
トがCPU102に返される。この249番のタイムス
ロットにおける処理は、上記(1−2)の場合に相当す
る。
Next, in the 249th time slot, the CP
It is assumed that the U102 requests to read the data of the next address (lower order of 16-bit data). At this time, the data of the designated upper address has already been latched.
Since it is latched at 8, the lower 8 bits of the latch 208 are returned to the CPU 102. The process in the 249th time slot corresponds to the case of (1-2).

【0051】次に、250番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの上位になる)を読み出し要求したとする。このと
き、指定された上位アドレスはラッチ204にラッチさ
れている前回の上位アドレスと異なるから、今回の上位
アドレスで外部メモリ2から16ビットデータが読み出
され、その上位8ビットがCPU102に返されるとと
もに、読み出した16ビットデータはラッチ208にラ
ッチされる。この250番のタイムスロットにおける処
理は、上記(1−1)の場合に相当する。
Next, in the 250th time slot, the CP
It is assumed that the data of the next address (which is the higher order of 16-bit data) is requested to be read from U102. At this time, since the designated upper address is different from the previous upper address latched by the latch 204, 16-bit data is read from the external memory 2 at the current upper address, and the upper 8 bits are returned to the CPU 102. At the same time, the read 16-bit data is latched by the latch 208. The process in the 250th time slot corresponds to the case of (1-1).

【0052】次に、251番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの下位になる)を読み出し要求したとする。このと
き、指定された上位アドレスのデータは既にラッチ20
8にラッチされているので、ラッチ208の下位8ビッ
トがCPU102に返される。並行して、このタイムス
ロットでは音源部104からの波形データ読み出しが実
行されている。この251番のタイムスロットにおける
処理は、上記(2−2)の場合に相当する。
Next, in the 251st time slot, the CP
It is assumed that the U102 requests to read the data of the next address (lower order of 16-bit data). At this time, the data of the designated upper address has already been latched.
Since it is latched at 8, the lower 8 bits of the latch 208 are returned to the CPU 102. In parallel, waveform data reading from the sound source unit 104 is executed in this time slot. The process in the 251st time slot corresponds to the above case (2-2).

【0053】312は、CPU102から連続するアド
レスの8ビットデータを順次読み出し要求した場合に返
されるデータの他の一例を示す。これは311と異な
り、16ビットデータの下位のデータから読み出し要求
を開始した場合である。
Reference numeral 312 shows another example of the data returned when the CPU 102 requests the sequential reading of 8-bit data of consecutive addresses. This is different from 311 in that a read request is started from lower 16-bit data.

【0054】248番と249番のタイムスロットで、
CPU102から、あるアドレスのデータ(16ビット
データの下位とする)およびその次のアドレスのデータ
(上位)を読み出し要求したとする。これらの読み出し
要求に対しては、外部メモリ2からデータが読み出され
て返される。次の250番のタイムスロットでは、24
9番の上位データを読み出したときに下位データもラッ
チされているから、外部メモリ2をアクセスすることな
く、ラッチされていたデータがCPU102に返され
る。次の251番のタイムスロットでは、CPU102
から次のアドレスのデータ(上位)の読み出し要求が発
行されるが、このタイムスロットでは音源部104から
の読み出しが行なわれ、かつ今回のCPU102からの
上位アドレスは前回の上位アドレスとは異なるので、C
PU102の読み出し要求は待たされる(上記(2−
1)の場合)。次の252番のタイムスロットでは、上
位データの読み出しから開始されるので、引き続き連続
したアドレスの読み出しを続けるなら、311に示した
例と同様に255番のタイムスロットでもCPU102
にデータが返されることになる。
In the 248th and 249th time slots,
It is assumed that the CPU 102 requests the data of a certain address (lower order of 16-bit data) and the data of the next address (upper order) to be read. In response to these read requests, data is read from the external memory 2 and returned. 24 in the next 250th time slot
Since the lower data is also latched when the 9th upper data is read, the latched data is returned to the CPU 102 without accessing the external memory 2. In the next time slot 251, the CPU 102
Issue a read request for the data (upper) of the next address from the sound source unit 104 in this time slot, and the upper address from the CPU 102 this time is different from the previous higher address. C
The read request from the PU 102 is delayed (the above (2-
In the case of 1)). In the next 252nd time slot, the reading of the upper data starts, so if the continuous reading of continuous addresses is continued, the CPU 102 also operates in the 255th time slot in the same manner as the example shown in 311.
Data will be returned to.

【0055】図4は、電源電圧が3.3VかつSX=1か
つマスタークロックの周波数が20MHzの場合のCP
U102および音源104からの外部メモリ2へのアク
セスタイミングを示す波形図である。図4を参照して、
SX=1の場合について説明する。401はマスターク
ロックの波形、402,403はそれぞれφTGおよび
φCPUの波形を示す。SX=1のときは、マスターク
ロックを1/2分周したクロックがφTGとして出力さ
れ、マスタークロックを1/4分周したクロックがφC
PUとして出力される。404は、φTGを基準とする
タイムスロットを示す。タイムスロット404に付した
番号の記載や、音源部104がこのタイムスロット40
4にしたがって32チャンネル時分割動作することなど
は図3の場合と同様である。
FIG. 4 shows the CP when the power supply voltage is 3.3 V, SX = 1 and the master clock frequency is 20 MHz.
FIG. 7 is a waveform diagram showing access timings of the U102 and the sound source 104 to the external memory 2. Referring to FIG.
The case where SX = 1 will be described. Reference numeral 401 represents a master clock waveform, and 402 and 403 represent φTG and φCPU waveforms, respectively. When SX = 1, a clock obtained by dividing the master clock by 1/2 is output as φTG, and a clock obtained by dividing the master clock by 1/4 is φC.
It is output as PU. Reference numeral 404 indicates a time slot based on φTG. The description of the number given to the time slot 404 and the sound source unit 104
The operation of 32 channel time division according to No. 4 is similar to the case of FIG.

【0056】SX=1のときは、(「0」を出力する時
間長さ):(「1」を出力する時間長さ)=1:1となる
ようにφMCが出力される。406は、φMCの波形を
示す。矢印407がφMC=0の区間、矢印408がφ
MC=1の区間であり、その比は1:1になっている。
矢印407の区間で、CPU102は外部メモリ2をア
クセスできる。また、矢印408の区間で、音源部10
4は外部メモリ2をアクセスできる。409は、CPU
102または音源部104のどちらから外部メモリ2へ
アクセス可能であるかを示す。
When SX = 1, φMC is output such that (time length for outputting "0") :( time length for outputting "1") = 1: 1. 406 shows the waveform of φMC. Arrow 407 is the section where φMC = 0, and arrow 408 is φ
The section is MC = 1, and the ratio is 1: 1.
The CPU 102 can access the external memory 2 in a section indicated by an arrow 407. Further, in the section indicated by the arrow 408, the sound source unit 10
4 can access the external memory 2. 409 is a CPU
It shows which of the 102 and the sound source unit 104 can access the external memory 2.

【0057】411は、CPU102から連続するアド
レスの8ビットデータを順次読み出し要求した場合に返
されるデータの一例を示す。区間407(音源部のタイ
ムスロットで見ると248,249番のタイムスロッ
ト)で、CPU102から、あるアドレスのデータ(1
6ビットデータの上位とする)を読み出し要求したとす
る。このとき、指定された上位アドレスで外部メモリ2
から16ビットデータが読み出され、その上位8ビット
がCPU102に返されるとともに、読み出した16ビ
ットデータはラッチ208にラッチされる。この区間に
おける処理は、上記(1−1)の場合に相当する。
Reference numeral 411 shows an example of data returned when the CPU 102 sequentially requests reading of 8-bit data of consecutive addresses. In a section 407 (time slots of 248 and 249 when viewed in the time slot of the sound source section), data of a certain address (1
It is assumed that a read request is made for the upper 6-bit data). At this time, the external memory 2 at the specified upper address
16-bit data is read out, the upper 8 bits are returned to the CPU 102, and the read-out 16-bit data is latched by the latch 208. The process in this section corresponds to the case of (1-1) above.

【0058】次に、区間408(音源部のタイムスロッ
トで見ると250,251番のタイムスロット)で、C
PU102から、次のアドレスのデータ(16ビットデ
ータの下位になる)を読み出し要求したとする。このと
き、指定されたアドレスのデータは既にラッチ208に
ラッチされているので、ラッチ208の下位8ビットが
CPU102に返される。この区間における処理は、上
記(1−2)の場合に相当する。
Next, in a section 408 (250 and 251 time slots when viewed from the time slot of the sound source section), C
It is assumed that the PU 102 makes a read request for data at the next address (lower order of 16-bit data). At this time, since the data of the designated address has already been latched in the latch 208, the lower 8 bits of the latch 208 are returned to the CPU 102. The process in this section corresponds to the case of (1-2) above.

【0059】412は、CPU102から連続するアド
レスの8ビットデータを順次読み出し要求した場合に返
されるデータの他の一例を示す。これは411と異なり
16ビットデータの下位のデータから読み出し要求を開
始した場合である。区間407で、あるアドレスのデー
タ(16ビットデータの下位とする)を読み出し要求
し、外部メモリ2からデータが読み出されて返される。
次の区間408では、CPU102から次のアドレスの
データ(上位)の読み出し要求が発行されるが、このタ
イムスロットでは音源部104からの読み出しが行なわ
れ、かつ今回のCPU102からの上位アドレスは前回
の上位アドレスとは異なるので、CPU102の読み出
し要求は待たされる(上記(2−1)の場合)。次の区
間からは、上位データの読み出しから開始されるので、
引き続き連続したアドレスから読み出すなら、411に
示した例と同様になる。
Reference numeral 412 shows another example of data returned when the CPU 102 sequentially requests reading of 8-bit data of consecutive addresses. This is different from 411 in that a read request is started from lower 16-bit data. In a section 407, a read request is made for data at a certain address (lower order of 16-bit data), and the data is read from the external memory 2 and returned.
In the next section 408, the CPU 102 issues a read request for the data (upper) of the next address, but in this time slot, the sound source unit 104 is read, and the upper address of the current CPU 102 is the previous address. Since it is different from the upper address, the read request of the CPU 102 is kept waiting (case (2-1) above). From the next section, it starts from reading the upper data, so
If reading is continued from consecutive addresses, the same as in the example shown in 411.

【0060】なお、CPU102のプログラムの実行で
は、分岐などがなければアドレスを順次1つずつ進めな
がら外部メモリ2をアクセスしていく場合が多い。逆
に、CPU102が、同じアドレスを何回も続けて読む
ことは稀である。したがって、CPU102によって前
のタイムスロットで読み出されラッチ208にラッチさ
れたデータのうち、その次のタイムスロットでヒットし
て使えるのは、前のタイムスロットでCPU102が受
け取らなかった方のデータである場合が多い。このた
め、上述の発明の実施の形態例において、ラッチ208
を(16ビットでなく)8ビットのラッチとし、「前の
タイムスロットでCPU102が読み出したデータのう
ち、そのタイムスロットでCPU102が受け取らなか
った方のデータ」のみをラッチするようにしてもよい。
このようにしても、余り不都合は生じないし(CPU1
02がアドレスを1つずつ進めながら外部メモリ2をア
クセスするなら効果は同じである)、却って16ビット
ラッチを8ビットラッチで済ませることができるという
効果がある。
In execution of the program of the CPU 102, the external memory 2 is often accessed while advancing addresses one by one unless there is a branch or the like. On the contrary, the CPU 102 rarely reads the same address many times in succession. Therefore, of the data read by the CPU 102 in the previous time slot and latched in the latch 208, the data that has not been received by the CPU 102 in the previous time slot can be used by hitting in the next time slot. In many cases. Therefore, in the above-described exemplary embodiment of the invention, the latch 208
May be an 8-bit latch (instead of 16 bits), and only "the data that the CPU 102 did not receive in that time slot among the data read by the CPU 102 in the previous time slot" may be latched.
Even if it does in this way, there is not much inconvenience (CPU1
The same effect can be obtained if 02 accesses the external memory 2 while advancing the address one by one). On the contrary, there is an effect that the 16-bit latch can be completed with the 8-bit latch.

【0061】以上説明した発明の実施の形態によれば、
音源部104が外部メモリ2をアクセスしているタイム
スロットであっても、CPU102がアクセス要求した
データが既に読み出されてラッチされている場合にはそ
のデータをCPU102に返すことができるので、音源
部による外部メモリのアクセスによってCPUの動作が
遅くなることを極力防止することができる。
According to the embodiment of the invention described above,
Even in the time slot in which the sound source unit 104 is accessing the external memory 2, if the data requested by the CPU 102 has already been read and latched, the data can be returned to the CPU 102. It is possible to prevent the operation of the CPU from being slowed down by accessing the external memory by the unit.

【0062】また、上述した発明の実施の形態によれ
ば、CPU102と音源部104のアクセス時間の比
は、3:1(SX=0の場合)と1:1(SX=1の場
合)であり、CPU102のクロックを基準とすると、
前者では4クロックに1回、後者では2クロックに1
回、音源部104からのアクセスが入る。ところで、外
部メモリ2から読み出したデータには、CPU102の
2アドレス分のデータが入っており、CPU102が連
続したアドレスを順次アクセスする場合、ラッチ208
にラッチされたデータが有効に使われるのは、2クロッ
クに1回ということになる。この周期が、音源部104
からアクセスの入る周期(4クロックに1回、または、
2クロックに1回)の約数となっているので、CPU1
02のアクセスが連続している限り、ラッチ208のデ
ータが1回ヒットしたらその次もヒットする、つまり連
続的にヒットし続ける。さらに、図3の312や図4の
412に示したように、1回WAITされると、次のタ
イムスロットからの連続したアクセスでは必ずヒットす
るようになる。一般化して述べると、外部メモリ2の1
アドレスに含まれるCPU102の単位アクセスデータ
の数が、音源部104のアクセス周期の約数になってい
る場合、ラッチ208の連続ヒットする確率が改善され
るという効果がある。
Further, according to the above-described embodiment of the present invention, the ratio of access times of the CPU 102 and the sound source unit 104 is 3: 1 (when SX = 0) and 1: 1 (when SX = 1). Yes, based on the clock of the CPU 102,
In the former, once every 4 clocks, in the latter, once every 2 clocks
The access from the sound source unit 104 is entered. By the way, the data read from the external memory 2 contains data for two addresses of the CPU 102, and when the CPU 102 sequentially accesses consecutive addresses, the latch 208 is used.
The data latched in is effectively used once every two clocks. This cycle is the sound source unit 104
Access period from once (every 4 clocks, or
Since it is a divisor of once every two clocks), CPU1
As long as the access of 02 is continuous, if the data of the latch 208 is hit once, the next is also hit, that is, the hit is continuously hit. Furthermore, as shown by 312 in FIG. 3 and 412 in FIG. 4, once WAIT is performed, a continuous access from the next time slot always causes a hit. Generally speaking, 1 of the external memory 2
When the number of unit access data of the CPU 102 included in the address is a divisor of the access cycle of the sound source unit 104, there is an effect that the probability of continuous hits of the latch 208 is improved.

【0063】次に、上記図1および図2の変形例を説明
する。この変形例は、図1と同じ構成の電子楽器であ
る。その外部メモリ制御回路(MC)は、図2の構成に
点線部分220を加え、さらにラッチ208を16ビッ
ト×2段(第1段、第2段と呼ぶ)構成としたものであ
る。
Next, a modified example of FIGS. 1 and 2 will be described. This modification is an electronic musical instrument having the same configuration as that in FIG. The external memory control circuit (MC) has a configuration in which a dotted line portion 220 is added to the configuration of FIG. 2 and the latch 208 has a configuration of 16 bits × 2 stages (referred to as a first stage and a second stage).

【0064】外部メモリ2から読み出した16ビットデ
ータをラッチ208の第1段または第2段のどちらに書
き込むか、およびラッチ208の第1段または第2段の
どちらから上位8ビットまたは下位8ビットを読み出し
てセレクタ209に入力するかは、キャッシュ制御回路
207が制御する。なお、セレクタ209に、外部メモ
リ2のデータ線の上位8ビットおよび下位8ビット、ラ
ッチ208の第1段の上位8ビットおよび下位8ビッ
ト、並びにラッチ208の第2段の上位8ビットおよび
下位8ビットが入力するようにし、キャッシュ制御回路
207によりセレクタ209を切り替えてこれらの入力
を選択出力するようにしてもよい。
Whether the 16-bit data read from the external memory 2 is written to the first stage or the second stage of the latch 208, and the high-order 8 bits or the low-order 8 bits from either the first stage or the second stage of the latch 208 The cache control circuit 207 controls whether or not to read and input to the selector 209. The selector 209 includes the upper 8 bits and the lower 8 bits of the data line of the external memory 2, the upper 8 bits and the lower 8 bits of the first stage of the latch 208, and the upper 8 bits and the lower 8 bits of the second stage of the latch 208. Bits may be input, and the cache control circuit 207 may switch the selector 209 to selectively output these inputs.

【0065】CPUバス110の上位アドレスは、セレ
クタ221および加算器222に入力する。加算器22
2は、入力した上位アドレスに1を加算し、加算結果を
セレクタ221に出力する。セレクタ221は、キャッ
シュ制御回路207の制御の元で、CPUバス110の
上位アドレスそのものか、またはそれを+1した値を、
選択出力する。セレクタ221の出力はセレクタ201
に入力する。
The upper address of the CPU bus 110 is input to the selector 221 and the adder 222. Adder 22
2 adds 1 to the input upper address and outputs the addition result to the selector 221. Under the control of the cache control circuit 207, the selector 221 outputs the upper address itself of the CPU bus 110 or a value obtained by adding +1 to the upper address.
Select output. The output of the selector 221 is the selector 201.
To enter.

【0066】図3の313は、この変形例において、C
PU102から連続するアドレスの8ビットデータを順
次読み出し要求した場合に返されるデータの一例を示
す。249番のタイムスロットで、CPU102から、
あるアドレスのデータ(16ビットデータの上位とす
る)を読み出し要求したとする。このとき、指定された
上位アドレスで外部メモリ2から16ビットデータが読
み出され、その上位8ビットがCPU102に返される
とともに、読み出した16ビットデータはラッチ208
の第1段にラッチされる。
Reference numeral 313 in FIG. 3 indicates C in this modification.
An example of data returned when the PU 102 sequentially requests reading of 8-bit data of consecutive addresses is shown. In the 249th time slot, from the CPU 102,
It is assumed that a read request is made for data at a certain address (upper 16-bit data). At this time, 16-bit data is read from the external memory 2 at the designated upper address, the upper 8 bits are returned to the CPU 102, and the read 16-bit data is latched by the latch 208.
Latched in the first stage of.

【0067】次に、250番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの下位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回(249番スロット)の上位アドレ
スと一致するから、当該アドレスのデータは既にラッチ
208の第1段にラッチされていることが分かる(キャ
ッシュ制御回路207はラッチ208の第1段および第
2段のそれぞれについてどのアドレスのデータをラッチ
したか管理しているものとする。また、CPUバス11
0からの上位アドレスはキャッシュ制御回路207にも
入力するものとする。)。そこで、キャッシュ制御回路
207はラッチ208の第1段の下位8ビットが選択出
力されるようにセレクタ209を切り替え、これにより
所望のデータがCPU102に返される。
Next, in the 250th time slot, the CP
It is assumed that the U102 requests to read the data of the next address (lower order of 16-bit data). At this time, the designated upper address of this time matches the previous (249th slot) upper address latched in the latch 204, so that the data of the address has already been latched in the first stage of the latch 208. (The cache control circuit 207 manages which address data is latched in each of the first and second stages of the latch 208. Further, the CPU bus 11
Upper addresses starting from 0 are also input to the cache control circuit 207. ). Therefore, the cache control circuit 207 switches the selector 209 so that the lower 8 bits of the first stage of the latch 208 are selectively output, whereby desired data is returned to the CPU 102.

【0068】同時に、この250番のタイムスロットは
外部メモリ2をCPU側に接続するタイムスロットであ
るから、キャッシュ制御回路207はセレクタ221を
切り替えて、加算器222からの出力(すなわち、今回
の上位アドレスに1を加えた値)がセレクタ201を介
して外部メモリ2のアドレス線に入力するようにする。
これにより、今回の上位アドレスの次のアドレスのデー
タが先読みされる(図3の313では下側に「次アドレ
スラッチ」と記載して先読みを示した)。先読みされた
データは、セレクタ202を介してラッチ208の第2
段にラッチされる。なお、先読みを行なったタイムスロ
ットにおいて、今回CPU102に返したデータが下位
データであるときは、次のタイムスロットで次のアドレ
ス(先読みしたアドレスである)のアクセス要求が来た
ときに当該データが既に先読みされていることを検出す
るため、ラッチ204にラッチした今回の上位アドレス
に1を加算して、ラッチ204の内容を先読みを行なっ
た上位アドレスに更新しておく。
At the same time, since the 250th time slot is a time slot for connecting the external memory 2 to the CPU side, the cache control circuit 207 switches the selector 221 to output from the adder 222 (that is, the higher order of this time). The value obtained by adding 1 to the address) is input to the address line of the external memory 2 via the selector 201.
As a result, the data at the address next to the upper address this time is pre-read (in 313 in FIG. 3, the pre-read is indicated by writing "next address latch" on the lower side). The pre-read data is transferred to the second data of the latch 208 via the selector 202.
Latched to the stage. If the data returned to the CPU 102 this time is lower data in the pre-read time slot, the data will be changed when the access request for the next address (which is the pre-read address) is received in the next time slot. In order to detect that prefetching has already been performed, 1 is added to the high-order address of this time latched by the latch 204, and the contents of the latch 204 are updated to the pre-read high-order address.

【0069】次に、251番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの上位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回の上位アドレス(実際は、前回すな
わち250番スロットでアクセスした上位アドレスでな
く、それに+1した値(先読みを行なった上位アドレ
ス)が設定されている)と一致するから、当該アドレス
のデータは既にラッチ208の第2段にラッチされてい
ることが分かる。そこで、キャッシュ制御回路207は
ラッチ208の第2段の上位8ビットが選択出力される
ようにセレクタ209を切り替え、これにより所望のデ
ータがCPU102に返される。並行して、このタイム
スロットでは音源部104からの波形データ読み出しが
実行されている。
Next, in the 251st time slot, the CP
It is assumed that the data of the next address (which is the higher order of 16-bit data) is requested to be read from U102. At this time, the designated high-order address of this time is the previous high-order address latched by the latch 204 (actually, it is not the high-order address accessed last time, that is, the 250th slot, but a value obtained by adding 1 to it (the high-order address for which prefetching has been performed). Is set), the data of the address is already latched in the second stage of the latch 208. Therefore, the cache control circuit 207 switches the selector 209 so that the upper 8 bits of the second stage of the latch 208 are selectively output, whereby desired data is returned to the CPU 102. In parallel, waveform data reading from the sound source unit 104 is executed in this time slot.

【0070】次に、252番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの下位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回の上位アドレスと一致するから、当
該アドレスのデータは既にラッチ208の第2段にラッ
チされていることが分かる。そこで、キャッシュ制御回
路207はラッチ208の第2段の下位8ビットが選択
出力されるようにセレクタ209を切り替え、これによ
り所望のデータがCPU102に返される。
Next, in the 252nd time slot, the CP
It is assumed that the U102 requests to read the data of the next address (lower order of 16-bit data). At this time, since the designated upper address of this time matches the previous higher address latched in the latch 204, it can be seen that the data of the address is already latched in the second stage of the latch 208. Therefore, the cache control circuit 207 switches the selector 209 so that the lower 8 bits of the second stage of the latch 208 are selectively output, whereby desired data is returned to the CPU 102.

【0071】同時に、この252番のタイムスロットは
外部メモリ2をCPU側に接続するタイムスロットであ
るから、250番スロットで行なったのと同様に次の上
位アドレスを先読みしておく。先読みしたデータは、現
在使用していないラッチ208の第1段にラッチされ
る。また、ラッチ204の内容を先読みを行なった上位
アドレスに更新しておく。
At the same time, since the 252nd time slot is a time slot for connecting the external memory 2 to the CPU side, the next higher address is preread in the same manner as the 250th slot. The pre-read data is latched in the first stage of the latch 208 which is not currently used. In addition, the contents of the latch 204 are updated to the pre-read upper address.

【0072】次に、253番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの上位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回の上位アドレス(先読みを行なった
上位アドレスが設定されている)と一致するから、当該
アドレスのデータは既にラッチ208の第1段にラッチ
されていることが分かる。そこで、キャッシュ制御回路
207はラッチ208の第1段の上位8ビットが選択出
力されるようにセレクタ209を切り替え、これにより
所望のデータがCPU102に返される。
Next, in the 253rd time slot, the CP
It is assumed that the data of the next address (which is the higher order of 16-bit data) is requested to be read from U102. At this time, the designated upper address of this time matches the previous higher address latched in the latch 204 (the higher address for which pre-reading is performed is set), so that the data of the address is already stored in the latch 208. It can be seen that it is latched in one stage. Therefore, the cache control circuit 207 switches the selector 209 so that the upper 8 bits of the first stage of the latch 208 are selectively output, whereby the desired data is returned to the CPU 102.

【0073】同時に、この253番のタイムスロットは
外部メモリ2をCPU側に接続するタイムスロットであ
るから、250番スロットで行なったのと同様に次の上
位アドレスを先読みしておく。先読みしたデータは、現
在使用していないラッチ208の第2段にラッチされ
る。なお、この先読みを行なったタイムスロットにおい
て、今回CPU102に返したデータが上位データであ
るときは、「今回CPU102に返した上位データは以
前に先読みしてあったデータ」であり、「次のスロット
で、その以前に先読みしてあったデータの下位8ビット
がCPU102に返されるはず」であり、「さらにその
次のスロットで、今回先読みしたデータの上位8ビット
が返されるはず」であるということになる(もちろん連
続したアドレスでCPU102からアクセス要求がくる
ものとする)。したがって、次のタイムスロットで次の
アドレスのアクセス要求が来たときに当該データが既に
先読みされていることを検出するため、ラッチ204に
ラッチした今回の上位アドレスには1を加算せずそのま
まにしておく。
At the same time, since the time slot No. 253 is a time slot for connecting the external memory 2 to the CPU side, the next higher address is prefetched in the same way as the No. 250 slot. The pre-read data is latched in the second stage of the latch 208 which is not currently used. When the data returned to the CPU 102 this time is higher-order data in the pre-read time slot, the "higher-order data returned to the CPU 102 this time is previously read-ahead data" and "next slot". Then, the lower 8 bits of the previously read data should be returned to the CPU 102, and "the upper 8 bits of the previously read data should be returned in the next slot." (Of course, access requests come from the CPU 102 at consecutive addresses). Therefore, when the access request for the next address is received in the next time slot, it is detected that the data has already been read in advance. Therefore, 1 is not added to the upper address of this time latched in the latch 204 and is left as it is. Keep it.

【0074】次に、254番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの下位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回の上位アドレスと一致するから、当
該アドレスのデータは既にラッチ208の第1段にラッ
チされていることが分かる。そこで、キャッシュ制御回
路207はラッチ208の第1段の下位8ビットが選択
出力されるようにセレクタ209を切り替え、これによ
り所望のデータがCPU102に返される。なお、この
タイムスロットでは、以前に先読みされていたラッチ2
08の第1段から下位データをCPU102に返し、ラ
ッチ208の第2段には次のスロットでCPU102に
返すべきデータがラッチされていることが分かっている
から、ラッチ204の内容を+1してラッチ208の第
2段の先読みデータの上位アドレスに更新しておく。
Next, in the 254th time slot, the CP
It is assumed that the U102 requests to read the data of the next address (lower order of 16-bit data). At this time, since the designated upper address of this time matches the previous higher address latched in the latch 204, it is understood that the data of the address is already latched in the first stage of the latch 208. Therefore, the cache control circuit 207 switches the selector 209 so that the lower 8 bits of the first stage of the latch 208 are selectively output, whereby desired data is returned to the CPU 102. It should be noted that in this time slot, latch 2 which was previously read ahead was
It is known that the lower data is returned to the CPU 102 from the first stage of 08, and the data to be returned to the CPU 102 in the next slot is latched in the second stage of the latch 208, so the content of the latch 204 is incremented by 1. The high-order address of the second read-ahead data of the latch 208 is updated.

【0075】次に、255番のタイムスロットで、CP
U102から、次のアドレスのデータ(16ビットデー
タの上位になる)を読み出し要求したとする。このと
き、指定された今回の上位アドレスはラッチ204にラ
ッチされている前回の上位アドレス(実際は、前回すな
わち254番スロットでアクセスした上位アドレスでな
く、それに+1した値(先読みを行なった上位アドレ
ス)が設定されている)と一致するから、当該アドレス
のデータは既にラッチ208の第2段にラッチされてい
ることが分かる。そこで、キャッシュ制御回路207は
ラッチ208の第2段の上位8ビットが選択出力される
ようにセレクタ209を切り替え、これにより所望のデ
ータがCPU102に返される。並行して、このタイム
スロットでは音源部104からの波形データ読み出しが
実行されている。
Next, in the 255th time slot, the CP
It is assumed that the data of the next address (which is the higher order of 16-bit data) is requested to be read from U102. At this time, the designated high-order address of this time is the previous high-order address latched by the latch 204 (actually, it is not the high-order address accessed in the previous time, that is, the 254th slot, but a value obtained by adding +1 to it (the high-order address for which prefetching has been performed). Is set), the data of the address is already latched in the second stage of the latch 208. Therefore, the cache control circuit 207 switches the selector 209 so that the upper 8 bits of the second stage of the latch 208 are selectively output, whereby desired data is returned to the CPU 102. In parallel, waveform data reading from the sound source unit 104 is executed in this time slot.

【0076】以上のように、この変形例では、CPUか
ら外部メモリの連続したアドレスをアクセスする場合に
ほとんどCPUが待たされることがない。
As described above, in this modification, the CPU hardly waits when accessing consecutive addresses in the external memory from the CPU.

【0077】なお、上記変形例において、ラッチ204
および比較器205を無くして、キャッシュ制御回路2
07がこれらの機能を果たすようにしてもよい。すなわ
ち、キャッシュ制御回路207で、ラッチ208の第1
段および第2段にラッチしたデータのアドレスを管理
し、CPU102から出力されるアドレスとラッチして
いるアドレスとに基づいて上述した管理を行なうように
してもよい。
In the above modification, the latch 204
And the cache control circuit 2 without the comparator 205
07 may perform these functions. That is, in the cache control circuit 207,
The addresses of the data latched in the second stage and the second stage may be managed, and the above management may be performed based on the address output from the CPU 102 and the latched address.

【0078】[0078]

【発明の効果】以上説明したように、この発明によれ
ば、音源部とCPUとを1チップ化した装置において、
音源部による外部メモリのアクセスによってCPUの動
作が遅くなることを極力防止することができる。
As described above, according to the present invention, in the device in which the sound source section and the CPU are integrated into one chip,
It is possible to prevent the operation of the CPU from being delayed by the access to the external memory by the tone generator.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明に係る音源チップを用いた電子楽器の
ブロック構成図
FIG. 1 is a block diagram of an electronic musical instrument using a sound source chip according to the present invention.

【図2】外部メモリ制御回路(MC)のブロック構成図FIG. 2 is a block diagram of an external memory control circuit (MC).

【図3】SX=0の場合におけるアクセスタイミングを
示す波形図
FIG. 3 is a waveform diagram showing access timing when SX = 0.

【図4】SX=1の場合におけるアクセスタイミングを
示す波形図
FIG. 4 is a waveform diagram showing access timing when SX = 1.

【符号の説明】[Explanation of symbols]

1…音源チップ、2…外部メモリ、3…鍵盤、4…パネ
ル、5…バッファ、6…MIDI端子、7…電源部、8
…水晶、9…切り替え部(SX)、10…サウンドシス
テム、101…パラレルポート、102…CPU、10
3…外部メモリ制御回路(MC)、104…音源部(T
G)、105…デジタルアナログ変換器(DAC)、1
06…MIDIインターフェイス、107…タイマ、1
08…RAM、109…クロック発生器、110…バス
ライン、201,202,209…セレクタ、203…
アクセス制御回路、204,208…ラッチ、205…
比較器、206…アドレスデコーダ、207…キャッシ
ュ制御回路。
1 ... Sound source chip, 2 ... External memory, 3 ... Keyboard, 4 ... Panel, 5 ... Buffer, 6 ... MIDI terminal, 7 ... Power supply section, 8
... Crystal, 9 ... Switching unit (SX), 10 ... Sound system, 101 ... Parallel port, 102 ... CPU, 10
3 ... External memory control circuit (MC), 104 ... Sound source unit (T
G), 105 ... Digital-to-analog converter (DAC), 1
06 ... MIDI interface, 107 ... Timer, 1
08 ... RAM, 109 ... Clock generator, 110 ... Bus line, 201, 202, 209 ... Selector, 203 ...
Access control circuit, 204, 208 ... Latch, 205 ...
Comparator, 206 ... Address decoder, 207 ... Cache control circuit.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】中央処理装置と音源装置とを1チップ上に
形成するとともに、前記音源装置が読み出す波形データ
と前記中央処理装置が読み出すデータとを記憶した記憶
手段が接続され、前記記憶手段の1アドレス中に前記中
央処理装置の単位アクセスデータが複数含まれるような
楽音生成装置であって、所定時間のタイムスロットごと
の処理によって所定回数の前記中央処理装置からの前記
記憶手段のアクセスと所定回数の前記音源装置からの前
記記憶手段のアクセスとを繰り返すものにおいて、 前記音源装置が前記記憶手段をアクセスするタイムスロ
ットの前のタイムスロットで前記中央処理装置が読み出
したデータを保持しておく保持手段と、 前記音源装置が前記記憶手段をアクセスするタイムスロ
ットにおいて、前記保持手段により前記中央処理装置の
読み出したいデータが保持されているかどうかを判定す
る判定手段と、 前記判定手段で保持されていると判定された場合は、該
保持されているデータから前記中央処理装置の読み出し
たいデータを取り出して前記中央処理装置に供給する供
給手段とを備えたことを特徴とする楽音生成装置。
1. A central processing unit and a sound source device are formed on a single chip, and a storage unit for storing waveform data read by the sound source unit and data read by the central processing unit is connected to the storage unit. A tone generating apparatus in which a plurality of unit access data of the central processing unit is included in one address, and a predetermined number of times of access from the central processing unit to the storage means and a predetermined number of times by a process for each time slot of a predetermined time. Holding the data read by the central processing unit in a time slot before the time slot in which the sound source device accesses the storage means. Means, and in the time slot in which the sound source device accesses the storage means, by the holding means. The determination unit that determines whether the data to be read by the central processing unit is stored, and if the determination unit determines that the data is stored, the central processing unit wants to read from the stored data. And a supply means for extracting data and supplying it to the central processing unit.
【請求項2】中央処理装置と音源装置とを1チップ上に
形成するとともに、前記音源装置が読み出す波形データ
と前記中央処理装置が読み出すデータとを記憶した記憶
手段が接続され、前記記憶手段の1アドレス中に前記中
央処理装置の単位アクセスデータが複数含まれるような
楽音生成装置であって、所定時間のタイムスロットごと
の処理によって所定回数の前記中央処理装置からの前記
記憶手段のアクセスと所定回数の前記音源装置からの前
記記憶手段のアクセスとを繰り返すものにおいて、 前記中央処理装置からのアクセス要求に応じて前記記憶
手段をアクセスするタイムスロットで、前記中央処理装
置が読み出したデータから取り出したデータを前記中央
処理装置に供給するとともに、該読み出したデータを保
持しておく第1の保持手段と、 前記第1の保持手段に保持されていたデータから取り出
したデータを前記中央処理装置からのアクセス要求に応
じて前記中央処理装置に供給するタイムスロットで、該
保持されていたデータの次のアドレスのデータを前記記
憶手段から読み出して保持しておく第2の保持手段と、 前記中央処理装置からアクセス要求が発行されたタイム
スロットにおいて、前記第1の保持手段または第2の保
持手段の何れかに、前記中央処理装置の今回読み出した
いデータが保持されているかどうかを判定する判定手段
と、 前記判定手段で保持されていると判定された場合は、前
記第1の保持手段または第2の保持手段に保持されてい
るデータから前記中央処理装置の読み出したいデータを
取り出して前記中央処理装置に供給する供給手段とを備
えたことを特徴とする楽音生成装置。
2. A central processing unit and a sound source device are formed on a single chip, and storage means for storing waveform data read by the sound source device and data read by the central processing unit are connected to the storage means. A tone generating apparatus in which a plurality of unit access data of the central processing unit is included in one address, and a predetermined number of times of access from the central processing unit to the storage means and a predetermined number of times by a process for each time slot of a predetermined time. In the case of repeating the access of the storage means from the sound source device for the number of times, the time slot for accessing the storage means in response to the access request from the central processing device is taken out from the data read by the central processing device. First holding for supplying the data to the central processing unit and holding the read data And a time slot for supplying the data taken out from the data held in the first holding means to the central processing unit in response to an access request from the central processing unit. Of the first holding means or the second holding means in the time slot in which the access request is issued from the central processing unit. In either case, the central processing unit determines whether or not the data to be read this time is stored, and if the determination unit determines that the data is stored, the first storage unit or the second storage unit. And a supply means for extracting the data to be read by the central processing unit from the data stored in the storage means and supplying the data to the central processing unit. Tone generation apparatus, characterized in that.
JP7353236A 1995-12-28 1995-12-28 Music generator Expired - Lifetime JP2901143B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7353236A JP2901143B2 (en) 1995-12-28 1995-12-28 Music generator
US08/773,200 US5804749A (en) 1995-12-28 1996-12-24 Sound source chip having variable clock to optimize external memory access

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7353236A JP2901143B2 (en) 1995-12-28 1995-12-28 Music generator

Publications (2)

Publication Number Publication Date
JPH09185371A true JPH09185371A (en) 1997-07-15
JP2901143B2 JP2901143B2 (en) 1999-06-07

Family

ID=18429481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7353236A Expired - Lifetime JP2901143B2 (en) 1995-12-28 1995-12-28 Music generator

Country Status (1)

Country Link
JP (1) JP2901143B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7220908B2 (en) 2002-09-12 2007-05-22 Yamaha Corporation Waveform processing apparatus with versatile data bus
JP2009198844A (en) * 2008-02-22 2009-09-03 Kawai Musical Instr Mfg Co Ltd One-chip electronic musical sound generator
JP2009223060A (en) * 2008-03-17 2009-10-01 Kawai Musical Instr Mfg Co Ltd One-chip electronic musical sound generator
JP2014092723A (en) * 2012-11-05 2014-05-19 Yamaha Corp Sound generator
JP2014092722A (en) * 2012-11-05 2014-05-19 Yamaha Corp Sound generator
JP2014112198A (en) * 2012-11-05 2014-06-19 Yamaha Corp Sound generating device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7220908B2 (en) 2002-09-12 2007-05-22 Yamaha Corporation Waveform processing apparatus with versatile data bus
JP2009198844A (en) * 2008-02-22 2009-09-03 Kawai Musical Instr Mfg Co Ltd One-chip electronic musical sound generator
JP2009223060A (en) * 2008-03-17 2009-10-01 Kawai Musical Instr Mfg Co Ltd One-chip electronic musical sound generator
JP2014092723A (en) * 2012-11-05 2014-05-19 Yamaha Corp Sound generator
JP2014092722A (en) * 2012-11-05 2014-05-19 Yamaha Corp Sound generator
JP2014112198A (en) * 2012-11-05 2014-06-19 Yamaha Corp Sound generating device

Also Published As

Publication number Publication date
JP2901143B2 (en) 1999-06-07

Similar Documents

Publication Publication Date Title
US5691493A (en) Multi-channel tone generation apparatus with multiple CPU's executing programs in parallel
US5804749A (en) Sound source chip having variable clock to optimize external memory access
US20050211070A1 (en) Sound waveform synthesizer
US5763801A (en) Computer system and method for performing wavetable music synthesis which stores wavetable data in system memory
US6473847B1 (en) Memory management method for use in computer system
US5584034A (en) Apparatus for executing respective portions of a process by main and sub CPUS
JPH07181969A (en) Code segment substitution device, real-time signal processing system using the same, and audio processing system
JP2901143B2 (en) Music generator
JP3163984B2 (en) Music generator
US5809342A (en) Computer system and method for generating delay-based audio effects in a wavetable music synthesizer which stores wavetable data in system memory
JP3541718B2 (en) Music generator
JP3918817B2 (en) Music generator
US6359206B2 (en) Tone signal processing apparatus with intermittent clock supply
US5710386A (en) Method and apparatus for efficiently controlling access to stored operation control data and tone forming data
JPH07121181A (en) Sound information processor
JP2797142B2 (en) Processing equipment for electronic musical instruments
JP3275678B2 (en) Musical sound generating method and apparatus
JP4354268B2 (en) Signal processing device
JP2797138B2 (en) Processing equipment for electronic musical instruments
JP3116447B2 (en) Digital signal processor
US5932826A (en) Effect adder circuit with a coefficient smoothing circuit for an electronic musical instrument
JP2768241B2 (en) Signal processing device
JP3221987B2 (en) Delay time modulation effect device
JP2000122668A (en) Digtal sound data processor, and computor system
JPH0713861A (en) Cpu interface device

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090319

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090319

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100319

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110319

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110319

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 14