(57)【要約】  対基板作業機用制御装置は、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うべく、対基板作業機を制御するプロセッサと、プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、を備え、トレースデータ出力装置は、プロセッサから出力されるトレースデータが一時記憶されるトレースレジスタと、トレースレジスタに一時記憶されたトレースデータが書き込まれるリングバッファと、リングバッファに書き込まれたトレースデータを間引いてリアルタイムで出力する出力制御部と、を有する。
2019003276.tif 000002
【特許請求の範囲】
【請求項１】
対基板作業機を制御するプロセッサと、
前記プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、
を備え、
前記トレースデータ出力装置は、
前記プロセッサから出力される前記トレースデータが一時記憶されるトレースレジスタと、
前記トレースレジスタに一時記憶された前記トレースデータが書き込まれるリングバッファと、
前記リングバッファに書き込まれた前記トレースデータを間引いてリアルタイムで出力する出力制御部と、
を有する、対基板作業機用制御装置。
【請求項２】
前記対基板作業機用制御装置は、更に、メインメモリを備え、
前記メインメモリは、
前記プロセッサにより前記プロセッサが用いる制御データが書き込まれる制御データ領域と、
前記リングバッファに書き込まれた全ての前記トレースデータがダイレクトメモリアクセス機能により定期的に転送されて書き込まれるトレースデータ領域と、
を有する、請求項１に記載の対基板作業機用制御装置。
【請求項３】
前記トレースデータは、トレースデータ本体と、前記トレースデータ本体の種類を示す種類データと、を含み、
前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータの前記種類データに従って該トレースデータを間引いて出力する、請求項１又は２に記載の対基板作業機用制御装置。
【請求項４】
前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、予め選択された種類に関する前記トレースデータを出力する、請求項３に記載の対基板作業機用制御装置。
【請求項５】
前記対基板作業機は、対基板作業に用いる複数の稼働部品を有し、
前記種類データは、前記複数の稼働部品それぞれに応じて設定されており、
前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、前記複数の稼働部品のうち予め定めた稼働部品に関する前記トレースデータを出力する、請求項４に記載の対基板作業機用制御装置。
【請求項６】
前記種類データは、システムソフトウェア及びアプリケーションソフトウェアを含むソフトウェアの種類に応じて設定されており、
前記出力制御部は、前記リングバッファに書き込まれた前記トレースデータのうち、予め定めたソフトウェアに関する前記トレースデータを出力する、請求項４に記載の対基板作業機用制御装置。
【請求項７】
前記対基板作業機用制御装置は、前記対基板作業機に搭載される制御基板に設けられている、請求項１乃至６の何れか一項に記載の対基板作業機用制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、対基板作業機用制御装置に関する。
【背景技術】
【０００２】
電子部品などの部品を基板に装着する対基板作業機がある。対基板作業機は、基板を搬送する基板搬送装置と、部品を供給する部品供給装置と、部品を基板に移載する部品移載装置と、を備えている。対基板作業機は、基板の搬送、部品の供給、及び部品の移載などの多数の工程を経て基板生産を行う。また、対基板作業機は、種類やサイズの異なる多品種の基板の生産に対応することができる。【０００３】
ところで、リアルタイムトレースを実行可能なシステムが知られている（例えば特許文献１参照）。このシステムにおいて、ＣＰＵは、トレースデータをメモリコントローラを介して所定の記憶領域に書き込む。ＣＰＵ及びメモリコントローラは、ＩＣチップに内蔵されている。所定の記憶領域は、ＩＣチップに着脱可能なＤＲＡＭに内蔵されている。記憶領域に書き込まれたトレースデータは、読み出し回路によりメモリコントローラからＤＲＡＭへの制御信号の検出タイミングに従って読み出され、リアルタイムトレースに用いられる。このリアルタイムトレースを上記の対基板作業機に適用することは、デバッグや不具合解析を行って基板生産を適切に実行させるうえで重要である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−９１２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のトレースシステムでは、リアルタイムトレースを実現するのに、ＣＰＵによる記憶領域へのトレースデータの書き込みと、読み出し回路による記憶領域からのトレースデータの読み出し出力と、をそれぞれ行うことが必要である。しかしながら、トレース出力は、装置の通常動作時には不要であり、デバッグ時や不具合解析時にのみ必要であると共に、また、特定の解析等のために必要な一部のトレースデータのみを出力できれば十分であるので、記憶領域に記憶されているトレースデータのすべてが読み出し出力されかつその読み出し出力が常時行われるものとすると、装置側で通常動作時に無駄な処理が発生して装置全体での処理負荷が増大してしまう。【０００６】
本明細書は、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことが可能な対基板作業機用制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本明細書は、対基板作業機を制御するプロセッサと、前記プロセッサから出力されるトレースデータを外部へ出力するトレースデータ出力装置と、を備え、前記トレースデータ出力装置は、前記プロセッサから出力される前記トレースデータが一時記憶されるトレースレジスタと、前記トレースレジスタに一時記憶された前記トレースデータが書き込まれるリングバッファと、前記リングバッファに書き込まれた前記トレースデータを間引いてリアルタイムで出力する出力制御部と、を有する、対基板作業機用制御装置を開示する。【０００８】
本開示によれば、プロセッサが生成して出力したトレースデータが、トレースデータ出力装置のトレースレジスタに一時記憶され、その後にリングバッファに書き込まれると、そのトレースデータは間引かれてリアルタイムで出力される。従って、対基板作業機用制御装置によれば、プロセッサからトレースデータ出力装置のリングバッファに記憶されたトレースデータのすべてを外部へ常時出力するものではないので、不要なトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に係る対基板作業機用制御装置が搭載される対基板作業機の構成図である。
【図２】本実施形態の対基板作業機を備えるシステムの構成図、及び、対基板作業機用制御装置のブロック図である。
【図３】本実施形態のメインメモリの内部構成図、及び、データ領域ごとのデータの構造図である。
【図４】本実施形態の対基板作業機用制御装置のブロック図である。
【図５】本実施形態の対基板作業機用制御装置において実行される処理の一例のフローチャートである。
【発明を実施するための形態】
【００１０】
１．対基板作業機用制御装置の構成
本実施形態に係る対基板作業機用制御装置１０の構成について、図１〜図５を参照して説明する。本実施形態の対基板作業機用制御装置１０は、回路基板などの基板に対して部品を装着する対基板作業機１に搭載される制御装置である。対基板作業機１は、図１に示す如く、部品装着機として、基板搬送装置２０と、部品供給装置３０と、部品移載装置４０と、を備えている。尚、対基板作業機１は、例えば部品供給装置３０のパーツフィーダに替えて搭載される各種の処理装置（例えば、部品へ転写するフラックスを供給する供給装置や廃棄部品を回収する回収装置，装着ヘッドのノズルを清掃する清掃装置）を備えるものであってよい。
【００１１】
基板搬送装置２０は、基板２を搬送する装置である。基板搬送装置２０は、一対のガイドレール２１，２２と、基板保持部２３と、を有している。基板搬送装置２０は、基板保持部２３に載置され、間隔を空けて互いに平行に配置された一対のガイドレール２１，２２により搬送方向Ｘに案内される基板２を、コンベアベルトの輪転により搬送方向Ｘに向けて搬送する。基板２は、基板搬送装置２０により所定の部品装着位置まで搬送されると、クランプ装置により位置決めされる。基板搬送装置２０のガイドレール２１，２２や基板保持部２３，クランプ装置は、基板２の種類やサイズ，形状等に応じて適宜交換可能であってよい。
【００１２】
部品供給装置３０は、基板２に装着する部品を所定の供給位置Ｌまで供給する装置である。部品供給装置３０は、パーツフィーダ３１を有している。パーツフィーダ３１は、対基板作業機１の本体側に設けられたスロットに着脱可能かつ交換可能に保持される。パーツフィーダ３１は、部品を複数個収容したキャリアテープが巻回されるリール３２を着脱可能かつ回転可能に保持している。リール３２は、部品の種類ごとに設けられている。パーツフィーダ３１は、リール３２に巻回されているキャリアテープを電動モータの回転により部品が所定の供給位置Ｌへ向けて走行させる。
【００１３】
部品移載装置４０は、所定の供給位置Ｌまで供給された部品を、所定の部品装着位置に位置決めされている基板２に向けて移載する装置である。部品移載装置４０は、Ｙ軸スライダ４１と、Ｘ軸スライダ４２と、装着ヘッド４３と、を有している。
【００１４】
Ｙ軸スライダ４１は、Ｙ軸サーボモータにより、基板２の搬送方向Ｘに直交する方向（以下、直交方向Ｙと称す。）に延びるガイドレールに沿って移動可能な装置である。Ｘ軸スライダ４２は、Ｙ軸スライダ４１に搬送方向Ｘへ向けて移動可能に取り付けられている。Ｘ軸スライダ４２は、Ｙ軸スライダ４１の直交方向Ｙへの移動に伴ってそのＹ軸スライダ４１に一体でその直交方向Ｙへ位置移動されると共に、Ｘ軸サーボモータにより基板２の搬送方向Ｘへ位置移動される装置である。
【００１５】
装着ヘッド４３は、Ｘ軸スライダ４２に取り付けられている。装着ヘッド４３は、Ｘ軸スライダ４２の搬送方向Ｘへの移動に伴って搬送方向Ｘに移動すると共に、Ｙ軸スライダ４１の直交方向Ｙへの移動に伴って直交方向Ｙに移動する。装着ヘッド４３には、ロータリヘッドが回転可能に設けられている。このロータリヘッドには、スピンドルが上下動可能に設けられている。このスピンドルの先端には、吸着ノズル又は把持チャック（以下、ノズル等４４と称す。）が着脱可能に取り付けられている。ノズル等４４は、所定の供給位置Ｌに到達した部品を吸着或いは把持により保持する部材である。装着ヘッド４３には、複数のノズル等４４が保持可能である。装着ヘッド４３やノズル等４４は、対象部品の種類やサイズ，形状等に応じて適宜変更可能である。
【００１６】
ノズル等４４は、装着ヘッド４３のロータリヘッドに対して、搬送方向Ｘ及び直交方向Ｙの双方に直交する上下方向Ｚに位置移動可能である。ノズル等４４は、部品供給装置３０の所定の供給位置Ｌに到達した部品を負圧などを用いて吸着把持すると共に、その吸着把持した部品をその解除により、基板搬送装置２０により所定の部品装着位置に位置決めされた基板２上に載置する。
【００１７】
対基板作業機１は、上記の対基板作業機用制御装置１０（以下、単に、制御装置１０と称す。）を備えている。制御装置１０は、対基板作業機１の本体側に取り付けられており、対基板作業機１に搭載される制御基板１ａ上に設けられている。制御装置１０は、コンピュータを主体に構成されており、電源から電力供給されることにより制御処理を実行することが可能である。制御装置１０は、図２に示す如く、ＣＰＵ（Central Processing Unit）１１と、メインメモリ１２と、を備えている。
【００１８】
ＣＰＵ１１は、対基板作業機１が設置される工場内などに設けられた管理サーバ５０に通信接続されている。ＣＰＵ１１は、また、装置２０，３０，４０の各稼働部品（例えば、複数保持されたパーツフィーダ３１のうちから使用すべきパーツフィーダ３１や、装着ヘッド４３に装着された複数のノズル等４４のうちから使用すべきノズル等４４）に接続されている。尚、各装置２０，３０，４０それぞれが自己の稼働部品を制御する制御装置を有する場合は、ＣＰＵ１１が各稼働部品に直接に接続されることに代えて、ＣＰＵ１１がそれらの制御装置に通信接続されていればよい。
【００１９】
ＣＰＵ１１は、管理サーバ５０から生産ジョブをダウンロードし、その生産ジョブに従って基板２の生産を行う。具体的には、予め記憶している生産ジョブと使用装置や使用部品との関係に従って、使用すべき各装置２０，３０，４０の稼働部品を複数のうちから選択し、その稼働部品が装着された装着位置を特定し、その稼働部品に対して作動指令を行う。
【００２０】
このＣＰＵ１１による処理は、制御プログラムに基づいて実行される。ＣＰＵ１１は、一枚の基板２を生産するうえで、制御プログラムに従って、基板保持部２３に載置された基板２を基板搬送装置２０で搬送方向Ｘに搬送し、その基板２に装着する部品を部品供給装置３０で所定の供給位置Ｌまで供給し、その部品を部品移載装置４０で吸着把持して基板２に移載する処理を実行する。ＣＰＵ１１は、例えば、装着ヘッド４３の位置やノズル等４４の吸着や把持等の動作を制御する場合、制御プログラムに従って、装着ヘッド４３などに設けられる各種センサの出力する信号や画像信号に基づいてノズル等４４の制御量を演算し、そのノズル等４４に対して制御指令を行う。これにより、ノズル等４４の位置や吸着等が制御される。
【００２１】
ＣＰＵ１１は、アドレスバス及びデータバスによって構成されたバス１３を介してメインメモリ１２に接続されている。メインメモリ１２は、図３に示す如く、制御データ領域１２ａを有している。制御データ領域１２ａは、ＣＰＵ１１の実行する制御プログラムにおいて使用する制御データが書き込まれかつ読み出されるメモリ領域である。制御データ領域１２ａは、複数ｍ個の制御データを記憶することが可能である。
【００２２】
ＣＰＵ１１は、上記した制御プログラムにおいて使用する制御データを、バス１３を介して直接にメインメモリ１２へ送信して、メインメモリ１２の制御データ領域１２ａに書き込む。制御データは、制御データ領域１２ａに書き込まれて記憶される。また、ＣＰＵ１１は、制御データ領域１２ａに記憶されている制御データを適宜読み出して制御プログラムにおいて使用する。
【００２３】
ＣＰＵ１１は、また、デバッグ時や不具合解析時のトレースに必要なトレースデータを生成する。ＣＰＵ１１の生成するトレースデータは、トレースデータ本体と、識別子情報と、を含む。トレースデータ本体は、ＣＰＵ１１で実行される各ステップの命令、データ値、データアドレス、プログラムカウンタなどのレジスタの値などである。また、識別子情報は、そのトレースデータ内のトレースデータ本体の種類を示す種類データであって、例えば、対基板作業機１による対基板作業に用いる稼働部品（例えば、装着ヘッド４３やパーツフィーダ３１など）の識別情報や、ＣＰＵ１１が実行したソフトウェアの種類（例えば、ＯＳ層で利用されるシステムソフトウェアやアプリ層で利用されるアプリケーションソフトウェアなど）の情報などを含む。尚、識別子情報は、トレースデータのヘッダ部に格納されるのがよい。
【００２４】
メインメモリ１２は、図３に示す如く、上記の制御データ領域１２ａとは別に、トレースデータ領域１２ｂを有している。トレースデータ領域１２ｂは、ＣＰＵ１１の実行により生成されたトレースデータが書き込まれるメモリ領域である。トレースデータ領域１２ｂは、複数（ｎ−ｍ）個のトレースデータを記憶可能であり、リングバッファ状に構成されている。ＣＰＵ１１の生成したトレースデータは、後に詳述する手順で、メインメモリ１２のトレースデータ領域１２ｂに書き込まれて記憶される。
【００２５】
制御装置１０は、また、リアルタイムトレースチップ（以下、ＲＴＣと称す。）１４を備えている。ＲＴＣ１４は、ＣＰＵ１１が生成してＣＰＵ１１から出力されたトレースデータの外部への出力を制御するトレースデータ出力装置である。ＲＴＣ１４は、バス１３を介してＣＰＵ１１に接続されており、メインメモリ１２と並列でＣＰＵ１１に接続されている。ＲＴＣ１４は、図４に示す如く、トレースレジスタ１００と、リングバッファ１１０と、ＤＭＡ（Direct Memory Access；ダイレクトメモリアクセス）コントローラ１２０と、出力制御部１３０と、ＦＩＦＯ（First In First Out）１４０と、を有している。
【００２６】
ＣＰＵ１１は、上記の生成したトレースデータをバス１３を介してＲＴＣ１４のトレースレジスタ１００に書き込む。トレースレジスタ１００は、一フレーム分のトレースデータを一時記憶することが可能である。トレースレジスタ１００は、リングバッファ１１０に接続されている。トレースレジスタ１００に一時記憶されたトレースデータは、リングバッファ１１０に転送されて書き込まれる。リングバッファ１１０は、リングバッファ状に構成されている。リングバッファ１１０は、所定複数個の領域に区分けされており、複数個のトレースデータを同時に記憶することが可能である。
【００２７】
リングバッファ１１０は、ＤＭＡコントローラ１２０に接続されている。ＤＭＡコントローラ１２０は、リングバッファ１１０に記憶されているトレースデータをバス１３を介してメインメモリ１２のトレースデータ領域１２ｂに書き込むＤＭＡ転送を定期的に行う部位である。ＤＭＡコントローラ１２０は、書込カウンタレジスタ１２１と、ＤＭＡ用アドレスレジスタ１２２と、タイマ１２３と、ＤＭＡ開始レジスタ１２４と、ＤＭＡレジスタ１２５と、を有している。
【００２８】
書込カウンタレジスタ１２１は、トレースレジスタ１００からリングバッファ１１０へのトレースデータの書き込み回数をカウントするレジスタである。書込カウンタレジスタ１２１のカウント値は、トレースレジスタ１００からリングバッファ１１０へトレースデータが一回書き込まれるごとに一カウントずつインクリメントされる。ＤＭＡ用アドレスレジスタ１２２は、後述のＤＭＡレジスタ１２５によるトレースデータのＤＭＡ転送のためのアドレスを指示するレジスタである。ＤＭＡ用アドレスレジスタ１２２は、書込カウンタレジスタ１２１のカウント値に基づいて、次のＤＭＡ転送で送る必要のあるトレースデータのアドレス範囲を更新し、そのアドレス範囲をＤＭＡレジスタ１２５に対して指示する。
【００２９】
タイマ１２３は、前回、ＤＭＡレジスタ１２５によるトレースデータのＤＭＡ転送が行われた時点からの時間を計数する。タイマ１２３の計数時間及び書込カウンタレジスタ１２１のカウント値はそれぞれ、ＤＭＡ開始レジスタ１２４に出力される。ＤＭＡ開始レジスタ１２４は、タイマ１２３の計数時間及び書込カウンタレジスタ１２１のカウント値に基づいて、ＤＭＡレジスタ１２５に対してリングバッファ１１０からのトレースデータのＤＭＡ転送の開始を指示するレジスタである。
【００３０】
ＤＭＡ開始レジスタ１２４によるＤＭＡ転送指示は、予め定められた所定周期で或いはその所定周期内においてリングバッファ１１０が満杯になった際に行われる。すなわち、ＤＭＡ開始レジスタ１２４は、タイマ１２３の計数時間すなわち前回ＤＭＡ転送からの時間が所定周期に達した場合、或いは、その計数時間がその所定周期に達していなくても、書込カウンタレジスタ１２１のカウント値がリングバッファ１１０が満杯になる所定数に達した場合に、ＤＭＡレジスタ１２５に対してＤＭＡ転送の開始を指示する。
【００３１】
ＤＭＡ開始レジスタ１２４によるＤＭＡ転送指示は、書込カウンタレジスタ１２１に供給される。書込カウンタレジスタ１２１のカウント値は、ＤＭＡ開始レジスタ１２４によるＤＭＡ転送指示が供給された場合にリセットされる。以後、書込カウンタレジスタ１２１のカウント値は、ゼロからリングバッファ１１０へのトレースデータの書き込みごとに一カウントずつインクリメントされる。
【００３２】
ＤＭＡレジスタ１２５は、リングバッファ１１０に記憶されているトレースデータを、メインメモリ１２にＤＭＡ転送してそのトレースデータ領域１２ｂに書き込む。ＤＭＡレジスタ１２５によるＤＭＡ転送は、ＤＭＡ開始レジスタ１２４からのＤＭＡ転送の開始指示に従って行われる。そして、そのＤＭＡ転送は、ＤＭＡ用アドレスレジスタ１２２から指示されたアドレス範囲のトレースデータをリングバッファ１１０から読み出してメインメモリ１２のトレースデータ領域１２ｂへ書き込むものである。
【００３３】
リングバッファ１１０は、また、出力制御部１３０に接続されている。出力制御部１３０は、トレースレジスタ１００からリングバッファ１１０に転送されて書き込まれたトレースデータの外部出力を制御する部位である。出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータを間引いて出力することができる。出力制御部１３０によるトレースデータの間引き出力は、リングバッファ１１０に書き込まれたすべてのトレースデータのうち、予めその出力時点で設定められている対象種類のトレースデータのみを出力するものである。尚、出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータを全く出力しないように制御できるものであってもよく、また、リングバッファ１１０に書き込まれたすべてのトレースデータを出力するように制御できるものであってもよい。
【００３４】
上記の出力されるトレースデータの対象種類は、トレースデータを扱う作業者による手作業で適宜選択可能である。例えば、作業者が装着ヘッド４３に関するリアルタイムトレースを希望する場合は、この対象種類は、装着ヘッド４３に関するトレースデータに設定される。また、作業者がアプリケーションソフトウェアに関するリアルタイムトレースを希望する場合は、この対象種類は、そのアプリケーションソフトウェアに関するトレースデータに設定される。
【００３５】
出力制御部１３０は、トレースレジスタ１００からリングバッファ１１０にトレースデータが転送されて書き込まれた場合に、その書き込まれたトレースデータが予めその時点で設定められている対象種類のトレースデータであるか否かを判別する。この判別は、トレースデータに含まれる識別子情報に基づいて行われる。出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータが対象種類のものでないと判別した場合は、そのトレースデータの出力を行わない。一方、出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータが対象種類のものであると判別した場合は、そのトレースデータを出力する。
【００３６】
出力制御部１３０は、ＦＩＦＯ１４０に接続されている。出力制御部１３０が出力したトレースデータは、ＦＩＦＯ１４０に入力される。ＦＩＦＯ１４０は、トレースデータをキューに格納することが可能である。ＦＩＦＯ１４０は、出力制御部１３０から入力したトレースデータをその入力順に外部へ出力する。複数個のトレースデータが同時に格納されたときは、そのＦＩＦＯ１４０に入力したタイミングの古い順にトレースデータが出力される。ＦＩＦＯ１４０の出力したトレースデータは、外部出力用インタフェース１５を介して外部装置６０に入力される。
【００３７】
外部装置６０は、作業者が視認可能な表示装置やトレースデータを記憶可能な大容量の外部記憶装置などである。外部装置６０は、制御装置１０の外部出力用インタフェース１５に無線又は有線で通信接続される。尚、外部装置６０は、図２に示す如く対基板作業機１の外部に配置されるものであってもよいし、また、対基板作業機１の内部に配置されるものであってもよい。
【００３８】
２．トレースデータの処理
次に、制御装置１０におけるトレースデータの処理について説明する。
制御装置１０において、ＣＰＵ１１は、トレースに必要なトレースデータを生成する（図５におけるステップＳ１００）。そして、ＣＰＵ１１は、生成したトレースデータを、ＲＴＣ１４のトレースレジスタ１００に書き込まれるようにバス１３へ送出する（ステップＳ１１０）。ＣＰＵ１１からバス１３へ送出されたトレースデータは、ＲＴＣ１４のトレースレジスタ１００に書き込まれる。トレースレジスタ１００にトレースデータが書き込まれると、そのトレースデータは、リングバッファ１１０に転送されて書き込まれる（ステップＳ１２０）。トレースレジスタ１００からリングバッファ１１０にトレースデータが書き込まれると、ＤＭＡコントローラ１２０の書込カウンタレジスタ１２１のカウント値が"１"だけインクリメントされる。
【００３９】
上記したＣＰＵ１１によるトレースレジスタ１００へのトレースデータの書き込み、トレースレジスタ１００からリングバッファ１１０へのトレースデータの転送、及び書込カウンタレジスタ１２１によるカウント値のインクリメントは、ＣＰＵ１１でトレースデータが生成されるごとに繰り返し行われる。
【００４０】
ＤＭＡ用アドレスレジスタ１２２は、書込カウンタレジスタ１２１のカウント値に基づいて、次のＤＭＡ転送で送る必要のあるトレースデータのアドレス範囲を更新し、そのアドレス範囲をＤＭＡレジスタ１２５に対して指示する。また、ＤＭＡ開始レジスタ１２４は、タイマ１２３の計数時間及び書込カウンタレジスタ１２１のカウント値に基づいて、ＤＭＡレジスタ１２５に対してリングバッファ１１０からのトレースデータのＤＭＡ転送の開始を指示する。このＤＭＡ転送指示は、例えば、前回ＤＭＡ転送からの時間が所定周期に達した場合、或いは、その時間がその所定周期に達していなくても、書込カウンタレジスタ１２１のカウント値がリングバッファ１１０が満杯になる所定数に達した場合に、実行される。
【００４１】
ＤＭＡレジスタ１２５は、ＤＭＡ開始レジスタ１２４からトレースデータのＤＭＡ転送の開始指示を受けると、ＤＭＡ用アドレスレジスタ１２２から指示されたアドレス範囲のトレースデータを、リングバッファ１１０から読み出したうえでメインメモリ１２のトレースデータ領域１２ｂへＤＭＡ機能により転送して書き込む（ステップＳ１３０）。
【００４２】
このように、制御装置１０においては、ＣＰＵ１１の生成したトレースデータをメインメモリ１２に書き込むうえで、ＣＰＵ１１はそのトレースデータをＲＴＣ１４のトレースレジスタ１００に書き込む処理を行うのみでよい。ＣＰＵ１１がトレースデータをＲＴＣ１４のトレースレジスタ１００に書き込むと、そのトレースデータは、そのトレースレジスタ１００からリングバッファ１１０を経由して、ＤＭＡコントローラ１２０のＤＭＡレジスタ１２５によりＤＭＡ転送されてメインメモリ１２に書き込まれる。
【００４３】
トレースデータのメインメモリ１２への書き込みは、ＣＰＵ１１からメインメモリ１２に直接に行われるものではなく、まずＣＰＵ１１からＲＴＣ１４のトレースレジスタ１００への書き込みが行われ、その書き込み後にリングバッファ１１０を介して間接的にメインメモリ１２に行われるものである。ＣＰＵ１１によるデータ書込みがトレースレジスタ１００に行われるものであれば、メインメモリ１２に行われるものに比してそのデータ書込みが高速に行われる。従って、制御装置１０によれば、ＣＰＵ１１の生成したトレースデータをメインメモリ１２に適切に記憶させつつ、その記憶実現のためのＣＰＵ１１によるトレースデータの書き込みに要する時間を減らすことができる。
【００４４】
また、制御装置１０において、トレースデータがＲＴＣ１４のトレースレジスタ１００からリングバッファ１１０に書き込まれると、出力制御部１３０は、そのトレースデータに含まれる識別子情報に基づいてそのトレースデータが出力対象種類のトレースデータであるか否かを判別する（ステップＳ１４０）。そして、出力制御部１３０は、そのトレースデータが出力対象種類のトレースデータであると判別した場合に、そのトレースデータをＦＩＦＯ１４０へ出力する。ＦＩＦＯ１４０は、出力制御部１３０から入力したトレースデータをその入力順に外部出力用インタフェース１５を介して外部装置６０へ向けて出力する（ステップＳ１５０）。
【００４５】
このように、制御装置１０においては、ＣＰＵ１１が生成したトレースデータをＲＴＣ１４のトレースレジスタ１００に書き込む処理を行うことで、そのトレースデータをリングバッファ１１０及びＦＩＦＯ１４０を介して外部装置６０へリアルタイムで出力することができる。従って、制御装置１０によれば、トレースデータを外部装置６０へリアルタイムで出力するうえで、ＣＰＵ１１がトレースデータをＲＴＣ１４のトレースレジスタ１００に書き込む処理を行うだけでよいので、ＣＰＵ１１での処理負荷を増やすことなくトレースデータのリアルタイム出力を実現することができる。
【００４６】
これらにより、制御装置１０によれば、ＣＰＵ１１がトレースデータをＲＴＣ１４のトレースレジスタ１００に書き込む処理を行うことで、そのトレースレジスタ１００からリングバッファ１１０へのトレースデータの自動転送後に、そのトレースデータのメインメモリ１２（具体的には、トレースデータ領域１２ｂ）への書き込みと、そのトレースデータのリアルタイム出力と、の双方を実現することができる。このため、そのメインメモリ１２への書き込みとリアルタイム出力とがそれぞれ別々のトリガで開始されるのを回避することができ、処理負荷の低減ないし処理の簡素化を図ることができる。
【００４７】
また、制御装置１０は、ＣＰＵ１１が生成したトレースデータを間引いて外部装置６０へ出力する。すなわち、制御装置１０から外部装置６０へ出力されるトレースデータは、ＣＰＵ１１からＲＴＣ１４のトレースレジスタ１００に書き込まれたすべてのトレースデータのうち予め設定された対象種類のものである。このため、出力すべきトレースデータの対象種類を適切に設定することで、ＣＰＵ１１が生成したすべてのトレースデータのうち不要な種類のトレースデータを除外して必要な種類のトレースデータのみを外部装置６０へ出力することができる。
【００４８】
例えば、作業者がパーツフィーダ３１に関するリアルタイムトレースを希望する場合は、出力対象種類のトレースデータとしてパーツフィーダ３１に関するトレースデータが設定されることで、ＣＰＵ１１が生成したすべてのトレースデータのうちそのパーツフィーダ３１に関するトレースデータのみが制御装置１０から外部装置６０へリアルタイム出力される。また、作業者がシステムソフトウェア（ＯＳ層）に関するリアルタイムトレースを希望する場合は、出力対象種類のトレースデータとしてシステムソフトウェアに関するトレースデータが設定されることで、ＣＰＵ１１が生成したすべてのトレースデータのうちそのシステムソフトウェアに関するトレースデータのみが制御装置１０から外部装置６０へリアルタイム出力される。
【００４９】
従って、制御装置１０によれば、ＣＰＵ１１からＲＴＣ１４側に記憶されたトレースデータのすべてを外部装置６０へ常時出力するものではなく、不要な種類のトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができ、デバッグや不具合解析の効率を向上させることができる。
【００５０】
以上、説明したことから明らかなように、本実施形態の制御装置１０は、対基板作業機１を制御するＣＰＵ１１と、ＣＰＵ１１から出力されるトレースデータを外部へ出力するＲＴＣ１４と、を備える。ＲＴＣ１４は、ＣＰＵ１１から出力されるトレースデータが一時記憶されるトレースレジスタ１００と、トレースレジスタ１００に一時記憶されたトレースデータが書き込まれるリングバッファ１１０と、リングバッファ１１０に書き込まれたトレースデータを間引いてリアルタイムで出力する出力制御部１３０と、を有する。
【００５１】
この構成によれば、ＣＰＵ１１が生成して出力したトレースデータが、ＲＴＣ１４のトレースレジスタ１００に一時記憶され、その後にリングバッファ１１０に書き込まれると、そのトレースデータは間引かれてリアルタイムで出力される。従って、制御装置１０によれば、ＣＰＵ１１からＲＴＣ１４のリングバッファ１１０に記憶されたトレースデータのすべてを外部（具体的には、外部装置６０）へ常時出力するものではないので、不要なトレースデータの無駄な出力処理が発生するのを回避することができる。このため、トレースデータを出力するうえでの処理負荷を軽減することができ、これにより、リアルタイムトレースの実行を処理負荷を軽減しつつ適切に行うことができる。
【００５２】
制御装置１０において、制御装置１０は、更に、メインメモリ１２を備える。メインメモリ１２は、ＣＰＵ１１によりＣＰＵ１１が用いる制御データが書き込まれる制御データ領域１２ａと、リングバッファ１１０に書き込まれた全てのトレースデータがＤＭＡ機能により定期的に転送されて書き込まれるトレースデータ領域１２ｂと、を有する。
【００５３】
この構成によれば、メインメモリでの制御データが書き込まれる領域とトレースデータが書き込まれる領域とが分かれる。このため、メインメモリ内でＣＰＵ１１が用いる制御データとＣＰＵ１１が生成したトレースデータとが混在するのを防止することができる。また、ＣＰＵ１１がＲＴＣ１４のトレースレジスタ１００にトレースデータを書き込む処理を行うだけで、トレースレジスタ１００からリングバッファ１１０へのトレースデータの転送後、そのトレースデータのメインメモリ１２のトレースデータ領域１２ｂへの書き込みと、そのトレースデータのリアルタイム出力と、の双方が実現される。このため、処理負荷の低減ないし処理の簡素化を図ることができる。更に、ＣＰＵ１１によるデータ書込みがトレースレジスタ１００に行われるので、メインメモリ１２に行われるものに比してそのデータ書込みが高速に行われる。このため、ＣＰＵ１１の生成したトレースデータをメインメモリ１２に適切に記憶させつつ、その記憶実現のためのＣＰＵ１１によるトレースデータの書き込みに要する時間を減らすことができる。
【００５４】
制御装置１０において、トレースデータは、トレースデータ本体と、そのトレースデータ本体の種類を示す識別子情報と、を含む。出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータの種類データに従ってトレースデータを間引いて出力する。また、出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータのうち、予め選択された種類に関するトレースデータを出力する。
【００５５】
この構成によれば、出力制御部１３０によるトレースデータの外部出力が、そのトレースデータの種類に従って間引いて行われる。このため、リアルタイム出力されるトレースデータを特定種類のデータに限定することができる。
【００５６】
具体的には、対基板作業機１は、対基板作業に用いる装置２０，３０，４０の複数の稼働部品を有する。上記のトレースデータの種類データは、それら複数の稼働部品それぞれに応じて設定されている。そして、出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータのうち、それら複数の稼働部品のうち予め定めた稼働部品に関するトレースデータを出力する。また、上記のトレースデータの種類データは、システムソフトウェア及びアプリケーションソフトウェアを含むソフトウェアの種類に応じて設定されている。そして、出力制御部１３０は、リングバッファ１１０に書き込まれたトレースデータのうち、予め定めたソフトウェアに関するトレースデータを出力する。
【００５７】
更に、制御装置１０は、対基板作業機１に搭載される制御基板１ａに設けられている。この構成によれば、対基板作業機１側に設けられた制御装置１０でリアルタイムトレース出力及びメインメモリ１２へのトレースデータ記憶等を実行することができる。
【００５８】
尚、本発明は、上述した実施形態や変形例に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の変更を施すことが可能である。
【符号の説明】
【００５９】
１：対基板作業機、２：基板、１０：対基板作業機用制御装置、１１：ＣＰＵ（プロセッサ）、１２：メインメモリ、１３：バス、１４：ＲＴＣ（リアルタイムトレースチップ）、２０：基板搬送装置、３０：部品供給装置、４０：部品移載装置、５０：管理サーバ、６０：外部装置、１００：トレースレジスタ、１１０：リングバッファ、１２０：ＤＭＡコントローラ、１３０：出力制御部、１４０：ＦＩＦＯ。
【図１】
2019003276.tif 000003
【図２】
2019003276.tif 000004
【図３】
2019003276.tif 000005
【図４】
2019003276.tif 000006
【図５】
2019003276.tif 000007
【国際調査報告】
2019003276.tif 000008
2019003276.tif 000009