JP2004234523A - Data arithmetic circuit - Google Patents
Data arithmetic circuit Download PDFInfo
- Publication number
- JP2004234523A JP2004234523A JP2003024646A JP2003024646A JP2004234523A JP 2004234523 A JP2004234523 A JP 2004234523A JP 2003024646 A JP2003024646 A JP 2003024646A JP 2003024646 A JP2003024646 A JP 2003024646A JP 2004234523 A JP2004234523 A JP 2004234523A
- Authority
- JP
- Japan
- Prior art keywords
- data
- correction
- input
- circuit
- selection circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明はデータ演算回路に関する。
【0002】
【従来の技術】
通常、デープレコーダ、CD(Compact Disc)プレイヤ、DVD(Digital Video Disk)プレイヤまたはVTR(Video Tape Recorder)は、記憶媒体に記憶されたデータの時間演算を行う機能を有する。例えば、CDプレイヤにおいては、再生している1曲の残り時間の計算、ある曲にアクセスする時間の計算、DRAMに格納したデータと現在読み出してしるデータとの時間差の計算等の時間演算が行われる。これらの時間演算は、従来、プログラムをCPUに処理させることによって行われていた。即ち、データの時間演算はソフトウェアで実現されていた。
【0003】
【発明が解決しようとする課題】
上述の時間演算をソフトウェアで処理した場合には、10MHzのCPUにおいて約250μs(マイクロ秒)の時間が掛かっていた。
【0004】
近年、CD−MP3等のようにデータの圧縮技術が発達してきており、CPUは情報量の多い圧縮情報を処理しなければならない。従って、データの時間演算のためにCPUを用いる時間は短いほうが良い。
【0005】
そこで、本発明の目的は、データ演算処理にCPUが用いられる時間を短縮するデータ演算回路を提供することである。
【0006】
【課題を解決するための手段】
本発明に従った実施の形態によるデータ演算回路は、
n桁の第1の入力データを入力する第1の入力部と、
n桁の第2の入力データを入力する第2の入力部と、
任意に設定された第1の補正データおよび第2の補正データを格納する補正レジスタと、
前記第1の入力データおよび前記第2の入力データを加算して得られた演算データがn桁から桁上りする場合には、該演算データに前記第2の補正データを加算した数値の下n桁を結果データとして出力し、前記演算データがn桁から桁上りせず尚且つ前記演算データから前記第1の補正データを減算したときに桁借りが生じない場合には、前記演算データから前記第1の補正データを減算した数値を結果データとして出力し、前記演算データがn桁から桁上りせず尚且つ前記演算データから前記第1の補正データを減算したときに桁借りが生じる場合には、前記演算データを結果データとして出力する演算回路とを備える。
【0007】
本発明に従った実施の形態によるデータ演算回路は、
n桁の第1の数値データおよびn桁の第2の数値データを加算または減算して演算データを出力する加減算器と、
第1の入力データおよび第2の入力データを入力する入力部と、
任意に設定された第1の補正データおよび第2の補正データを格納する補正レジスタと、
前記演算データまたは前記第1の入力データのいずれかを選択して前記第1の数値データとして出力する第1の選択回路と、
前記演算データがn桁よりも桁上がりしているか否かに基づいて前記第1の補正データまたは前記第2の補正データのいずれかの補正データを選択する第2の選択回路と、
前記第2の選択回路において選択された補正データまたは前記第2の入力データのいずれかを選択して前記第2の数値データとして出力する第3の選択回路と、
前記演算データが桁借りを要するか否かに基づいて、前記演算データまたは前記第1の数値データのいずれかを選択し、該データを結果データとして出力する第4の選択回路と、
前記第1の選択回路、前記第3の選択回路および前記加減回路を制御する制御回路とを備える。
【0008】
【発明の実施の形態】
以下、図面を参照し、本発明による実施の形態を説明する。実施の形態は本発明を限定するものではない。本発明の実施の形態に従った演算回路は、従来、ソフトウェアで行っていた数値演算を、ハードウェアを用いたデジタル論理演算によって実行する。
【0009】
図1は、本発明に係る実施の形態に従ったデータ演算回路100aから100cを備えた時間演算回路1のブロック図である。時間演算回路1は、例えば、CDプレーヤに配備され、CDの再生時間等の演算を行う。通常、CDプレーヤは、CDの再生時間等を表示するパネル(図示せず)を備えている。時間演算回路1はそのパネルに秒および分を表示させることができる。
【0010】
時間演算回路1は、フレーム演算用のデータ演算回路100a、秒演算用のデータ演算回路100b、分演算用のデータ演算回路100cおよびこれらのデータ演算回路100aから100cを制御する制御回路101を備えている。秒演算用のデータ演算回路100bは、パネルに秒単位の数値を表示する。分演算用のデータ演算回路100cは、パネルに分単位の数値を表示する。尚、フレームは、通常、パネルには表示されない。
【0011】
CDは、一定のデータ量を含む“フレーム”に分割されている。データ演算回路100aはこのフレームを演算する。通常、75フレームが1秒に該当し、60秒が1分に該当する。
【0012】
従って、データ演算回路100aは、74フレームを超えると桁上げ(以下、キャリー(carry)ともいう)CY1を発生し、フレーム数を0フレームに戻す。このキャリーCY1に応じてデータ演算回路100bはパネルの秒の表示に1秒を加える。データ演算回路100bは59秒を超えるとキャリーCY2を発生し、秒の表示を0秒に戻す。このキャリーCY2に応じてデータ演算回路100cはパネルの分の表示に1分を加える。
【0013】
一方、データ演算回路100aが0フレームより小さくなる場合には、データ演算回路100aは桁借り(以下、ボロー(borrow)ともいう)BR1を発生し、フレーム数を74フレームにする。このボローBR1に応じてデータ演算回路100bは秒の表示から1秒を差し引く。データ演算回路100bが0秒より小さくなる場合には、データ演算回路100bはボローBR2を発生し、秒の表示を59秒にする。このボローBR2に応じてデータ演算回路100cは分の表示から1分を差し引く。
【0014】
このように、時間演算回路1は、“フレーム”および“秒”が最大値を超えるときに桁上げをし、並びに、“フレーム”および“秒”が0より小さくなるときに桁借りをすることによって時間演算を行う。
【0015】
図2は、データ演算回路100a、100bおよび100cのいずれかに含まれるデータ演算回路のブロック図である。以下、データ演算回路100が秒演算用のデータ演算回路100bに含まれるデータ演算回路であるとして説明する。
【0016】
データ演算回路100は、第1の入力部10、第2の入力部20、補正レジスタ30、第1の選択回路S1、第2の選択回路S2、第3の選択回路S3、第4の選択回路S4、加減算器80および制御回路90を備えている。
【0017】
選択回路S1と加減算器80との間には、レジスタR1が接続されている。レジスタR1は選択回路S1からのデータを一時的に格納する。選択回路S3と加減算器80との間には、レジスタR2が接続されている。レジスタR2は選択回路S3からのデータを一時的に格納する。選択回路S4と加減算器80との間には、レジスタR3が接続されている。レジスタR3は、加減算器80からのデータを一時的に格納する。
【0018】
加減算器80は、レジスタR1およびレジスタR2からデータを受信し、これらのデータを和算または減算して演算データを生成する。加減算器80は、この演算データの数値の下2桁をレジスタR3へ送信する。また、加減算器80は、選択回路S2および選択回路S4に接続されている。これにより、加減算器80は、演算データが桁上りする場合には選択回路S2にキャリーCY3を発し、演算データが桁借りを要する場合には選択回路S4にボローBR1を発する。尚、キャリーCY3は、データ演算回路100内において用いられるものであり、キャリーCY2とは異なる。例えば、キャリーCY2は、演算データが60秒を超えた場合に発生し、図1に示す分演算用のデータ演算回路100cにおいて分単位の桁上りのために用いられる。キャリーCY3は、演算データが100秒を超えた場合に発生し、選択回路S2に用いられる。加減算器80は、例えば、10進加減算器である。
【0019】
選択回路S1は、入力部10およびレジスタR3に接続されている。選択回路S1は、入力部10またはレジスタR3のいずれかのデータを選択してレジスタR1へ送信する。
【0020】
選択回路S2は、補正データレジスタ30に接続されている。選択回路S2は、キャリーCY3に基づいて補正データレジスタ30に格納された第1の補正データまたは第2の補正データのいずれかを選択して選択回路S3へ送信する。例えば、選択回路S2は、キャリーCY3が発生していない場合には第1の補正データを選択し、キャリーCY3が発生している場合には第2の補正データを選択する。
【0021】
選択回路S3は、入力部20および選択回路S2に接続され、入力部20または選択回路S2のいずれかからのデータを選択してレジスタR2へ送信する。
【0022】
選択回路S4は、レジスタR1およびレジスタR3に接続されている。選択回路S4は、ボローBR1に基づいてレジスタR1またはレジスタR3のいずれかからのデータを選択し、これを結果データとして出力する。例えば、選択回路S4は、ボローBR1が発生していない場合にはレジスタR3を選択し、ボローBR1が発生している場合にはレジスタR1を選択する。選択回路S4から出力された結果データがCDプレーヤのパネル等に表示される。
【0023】
補正データレジスタ30は、第1の補正データおよび第2の補正データを格納する。第1の補正データおよび第2の補正データは、分単位への桁上げが行われる際に、秒単位の数値を補正するために用いられる。第1の補正データおよび第2の補正データは、データ演算回路100を製造した後に設定することができる。補正データレジスタ30には、例えば、RAM等のメモリが用いられる。
【0024】
制御回路90は、選択回路S1、S3および加減算器80に接続されており、これらを制御する。
【0025】
図3は、データ演算回路100の動作を示すフロー図である。図2および図3を参照し、データ演算回路100の動作を具体例により説明する。尚、本実施の形態では、第1の補正データは60秒に設定され、第2の補正データは40秒に設定されている。キャリーCY2は、演算データが60秒を超えるときに発生する。キャリーCY3は、演算データが100秒を超えるときに発生する。
【0026】
(第1の具体例)
まず、入力部10および入力部20にそれぞれ第1の入力データXおよび第2の入力データYが入力される(S10)。例えば、第1の入力データXは、CDに記録された第1曲目を再生するために必要な時間(以下、再生時間という)の秒単位の数値である。第2の入力データYは、第2曲目の再生時間の秒単位の数値である。
【0027】
本具体例において、第1曲目の再生時間が3分13秒であり、第2曲目の再生時間が3分23秒であると仮定する。この場合には、第1の入力データXは13秒であり、第2の入力データYは23秒である。
【0028】
制御回路90は、最初に、選択回路S1が第1の入力データXを選択し、かつ、選択回路S3が第2の入力データYを選択するように、選択回路S1および選択回路S3を制御する(S20)。これにより、第1の入力データXはレジスタR1に格納される。第2の入力データYはレジスタR2へ格納される。
【0029】
加減算器80がレジスタR1およびR2から第1の入力データXおよび第2の入力データYを受信し、これらの和X+Yを第1の演算データとして算出する(S30)。本具体例では、第1の入力データXが13秒であり、第2の入力データYが23秒であるので、第1の演算データは、36秒(X+Y=36)となる。
【0030】
次に、加減算器80は、第1の演算データが100秒よりも大きいか否かを判定する。第1の演算データが100秒よりも小さい場合には、キャリーCY3は発生しない。一方で、第1の演算データが100秒よりも大きい場合に、キャリーCY3は発生する(S35)。本具体例では、第1の演算データが36秒であるので、キャリーCY3は発生しない。さらに、加減算器80は、第1の演算データが60秒よりも大きいか否かを判定する。第1の演算データが60秒よりも小さい場合には、キャリーCY2は発生しない。一方で、第1の演算データが60秒よりも大きい場合に、キャリーCY2は発生する(S35)。本具体例では、第1の演算データが36秒であるので、キャリーCY2は発生しない。
【0031】
次に、第1の演算データはレジスタR3に格納される。レジスタR3に格納された第1の演算データは、選択回路S1へフィードバックされる。尚、この時点でボローBR1が発生していないので、選択回路S4はレジスタR3内の第1の演算データを選択している。しかし、データ演算回路100は、この時点では結果データをパネルへ表示させない。
【0032】
次に、制御回路90は、選択回路S1がレジスタR3に格納された第1の演算データを選択し、かつ、選択回路S3が選択回路S2を選択するように、選択回路1および選択回路3を制御する(S40)。これにより、レジスタR1には第1の演算データが格納される。キャリーCY3が発生していないので、選択回路S2は、第1の補正データを選択する。よって、レジスタR2には、選択回路S2および選択回路S3を介して、第1の補正データが格納される。この具体例では、第1の演算データが36秒であり、第1の補正データが60秒であるので、レジスタR1には36秒が格納され、レジスタR2には60秒が格納される。
【0033】
次に、加減算器80がレジスタR1およびR2から第1の演算データおよび第1の補正データを受信し、第1の演算データから第1の補正データを減算する(S50)。この具体例では、第1の演算データが36秒であり、第1の補正データが60秒であるので、この減算の結果は、36−60=−24となる。即ち、第2の演算データは、0秒よりも小さくなるので、ボローBR1が発生する。従って、選択回路S4は、レジスタR1を選択し、第1の演算データを結果データとして出力する(S90)。この具体例では、選択回路S4は、結果データとして36秒を出力する。この結果データがパネルに表示される。このように、データ演算回路100は、第1曲目の再生時間3分13秒および第2曲目の再生時間3分23秒の合計時間6分36秒のうち、秒単位の“36 秒”をパネルに表示する。
【0034】
(第2の具体例)
第2の具体例では、第1曲目の再生時間が3分47秒であり、第2曲目の再生時間が3分38秒であると仮定する。この場合、第1の入力データXが47秒であり、第2の入力データYが38秒である。
【0035】
第1の具体例と同様にステップS10からステップS30を実行する。その結果、第1の演算データ(X+Y)は85秒となる。第1の演算データは100秒よりも小さいので、ステップS35において、キャリーCY3は発生しない。一方で、第1の演算データは60秒よりも大きいので、キャリーCY2は発生する。キャリーCY2の発生により、分演算用のデータ演算回路100cにおいて分単位の桁上りが生じる。
【0036】
キャリーCY3が発生していないので、第1の具体例と同様に、ステップS40において、第1の演算データとして85秒がレジスタR1に格納される。第1の補正データ(60秒)がレジスタR2に格納される。
【0037】
次に、ステップS50において、第1の演算データから第1の補正データを減算し、第2の演算データを生成する。この具体例では、第2の演算データは、85秒−60秒=25秒になる。即ち、第2の演算データは0秒よりも大きいので、ステップS55において、ボローBR1は発生しない。
【0038】
従って、選択回路S4は、レジスタR3を選択し、第2の演算データを結果データとして出力する(S60)。即ち、選択回路S4は、結果データとして25秒を出力する。この結果データがパネルに表示される。このように、データ演算回路100は、分単位への桁上げを考慮して、秒単位を表示することができる。この具体例では、分単位への桁上げが行われているので、第1曲目の再生時間の分単位(3分)と第2曲目の再生時間の分単位(3分)との合計6分は、7分へ桁上げされる。その結果、合計時間7分25秒がパネルへ表示される。データ演算回路100は、7分25秒のうちの秒単位“25 秒”をパネルに表示する。
【0039】
(第3の具体例)
第3の具体例では、第1曲目の再生時間が3分47秒であり、第2曲目の再生時間が3分58秒であると仮定する。この場合、第1の入力データXが47秒であり、第2の入力データYが58秒である。
【0040】
第1の具体例と同様にステップS10からステップS30を実行する。その結果、第1の演算データは105秒となる。第1の演算データは100秒よりも大きいので、ステップS35において、キャリーCY3が発生する。さらに、第1の演算データは60秒よりも大きいので、キャリーCY2も発生する。キャリーCY3の発生により、選択回路S2は、第2の補正データ(40秒)を選択する。キャリーCY2の発生により、分演算用のデータ演算回路100cにおいて分単位の桁上りが生じる。
【0041】
キャリーCY3が発生するので、次にステップS70が実行される。加減算器80は、演算データの数値の下2桁をレジスタR3へ送信する。よって、レジスタR1には第1の演算データの下2桁が格納される。この具体例では、第1の演算データ105秒の下2桁として05秒が格納される。また、キャリーCY3が発生しているので、レジスタR2には、第2の補正データ(40秒)が格納される。
【0042】
次に、第1の演算データの下2桁に第2の補正データを加算し、第2の演算データを生成する(S80)。この具体例では、第2の演算データは、05秒+40秒=45秒になる。第2の演算データは、0秒よりも大きいので、ボローBR1は発生しない。従って、選択回路S4は、レジスタR3を選択し、第2の演算データを結果データとして出力する(S60)。即ち、選択回路S4は、結果データとして45秒を出力する。この結果データがパネルに表示される。
【0043】
この具体例では、分単位への桁上げが行われているので、第1曲目の再生時間の分単位および第2曲目の再生時間の分単位の合計6分は7分へ桁上げされる。その結果、合計時間7分45秒がパネルへ表示される。データ演算回路100は、7分25秒のうちの秒単位“25 秒”をパネルに表示する。
【0044】
本実施の形態において、第1の入力データXおよび第2の入力データYと結果データとの関係は次のように表現できる。
・X+Y<60の場合、結果データはX+Yである(第1の具体例に該当)。
・60≦X+Y<100の場合、結果データはX+Y−60である(第2の具体例に該当)。
・100≦X+Yの場合、結果データはX+Y+40の数値の下2桁である(第3の具体例に該当)。
【0045】
尚、本実施の形態では、第1の補正データは60に設定され、第2の補正データは40に設定されている。しかし、第1の補正データの数値および第2の補正データの数値は、これらに限られることなく、第1の入力データおよび第2の入力データに基づいて任意に設定することができる。
【0046】
但し、第1の補正データは、結果データの最大値に1を足した数値に等しいことが好ましい。例えば、データ演算回路100がフレームを演算する場合には、結果データの最大値は74であるので、第1の補正データの数値は、75フレームであることが好ましい。
【0047】
演算データが桁上りするときの最小値は、第1の補正データおよび第2の補正データの和に等しいことが好ましい。例えば、演算データが桁上りするとき(キャリーCY3が発生するとき)の最小値は、100フレームである。よって、第1の補正データの数値と第2の補正データの数値との和は、100フレームであることが好ましい。これに基づいて第2の補正データを算出できる。この場合、第2の補正データは、25フレーム(100−75=25)である。
【0048】
本実施の形態において、加減算器80は、演算データの下2桁をレジスタR3へ送信した。しかし、加減算器80は、演算データの下n桁(nは2以外の自然数)をレジスタR3へ送信するように構成されてもよい。ここで、加減算器80が演算データの下n桁を送信するのはキャリーCY3による桁上りを考慮したものである。従って、n桁は、第1の入力データおよび第2の入力データの桁数に等しい。即ち、加減算器80は、演算データのうち、キャリーCY3の発生時に生じた桁を除いた残りの桁の数値のみをレジスタR3へ送信する。
【0049】
本実施の形態は、CDプレーヤに配備するものとして記載した。しかし、本実施の形態によるデータ演算回路は、DVDプレーヤやVTR等の数値演算を必要とする機器に適用することもできる。
【0050】
本実施の形態において、データ演算回路100は、60進演算に用いられるものとして記載した。しかし、本発明によるデータ演算回路は、10進演算または75進演算などの演算にも使用できる。
【0051】
本実施の形態によるデータ演算回路100は、デジタル論理回路により時間演算を処理する。よって、データ演算回路100は、該データ演算回路100が配備された装置内のCPUに負担を掛けることなく、時間演算を処理することができる。例えば、上述の時間演算をデータ演算回路100で処理する場合には、10MHzのCPUにおいて約2.4μs(マイクロ秒)の時間しか要しない。即ち、本実施の形態によるデータ演算回路100は、従来の100分の1の時間で数値演算を実行することができる。
【0052】
【発明の効果】
本発明に従ったデータ演算回路は、ハードウェアを用いたデジタル論理演算により数値演算を実行するので、データの演算処理のためにCPUが動作する時間を短縮することができる。
【図面の簡単な説明】
【図1】本発明に係る実施の形態に従ったデータ演算装置を備えた時間演算回路1のブロック図。
【図2】データ演算回路100a、100bおよび100cのいずれかに含まれるデータ演算回路の回路図。
【図3】データ演算回路100の動作を示すフロー図。
【符号の説明】
100 データ演算回路
10 第1の入力部
20 第2の入力部
30 補正レジスタ
S1、S2、S3、S4 第1の選択回路
80 加減算器
90 制御回路
R1、R2、R3 レジスタ
CY2、CY3 キャリー
BR1 ボロー[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data operation circuit.
[0002]
[Prior art]
In general, a data recorder, a CD (Compact Disc) player, a DVD (Digital Video Disk) player, or a VTR (Video Tape Recorder) has a function of performing time calculation of data stored in a storage medium. For example, in a CD player, time calculations such as calculation of the remaining time of one tune being played, calculation of the time to access a certain tune, calculation of the time difference between the data stored in the DRAM and the data currently being read, and the like are performed. Done. Conventionally, these time calculations have been performed by causing a CPU to process a program. That is, the time calculation of the data has been realized by software.
[0003]
[Problems to be solved by the invention]
When the above-described time calculation was processed by software, it took about 250 μs (microsecond) for a 10 MHz CPU.
[0004]
In recent years, data compression techniques such as CD-MP3 have been developed, and the CPU must process compressed information having a large amount of information. Therefore, it is better that the time for using the CPU for calculating the time of data is short.
[0005]
SUMMARY OF THE INVENTION It is an object of the present invention to provide a data operation circuit that reduces the time for which a CPU is used for data operation processing.
[0006]
[Means for Solving the Problems]
The data operation circuit according to the embodiment according to the present invention includes:
a first input unit for inputting n-digit first input data;
a second input unit for inputting n-digit second input data;
A correction register for storing arbitrarily set first correction data and second correction data,
If the operation data obtained by adding the first input data and the second input data carry from n digits, the lower n of the numerical value obtained by adding the second correction data to the operation data The digit is output as result data, and if the arithmetic data does not carry over from the n-th digit and if the first correction data is subtracted from the arithmetic data and no borrow occurs, the arithmetic data is A numerical value obtained by subtracting the first correction data is output as result data. When the arithmetic data does not carry over from n digits and when the first correction data is subtracted from the arithmetic data, a borrow occurs. Comprises an operation circuit for outputting the operation data as result data.
[0007]
The data operation circuit according to the embodiment according to the present invention includes:
an adder / subtracter for adding or subtracting n-digit first numerical data and n-digit second numerical data to output operation data;
An input unit for inputting first input data and second input data;
A correction register for storing arbitrarily set first correction data and second correction data,
A first selection circuit that selects one of the operation data or the first input data and outputs the selected data as the first numerical data;
A second selection circuit that selects any one of the first correction data and the second correction data based on whether the calculation data carries more than n digits;
A third selection circuit that selects either the correction data selected in the second selection circuit or the second input data and outputs the selected data as the second numerical data;
A fourth selection circuit that selects either the operation data or the first numerical data based on whether the operation data requires borrowing, and outputs the data as result data;
A control circuit for controlling the first selection circuit, the third selection circuit, and the adjustment circuit;
[0008]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. The embodiments do not limit the present invention. The arithmetic circuit according to the embodiment of the present invention executes a numerical operation conventionally performed by software by a digital logical operation using hardware.
[0009]
FIG. 1 is a block diagram of a time operation circuit 1 including
[0010]
The time operation circuit 1 includes a
[0011]
A CD is divided into "frames" containing a certain amount of data. The
[0012]
Therefore, the data
[0013]
On the other hand, when the
[0014]
In this way, the time calculation circuit 1 carries out when the “frame” and “second” exceed the maximum value, and borrows when the “frame” and “second” become smaller than 0. To calculate the time.
[0015]
FIG. 2 is a block diagram of a data operation circuit included in any of
[0016]
The
[0017]
A register R1 is connected between the selection circuit S1 and the adder /
[0018]
The adder /
[0019]
The selection circuit S1 is connected to the
[0020]
The selection circuit S2 is connected to the correction data register 30. The selection circuit S2 selects either the first correction data or the second correction data stored in the correction data register 30 based on the carry CY3, and transmits the selected data to the selection circuit S3. For example, the selection circuit S2 selects the first correction data when the carry CY3 has not occurred, and selects the second correction data when the carry CY3 has occurred.
[0021]
The selection circuit S3 is connected to the
[0022]
The selection circuit S4 is connected to the registers R1 and R3. The selection circuit S4 selects data from either the register R1 or the register R3 based on the borrow BR1, and outputs this as result data. For example, the selection circuit S4 selects the register R3 when the borrow BR1 has not occurred, and selects the register R1 when the borrow BR1 has occurred. The result data output from the selection circuit S4 is displayed on a panel or the like of the CD player.
[0023]
The correction data register 30 stores the first correction data and the second correction data. The first correction data and the second correction data are used to correct a numerical value in units of seconds when carrying to minutes is performed. The first correction data and the second correction data can be set after manufacturing the
[0024]
The
[0025]
FIG. 3 is a flowchart showing the operation of the
[0026]
(First specific example)
First, the first input data X and the second input data Y are input to the
[0027]
In this specific example, it is assumed that the reproduction time of the first music piece is 3 minutes and 13 seconds, and the reproduction time of the second music piece is 3 minutes and 23 seconds. In this case, the first input data X is 13 seconds, and the second input data Y is 23 seconds.
[0028]
The
[0029]
The adder /
[0030]
Next, the adder /
[0031]
Next, the first operation data is stored in the register R3. The first operation data stored in the register R3 is fed back to the selection circuit S1. Since the borrow BR1 has not occurred at this point, the selection circuit S4 has selected the first operation data in the register R3. However, the
[0032]
Next, the
[0033]
Next, the adder /
[0034]
(Second specific example)
In the second specific example, it is assumed that the reproduction time of the first music piece is 3 minutes and 47 seconds and the reproduction time of the second music piece is 3 minutes and 38 seconds. In this case, the first input data X is 47 seconds, and the second input data Y is 38 seconds.
[0035]
Steps S10 to S30 are executed in the same manner as in the first specific example. As a result, the first operation data (X + Y) is 85 seconds. Since the first operation data is shorter than 100 seconds, no carry CY3 occurs in step S35. On the other hand, since the first operation data is longer than 60 seconds, the carry CY2 occurs. Due to the occurrence of carry CY2, carry in minutes is generated in
[0036]
Since the carry CY3 has not occurred, as in the first specific example, in step S40, 85 seconds is stored in the register R1 as the first operation data. The first correction data (60 seconds) is stored in the register R2.
[0037]
Next, in step S50, the first correction data is subtracted from the first calculation data to generate second calculation data. In this specific example, the second operation data is 85 seconds−60 seconds = 25 seconds. That is, since the second operation data is longer than 0 second, the borrow BR1 does not occur in step S55.
[0038]
Therefore, the selection circuit S4 selects the register R3 and outputs the second operation data as result data (S60). That is, the selection circuit S4 outputs 25 seconds as result data. The result data is displayed on the panel. As described above, the
[0039]
(Third specific example)
In the third specific example, it is assumed that the reproduction time of the first music piece is 3 minutes and 47 seconds and the reproduction time of the second music piece is 3 minutes and 58 seconds. In this case, the first input data X is 47 seconds, and the second input data Y is 58 seconds.
[0040]
Steps S10 to S30 are executed in the same manner as in the first specific example. As a result, the first operation data is 105 seconds. Since the first operation data is longer than 100 seconds, carry CY3 occurs in step S35. Further, since the first operation data is longer than 60 seconds, carry CY2 also occurs. Upon occurrence of carry CY3, selection circuit S2 selects the second correction data (40 seconds). Due to the occurrence of carry CY2, carry in minutes is generated in
[0041]
Since carry CY3 occurs, step S70 is executed next. The adder /
[0042]
Next, the second correction data is added to the lower two digits of the first calculation data to generate second calculation data (S80). In this specific example, the second operation data is 05 seconds + 40 seconds = 45 seconds. Since the second operation data is longer than 0 second, the borrow BR1 does not occur. Therefore, the selection circuit S4 selects the register R3 and outputs the second operation data as result data (S60). That is, the selection circuit S4 outputs 45 seconds as result data. The result data is displayed on the panel.
[0043]
In this specific example, since the carry is performed in units of minutes, a total of 6 minutes of the minute unit of the reproduction time of the first music and the reproduction unit of the second music is carried to 7 minutes. As a result, a total time of 7 minutes and 45 seconds is displayed on the panel. The
[0044]
In the present embodiment, the relationship between the first input data X and the second input data Y and the result data can be expressed as follows.
When X + Y <60, the result data is X + Y (corresponding to the first specific example).
When 60 ≦ X + Y <100, the result data is X + Y−60 (corresponding to the second specific example).
When 100 ≦ X + Y, the result data is the last two digits of the numerical value of X + Y + 40 (corresponding to the third specific example).
[0045]
In the present embodiment, the first correction data is set to 60, and the second correction data is set to 40. However, the numerical value of the first correction data and the numerical value of the second correction data are not limited to these, and can be arbitrarily set based on the first input data and the second input data.
[0046]
However, the first correction data is preferably equal to a numerical value obtained by adding 1 to the maximum value of the result data. For example, when the
[0047]
It is preferable that the minimum value when the arithmetic data carries up is equal to the sum of the first correction data and the second correction data. For example, the minimum value when the arithmetic data carries (when carry CY3 occurs) is 100 frames. Therefore, the sum of the numerical value of the first correction data and the numerical value of the second correction data is preferably 100 frames. Based on this, the second correction data can be calculated. In this case, the second correction data is 25 frames (100−75 = 25).
[0048]
In the present embodiment, the adder /
[0049]
This embodiment has been described as being deployed in a CD player. However, the data operation circuit according to the present embodiment can also be applied to devices that require numerical operations, such as DVD players and VTRs.
[0050]
In the present embodiment, the
[0051]
The
[0052]
【The invention's effect】
Since the data operation circuit according to the present invention executes a numerical operation by a digital logic operation using hardware, it is possible to reduce the time during which the CPU operates for data operation processing.
[Brief description of the drawings]
FIG. 1 is a block diagram of a time operation circuit 1 including a data operation device according to an embodiment of the present invention.
FIG. 2 is a circuit diagram of a data operation circuit included in any of
FIG. 3 is a flowchart showing the operation of the
[Explanation of symbols]
REFERENCE SIGNS
Claims (6)
n桁の第2の入力データを入力する第2の入力部と、
任意に設定された第1の補正データおよび第2の補正データを格納する補正レジスタと、
前記第1の入力データおよび前記第2の入力データを加算して得られた演算データがn桁から桁上りする場合には、該演算データに前記第2の補正データを加算した数値の下n桁を結果データとして出力し、
前記演算データがn桁から桁上りせず尚且つ前記演算データから前記第1の補正データを減算したときに桁借りが生じない場合には、前記演算データから前記第1の補正データを減算した数値を結果データとして出力し、
前記演算データがn桁から桁上りせず尚且つ前記演算データから前記第1の補正データを減算したときに桁借りが生じる場合には、前記演算データを結果データとして出力する演算回路とを備えたデータ演算回路。a first input unit for inputting n-digit first input data;
a second input unit for inputting n-digit second input data;
A correction register for storing arbitrarily set first correction data and second correction data,
If the operation data obtained by adding the first input data and the second input data is carried over from n digits, the lower n of the numerical value obtained by adding the second correction data to the operation data Output digits as result data,
If the arithmetic data does not carry over from the n-th digit and no borrow occurs when the first correction data is subtracted from the arithmetic data, the first correction data is subtracted from the arithmetic data. Output numerical values as result data,
An arithmetic circuit that outputs the arithmetic data as result data when the arithmetic data does not carry over from n digits and a borrow occurs when the first correction data is subtracted from the arithmetic data. Data operation circuit.
第1の入力データおよび第2の入力データを入力する入力部と、
任意に設定された第1の補正データおよび第2の補正データを格納する補正レジスタと、
前記演算データまたは前記第1の入力データのいずれかを選択して前記第1の数値データとして出力する第1の選択回路と、
前記演算データがn桁よりも桁上がりしているか否かに基づいて前記第1の補正データまたは前記第2の補正データのいずれかの補正データを選択する第2の選択回路と、
前記第2の選択回路において選択された補正データまたは前記第2の入力データのいずれかを選択して前記第2の数値データとして出力する第3の選択回路と、
前記演算データが桁借りを要するか否かに基づいて、前記演算データまたは前記第1の数値データのいずれかを選択し、該データを結果データとして出力する第4の選択回路と、
前記第1の選択回路、前記第3の選択回路および前記加減回路を制御する制御回路とを備えたデータ演算回路。an adder / subtracter for adding or subtracting n-digit first numerical data and n-digit second numerical data to output operation data;
An input unit for inputting first input data and second input data;
A correction register for storing arbitrarily set first correction data and second correction data,
A first selection circuit for selecting either the operation data or the first input data and outputting the selected data as the first numerical data;
A second selection circuit that selects any one of the first correction data and the second correction data based on whether the calculation data carries more than n digits;
A third selection circuit that selects either the correction data selected in the second selection circuit or the second input data and outputs the selected data as the second numerical data;
A fourth selection circuit that selects either the operation data or the first numerical data based on whether the operation data requires borrowing, and outputs the data as result data;
A data operation circuit comprising: a control circuit that controls the first selection circuit, the third selection circuit, and the addition / subtraction circuit.
前記第1の演算データがn桁から桁上りした場合には、
次に、前記第1の選択回路は前記第1の演算データの下n桁を選択し、前記第3の選択回路は前記第2の補正データを選択し、前記加減算器は、前記第1の数値データとして前記第1の演算データの下n桁を入力し、前記第2の数値データとして前記補正データを入力して、前記第1の演算データの下n桁に前記選択補正データを加算して第2の演算データを算出し、前記選択回路4は、該第2の演算データを結果データとして出力し、
前記第1の演算データがn桁から桁上りしていない場合には、
次に、前記第1の選択回路は前記第1の演算データを選択し、前記第3の選択回路は前記第1の補正データを選択し、前記加減算器は、前記第1の数値データとして前記第1の演算データを入力し、前記第2の数値データとして前記補正データを入力して、前記第1の演算データから前記選択補正データを減算して第2の演算データを算出し、
前記第4の選択回路は、前記第2の演算データが桁借りを要する場合には前記第1の演算データを選択し、前記第2の演算データが桁借りを要しない場合には前記第2の演算データを選択し、該データを結果データとして出力することを特徴とする請求項2に記載のデータ演算回路。First, the first selection circuit and the third selection circuit select the first input data and the second input data, respectively, and the adder / subtracter selects the first numerical data as the first numerical data. Is input, the second input data is input as the second numerical data, and they are added to calculate first operation data. The second correction data is selected when the calculation data of n is carried up from n digits, and the first correction data is selected when the first calculation data is not carried up from n digits. ,
When the first operation data carries from n digits,
Next, the first selection circuit selects the last n digits of the first operation data, the third selection circuit selects the second correction data, and the adder / subtractor selects the first correction data. The lower n digits of the first calculation data are input as numerical data, the correction data is input as the second numerical data, and the selected correction data is added to the lower n digits of the first calculation data. The selection circuit 4 outputs the second operation data as result data,
When the first operation data does not carry from n digits,
Next, the first selection circuit selects the first operation data, the third selection circuit selects the first correction data, and the adder / subtracter selects the first correction data as the first numerical data. Inputting first calculation data, inputting the correction data as the second numerical data, subtracting the selected correction data from the first calculation data to calculate second calculation data,
The fourth selection circuit selects the first operation data when the second operation data requires borrowing, and selects the second operation data when the second operation data does not require borrowing. 3. The data operation circuit according to claim 2, wherein the operation data is selected and the data is output as result data.
前記演算データが桁上りするときの最小値が、前記第1の補正データおよび前記第2の補正データの和に等しいことを特徴とする請求項1または請求項2に記載のデータ演算回路。The first correction data is equal to a value obtained by adding 1 to a maximum value of the result data,
The data arithmetic circuit according to claim 1, wherein a minimum value when the arithmetic data carries up is equal to a sum of the first correction data and the second correction data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003024646A JP2004234523A (en) | 2003-01-31 | 2003-01-31 | Data arithmetic circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003024646A JP2004234523A (en) | 2003-01-31 | 2003-01-31 | Data arithmetic circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004234523A true JP2004234523A (en) | 2004-08-19 |
Family
ID=32953125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003024646A Pending JP2004234523A (en) | 2003-01-31 | 2003-01-31 | Data arithmetic circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004234523A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3376684A1 (en) | 2004-08-11 | 2018-09-19 | Panasonic Intellectual Property Management Co., Ltd. | Communication system, base station control device, and base station device |
-
2003
- 2003-01-31 JP JP2003024646A patent/JP2004234523A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3376684A1 (en) | 2004-08-11 | 2018-09-19 | Panasonic Intellectual Property Management Co., Ltd. | Communication system, base station control device, and base station device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004234523A (en) | Data arithmetic circuit | |
US7966361B1 (en) | Single-cycle modulus operation | |
US20040225863A1 (en) | Data processor, data processing method, program for data processor, and program recording medium | |
JP3350005B2 (en) | Counter reading control device and control method thereof | |
US10257633B1 (en) | Sound-reproducing method and sound-reproducing apparatus | |
JPH07113904B2 (en) | Memory access device | |
JP4302624B2 (en) | Method and apparatus for defining entry points in a data stream | |
JP2003339012A (en) | Information processing apparatus, information processing system, information reproducing method, storage medium, and program | |
JP2004350115A (en) | Gamma correction device and gamma correction method | |
JP2677062B2 (en) | Time series data editing device | |
JP6628217B2 (en) | Audio reproduction device, audio reproduction method, and program | |
JP2586375B2 (en) | Counter circuit with test function | |
JP2006190429A (en) | Method for cyclic reproduction | |
JP2641628B2 (en) | Automatic editing device | |
JP3501496B2 (en) | Memory device | |
JP3268116B2 (en) | Semiconductor integrated circuit | |
JP2002176360A (en) | Data compression recorder and method for setting compression rate | |
JP4222898B2 (en) | Signal processing apparatus and processing method thereof | |
JP2850594B2 (en) | RAM address generation circuit | |
JP2005050396A (en) | Device, method and program for setting recording rate, information recording device, and information recording medium with the program recorded | |
JP3296857B2 (en) | Image creation device | |
CN117577126A (en) | Audio signal processing method, device, electronic equipment and storage medium | |
JP2001084111A (en) | Data processor | |
JP2009118421A (en) | Video display device and video display method | |
JPH0575974A (en) | Method and device for information processing |