Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3029307B2 - プログラム作成装置 - Google Patents
[go: Go Back, main page]

JP3029307B2 - プログラム作成装置 - Google Patents

プログラム作成装置

Info

Publication number
JP3029307B2
JP3029307B2 JP3059547A JP5954791A JP3029307B2 JP 3029307 B2 JP3029307 B2 JP 3029307B2 JP 3059547 A JP3059547 A JP 3059547A JP 5954791 A JP5954791 A JP 5954791A JP 3029307 B2 JP3029307 B2 JP 3029307B2
Authority
JP
Japan
Prior art keywords
processor
program
signal processing
circuit
display
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 - Fee Related
Application number
JP3059547A
Other languages
English (en)
Other versions
JPH04274568A (ja
Inventor
潔 星野
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP3059547A priority Critical patent/JP3029307B2/ja
Publication of JPH04274568A publication Critical patent/JPH04274568A/ja
Application granted granted Critical
Publication of JP3029307B2 publication Critical patent/JP3029307B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Television Systems (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、プログラム作成装置
に係り、特にプログラムによって制御されるプロセッサ
(基本演算器)を複数個組み合わせて構成され、各プロ
セッサに与えるプログラムを変えることにより、同一の
構成で異なるデジタルデータ処理を行なえるようにした
信号処理回路のプログラムを作成するものに関する。
【0002】
【従来の技術】周知のように、近年では、半導体技術の
発展に伴って、現行方式のテレビジョン画像の信号処理
をデジタル化する開発が盛んに行なわれている。信号処
理をデジタル化することは、変復調やフィルタリング等
の信号処理を安定して行なうことができるとともに、ラ
インメモリやフレームメモリを用いて正確な時間遅延を
容易に行なうことが可能となるため、フレームメモリを
用いたY/C(輝度/色)信号分離や走査線補間を行な
って、画像の高画質化を図ることができるという種々の
利点を有している。
【0003】ところで、信号処理が複雑で大規模になる
につれて、特定の信号処理毎にそれ専用のハードウェア
を開発することは、時間的及び経済的な不利を招くこと
になる。そこで、従来より、テレビジョン信号のデジタ
ル処理を、プログラムによってソフトウェア的に制御さ
れる基本演算器(以下プロセッサという)を用いて行な
うことが考えられている。すなわち、ハードウェアは規
格化されたプロセッサを用い、処理内容はソフトウェア
によって規定しようとするものである。このため、処理
内容を変更する場合には、ソフトウェアを変更するだけ
でよく、同一のハードウェアを多くのことなる目的に使
用することができる。
【0004】この場合、テレビジョン信号等の映像信号
は帯域が広いため、高速な処理が要求される。例えばN
TSC信号の場合、4fsc(14.3MHz)で標本化
されるから、各画素当たりの処理は70ns以内に行な
う必要がある。換言すれば、プロセッサを用いて映像信
号処理回路を構成した場合、Y/C信号分離と色信号処
理とで必要とする積和演算回路は約60回路あるため、
60×14.3=858MOPS(1秒間に858×1
6 回の演算)という非常に高速な処理が必要になる。
このため、映像信号処理をプロセッサを用いて行なわせ
る場合には、複数のプロセッサを用いて処理の高速化を
図ることが重要なこととなっている。
【0005】このように、プロセッサを複数個用いて回
路を構成する手法として、同一構造をした複数のプロセ
ッサを2次元アレイ状に規則正しく配置し、隣接するプ
ロセッサ相互間でデータ交換を行なうようにする方法が
ある。図12(a)は、このように複数のプロセッサP
11,P12,……を2次元アレイ状に配置した構成を
示している。また、図12(b)は、説明のために同図
(a)に示した回路の中から1次元構成の部分を抜き出
したものである。図12中、それぞれの正方形がプロセ
ッサを示し、各プロセッサ同志をつないでいる直線は、
隣接するプロセッサ相互間でデータ交換を行なうための
接続線を示している。
【0006】図12(b)において、入力信号が接続線
L11から入力されるものとする。すると、入力信号
は、プロセッサP11にて処理を受けた後、接続線L1
2を介してプロセッサP12に送られてさらに処理を受
ける。このように、各プロセッサP11,P12,……
は、接続線L11,L12,……を介して供給されたデ
ータを処理して、接続線L12,L13,……に出力す
る動作を繰り返し、データがプロセッサP11,P1
2,……と順次流れて行き、全体として高い処理性能を
得られるようにしている。図12(a)に示した2次元
構成の回路も上記と全く同様に動作するが、プロセッサ
P11がプロセッサP12とP21との両方にデータを
出力することができるので、1次元構成の場合と異なり
動作が複雑になっている。
【0007】ここで、上記プロセッサには、コントロー
ル駆動方式のものとデータ駆動方式のものとがある。一
般的なコントロール駆動方式では、図13に示すよう
に、命令プログラムの実行が1つの制御装置11によっ
て制御される。すなわち、制御装置11内のプログラム
カウンタ11aで示されたアドレスに基づいて、プログ
ラムメモリ12からプログラムデータが読み出され、制
御装置11内の図示しない命令デコーダによって解読さ
れる。
【0008】そして、プログラムメモリ12内のオペラ
ンド部12aで指定されたデータが、制御装置11の制
御により、データメモリ13またはI/O(入力/出
力)ポート14から読み出され、プログラムメモリ12
内の操作部12bによって指定された演算が演算装置1
5で実行され、その結果がデータメモリ13またはI/
Oポート14に格納される。
【0009】次に実行される命令は、通常、プログラム
カウンタ11aに1を加算したアドレスから読み出され
るが、分岐命令には、そのオペランド部12aによって
指定されたアドレスから読み出される。このようにコン
トロール駆動方式では、命令の実行が逐次的になされ
る。
【0010】一方、データ駆動方式は、コントロール駆
動方式のように命令プログラムの実行が1つの制御装置
によって制御されるわけではなく、各命令はそのオペラ
ンドデータが揃うと実行される。すなわち、図14に示
すように、演算装置15とデータメモリ13との間にア
クセス要求及び返答がある。そして、演算装置15はオ
ペランド部12aで指定されたデータメモリ13あるい
はI/Oポート14へのアクセス要求を出し、データメ
モリ13は要求されたデータが揃ったら返答を演算装置
15に返す。その後、演算が実行されてプログラムカウ
ンタ11aが更新される。
【0011】以上のように、コントロール駆動方式で
は、プログラムカウンタ11aに指示された命令の制御
下で逐次的に実行されるので、プログラム作成時に演算
の並列性を明示的に指示する必要がある。これに対し、
データ駆動方式では、オペランドデータが揃ったときに
はじめて命令を実行する、つまり、命令はこのオペラン
ドデータの依存関係にのみしたがって次々に実行され、
プログラムに内存する並列性を実行時に引き出すことが
できるので、並列処理に適しているといえる。なお、上
述した演算装置15は、一般にALUやACC(アキュ
ミュレータ)等から構成されるが詳細な説明は省略す
る。
【0012】データ駆動方式のプロセッサ同志は、その
性質上、図15に示すようにFIFOメモリ16を用い
て接続するのが、一般的である。すなわち、プロセッサ
17がプロセッサ18に対して出力したデータは、FI
FOメモリ16に格納される。このため、プロセッサ1
8がデータを読むタイミングの方がプロセッサ17がデ
ータを出力するタイミングよりも遅ければ、プロセッサ
18はFIFOメモリ16に蓄えられたデータを読み出
し、逆に、プロセッサ18がデータを読むタイミングの
方がプロセッサ17がデータを出力するタイミングより
も早ければ、プロセッサ18はFIFOメモリ16にデ
ータが入力されるまで待つことになる。
【0013】以上説明したようなデータ駆動方式のプロ
セッサ複数個を、FIFOメモリを介して2次元アレイ
状に配置し、それぞれのプロセッサをプログラミングす
ることで、基本的には所望の信号処理を行なうことがで
きる。一般に、プロセッサに与えるプログラムの開発
は、パーソナル・コンピュータあるいはワークステーシ
ョン上で行なうが、プロセッサのプログラミングは非常
に複雑である。すなわち、プロセッサの一般的なプログ
ラミング言語はアセンブラであるが、言語の文法そのも
のばかりでなく、複雑なハードウェア・アーキテクチャ
にも精通する必要があるとともに、複数のプロセッサの
配置を意識したプログラミングが要求されるからであ
り、信号処理技術者がこの種のマルチプロセッサ装置で
希望する処理を行なわせるようにプログラミングするこ
とは、大きな負担となっている。
【0014】ここで、プロセッサに与えるプログラムの
従来の開発手段について説明する。図16は、2次元ア
レイ上に配置するプロセッサの一般構成を示す概念図で
あるが、同図は説明のために最も基本的な構成にとどめ
たもので、実際のハードウェアはより複雑なものであ
る。すなわち、入力端子19,20,21,22には、
それぞれ上下左右に隣接するプロセッサからの出力デー
タが供給されている。また、セレクタ23,24は、4
つの入力端子19,20,21,22からの入力データ
と、データメモリ25からの出力データと、プログラム
メモリ26から出力される定数値とのうちから1つを選
択して、それぞれALU27に供給する。
【0015】このALU27は、2つの入力データに所
定の演算を施す。そして、セレクタ27,29,30,
31は、ALU27からの出力データと、4つの入力端
子19,20,21,22からの入力データとのうちか
ら1つを選択して、それぞれ出力端子32,33,3
4,35に出力する。この出力端子32,33,34,
35は、上下左右に隣接するプロセッサの各入力端子に
接続されている。また、ALU27の出力データは、デ
ータメモリ25にも書き込むことが可能である。上記セ
レクタ23,24,28,29,30,31及びデータ
メモリ25のアドレスは、プログラムメモリレ26のプ
ログラム内容にしたがって制御される。
【0016】このプログラムメモリ26は、図示しない
プログラムカウンタによって指定されたアドレスのデー
タを出力し、この出力データが命令デコーダ36によっ
て解読されて制御信号となる。なお、実際のハードウェ
アでは、高速化のために、入力端子19〜22から出力
端子32〜35までの経路中に数段のラッチ回路が存在
し、プロセッサ内部がパイプライン動作を行なうことが
多いが、説明を簡潔にするためにここでは省略してい
る。
【0017】次に、図16に示したプロセッサをプログ
ラムするためのアセンブラ言語について説明する。ま
ず、上記入力端子19〜22及び出力端子32〜35
を、それぞれ次のように呼ぶことにする。
【0018】 上に隣接するプロセッサに接続される入力端子19…uin 下に隣接するプロセッサに接続される入力端子20…din 右に隣接するプロセッサに接続される入力端子21…rin 左に隣接するプロセッサに接続される入力端子22…lin 上に隣接するプロセッサに接続される出力端子32…uout 下に隣接するプロセッサに接続される出力端子33…dout 右に隣接するプロセッサに接続される出力端子34…rout 左に隣接するプロセッサに接続される出力端子35…lout また、ALU27における演算は、 (演算) オペランド1 オペランド2 オペランド3 (演算) オペランド1 オペランド2 のように指定するものとする。さらに、各オペランドに
それぞれ入出力端子名またはデータメモリ25のアドレ
スを指定する。例えば上と下に隣接するプロセッサから
の入力データを加算して、右のプロセッサに出力する場
合には、 add uin din rout のように記述し、上のプロセッサからの入力データを下
のプロセッサに出力するだけであれば、 move uin dout と記述する。
【0019】以上説明した図16に示すプロセッサとア
センブラとを用いて、伝達関数H(z) = (1/4)z-1+(1
/2) + (1/4)z+1のFIRフィルタを構成した例を、図
17に示している。この例では、13個のプロセッサで
フィルタを構成しているが、各プロセッサ間中のFIF
Oメモリは省略している。この場合、図17中のプロセ
ッサ37,38,39に与えるプログラムは、以下のよ
うに記述される。
【0020】 ここで、m:0 はデータメモリ25のアドレス0の指定を
表わしている。この例では、プロセッサのプログラムは
最大4命令でループしているので、プロセッサの動作周
波数は接続線40からの入力データレートの少なくとも
4倍でなければならない。また、各プロセッサのループ
周期が4,3,2命令と異なっているが、前述したよう
にデータ駆動方式のプロセッサであれば特に問題はな
い。このようなプログラムを作成するためには、アセン
ブラの文法ばかりでなく、例えばプロセッサ内メモリの
アドレスもプログラム作成者が管理しなければならない
等、プロセッサのハードウェアを意識しなければならな
いため、信号処理技術者が希望する信号処理をプロセッ
サに行なわせるようにプログラミングすることは、技術
者に大きな負担を強いることになる。
【0021】
【発明が解決しようとする課題】以上のように、プロセ
ッサによる信号処理のためのプログラミングは、プロセ
ッサのプログラミング言語を修得しなければならないば
かりでなく、プロセッサのハードウェア・アーキテクチ
ャにも精通し、さらに、複数のプロセッサの配置まで考
慮しなければならないため、信号処理技術者にとって大
きな負担になっているという問題を有している。
【0022】そこで、この発明は上記事情を考慮してな
されたもので、信号処理技術者がプロセッサのプログラ
ミング言語やハードウェア・アーキテクチャを知らず、
しかも複数のプロセッサの配置を意識しなくても、容易
に所望の信号処理をプロセッサに行なわせるためのプロ
グラムを作成することができる極めて良好なプログラム
作成装置を提供することを目的とする。
【0023】
【課題を解決するための手段】この発明に係るプログラ
ム作成装置は、それぞれ与えられたプログラムに応じた
所定の信号処理動作を行なう複数のプロセッサを行列状
に配置し、各プロセッサにそれぞれ予め設定されたプロ
グラムを与えて動作させることによって、全体として所
望の信号処理を行なわせるようにした信号処理システム
の、前記各プロセッサに与えるプログラムを作成するも
のを対象としている。
【0024】そして、プロセッサに種々の信号処理動作
を行なわせるために与えるべき複数のプログラムが格納
される記憶手段と、この記憶手段に格納された複数のプ
ログラムによって前記プロセッサが実行し得る各信号処
理内容にそれぞれ対応する複数の回路用図形を表示する
第1の表示手段と、この第1の表示手段で表示された複
数の回路用図形から所望の回路用図形を選択する選択手
段と、この選択手段で選択された回路用図形を、予め行
列状に設定されそれぞれが前記プロセッサに対応する複
数の表示領域のなかの所望の領域に表示させる第2の表
示手段と、この第2の表示手段の各表示領域に表示され
た各回路用図形に対応したプログラムを前記記憶手段か
ら取り出し、各回路用図形が表示された表示領域の行及
び列に基づいて、各表示領域に対応するプロセッサに与
えるプログラム作成手段とを備えるようにしたものであ
る。
【0025】
【作用】上記のような構成によれば、第1の表示手段で
表示された複数の回路用図形から所望の回路用図形を選
択し、第2の表示手段の所望の表示領域に表示させて信
号処理図を作成するだけで、自動的に各プロセッサに与
えるプログラムを作成することができるので、信号処理
技術者がプロセッサのプログラミング言語やハードウェ
ア・アーキテクチャを知らず、しかも複数のプロセッサ
の配置を意識しなくても、容易に所望の信号処理をプロ
セッサに行なわせるためのプログラムを作成することが
できる。
【0026】
【実施例】以下、この発明の一実施例について図面を参
照して詳細に説明する。前述したように、従来ではパー
ソナル・コンピュータあるいはワークステーション上の
エディタを用いて、プロセッサのプログラムをキーボー
ドを用いて入力している。ここで説明する実施例におい
て、エディタとは、文字を入力するためのソフトウェア
であり、例えばワークステーションの標準的なオペレー
ション・システムであるUnixにはviと称されるエディタ
がある。この実施例では、プロセッサのプログラミング
を行なう者(以下使用者という)は、アセンブラ等のプ
ログラミング言語の文法にしたがってプログラムをキー
ボード入力する必要はなく、その代わりに、メニューに
提示されている信号処理部品を選択することで入力を行
なうことになる。
【0027】図2は、一般的なワークステーションの構
成を示している。すなわち、ワークステーション本体4
1には、CRT(カソード・レィ・チューブ)や液晶等
でなる表示装置42と、入力装置としてのキーボード4
3及びマウス44が接続されている。また、ワークステ
ーション本体41内部には、実際の演算を行なう演算装
置41a,演算に必要なデータを蓄えるメモリ41bや
ディスク41cとそのI/F(インターフェース)41
d等が備えられている。このうち、メモリ41bは一時
的な記憶手段として比較的小容量のものが使用され、デ
ィスク41cは大容量のものが使用される。そして、エ
ディタは、ディスク41cに保存されており、キーボー
ド43の操作で起動されたとき、メモリ41bに転送さ
れて実行されるのが一般的である。この実施例では、使
用者は、エディタの代わりに信号処理部品入力プログラ
ムを用いて入力を行なうことになる。
【0028】以下、入力手段である信号処理部品入力プ
ログラムについて説明する。この説明では入力装置とし
てマウス44を使用するものとする。図3は、表示装置
42に表示される全体の画面構成を示しており、図中A
は信号処理部品のメニューの表示領域であり、Bはメニ
ューから選択した部品を配置するための表示領域であ
り、Cは表示領域Bに対するコマンドメニューの表示領
域である。このうち、表示領域Aの表示例を図4(a)
に示している。信号処理部品のメニューには、12個の
信号処理部品の回路図と、2つの頁送りのための矢印図
とが用意されている。また、図4(b)は上記表示領域
Bの表示例を示しており、同図(a)に示した各信号処
理部品を囲む正方形と同じ大きさを1単位とする複数の
グリッド(図中破線で示す)に区切られている。さら
に、図4(c)は上記表示領域Cの表示例を示してお
り、この例では必要最小限の7つのコマンドメニューを
示している。
【0029】次に、入力プログラム全体の処理につい
て、図5及び図6に示すフローチャートを参照して説明
する。各々のメニューはマウス44を用いて選択され
る。すなわち、マウス44がテーブル上を動かされる
と、それに応じてポインタが画面上を動くようになされ
ている。そして、例えばポインタが画面上の表示領域C
の所定の項目上にきたときにマウス44の釦が押される
と、そのコマンドが選択され実行されるようになる。
【0030】つまり、コマンドメニュー「セーブ」が選
択されると、表示領域Bに作成された信号処理図をディ
スク41cに保存するセーブ処理が行なわれ、コマンド
メニュー「ロード」が選択されると、逆にディスク41
cに保存された信号処理図が画面上に呼び出される。ま
た、コマンドメニュー「プログラム作成」が選択される
と、詳細は後述するが表示領域Bに表示された信号処理
図を下にプロセッサのプログラム作成が行なわれる。さ
らに、コマンドメニュー「回転」,「移動」,「削除」
が選択されると、表示領域Bに配置された個々の信号処
理部品をマウス44の指定によりグリッド単位で回転,
移動,削除するためのモードとなる。また、コマンドメ
ニュー「追加」が選択されると、表示領域Bの空きグリ
ッドにマウス44で指定する新たな信号処理部品を追加
するモードとなる。
【0031】また、例えばポインタが画面上の表示領域
B上にきたときにマウス44の釦が押されると、回転モ
ードであればポインタが示している部品の図形を90度
回転させ、回転させたという属性をその部品に付加す
る。この場合、回転が同一部品に対して2回以上行なわ
れても、その回数がわかるような属性が付加される。例
えば回転が0度のときに属性0,90度のときに属性
1,180度のときに属性2のようにしている。さら
に、移動モードであれば移動し、削除モードであれば削
除が行なわれる。
【0032】また、ポインタが画面上の表示領域A上に
きたときにマウス44の釦が押されると、ポインタが2
つの頁送りの矢印図のいずれかを示していれば、表示領
域Aに表示されている部品メニューの頁が送られ、追加
モードであれば、ポインタが示している部品が表示領域
Bに追加される。
【0033】次に、上述した入力プログラム全体の処理
のうち、追加処理及びプログラム作成処理について詳細
に説明する。まず、図7は追加処理に関するフローチャ
ートを示している。使用者が表示領域A上の追加したい
部品上にポインタを移動させ、その位置でマウス44の
釦を押して部品を選択する。その後、使用者は、釦を押
し続けたままマウス44を移動させ、ポインタを表示領
域B上の所望の位置まで移動させて釦を離すことによ
り、部品が表示領域B上に追加される。
【0034】この場合、部品は、表示領域B上のポイン
タの位置に正確に置かれるのではなく、ポインタを含む
グリッド内にはめ込まれるように配置される。このと
き、ポインタを含むグリッド内に既に部品が配置されて
いる場合には、そのグリッドには部品が配置されないよ
うに設定される。
【0035】以上のようなフローチャートに基づいて必
要とする部品を入力することで、使用者が入力する信号
処理図は、表示領域B上にグリッド単位に整然と配置さ
れることになり、その部品配置はちょうど2次元アレイ
状に並んだプロセッサの配置に一致することになる。図
1は、上記のようにして図17に示したFIRフィルタ
を入力した場合の、表示画面B上の信号処理図を示して
いる。なお、図1中のA〜E及び1〜4は、グリッドの
位置を示すもので、実際の画面上にはあってもなくても
よいものである。
【0036】次に、図8を参照してプログラム作成処理
について説明する。この図8に示すフローチャートは、
使用者が上記のようにして入力した信号処理図に基づい
て、各プロセッサのプログラムを作成するものである。
まず、使用者が図4(c)に示したコマンドメニューか
ら「セーブ」を選択すると、入力した信号処理図がディ
スク41cに保存される。このときのディスク41cの
ファイルフォーマットは、例えば次のようになる。
【0037】 上記ファイルフォーマットにおいて、初めのフィール
ドは何度回転したかを示す属性値を表わし、次の2つの
フィールドは図1中のA〜E及び1〜4に対応した部品
の位置を表わし、最後のフィールドは部品名を表わして
いる。プログラム作成処理では、このファイルを読み込
み、4番目のフィールドの部品名を参照して、必要とな
るプロセッサのプログラム・モジュールをインクルード
する。プロセッサのプログラム・モジュールは、従来例
で説明したものと同様に、各部品名に対応したものがデ
ィスクファイルとして次のように準備されている。
【0038】 すると、インクルード後の信号処理図の情報は以下のよ
うになり、プロセッサのプログラムに近い形となる。
【0039】 次に、各モジュール毎の回転属性値に応じて入出力ポ
ートを変更する。すなわち、属性値が、 0°時計回りに回転 … 0 90°時計回りに回転 … 1 180°時計回りに回転 … 2 270°時計回りに回転 … 3 のような対応になっているとすると、入出力ポートは以
下の規則にしたがって変更される。
【0040】 属性値が0のとき … 変更なし 属性値が1のとき … lをuに変更 … uをrに変更 … rをdに変更 … dをlに変更 属性値が2のとき … lをrに変更 … uをdに変更 … rをlに変更 … dをuに変更 属性値が3のとき … lをdに変更 … uをlに変更 … rをuに変更 … dをrに変更 以上の規則にしたがって変更すると、信号処理図の情報
は次のように変更される。なお、この時点では、回転属
性値は必要がないので示していない。
【0041】 そして、これらをさらにフォーマット整形して、プロセ
ッサのアセンブラプログラムとする。複数プロセッサの
プログラムを記述するのに、次のような書式で指定する
ものとすれば、 フォーマット整形によって、次のようなプロセッサのア
センブラプログラムが出力される。
【0042】 以上に、1つ1つのプロセッサの処理内容が、例えば乗
算のみを行なう係数器等の比較的小規模な場合について
説明したが、次に、上述したプログラム作成処理を応用
して、1つのプロセッサの処理能力が上がり処理規模が
さらに大きくなった場合について説明する。入力手段で
ある信号処理部品入力プログラムの画面構成としては、
図3及び図4と同様でよく、部品入力プログラムのフロ
ーチャートは、図5及び図6と同様でよい。図5及び図
6に示したフローチャートのうち、信号処理部品を配置
する処理(追加処理)について、図9を用いて説明す
る。
【0043】図9に示したフローチャートは、先に図7
に示したフローチャートに類似している。図7の場合に
は、マウス44の釦が押された時点でのポインタを含む
グリッドに、既に部品が配置されていれば新たに部品を
配置しなかったのに対して、図9では、ある条件1を満
たした場合には、既に配置された部品上に新たに部品を
重ねておくようにしている。この条件1は、次のように
して決定される。まず、表示領域Aのメニューの各信号
処理部品それぞれに定数1、表示領域Bの各グリッドそ
れぞれに変数1,変数2をもたせておく。定数1は、以
下のように各部品のプログラム数を示している。
【0044】 部品名 定数1 wire1 … 4 delay1 … 3 coef1 … 2 各グリッドがもつ変数1は、初期値として0をもってお
り、その値は、いくつの部品が重ねて置かれたかを示し
ている。このため、1つ部品が重ねて置かれる毎に次式
で更新される。
【0045】 変数1(n+1) =変数1(n) +1 … 式(1) 一方、変数2も、初期値として0をもっており、そのグ
リッドに置かれたいくつかの部品全ての処理を行なった
場合の合計命令数を示している。このため、1つ部品が
重ねられる毎に次式で更新される。
【0046】 変数1=0の場合 変数2(n+1) =新たに置かれる部品の定数1 … 式(2.1) 変数1=0以外の場合 変数2(n+1) =変数2(n) +新たに置かれる部品の定数1−1 … 式(2.2) また、プロセッサの処理能力に応じて、最大命令数を設
定しておく。この最大命令数は、プロセッサの動作周波
数とプロセッサへの入力信号レートとの比になる。例え
ば入力信号レートが、NTSC信号を4fscでサンプリ
ングした14.3MHzで、プロセッサがその10倍で
動作する場合には10に設定しておく。
【0047】以上のような場合、既に部品が配置されて
いるグリッドに、さらに部品を重ねて置くか否かは、次
の条件で判断する。
【0048】変数2(n) +新たに置かれる部品の定数1
−1≦最大命令数上記条件を満たせば、すなわち新たに
部品を重ねて配置してもプロセッサの処理が間に合うと
判断できれば、部品を配置してそのグリッドの変数1,
2を更新する。条件を満たさない場合は、それ以上部品
を置けない旨を使用者に表示する。以上の図7に示した
フローチャートを図9に示すように応用することで、所
定数だけの部品の重ね入力が可能となる。
【0049】図10に、このときの表示領域Aの表示形
態を示している。すなわち、図1のグリッド2A〜2E
の5つの部品をグリッド2Aに、グリッド3A〜3Eの
5つの部品をグリッド3Aに、グリッド4A〜4Eの5
つの部品をグリッド4Aに重ねて配置した状態を示して
いる。グリッド2A,3A,4A内の数字は、信号処理
部品の重ねた数を示している。
【0050】次に、図8に示したプログラム作成処理に
関して、複数部品の重ね置き配置を許した場合のフロー
チャートを、図11に示している。図8と比較して4つ
の処理を付け加えるだけで対応が可能となる。すなわ
ち、使用者が入力した信号処理図のファイルフォーマッ
トに、その部品が同じグリッドの何番目に重ねられたか
を示すフィールドが1つ追加される。
【0051】 前述したように、このファイルを読み込み、必要なプ
ログラムモジュールをインクルードし、回転属性に応じ
て入出力ポートを変更すると以下のようになる。
【0052】 これらを行列が同じプログラムモジュールつまり同一グ
リッドに置かれた部品(以下同一グリッド内の部品とい
う)毎に置かれた順番が早い(小さい)順に並び変え
る。ただし、この例では既に並んでいるので必要がな
い。次に、同一グリッド内のプログラムモジュールで使
用しているメモリの再割り付けを行なう。この例では、
グリッド2Aの5つの部品のうち4つが、メモリの0番
地を使用するプログラムになっているので、このままで
は同一番地に異なるデータが重ね書きされてしまう。そ
こで、以下のようにメモリ番地を0〜3に順番に割り当
て直すことが行なわれる。
【0053】 さらに、同一グリッド内の1番目のプログラムモジュー
ルから最後のモジュールまでを検査し、順序が隣り合う
プロセッサ同志で入出力ポートを用いてデータ送受を行
なっているものについて、その入出力ポートを、次の規
則にしたがってメモリに割り当てる。
【0054】n 番目のプロセッサがroutに出力し、n+1
番目のプロセッサがlin から入力している … そ
れぞれのrout,lin を共通番地のメモリに変更する。
【0055】n 番目のプロセッサがloutに出力し、n+1
番目のプロセッサがrin から入力している … そ
れぞれのlout,rin を共通番地のメモリに変更する。
【0056】n 番目のプロセッサがdoutに出力し、n+1
番目のプロセッサがuin から入力している … そ
れぞれのdout,uin を共通番地のメモリに変更する。
【0057】n 番目のプロセッサがuoutに出力し、n+1
番目のプロセッサがdin から入力している … そ
れぞれのuout,din を共通番地のメモリに変更する。
【0058】以上の規則にしたがって、入出力ポートを
メモリに割り当て直すと、次のようになる。
【0059】 さらに、同一グリッド内の1番目から最後までを1つの
ループで処理を繰り返すように変更すると、 となる。
【0060】最後に前述した例と同様にフォーマットを
整形してプロセッサのプログラムとすると、 となる。
【0061】したがって、上記実施例によれば、信号処
理システム技術者は、ワークステーション上の入力手段
を用いて、信号処理の部品を配置するだけで希望する信
号処理プログラムを記述することができる。各部品は正
方形の枠内にあり、その正方形のサイズのグリッド単位
にしか配置できないため、入力者が特に意識しなくて
も、各信号処理部品が画面にアレイ状に配置されること
になる。このようにして配置された図面の、各信号処理
部品の位置(行・列)と部品の種類及び図形が何回回転
されたかという情報に基づいて、入力者が希望する信号
処理を行なうプロセッサのプログラムが自動的に作成さ
れ、不慣れな信号処理システム技術者でもプロセッサを
特に意識することなく、容易にしかも短時間でプロセッ
サによる信号処理プログラムを作成でき、信号処理アル
ゴリズムの開発に集中できる。また、プログラムによる
信号処理内容を視覚的に把握できるという効果も期待す
ることができる。
【0062】なお、この発明は上記実施例に限定される
ものではなく、この外その要旨を逸脱しない範囲で種々
変形して実施することができる。
【0063】
【発明の効果】以上詳述したようにこの発明によれば、
信号処理技術者がプロセッサのプログラミング言語やハ
ードウェア・アーキテクチャを知らず、しかも複数のプ
ロセッサの配置を意識しなくても、容易に所望の信号処
理をプロセッサに行なわせるためのプログラムを作成す
ることができる極めて良好なプログラム作成装置を提供
することができる。
【図面の簡単な説明】
【図1】この発明の一実施例を示す平面図。
【図2】同実施例が適用されるワークステーションを示
すブロック構成図。
【図3】同実施例の表示画面を示す平面図。
【図4】同表示画面の詳細を示す平面図。
【図5】同実施例の全体的な動作を示すフローチャー
ト。
【図6】同実施例の全体的な動作を示すフローチャー
ト。
【図7】同実施例の追加処理を示すフローチャート。
【図8】同実施例のプログラム作成処理を示すフローチ
ャート。
【図9】同追加処理の他の例を示すフローチャート。
【図10】同他の例における表示画面を示す平面図。
【図11】同プログラム作成処理の他の例を示すフロー
チャート。
【図12】プロセッサの配列を示すブロック構成図。
【図13】コントロール駆動方式のプロセッサの構造を
示すブロック構成図。
【図14】データ駆動方式のプロセッサの構造を示すブ
ロック構成図。
【図15】同データ駆動方式のプロセッサ同志の接続を
示すブロック構成図。
【図16】同データ駆動方式のプロセッサの詳細な構造
を示すブロック構成図。
【図17】プロセッサで構成したFIRフィルタを示す
ブロック構成図。
【符号の説明】
11…制御装置、12…プログラムメモリ、13…デー
タメモリ、14…I/Oポート、15…演算装置、16
…FIFOメモリ、17,18…プロセッサ、19〜2
2…入力端子、23,24…セレクタ、25…データメ
モリ、26…プログラムメモリ、27…ALU、28〜
31…セレクタ、32〜35…出力端子、36…命令デ
コーダ、37〜39…プロセッサ、40…接続線、41
…ワークステーション本体、42…表示装置、43…キ
ーボード、44…マウス。
フロントページの続き (56)参考文献 特開 平4−274518(JP,A) E.Perez”Graphical Development Syste m for DSP Applicat ions”Midcon’87 Conf erence Record(1987), P.292−302 「1990年電子情報通信学会秋季全国大 会講演論文集」(1990−9)P.6− 258〜260 (58)調査した分野(Int.Cl.7,DB名) G06F 9/06

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 それぞれ与えられたプログラムに応じた
    所定の信号処理動作を行なう複数のプロセッサを行列状
    に配置し、各プロセッサにそれぞれ予め設定されたプロ
    グラムを与えて動作させることによって、全体として所
    望の信号処理を行なわせるようにした信号処理システム
    の、前記各プロセッサに与えるプログラムを作成するプ
    ログラム作成装置において、前記プロセッサに種々の信
    号処理動作を行なわせるために与えるべき複数のプログ
    ラムが格納される記憶手段と、この記憶手段に格納され
    た複数のプログラムによって前記プロセッサが実行し得
    る各信号処理内容にそれぞれ対応する複数の回路用図形
    を表示する第1の表示手段と、この第1の表示手段で表
    示された複数の回路用図形から所望の回路用図形を選択
    する選択手段と、この選択手段で選択された回路用図形
    を、予め行列状に設定されそれぞれが前記プロセッサに
    対応する複数の表示領域のなかの所望の領域に表示させ
    る第2の表示手段と、この第2の表示手段の各表示領域
    に表示された各回路用図形に対応したプログラムを前記
    記憶手段から取り出し、各回路用図形が表示された表示
    領域の行及び列に基づいて、各表示領域に対応するプロ
    セッサに与えるプログラム作成手段とを具備してなるこ
    とを特徴とするプログラム作成装置。
  2. 【請求項2】 前記第2の表示手段は、前記表示領域に
    表示されている回路用図形を所定の角度づつ回転させる
    手段を有し、前記プログラム作成手段は、前記回路用図
    形の回転量に基づいて、該回路用図形に対応する前記プ
    ロセッサに与えるプログラムのデータ入出力ポートを書
    き換える手段を有することを特徴とする請求項1記載の
    プログラム作成装置。
  3. 【請求項3】 前記第2の表示手段は、前記表示領域
    に、複数の前記回路用図形を重ね置きすることができ、
    前記プログラム作成手段は、前記回路用図形が重ねられ
    た順序に基づいて、該回路用図形に対応する前記プロセ
    ッサに与えるプログラムのメモリのアドレスを書き換え
    る手段を有することを特徴とする請求項1記載のプログ
    ラム作成装置。
JP3059547A 1991-02-28 1991-02-28 プログラム作成装置 Expired - Fee Related JP3029307B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3059547A JP3029307B2 (ja) 1991-02-28 1991-02-28 プログラム作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3059547A JP3029307B2 (ja) 1991-02-28 1991-02-28 プログラム作成装置

Publications (2)

Publication Number Publication Date
JPH04274568A JPH04274568A (ja) 1992-09-30
JP3029307B2 true JP3029307B2 (ja) 2000-04-04

Family

ID=13116396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3059547A Expired - Fee Related JP3029307B2 (ja) 1991-02-28 1991-02-28 プログラム作成装置

Country Status (1)

Country Link
JP (1) JP3029307B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3171361B2 (ja) * 1994-05-06 2001-05-28 ヤマハ株式会社 Dspプログラミング装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
「1990年電子情報通信学会秋季全国大会講演論文集」(1990−9)P.6−258〜260
E.Perez"Graphical Development System for DSP Applications"Midcon’87 Conference Record(1987),P.292−302

Also Published As

Publication number Publication date
JPH04274568A (ja) 1992-09-30

Similar Documents

Publication Publication Date Title
Konstantinides et al. The Khoros software development environment for image and signal processing
US6750887B1 (en) Graphical user interface layout manager
EP1364275B1 (en) A graphical user interface layout customizer
US4455619A (en) Interactive equipment for computer programming by linkage of labeled block representations of arithmetic/logical subprograms
US20100020069A1 (en) Partitioning-based performance analysis for graphics imaging
GB2278250A (en) Image Processing
US5485563A (en) System for scaling computerized images
EP0536114A1 (en) Graphics rendering systems
JP3029307B2 (ja) プログラム作成装置
EP2319015A1 (en) Partitioning-based performance analysis for graphics imaging
JPH0756725A (ja) プログラム作成支援方法
Reader et al. Trends in image display systems
JP3238728B2 (ja) 画像処理装置及びユーザ端末装置
JPS59100972A (ja) カラ−画像処理装置
JPS62186365A (ja) 画面作成方法
JPH0991127A (ja) 画像処理プログラムの作成方法
JPH0764524A (ja) 画像表示装置
JPH0361212B2 (ja)
JPH0329059A (ja) 画像処理方法および装置
JPH01123369A (ja) プレゼンテーション装置
JP3493016B2 (ja) 異縮尺地図管理装置
JPH10222471A (ja) グラフ描画装置、グラフ描画処理方法、及びグラフ描画処理プログラムを記録した記録媒体
JPH10228511A (ja) 表作成処理装置および表作成処理方法
Alford The Image Display and Manipulation System (IDAMS)
Erbacher et al. Implementing an Interactive Visualization System on a SIMD Architecture

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees