JPH05144179A - デジタルレコーダ - Google Patents
デジタルレコーダInfo
- Publication number
- JPH05144179A JPH05144179A JP3330158A JP33015891A JPH05144179A JP H05144179 A JPH05144179 A JP H05144179A JP 3330158 A JP3330158 A JP 3330158A JP 33015891 A JP33015891 A JP 33015891A JP H05144179 A JPH05144179 A JP H05144179A
- Authority
- JP
- Japan
- Prior art keywords
- data
- tempo
- transfer
- address
- dma
- 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
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E60/00—Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
- Y02E60/30—Hydrogen technology
- Y02E60/50—Fuel cells
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
音声データを再生することができるようにする。 【構成】 外部ビートカウンタ24は、システムクロッ
ク発生回路21が出力するクロックをカウントして、外
部拍指定入力と内部ビートカウンタ23の計数出力との
時間差を計測する。内部ビートカウンタ23は、システ
ムクロックをカウントして再生データのテンポを計測す
る。外部ビートカウンタ24のカウント値に対応してシ
ステムクロックの周波数が制御されたり、読み出される
音声データのアドレス変更制御がなされたりする。
Description
に記録、再生、更には編集することが可能なデジタルレ
コーダに関する。
生、編集する方法としては、磁気テープにアナログ音声
信号を磁気記録し、それを再生、編集することが行われ
ている。しかし、このような従来技術は、アナログ記録
再生によっている為、音質の劣化がさけられず、特に一
度録音した音声信号をダビングすると劣化が顕著とな
る。
で、目的の編集ポイントに到達するのに時間がかかって
しまうという問題や、磁気テープの当該録音部分を物理
的に切り貼りしたり、編集部分を他の場所に一度コピー
した上でなければ編集作業を行えないという問題もあ
る。
の記録方法をデジタル化することで対応できるものの、
シーケンシャルアクセスの記録媒体を用いるために生じ
る頭出しや編集の自由度に関する欠点は、単なるデジタ
ル化によっては除去することができない。
ェスター型のハードディスクを用いてディスクレコーデ
ィングを行うことにより従来の問題点を解消する提案が
なされている(例えば、JAS Journal'89・4月
号、第16頁乃至第22頁「ディジタル・オーディオ・
ワークステーション(DAW)の動向〜AES日本支部
1月例会より〜」を参照)。さらに本出願人も、ディス
クレコーディングを開示した発明を特願平2−1237
88号(平成2年5月14日出願)、特願平3−655
22号(平成3年3月6日出願)等により提案してい
る。
は、このようにして編集したオーディオデータを外部の
装置と同期して演奏させるような場合、例えばSMPT
Eなどの絶対時間コードを用いて精密な同期を実現する
ようにしていた。従って、構成が複雑になるばかりでな
く、例えば外部より指定したテンポに同期して簡便に再
生を行なうようなことが困難である課題があった。
ものであり、外部から簡便に指定されたテンポに同期し
て、あるいは追従して再生を行なうことができるように
するものである。
ルレコーダは、ハードディスク12や光磁気ディスクな
どの記録媒体に記録されているデータを再生する再生手
段としてのHDコントローラ11と、HDコントローラ
11により再生された再生データを出力するクロックを
発生するクロック発生手段としてのシステムクロック発
生回路21と、再生データの再生テンポを計測するテン
ポ計測手段としての内部ビートカウンタ23と、外部よ
り指定されたテンポと内部ビートカウンタ23により計
測されたテンポとを比較し、その比較結果に対応してシ
ステムクロック発生回路21により発生されるクロック
の周波数を制御して外部より指定されるテンポに応じて
上記出力動作の制御を行うクロック周波数制御手段とし
てのクロックサーボコントロール回路22とを備えるこ
とを特徴とする。
生データをD/A変換するD/A変換手段としての音声
入出力装置8−1乃至8−3をさらに備えることがで
き、この場合クロックは、この音声入出力装置8−1乃
至8−3におけるD/A変換タイミングを規定するクロ
ックとすることができる。
ードディスク12や光磁気ディスクなどの記録媒体に記
録されているデータを再生する再生手段としてのHDコ
ントローラ11と、再生データの再生テンポを計測する
テンポ計測手段としての内部ビートカウンタ23と、外
部より指定されたテンポと内部ビートカウンタ23によ
り計測されたテンポとを比較し、その比較結果に対応し
て記録媒体の読出アドレスを制御して外部より指定され
るテンポに応じて再生動作の制御を行うアドレス制御手
段としてのDMAコントローラ10とを備えることを特
徴とする。
は、再生データのピッチが外部より指定されたテンポに
対応して調整される。
においては、D/A変換のタイミングを規定するクロッ
クの周波数が制御される。従って、簡単に再生データの
テンポを外部より指定されたテンポに同期または追従さ
せることができる。
においては、再生データのピッチを変更することなく、
簡単に再生データのテンポを外部より指定されたテンポ
に同期もしくは追従させることができる。
実施例を図面を参照して説明する。
コーダの一実施例の全体構成を示しており、この実施例
においては、同時に3トラックまでの録音、再生動作が
出来るようになっている。全体は、図示のとおり、CP
U部(図中左側の部分)と、DMAユニット(音声記録
再生処理装置)(図中右側の部分)とに分かれる。
動作を規定するプログラム(詳細は後述)を記憶したプ
ログラムROM2と、各種データを記憶するエリア、3
トラックのディスクアクセスポインタを記憶するエリ
ア、ハードディスク12a,12bに記憶されている音
声データを手動もしくは自動にて複数に区切ったときの
各区切られた音声データ(イベント)の識別情報(イベ
ント名)および記憶位置(ディスクID、先頭データア
ドレス、イベント長)を含むイベントテーブル(ET)
を記憶するエリア、イベントテーブルに含まれるイベン
トの識別情報を各トラック毎にイベントの再生順序に配
列して成るイベントシーケンステーブル(EST)を記
憶するエリア、ならびにワークエリア等を含むRAM3
と、CPU1のI/Oポートに接続された周辺機器であ
る各種ファンクションキー、データ入力キー等を含むキ
ーボード4、CRTあるいはLCDとそのドライバを含
み各種表示を行う表示装置5とを有する。
るテンポ(拍)信号と内部テンポ信号との絶対時間差を
計測する外部ビートカウンタ24(システムクロック発
生回路21の出力で計数動作し、内部ビートカウンタ2
3の1拍計数出力と、外部テンポ信号との到来時間差を
後述する符号付きで計測する)と、システムクロック発
生回路21が出力するシステムクロックをカウントし、
再生データのテンポを検出する内部ビートカウンタ23
と、内部テンポと外部テンポの絶対時間差に対応してシ
ステムクロック発生回路21を制御し、その発生するシ
ステムクロックの周波数を制御するクロックサーボコン
トロール回路22を備える。
動作時(録音/再生等)において、DMAユニットのア
ドレスバス、データバスの空き時間に、必要に応じてD
MAユニットの各構成要素の制御を行ない、編集時にお
いて、データブロックの並べ換えや、ディスクアクセス
ポインタの操作等を行なう。キーボード4からは、後述
するように、各トラック(以下、Trとする)の録音/
再生モードの設定、スタート、ストップ、ロケート、編
集点の指定などが行える。またプログラムROM2,R
AM3のアドレス端子には、アドレスバスを介してCP
U1からアドレス信号が送られ、その出力端子はデータ
バスを介してCPU1にあるいはトランシーバ7に接続
されている。
連結するために、バッファ6、トランシーバ7がDMA
ユニット内に設けられている。バッファ6はCPU1と
アドレスバスを介して接続され、更にDMAユニット内
のアドレスバスに連結される。トランシーバ7はCPU
1とデータバスを介して接続され、更にDMAユニット
内のデータバスに連結される。
入出力装置8−1、Tr2の為の音声入出力装置8−
2、Tr3の為の音声入出力装置8−3が設けられてい
て、夫々には、アナログ音声信号が独立に入出力可能と
なっている。
は、A/D変換、D/A変換を選択的に実行する変換器
のほか、サンプリングノイズ除去用のローパスフィルタ
などが含まれている。これらの音声入出力装置8−1〜
8−3においては、当該トラックがレコード(記録)状
態に設定されれば、外部からのアナログ音声信号をサン
プリング周期毎に適宜フィルタリングした後、A/D変
換して、デジタル音声データを得る。逆に当該トラック
がプレイ(再生)状態に設定されれば、予め読み出され
たデジタル音声データをサンプリング周期毎にD/A変
換して適宜フィルタリングした後、アナログ音声信号と
して出力する。音声入出力装置8−1乃至8−3には、
システムクロック発生回路21から必要なクロックが供
給されている。
〜8−3は、データバスを介して対応するバッファ9−
1(BUF1)、バッファ9−2(BUF2)、バッフ
ァ9−3(BUF3)とそれぞれ接続され、デジタル音
声データの授受を行う。
r3に夫々対応しており、音声入出力装置8−1〜8−
3との間のデータ転送は、コントロール手段すなわちD
MAコントローラ10にて、直接メモリアクセス(DM
A)方式により行われる。
DMAコントローラ10に対し、レコーディング時に
は、サンプリング周期で音声入出力装置8−1〜8−3
からバッファ9−1〜9−3方向への1回のサンプリン
グに係るデジタルデータのDMA転送(シングル転送)
を要求(リクエスト)し(DRQ信号を送出し(Tr1
ではDRQ1、Tr2ではDRQ2、Tr3ではDRQ
3としてDMAコントローラ10に与えられる))、D
MAコントローラ10からの回答(アクノーレッジが、
Tr1ではDAK1、Tr2ではDAK2、Tr3では
DAK3としてDMAコントローラ10から与えられ
る)を受けて、実際のデータ転送が実行される。プレイ
時には、サンプリング周期でバッファ9−1〜9−3か
ら音声入出力装置8−1〜8−3方向への1回のサンプ
リングに係るデジタルデータのDMA転送(シングル転
送)の要求が、音声入出力装置8−1〜8−3からなさ
れ、上記した場合と同様にDMAコントローラ10によ
ってデータ転送が実行される。
くは複数回のデジタル音声データを記憶できる容量をも
ち、例えばRAMをTr1〜Tr3に3分割し、夫々リ
ングバッファ(最終アドレスと先頭アドレスとが仮想的
につながったバッファ)として使用することで、FIF
Oバッファとして機能するよう構成されている。
レス指定は、アドレスバスを介してDMAコントローラ
10などよりなされる。すなわちDMA転送を行ってい
るときはDMAユニット内のアドレスバス、データバ
ス、制御信号ラインはDMAコントローラ10が専有す
ることになる。
スを介し、更にハードディスクコントローラ(以下、H
Dコントローラとする)11の制御に従ってハードディ
スク12a,12bとデータの授受を行う。ハードディ
スク12a,12bとHDコントローラ11とはデータ
バスとコントロール信号ラインとを介し連結され、ハー
ドディスク12a,12bに対するリード/ライトアク
セスが全てHDコントローラ11によりなされる。ハー
ドディスク12a,12bは、Tr1〜Tr3の3トラ
ック分の分割された記憶エリアを有しており、バッファ
9−1〜9−3とのデータ転送がDMAコントローラ1
0によりなされる。これは、HDコントローラ11が1
つのデータブロックを転送し終ると割込み(INT)を
CPU1にかけ、次のデータブロックの転送指示をCP
U1に対し行うことによりなされる。CPU1は、HD
コントローラ11からインタラプト信号INTが到来す
ると、DMAコントローラ10、HDコントローラ11
を所望の状態に設定したり、プログラミングしたりした
後、DMA転送を行わせる。この動作の詳細は後に説明
する。
ては、ハードディスク12a,12bから予め指定され
た量(複数サンプリング周期分)のデジタル音声データ
を読み出した後、バッファ9−1〜9−3のうちの指定
されるバッファへDMA転送(ブロック転送)するよう
動作し、レコード時にあっては、指定されたバッファか
ら予め指定された量(複数サンプリング周期分)のデジ
タル音声データを読み出してハードディスク12a,1
2bの指定される位置へDMA転送(ブロック転送)す
るよう動作する。
ファ9−1〜9−3との間のデータ転送の際は、HDコ
ントローラ11よりDMAコントローラ10に対し要求
信号DREQを出力し(DMAコントローラ10側では
DRQ4として受取る)、転送可能となると逆に回答信
号DACKを受取る(DMAコントローラ10側ではD
AK4として出力する)ことで、実際の転送状態とな
る。
Tr1〜Tr3の音声入出力装置8−1〜8−3とバッ
ファ9−1〜9−3との間の3チャンネル(後述するC
H1〜CH3)のデータ転送と、順番に選択されたいず
れかのバッファ9−1〜9−3とハードディスク12
a,12bとの間の1チャンネル(後述するCH4)の
データ転送との、計4チャンネルの時分割データ転送動
作をする。
素の機能、作用を管理するために、アドレスバスを介し
バッファ6にアドレス信号を与えるほか、各構成要素の
指定信号をバッファ6を介しデコーダ13に供給して、
夫々の指定信号CSを、各音声入出力装置8−1〜8−
3、バッファ9−1〜9−3、DMAコントローラ1
0、HDコントローラ11に与える。同時に、トランシ
ーバ7を介し、データバスを経由して種々のデータのや
りとりがCPU1との間でなされる。
1〜8−3のIOWR端子にはレコード状態(ライト状
態)とするのかプレイ状態(リード状態)とするのかを
指定する指定信号WRが、バッファ6を介して与えられ
る。
コントローラ10、HDコントローラ11に対してもこ
の指定信号(ライト信号)WRと、別の指定信号(リー
ド信号)RDとがバッファ6を介してCPU1から与え
られ、夫々の構成要素からデータを読み出したり逆にデ
ータを書込んだりするようになる。また、DMAコント
ローラ10からも、DMA転送状態にあってはこれらの
指定信号RD、WRを出力するようになる。これらの信
号と各構成要素の機能、動作の関係は後述する。
各構成要素間で行っているとき、DMA可能(イネーブ
リング)信号DMAENBを“1”にして出力する。そ
の結果、この信号DMAENBがインバータ16を介し
て与えられるアンドゲート14の出力は“0”となり、
バッファ6、トランシーバ7にはイネーブリング信号E
が“0”として与えられ、結局CPU部とDMAユニッ
トとのデータ、アドレスの授受はできなくなる。このと
き、アンドゲード15に“1”信号がデコーダ13より
与えられておれば、アンドゲート15の出力が“1”と
なってCPU1にウェイト信号WAITが供給される。
理するために、バッファ6、トランシーバ7を開かせる
べくデコーダ13に所定の信号を与えているとき、つま
りアンドゲート14の一入力端にデコーダ13より
“1”信号を供給しているとき(CPU1がバッファ9
−1〜9−3、DMAコントローラ10、HDコントロ
ーラ11、音声入出力装置8−1〜8−3のいずれかに
アクセスするためのアドレス信号を出力すると、デコー
ダ13の出力はアクティブとなりアンドゲート14、1
5の夫々の一入力端への出力は“1”となる)、DMA
転送を開始するとCPU1にはウェイト(WAIT)が
かかり、DMA転送が優先して実行された後、ウェイト
解除にともなってCPU1の動作が再開される。
DMA転送を実行しているときに、CPU1が例えばD
MAコントローラ10をアクセスしようとしても、アン
ドゲート15よりウェイト信号WAITが与えられCP
U1の実行サイクルは途中で引き延ばされて、バッファ
6、トランシーバ7はその間閉じられることになる。
成要素にアクセスできるのは、 1.CPU1がDMAユニットの各構成要素をアクセス
するためのアドレスを出した。 2.信号DMAENBがインアクティブ(“0”)つま
りDMAユニットのデータバスが空いている。 の2つの条件を満足するときであるが、CPU1は上述
したように、ゲート14、15の作用によっていつDM
Aユニットにアクセスするかを考慮することなく処理を
すすめることができる。
ルデータのトリガに応じて直ちにDMAユニットの動作
状態を変えたい場合、DMAコントローラ10に対し
て、DMAコントローラ10の状態がどのような状態で
あってもDMA転送を中断する指令DMAENDを出力
することができる(これは、DMAコントローラ10に
はEND信号として与えられる)。
に、DMAコントローラ10の一構成例を説明する。D
MAコントローラ10は、1バスサイクルが数百ナノ秒
である転送能力をもつ。従って、3トラック分のサンプ
リングデータを転送する時間は1から2マイクロ秒とな
る。
たとき、1サンプリング時間の間隔は約21マイクロ秒
となり、サンプリング時間間隔のほとんどは、バッファ
9−1〜9−3とHDコントローラ11、ハードディス
ク12a,12bとの間のデータ転送及びCPU1から
各構成要素のプログラミング時間にあてることが可能と
なる。
されている。このDMAコントローラ10は、アドレス
バスと接続される入力側(IN)のアドレスバッファ1
01と出力側(OUT)のアドレスバッファ102を有
する。入力側のアドレスバッファ101に与えられるア
ドレス信号によって、レジスタセレクタ103の指定内
容が変化し、アドレスレジスタ104とコントロールレ
ジスタ105とに存在する所望のレジスタまたは転送カ
ウンタが指定されることになる。
ジスタ105には4つのチャンネルCH1〜CH4のエ
リアがあり、チャンネルCH1〜CH3は、バッファ9
−1〜9−3と音声入出力装置8−1〜8−3との間の
DMA転送を行うためのレジスタであり、チャンネルC
H4は、バッファ9−1〜9−3のうちの指定したバッ
ファとハードディスク12a,12bとの間のDMA転
送を行なうためのレジスタである。
CH1〜CH4のレジスタは、対応するバッファ9−1
〜9−3及び指定されたバッファのカレントアドレスと
スタートアドレスとを少なくとも記憶するエリアを有
し、CH4のレジスタには、さらに転送カウンタが具備
され、このカウンタに設定されただけのデータ数がDM
A転送されると、HDコントローラ11のDMAリクエ
ストが続いても新たにカウンタが設定されるまでDMA
動作は停止される(後述する図7の7−8による)。ま
たコントロールレジスタ105の各チャンネルCH1〜
CH4のエリアには、例えば、DMA転送の方向を指定
するコントロールデータが記憶される。
ルレジスタ105の内容は、データバッファ106を介
してデータバスに対して入出力可能となっている。そし
て、これらの各構成要素を制御しているのが、タイミン
グコントロールロジック107と、サービスコントロー
ラ108、チャンネルセレクタ109である。
ジックもしくはマイクロプログラム制御構成となってい
て、タイミングコントロールロジック107からの信
号、音声入出力装置8−1〜8−3、HDコントローラ
11からのDMA要求信号DRQ1〜DRQ4や、CP
U1からのDMA中断指令END(DMAEND)を受
けとり、上記各構成要素に対する回答(アクノーレッ
ジ)信号DAK1〜DAK4、DMA転送中を示すDM
A可能(イネーブリング)信号DMAENBを出力する
ほか、タイミングコントロールロジック107に対し各
種指令を出したり、チャンネルセレクタ109に対しチ
ャンネルセレクト信号を出力したりする。チャンネルセ
レクタ109は、アドレスレジスタ104、コントロー
ルレジスタ105のなかの各チャンネルCH1〜CH4
に対応するレジスタを選択的に指定する。
は、デコーダ13からの指定信号CS、コントロールレ
ジスタ105からのコントロール信号、サービスコント
ローラ108からの制御信号を受けて、アドレスバッフ
ァ102、データバッファ106の入出力制御をするほ
か、アドレスインクリメンタ110を動作させて、アド
レスレジスタ104のなかの指定されたチャンネルのカ
レントアドレスレジスタをインクリメントし、該チャン
ネルに割り当てられたバッファの最終アドレスになった
ならば、該チャンネルに割り当てられたバッファの開始
アドレスにリセットさせる。
の動作について説明する。CPU1の動作を示すフロー
チャートが図3乃至図5に示されている。これはプログ
ラムROM2に記憶されたプログラム(ソフトウェア)
よるもので、図3はメインルーチンを示し、図4は、H
Dコントローラ11からのインタラプト信号INTの到
来に応答して実行するインタラプトルーチンを示してい
る。また図5は図4に示すインタラプトルーチンの一部
のステップ(4−2)をさらに詳細に示している。
に応じてメインルーチンをスタートさせ、ステップ3−
0(以下、単に3−0と記す)において各種初期状態を
設定する。そして、3−1においてキー入力を受け、3
−2において何のモードに設定されたかを判断する。
であるとジャッジすると、3−2から3−3に進み3つ
あるトラックを順次選択指定し、さらに3−4に進み各
トラックの動作モードをキーボード4の入力指示に従っ
て設定し、3−5において、A/D変換、D/A変換の
いずれの動作を各音声入出力装置8−1〜8−3が実行
するのか、バッファ6、デコーダ13を介して指定信号
CSを順次送出しながらIOWRを与えてセッティング
する。いま、例えばTr1については、プレイ状態(従
ってD/A変換動作状態)、Tr2及びTr3は夫々レ
コード状態(従ってA/D変換動作状態)とする。図1
3に、このようなモード設定した場合の概略動作の概念
図を示す。
10に対し、各Tr1〜Tr3についてのバッファ9−
1〜9−3のアドレスを初期化させる。つまり、図2の
アドレスバッファ101、レジスタセレクタ103、チ
ャンネルセレクタ109等により、チャンネルCH1〜
CH3の各レジスタ(アドレスレジスタ104、コント
ロールレジスタ105)を指定しながら、データバッフ
ァ106を介して初期設定データを入力設定する。
グバッファとして循環的に使用されるようになってお
り、初期状態としては、各バッファ9−1〜9−3のス
タートアドレスとカレントアドレスとは一致するようセ
ットされる(図13に、各バッファ9−1〜9−3のス
タートアドレスとカレントアドレスとが、CH1〜CH
3のアドレスレジスタ104に記憶されて制御される状
態を模式的に示してある)。
RAM3内の作業(ワーク)メモリエリアに存在するハ
ードディスク12a,12bの各トラックTr1〜Tr
3に対応するディスクアクセスポインタを初期設定する
(図13にハードディスク12a,12bの記憶エリア
と、ディスクアクセスポインタとの関係を示してい
る)。
〜8−3のA/D変換動作又はD/A変換動作を開始さ
せる(3−7)。続いて、3−8において、ソフトウェ
ア割込みをかけて、HDコントローラ11が、ハードデ
ィスク12a,12bとバッファ9−1〜9−3のいず
れかとの間のデータ転送のプログラム要求(HDコント
ローラ11がCPU1に対してインタラプトINTをか
けること)を行なったとき(後述)と同じ処理を実行す
る。
チャートに従った動作を3−8で実行することになる。
ここで図4及び図5に示したフローチャートの説明に入
る前に、前記した図1のRAM3に格納される各テーブ
ルの構成について説明する。図1のRAM3には、図1
4乃至図17に示すように再生スケジュールを制御する
イベントテーブル(ETとする)、イベントシーケンス
テーブル(ESTとする)が定義されており、それらの
中間データであるカレントデータのメモリ領域が取られ
ている。
ブルの登録例を示しており、このテーブルに格納される
イベントデータは、イベント名(name)、ディスク
ID(id)(ハードディスク12a(00)と12b
(01)のいずれかを指定する)、先頭データアドレス
(サンプル(ワード)データアドレス)(adrs)、
及びイベント長(サンプルデータ数)(vol)より構
成されている。そして図14に示すイベントテーブルに
おいては、オリジナルレコーディングデータである
“1”から“4”は、録音時の領域確保によって自動的
に作られる。
データのESTの例を示しており、横方向に“0”から
“2”のESTインデックス(ESTindex)が、
縦方向に各トラック番号が配列され、それぞれに対応し
てイベント番号が格納される。図15においては、例え
ばトラック2のデータ(2と3)はディスク“00”と
“01”にまたがって記録された状態を示しており、イ
ベント番号“0”はシーケンス要素の終端を示すための
ものである。
し、出力すべきトラックにそれらを並べた編集作品1の
ESTの例を示しており、図15と同様に横方向に
“0”から“8”のESTインデックスが、縦方向に各
トラック番号が配列され、それぞれに対応してイベント
番号が格納される。従って以上のようにESTは編集作
品に対応して複数存在しうる。
行っているときのカレントデータを示しており、各トラ
ックの次回の転送対象となるESTのインデックス番号
と、そのイベントがどれだけ転送されたかを示す既転送
量が記憶される。
ベントシーケンスを再生させた場合のCPU1の動作
を、図4及び図5に示したフローチャートに従って説明
する。いま、イベントの先頭部がハードディスク12
a,12bのセクタ長以下の半端な位置に指定されてい
て、それを次にバッファにリードするというような場合
を想定する。ここでTr1について、ハードディスク1
2a,12bからデジタル信号データをバッファ9−1
にDMA転送するために、DMAコントローラ10のチ
ャンネルとしてTr1に対応するチャンネルCH1を決
定する(4−1)。
ァの空き容量(転送可能容量)から、ディスクID、ワ
ードアドレス、転送アドレスを求める4−2のステップ
を実行する。この4−2のステップについては、図5に
さらに詳しくそのフローが示されている。尚、バッファ
の空き容量は、セクタ単位に切り捨てる演算がなされて
いることを前提とする。
当するトラックカレントデータよりESTインデックス
(=3)を求め、イベント番号(=20)を求める。そ
して5−2のステップにおいて、図14に示すイベント
テーブルよりそのイベントのID(=01)を求める。
次いで5−3において、「そのイベントの先頭アドレス
+カレントデータの既転送量=ワードアドレス」の式に
従って、ワードアドレスを演算する。イベントの先頭ア
ドレスは図14に示すイベントテーブルより求められ、
またカレントデータの既転送量は図17に示すカレント
データより求められる。
ドアドレス(セクタ(1セクタ=100h)を示すディ
スクアドレス)よりオフセット(ワード)を求める。次
いで5−5において、「イベントの容量−既転送量=未
転送量」の式に従って、未転送量の演算がなされる。イ
ベントの容量は図14におけるイベントテーブルのvo
lより求められ、既転送量は図17のカレントデータよ
り求められる。ここで5−6において「空き容量>未転
送量」であるか否かが判断される。5−6においてNO
とジャッジした場合、イベント末尾に達していないの
で、5−7において「カレントデータの既転送量+空き
容量−オフセット=既転送量」の演算がなされ、5−8
において「転送ワード数=空き容量−オフセット」とす
る。尚、2回目以降の転送では、空き容量はセクタ単位
の大きさに切り捨てられているので、後述する通り、デ
ータ転送はセクタ単位となる。また、前記ステップ5−
6においてYESとジャッジした場合、イベント末尾に
達したので、5−9において 「カレントデータのESTのインデックスを+1、既転
送量=0」の処理を成し、5−10において「転送ワー
ド数=未転送量」とする。
レスをディスクアドレスとオフセットに直し、転送ワー
ド数より転送セクタ数を求める。この転送セクタ数の決
定に際し、セクタ未満のデータは転送できない(セクタ
単位で転送する)ため、セクタ単位で切り捨てが行われ
る。更に4−4において、ディスクアドレス、転送セク
タ数、トラックモードにより、HDコントローラ11を
プログラミングする。また、録音または再生のモードに
対応して、CH4の転送方向(録音時、バッファ9−1
乃至9−3からハードディスク12a,12bの方向、
再生時はその逆の方向)がプログラムされる。ここで4
−5において「オフセット=0」であるか否かがジャッ
ジされ、NOとジャッジされた場合には、イベント先頭
の位置が半端なデータを含んだセクタにある。そしてこ
の様な半端がある場合には4−6および4−7におい
て、DMAコントローラ10におけるアドレスレジスタ
104のCH4のスタートアドレスをイメージ(実際に
は存在しない)領域に設定し、前記転送カウンタにオフ
セット値を設定して、ダミー転送する。
定されるか、または4−5においてYESのジャッジが
成された場合には、4−8乃至4−10のステップによ
って、先頭ダミー転送分以外の領域の転送設定を行な
う。即ち、4−8で、アドレスレジスタ104の当該C
H(いまの場合、CH1)のスタートアドレスをCH4
のスタートアドレスにコピーする。そして、4−9で
は、転送カウンタの値が「セクタ数×セクタ長−オフセ
ット値」の値に設定される。さらに4−10では、転送
ワード数より当該CHのスタートアドレスを更新する。
そしてメインルーチン(図3)にリターンする。このよ
うにして、次のアクセスアドレスはセクタの境界と一致
する。
おいては、イメージ領域(実際には存在していないアド
レス領域)にダミー転送を行なうようにしている。これ
は特にイメージ領域でなく、バッファ中の未発音データ
以外の領域に転送してしまっても効果としては同じであ
るが、この場合、スタートアドレスの設定をその度にD
MAコントローラ10のレジスタ104から得なくては
ならない。しかし、イメージ領域ならば、スタートアド
レスはイメージ領域の最初を示す固定値にして、アドレ
スレジスタ104の転送カウンタだけをプログラムすれ
ばいいので、やや効率がよい。
イメージ領域に転送する処理は必要なく、無効データを
含まない位置に、転送ワード数からスタートアドレスを
更新できるので問題はない。5−10において、未転送
量が転送ワード数とされていることによる。結局、無効
データの部分は、ダミー転送されたことになる。
なるとおり、最初の割込みルーチン(図4)が起動され
て、HDコントローラ11が一度動かされると、あとは
CPU1が指定したデータブロックの転送が終了するた
びにHDコントローラ11から割込みがなされる(IN
T信号がCPU1に与えられる)ので、CPU1が行な
うのは、録音/再生動作の終了になったか、キー入力が
あったかまたはコントロールデータに指示しておいたト
リガがかかったかの判断を行うのみである。
スクアクセスポインタ(RAM3)を参照し、メモリエ
リアオーバーか否か、つまり終了か否かをジャッジし
(3−10)、YESの場合は、各音声入出力装置8−
1〜8−3のA/D変換、D/A変換動作を停止(3−
11)させ、3−1に戻る。NOの場合は、キー入力状
態を参照し(3−12)、もし変化がなければ、ディスク
アクセスポインタをチェックすべく3−9の処理へもど
り、以下3−9〜3−13をくりかえす。
あると、3−13から3−14に進み、CPU1はDM
A転送を一時中断して、新たな設定をすべく、DMAコ
ントローラ10に対するDMA中止指令(DMAEN
D)を出力する。続けて、新たな入力指示等に従って、
DMAコントローラ10、音声入出力装置8−1〜8−
3をプログラムし(3−15)、再びDMA動作を再開
すべく3−16に進み、上述した3−8と同様に図4の
インタラプトルーチンを実行した後、3−9へもどる。
時にあっては、3−4〜3−8の初期設定を行なった後
は、3−9、3−10、3−12、3−13更に3−1
4〜3−16をくりかえし実行し、キーボード4での変
更指示(例えばあるトラックについてポーズ(A/D、
D/Aの中断)あるいはパンチイン/アウト(A/D、
D/Aの動作の切換)等)や、編集時に得たコントロー
ルデータの変化に応答して、即時にDMA転送制御を中
断し、プログラムを変更した上で、再び同様の処理を実
行するように動作する。
ト処理モードにあると判断すると、3−2から3−17
に進み、ハードディスク12(12a,12b)に記憶
されている音声データをイベント化する。イベント化と
は、手動指定操作などによって時間軸上に連続した音声
データを複数に区切り、各区切られた音声データ(イベ
ント)を識別するためのイベント名、ディスクID、お
よび区切られた区間を示すデータ(スタートポイントと
その長さ(ボリューム))を作り出すことを意味する。
イベント化に対応して、3−18においてイベントテー
ブル(図14)が作成される。このイベントテーブル
(ET)には、イベント名、ディスクID、スタートポ
イントおよびボリュームが登録される。ディスクID、
スタートポイントおよびボリュームは、当該イベントが
記憶されるハードディスク12のスタートアドレスおよ
びイベント長に相当する。
ブルに基づいてイベントシーケンステーブルEST(図
16)が作成される。このイベント処理3−17〜3−
19は繰り返されることになるが、操作者の指示によ
り、ESTの作成の終了が3−20で検出されると、C
PU1は3−1において再びキー入力を調べる。
(EDIT)モードにあると判断すると、3−2から3
−21に進み、編集するトラックやポイント、どのよう
な編集をするのか(例えば、ある時間指定したポイント
に録音した音のタイミングを前後にずらしたり、修正、
削除したりすること)をCPU1は判断し、各種編集作
業を実行する(3−22)。この編集作業は、特には詳
述しないが、HDコントローラ11とDMAコントロー
ラ10とに対するハードディスク12a,12bからの
読み出しアクセスポイントのプログラムや、RAM3へ
の転送、RAM3を用いての各種編集、そして編集後の
デジタル音声データのハードディスク12a,12bへ
の再格納作業、アクセスポイントの指定等を、CPU1
の制御下で実行する。3−23において編集作業の終了
が検出されると、CPU1は、3−1において再びキー
入力を調べる。
次に図6を参照して、音声入出力装置8−1〜8−3の
動作状態を説明する。このフローチャートは、マイクロ
プログラム制御によるものであっても、ハードロジック
制御によるものであってもよく、機能実現手段は種々選
択できる。
音声入出力装置の指定信号CSが到来している(アクテ
ィブとなっている)か否かジャッジし、YESならば6
−2において、CPU1より動作状態(レコード、プレ
イ、ストップ等)が設定される。これは図3のCPU1
のメインルーチンの中の3−5、3−15に応答してな
される。
れると6−3において、当該音声入出力装置8−1〜8
−3がレコード状態であるのかプレイ状態であるのか判
断し、レコード状態と判断されると、6−3から6−4
〜6−9の処理へ進み、プレイ状態と判断されると6−
10〜6−15の処理へ進む。
装置(いまの場合音声入出力装置8−2、8−3)の動
作を説明する。6−4において、サンプリング時刻とな
ったか否か判断し、サンプリング時刻となるまで、この
6−4をくりかえす。なお、サンプリング時刻の判断
は、音声入出力装置8−1〜8−3内部に夫々ハードタ
イマーをもってその出力によって行ってもよく、あるい
は共通なハードタイマーを設けてその出力に従って各音
声入出力装置が動作するようにしてもよい。後の説明か
らも理解されるとおり、各音声入出力装置8−1〜8−
3のサンプリング周波数を別々にすることも可能であ
る。
されると、与えられるアナログ音声信号は、サンプルホ
ールド(S/H)され、A/D変換される。続いて、6
−6において、DMAコントローラ10に対してDMA
転送要求DRQをアクティブにして出力する。
DRQを受けとり、DMA転送を行うべく、その回答信
号DAKを出力する。従って、音声入出力装置8−1〜
8−3(いまの場合レコード状態である音声入出力装置
8−2又は8−3)は、6−7の判断がYESとなる
と、6−8に進み、A/D変換して得たデジタル音声デ
ータをデータバスに出力し、対応するバッファ9−1〜
9−3(いまの場合バッファ9−2又は9−3)へ送
る。そして、6−9にて、DMA転送要求DRQをイン
アクティブにする。従って、いまの場合、音声入出力装
置8−2、8−3にあっては、サンプリング周期毎に、
外部から与えられるアナログ音声信号をデジタル音声信
号に変換し、後述するようにDMAコントローラ10に
て夫々指定されるバッファ9−2、9−3のカレントア
ドレスに転送する(図13参照)。
れると、6−10に進み、DMAコントローラ10に対
しDMA転送要求DRQをアクティブにし、DMAコン
トローラ10から回答信号DAKの到来を待って(6−
11)、データバス上のデジタル音声データを取込み
(6−12)、上記要求DRQをインアクティブにする
(6−13)。このときのDMAコントローラ10の動
作は後述するが、いまの場合、図13に示すとおり、T
r1に対応するバッファ9−1のカレントアドレスの内
容(これはすでにハードディスク12のTr1のエリア
の内容が転送記録されている)が、以上の操作で音声入
出力装置8−1に入力設定されることになる。そして、
サンプリング時刻となったか否か判断する(6−1
4)。このサンプリング時刻の到来の検出は、6−4に
おいて述べたことと同じである。
5に進みD/A変換及びローパスフィルタリングを実行
した上でアナログ音声信号を外部に出力する。
場合との1つのサンプリング時刻における動作を説明し
たが、6−9、6−15の各処理の終了後6−1にもど
り以下同様にして次々とサンプリング時刻に対する処理
を実行する。
図7を参照してDMAコントローラ10の動作を説明す
る。この図7のフローチャートは、図2のサービスコン
トローラ108がマイクロプログラム制御で動作するの
を表わしているとしてもよく、あるいは、ハードロジッ
クでDMAコントローラ10が機能実現をしているとし
てもよい。
信号CSが到来している(アクティブとなっている)か
否か判断し、YESならば、リード信号RD、ライト信
号WRのいずれがCPU1から与えられているか判断
(7−2)し、リード信号RDならば7−3に進み、ア
ドレスバスを介して与えられるアドレス信号にて指定さ
れるレジスタ104、105の内容をデータバスを介し
て出力してCPU1がリードできるようにし、逆にライ
ト信号WRならば7−4に進み、指定したレジスタにデ
ータバスを介して所望のデータを入力設定することにな
る。この7−3、7−4の処理は、CPU1のメインル
ーチンの3−5、3−15などの処理に対応する。従っ
て、7−4の処理によって図2の各レジスタ104、1
05には所望のデータがセットされることになる。
コントローラ10に対するアクセスやプログラムが終る
と指定信号CSはインアクティブとされ、7−1から7
−5に処理は進むことになる。
−3からDMA転送要求DRQ1〜DRQ3がきている
か、HDコントローラ11からDMA転送要求DREQ
(DRQ4)がきているか判断し、もし、いずれかから
要求が来ていると7−6に進み、DMA可能信号DMA
ENBを“1”に(アクティブ)にし、DMAユニット
内のアドレスバスとデータバスをDMAコントローラ1
0が専有するようにし、CPU1からのアクセスを受け
付けなくする。
ルCH1〜CH4の順の優先順位に従って、チャンネル
を選択する(7−7)。
選択され、かつ、CH4に設けられた転送カウンタの値
が“0”であるか否かが判断される(7−8)。ここで
CH4が選択され、かつ、転送カウンタの値が“0”で
あれば、つまり、CH4により転送すべきデータ量だけ
の転送が終了してしまった後は、転送要求があっても、
転送を行わずに7−5にもどり、7−5〜7−8のルー
チンを繰り返す。そしてCH4が選択されていないか、
またはCH4が選択されていても転送カウンタの値が
“0”でなければ、選択したチャンネル(いま、例えば
CH2)のカレントアドレス(アドレスレジスタ104
のCH2のカレントアドレスレジスタの内容)をアドレ
スバスに出力する(7−9)。そして選択したチャンネ
ル(いま、例えばCH2)のコントロールレジスタ10
5の内容を参照し、DMA転送をいずれの方向へ行うか
決定し(7−10)、もしバッファ9−1〜9−3から
他の要素(I/O)への転送なら7−11から7−12
へ進んで、バッファ9−1〜9−3のうちの選択してい
るバッファに対しリード信号RDを与え、逆に他の要素
(I/O)からバッファ9−1〜9−3への転送ならば
7−13に進み、当該バッファに対してライト信号WR
を与える。
する(7−14)。その結果、いまの場合、Tr2の音
声入出力装置8−2は、6−4、6−5(図6)の処理
によって、サンプリングした音声データをデータバスに
送出し、バッファ9−2のカレントアドレスのエリア
に、DMAコントローラ10が書込むことになる(図1
3参照)。
で、上記リード信号RD又はライト信号WR、回答信号
DAKをインアクティブにし、7−16で当該チャンネ
ル(いまCH2)のカレントアドレス(図2のアドレス
レジスタ104内)の内容を+1とし、バッファの最終
アドレス到達の後は、バッファ開始アドレスにリセット
させる。この7−16の動作により、バッファ9−1〜
9−3に対して新たなサンプリング音声データが書込ま
れる都度、あるいは新たに音声データが読出される都
度、アップカウントまたはバッファ開始アドレスにリセ
ットされることになる。そして、7−16の処理の後、
7−1へもどる。
入出力装置8−2、8−3よりデータ転送要求がDMA
コントローラ10に対してなされており、これまでにT
r2についてのみデータ転送の実行をしたのであるから
続く7−5においてはYESの判断がなされる。以下T
r3に関して、音声入出力装置8−3からバッファ9−
3の方向へのデータ転送が、7−7〜7−11、7−1
3〜7−16を実行することにより上記した場合と同様
にしてなされる。
から7−17に進み、DMA可能信号を“0”(インア
クティブ)にして、DMAユニット内のデータバス、ア
ドレスバスをDMAコントローラ10が専有するのを中
止し、CPU1からのアクセスを受付けられるようにす
る。
置8−2、8−3から夫々対応するバッファ9−2、9
−3へのデータ転送について説明したが、Tr1につい
ては、逆に、バッファ9−1から音声入出力装置8−1
へのデータ転送がDMAコントローラ10によってなさ
れる。
バッファ9−1〜9−3とハードディスク12a,12
bとの間のデータ転送を各トラック毎に順番に行うよう
になり、各トラック毎に、前回のデータ転送(ブロック
転送)に続くデータ転送を行うようになる。図13の例
では、例えばTr1については、ハードディスク12
a,12bから、図示のスタートアドレス(CH1)と
カレントアドレス(CH1)の間の空白部分に対応する
データ量の転送をこれから行うようになる(他のトラッ
クについてもデータ転送の方向は逆であるが、同様の制
御によることは明らかである)。なお、プレイモードの
バッファ(9−1が該当)およびレコードモードのバッ
ファ(9−2、9−3が該当)では斜線部分が音声入力
されたデータ部分に対応する。
いてHDコントローラ11から転送要求があることを検
知すると、上記した場合と同様にして、7−6〜7−1
0を実行した後、バッファ9−1〜9−3からハードデ
ィスク12a,12b方向へのデータ転送の要求か、ハ
ードディスク12a,12bからバッファ9−1〜9−
3方向へのデータ転送の要求か7−11において判断
し、前者ならば7−12へ、後者ならば7−13へ進ん
だ後、7−14〜7−16の各処理を実行する。このと
き、1回の転送操作で、例えば1サンプル分のデジタル
音声データの転送がなされるので、この7−5〜7−1
6の動作を複数回くりかえし実行して、ブロック転送が
なされる。このハードディスク12a,12bとバッフ
ァ9−1〜9−3とのデータ転送については、HDコン
トローラ11の動作も大きく関連するので、後に更に説
明する。
号DRQ1〜4が到来しなくなり、7−5から7−17
へ進み、DMA可能信号DMAENBを“0”(インア
クティブ)とする。
8を参照してHDコントローラ11の動作を説明する。
このHDコントローラ11は、ハードロジックによって
も、マイクロプログラム制御によってもよく、いずれに
しても図8の動作フローの機能を実現する。
れているか判断する(8−1)。これは、CPU1のイ
ンタラプトルーチンにて与えられる。NOの場合はもと
にもどるが、YESの場合は、8−2に進みCPU1か
らリード信号RDが与えられているか、ライト信号WR
が与えられているか判断し、リード時にはHDコントロ
ーラ11内部の指定データ(アドレスレジスタの内容
等)をデータバスを介してCPU1へ出力する。
きは8−2から8−4に進み、今回DMAコントローラ
10のチャンネルCH4にてDMA転送するバッファと
ハードディスク12a,12bとのデータ転送方向を設
定し、8−5にて、アクセスするハードディスク12
a,12bのアクセスポイントを設定する。これは、C
PU1がRAM3から得ている当該トラックのディスク
アクセスポインタによる。
ジタル音声データ数)をHDコントローラ11の内部カ
ウンタに設定する。この転送データ数は、CPU1のイ
ンタラプトルーチンの中にて得ている。
とによってCPU1の制御のもとでHDコントローラ1
1はプログラムされ、その後HDコントローラ11はD
MAコントローラ10に対しデータ転送の要求をする
(8−7)。このことからも理解されるとおり、CPU
1は、HDコントローラ11からインタラプト信号IN
Tを受けると、次のトラックに対応する(つまり、いま
Tr1〜Tr3は全て動作中とすると、Tr1、Tr
2、Tr3、Tr1……の順で)DMA転送の設定、制
御をDMAコントローラ10に対し実行し、HDコント
ローラ11をプログラムする。その後、CPU1はHD
コントローラ11とDMAコントローラ10とから離れ
て、相互のインタラクションで実際のDMA転送を実行
させる。
8へ進み、DMAコントローラ10から回答信号DAC
K(DAK4)を受けとる(図7、7−14参照)まで
8−8をくりかえす。
進み、DMAコントローラ10のCH4の動作によっ
て、1サンプルのデジタル音声データの転送が行われ、
8−6にて設定した転送カウンタを1だけダウンカウン
トする(8−10)。続く8−11において、予め設定
しておいた転送データ数分のデータ転送が完了したか上
記転送カウンタの内容に従ってジャッジし、NOならば
再び8−8へもどる。従って、DMAコントローラ10
においては、HDコントローラ11から設定したデータ
数の転送(ブロック転送)が終了するまで、転送要求D
RQ4を続けて受けとることになり、この転送要求に従
って7−5〜7−16の処理(図7)を実行し、それに
応答する形でHDコントローラ11側では8−8〜8−
11の処理を実行する。
と、8−12に進み、HDコントローラ11からDMA
コントローラ10に対してのデータ転送の要求DREQ
(DRQ4)を“0”(インアクティブ)とする。そし
て、次のトラックに関してハードディスク12a,12
bとバッファ9−1〜9−3のいずれかとのデータ転送
を行わせるために、HDコントローラ11はCPU1へ
インタラプト信号INTを与える(8−13)。これに
応答して、CPU1はインタラプトルーチンを実行する
ことは上述したとおりである。
フローチャートを参照して、ハードディスク12a,1
2bに記録されているデータを外部より指定されたテン
ポに同期して再生する場合の動作について説明する。こ
の図9のフローは、CPU1の内部のタイマ等により定
期的に起動される。9−1において、外部ビートカウン
タ24より、内部ビートカウンタ23で計測している内
部テンポと、外部拍入力(これは、ユーザーのタッピン
グ入力であっても、シーケンサ等からのMIDI(Musi
cal Instrument Dijital Interface)クロックによって
もよい)のテンポとの時間差のデータを取り出す。即
ち、内部ビートカウンタ23は、システムクロック発生
回路21が出力するクロックをカウントするとともに、
そのカウント値を所定の値で分周することにより、ハー
ドディスク12a,12bより再生されているデータの
拍数をカウントする。1拍の期間においてカウントされ
るクロックの数は、次式で示すことができる。 1拍のクロック数=クロック周波数/(テンポ/60) 従って、基準の拍数(例えば4拍子など)の期間におけ
るクロック数(拍子時間)は、次式で示すことができ
る。 拍子時間=(クロック周波数/(テンポ/60))×基
準拍数
Hzとすると、テンポが例えば120である場合におけ
る1拍のクロック数は、 48kHz/(120拍/60秒)=24000 となる。従って、4拍の期間におけるクロック数は、そ
の値の4倍の96000クロックとなる。
0または105である場合における4拍の期間に対応す
るクロック数は、図12に示すように94426,10
4727または109714となる。
おいては、内部ビートカウンタ23はシステムクロック
発生回路21が出力するクロックを24000分周して
拍数をカウントするのである。
クロックの誤差が蓄積することになる。そこで、図11
に示すようなフローチャートに従って分周比が設定され
る。
カウンタ23が1拍の時間の計測を終えるごとにCPU
1にインタラプト信号INTが送られて、実行される。
最初に11−1において次の拍子時間がロードされ、残
りの拍数がセットされる。次に11−2において拍子時
間を残り拍数で割算し、その結果を四捨五入して得られ
た値が分周値として設定される。さらに11−3におい
て拍子時間(例えば4拍子ならば4拍の長さ)より分周
値を減算し、残りの拍数をデクリメントする。ここで残
り時間や残り拍数がゼロとなると、次の動作に備えて、
新たな拍子時間、拍数を設定する。
例えばいまテンポが122に設定されているとすると、
最初の拍子時間として94426がロードされる(11
−1)。そして、この値が最初の拍の割込みによる図1
1のフロー実行時には拍数4で割算され(94426/
4)、23606.5が得られる。この値は四捨五入さ
れて23607とされる(11−2)。次に94426
から23607が減算され、70819が得られる(1
1−3)。この70819が2拍目の割込みによる図1
1のフロー実行時にはさらに値3で割算され、2360
6.33が得られる。この値が四捨五入されて2360
6が得られる(11−2)。次に70820から236
06が減算されて、47214が得られる(11−
3)。3拍目の割込みによる図11のフロー実行時には
47214がさらに値2で割算されて、23607が得
られる。さらに47213からこの23607が減算さ
れて23606が得られる(11−2)。23606が
4拍目の割込みによる図11のフロー実行時には値1で
割算されて、23606が得られる。23606から2
3606を減算すると、その値は0になる。従って、新
たな拍子時間94426が11−3で内部設定されて、
次の拍子時間処理に備える。
に図11のインタラプトフローがCPU1によって実行
され、新たな分周値(拍時間に対応)が設定されて、そ
れを計数することを内部ビートカウンタ23は実行す
る。これに対し、外部ビートカウンタ24は、図18
(A)に示すように、内部ビートカウンタ23がカウン
トアップしてから外部から拍推定入力があるまでの時間
(−Δ)を計測する(外部テンポが内部テンポより遅い
とき)か、あるいは逆に図18(B)に示すように、外
部拍推定入力があって内部ビートカウンタ23がカウン
トアップするまでの時間(+Δ)を計測する(外部テン
ポが内部テンポよりも速いとき)。
期制御処理9−3や9−5で使用されるが、たとえ時間
差を計測し終えていないときに図9のインタラプトに入
っても、その時点の時間差で、クロックサーボコントロ
ールのためのデータ(9−3)に直されたり、アドレス
調整データ(9−5)に直されたりする。これによっ
て、図18(C)のように、外部の拍入力が非常に遅く
なった場合でも、同期制御割込みにより図9が動作する
毎に、拍の絶対時間差がマイナスに大きくなっていく
(−Δ、−Δ2、−Δ3、・・・)ので、システムクロ
ックを次第に遅くして殆ど止まるまでにもっていった
り、何度もアドレスを戻して実質的にアドレス歩進を停
止させることが可能となる。
ンタ24より、内部テンポと外部テンポの差を表す拍位
置時間差データを取り出す。9−2では、SYNCモー
ドがピッチ可変モード(テンポ調整のため、出力音声の
ピッチが上下変化するモード)か、アドレス可変モード
(テンポ調整はアドレスの調整によって行い、出力音声
のピッチは変化しないモード)のいずれであるのかが判
定される。ピッチ可変モードにするか、アドレス可変モ
ードにするかは使用者がこれを予めキーボード4等の操
作によって選択指定することになる。
9−1で求めた拍位置時間差のデータからクロックサー
ボデータが求められる。そして、このサーボデータに対
応してクロック周波数が制御されることになる。即ち、
CPU1はクロックサーボコントロール回路22を介し
て、その差に対応してシステムクロック発生回路21を
制御する。即ち、システムクロック発生回路21は、こ
の差に対応して発生するクロック周波数を変化させるこ
とになる。その結果、例えば外部のテンポが内部のテン
ポに比べて5%速い場合においては、そのずれを解消す
るために、システムクロック発生回路21が発生するシ
ステムクロックの周波数が5%だけ速くなるように制御
されることになる。但し、実際には、差に対応してクロ
ックをどれほど調整するかは制御ループの特性に依存す
ることになる。
合においては、システムクロック発生回路21における
クロックの発生を停止させるようにすることもできる
(上述した通り)。
が設定されていると判定された場合においては9−4に
進み、すでに9−1で得ている拍位置時間差のデータが
一定値を越えたものか否か判断し、一定値を越えていな
ければ9−4の判断はNoとなって、何らアドレス変更
処理を行わずにメインルーチンへリターンするが、もし
一定値を越えていることが判断されると、YESとなっ
て9−5に進み、時間差データからアドレス調整データ
が演算される。そしてCPU1は、この調整データに対
応してハードディスク12a,12bの読出アドレスを
所定の位置となるようにDMAコントローラ10を介し
て制御する。
が、図10のフローチャートに示されている。即ち、最
初に10−1において調整値(9−5において演算され
ている)が0より大きいか否かが判定される。調整値が
0より大きい場合、即ち、外部のテンポが内部のテンポ
より速い場合、10−2に進み、イベントの残りのデー
タ量と調整値との大小関係が判定される。イベントの残
りデータ量が調整値より大きい場合、10−3に進み、
既転送量に調整値が加算される。即ち、カレントアドレ
スが調整値に対応する分だけ進められ、その間のデータ
の再生が中止(読みとばし)されることになる。
量が調整値より小さいと判定された場合においては10
−4に進み、ESTインデックスが1だけインクリメン
トされたイベント、即ち、次のイベントの既転送量が調
整値から現在のイベントの残りデータ量を減算した値に
設定される。即ち、これにより現在のイベントの残りの
データと次のイベントの所定のデータ(調整値−残りデ
ータ量)がスキップされ、再生されないことになる。
と判定された場合、即ち、外部のテンポが内部のテンポ
より遅い場合、10−5に進み、既転送量と調整値の大
きさが判定される。既転送量の方が調整値より大きいと
判定された場合、10−6に進み、既転送量から調整値
が減算される。即ち、カレントアドレスが調整値に対応
する値だけ元に戻されることになる。その結果、調整値
に対応する分だけデータが2重読みされることになる。
さいと判定された場合、10−7に進み、カレントアド
レスが1つ前のイベントの所定のアドレスイベント長−
(調整値−既転送量)まで戻される。そして、そこから
一旦再生されたデータが再度再生されることになる。
ィスク12a,12bのセクタ長の倍数を四捨五入する
などしてまるめることにより得られる。1セクタが51
2バイトである場合、256サンプル、48kHzで約
5ms単位の調整を行なうことができる。例えばカレン
トデータが図17に示すようになっている場合、9−5
の処理の結果、外部のテンポが256サンプル時間分進
んでいるとすると、各トラックの既転送量に256が加
算される。
数10乃至数100ms分の音声データのブロックごと
に行なうので、同期処理の監視時間(図9のフローのタ
イマインタラプト間隔)を数10msごとに行なうもの
とすると、数10msのブロックごとに数ms分のデー
タの調整を行なうことになるので、外部拍入力で簡便な
時間圧伸(早口や遅口)をリアルタイムで実行すること
ができる。そして9−7において、アドレス変更によっ
て絶対時間を変更したことを補正するため、内部ビート
カウンタ23のビートカウント数や分周値を変更する。
コーダによれば、外部より指定されたテンポと内部のテ
ンポとを比較し、その比較結果に対応してクロック周波
数を制御するようにしたので、簡単な操作で再生データ
を外部同期(あるいは外部追従)させることができる。
ば、D/A変換手段のD/A変換タイミングを規定する
クロックの周波数を外部より指定されたテンポと内部の
テンポとの差に対応して制御するようにしたので、簡単
な構成で再生データのピッチを変更することができる。
によれば、外部より指定されたテンポと内部のテンポと
の差に対応して、記録媒体より読み出す読出アドレスを
制御するようにしたので、再生データのピッチを変更す
ることなく、簡単に外部より指定されたテンポに同期も
しくは追従して、再生動作の制御を行わせることが可能
となる。
成を示すブロック図である。
すブロック図である。
ャートである。
ローチャートである。
テップ4−2の作用を説明するためのフローチャートで
ある。
示すフローチャートである。
チャートである。
ャートである。
トである。
すフローチャートである。
するフローチャートである。
定のためのデータの説明図である。
す概念図である。
例を示した説明図である。
ングデータのイベントシーケンステーブルの一例を示し
た説明図である。
一例を示した説明図である。
る。
動作の説明図である。
Claims (3)
- 【請求項1】 記録媒体に記録されているデータを再生
する再生手段と、 前記再生手段により再生された再生データを出力するク
ロックを発生するクロック発生手段と、 前記再生データの再生テンポを計測するテンポ計測手段
と、 外部より指定されたテンポと前記内部計測手段により計
測されたテンポとを比較し、その比較結果に対応して前
記クロック発生手段により発生されるクロックの周波数
を制御して外部より指定されるテンポに応じて上記出力
動作の制御を行うクロック周波数制御手段とを備えるこ
とを特徴とするデジタルレコーダ。 - 【請求項2】 前記再生データをD/A変換するD/A
変換手段をさらに備え、 前記クロックは前記D/A変換手段におけるD/A変換
タイミングを規定するクロックであることを特徴とする
請求項1に記載のデジタルレコーダ。 - 【請求項3】 記録媒体に記録されているデータを再生
する再生手段と、 前記再生データの再生テンポを計測するテンポ計測手段
と、 外部より指定されたテンポと前記内部計測手段により計
測されたテンポとを比較し、その比較結果に対応して前
記記録媒体の読出アドレスを制御して外部より指定され
るテンポに応じて再生動作の制御を行うアドレス制御手
段とを備えることを特徴とするデジタルレコーダ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03330158A JP3114299B2 (ja) | 1991-11-19 | 1991-11-19 | デジタルレコーダ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03330158A JP3114299B2 (ja) | 1991-11-19 | 1991-11-19 | デジタルレコーダ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05144179A true JPH05144179A (ja) | 1993-06-11 |
JP3114299B2 JP3114299B2 (ja) | 2000-12-04 |
Family
ID=18229468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03330158A Expired - Fee Related JP3114299B2 (ja) | 1991-11-19 | 1991-11-19 | デジタルレコーダ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3114299B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009300128A (ja) * | 2008-06-11 | 2009-12-24 | Nissin Electric Co Ltd | サンプリング同期装置、サンプリング同期方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7931149B2 (en) | 2009-05-27 | 2011-04-26 | Given Imaging Ltd. | System for storing and activating an in vivo imaging capsule |
JP7252780B2 (ja) | 2019-02-21 | 2023-04-05 | 花王株式会社 | 演出方法及び演出具 |
-
1991
- 1991-11-19 JP JP03330158A patent/JP3114299B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009300128A (ja) * | 2008-06-11 | 2009-12-24 | Nissin Electric Co Ltd | サンプリング同期装置、サンプリング同期方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3114299B2 (ja) | 2000-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5974015A (en) | Digital recorder | |
US5581530A (en) | Digital recorder for processing of parallel data stored in multiple tracks and using cross-fade processing | |
US5303218A (en) | Digital recorder for reproducing only required parts of audio signals wherein a plurality of parts of audio signals are stored on a same track of a recording medium | |
US5519684A (en) | Digital recorder for processing in parallel data stored in multiple tracks | |
US5373493A (en) | Apparatus for digitally recording reproducing and editing an audio signal | |
JP2979101B2 (ja) | 自動演奏装置 | |
US5530898A (en) | Digital recorder for storing audio data on tracks with specific operation modes inputted manually where soundless portion data is inserted based on respective operation modes | |
JP3252172B2 (ja) | デジタルレコーダ | |
JP2001511576A (ja) | 記録された音声データを映像データに同期させて即時再生するオーディオビジュアル効果処理方法及び装置 | |
JPH05144179A (ja) | デジタルレコーダ | |
JP2969187B2 (ja) | デジタルレコーダ | |
JPH04232666A (ja) | デジタルレコーダ | |
EP0510639B1 (en) | Digital recorder | |
JP2916533B2 (ja) | デジタルマルチトラックレコーダ | |
US5680378A (en) | Digital recorder for recording/reproducing events formed by dividing audio data in a designated order | |
JP3230756B2 (ja) | デジタルレコーダ | |
JPH05135548A (ja) | デジタルレコーダ | |
JPH04212767A (ja) | デジタルレコーダ | |
JP3055222B2 (ja) | デジタルレコーダ | |
JPH04117688A (ja) | デジタルレコーダ | |
JPH10162559A (ja) | ソフトデータの管理方法 | |
JP2979154B2 (ja) | デジタルレコーダ | |
JP3298655B2 (ja) | デジタルレコーダ | |
JPH05151706A (ja) | デジタルレコーダ | |
JP2944106B2 (ja) | 再生制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070929 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080929 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090929 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100929 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100929 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |