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 - Program creation device - Google Patents
[go: Go Back, main page]

JP3029307B2 - Program creation device - Google Patents

Program creation device

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
Japanese (ja)
Other versions
JPH04274568A (en
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/en
Publication of JPH04274568A publication Critical patent/JPH04274568A/en
Application granted granted Critical
Publication of JP3029307B2 publication Critical patent/JP3029307B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】この発明は、プログラム作成装置
に係り、特にプログラムによって制御されるプロセッサ
(基本演算器)を複数個組み合わせて構成され、各プロ
セッサに与えるプログラムを変えることにより、同一の
構成で異なるデジタルデータ処理を行なえるようにした
信号処理回路のプログラムを作成するものに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program creating apparatus, and more particularly to a program creating apparatus comprising a combination of a plurality of processors (basic arithmetic units) controlled by a program. And a program for creating a signal processing circuit program capable of performing different digital data processing.

【0002】[0002]

【従来の技術】周知のように、近年では、半導体技術の
発展に伴って、現行方式のテレビジョン画像の信号処理
をデジタル化する開発が盛んに行なわれている。信号処
理をデジタル化することは、変復調やフィルタリング等
の信号処理を安定して行なうことができるとともに、ラ
インメモリやフレームメモリを用いて正確な時間遅延を
容易に行なうことが可能となるため、フレームメモリを
用いたY/C(輝度/色)信号分離や走査線補間を行な
って、画像の高画質化を図ることができるという種々の
利点を有している。
2. Description of the Related Art As is well known, in recent years, with the development of semiconductor technology, digitization of signal processing of television images of the current system has been actively carried out. Digitizing signal processing enables stable signal processing such as modulation and demodulation and filtering, and also makes it possible to easily perform accurate time delay using a line memory or a frame memory. There are various advantages that the image quality can be improved by performing Y / C (luminance / color) signal separation or scanning line interpolation using a memory.

【0003】ところで、信号処理が複雑で大規模になる
につれて、特定の信号処理毎にそれ専用のハードウェア
を開発することは、時間的及び経済的な不利を招くこと
になる。そこで、従来より、テレビジョン信号のデジタ
ル処理を、プログラムによってソフトウェア的に制御さ
れる基本演算器(以下プロセッサという)を用いて行な
うことが考えられている。すなわち、ハードウェアは規
格化されたプロセッサを用い、処理内容はソフトウェア
によって規定しようとするものである。このため、処理
内容を変更する場合には、ソフトウェアを変更するだけ
でよく、同一のハードウェアを多くのことなる目的に使
用することができる。
By the way, as signal processing becomes complicated and large-scale, developing dedicated hardware for each specific signal processing causes time and economic disadvantages. Therefore, conventionally, digital processing of a television signal has been considered to be performed using a basic arithmetic unit (hereinafter referred to as a processor) controlled by software by a program. That is, the hardware uses a standardized processor, and the processing content is to be specified by software. Therefore, when the processing content is changed, only the software needs to be changed, and the same hardware can be used for many different purposes.

【0004】この場合、テレビジョン信号等の映像信号
は帯域が広いため、高速な処理が要求される。例えばN
TSC信号の場合、4fsc(14.3MHz)で標本化
されるから、各画素当たりの処理は70ns以内に行な
う必要がある。換言すれば、プロセッサを用いて映像信
号処理回路を構成した場合、Y/C信号分離と色信号処
理とで必要とする積和演算回路は約60回路あるため、
60×14.3=858MOPS(1秒間に858×1
6 回の演算)という非常に高速な処理が必要になる。
このため、映像信号処理をプロセッサを用いて行なわせ
る場合には、複数のプロセッサを用いて処理の高速化を
図ることが重要なこととなっている。
In this case, since a video signal such as a television signal has a wide band, high-speed processing is required. For example, N
In the case of a TSC signal, since sampling is performed at 4 fsc (14.3 MHz), processing for each pixel must be performed within 70 ns. In other words, when a video signal processing circuit is configured using a processor, there are approximately 60 product-sum operation circuits required for Y / C signal separation and color signal processing.
60 × 14.3 = 858 MOPS (858 × 1 per second)
0 6 times very fast process of operation) of is required.
For this reason, when performing video signal processing using a processor, it is important to speed up the processing using a plurality of processors.

【0005】このように、プロセッサを複数個用いて回
路を構成する手法として、同一構造をした複数のプロセ
ッサを2次元アレイ状に規則正しく配置し、隣接するプ
ロセッサ相互間でデータ交換を行なうようにする方法が
ある。図12(a)は、このように複数のプロセッサP
11,P12,……を2次元アレイ状に配置した構成を
示している。また、図12(b)は、説明のために同図
(a)に示した回路の中から1次元構成の部分を抜き出
したものである。図12中、それぞれの正方形がプロセ
ッサを示し、各プロセッサ同志をつないでいる直線は、
隣接するプロセッサ相互間でデータ交換を行なうための
接続線を示している。
As described above, as a method of configuring a circuit using a plurality of processors, a plurality of processors having the same structure are regularly arranged in a two-dimensional array, and data is exchanged between adjacent processors. There is a way. FIG. 12A shows a plurality of processors P
., P12,... Are arranged in a two-dimensional array. FIG. 12B shows a one-dimensional configuration portion extracted from the circuit shown in FIG. 12A for explanation. In FIG. 12, each square represents a processor, and a straight line connecting the processors is
A connection line for exchanging data between adjacent processors is shown.

【0006】図12(b)において、入力信号が接続線
L11から入力されるものとする。すると、入力信号
は、プロセッサP11にて処理を受けた後、接続線L1
2を介してプロセッサP12に送られてさらに処理を受
ける。このように、各プロセッサP11,P12,……
は、接続線L11,L12,……を介して供給されたデ
ータを処理して、接続線L12,L13,……に出力す
る動作を繰り返し、データがプロセッサP11,P1
2,……と順次流れて行き、全体として高い処理性能を
得られるようにしている。図12(a)に示した2次元
構成の回路も上記と全く同様に動作するが、プロセッサ
P11がプロセッサP12とP21との両方にデータを
出力することができるので、1次元構成の場合と異なり
動作が複雑になっている。
In FIG. 12B, it is assumed that an input signal is input from a connection line L11. Then, after the input signal is processed by the processor P11, the connection line L1
2 to the processor P12 for further processing. Thus, each processor P11, P12,...
Repeats the operation of processing the data supplied via the connection lines L11, L12,... And outputting the data to the connection lines L12, L13,.
2,... Sequentially flow to obtain high processing performance as a whole. The two-dimensional configuration circuit shown in FIG. 12A operates in exactly the same manner as described above, but differs from the one-dimensional configuration because the processor P11 can output data to both the processors P12 and P21. Operation is complicated.

【0007】ここで、上記プロセッサには、コントロー
ル駆動方式のものとデータ駆動方式のものとがある。一
般的なコントロール駆動方式では、図13に示すよう
に、命令プログラムの実行が1つの制御装置11によっ
て制御される。すなわち、制御装置11内のプログラム
カウンタ11aで示されたアドレスに基づいて、プログ
ラムメモリ12からプログラムデータが読み出され、制
御装置11内の図示しない命令デコーダによって解読さ
れる。
Here, the above-mentioned processor includes a control-driven type and a data-driven type. In a general control driving method, as shown in FIG. 13, execution of an instruction program is controlled by one control device 11. That is, program data is read from the program memory 12 based on the address indicated by the program counter 11a in the control device 11, and is decoded by an instruction decoder (not shown) in the control device 11.

【0008】そして、プログラムメモリ12内のオペラ
ンド部12aで指定されたデータが、制御装置11の制
御により、データメモリ13またはI/O(入力/出
力)ポート14から読み出され、プログラムメモリ12
内の操作部12bによって指定された演算が演算装置1
5で実行され、その結果がデータメモリ13またはI/
Oポート14に格納される。
Then, data specified by the operand section 12a in the program memory 12 is read from the data memory 13 or the I / O (input / output) port 14 under the control of the control device 11, and
The operation specified by the operation unit 12b in the
5 and the result is stored in the data memory 13 or I /
Stored in O port 14.

【0009】次に実行される命令は、通常、プログラム
カウンタ11aに1を加算したアドレスから読み出され
るが、分岐命令には、そのオペランド部12aによって
指定されたアドレスから読み出される。このようにコン
トロール駆動方式では、命令の実行が逐次的になされ
る。
The next instruction to be executed is normally read from the address obtained by adding 1 to the program counter 11a, while the branch instruction is read from the address specified by the operand section 12a. As described above, in the control driving method, instructions are sequentially executed.

【0010】一方、データ駆動方式は、コントロール駆
動方式のように命令プログラムの実行が1つの制御装置
によって制御されるわけではなく、各命令はそのオペラ
ンドデータが揃うと実行される。すなわち、図14に示
すように、演算装置15とデータメモリ13との間にア
クセス要求及び返答がある。そして、演算装置15はオ
ペランド部12aで指定されたデータメモリ13あるい
はI/Oポート14へのアクセス要求を出し、データメ
モリ13は要求されたデータが揃ったら返答を演算装置
15に返す。その後、演算が実行されてプログラムカウ
ンタ11aが更新される。
On the other hand, in the data driving method, the execution of an instruction program is not controlled by one control device as in the control driving method, and each instruction is executed when its operand data becomes complete. That is, as shown in FIG. 14, there is an access request and a response between the arithmetic unit 15 and the data memory 13. Then, the arithmetic unit 15 issues an access request to the data memory 13 or the I / O port 14 specified by the operand unit 12a, and the data memory 13 returns a response to the arithmetic unit 15 when the requested data is completed. After that, the calculation is executed and the program counter 11a is updated.

【0011】以上のように、コントロール駆動方式で
は、プログラムカウンタ11aに指示された命令の制御
下で逐次的に実行されるので、プログラム作成時に演算
の並列性を明示的に指示する必要がある。これに対し、
データ駆動方式では、オペランドデータが揃ったときに
はじめて命令を実行する、つまり、命令はこのオペラン
ドデータの依存関係にのみしたがって次々に実行され、
プログラムに内存する並列性を実行時に引き出すことが
できるので、並列処理に適しているといえる。なお、上
述した演算装置15は、一般にALUやACC(アキュ
ミュレータ)等から構成されるが詳細な説明は省略す
る。
As described above, in the control driving method, since the program is sequentially executed under the control of the instruction specified by the program counter 11a, it is necessary to explicitly indicate the parallelism of the operation when creating the program. In contrast,
In the data driven method, an instruction is executed only when operand data is available, that is, instructions are executed one after another only according to the dependency of the operand data,
Since the parallelism inherent in the program can be extracted at the time of execution, it can be said that the program is suitable for parallel processing. The arithmetic unit 15 described above is generally composed of an ALU, an ACC (accumulator) or the like, but a detailed description is omitted.

【0012】データ駆動方式のプロセッサ同志は、その
性質上、図15に示すようにFIFOメモリ16を用い
て接続するのが、一般的である。すなわち、プロセッサ
17がプロセッサ18に対して出力したデータは、FI
FOメモリ16に格納される。このため、プロセッサ1
8がデータを読むタイミングの方がプロセッサ17がデ
ータを出力するタイミングよりも遅ければ、プロセッサ
18はFIFOメモリ16に蓄えられたデータを読み出
し、逆に、プロセッサ18がデータを読むタイミングの
方がプロセッサ17がデータを出力するタイミングより
も早ければ、プロセッサ18はFIFOメモリ16にデ
ータが入力されるまで待つことになる。
Generally, data driven processors are connected by using a FIFO memory 16 as shown in FIG. That is, the data output from the processor 17 to the processor 18 is FI
It is stored in the FO memory 16. Therefore, the processor 1
If the timing at which the processor 8 reads data is later than the timing at which the processor 17 outputs data, the processor 18 reads the data stored in the FIFO memory 16, and conversely, the processor 18 reads the data at a timing higher than the processor 17. If the timing is earlier than the timing at which 17 outputs data, the processor 18 waits until data is input to the FIFO memory 16.

【0013】以上説明したようなデータ駆動方式のプロ
セッサ複数個を、FIFOメモリを介して2次元アレイ
状に配置し、それぞれのプロセッサをプログラミングす
ることで、基本的には所望の信号処理を行なうことがで
きる。一般に、プロセッサに与えるプログラムの開発
は、パーソナル・コンピュータあるいはワークステーシ
ョン上で行なうが、プロセッサのプログラミングは非常
に複雑である。すなわち、プロセッサの一般的なプログ
ラミング言語はアセンブラであるが、言語の文法そのも
のばかりでなく、複雑なハードウェア・アーキテクチャ
にも精通する必要があるとともに、複数のプロセッサの
配置を意識したプログラミングが要求されるからであ
り、信号処理技術者がこの種のマルチプロセッサ装置で
希望する処理を行なわせるようにプログラミングするこ
とは、大きな負担となっている。
A plurality of data driven processors as described above are arranged in a two-dimensional array via a FIFO memory, and each processor is programmed to basically perform desired signal processing. Can be. Generally, development of a program to be provided to a processor is performed on a personal computer or a workstation, but programming of the processor is very complicated. In other words, the general programming language for processors is assembler, but it is necessary to be familiar with not only the grammar of the language itself but also the complex hardware architecture, and programming that is conscious of the arrangement of multiple processors is required. Therefore, it is a great burden for a signal processing engineer to program such a multiprocessor device to perform desired processing.

【0014】ここで、プロセッサに与えるプログラムの
従来の開発手段について説明する。図16は、2次元ア
レイ上に配置するプロセッサの一般構成を示す概念図で
あるが、同図は説明のために最も基本的な構成にとどめ
たもので、実際のハードウェアはより複雑なものであ
る。すなわち、入力端子19,20,21,22には、
それぞれ上下左右に隣接するプロセッサからの出力デー
タが供給されている。また、セレクタ23,24は、4
つの入力端子19,20,21,22からの入力データ
と、データメモリ25からの出力データと、プログラム
メモリ26から出力される定数値とのうちから1つを選
択して、それぞれALU27に供給する。
Here, conventional means for developing a program to be given to the processor will be described. FIG. 16 is a conceptual diagram showing a general configuration of a processor arranged on a two-dimensional array. However, this diagram shows only the most basic configuration for explanation, and actual hardware is more complicated. It is. That is, the input terminals 19, 20, 21, 22
Output data is supplied from the vertically and horizontally adjacent processors. Further, the selectors 23 and 24
One of input data from the input terminals 19, 20, 21, and 22, output data from the data memory 25, and a constant value output from the program memory 26 is selected and supplied to the ALU 27, respectively. .

【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のプ
ログラム内容にしたがって制御される。
The ALU 27 performs a predetermined operation on two input data. Then, the selectors 27, 29, 30,
31 selects one of the output data from the ALU 27 and the input data from the four input terminals 19, 20, 21, and 22, and outputs one of the output terminals 32, 33, 3 respectively.
Output to 4,35. These output terminals 32, 33, 34,
Reference numeral 35 is connected to each input terminal of the adjacent processor in the vertical and horizontal directions. The output data of the ALU 27 can also be written to the data memory 25. The addresses of the selectors 23, 24, 28, 29, 30, 31 and the data memory 25 are controlled according to the program contents of the program memory 26.

【0016】このプログラムメモリ26は、図示しない
プログラムカウンタによって指定されたアドレスのデー
タを出力し、この出力データが命令デコーダ36によっ
て解読されて制御信号となる。なお、実際のハードウェ
アでは、高速化のために、入力端子19〜22から出力
端子32〜35までの経路中に数段のラッチ回路が存在
し、プロセッサ内部がパイプライン動作を行なうことが
多いが、説明を簡潔にするためにここでは省略してい
る。
The program memory 26 outputs data at an address designated by a program counter (not shown), and the output data is decoded by an instruction decoder 36 to become a control signal. In actual hardware, several stages of latch circuits exist in the path from the input terminals 19 to 22 to the output terminals 32 to 35 in order to increase the speed, and the inside of the processor often performs a pipeline operation. However, they are omitted here for the sake of brevity.

【0017】次に、図16に示したプロセッサをプログ
ラムするためのアセンブラ言語について説明する。ま
ず、上記入力端子19〜22及び出力端子32〜35
を、それぞれ次のように呼ぶことにする。
Next, an assembler language for programming the processor shown in FIG. 16 will be described. First, the input terminals 19 to 22 and the output terminals 32 to 35
Will be called as follows.

【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 と記述する。
Input terminals 19... Uin connected to the upper adjacent processor Input terminals 20... Din connected to the lower adjacent processor 21. Lin is connected to the adjacent processor on the output terminal 32 is connected to the adjacent processor below the output terminal 33 is connected to the adjacent processor below the output terminal 34 is connected to the right adjacent processor. rout An output terminal 35 connected to the processor adjacent to the left. lout The operation in the ALU 27 is specified as (operation) operand 1 operand 2 operand 3 (operation) operand 1 operand 2. Further, an input / output terminal name or an address of the data memory 25 is specified for each operand. For example, to add the input data from the upper and lower adjacent processors and output to the right processor, just write as add uin din rout and output the input data from the upper processor to the lower processor If so, describe as 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に与えるプログラムは、以下のよ
うに記述される。
Using the processor and the assembler shown in FIG. 16 described above, the transfer function H (z) = (1/4) z -1 + (1
FIG. 17 shows an example in which an FIR filter of (/ 2) + (1/4) z + 1 is configured. In this example, the filter is composed of 13 processors.
O memory is omitted. In this case, the program given to the processors 37, 38, and 39 in FIG. 17 is described as follows.

【0020】 ここで、m:0 はデータメモリ25のアドレス0の指定を
表わしている。この例では、プロセッサのプログラムは
最大4命令でループしているので、プロセッサの動作周
波数は接続線40からの入力データレートの少なくとも
4倍でなければならない。また、各プロセッサのループ
周期が4,3,2命令と異なっているが、前述したよう
にデータ駆動方式のプロセッサであれば特に問題はな
い。このようなプログラムを作成するためには、アセン
ブラの文法ばかりでなく、例えばプロセッサ内メモリの
アドレスもプログラム作成者が管理しなければならない
等、プロセッサのハードウェアを意識しなければならな
いため、信号処理技術者が希望する信号処理をプロセッ
サに行なわせるようにプログラミングすることは、技術
者に大きな負担を強いることになる。
[0020] Here, m: 0 indicates the designation of the address 0 of the data memory 25. In this example, the operating frequency of the processor must be at least four times the input data rate from connection 40 because the program of the processor is looped with a maximum of four instructions. Further, although the loop cycle of each processor is different from that of 4, 3, 2 instructions, there is no particular problem as long as the processor is a data driven system as described above. In order to create such a program, not only the grammar of the assembler but also the address of the memory in the processor must be managed by the program creator. Programming the technician to cause the processor to perform the desired signal processing places a heavy burden on the technician.

【0021】[0021]

【発明が解決しようとする課題】以上のように、プロセ
ッサによる信号処理のためのプログラミングは、プロセ
ッサのプログラミング言語を修得しなければならないば
かりでなく、プロセッサのハードウェア・アーキテクチ
ャにも精通し、さらに、複数のプロセッサの配置まで考
慮しなければならないため、信号処理技術者にとって大
きな負担になっているという問題を有している。
As described above, programming for signal processing by a processor requires not only to learn the programming language of the processor, but also to become familiar with the hardware architecture of the processor. However, since the arrangement of a plurality of processors must be taken into consideration, there is a problem that a heavy burden is imposed on a signal processing engineer.

【0022】そこで、この発明は上記事情を考慮してな
されたもので、信号処理技術者がプロセッサのプログラ
ミング言語やハードウェア・アーキテクチャを知らず、
しかも複数のプロセッサの配置を意識しなくても、容易
に所望の信号処理をプロセッサに行なわせるためのプロ
グラムを作成することができる極めて良好なプログラム
作成装置を提供することを目的とする。
Therefore, the present invention has been made in consideration of the above circumstances, and a signal processing engineer does not know a programming language or a hardware architecture of a processor.
Moreover, it is an object of the present invention to provide an extremely good program creating apparatus which can easily create a program for causing a processor to perform desired signal processing without being conscious of the arrangement of a plurality of processors.

【0023】[0023]

【課題を解決するための手段】この発明に係るプログラ
ム作成装置は、それぞれ与えられたプログラムに応じた
所定の信号処理動作を行なう複数のプロセッサを行列状
に配置し、各プロセッサにそれぞれ予め設定されたプロ
グラムを与えて動作させることによって、全体として所
望の信号処理を行なわせるようにした信号処理システム
の、前記各プロセッサに与えるプログラムを作成するも
のを対象としている。
According to the present invention, there is provided a program creating apparatus in which a plurality of processors for performing a predetermined signal processing operation in accordance with a given program are arranged in a matrix, and a plurality of processors are preset in each processor. The present invention is directed to a signal processing system that performs a desired signal processing as a whole by providing and operating a program that has been provided, and that creates a program to be provided to each processor.

【0024】そして、プロセッサに種々の信号処理動作
を行なわせるために与えるべき複数のプログラムが格納
される記憶手段と、この記憶手段に格納された複数のプ
ログラムによって前記プロセッサが実行し得る各信号処
理内容にそれぞれ対応する複数の回路用図形を表示する
第1の表示手段と、この第1の表示手段で表示された複
数の回路用図形から所望の回路用図形を選択する選択手
段と、この選択手段で選択された回路用図形を、予め行
列状に設定されそれぞれが前記プロセッサに対応する複
数の表示領域のなかの所望の領域に表示させる第2の表
示手段と、この第2の表示手段の各表示領域に表示され
た各回路用図形に対応したプログラムを前記記憶手段か
ら取り出し、各回路用図形が表示された表示領域の行及
び列に基づいて、各表示領域に対応するプロセッサに与
えるプログラム作成手段とを備えるようにしたものであ
る。
A storage means for storing a plurality of programs to be provided for causing the processor to perform various signal processing operations, and each signal processing executable by the processor by the plurality of programs stored in the storage means First display means for displaying a plurality of circuit graphics respectively corresponding to the contents; selection means for selecting a desired circuit graphic from the plurality of circuit graphics displayed on the first display means; A second display means for displaying the circuit graphic selected by the means in a desired area among a plurality of display areas which are set in a matrix in advance and each corresponding to the processor; and A program corresponding to each circuit graphic displayed in each display area is retrieved from the storage unit, and based on the rows and columns of the display area where each circuit graphic is displayed, It is obtained so as to include a programming means for providing to the processor corresponding to the display area.

【0025】[0025]

【作用】上記のような構成によれば、第1の表示手段で
表示された複数の回路用図形から所望の回路用図形を選
択し、第2の表示手段の所望の表示領域に表示させて信
号処理図を作成するだけで、自動的に各プロセッサに与
えるプログラムを作成することができるので、信号処理
技術者がプロセッサのプログラミング言語やハードウェ
ア・アーキテクチャを知らず、しかも複数のプロセッサ
の配置を意識しなくても、容易に所望の信号処理をプロ
セッサに行なわせるためのプログラムを作成することが
できる。
According to the above arrangement, a desired circuit graphic is selected from a plurality of circuit graphics displayed on the first display means and is displayed in a desired display area of the second display means. By simply creating a signal processing diagram, a program to be automatically given to each processor can be created, so that a signal processing engineer does not know the programming language or hardware architecture of the processor and is aware of the arrangement of multiple processors. Even without doing so, it is possible to easily create a program for causing the processor to perform desired signal processing.

【0026】[0026]

【実施例】以下、この発明の一実施例について図面を参
照して詳細に説明する。前述したように、従来ではパー
ソナル・コンピュータあるいはワークステーション上の
エディタを用いて、プロセッサのプログラムをキーボー
ドを用いて入力している。ここで説明する実施例におい
て、エディタとは、文字を入力するためのソフトウェア
であり、例えばワークステーションの標準的なオペレー
ション・システムであるUnixにはviと称されるエディタ
がある。この実施例では、プロセッサのプログラミング
を行なう者(以下使用者という)は、アセンブラ等のプ
ログラミング言語の文法にしたがってプログラムをキー
ボード入力する必要はなく、その代わりに、メニューに
提示されている信号処理部品を選択することで入力を行
なうことになる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below in detail with reference to the drawings. As described above, conventionally, a processor program is input using a keyboard using an editor on a personal computer or a workstation. In the embodiment described here, the editor is software for inputting characters. For example, Unix, which is a standard operating system of a workstation, includes an editor called vi. In this embodiment, a person who performs programming of the processor (hereinafter referred to as a user) does not need to input a program by keyboard according to the grammar of a programming language such as an assembler. By selecting, input is performed.

【0027】図2は、一般的なワークステーションの構
成を示している。すなわち、ワークステーション本体4
1には、CRT(カソード・レィ・チューブ)や液晶等
でなる表示装置42と、入力装置としてのキーボード4
3及びマウス44が接続されている。また、ワークステ
ーション本体41内部には、実際の演算を行なう演算装
置41a,演算に必要なデータを蓄えるメモリ41bや
ディスク41cとそのI/F(インターフェース)41
d等が備えられている。このうち、メモリ41bは一時
的な記憶手段として比較的小容量のものが使用され、デ
ィスク41cは大容量のものが使用される。そして、エ
ディタは、ディスク41cに保存されており、キーボー
ド43の操作で起動されたとき、メモリ41bに転送さ
れて実行されるのが一般的である。この実施例では、使
用者は、エディタの代わりに信号処理部品入力プログラ
ムを用いて入力を行なうことになる。
FIG. 2 shows the configuration of a general workstation. That is, the workstation body 4
1 includes a display device 42 made of a cathode ray tube (CRT) or liquid crystal, and a keyboard 4 as an input device.
3 and the mouse 44 are connected. Further, inside the workstation main body 41, an arithmetic unit 41a for performing an actual operation, a memory 41b for storing data necessary for the operation, a disk 41c, and its I / F (interface) 41
d etc. are provided. Of these, the memory 41b has a relatively small capacity as a temporary storage means, and the disk 41c has a large capacity. The editor is stored in the disk 41c, and is generally transferred to the memory 41b and executed when the editor is activated by operating the keyboard 43. In this embodiment, the user performs input using a signal processing component input program instead of the editor.

【0028】以下、入力手段である信号処理部品入力プ
ログラムについて説明する。この説明では入力装置とし
てマウス44を使用するものとする。図3は、表示装置
42に表示される全体の画面構成を示しており、図中A
は信号処理部品のメニューの表示領域であり、Bはメニ
ューから選択した部品を配置するための表示領域であ
り、Cは表示領域Bに対するコマンドメニューの表示領
域である。このうち、表示領域Aの表示例を図4(a)
に示している。信号処理部品のメニューには、12個の
信号処理部品の回路図と、2つの頁送りのための矢印図
とが用意されている。また、図4(b)は上記表示領域
Bの表示例を示しており、同図(a)に示した各信号処
理部品を囲む正方形と同じ大きさを1単位とする複数の
グリッド(図中破線で示す)に区切られている。さら
に、図4(c)は上記表示領域Cの表示例を示してお
り、この例では必要最小限の7つのコマンドメニューを
示している。
Hereinafter, a signal processing component input program as an input means will be described. In this description, it is assumed that the mouse 44 is used as an input device. FIG. 3 shows the entire screen configuration displayed on the display device 42.
Is a display area of a menu of the signal processing component, B is a display area for arranging a component selected from the menu, and C is a display area of a command menu for the display area B. Among them, a display example of the display area A is shown in FIG.
Is shown in In the menu of the signal processing component, a circuit diagram of twelve signal processing components and an arrow diagram for two page feeds are prepared. FIG. 4B shows a display example of the display area B. A plurality of grids each having the same size as a square surrounding each signal processing component shown in FIG. (Indicated by a broken line). FIG. 4C shows a display example of the display area C. In this example, a minimum of seven command menus are shown.

【0029】次に、入力プログラム全体の処理につい
て、図5及び図6に示すフローチャートを参照して説明
する。各々のメニューはマウス44を用いて選択され
る。すなわち、マウス44がテーブル上を動かされる
と、それに応じてポインタが画面上を動くようになされ
ている。そして、例えばポインタが画面上の表示領域C
の所定の項目上にきたときにマウス44の釦が押される
と、そのコマンドが選択され実行されるようになる。
Next, the processing of the entire input program will be described with reference to the flowcharts shown in FIGS. Each menu is selected using the mouse 44. That is, when the mouse 44 is moved on the table, the pointer moves on the screen accordingly. Then, for example, the pointer moves to the display area C on the screen.
When the button of the mouse 44 is pressed when the user reaches a predetermined item, the command is selected and executed.

【0030】つまり、コマンドメニュー「セーブ」が選
択されると、表示領域Bに作成された信号処理図をディ
スク41cに保存するセーブ処理が行なわれ、コマンド
メニュー「ロード」が選択されると、逆にディスク41
cに保存された信号処理図が画面上に呼び出される。ま
た、コマンドメニュー「プログラム作成」が選択される
と、詳細は後述するが表示領域Bに表示された信号処理
図を下にプロセッサのプログラム作成が行なわれる。さ
らに、コマンドメニュー「回転」,「移動」,「削除」
が選択されると、表示領域Bに配置された個々の信号処
理部品をマウス44の指定によりグリッド単位で回転,
移動,削除するためのモードとなる。また、コマンドメ
ニュー「追加」が選択されると、表示領域Bの空きグリ
ッドにマウス44で指定する新たな信号処理部品を追加
するモードとなる。
That is, when the command menu "save" is selected, a save process for saving the signal processing diagram created in the display area B on the disk 41c is performed, and when the command menu "load" is selected, the reverse is performed. Disk 41
The signal processing diagram stored in c is called on the screen. When the command menu "program creation" is selected, the program of the processor is created below the signal processing diagram displayed in the display area B, which will be described in detail later. In addition, the command menu "Rotate", "Move", "Delete"
Is selected, the individual signal processing components arranged in the display area B are rotated in grid units by the designation of the mouse 44,
This is the mode for moving and deleting. When the command menu “Add” is selected, a mode is set in which a new signal processing component specified by the mouse 44 is added to an empty grid in the display area B.

【0031】また、例えばポインタが画面上の表示領域
B上にきたときにマウス44の釦が押されると、回転モ
ードであればポインタが示している部品の図形を90度
回転させ、回転させたという属性をその部品に付加す
る。この場合、回転が同一部品に対して2回以上行なわ
れても、その回数がわかるような属性が付加される。例
えば回転が0度のときに属性0,90度のときに属性
1,180度のときに属性2のようにしている。さら
に、移動モードであれば移動し、削除モードであれば削
除が行なわれる。
For example, if the button of the mouse 44 is pressed when the pointer is over the display area B on the screen, if the mode is the rotation mode, the graphic of the part indicated by the pointer is rotated by 90 degrees and rotated. Is added to the component. In this case, even if the same part is rotated twice or more, an attribute is added so that the number of times can be recognized. For example, attribute 0 is set when the rotation is 0 degree, attribute 1 is set when the rotation is 90 degrees, and attribute 2 is set when the rotation is 180 degrees. Further, in the moving mode, the moving is performed, and in the deleting mode, the deleting is performed.

【0032】また、ポインタが画面上の表示領域A上に
きたときにマウス44の釦が押されると、ポインタが2
つの頁送りの矢印図のいずれかを示していれば、表示領
域Aに表示されている部品メニューの頁が送られ、追加
モードであれば、ポインタが示している部品が表示領域
Bに追加される。
When the button of the mouse 44 is pressed when the pointer is over the display area A on the screen, the pointer moves to 2
If any one of the two-page arrow diagrams is shown, the page of the component menu displayed in the display area A is sent. In the case of the addition mode, the component indicated by the pointer is added to the display area B. You.

【0033】次に、上述した入力プログラム全体の処理
のうち、追加処理及びプログラム作成処理について詳細
に説明する。まず、図7は追加処理に関するフローチャ
ートを示している。使用者が表示領域A上の追加したい
部品上にポインタを移動させ、その位置でマウス44の
釦を押して部品を選択する。その後、使用者は、釦を押
し続けたままマウス44を移動させ、ポインタを表示領
域B上の所望の位置まで移動させて釦を離すことによ
り、部品が表示領域B上に追加される。
Next, the addition processing and the program creation processing of the processing of the entire input program described above will be described in detail. First, FIG. 7 shows a flowchart relating to the additional processing. The user moves the pointer over a component to be added on the display area A, and presses a button of the mouse 44 at that position to select a component. Thereafter, the user moves the mouse 44 while keeping the button pressed, moves the pointer to a desired position on the display area B, and releases the button, whereby a component is added to the display area B.

【0034】この場合、部品は、表示領域B上のポイン
タの位置に正確に置かれるのではなく、ポインタを含む
グリッド内にはめ込まれるように配置される。このと
き、ポインタを含むグリッド内に既に部品が配置されて
いる場合には、そのグリッドには部品が配置されないよ
うに設定される。
In this case, the component is not accurately placed at the position of the pointer on the display area B, but is placed so as to fit in the grid including the pointer. At this time, if a component is already arranged in the grid including the pointer, it is set so that the component is not arranged in the grid.

【0035】以上のようなフローチャートに基づいて必
要とする部品を入力することで、使用者が入力する信号
処理図は、表示領域B上にグリッド単位に整然と配置さ
れることになり、その部品配置はちょうど2次元アレイ
状に並んだプロセッサの配置に一致することになる。図
1は、上記のようにして図17に示したFIRフィルタ
を入力した場合の、表示画面B上の信号処理図を示して
いる。なお、図1中のA〜E及び1〜4は、グリッドの
位置を示すもので、実際の画面上にはあってもなくても
よいものである。
By inputting the required components based on the above-described flowchart, the signal processing diagram input by the user is arranged neatly on the display area B in grid units. Will exactly match the arrangement of the processors arranged in a two-dimensional array. FIG. 1 shows a signal processing diagram on the display screen B when the FIR filter shown in FIG. 17 is input as described above. In addition, A to E and 1 to 4 in FIG. 1 indicate the positions of the grid, and may or may not be on the actual screen.

【0036】次に、図8を参照してプログラム作成処理
について説明する。この図8に示すフローチャートは、
使用者が上記のようにして入力した信号処理図に基づい
て、各プロセッサのプログラムを作成するものである。
まず、使用者が図4(c)に示したコマンドメニューか
ら「セーブ」を選択すると、入力した信号処理図がディ
スク41cに保存される。このときのディスク41cの
ファイルフォーマットは、例えば次のようになる。
Next, the program creation processing will be described with reference to FIG. The flowchart shown in FIG.
A program for each processor is created based on the signal processing diagram input by the user as described above.
First, when the user selects "save" from the command menu shown in FIG. 4C, the input signal processing diagram is stored in the disk 41c. The file format of the disk 41c at this time is as follows, for example.

【0037】 上記ファイルフォーマットにおいて、初めのフィール
ドは何度回転したかを示す属性値を表わし、次の2つの
フィールドは図1中のA〜E及び1〜4に対応した部品
の位置を表わし、最後のフィールドは部品名を表わして
いる。プログラム作成処理では、このファイルを読み込
み、4番目のフィールドの部品名を参照して、必要とな
るプロセッサのプログラム・モジュールをインクルード
する。プロセッサのプログラム・モジュールは、従来例
で説明したものと同様に、各部品名に対応したものがデ
ィスクファイルとして次のように準備されている。
[0037] In the above file format, the first field indicates an attribute value indicating the number of rotations, the next two fields indicate the positions of parts corresponding to A to E and 1 to 4 in FIG. Indicates a part name. In the program creation process, this file is read, and the necessary processor program module is included by referring to the component name in the fourth field. As in the case of the program module of the processor, the one corresponding to each component name is prepared as a disk file as follows as in the case of the conventional example.

【0038】 すると、インクルード後の信号処理図の情報は以下のよ
うになり、プロセッサのプログラムに近い形となる。
[0038] Then, the information of the signal processing diagram after the inclusion is as follows, and is in a form close to the program of the processor.

【0039】 次に、各モジュール毎の回転属性値に応じて入出力ポ
ートを変更する。すなわち、属性値が、 0°時計回りに回転 … 0 90°時計回りに回転 … 1 180°時計回りに回転 … 2 270°時計回りに回転 … 3 のような対応になっているとすると、入出力ポートは以
下の規則にしたがって変更される。
[0039] Next, the input / output port is changed according to the rotation attribute value of each module. That is, assuming that the attribute values correspond to 0 ° clockwise rotation 0 0 90 ° clockwise rotation 1 180 ° clockwise rotation 2 270 ° clockwise rotation 3 The output port is changed according to the following rules.

【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に変更 以上の規則にしたがって変更すると、信号処理図の情報
は次のように変更される。なお、この時点では、回転属
性値は必要がないので示していない。
When the attribute value is 0: No change When the attribute value is 1: Change l to u ... Change u to r ... Change r to d ... Change d to l When the attribute value is 2 ... l Change to r… Change u to d… Change r to l… Change d to u When the attribute value is 3… Change l to d… Change u to l… Change r to u… d to r When the information is changed according to the above rules, the information of the signal processing diagram is changed as follows. At this point, the rotation attribute value is not shown because it is not necessary.

【0041】 そして、これらをさらにフォーマット整形して、プロセ
ッサのアセンブラプログラムとする。複数プロセッサの
プログラムを記述するのに、次のような書式で指定する
ものとすれば、 フォーマット整形によって、次のようなプロセッサのア
センブラプログラムが出力される。
[0041] Then, these are further formatted and formed into an assembler program of the processor. If you write a multiprocessor program using the following format, By the format shaping, the following assembler program of the processor is output.

【0042】 以上に、1つ1つのプロセッサの処理内容が、例えば乗
算のみを行なう係数器等の比較的小規模な場合について
説明したが、次に、上述したプログラム作成処理を応用
して、1つのプロセッサの処理能力が上がり処理規模が
さらに大きくなった場合について説明する。入力手段で
ある信号処理部品入力プログラムの画面構成としては、
図3及び図4と同様でよく、部品入力プログラムのフロ
ーチャートは、図5及び図6と同様でよい。図5及び図
6に示したフローチャートのうち、信号処理部品を配置
する処理(追加処理)について、図9を用いて説明す
る。
[0042] The case where the processing content of each processor is relatively small, such as a coefficient unit that performs only multiplication, has been described above. Next, the above-described program creation processing is applied to the processing of one processor. A case where the processing capacity is increased and the processing scale is further increased will be described. As the screen configuration of the signal processing component input program that is the input means,
3 and FIG. 4, and the flowchart of the component input program may be the same as FIG. 5 and FIG. The processing (addition processing) of arranging the signal processing components in the flowcharts shown in FIGS. 5 and 6 will be described with reference to FIG.

【0043】図9に示したフローチャートは、先に図7
に示したフローチャートに類似している。図7の場合に
は、マウス44の釦が押された時点でのポインタを含む
グリッドに、既に部品が配置されていれば新たに部品を
配置しなかったのに対して、図9では、ある条件1を満
たした場合には、既に配置された部品上に新たに部品を
重ねておくようにしている。この条件1は、次のように
して決定される。まず、表示領域Aのメニューの各信号
処理部品それぞれに定数1、表示領域Bの各グリッドそ
れぞれに変数1,変数2をもたせておく。定数1は、以
下のように各部品のプログラム数を示している。
The flowchart shown in FIG.
Is similar to the flowchart shown in FIG. In the case of FIG. 7, if a component has already been arranged on the grid including the pointer at the time when the button of the mouse 44 is pressed, no new component is arranged. When the condition 1 is satisfied, a new component is superimposed on the already arranged component. The condition 1 is determined as follows. First, a constant 1 is assigned to each signal processing component of the menu in the display area A, and a variable 1 and a variable 2 are assigned to each grid in the display area B. The constant 1 indicates the number of programs for each component as follows.

【0044】 部品名 定数1 wire1 … 4 delay1 … 3 coef1 … 2 各グリッドがもつ変数1は、初期値として0をもってお
り、その値は、いくつの部品が重ねて置かれたかを示し
ている。このため、1つ部品が重ねて置かれる毎に次式
で更新される。
Part name Constant 1 wire1... 4 delay1... 3 coef1... 2 Variable 1 of each grid has 0 as an initial value, and the value indicates how many parts are placed one upon another. Therefore, each time one component is placed, it is updated by the following equation.

【0045】 変数1(n+1) =変数1(n) +1 … 式(1) 一方、変数2も、初期値として0をもっており、そのグ
リッドに置かれたいくつかの部品全ての処理を行なった
場合の合計命令数を示している。このため、1つ部品が
重ねられる毎に次式で更新される。
Variable 1 (n + 1) = Variable 1 (n) +1 Equation (1) On the other hand, Variable 2 also has 0 as an initial value, and performs processing of all the parts placed on the grid. Shows the total number of instructions in the case of For this reason, each time one part is superimposed, it is updated by the following equation.

【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に設定しておく。
When variable 1 = 0 Variable 2 (n + 1) = constant 1 of newly placed component ... Equation (2.1) When variable 1 is other than 0 Variable 2 (n + 1) = variable 2 ( n) + Constant 1-1 of newly placed component ... Equation (2.2) Also, the maximum number of instructions is set according to the processing capability of the processor. This maximum number of instructions is the ratio of the operating frequency of the processor to the input signal rate to the processor. For example, if the input signal rate is 14.3 MHz obtained by sampling the NTSC signal at 4 fsc, and the processor operates at 10 times the same, the input signal rate is set to 10.

【0047】以上のような場合、既に部品が配置されて
いるグリッドに、さらに部品を重ねて置くか否かは、次
の条件で判断する。
In the above case, it is determined whether or not a component is further placed on the grid on which the component is already arranged, under the following conditions.

【0048】変数2(n) +新たに置かれる部品の定数1
−1≦最大命令数上記条件を満たせば、すなわち新たに
部品を重ねて配置してもプロセッサの処理が間に合うと
判断できれば、部品を配置してそのグリッドの変数1,
2を更新する。条件を満たさない場合は、それ以上部品
を置けない旨を使用者に表示する。以上の図7に示した
フローチャートを図9に示すように応用することで、所
定数だけの部品の重ね入力が可能となる。
Variable 2 (n) + Constant 1 of newly placed component
−1 ≦ maximum number of instructions If the above condition is satisfied, that is, if it can be determined that the processing of the processor can be performed in time even if components are newly placed, components are placed and variables 1 and
Update 2. If the condition is not satisfied, the user is notified that no more parts can be placed. By applying the above-described flowchart shown in FIG. 7 as shown in FIG. 9, it is possible to input a predetermined number of components in a superimposed manner.

【0049】図10に、このときの表示領域Aの表示形
態を示している。すなわち、図1のグリッド2A〜2E
の5つの部品をグリッド2Aに、グリッド3A〜3Eの
5つの部品をグリッド3Aに、グリッド4A〜4Eの5
つの部品をグリッド4Aに重ねて配置した状態を示して
いる。グリッド2A,3A,4A内の数字は、信号処理
部品の重ねた数を示している。
FIG. 10 shows a display form of the display area A at this time. That is, the grids 2A to 2E in FIG.
5 parts on the grid 2A, 5 parts on the grids 3A to 3E on the grid 3A, and 5 parts on the grids 4A to 4E.
This shows a state in which three parts are arranged so as to be superimposed on the grid 4A. The numbers in the grids 2A, 3A, and 4A indicate the number of signal processing components overlapped.

【0050】次に、図8に示したプログラム作成処理に
関して、複数部品の重ね置き配置を許した場合のフロー
チャートを、図11に示している。図8と比較して4つ
の処理を付け加えるだけで対応が可能となる。すなわ
ち、使用者が入力した信号処理図のファイルフォーマッ
トに、その部品が同じグリッドの何番目に重ねられたか
を示すフィールドが1つ追加される。
Next, FIG. 11 shows a flowchart in the case where the overlapping arrangement of a plurality of parts is permitted in the program creation processing shown in FIG. It is possible to cope only by adding four processes as compared with FIG. In other words, one field is added to the file format of the signal processing diagram input by the user, indicating at what position the component is superimposed on the same grid.

【0051】 前述したように、このファイルを読み込み、必要なプ
ログラムモジュールをインクルードし、回転属性に応じ
て入出力ポートを変更すると以下のようになる。
[0051] As described above, when this file is read, the necessary program modules are included, and the input / output ports are changed according to the rotation attribute, the result is as follows.

【0052】 これらを行列が同じプログラムモジュールつまり同一グ
リッドに置かれた部品(以下同一グリッド内の部品とい
う)毎に置かれた順番が早い(小さい)順に並び変え
る。ただし、この例では既に並んでいるので必要がな
い。次に、同一グリッド内のプログラムモジュールで使
用しているメモリの再割り付けを行なう。この例では、
グリッド2Aの5つの部品のうち4つが、メモリの0番
地を使用するプログラムになっているので、このままで
は同一番地に異なるデータが重ね書きされてしまう。そ
こで、以下のようにメモリ番地を0〜3に順番に割り当
て直すことが行なわれる。
[0052] These are rearranged in the order of earlier (smallest) arrangement of the matrices for the same program module, that is, for each component placed on the same grid (hereinafter referred to as a component in the same grid). However, in this example, there is no need because it is already lined up. Next, the memory used by the program modules in the same grid is reallocated. In this example,
Since four of the five parts of the grid 2A are programs that use the address 0 of the memory, different data is overwritten at the same address as it is. Therefore, the memory addresses are sequentially reassigned to 0 to 3 as follows.

【0053】 さらに、同一グリッド内の1番目のプログラムモジュー
ルから最後のモジュールまでを検査し、順序が隣り合う
プロセッサ同志で入出力ポートを用いてデータ送受を行
なっているものについて、その入出力ポートを、次の規
則にしたがってメモリに割り当てる。
[0053] Further, from the first program module to the last module in the same grid, inspection is performed, and for processors that are adjacent to each other and transmit / receive data using the input / output port, the input / output port is set to the next one. Allocate to memory according to rules.

【0054】n 番目のプロセッサがroutに出力し、n+1
番目のプロセッサがlin から入力している … そ
れぞれのrout,lin を共通番地のメモリに変更する。
The nth processor outputs to rout, and n + 1
The second processor is inputting from lin… Change each rout, lin to a memory at a common address.

【0055】n 番目のプロセッサがloutに出力し、n+1
番目のプロセッサがrin から入力している … そ
れぞれのlout,rin を共通番地のメモリに変更する。
The n-th processor outputs to lout, and n + 1
The second processor is inputting from rin… Change each lout, rin to the memory at the common address.

【0056】n 番目のプロセッサがdoutに出力し、n+1
番目のプロセッサがuin から入力している … そ
れぞれのdout,uin を共通番地のメモリに変更する。
The n-th processor outputs to dout, and n + 1
The second processor is inputting from uin ... Change each dout, uin to the memory of the common address.

【0057】n 番目のプロセッサがuoutに出力し、n+1
番目のプロセッサがdin から入力している … そ
れぞれのuout,din を共通番地のメモリに変更する。
The n-th processor outputs to uout, and n + 1
The second processor is inputting from din… Change each uout, din to a common address memory.

【0058】以上の規則にしたがって、入出力ポートを
メモリに割り当て直すと、次のようになる。
When the input / output ports are reallocated to the memory according to the above rules, the following is obtained.

【0059】 さらに、同一グリッド内の1番目から最後までを1つの
ループで処理を繰り返すように変更すると、 となる。
[0059] Furthermore, if you change the process from the first to the last in the same grid to be repeated in one loop, Becomes

【0060】最後に前述した例と同様にフォーマットを
整形してプロセッサのプログラムとすると、 となる。
Finally, if the format is shaped in the same manner as in the above-described example to form a processor program, Becomes

【0061】したがって、上記実施例によれば、信号処
理システム技術者は、ワークステーション上の入力手段
を用いて、信号処理の部品を配置するだけで希望する信
号処理プログラムを記述することができる。各部品は正
方形の枠内にあり、その正方形のサイズのグリッド単位
にしか配置できないため、入力者が特に意識しなくて
も、各信号処理部品が画面にアレイ状に配置されること
になる。このようにして配置された図面の、各信号処理
部品の位置(行・列)と部品の種類及び図形が何回回転
されたかという情報に基づいて、入力者が希望する信号
処理を行なうプロセッサのプログラムが自動的に作成さ
れ、不慣れな信号処理システム技術者でもプロセッサを
特に意識することなく、容易にしかも短時間でプロセッ
サによる信号処理プログラムを作成でき、信号処理アル
ゴリズムの開発に集中できる。また、プログラムによる
信号処理内容を視覚的に把握できるという効果も期待す
ることができる。
Therefore, according to the above embodiment, a signal processing system engineer can describe a desired signal processing program simply by arranging signal processing components using input means on a workstation. Since each component is in a square frame and can be arranged only in a grid unit of the square size, each signal processing component is arranged in an array on the screen without the input user being particularly conscious. Based on the position (row / column) of each signal processing component, the type of component, and the number of times the graphic has been rotated in the drawing arranged in this manner, the processor of the processor that performs the signal processing desired by the input user The program is automatically created, and even an unskilled signal processing system engineer can easily and quickly create a signal processing program by the processor without paying special attention to the processor, and can concentrate on the development of the signal processing algorithm. In addition, the effect that the signal processing content by the program can be visually grasped can be expected.

【0062】なお、この発明は上記実施例に限定される
ものではなく、この外その要旨を逸脱しない範囲で種々
変形して実施することができる。
The present invention is not limited to the above embodiment, but can be implemented in various modifications without departing from the spirit and scope of the invention.

【0063】[0063]

【発明の効果】以上詳述したようにこの発明によれば、
信号処理技術者がプロセッサのプログラミング言語やハ
ードウェア・アーキテクチャを知らず、しかも複数のプ
ロセッサの配置を意識しなくても、容易に所望の信号処
理をプロセッサに行なわせるためのプログラムを作成す
ることができる極めて良好なプログラム作成装置を提供
することができる。
As described in detail above, according to the present invention,
A signal processing engineer can easily create a program for causing a processor to perform desired signal processing without knowing the programming language or hardware architecture of the processor and without being aware of the arrangement of a plurality of processors. An extremely good program creation device can be provided.

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

【図1】この発明の一実施例を示す平面図。FIG. 1 is a plan view showing an embodiment of the present invention.

【図2】同実施例が適用されるワークステーションを示
すブロック構成図。
FIG. 2 is a block diagram showing a workstation to which the embodiment is applied;

【図3】同実施例の表示画面を示す平面図。FIG. 3 is a plan view showing a display screen of the embodiment.

【図4】同表示画面の詳細を示す平面図。FIG. 4 is a plan view showing details of the display screen.

【図5】同実施例の全体的な動作を示すフローチャー
ト。
FIG. 5 is a flowchart showing the overall operation of the embodiment.

【図6】同実施例の全体的な動作を示すフローチャー
ト。
FIG. 6 is a flowchart showing the overall operation of the embodiment.

【図7】同実施例の追加処理を示すフローチャート。FIG. 7 is a flowchart showing additional processing of the embodiment.

【図8】同実施例のプログラム作成処理を示すフローチ
ャート。
FIG. 8 is a flowchart showing a program creation process of the embodiment.

【図9】同追加処理の他の例を示すフローチャート。FIG. 9 is a flowchart showing another example of the additional processing.

【図10】同他の例における表示画面を示す平面図。FIG. 10 is a plan view showing a display screen in another example.

【図11】同プログラム作成処理の他の例を示すフロー
チャート。
FIG. 11 is a flowchart showing another example of the program creating process.

【図12】プロセッサの配列を示すブロック構成図。FIG. 12 is a block diagram showing an arrangement of processors.

【図13】コントロール駆動方式のプロセッサの構造を
示すブロック構成図。
FIG. 13 is a block diagram showing the structure of a control-driven processor.

【図14】データ駆動方式のプロセッサの構造を示すブ
ロック構成図。
FIG. 14 is a block diagram showing the structure of a data-driven processor.

【図15】同データ駆動方式のプロセッサ同志の接続を
示すブロック構成図。
FIG. 15 is a block diagram showing the connection between processors of the same data drive system.

【図16】同データ駆動方式のプロセッサの詳細な構造
を示すブロック構成図。
FIG. 16 is a block diagram showing a detailed structure of the data-driven processor.

【図17】プロセッサで構成したFIRフィルタを示す
ブロック構成図。
FIG. 17 is a block diagram showing an FIR filter constituted by a processor.

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

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…マウス。
11: control device, 12: program memory, 13: data memory, 14: I / O port, 15: arithmetic device, 16
... FIFO memory, 17, 18 ... Processor, 19-2
2: Input terminal, 23, 24 ... Selector, 25: Data memory, 26: Program memory, 27: ALU, 28-
31 selector, 32-35 output terminal, 36 instruction decoder, 37-39 processor, 40 connection line, 41
... Workstation unit, 42. Display device, 43. Keyboard, 44. Mouse.

フロントページの続き (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 Continuation of front page (56) References JP-A-4-274518 (JP, A) Perez, "Graphical Development System for DSP Applications," Midcon '87 Conference Record (1987), P.S. 292-302, Proc. Of the 1990 IEICE Autumn National Convention, 1990-9. 6- 258-260 (58) Field surveyed (Int. Cl. 7 , DB name) G06F 9/06

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 それぞれ与えられたプログラムに応じた
所定の信号処理動作を行なう複数のプロセッサを行列状
に配置し、各プロセッサにそれぞれ予め設定されたプロ
グラムを与えて動作させることによって、全体として所
望の信号処理を行なわせるようにした信号処理システム
の、前記各プロセッサに与えるプログラムを作成するプ
ログラム作成装置において、前記プロセッサに種々の信
号処理動作を行なわせるために与えるべき複数のプログ
ラムが格納される記憶手段と、この記憶手段に格納され
た複数のプログラムによって前記プロセッサが実行し得
る各信号処理内容にそれぞれ対応する複数の回路用図形
を表示する第1の表示手段と、この第1の表示手段で表
示された複数の回路用図形から所望の回路用図形を選択
する選択手段と、この選択手段で選択された回路用図形
を、予め行列状に設定されそれぞれが前記プロセッサに
対応する複数の表示領域のなかの所望の領域に表示させ
る第2の表示手段と、この第2の表示手段の各表示領域
に表示された各回路用図形に対応したプログラムを前記
記憶手段から取り出し、各回路用図形が表示された表示
領域の行及び列に基づいて、各表示領域に対応するプロ
セッサに与えるプログラム作成手段とを具備してなるこ
とを特徴とするプログラム作成装置。
1. A plurality of processors that perform a predetermined signal processing operation according to a given program are arranged in a matrix, and a predetermined program is given to each processor to operate the processor. In a signal processing system for performing the above signal processing, in a program creating apparatus for creating a program to be given to each processor, a plurality of programs to be given to cause the processor to perform various signal processing operations are stored. Storage means; first display means for displaying a plurality of circuit graphics respectively corresponding to the respective signal processing contents executable by the processor by a plurality of programs stored in the storage means; and first display means. Selecting means for selecting a desired circuit graphic from the plurality of circuit graphics displayed in Second display means for displaying the circuit graphic selected by the selection means in a desired area among a plurality of display areas which are set in a matrix in advance and each correspond to the processor, and the second display means The program corresponding to each circuit graphic displayed in each display area of the means is retrieved from the storage means, and based on the row and column of the display area in which each circuit graphic is displayed, a program corresponding to each display area is sent to a processor corresponding to each display area. And a program creating means.
【請求項2】 前記第2の表示手段は、前記表示領域に
表示されている回路用図形を所定の角度づつ回転させる
手段を有し、前記プログラム作成手段は、前記回路用図
形の回転量に基づいて、該回路用図形に対応する前記プ
ロセッサに与えるプログラムのデータ入出力ポートを書
き換える手段を有することを特徴とする請求項1記載の
プログラム作成装置。
2. The method according to claim 1, wherein the second display unit includes a unit configured to rotate the circuit graphic displayed in the display area by a predetermined angle, and the program creating unit controls the rotation amount of the circuit graphic. 2. The program creating apparatus according to claim 1, further comprising means for rewriting a data input / output port of a program provided to the processor corresponding to the circuit graphic based on the circuit graphic.
【請求項3】 前記第2の表示手段は、前記表示領域
に、複数の前記回路用図形を重ね置きすることができ、
前記プログラム作成手段は、前記回路用図形が重ねられ
た順序に基づいて、該回路用図形に対応する前記プロセ
ッサに与えるプログラムのメモリのアドレスを書き換え
る手段を有することを特徴とする請求項1記載のプログ
ラム作成装置。
3. The display device according to claim 2, wherein the second display unit superimposes the plurality of circuit figures on the display area,
2. The program creating means according to claim 1, further comprising means for rewriting a memory address of a program to be given to the processor corresponding to the circuit graphic based on an order in which the circuit graphics are superimposed. Program creation device.
JP3059547A 1991-02-28 1991-02-28 Program creation device Expired - Fee Related JP3029307B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3059547A JP3029307B2 (en) 1991-02-28 1991-02-28 Program creation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3059547A JP3029307B2 (en) 1991-02-28 1991-02-28 Program creation device

Publications (2)

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

Family

ID=13116396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3059547A Expired - Fee Related JP3029307B2 (en) 1991-02-28 1991-02-28 Program creation device

Country Status (1)

Country Link
JP (1) JP3029307B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3171361B2 (en) * 1994-05-06 2001-05-28 ヤマハ株式会社 DSP programming device

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 (en) 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 (en) Program creation device
EP2319015A1 (en) Partitioning-based performance analysis for graphics imaging
JPH0756725A (en) Program creation support method
Reader et al. Trends in image display systems
JP3238728B2 (en) Image processing device and user terminal device
JPS59100972A (en) Color picture processor
JPS62186365A (en) Method of pattern generation
JPH0991127A (en) Image processing programming method
JPH0764524A (en) Image display device
JPH0361212B2 (en)
JPH0329059A (en) Method and equipment for processing image
JPH01123369A (en) Presentation device
JP3493016B2 (en) Different-scale map management device
JPH10222471A (en) Graph drawing apparatus, graph drawing processing method, and recording medium storing graph drawing processing program
JPH10228511A (en) Table creation processor and table creation processing method
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