JPS6253849B2 - - Google Patents

Info

Publication number
JPS6253849B2
JPS6253849B2 JP59054072A JP5407284A JPS6253849B2 JP S6253849 B2 JPS6253849 B2 JP S6253849B2 JP 59054072 A JP59054072 A JP 59054072A JP 5407284 A JP5407284 A JP 5407284A JP S6253849 B2 JPS6253849 B2 JP S6253849B2
Authority
JP
Japan
Prior art keywords
data
waveform
frequency
output
division ratio
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.)
Expired
Application number
JP59054072A
Other languages
Japanese (ja)
Other versions
JPS6089226A (en
Inventor
Masaya Nakamura
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.)
Namco Ltd
Original Assignee
Namco Ltd
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 Namco Ltd filed Critical Namco Ltd
Priority to JP59054072A priority Critical patent/JPS6089226A/en
Publication of JPS6089226A publication Critical patent/JPS6089226A/en
Publication of JPS6253849B2 publication Critical patent/JPS6253849B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/03Digital function generators working, at least partly, by table look-up
    • G06F1/0321Waveform generators, i.e. devices for generating periodical functions of time, e.g. direct digital synthesizers
    • G06F1/0328Waveform generators, i.e. devices for generating periodical functions of time, e.g. direct digital synthesizers in which the phase increment is adjustable, e.g. by using an adder-accumulator
    • G06F1/0335Waveform generators, i.e. devices for generating periodical functions of time, e.g. direct digital synthesizers in which the phase increment is adjustable, e.g. by using an adder-accumulator the phase increment itself being a composed function of two or more variables, e.g. frequency and phase

Description

【発明の詳細な説明】[Detailed description of the invention]

[技術分野] 本発明はデジタル制御の任意波形発生回路に関
する。 [従来技術] 従来、特定の波形だけを発生し得る専用の回路
は数多く知られているが、一般に同一回路構成で
任意の異なる出力波形を得られるならば非常に便
利なことは明らかである。 例えばビデオゲーム機器等においては、一機種
毎にそれぞれ特殊の疑音を発生させることが要求
されるところから、従来、一機種毎にそれぞれ専
用の音発生回路を設計し付加している。しかしこ
のような多種少量生産の機器のおいて一機種毎に
専用の音発生回路に従つて波形発生回路を設計し
付加することは非常に不経済であり、同一回路で
色々異なつた音を出せること並びに複数の音が同
時に出せることが要望され、そのための任意波形
発生回路の提供が望まれていた。 一方、この種の自由度をもつ波形発生回路とし
ては、従来フアンクシヨン・ジエネレータが知ら
れているが、その出力として取り出し得る波形
は、三角波、方形波、正弦波あるいはそれらの組
合わせで得られるのこぎり波、ランプ波、指数関
数波等であり、特定の波形に限られている。従つ
てフアンクシヨン・ジエネルータではそれら以外
の任意波形を発生させるためには、その都度別の
専用回路を設定し付加しなければならない。 [発明の目的] 本発明の目的は、波形メモリに予め記憶された
波形データから所望種類の波形を所望周期で読出
すことにより任意の周波数及び形状の波形を発生
させることができる波形発生回路を提供すること
にある。また他の目的は、本発明の任意波形発生
回路を疑音発生回路として使用し、求める異なつ
た疑音を同一回路で得ることにある。更に本発明
によれば所望の画像を形成するための映像信号を
得るために必要な波形を発生し得る。 本発明においては、疑音あるいは映像作成用の
複数種の異なる波形を有し、該波形をそれぞれ対
応するデジタル波形としてデータとして予め波形
メモリに記憶保持されている。 周知のように、一般の波形は波形(状)、繰返
し周波数(周期)及び振幅の三要素を有し、これ
らのいづれかが相違すれば異なる波形となり、例
えば疑音の場合、音色、高低及び音圧の差となつ
て現出し、また映像の場合、画形の差となつて現
われる。なお、前記周波数には初期位相も含ま
れ、これによつて特に映像の場合に画の座標位置
が定まる。 以上の三要素に対応して、本発明の波形発生回
路においても各要素の任意指定が行われ、波形メ
モリに記憶保持された波形データ種の選択によつ
て波形状が定まり、またこの選択されたデータの
読出分周比の設定によつて周波数(周期及び初期
位相)が定まる。そして、これら波形状と周波数
とがデジタル的に設定された後、その振幅が設定
される。 [発明の構成] 本発明において特徴的なことは、波形データの
選択と読出分周比の設定が別個に処理されている
ことであり、特に読出分周比は読出周波数(周
期)を外部より入力するのみで任意の周波数を設
定可能であり、波形メモリの記憶データが限られ
た量であるにも拘らず多数の波形を発生し得る利
点がある。 すなわち、本発明によれば、各波形データに対
してその読出周期(読出アドレス間隔)を変える
ことにより、データは適当に間引かれあるいは適
当に多重読みされて読出され、これによつて所望
の繰返し周波数が設定可能となる。 また、本発明において、前記読出周波数の設定
は入力された周波数データを一定のサイクル毎に
デジタル加算して、この加算結果にて波形データ
のアドレスを指定することが好適である。 更に、前述した読出周波数の初期位相を決定す
るために、周波数データとは別個に初期位相デー
タを入力し、第1加算時にこの初期位相データを
読込むことが好適である。 [実施例] 以下に添附の図面について、本発明の任意波形
発生回路の具体例を第1図ないし第4図を使つて
説明する。この具体例の回路によれば3つの波形
が得られるようになつている。 従つて、所定の3つの波形が見掛け上重ね合さ
れて出力され、例えば疑音発生回路に対しては3
種類の異なる音を同時に出力可能とし、また映像
発生回路に対してはデイスプレイ上に異なる波形
あるいは色の映像を描出可能とする。もつとも本
発明においては単一の波形のみを処理することを
基本としているので、以下主としていずれか1つ
の波形処理の説明を行い他の説明を略すことが多
い。 第1実施例において、波形メモリから所望の波
形を選択しまたその繰返し周波数をデジタル的に
設定する波形選択及び分周比設定回路はマルチプ
レクサ1,2、データレジスタ3、累算器4、加
算器5そしてラツチ6からなる。 第1図中において、1は入力端子Aが中央処理
装置CPUのアドレスバスABに接続されたマルチ
プレクサ、2は入力端子AがCPUのデータバス
DBに接続されたマルチプレクサである。マルチ
プレクサ1の出力端子Yはデータレジスタ3及び
累算器4の両アドレス入力端子Aに接続され、マ
ルチプレクサ2の出力端子Yはデータレジスタ3
及び累算器4の両データ入力端子Dに接続されて
いる。すなわちマルチプレクサ1及び2はCPU
がデータレジスタ3及び累算器4にデータを書き
込む場合、CPUのアドレスバスAB及びデータバ
スDBをデータレジスタ3と累算器4のアドレス
及びデータ入力に接続する役目をする。 データレジスタ3は、本実施例においては、第
2図の上段に示すように、16ビツトの周波数デー
タDと4ビツトの振幅データAとを一群とするデ
ータを2組、更に20ビツトの周波数データDと4
ビツトの振幅データAを1組計3組保持し時分割
で3種類の異なる波形を処理している。ただし周
波数データDは4ビツトずつ4桁に分割されてお
り、20ビツトの周波数データは4ビツトずつ5桁
に分割されている。分割されて得られる部分周波
数データはDnmで表われている。この場合添字
nは部分周波数データの属する群を表わし、mは
桁の重みを表わす。周波数データDは最終的に得
られる出力信号の周波数(波形メモリ7のアドレ
ス指定周期)を指定し、また振幅データAnは
(nはデータの属する群を表わす)は出力信号の
振幅を指定するものである。 一方、累算器4は、レジスタの一種で、初期設
定値(零を含む)に入力値が順次加算され、この
演算結果が元の値に置換される装置であり、第2
図の下段に示すように、必要に応じて波形の初期
位相を設定するための16ビツトの被加算データC
と4ビツトの波形選択データWとを一群とするデ
ータを2組、更に20ビツトの初期位相設定用被加
算データCと4ビツトの波形データWを一群とす
るデータを1組計3組保持している。ここで、累
算器4に初期設定されていたデータが波形の初期
位相を設定する。被加算データCは同様に4ビツ
トずつ4又は5桁に分割されており、その1桁分
の部分被加算データCnmで表わされている。こ
の部分被加算データCnm及び被波形選択データ
Wnに付けた添字nがそれらのデータが属する群
を表わし、添字mが桁位置を表わすことは上記と
同様である。 上記の3群のデータのうち、各々1群(例えば
D10〜D13,A1,C10〜C13・W1)が1つの波形に関
するデータ(周波数データ、振幅データ、初期位
相データ、波形選択データ)を取扱つている訳で
ある。 第2図の上段及び下段の各ブロツク上方の符号
は、各データ部のアドレスを16進で表記したもの
である。このアドレスは次に述べる制御信号発生
装置11からの同期信号SSによつて指定され
る。 制御信号発生装置11は第3図に示すような同
期信号SS及び制御信号CSを発生する。同期信号
SSは4H(750KHz)、8H(375KHz)、16H
(187.5KHz)及び32H(93.75KHz)からなる4
ビツトのバイナリ信号である。制御信号CSは、
マルチプレクサ切換信号MPX、累算器書込信号
WRO、データレジスタ書込信号WR1、第1ラツ
チ信号PCK、第1ラツチクリア信号CLR、そし
て第2ラツチ信号TCKである。ただしWRO、
WR1はCPUより書込制御信号WRCを受けて制御
信号発生装置11内で合成された信号である。 第2図及び第3図から判るように、マルチプレ
クサ1の制御入力端子Sに加えられている切換信
号MPXは、同期信号SSの1アドレス区間のそれ
ぞれ後半約1/2の区間において論理“1”とな
り、その都度マルチプレクサ1を入力端子B側に
切換える。それゆえ同入力端子に加えられている
同期信号SSがマルチプレクサ1を通つて、デー
タレジスタ3及び累算器4に入力されてアドレス
を指定する。従つてデータレジスタ3及び累算器
4からは、指定されたアドレス“0”〜“F”ま
でのデータは順次出力されることになる。 加算器5はデータレジスタ3から出力される周
波数データDと累算器4から出力される被加算
(初期位相)データCとをビツト並列桁直列の形
で加算する。すなわち同期信号SSのアドレス
“0”〜“F”につき、同じ桁同志の部分データ
DnmとCnmの加算結果すなわち和(4ビツト)
と桁上データ(1ビツト)とを出力する。ただし
この桁上げはデータDnmとCnmの実際の値いか
んにより生じたり生じなかつたりする性質のもの
である。 加算器5からの和及び桁上データは、その都度
ラツチ6に送られ、同ラツチ6にラツチされる。
このラツチ信号PCKが上記マルチプレクサ切換
信号MPXの論理“1”の区間の前半約1/2の区間
において発生されてラツチ6に入力されることに
より行われる。このラツチ6にラツチされた和
は、ラツチ6の出力端子からライン12を通りマ
ルチプレクサ2の入力端子Bに送られ、同マルチ
プレクサ2を通つて累算器4に入力される。この
場合累算器書込信号WRは上記マルチプレクサ切
換信号MPXの論理“1”の区間の後半1/2の区間
に生ずるパルスであるから、ラツチ6からの和の
データはその和を作つたもとの被加算データのア
ドレスの場所に書込まれる。例えばデータD10
C10の和はデータC10のアドレスに書込まれる。一
方、加算結果に桁上げが生じたときは、その桁上
データはラツチ6の出力端子からライン13を通
して加算器5の入力端子Cに送られる。従つて、
例えばデータD10とC10との加算において桁上げが
生じた場合には、結果的に、次のデータD11とC11
との加算はこの桁上データを加味して行われる。 本発明において前記累算器4、加算器5及びラ
ツチ6が加算手段を形成する。 7は複数の波形データが記憶された波形メモリ
であり、この波形メモリ7の下位5ビツトのアド
レス入力端子は被加算データCの上位5ビツトが
分周比データとして入力されるようにラツチ6の
出力端子に接続されている。残りの上位3ビツト
のアドレス入力端子は波形選択データWnが入力
されるように累算器4の出力端子に接続されてい
る。 波形メモリ7の4ビツトの出力端子にはラツチ
8が接続され、またデータレジスタ3の出力端子
には振幅設定回路を形成するラツチ9が接続され
ている。両ラツチ8及び9は、ともに第2ラツチ
信号TCKによりラツチ動作する。この第2ラツ
チ信号TCKは、第3図から判るように、振幅デ
ータAnと波形選択データWnのアドレスを同期信
号SSが指定している区間(t=4、9、F)に
おいて生ずる。この時点においては、累算器4か
らは波形選択データWnが、またデータレジスタ
3からは振幅データAnが出力される。従つてラ
ツチ8にラツチされるデータは波形選択データ
Wnで上位アドレスを指定され、ラツチ6にラツ
チされている加算結果により分周比データとして
下位レジスタを指定された波形メモリ7からのデ
ータであり、またラツチ9にラツチされるのは振
幅データAnである。 10はラツチ8からのデジタル信号を対応する
アナログ電圧信号に変換するD/Aコンバータで
あり、該コンバータのゲインはラツチ9(振幅設
定回路)からの振幅データによつて変化せしめら
れる。このD/Aコンバータ10からの所望の出
力波形が得られる。 第4図は第1図の実線の回路例であり、同一構
成要素には第1図と同じ符号を付してある。マル
チプレクサ1,2にはテキサスインスツルメント
社製のICであるSN74LS157、SN74LS158、が、
データレジスタ3及び累算器4には同社の
ICSN7489が、加算器5には同社のICSN74LS283
が、ラツチ6には同社のSN74LS174が、そして
ラツチ8,9には同社のICSN74LS273が使用さ
れ、また波形メモリ7及び制御信号発生装置11
の部分構成要素11′にはインターシル社製の
ICIM5623Aが使用されている。 第1図ないし第4図において、本発明の任意波
形発生回路の動作例を説明しよう。説明の便宜
上、任意の疑音を発生させる場合を考えよう。音
の種類は、周知のようにスピーカ等に加える信号
に関し、その周波数、振幅及び波形の三要素によ
つて決定される。従つて任意の音を得るために
は、これらの三要素を自由にかつ正確に設定でき
なければならない。 再び第2図及び第3図を参照して同期信号のア
ドレスt=0のとき、データレジスタ3から周波
数データD10が、累算器4から初期位相データC10
が出力され、それぞれ加算器5が加算し、和及び
桁上げ出力をラツチ6がラツチし、そしてこの和
がもとのC10のアドレスに書込まれる。アドレス
がt=1のとき、同様にD11とC11が出力され、和
及び桁上出力をラツチ6がラツチし、和が元の
C11のアドレスに書込まれる。アドレスがt=2
のときはD12とC12につき同様に処理され、そして
アドレスがt=3のときD13とC13につき同様の処
理がなされる。この間においてもし加算器5に桁
上出力が生ずれば、加算器5にその桁上データが
加えられる。このことは、被加算データCの上位
5ビツト(分周比データ)すなわちC13の4ビツ
トとC12の1ビツトに実際に論理“1”の出力が
表われる時期が、周波数データD及び被加算(初
期位相)データCの実際の値が大きいものほど、
早く到来することを意味する。 次いでアドレスがt=4のとき、データレジス
タ3から振幅データA1がまた累算器4から波形
選択データW1が出力される。後者の波形選択デ
ータW1並びにt=3においてラツチ6でラツチ
された和はそれぞれ波形メモリ7の上位3ビツト
のアドレス(波形選択データ)及び下位5ビツト
のアドレス(分周比データ)に別個に加えられ
る。従つてこれらのアドレスに該当する波形デー
タが波形メモリ7から読み出される。この読み出
された波形データ及び上記振幅データA1は、ラ
ツチ信号TCKにより、同時的に、それぞれラツ
チ8に及び9にラツチされる。 上記の動作はn=1、2、3の3組のデータ群
について順次行われ、時分割で3種類の異なる波
形処理が行われる。ここで各組のデータ群に対し
て行われる1回の処理を1サイクルと定義する。
被加算データC及び周波数データDはそれぞれ4
ビツトの部分データが4桁分直列になつたもので
あるから、16ビツト全体としても被加算データC
には1サイクル毎に1回だけ16ビツトの周波数デ
ータDが加算されることになる。 表2は、ある1種類の波形に対する1サイクル
毎の累積された被加算データCすなわち分周比デ
ータの状態と、波形メモリ7から出力される波形
データの例を示したものである。Sn(n=0、
1、2、3、4…)はサイクル回数を表わし、波
形データ欄のWD−Oは波形選択データW1=0の
場合の表1に基づいた出力波形データを、WD−
7は波形選択データW1=7の場合の表1に基づ
いた出力波形データを示す。 表1は波形メモリ7の内容の1例を示したもの
である。 初期状態のときの周波数データDをD=0800H
とし、被加算データCはC=0000Hであると仮定
しよう。末尾のHは16進であることを表わす。サ
イクルS0において、波形選択データはOHである
から、波形メモリのアドレス上位3ビツトは000
であり、C=0000Hであるから、ラツチ6から出
力される波形メモリのアドレス上位5ビツトは
00000となり、よつて波形メモリは00000000すな
わち00Hのアドレスが指定されて波形メモリより
波形データ「7」が読み出される。 同様に、サイクルS1においてはW=0H、C=
0800Hであるから波形メモリのアドレス上位3ビ
ツト、下位5ビツトは各々000と00001である01H
のところの波形データ「9」が読み出される。こ
のようにして、1サイクル毎に被加算データCに
周波数データDが加算されるから、1サイクルを
終了する毎に被加算データCの内容は表2に示す
ように変化して行く。そして波形メモリ7には表
1のごとく「0」から「7」までの7種類の異な
る波形データが記憶されているから、波形選択デ
ータW1が0であれば、波形データは表1の上か
ら2段分のものが取り出され、各1サイクルの終
了毎に、表2のWD−0欄に示すごとく変化して
ゆく。第5図は、横軸にサイクル回数Snを、縦
軸に波形データに対応するアナログ量をとつて、
この波形データより得られる出力波形を表わした
ものである。これからW1=0の場合にはサイン
波形が得られることが判る。一方、波形選択デー
タW1が7であれば、表2のWD−7の欄に示すご
とく波形データが変化して行く。この様子を第5
図と同様にして表わすと、第6図に示すようなの
こぎり波が得られることが判る。このように、波
形選択データW1の値いかんによつて、波形メモ
リ7内の波形データの選択、従つて出力波形の選
択ができる。従つて、波形メモリ7に単に適当な
波形データを入れておきさえすれば、どのような
波形でも出力させることができる。 次に音の三要素のうちの周波数について考えて
みよう。 表2で被加算データCの値に注目すると、初期
状態S0の時のCの値とS20の時のCの値が等しく
なつている。これはCの値がS0から20サイクル後
に初期状態と同じになり波形メモリ7のアドレス
が初めの状態に戻つたことを意味するから、この
20サイクル間に1波長が出力されることになる。
そこでこの1波長に対応する区間を「1周期」と
定義する。本実施例では被加算データCの値が
10000Hだけ増加する間が1周期になる。ただし
この1周期分の波形を得るのに必要なサイクル数
は周波数データDの値によつて変化する。すなわ
ち、波形データの読出アドレス指定周期が短かけ
れば1周期分の波形を得るにの多くのサイクル数
を必要とし、長ければ少しのサイクル数で1周期
分の波形が得られる。1周期する間に生ずるサイ
クル数をNsとし、周波数データの値をD′とすれ
ば、 Ns=10000H/D′ (4桁の例) Ns=100000H/D′ (5桁の例) 1サイクルにかかる時間をts、1周期にかかる時
間をTsとすると Ts=Ns・ts 1周期に1波長出力されるので、出力波形の周波
数をF0すると、 F0=1/Ts=1/Ns・ts=D′/ts・1000
0H…(1) ここでtsは同期信号SSによつて決まる定数であ
るから、周波数F0は周波数データの値D′によつ
て決定される。このことは、出力波形の周波数が
周波数データDの値いかんによつて任意に設定で
きることを示している。 表2においては1サイクル毎に波形データが変
化しており、従つて表2は上述の出力周波数が最
も高い場合の例示になつている。しかしながらも
し1サイクルの終了時に、被加算データCの内容
が小さく、それゆえ被加算データCの上位5ビツ
トの内容に変化がない場合には、波形メモリ7か
ら出力される波形データも変化しない。それゆえ
被加算データCの上位5ビツトの内容が変化する
まで、幾サイクルの時間が経過し(多重読みさ
れ)、それだけ出力周波数が低くなつてくる訳で
ある。 ところで1サイクルにかかる時間tsを同様に周
波数で表わしFTとすると、上記(1)式は次のよう
になる。 F0=FT・D′/10000H …(2) 従つてD′/10000HをFTとF0の分周比として見
ると、本回路はFTを分周する分周比が可変の分
周装置として機能していることが判る。 すでに述べた説明から明らかなように、本実施
例においては、3種の異なる波形を発生させるた
めに、1サイクルの間に3組のデータ群に対して
順次計算処理が行われており、周期信号SSのア
ドレスt=0〜4で第1群、t=5〜9で第2
群、そしてt=A〜Fで第3群の処理が、同一の
回路を順次作動させることで行われる。そのため
出力波形も第1、第2、第3群の計算処理に応じ
たアドレス波形データに基づくアナログ出力がそ
れぞれ出力される。従つて例えば、第1群の処理
で第5図のサイン波形21が第2群の処理で第5
図と同じサイン波形ではあるが、周波数が1/2の
波形22が、そして第3群の処理で第6図ののこ
ぎり波形23が得られるとすると、全体として得
られる出力波形は、第7図に示すように、これら
を合成したものとなる。この場合、第7図に見ら
れるように、1つの群から他の群の処理に切換わ
つた際、スイツチング信号成分が波形上に現われ
る。しかし1サイクルに要する時間tsは第3図の
示すように10.67μsであり、スイツチング信号
の周波数Fsは人の可聴周波数の最高値よりも非
常に高くなつている。このため、第7図の波形を
音として聞いた場合、スイツチング信号成分は聞
こえず、波形の平均値として、すなわち各群の処
理に基づく出力波形をアナログ的に加算したもの
と同じに聞こえ、例えばビデオゲーム等において
バツクグラウンド音にゲームプレイ音を重ねるこ
とが可能となる。 以上、第1図及び第4図の実施例につき、出力
波形の周波数、形状、振幅がどのように設定され
るかを説明した。しかし本発明はこれに限定され
るものではなく本発明の精神の範囲内で種々の変
更、修正が可能である。 例えば、第2図に示したデータ構成は一例であ
つて制御信号発生回路11からの制御信号CSの
発生タイミングを変えることにより、各データ
D,C,A,Wのビツト数を任意に変更すること
ができる。また1桁を4ビツトとしたのも使用し
たICとの関係でそうしたにすぎない。すなわち
データ構成は周波数、波形形状及び振幅の各設定
値において必要とされる精度及び分解能に合せて
任意に変更し得る。例えばデータD,Cのビツト
数を増加すれば周波数の分解能が上がり、データ
Aのビツト数を増やせば振幅の分解能が上がる。
また被加算データCより取り出して波形メモリ7
のアドレスに加えているデータのビツト数と波形
メモリ7の出力のビツト数を増やすことによつて
波形の近似精度が上がるのである。1組のデータ
群によつて1つの音が出せるので、データ群の数
いかんによつて同時に出させる音の数も変化す
る。必要とされる音の数だけのデータ群を用意す
ればよい。 本発明の任意波形発生回路は、データ群を1組
だけ設けた場合には、同一回路で周波数、波形形
状及び振幅の異なる任意の波形を得ることがで
き、従つて色々異なつた音を発生させたりあるい
はすでに述べたように分周装置として使用するこ
ともできる。 またデータ群を複数組設けた場合には、同一回
路で複数の前記波形等の組合わせができ、従つて
更に複雑な音を同時に出力することができる。例
えばビデオゲーム機械のスクリーンに映つている
移動体の駆動音を発生させながら、更に必要に応
じて得点音を発生させることが容易に実表でき
る。 しかもデータ群を1組又は複数組とするいずれ
の構成にした場合にも、共通して言えることは、
異なつた音又は複数の音が同時に出せるようにし
ても部品の点数増加がないこと、そして量産ある
いはIC化に適した回路であるということであ
る。 上記実施例における分周比が可変の分周装置の
部分は、第8図あるいは第9図のような回路によ
つても実現し得る。 第8図はレートマルチプライヤを分周器として
使用した回路である。第8図でラツチ30はレー
トマルチプライヤ31のレートインプツトデータ
Rを保持している。ラツチ32は波形選択デー
タを保持し波形メモリ33の上位アドレスを供給
している。ラツチ34は振幅データを保持してい
る。波形メモリ33は波形データを記憶してい
る。カウンタ35はレートマルチプライヤの出力
信号をカウントして波形メモリ33の下位アドレ
スを供給する。D/Aコンバータ36はデジタル
信号をアナログ信号に変換する。 今、レートマルチプライヤ31のビツト数を11
ビツト、ラツチ30とデータDRのビツト数を11
ビツト、カウンタCTのビツト数を5ビツトと
し、レートマルチプライヤのクロツク信号の周波
数をFT、レートマルチプライヤ31の出力信号
の周波数をFR、アナログ出力信号の周波数をF0
とすれば、 レートマルチプライヤ31は11ビツトであるか
ら、 FR=FT・D/800H カウンタ35は5ビツトであるから F0=1/20H・FR よつて F0=FT・D/10000H …(3) この(3)式から、分周比FR1を求めてみると FR1=D/10000H …(4) の分周器として働いており、任意の周波数を設定
できることが分る。 第9図はプログラマブル・デバイダを使用した
回路例である。この回路は、第8図のレートマル
チプライヤ31がプログラマブルデ、バイダ37
になつている他は第8図と同様とすれば、同様に
してFR及びF0は FR=FT・1/800H−D F0=1/20H・FR である。よつて F0=FT・1/20H・1/00H−D …(5) この(5)式から分周比FR2を求めると FR2=1/20H・1/800H−D …(6) の分周器として働いている。これは(4)式とは形が
異なつているが、分周比の値の範囲を比較してみ
ると次のようになる。 ラツチ30のデータDRは11ビツトであるから
OH≦DR≦7FFHであり、その時 (4)式より 1/10000H≦FR1≦1/20H (6)式より 1/10000H≦FR2≦1/20H となり、分周比の値の範囲は同じになつている。
すなわち、第9図でも第8図の回路と同じ範囲の
周波数を設定することができるのである。 以上のように、分周比可変の分周装置は、レー
トマルチプライヤかプログラマブル・デバイダに
よつても形成され得るものである。 以上の実施例においては、振幅制御をもできる
回路構成を例示したが、実際上は、波形発生回路
としては周波数と波形形状の制御だけでほとんど
十分であり、従つて振幅制御は必ずしも必要では
ない。 本発明の上述した諸回路の用途としては、すで
にいくつか揚げたが、効果音発生回路のほかに、
信号発生器又はフアンクシヨンジエネレータとし
て、また音声波形又はその類似波形を波形データ
に入れることによつて、疑似音声の発生回路と
し、また音声波形又はその類似波形データに入れ
ることによつて、疑似音声の発生回路として、更
には複数波形をX軸、Y軸に加えることによつて
X−Y2次元デイスプレイの図形の発生回路等へ
の種々の応用が可能である。
[Technical Field] The present invention relates to a digitally controlled arbitrary waveform generation circuit. [Prior Art] Many dedicated circuits that can generate only specific waveforms have been known in the past, but it is clear that it would be extremely convenient if any different output waveforms could be obtained with the same circuit configuration. For example, in video game machines and the like, since it is required to generate a special sound for each model, conventionally, a dedicated sound generation circuit is designed and added to each model. However, in such devices that are produced in a wide variety of small quantities, it is very uneconomical to design and add a waveform generation circuit according to a dedicated sound generation circuit for each model, and it is difficult to produce a variety of different sounds with the same circuit. In addition, it has been desired to be able to generate multiple sounds simultaneously, and it has been desired to provide an arbitrary waveform generation circuit for this purpose. On the other hand, a function generator is conventionally known as a waveform generating circuit with this kind of degree of freedom, but the waveform that can be extracted as its output is a sawtooth waveform obtained as a triangular wave, square wave, sine wave, or a combination thereof. waves, ramp waves, exponential waves, etc., and are limited to specific waveforms. Therefore, in order to generate arbitrary waveforms other than those in the function generator router, a separate dedicated circuit must be set and added each time. [Object of the Invention] An object of the present invention is to provide a waveform generation circuit that can generate a waveform of any frequency and shape by reading out a desired type of waveform at a desired cycle from waveform data stored in advance in a waveform memory. It is about providing. Another object is to use the arbitrary waveform generating circuit of the present invention as a suspicious sound generating circuit to obtain different desired suspicious sounds using the same circuit. Further, according to the present invention, waveforms necessary to obtain a video signal for forming a desired image can be generated. In the present invention, a plurality of different waveforms for creating suspicious sounds or images are provided, and these waveforms are stored in advance as data in a waveform memory as corresponding digital waveforms. As is well known, a general waveform has three elements: waveform (shape), repetition frequency (period), and amplitude, and if any one of these is different, it will be a different waveform. It appears as a difference in pressure, and in the case of images, it appears as a difference in image shape. Note that the frequency also includes the initial phase, which determines the coordinate position of the image, especially in the case of an image. Corresponding to the above three elements, each element is arbitrarily designated in the waveform generation circuit of the present invention, and the waveform is determined by the selection of the waveform data type stored in the waveform memory, and the waveform is determined by the selection of the waveform data type stored in the waveform memory. The frequency (period and initial phase) is determined by setting the readout frequency division ratio of the data. After the waveform and frequency are set digitally, the amplitude is set. [Structure of the Invention] A characteristic feature of the present invention is that the selection of waveform data and the setting of the readout frequency division ratio are processed separately. It has the advantage that any frequency can be set simply by inputting it, and that a large number of waveforms can be generated even though the amount of data stored in the waveform memory is limited. That is, according to the present invention, by changing the readout period (readout address interval) for each waveform data, the data is appropriately thinned out or appropriately multiplexed and read out. The repetition frequency can be set. Further, in the present invention, it is preferable that the reading frequency is set by digitally adding the input frequency data every fixed cycle, and specifying the address of the waveform data based on the addition result. Further, in order to determine the initial phase of the readout frequency described above, it is preferable to input initial phase data separately from the frequency data and read this initial phase data at the time of the first addition. [Embodiment] A specific example of the arbitrary waveform generation circuit of the present invention will be described below with reference to the accompanying drawings, with reference to FIGS. 1 to 4. According to the circuit of this specific example, three waveforms can be obtained. Therefore, three predetermined waveforms are apparently superimposed and output, and for example, for a suspicious sound generation circuit, three waveforms are output.
It is possible to simultaneously output different kinds of sounds, and it is also possible to draw images of different waveforms or colors on a display for a video generation circuit. However, since the present invention is based on processing only a single waveform, hereinafter, only one waveform processing will be mainly explained, and other explanations will often be omitted. In the first embodiment, a waveform selection and division ratio setting circuit that selects a desired waveform from a waveform memory and digitally sets its repetition frequency includes multiplexers 1 and 2, a data register 3, an accumulator 4, and an adder. 5 and a latch 6. In Figure 1, 1 is a multiplexer whose input terminal A is connected to the address bus AB of the central processing unit CPU, and 2 is a multiplexer whose input terminal A is the data bus of the CPU.
It is a multiplexer connected to the DB. The output terminal Y of multiplexer 1 is connected to both address input terminals A of data register 3 and accumulator 4, and the output terminal Y of multiplexer 2 is connected to data register 3 and to both address input terminals A of accumulator 4.
and both data input terminals D of the accumulator 4. That is, multiplexers 1 and 2 are CPU
When writing data to the data register 3 and accumulator 4, it serves to connect the address bus AB and data bus DB of the CPU to the address and data inputs of the data register 3 and accumulator 4. In this embodiment, the data register 3 stores two sets of data consisting of 16-bit frequency data D and 4-bit amplitude data A, as well as 20-bit frequency data, as shown in the upper part of FIG. D and 4
A total of three sets of bit amplitude data A are held, and three different waveforms are processed in a time-division manner. However, the frequency data D is divided into 4 digits each having 4 bits, and the 20-bit frequency data is divided into 5 digits each having 4 bits. Partial frequency data obtained by division is expressed in Dnm. In this case, the subscript n represents the group to which the partial frequency data belongs, and m represents the weight of the digit. Frequency data D specifies the frequency of the output signal finally obtained (addressing cycle of waveform memory 7), and amplitude data An (n represents the group to which the data belongs) specifies the amplitude of the output signal. It is. On the other hand, the accumulator 4 is a type of register, and is a device in which input values are sequentially added to an initial setting value (including zero), and this operation result is replaced with the original value.
As shown in the lower part of the figure, 16-bit augend data C is used to set the initial phase of the waveform as necessary.
and 4-bit waveform selection data W as a group, and a total of 3 sets of data including 20-bit initial phase setting augend data C and 4-bit waveform data W as a group. ing. Here, the data initially set in the accumulator 4 sets the initial phase of the waveform. The augend data C is similarly divided into 4 or 5 digits of 4 bits each, and is represented by partial augend data Cnm corresponding to one digit. This partial addend data Cnm and target waveform selection data
As described above, the subscript n added to Wn represents the group to which these data belong, and the subscript m represents the digit position. Of the three groups of data above, each one group (e.g.
D 10 to D 13 , A 1 , C 10 to C 13 ·W 1 ) handle data related to one waveform (frequency data, amplitude data, initial phase data, waveform selection data). The symbols above each block in the upper and lower rows of FIG. 2 represent the address of each data section in hexadecimal notation. This address is designated by a synchronization signal SS from the control signal generator 11, which will be described below. The control signal generator 11 generates a synchronization signal SS and a control signal CS as shown in FIG. sync signal
SS is 4H (750KHz), 8H (375KHz), 16H
4 consisting of (187.5KHz) and 32H (93.75KHz)
It is a bit binary signal. The control signal CS is
Multiplexer switching signal MPX, accumulator write signal
WRO, data register write signal WR 1 , first latch signal PCK, first latch clear signal CLR, and second latch signal TCK. However, WRO,
WR 1 is a signal synthesized within the control signal generator 11 after receiving the write control signal WRC from the CPU. As can be seen from FIGS. 2 and 3, the switching signal MPX applied to the control input terminal S of the multiplexer 1 is at logic "1" in the latter half of each address section of the synchronizing signal SS. Therefore, the multiplexer 1 is switched to the input terminal B side each time. Therefore, the synchronization signal SS applied to the same input terminal is inputted to the data register 3 and the accumulator 4 through the multiplexer 1 to designate an address. Therefore, data from the designated addresses "0" to "F" are sequentially output from the data register 3 and the accumulator 4. The adder 5 adds the frequency data D output from the data register 3 and the augend (initial phase) data C output from the accumulator 4 in a bit parallel digit series format. In other words, for addresses “0” to “F” of the synchronization signal SS, partial data of the same digits
Addition result of Dnm and Cnm, i.e. sum (4 bits)
and carry data (1 bit) are output. However, this carry may or may not occur depending on the actual values of data Dnm and Cnm. The sum and carry data from the adder 5 are each sent to and latched into the latch 6.
This latch signal PCK is generated in about the first half of the logic "1" interval of the multiplexer switching signal MPX and inputted to the latch 6. The sum latched in latch 6 is passed from the output terminal of latch 6 through line 12 to input terminal B of multiplexer 2, through which it is input to accumulator 4. In this case, since the accumulator write signal WR is a pulse generated in the latter half of the logic "1" interval of the multiplexer switching signal MPX, the sum data from latch 6 is the pulse that is generated in the sum. is written to the address location of the augend data. For example data D 10 and
The sum of C10 is written to the address of data C10 . On the other hand, when a carry occurs in the addition result, the carry data is sent from the output terminal of latch 6 through line 13 to input terminal C of adder 5. Therefore,
For example, if a carry occurs when adding data D 10 and C 10 , as a result, the next data D 11 and C 11
The addition with is performed by taking this digit data into consideration. In the present invention, the accumulator 4, adder 5 and latch 6 form adding means. Reference numeral 7 denotes a waveform memory in which a plurality of waveform data are stored, and the address input terminal of the lower 5 bits of this waveform memory 7 is connected to the latch 6 so that the upper 5 bits of the augend data C are input as frequency division ratio data. connected to the output terminal. The remaining upper three bit address input terminals are connected to the output terminal of the accumulator 4 so that the waveform selection data Wn is input. A latch 8 is connected to the 4-bit output terminal of the waveform memory 7, and a latch 9 forming an amplitude setting circuit is connected to the output terminal of the data register 3. Both latches 8 and 9 are latched by the second latch signal TCK. As can be seen from FIG. 3, this second latch signal TCK is generated in the interval (t=4, 9, F) in which the synchronizing signal SS specifies the addresses of the amplitude data An and the waveform selection data Wn. At this point, the accumulator 4 outputs waveform selection data Wn, and the data register 3 outputs amplitude data An. Therefore, the data latched in latch 8 is waveform selection data.
The upper address is specified by Wn, and the addition result latched in latch 6 is the data from waveform memory 7 whose lower register is specified as frequency division ratio data.Also, what is latched in latch 9 is amplitude data An. It is. Reference numeral 10 denotes a D/A converter that converts the digital signal from latch 8 into a corresponding analog voltage signal, and the gain of this converter is changed by amplitude data from latch 9 (amplitude setting circuit). A desired output waveform from this D/A converter 10 can be obtained. FIG. 4 is an example of the circuit indicated by the solid line in FIG. 1, and the same components are given the same reference numerals as in FIG. 1. Multiplexers 1 and 2 are Texas Instruments ICs SN74LS157 and SN74LS158.
The data register 3 and accumulator 4 are
ICSN7489, adder 5 is ICSN74LS283 of the same company
However, latch 6 uses the company's SN74LS174, and latches 8 and 9 use the company's ICSN74LS273, and the waveform memory 7 and control signal generator 11
The partial component 11' is manufactured by Intersil Corporation.
ICIM5623A is used. An example of the operation of the arbitrary waveform generating circuit of the present invention will be explained with reference to FIGS. 1 to 4. For convenience of explanation, let's consider a case where an arbitrary question sound is generated. As is well known, the type of sound is determined by the three elements of the signal applied to a speaker or the like: its frequency, amplitude, and waveform. Therefore, in order to obtain any desired sound, it is necessary to be able to freely and accurately set these three elements. Referring again to FIGS. 2 and 3, when the synchronization signal address t=0, the frequency data D 10 is sent from the data register 3 and the initial phase data C 10 is sent from the accumulator 4.
are output, adder 5 adds them, latch 6 latches the sum and carry output, and this sum is written to the original address of C10 . When the address is t=1, D 11 and C 11 are output in the same way, and latch 6 latches the sum and carry output, and the sum is returned to the original.
Written to address C 11 . address is t=2
When t=3, the same processing is performed for D 12 and C 12 , and when the address is t=3, the same processing is performed for D 13 and C 13 . During this period, if a carry output is generated in the adder 5, the carry data is added to the adder 5. This means that the timing when a logic "1" output actually appears in the upper 5 bits (dividing ratio data) of the augend data C, that is, the 4 bits of C13 and the 1 bit of C12 , is different from the time when the output of logic "1" actually appears on the frequency data D and the augend data. The larger the actual value of the addition (initial phase) data C is,
It means to arrive early. Next, when the address is t=4, the data register 3 outputs the amplitude data A 1 and the accumulator 4 outputs the waveform selection data W 1 . The latter waveform selection data W 1 and the sum latched by the latch 6 at t=3 are separately stored in the upper 3 bits address (waveform selection data) and lower 5 bits address (frequency division ratio data) of the waveform memory 7, respectively. Added. Therefore, waveform data corresponding to these addresses are read from the waveform memory 7. The read waveform data and the amplitude data A1 are simultaneously latched into latches 8 and 9, respectively, by the latch signal TCK. The above operation is performed sequentially for three data groups of n=1, 2, and 3, and three different types of waveform processing are performed in a time-sharing manner. Here, one process performed on each data group is defined as one cycle.
Addend data C and frequency data D are each 4
Since the bit partial data is serialized for 4 digits, the total 16-bit data is also the augend data C.
16-bit frequency data D is added only once per cycle. Table 2 shows the state of the augend data C, that is, the frequency division ratio data, accumulated for each cycle for one type of waveform, and an example of the waveform data output from the waveform memory 7. Sn(n=0,
1, 2, 3, 4...) represents the number of cycles, and WD-O in the waveform data column indicates the output waveform data based on Table 1 when the waveform selection data W 1 = 0.
7 shows output waveform data based on Table 1 in the case of waveform selection data W 1 =7. Table 1 shows an example of the contents of the waveform memory 7. Frequency data D in the initial state is D=0800H
Let us assume that the augend data C is C=0000H. The H at the end represents hexadecimal. In cycle S 0 , the waveform selection data is OH, so the upper 3 bits of the waveform memory address are 000.
Since C=0000H, the upper 5 bits of the waveform memory address output from latch 6 are
00000, therefore, the waveform memory is designated with an address of 00000000, that is, 00H, and waveform data "7" is read from the waveform memory. Similarly, in cycle S 1 , W=0H, C=
Since it is 0800H, the upper 3 bits and lower 5 bits of the waveform memory address are 000 and 00001, respectively, which is 01H.
Waveform data "9" is read out. In this way, since the frequency data D is added to the augend data C every cycle, the content of the augend data C changes as shown in Table 2 every time one cycle is completed. The waveform memory 7 stores seven different types of waveform data from "0" to "7" as shown in Table 1, so if the waveform selection data W 1 is 0, the waveform data shown in Table 1 is Two stages of data are taken out, and they change as shown in the WD-0 column of Table 2 at the end of each cycle. In Figure 5, the horizontal axis represents the number of cycles Sn, and the vertical axis represents the analog quantity corresponding to the waveform data.
This represents the output waveform obtained from this waveform data. It can be seen from this that a sine waveform is obtained when W 1 =0. On the other hand, if the waveform selection data W1 is 7, the waveform data changes as shown in the column WD-7 of Table 2. This situation can be seen in the fifth
When expressed in the same manner as shown in the figure, it can be seen that a sawtooth wave as shown in FIG. 6 is obtained. In this way, depending on the value of the waveform selection data W1 , it is possible to select the waveform data in the waveform memory 7 and, therefore, to select the output waveform. Therefore, by simply storing appropriate waveform data in the waveform memory 7, any waveform can be output. Next, let's consider frequency, one of the three elements of sound. Looking at the value of the augend data C in Table 2, the value of C at the initial state S0 is equal to the value of C at the time of S20 . This means that the value of C becomes the same as the initial state after 20 cycles from S0 , and the address of waveform memory 7 returns to the initial state.
One wavelength will be output during 20 cycles.
Therefore, the section corresponding to this one wavelength is defined as "one period". In this embodiment, the value of the augend data C is
The period during which the value increases by 10000H is one cycle. However, the number of cycles required to obtain one cycle of the waveform varies depending on the value of the frequency data D. That is, if the waveform data read addressing period is short, a large number of cycles are required to obtain one period of the waveform, and if it is long, one period of the waveform can be obtained with a small number of cycles. If the number of cycles occurring during one period is N s and the value of frequency data is D', then N s = 10000H/D' (4-digit example) N s = 100000H/D' (5-digit example) If the time taken for one cycle is ts, and the time taken for one period is Ts, then Ts=Ns・ts One wavelength is output per period, so if the frequency of the output waveform is F 0 , then F 0 = 1/Ts=1/ Ns・ts=D′/ts・1000
0H (1) Here, since ts is a constant determined by the synchronization signal SS, the frequency F 0 is determined by the value D' of the frequency data. This shows that the frequency of the output waveform can be arbitrarily set depending on the value of the frequency data D. In Table 2, the waveform data changes every cycle, so Table 2 is an example of the case where the above-mentioned output frequency is the highest. However, if at the end of one cycle, the content of the augend data C is small and therefore the content of the upper five bits of the augend data C does not change, the waveform data output from the waveform memory 7 also does not change. Therefore, until the content of the upper five bits of the augend data C changes, a number of cycles pass (multiple reading is performed), and the output frequency becomes lower accordingly. By the way, if the time ts required for one cycle is similarly expressed as a frequency and is denoted by F T , the above equation (1) becomes as follows. F 0 =F T・D'/10000H (2) Therefore, if we look at D'/10000H as the division ratio of F T and F 0 , this circuit has a variable division ratio for dividing F T. It can be seen that it functions as a peripheral device. As is clear from the above description, in this embodiment, in order to generate three different waveforms, calculation processing is performed sequentially on three data groups during one cycle, and the cycle The first group is set at addresses t=0 to 4 of the signal SS, and the second group is set to addresses t=5 to 9.
The processing of the first group and the third group at t=A to F is performed by sequentially operating the same circuit. Therefore, the output waveforms are analog outputs based on the address waveform data corresponding to the calculation processing of the first, second, and third groups, respectively. Therefore, for example, the sine waveform 21 in FIG.
Assuming that a waveform 22, which is the same sine waveform as shown in the figure but has a frequency of 1/2, is obtained, and a sawtooth waveform 23 shown in Fig. 6 is obtained by processing in the third group, the output waveform obtained as a whole is as shown in Fig. 7. As shown, it is a composite of these. In this case, as shown in FIG. 7, when switching from one group to another, a switching signal component appears on the waveform. However, the time ts required for one cycle is 10.67 μs as shown in FIG. 3, and the frequency Fs of the switching signal is much higher than the highest human audible frequency. Therefore, when listening to the waveform in Fig. 7 as sound, the switching signal component is not audible, and it is heard as the average value of the waveform, that is, the same as the analog summation of the output waveforms based on the processing of each group, for example. It becomes possible to overlay game play sound on background sound in video games, etc. The manner in which the frequency, shape, and amplitude of the output waveform are set in the embodiments shown in FIGS. 1 and 4 has been described above. However, the present invention is not limited thereto, and various changes and modifications can be made within the spirit of the present invention. For example, the data configuration shown in FIG. 2 is an example, and by changing the timing of generation of the control signal CS from the control signal generation circuit 11, the number of bits of each data D, C, A, and W can be changed arbitrarily. be able to. Also, the reason why one digit was made into 4 bits was simply due to the relationship with the IC used. That is, the data configuration can be arbitrarily changed according to the required accuracy and resolution in each set value of frequency, waveform shape, and amplitude. For example, increasing the number of bits of data D and C increases the frequency resolution, and increasing the number of bits of data A increases the amplitude resolution.
In addition, the waveform memory 7
By increasing the number of data bits added to the address and the number of bits of the output of the waveform memory 7, the accuracy of waveform approximation increases. Since one sound can be produced by one data group, the number of sounds to be produced at the same time also changes depending on the number of data groups. It is sufficient to prepare as many data groups as the number of sounds required. The arbitrary waveform generation circuit of the present invention can generate arbitrary waveforms with different frequencies, waveform shapes, and amplitudes using the same circuit when only one data group is provided, and therefore can generate various different sounds. Alternatively, as already mentioned, it can be used as a frequency divider. Furthermore, when a plurality of data groups are provided, a plurality of the waveforms, etc. can be combined using the same circuit, and therefore more complex sounds can be output simultaneously. For example, while generating the driving sound of a moving object displayed on the screen of a video game machine, it is easily possible to generate score sounds as needed. Moreover, regardless of whether the data group is configured as one set or multiple sets, the following can be said in common:
Even if different sounds or multiple sounds can be produced simultaneously, there is no increase in the number of parts, and the circuit is suitable for mass production or IC implementation. The portion of the frequency dividing device with variable frequency division ratio in the above embodiment can also be realized by a circuit as shown in FIG. 8 or 9. FIG. 8 shows a circuit using a rate multiplier as a frequency divider. In FIG. 8, latch 30 holds rate input data D R of rate multiplier 31. In FIG. Latch 32 holds waveform selection data and supplies the upper address of waveform memory 33. Latch 34 holds amplitude data. The waveform memory 33 stores waveform data. Counter 35 counts the output signal of the rate multiplier and supplies the lower address of waveform memory 33. D/A converter 36 converts the digital signal into an analog signal. Now, set the number of bits of rate multiplier 31 to 11.
bit, latch 30 and data D R bit number to 11
The number of bits of the counter CT is 5 bits, the frequency of the clock signal of the rate multiplier is F T , the frequency of the output signal of the rate multiplier 31 is F R , and the frequency of the analog output signal is F 0
Then, since the rate multiplier 31 is 11 bits, F R =FT・D R /800H Since the counter 35 is 5 bits, F 0 =1/20H・F R Therefore, F 0 =F T・D R /10000H...(3) From equation (3), we find the frequency division ratio F R1.F R1 = D R /10000H...(4) It works as a frequency divider, and any frequency can be set. I understand. FIG. 9 is an example of a circuit using a programmable divider. In this circuit, the rate multiplier 31 shown in FIG.
Similarly, F R and F 0 are F R =F T ·1/800H−D R F 0 =1/20H· FR . Therefore, F 0 =F T · 1/20H · 1/00H - D R ... (5) Calculating the frequency division ratio F R2 from this formula (5), F R2 = 1/20H · 1/800H - D R ... (6) works as a frequency divider. This has a different form from Equation (4), but if we compare the range of values of the frequency division ratio, we get the following. Since the data D R of latch 30 is 11 bits,
OH≦D R ≦7FFH, then from equation (4), 1/10000H≦F R1 ≦1/20H From equation (6), 1/10000H≦F R2 ≦1/20H, and the range of the dividing ratio value is It's becoming the same.
That is, it is possible to set frequencies in the same range in the circuit shown in FIG. 9 as in the circuit shown in FIG. As described above, the frequency dividing device with variable frequency division ratio can also be formed by a rate multiplier or a programmable divider. In the above embodiments, a circuit configuration that can also perform amplitude control was illustrated, but in reality, as a waveform generation circuit, it is almost sufficient to control the frequency and waveform shape, so amplitude control is not necessarily necessary. . Some of the uses of the above-mentioned circuits of the present invention have already been mentioned, but in addition to sound effect generation circuits,
As a signal generator or a function generator, by incorporating a voice waveform or a similar waveform into the waveform data, it can be used as a pseudo-voice generation circuit, and by incorporating it into the voice waveform or its similar waveform data, By adding a plurality of waveforms to the X and Y axes, the present invention can be applied to various applications such as a circuit for generating pseudo-voices, and a circuit for generating graphics for an X-Y two- dimensional display.

【表】【table】

【表】【table】

【表】【table】

【表】【table】 【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の任意波形発生回路の一実施例
を示すブロツク図、第2図はそのデータレジスタ
及び累算器のデータの構成例を示す図、第3図は
同期信号及び制御信号を例示した図、第4図は、
第1図の実施例の具体的回路を示す図、第5図及
び第6図は得られる出力波をそれぞれ例示した
図、第7図は本実施例で得られる3種類波形の合
成を示した図、第8図及び第9図は第1図の分周
比可変の分周装置部分の変形例をそれぞれ示す図
である。 1,2…マルチプレクサ、3…データレジス
タ、4…累算器、5…加算器、6…ラツチ、7…
波形メモリ、8,9…ラツチ、10…D/Aコン
バータ、11…制御信号発生装置、D…周波数デ
ータ、C…被加算データ、A…振幅データ、W…
波形選択データ。
FIG. 1 is a block diagram showing an embodiment of the arbitrary waveform generating circuit of the present invention, FIG. 2 is a diagram showing an example of the data structure of the data register and accumulator, and FIG. The illustrated diagram, Figure 4, is
FIG. 1 is a diagram showing a specific circuit of the embodiment, FIGS. 5 and 6 are diagrams illustrating the output waves obtained, and FIG. 7 is a diagram showing the synthesis of three types of waveforms obtained in this embodiment. 8 and 9 are diagrams respectively showing modifications of the frequency dividing device portion of FIG. 1 with a variable frequency division ratio. 1, 2...Multiplexer, 3...Data register, 4...Accumulator, 5...Adder, 6...Latch, 7...
Waveform memory, 8, 9...Latch, 10...D/A converter, 11...Control signal generator, D...Frequency data, C...Augend data, A...Amplitude data, W...
Waveform selection data.

Claims (1)

【特許請求の範囲】 1 複数種の異なる波形データを記憶保持する波
形メモリと、該波形メモリの波形データを選択す
る波形選択データと各選択された波形データの読
出周波数を設定する分周比データとを別個に波形
メモリに供給する波形選択及び分周比設定回路
と、波形メモリの出力をアナログ信号に変換する
回路と、各部を制御する制御信号発生回路と、を
含み、前記分周比データは入力された周波数デー
タ及び初期位相データの両者に基づいて波形メモ
リの選択された波形データ内での読出アドレス指
定周期を定めることを特徴とする任意波形発生回
路。 2 特許請求の範囲1記載の回路において、波形
選択及び分周比設定回路はレートマルチプライヤ
を含むことを特徴とする任意波形発生回路。 3 特許請求の範囲1記載の回路において、波形
選択及び分周比設定回路はプログラマブルデバイ
ダを含むことを特徴とする任意波形発生回路。 4 特許請求の範囲1、2、3のいずれかに記載
の回路において、アナログ変換時に所望の振幅設
定を行う振幅設定回路を含むことを特徴とする任
意波形発生回路。
[Claims] 1. A waveform memory that stores and holds a plurality of different types of waveform data, waveform selection data that selects waveform data in the waveform memory, and frequency division ratio data that sets the read frequency of each selected waveform data. a waveform selection and frequency division ratio setting circuit that separately supplies the frequency division ratio data to the waveform memory, a circuit that converts the output of the waveform memory into an analog signal, and a control signal generation circuit that controls each part. An arbitrary waveform generation circuit that determines a read addressing cycle within selected waveform data of a waveform memory based on both input frequency data and initial phase data. 2. The arbitrary waveform generation circuit according to claim 1, wherein the waveform selection and frequency division ratio setting circuit includes a rate multiplier. 3. The arbitrary waveform generation circuit according to claim 1, wherein the waveform selection and frequency division ratio setting circuit includes a programmable divider. 4. An arbitrary waveform generation circuit according to any one of claims 1, 2, and 3, characterized in that it includes an amplitude setting circuit that sets a desired amplitude during analog conversion.
JP59054072A 1984-03-19 1984-03-19 Generating circuit of optional waveform Granted JPS6089226A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59054072A JPS6089226A (en) 1984-03-19 1984-03-19 Generating circuit of optional waveform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59054072A JPS6089226A (en) 1984-03-19 1984-03-19 Generating circuit of optional waveform

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP55103233A Division JPS6014368B2 (en) 1980-07-28 1980-07-28 Arbitrary waveform generation circuit

Publications (2)

Publication Number Publication Date
JPS6089226A JPS6089226A (en) 1985-05-20
JPS6253849B2 true JPS6253849B2 (en) 1987-11-12

Family

ID=12960411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59054072A Granted JPS6089226A (en) 1984-03-19 1984-03-19 Generating circuit of optional waveform

Country Status (1)

Country Link
JP (1) JPS6089226A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63163071U (en) * 1987-04-13 1988-10-25
US4956798A (en) * 1989-08-03 1990-09-11 Tektronix, Inc. Arbitrary waveform generator with adjustable spacing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5387717A (en) * 1977-01-13 1978-08-02 Nippon Gakki Seizo Kk Electronic musical instrument
JPS5466824A (en) * 1977-11-08 1979-05-29 Nippon Gakki Seizo Kk Electronic musical instruments
JPS5543580A (en) * 1978-09-22 1980-03-27 Matsushita Electric Ind Co Ltd Digital waveform regenerator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5387717A (en) * 1977-01-13 1978-08-02 Nippon Gakki Seizo Kk Electronic musical instrument
JPS5466824A (en) * 1977-11-08 1979-05-29 Nippon Gakki Seizo Kk Electronic musical instruments
JPS5543580A (en) * 1978-09-22 1980-03-27 Matsushita Electric Ind Co Ltd Digital waveform regenerator

Also Published As

Publication number Publication date
JPS6089226A (en) 1985-05-20

Similar Documents

Publication Publication Date Title
JPS5852231B2 (en) character display
GB2093319A (en) Character and graphic display device
JPH068993B2 (en) Video display
JPS5851307B2 (en) Hakei Hatsei Souchi
JPS6253849B2 (en)
JPS6014368B2 (en) Arbitrary waveform generation circuit
JPH0229691A (en) Liquid crystal display device
JPS6015688A (en) Memory chip address unit
JPS6154236B2 (en)
JPS58182691A (en) Crt display unit
JPS5820438B2 (en) display device
JPS59101089A (en) Memory circuit
JP2924965B2 (en) Electronic musical instrument
JPH074009Y2 (en) Ultrasonic diagnostic equipment
JPS60117286A (en) Video display controller
JPS60209785A (en) Screen shifter for display unit
JPS6030037B2 (en) Memory addressing method
SU1462407A1 (en) Device for shaping the address of video memory of dot graphic display
JPS61105587A (en) Crt controller
JPH0954702A (en) Dram address generation circuit for cd-rom
JPS6365153B2 (en)
JPS6015953B2 (en) Split screen display circuit in display device
JPS59100492A (en) Character pattern generator
JPH06208504A (en) Memory controller, memory reading method, and memory writing method
JPH0533589B2 (en)