JP3686380B2 - Device controller - Google Patents

Device controller Download PDF

Info

Publication number
JP3686380B2
JP3686380B2 JP2002025218A JP2002025218A JP3686380B2 JP 3686380 B2 JP3686380 B2 JP 3686380B2 JP 2002025218 A JP2002025218 A JP 2002025218A JP 2002025218 A JP2002025218 A JP 2002025218A JP 3686380 B2 JP3686380 B2 JP 3686380B2
Authority
JP
Japan
Prior art keywords
gate array
configuration
internal logic
device controller
fpga
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 - Lifetime
Application number
JP2002025218A
Other languages
Japanese (ja)
Other versions
JP2003229760A (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.)
Hitachi High Tech Corp
Original Assignee
Hitachi High Technologies 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 Hitachi High Technologies Corp filed Critical Hitachi High Technologies Corp
Priority to JP2002025218A priority Critical patent/JP3686380B2/en
Publication of JP2003229760A publication Critical patent/JP2003229760A/en
Application granted granted Critical
Publication of JP3686380B2 publication Critical patent/JP3686380B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Microcomputers (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)
  • Logic Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、大規模装置の全体を制御する装置コントローラに係り、特に、アップグレードや部品改廃など、内部回路を頻繁に変更するのに好適な装置コントローラに関する。
【0002】
【従来の技術】
半導体製造の分野で使われている製造・検査・評価装置や、医療の分野で使われている自動分析装置などの大規模装置では、特定の機能を有する複数の基板を用いて装置内制御システムを構成する方法が良く知られている。これは、装置の機能を1枚の基板で実現しようとすると基板が大きくなりすぎ、処理が複雑になるため、複数の基板に機能を分散することによって、装置自体の保守やバージョンアップを容易にしている。
【0003】
このような考え方は一般的であり、業界で標準化されている。基板を構成するための規格、例えば、VMEバス(Versa Module Europe:IEEE1014標準の非同期バス)やコンパクトPCIバス等を共通バスとしてマザーボードに収納している。この共通バスにそれぞれ並列に接続された複数個のスロットを設け、各々のスロットに基板を挿入したラック実装形態であるバックプレーン収納型のシステムが、装置内制御システムに広く適用されている。
【0004】
このVMEバス等の規格に準じた基板を用いた装置内の制御システムでは、装置全体の管理を行う基板であるマスタモジュールと、各機能を実現する基板である複数のスレーブモジュールで構成される。VMEバス等の構成や制御は、マスタモジュールが管理しているため、装置全体の機能や構成もマスタモジュールが把握することになる。マスタモジュールはMPUを搭載して、組み込まれたプログラムにより装置全体の制御を行うことから、装置コントローラ、または、組込みコントローラと呼ばれている。
【0005】
図10に、装置コントローラの従来例を示す。装置コントローラ基板21は、VMEバスのコネクタ2132、2133をバックプレーン20に接続することにより、動作電力が供給される。基板21はMPU2100を内蔵し、主記憶メモリ2120に組み込まれたプログラムにより動作する。装置コントローラ基板21のフロントパネルには、フィールドデバイス等と接続するため、Ethernet、USB,RS−232C、DeviceNetなどの通信I/Fのコネクタを配置している。通信I/Fの専用チップを制御するために、MPU2100と専用チップ間をPCIバス2102とローカルバス2103で接続している。
【0006】
このように、装置内をネットワーク化して、バックプレーンに収納するI/O基板を少なくし、収納する基板数を減らすシステムが適用されてきている。
【0007】
一方、大規模LSIの製作にFPGA(Field_Programmable_Gate_Array)を利用する技術が知られている。特開2000−34652公報には、FPGAが容易に内部論理回路の追加・変更を行えるところから、LSIを製作する前にFPGAを用いたエミュレーションを行い、開発時の論理不良を修正することが記載されている。また、大規模LSIをエミュレーションする場合には、複数のFPGAを用いてエミュレーションを行っている。
【0008】
【発明が解決しようとする課題】
上述のように、装置コントローラは装置全体の制御を行い、装置の処理能力を向上させたり、装置の稼働率を向上させたりするので、高性能化とともに高信頼化が要求されている。
【0009】
このため、主記憶メモリのエラー訂正機能など、RAS機能を実現する回路等を内蔵して信頼性を向上する必要がある。さらに、PCIバスやローカルバスのI/Fも内蔵することから、コントローラ基板内では、システム制御を行う回路を大規模LSI(ASIC)で製作しなければ、1枚の基板内にすべての回路を入れることができなかった。
【0010】
複数枚の基板で実現する場合は、各基板で共用する回路部や基板間の接続信号数が多い等の問題があり、複数の基板で実現することが困難となってきている。このため、コントローラ基板内に大規模なシステム制御LSIを内蔵することは必須となっているが、システム制御LSIをASICで製作する場合に、以下に示す問題があった。
(1)メモリなどの主要部品の改廃、新規I/Fの追加などへの対応ができない。また、MPUの性能アップに伴う、MPU_I/Fの変更などの対策も含めて、3−5年単位にシステム制御LSIの作り直しが発生するため、アップグレードが困難で、大量生産を行わなければLSIの開発費を回収できない。
(2)開発後に内部回路の論理ミスが発覚した場合、再製に多大な費用と時間を費やしてしまうため、LSI開発に伴うリスクが大きい。
【0011】
本発明の目的は、上記した従来技術の問題点に鑑み、容易に回路の追加・変更が可能な複数個のFPGAを用いてシステム制御LSIを構成することにより、開発費の低減と再製の容易な装置コントローラを提供することにある。
【0012】
【課題を解決するための手段】
上記目的を達成する本発明は、大規模装置の複数のフィールドデバイスと伝送線で接続し、マイクロプロセッサを搭載して装置全体の制御を行う装置コントローラにおいて、装置コントローラ基板に、内部論理回路をコンフィグレーションする方式の複数のゲートアレイ(FPGA)を搭載し、前記内部論理回路を機能毎に分割して、前記複数のゲートアレイに分散して格納することを特徴とする。
【0013】
前記内部論理回路の分割される機能は、たとえば主記憶メモリの制御部、PCIバスの制御部およびローカルバス制御部を含む。
【0014】
また、前記ゲートアレイの内部論理回路に、コンフィグレーションが完了したことを示す完了信号を出力する回路と、前記ゲートアレイのコンフィグレーションが規定時間内に完了するかを監視する手段を設け、前記規定時間内に前記ゲートアレイのコンフィグレーションが完了しない場合に、再度、コンフィグレーションを行うように構成したことを特徴とする。
【0015】
さらに、前記ゲートアレイ間を複数の信号線で結線し、前記ゲートアレイのコンフィグレーションの完了後に、前記信号線を用いてゲートアレイ間で相互チェックする回路を設けたことを特徴とする。
【0016】
上記発明で、前記内部論理回路を機能毎に分割したコンフィグレーションデータは、各ゲートアレイと接続されるROM、または一つのゲートアレイと接続されるROM及び前記MPUと共有される共用メモリに格納していることを特徴とする。また、前記複数のゲートアレイのコンフィグレーションは、並行して実施されるように構成したことを特徴とする。
【0017】
また、本発明は、大規模装置の複数のフィールドデバイスと伝送線で接続し、マイクロプロセッサを搭載して装置全体の制御を行う装置コントローラにおいて、装置コントローラ基板内に、内部論理回路をコンフィグレーションする方式の一つメインゲートアレイと少なくとも一つのサブゲートアレイを搭載し、前記メインゲートアレイは、メイン用に分割されてROMに格納されたコンフィグレーションデータを前記メインゲートアレイにローディングする手段と、サブ用に分割されて前記マイクロプロセッサと共有する共有メモリに格納された少なくとも一つのコンフィグレーションデータを前記サブゲートアレイにローディングする手段を設け、前記内部論理回路を機能毎に分割して各ゲートアレイに格納することを特徴とする。
【0018】
前記共有メモリは、実装状態で、前記サブ用のコンフィグレーションデータのデータエリアを前記マイクロプロセッサから読み/書き可能に構成されていることを特徴とする。
【0019】
さらに、上記の発明において、前記ゲートアレイ間に定義可能な複数の信号線を結線し、機能毎に分割された内部論理回路が一つのゲートアレイの容量を超える場合に、その超過分を他のゲートアレイの特定エリアに格納するとともに前記信号線を定義し、一つのゲートアレイを超えて前記内部論理回路を格納できるように構成したことを特徴とする。
【0020】
本発明によれば、システム制御LSIの機能を分割して、各ゲートアレイに搭載することで、保守性を向上することが可能である。また、複数個のゲートアレイに分割することで、搭載できる論理規模が小さく安価なチップを使用することができる。
【0021】
また、ゲートアレイのコンフィグレーションが並行して実施されることにより、全体的なコンフィグレーション時間を縮小でき、装置コントローラの立ち上げ時間を短縮できる。これにより、大容量のFPGAのもつ欠点、高価で且つコンフィグレーション時間が長くなってしまう欠点を補うことが可能である。
【0022】
また、各ゲートアレイのコンフィグレーション状態を制御回路で監視し、一定時間内にコンフィグレーションが完了しない場合や、各ゲートアレイ間でコンフィグレーションを相互にチェックし、コンフィグレーションエラーが検出された場合に、再度、コンフィグレーションを行うので、ゲートアレイの信頼性を向上できる。
【0023】
本発明の他の態様によれば、コンフィグレーションデータを格納するROMを使用するゲートアレイは一つのみとしている。そのゲートアレイが立ち上がった後、そのゲートアレイを経由して、MPUのソフトウェアを格納している共有メモリ(不揮発性メモリ)内にある他のコンフィグレーションデータで他のゲートアレイのコンフィグレーションを実施する。これにより、各ゲートアレイのコンフィグレーションが順番に実施されるので、電源立ち上げ時に基板全体の消費電力が一時的に増大することを回避できる。
【0024】
また、すべてのゲートアレイのコンフィグレーションが完了するまで、MPUが動作できないと、装置コントローラの立ち上げ時間が長くなる。そこで、最初に立ち上げるゲートアレイが全体のコンフィグレーション完了を管理し、MPUがその状態を監視しながら、完了したゲートアレイに関する診断を実行している。これにより、装置コントローラ全体の立ち上げ時間を短く、かつ、ゲートアレイを使用した信頼性の高い装置コントローラを提供できる。
【0025】
また、上記発明では、MPUがアクセスできる共有メモリに、ゲートアレイのコンフィグレーションデータを格納できるようにしたので、装置内にコントローラ基板を実装した後においても、ユーザの論理回路をゲートアレイに追加・変更することが可能になる。
【0026】
【発明の実施の形態】
以下、図面を用いて本発明の実施形態について説明する。図7−9は本発明を適用する大規模装置の概略構造と装置内の各機器の配置を示したものである。ここでの大規模装置とは、半導体製造の分野で使われている製造装置や検査装置、理化学の分野で使われている分析装置や自動化装置などに代表される。装置内には多数のI/Oを有し、製造、検査、分析などの処理を行うための搬送制御や、センサ/アクチュエータの制御が行なわれている。
【0027】
図7は大規模装置の構造の一例を示す。装置内には、モータ、バルブ、センサなどの多数のフィールドデバイスが分散配置されている。装置コントローラ2内のI/Oモジュールとフィールドデバイス1が配線5’で接続され、装置コントローラ2の装置コントローラ基板21からI/Oモジュールを介してフィールドデバイス1を制御している。オペレーターズコンソール3は、装置コントローラ2と接続され、操作員が、製造、検査、分析などの処理を行うための起動指令などの操作を行うとともに、各処理の進行状況を表示する。
【0028】
図8は大規模装置の他の例を示し、装置コントローラ2内の装置コントローラ基板21と多数のフィールドデバイス1は、装置内ネットワーク5のみで接続され、省配線化が行われている。
【0029】
フィールドデバイス1は、伝送路5を介して順番に装置コントローラ2とディジタル信号で双方向通信を行い、検出した物理量の送信、制御値の受信などの処理を行うことにより、装置内の各部の制御が行なわれる。
【0030】
装置内ネットワーク5とパーソナルコンピュータなどの外部補助機器を接続するための接続端子6も設けられている。なお、図示は省略しているが、フィールドデバイス1には1個または複数個のI/Oが接続されており、I/O制御と通信処理を行っている。このため、装置コントローラ2は、小型化や単機能化が可能な構成となっている。
【0031】
図9は、VMEバスを使用した装置内制御システムのラック内の構成図である。VMEバス対応のバックプレーン20、装置コントローラ基板21及びスレーブモジュールからなる。スレーブモジュールはRS−232C等の拡張通信モジュール22、パルスモータの制御処理を行うI/Oモジュール23、センサ/アクチュエータの制御処理を行うI/Oモジュール24などである。
【0032】
装置コントローラ基板21は、ラック内で取り付け可能な枚数は1枚で、取り付けるスロットは指定されている。スレーブモジュール基板であるI/Oモジュール基板22−24は、装置の規模に応じて複数枚実装することが可能であり、ラック内には将来の機能拡張を考慮して増設用のスロットが設けられている。これら基板の動作電力は、バックプレーン20内を亘っている+5Vなどの電源ラインを介して供給されている。
【0033】
ラックの内部に実装される基板は、ラック内のバックプレーン20に実装されているVMEバスを介して接続される。また、各種I/Oモジュールは、VMEバスを介して接続される装置コントローラ21の指示に従い、I/O制御の処理を行っている。このため、フィールドデバイスは、I/Oモジュールを介して、装置コントローラ基板21のMPUが制御する構成となっている。
【0034】
図1は、装置コントローラ基板の内部構成を示す。上述のように、装置コントローラ基板21は、VMEバスのコネクタ2132、2133をバックプレーン20に接続することにより、バックプレーン20から動作電力が供給される構成となっている。高性能なMPU2100を内蔵し、通常、主記憶2120に組み込まれたプログラムに従い動作を行っている。
【0035】
装置コントローラ基板21のフロントパネルには、フィールドデバイス等と接続するため、Ethernet、USB,RS−232C、DeviceNetなどの通信I/F用のコネクタを配置している。Ethernetはコンソール3や上位システムと、USBはF/Dなどの補助記憶装置等と、RS−232Cはバーコードリーダーや装置の周辺機器と接続されている。また、DeviceNetは装置内ネットワークとして使用するためフィールドデバイス1と接続されている。
【0036】
この通信I/Fは、通信専用コントローラから各通信固有のMAU(Medium_Attachment_Unit)を介して外部の機器と通信を行う構成となっていて、各コントローラチップはPCIバスやローカルバス対応となっている。このため、装置コントローラ基板21の内部には、MPU2100のアドレスバス,データバス,および制御線からなるMPUバス2101の他に、PCIバス2102とローカルバス2103が布線されている。
【0037】
また、バックプレーン20とVMEバスで接続するため、VME−PCIバスブリッジ2130をPCIバス2102に接続した構成としている。VMEバスの処理性能を向上させる必要がある場合は、VME−PCIバスブリッジ2130をMPUバス2101に直接、接続する構成に変更してもよい。
【0038】
主記憶メモリ2120は、複数個のSDRAM(Synchronous_DRAM)で構成され、MPU2100が実行するためのプログラムやそのワークエリアとして使用される。主記憶を読み書きするデータのエラー訂正用のデータエリアも確保されている。
【0039】
不揮発性メモリ2180は、装置の制御プログラムや装置コントローラ基板21の診断・保守プログラム、および、イニシャル・ローディングプログラムなどのプログラムを格納する。また、装置コントローラ基板21のエラー情報や保守情報、及びEthernetのIPアドレスなど基板固有の情報を格納・保管するもので、共有メモリとして構成され、FROMやFRAM、またはバッテリバックアップされたSRAMなどを用いている。
【0040】
また、RTC2190はカレンダー機能を持った時計であり、MPU2100はローカルバス2103を経由してその情報を読み出したり、RTC2190を設定したりする。
【0041】
システム制御LSI2111、2112、2113は、複数個使用するため小規模の安価なFPGA(Field Programmable Gate Array)を採用し、機能毎に分割されている。各々のシステム制御LSIは、SRAMタイプのFPGAであり、電源投入時にコンフィグレーションROM2114、2115、2116に格納されている論理データをFPGA内のSRAMにロードする。
【0042】
図2はシステム制御LSIによる装置コントローラの詳細構成を示す。各システム制御LSI2111、2112、2123はそれぞれFPGAで構成されている。電源投入時に外部に設置されたROM2114、2115、2116に格納された論理データを、コンフィグレーション回路2201、2202、2203を介してFPGA内の論理回路にローディングする。
【0043】
本実施例では3つのFPGAが各システム制御LSIを構成している。システム制御LSI2111がPCIバスの制御部2204、システム制御LSI2112が主記憶メモリの制御部2205、システム制御LSI2113がローカルバス制御部2106を有し、それぞれ外部と接続されている。
【0044】
各FPGAには、論理回路へのローディングが正確に行われたかを診断するため、自己診断回路2207、2208、2209と相互診断回路2210、2211、2212が組み込まれている。コンフィグレーション回路2201、2202、2203からのコンフィグレーション完了信号と、自己診断回路及び相互診断回路からの準備完了信号が、制御信号発生回路2213、2214、2215に入力される。そして、各FPGAから制御回路2104にコンフィグレーションが正常になされたか否かを示す信号が出力される。
【0045】
自己診断回路2207、2208、2209は、FPGA内の内部論理回路に擬似入力を加え、その出力信号で内部論理が正常にローディングされたか否かを判定する手段を有している。相互診断回路2210、2211、2212はFPGAが外部に出力する信号から、内部論理が正常にローディングされたか否かを判定する手段を有している。
【0046】
制御回路2104はタイマーを内蔵しており、一定時間内にコンフィグレーションが完了しない場合や、FPGAからコンフィグレーションエラー信号が出力された場合に、MPU2100に対してコンフィグレーションエラーを出力する。この場合、図示を省略しているが、MPU2100は制御回路2104を介して、該当するFPGAをリセットする動作を行い、再び当該FPGAをコンフィグレーションさせるように動作する。
【0047】
本実施例では3つのFPGAが同時にコンフィグレーションを実施しているが、消費電力が一時的に増大することが問題になる場合は順番に行うようにしてもよい。
【0048】
本実施例によれば、安価な回路構成で、容易に回路の追加変更が可能な装置コントローラ基板を製作できる。このことから、装置コントローラ基板21内の部品の改廃への対応や、アップグレードの対応などが容易になる効果もある。
【0049】
さらに、本実施例では、複数の小規模FPGAが同時にコンフィグレーションを行うため、トータル的なコンフィグレーション時間が短縮でき、1つの大規模FPGAで構成する場合に比べ、装置コントローラ基板21全体の立ち上げ時間を短縮できる。
【0050】
本実施例においては、FPGAのコンフィグレーション時間を制御回路2104で監視し、規定時間内にコンフィグレーションが完了しない場合、再度、FPGAのコンフィグレーションを実施するシーケンスを制御回路2104に設けている。これにより、コンフィグレーションの高信頼性を確保するとともに、FPGAとコンフィグレーションROM間のデータ転送や、その後のFPGA内のSRAMへの書き込み時におけるノイズエラーの影響もチェックできる。
【0051】
本実施例では、コンフィグレーションが完了したことを示す信号を制御回路2104に出力する論理回路を各FPGAに内蔵している。なお、コンフィグレーションをリトライするシーケンスは、制御回路2104でなく、MPU2100から実施することも可能である。
【0052】
また、本実施例では、FPGA間を複数の信号線で結び、コンフィグレーション完了後、FPGAが実際に使用する論理回路の信号で相互チェックを行うシーケンスを各FPGAに内蔵している。その相互チェック結果から、異常があった場合に、再度、コンフィグレーションを行うことで、さらに、信頼性を向上させている。これにより、FPGAのコンフィグレーションの高信頼性が確保できるシステム制御LSIが提供できる。
【0053】
次に、本実施例の動作を説明する。装置コントローラは電源投入後、各FPGAのコンフィグレーションを実施する。このとき、不揮発性メモリ2180に内蔵された自己診断プログラムを制御回路2104で実行しながら監視する。異常が無ければ、イニシャルローディングプログラムを実行し、不揮発性メモリ2180に格納されている装置の制御プログラムを主記憶メモリ2120にローディングし、実行するものである。装置の制御プログラムは、不揮発性メモリからではなく、EthernetまたはUSBなどを経由して、外部に格納されているプログラムをローディングすることもできる。
【0054】
図3はFPGAのコンフィグレーション動作を監視する処理フロー図である。まず、コンフィグレーション開始により、各FPGAは自己のタイマーカウントを始め(S101)、FPGAのコンフィグレーションを監視し(S102)、コンフィグレーション完了信号が全て入力されたか判断する(S103)。未入力があればタイマーカウント終了まで(S014)、監視を継続する。タイマーカウントが終了していれば、エラーを表示して、該当FPGAをリセットし(S105)、再度コンフィグレーションをやり直す。
【0055】
全FPGAからコンフィグレーションの完了信号が入力されれば、FPGA相互チェックを開始し(S106)、相互チェック結果を判定し(s107)、エラーがなければ完了通知を出して(s108)、コンフィグレーションを終了する。エラーがあれば、ステップS105からやり直しとなる。
【0056】
本実施例では、各FPGA間を定義可能な複数の信号線で結ぶ構成としてもよい。これによれば、1個のFPGAに搭載可能な論理回路の容量を超えた場合、他のFPGAで部分的に代替することが可能になるので、小規模で安価なFPGAを採用できるという利点がある。
【0057】
次に、本発明の装置コントローラに関する他の実施例を説明する。
【0058】
図4は他の実施例による装置コントローラの構成図である。この例では、システム制御LSIのコンフィグレーションに関係する構成以外は、図1の構成と同様である。
【0059】
図4において、システム制御LSI2113のコンフィグレーションは、コンフィグレーションROM2116の論理データをFPGAにロードする形態である。システム制御LSI2111、2112は、不揮発性メモリ2180に上述のプログラムや情報データと共に格納されている論理データを、システム制御LSI2113を介して伝送される。不揮発性メモリ2180はメモリアドレス毎に、システム制御LSI2111、2112の論理データを分類して確保している。これにより、システム制御LSI2111、2112のコンフィグレーションROMを省略できる。
【0060】
また、MPU2100はバス2101を経由して不揮発性メモリ2180をアクセスできる。従って、不揮発性メモリ2180に格納されているシステム制御LSI2111、2112の論理データを、Ethernetなどの通信I/Fを介して、基板実装状態で変更できる。
【0061】
図5は、図4の装置コントローラにおけるシステム制御LSIの詳細構成を示している。システム制御LSI2113をメインFPGAとし、システム制御LSI2111、2112をサブFPGAとしている。メインFPGAは図1の場合と同様に、ROM2116に格納されている論理データをローディングすることでコンフィグレーションを行う。サブFPGAは不揮発性メモリ2180の特定のエリアに格納されたFPGAの論理データを、ローカルバス2130経由でメインFPGAのデータ転送回路2216を介して、ローディングされる。
【0062】
また、各FPGA間には任意に定義可能な複数の信号線が接続されている。FPGA内の論理が大きくなり、一つのFPGAに入り切らなくなった場合に、上記信号線で接続された他のFPGAに容量オーバ分の論理をローディングし、信号線を定義することで、FPGAの枠を超えた機能分割が可能になる。なお、各FPGAには、FPGAの枠を超えて使用することが可能なユーザ論理回路の追加エリア2217、2218を確保している。
【0063】
図6に、本実施例による装置コントローラのコンフィグレーション動作の処理フローを示す。
【0064】
コンフィグレーション開始で、メインFPGAのリセットを解除し、タイマーカウントを開始する(S201)。以後、メインFPGAのコンフィグレーションを監視し(S202)、完了信号が入力されるまで繰り返す。もし、タイマーカウントが終了となれば、メインFPGAのコンフィグレーションのエラー表示を行い(S205)、再度S201から繰り返す。
【0065】
S203で、コンフィグレーションの完了信号が入力されると、サブFPGAのコンフィグレーションを開始し(S206)、メインFPGAの場合と同様に行う。S208で、他の全てのFPGAのコンフィグレーション完了信号が得られると、図3の場合と同様にFPGA相互チエックシーケンスを開始し(S210)、エラーが無ければ完了通知を出力する(S212)。
【0066】
これによれば、FPGAのコンフィグレーションを順番に制御するので、コンフィグレーション時の消費電力が一時的に増大することを回避できる。
【0067】
【発明の効果】
本発明は、装置コントローラのシステム制御LSIを複数のFPGAで構成し、分割された内部論理の健全性をチェックする機能を有しているので、装置コントローラの高信頼性を確保できる効果がある。また、装置コントローラのアップグレードや、回路変更・修正が容易に行える効果がある。
【0068】
さらに、本発明では、FPGA内にユーザ論理回路を追加することができるので、装置コントローラの用途により、外部からの通信などでカスタマイズできる効果もある。
【図面の簡単な説明】
【図1】本発明の第1の実施例による装置コントローラのブロック図。
【図2】第1の実施例によるシステム制御LSIの詳細を示すブロック図。
【図3】第1の実施例によるFPGAコンフィグレーション動作を示すフロー図。
【図4】本発明の第2の実施例による装置コントローラのブロック図。
【図5】第2の実施例によるシステム制御LSIの詳細を示すブロック図。
【図6】第2の実施例によるFPGAコンフィグレーション動作を示すフロー図。
【図7】本発明を適用する大規模装置の概略構造図。
【図8】本発明を適用する他の大規模装置の概略構造図。
【図9】装置コントローラのラック内の構成図。
【図10】従来の装置コントローラのブロック図。
【符号の説明】
1…フィールドデバイス、2…装置コントローラ、3…オペレーターズコンソール、5…装置内ネットワーク、6…外部接続コネクタ、20…バックプレーン、21…装置コントローラ基板、2100…MPU、2104…制御回路、2111〜2113…システム制御LSI(FPGA)、2114〜2116…コンフィグレーションROM、2120…主記憶メモリ、2180…不揮発性メモリ、2201〜2203…コンフィグレーション回路、2204…RCIバス制御回路、2205…主記憶制御回路、2206…ローカルバス制御回路、2207〜2209…自己診断回路、2210〜2212…相互診断回路、2213〜2215…制御信号発生回路、2216…データ転送回路。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an apparatus controller that controls the entire large-scale apparatus, and more particularly to an apparatus controller that is suitable for frequently changing internal circuits, such as upgrades and component revisions.
[0002]
[Prior art]
In large-scale devices such as manufacturing / inspection / evaluation devices used in the field of semiconductor manufacturing and automatic analyzers used in the medical field, an in-device control system uses multiple substrates with specific functions. The method of constructing is well known. This is because if the function of the device is to be realized with a single substrate, the substrate becomes too large and the processing becomes complicated. Therefore, by distributing the functions to multiple substrates, maintenance and upgrading of the device itself can be facilitated. ing.
[0003]
This way of thinking is common and standardized in the industry. A standard for configuring the board, for example, a VME bus (Versa Module Europe: IEEE1014 standard asynchronous bus), a compact PCI bus, and the like are accommodated in the motherboard as a common bus. A backplane storage type system having a rack mounting configuration in which a plurality of slots connected in parallel to the common bus are provided and a board is inserted into each slot is widely applied to the in-device control system.
[0004]
A control system in a device using a substrate conforming to a standard such as the VME bus is configured with a master module that is a substrate that manages the entire device and a plurality of slave modules that are substrates that realize each function. Since the master module manages the configuration and control of the VME bus and the like, the master module also knows the functions and configuration of the entire apparatus. The master module is called an apparatus controller or an embedded controller because the MPU is mounted and the entire apparatus is controlled by an embedded program.
[0005]
FIG. 10 shows a conventional example of a device controller. The device controller board 21 is supplied with operating power by connecting the VMEbus connectors 2132 and 2133 to the backplane 20. The board 21 incorporates an MPU 2100 and operates according to a program incorporated in the main memory 2120. On the front panel of the device controller board 21, communication I / F connectors such as Ethernet, USB, RS-232C, and DeviceNet are arranged for connection with field devices and the like. In order to control a dedicated chip for communication I / F, the MPU 2100 and the dedicated chip are connected by a PCI bus 2102 and a local bus 2103.
[0006]
As described above, a system has been applied in which the inside of the apparatus is networked to reduce the number of I / O substrates stored in the backplane and the number of substrates stored.
[0007]
On the other hand, a technique using an FPGA (Field_Programmable_Gate_Array) for manufacturing a large-scale LSI is known. Japanese Patent Laid-Open No. 2000-34652 describes that an FPGA can easily add or change an internal logic circuit, so that an FPGA is emulated before an LSI is manufactured to correct a logic failure during development. Has been. When emulating a large-scale LSI, emulation is performed using a plurality of FPGAs.
[0008]
[Problems to be solved by the invention]
As described above, the device controller controls the entire device to improve the processing capacity of the device and improve the operation rate of the device, so that high performance and high reliability are required.
[0009]
For this reason, it is necessary to improve reliability by incorporating a circuit or the like for realizing the RAS function such as an error correction function of the main memory. In addition, since the I / F of the PCI bus and local bus is also built-in, all circuits on a single board must be built in a controller board unless a circuit for system control is manufactured by a large-scale LSI (ASIC). I could n’t.
[0010]
In the case of realizing with a plurality of substrates, there are problems such as a large number of circuit signals shared by each substrate and the number of connection signals between the substrates, and it has become difficult to realize with a plurality of substrates. For this reason, it is indispensable to incorporate a large-scale system control LSI in the controller board. However, when the system control LSI is manufactured by ASIC, there are the following problems.
(1) It is impossible to cope with the revision and abolition of main parts such as a memory and the addition of a new I / F. In addition, system control LSIs will be rebuilt every 3-5 years, including measures such as MPU_I / F changes that accompany MPU performance improvements. Development costs cannot be recovered.
(2) When a logic error in the internal circuit is detected after development, a great deal of cost and time are spent on remanufacturing, and the risk associated with LSI development is great.
[0011]
An object of the present invention is to reduce the development cost and facilitate remanufacturing by configuring a system control LSI using a plurality of FPGAs that can easily add and change circuits in view of the above-mentioned problems of the prior art. Is to provide a simple device controller.
[0012]
[Means for Solving the Problems]
The present invention that achieves the above object is an apparatus controller that is connected to a plurality of field devices of a large-scale apparatus through transmission lines and controls the entire apparatus by mounting a microprocessor, and an internal logic circuit is configured on the apparatus controller board. A plurality of gate arrays (FPGAs) of a system to be installed are mounted, the internal logic circuit is divided for each function, and distributed and stored in the plurality of gate arrays.
[0013]
The divided functions of the internal logic circuit include, for example, a main memory control unit, a PCI bus control unit, and a local bus control unit.
[0014]
In addition, the internal logic circuit of the gate array is provided with a circuit for outputting a completion signal indicating that the configuration is completed, and means for monitoring whether the configuration of the gate array is completed within a specified time. If the configuration of the gate array is not completed within a time, the configuration is performed again.
[0015]
Furthermore, a circuit is provided in which the gate arrays are connected by a plurality of signal lines, and after the configuration of the gate arrays is completed, a circuit for performing mutual check between the gate arrays using the signal lines is provided.
[0016]
In the above invention, configuration data obtained by dividing the internal logic circuit for each function is stored in a ROM connected to each gate array, or a ROM connected to one gate array and a shared memory shared with the MPU. It is characterized by. The plurality of gate arrays may be configured in parallel.
[0017]
Further, the present invention configures an internal logic circuit in a device controller board in a device controller that is connected to a plurality of field devices of a large-scale device through transmission lines and has a microprocessor to control the entire device. One main gate array and at least one sub gate array are mounted, and the main gate array is divided into main and means for loading configuration data stored in ROM into the main gate array, Means for loading at least one configuration data stored in a shared memory shared with the microprocessor into the sub-gate array, and the internal logic circuit is divided into functions and stored in each gate array. It is characterized by that.
[0018]
The shared memory is configured to be able to read / write the data area of the configuration data for the sub from the microprocessor in a mounted state.
[0019]
Furthermore, in the above invention, when a plurality of definable signal lines are connected between the gate arrays, and the internal logic circuit divided for each function exceeds the capacity of one gate array, the excess is replaced with another The signal line is defined while being stored in a specific area of the gate array, and the internal logic circuit can be stored beyond one gate array.
[0020]
According to the present invention, it is possible to improve maintainability by dividing the function of the system control LSI and mounting it in each gate array. Further, by dividing the circuit into a plurality of gate arrays, an inexpensive chip having a small logical scale that can be mounted can be used.
[0021]
Further, since the configuration of the gate array is performed in parallel, the overall configuration time can be reduced, and the startup time of the device controller can be reduced. As a result, it is possible to compensate for the disadvantages of large-capacity FPGAs, which are expensive and require a long configuration time.
[0022]
In addition, the configuration status of each gate array is monitored by the control circuit, and when the configuration is not completed within a certain time, or when the configuration is checked between each gate array and a configuration error is detected. Since the configuration is performed again, the reliability of the gate array can be improved.
[0023]
According to another aspect of the present invention, there is only one gate array that uses a ROM for storing configuration data. After the gate array starts up, the other gate array is configured with other configuration data in the shared memory (nonvolatile memory) storing the MPU software via the gate array. . Thereby, since the configuration of each gate array is performed in order, it is possible to avoid a temporary increase in power consumption of the entire substrate when the power is turned on.
[0024]
Further, if the MPU cannot operate until the configuration of all gate arrays is completed, the startup time of the device controller becomes long. Therefore, the first gate array to be started up manages the completion of the entire configuration, and the MPU monitors the state of the gate array and executes a diagnosis on the completed gate array. As a result, it is possible to provide a highly reliable device controller that uses a gate array while shortening the startup time of the entire device controller.
[0025]
In the above invention, the configuration data of the gate array can be stored in the shared memory that can be accessed by the MPU. Therefore, the user logic circuit can be added to the gate array even after the controller board is mounted in the device. It becomes possible to change.
[0026]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 7-9 shows a schematic structure of a large-scale apparatus to which the present invention is applied and an arrangement of devices in the apparatus. The large-scale apparatus here is typified by a manufacturing apparatus and an inspection apparatus used in the field of semiconductor manufacturing, an analysis apparatus and an automation apparatus used in the field of physics and chemistry. The apparatus has a large number of I / Os, and transport control and sensor / actuator control for processing such as manufacturing, inspection, and analysis are performed.
[0027]
FIG. 7 shows an example of the structure of a large-scale apparatus. In the apparatus, a large number of field devices such as motors, valves, and sensors are distributed. The I / O module in the device controller 2 and the field device 1 are connected by a wiring 5 ′, and the field device 1 is controlled from the device controller board 21 of the device controller 2 via the I / O module. The operator's console 3 is connected to the apparatus controller 2, and an operator performs an operation such as a start command for performing processes such as manufacturing, inspection, and analysis, and displays the progress of each process.
[0028]
FIG. 8 shows another example of a large-scale apparatus. The apparatus controller board 21 in the apparatus controller 2 and a large number of field devices 1 are connected only by the in-apparatus network 5 to reduce wiring.
[0029]
The field device 1 performs two-way communication with the device controller 2 in order via the transmission path 5 by digital signals, and performs processing such as transmission of detected physical quantities and reception of control values, thereby controlling each part in the device. Is done.
[0030]
A connection terminal 6 for connecting the in-device network 5 to an external auxiliary device such as a personal computer is also provided. Although not shown, one or a plurality of I / Os are connected to the field device 1 to perform I / O control and communication processing. For this reason, the device controller 2 has a configuration that can be reduced in size and function.
[0031]
FIG. 9 is a configuration diagram in the rack of the in-device control system using the VME bus. It consists of a VMEbus-compatible backplane 20, a device controller board 21, and a slave module. The slave modules are an extended communication module 22 such as RS-232C, an I / O module 23 that performs control processing of a pulse motor, an I / O module 24 that performs control processing of a sensor / actuator, and the like.
[0032]
The number of device controller boards 21 that can be attached in the rack is one, and the slot to be attached is designated. A plurality of I / O module boards 22-24, which are slave module boards, can be mounted according to the scale of the device, and an expansion slot is provided in the rack in consideration of future function expansion. ing. The operating power of these substrates is supplied via a power line such as +5 V that runs through the backplane 20.
[0033]
A board mounted in the rack is connected via a VME bus mounted on the backplane 20 in the rack. Various I / O modules perform I / O control processing in accordance with instructions from the device controller 21 connected via the VME bus. For this reason, the field device is configured to be controlled by the MPU of the device controller board 21 via the I / O module.
[0034]
FIG. 1 shows the internal configuration of the device controller board. As described above, the device controller board 21 is configured such that operating power is supplied from the backplane 20 by connecting the VMEbus connectors 2132 and 2133 to the backplane 20. A high-performance MPU 2100 is built in and normally operates according to a program incorporated in the main memory 2120.
[0035]
On the front panel of the device controller board 21, connectors for communication I / F such as Ethernet, USB, RS-232C, and DeviceNet are arranged for connection with field devices and the like. The Ethernet is connected to the console 3 and the host system, the USB is connected to an auxiliary storage device such as an F / D, and the RS-232C is connected to a barcode reader and peripheral devices. DeviceNet is connected to the field device 1 for use as an in-device network.
[0036]
This communication I / F is configured to communicate with an external device via a communication-specific MAU (Medium_Attachment_Unit) from the communication dedicated controller, and each controller chip is compatible with a PCI bus or a local bus. For this reason, a PCI bus 2102 and a local bus 2103 are wired inside the device controller board 21 in addition to the MPU bus 2101 composed of the MPU 2100 address bus, data bus, and control line.
[0037]
Further, the VME-PCI bus bridge 2130 is connected to the PCI bus 2102 in order to connect to the backplane 20 via the VME bus. When it is necessary to improve the processing performance of the VME bus, the VME-PCI bus bridge 2130 may be changed directly to the MPU bus 2101.
[0038]
The main memory 2120 includes a plurality of SDRAMs (Synchronous_DRAMs) and is used as a program executed by the MPU 2100 and a work area thereof. A data area for error correction of data for reading and writing main memory is also secured.
[0039]
The nonvolatile memory 2180 stores programs such as a device control program, a diagnosis / maintenance program for the device controller board 21, and an initial loading program. Also, it stores and stores board-specific information such as error information and maintenance information of the device controller board 21 and Ethernet IP address, and is configured as a shared memory, using FROM, FRAM, battery-backed SRAM, or the like. ing.
[0040]
The RTC 2190 is a clock having a calendar function, and the MPU 2100 reads the information via the local bus 2103 and sets the RTC 2190.
[0041]
The system control LSIs 2111, 2112, and 2113 employ a small number of inexpensive field programmable gate arrays (FPGAs) for use, and are divided into functions. Each system control LSI is an SRAM type FPGA, and loads the logical data stored in the configuration ROMs 2114, 2115, and 2116 to the SRAM in the FPGA when the power is turned on.
[0042]
FIG. 2 shows a detailed configuration of a device controller based on the system control LSI. Each of the system control LSIs 2111, 2112, and 2123 is configured by an FPGA. The logic data stored in the ROMs 2114, 2115, and 2116 installed outside when the power is turned on is loaded into the logic circuit in the FPGA via the configuration circuits 2201, 2202, and 2203.
[0043]
In this embodiment, three FPGAs constitute each system control LSI. The system control LSI 2111 has a PCI bus control unit 2204, the system control LSI 2112 has a main memory control unit 2205, and the system control LSI 2113 has a local bus control unit 2106, which are connected to the outside.
[0044]
Each FPGA incorporates self-diagnosis circuits 2207, 2208, and 2209 and mutual diagnosis circuits 2210, 2211, and 2212 in order to diagnose whether the loading to the logic circuit has been performed correctly. A configuration completion signal from the configuration circuits 2201, 2202, 2203 and a preparation completion signal from the self-diagnosis circuit and the mutual diagnosis circuit are input to the control signal generation circuits 2213, 2214, 2215. Each FPGA outputs a signal indicating whether or not the configuration has been normally performed to the control circuit 2104.
[0045]
The self-diagnosis circuits 2207, 2208, and 2209 have means for adding a pseudo input to the internal logic circuit in the FPGA and determining whether or not the internal logic has been normally loaded with the output signal. The mutual diagnosis circuits 2210, 2211 and 2212 have means for determining whether or not the internal logic is normally loaded from the signal output from the FPGA to the outside.
[0046]
The control circuit 2104 has a built-in timer, and outputs a configuration error to the MPU 2100 when the configuration is not completed within a predetermined time or when a configuration error signal is output from the FPGA. In this case, although not shown, the MPU 2100 performs an operation of resetting the corresponding FPGA via the control circuit 2104 and operates to configure the FPGA again.
[0047]
In this embodiment, three FPGAs are simultaneously configured. However, when the power consumption temporarily increases, it may be performed in order.
[0048]
According to this embodiment, it is possible to manufacture a device controller board that can be easily added and changed with an inexpensive circuit configuration. Therefore, there is an effect that it becomes easy to cope with the revision and abolition of components in the device controller board 21 and the upgrade.
[0049]
Further, in the present embodiment, since a plurality of small-scale FPGAs perform configuration at the same time, the total configuration time can be shortened, and the entire apparatus controller board 21 can be started up as compared with the case of a single large-scale FPGA. You can save time.
[0050]
In this embodiment, the configuration time of the FPGA is monitored by the control circuit 2104. If the configuration is not completed within the specified time, a sequence for implementing the FPGA configuration is provided in the control circuit 2104 again. As a result, high reliability of the configuration can be secured, and the influence of noise errors during data transfer between the FPGA and the configuration ROM and subsequent writing to the SRAM in the FPGA can be checked.
[0051]
In this embodiment, each FPGA includes a logic circuit that outputs a signal indicating that the configuration is completed to the control circuit 2104. Note that the configuration retry sequence can be executed not by the control circuit 2104 but by the MPU 2100.
[0052]
In this embodiment, the FPGAs are connected to each other by a plurality of signal lines, and after the configuration is completed, a sequence for performing a mutual check with a signal of a logic circuit actually used by the FPGA is incorporated in each FPGA. From the mutual check result, if there is an abnormality, the configuration is performed again to further improve the reliability. Thereby, a system control LSI capable of ensuring high reliability of the FPGA configuration can be provided.
[0053]
Next, the operation of this embodiment will be described. The device controller configures each FPGA after power-on. At this time, the control circuit 2104 monitors the self-diagnostic program built in the nonvolatile memory 2180 while monitoring. If there is no abnormality, the initial loading program is executed, and the control program for the device stored in the nonvolatile memory 2180 is loaded into the main memory 2120 and executed. The device control program can be loaded from an externally stored program not via a nonvolatile memory but via Ethernet or USB.
[0054]
FIG. 3 is a process flow diagram for monitoring the configuration operation of the FPGA. First, when the configuration is started, each FPGA starts its timer count (S101), monitors the configuration of the FPGA (S102), and determines whether all the configuration completion signals are input (S103). If there is no input, monitoring is continued until the timer count ends (S014). If the timer count has ended, an error is displayed, the corresponding FPGA is reset (S105), and the configuration is performed again.
[0055]
If configuration completion signals are input from all the FPGAs, the FPGA mutual check is started (S106), the mutual check result is judged (s107), and if there is no error, a completion notice is issued (s108), and the configuration is completed. finish. If there is an error, the process starts again from step S105.
[0056]
In this embodiment, each FPGA may be connected by a plurality of signal lines that can be defined. According to this, when the capacity of a logic circuit that can be mounted on one FPGA is exceeded, it becomes possible to partially substitute with another FPGA, so that there is an advantage that a small and inexpensive FPGA can be adopted. is there.
[0057]
Next, another embodiment relating to the apparatus controller of the present invention will be described.
[0058]
FIG. 4 is a block diagram of an apparatus controller according to another embodiment. This example is the same as the configuration of FIG. 1 except for the configuration related to the configuration of the system control LSI.
[0059]
In FIG. 4, the configuration of the system control LSI 2113 is a form in which the logic data of the configuration ROM 2116 is loaded into the FPGA. The system control LSIs 2111 and 2112 transmit logical data stored in the nonvolatile memory 2180 together with the above-described program and information data via the system control LSI 2113. The nonvolatile memory 2180 classifies and secures the logical data of the system control LSIs 2111 and 2112 for each memory address. As a result, the configuration ROM of the system control LSIs 2111 and 2112 can be omitted.
[0060]
The MPU 2100 can access the nonvolatile memory 2180 via the bus 2101. Therefore, the logical data of the system control LSIs 2111 and 2112 stored in the nonvolatile memory 2180 can be changed in the board mounted state via the communication I / F such as Ethernet.
[0061]
FIG. 5 shows a detailed configuration of the system control LSI in the apparatus controller of FIG. The system control LSI 2113 is a main FPGA, and the system control LSIs 2111 and 2112 are sub-FPGAs. As in the case of FIG. 1, the main FPGA performs configuration by loading logical data stored in the ROM 2116. The sub-FPGA is loaded with the logical data of the FPGA stored in a specific area of the nonvolatile memory 2180 via the local bus 2130 via the data transfer circuit 2216 of the main FPGA.
[0062]
In addition, a plurality of arbitrarily defined signal lines are connected between the FPGAs. When the logic in the FPGA becomes large and cannot fit into one FPGA, the logic of the excess capacity is loaded into another FPGA connected by the signal line, and the signal line is defined. Functional division beyond Each FPGA has additional areas 2217 and 2218 of user logic circuits that can be used beyond the FPGA frame.
[0063]
FIG. 6 shows a processing flow of the configuration operation of the device controller according to this embodiment.
[0064]
At the start of configuration, the reset of the main FPGA is released and timer counting is started (S201). Thereafter, the configuration of the main FPGA is monitored (S202) and repeated until a completion signal is input. If the timer count ends, a main FPGA configuration error is displayed (S205), and the process is repeated from S201.
[0065]
When a configuration completion signal is input in S203, sub-FPGA configuration is started (S206), which is performed in the same manner as in the main FPGA. When the configuration completion signals of all other FPGAs are obtained in S208, the FPGA mutual check sequence is started as in the case of FIG. 3 (S210), and if there is no error, a completion notification is output (S212).
[0066]
According to this, since the FPGA configuration is controlled in order, it is possible to avoid a temporary increase in power consumption during the configuration.
[0067]
【The invention's effect】
According to the present invention, since the system control LSI of the device controller is constituted by a plurality of FPGAs and has a function of checking the soundness of the divided internal logic, there is an effect of ensuring high reliability of the device controller. In addition, there is an effect that the device controller can be upgraded and the circuit can be easily changed / modified.
[0068]
Furthermore, in the present invention, since a user logic circuit can be added in the FPGA, there is an effect that it can be customized by communication from the outside depending on the use of the device controller.
[Brief description of the drawings]
FIG. 1 is a block diagram of an apparatus controller according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing details of a system control LSI according to the first embodiment.
FIG. 3 is a flowchart showing an FPGA configuration operation according to the first embodiment.
FIG. 4 is a block diagram of an apparatus controller according to a second embodiment of the present invention.
FIG. 5 is a block diagram showing details of a system control LSI according to a second embodiment.
FIG. 6 is a flowchart showing an FPGA configuration operation according to the second embodiment.
FIG. 7 is a schematic structural diagram of a large-scale apparatus to which the present invention is applied.
FIG. 8 is a schematic structural diagram of another large-scale apparatus to which the present invention is applied.
FIG. 9 is a configuration diagram of a device controller in a rack.
FIG. 10 is a block diagram of a conventional device controller.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Field device, 2 ... Device controller, 3 ... Operator's console, 5 ... In-device network, 6 ... External connector, 20 ... Backplane, 21 ... Device controller board, 2100 ... MPU, 2104 ... Control circuit, 2111 to 2113 ... system control LSI (FPGA), 2114 to 2116 ... configuration ROM, 2120 ... main memory, 2180 ... nonvolatile memory, 2201 to 2203 ... configuration circuit, 2204 ... RCI bus control circuit, 2205 ... main memory control circuit, 2206 ... Local bus control circuit, 2207 to 2209 ... Self-diagnosis circuit, 2210 to 2212 ... Mutual diagnosis circuit, 2213 to 2215 ... Control signal generation circuit, 2216 ... Data transfer circuit.

Claims (7)

大規模装置の複数のフィールドデバイスと伝送線で接続し、マイクロプロセッサを搭載して装置全体の制御を行う装置コントローラにおいて、
装置コントローラ基板に、内部論理回路をコンフィグレーションする方式の複数のゲートアレイを搭載し、前記内部論理回路を機能毎に分割して、前記複数のゲートアレイに分散して格納すると共に、
前記ゲートアレイの内部論理回路に、コンフィグレーションが完了したことを示す完了信号を出力する回路と、前記ゲートアレイのコンフィグレーションが規定時間内に完了するかを監視する手段を設け、
前記規定時間内に前記ゲートアレイのコンフィグレーションが完了しない場合に、再度、コンフィグレーションを行うように構成したことを特徴とする装置コントローラ。
In a device controller that is connected to multiple field devices of a large-scale device by transmission lines and has a microprocessor to control the entire device,
A device controller board is equipped with a plurality of gate arrays configured to configure internal logic circuits, and the internal logic circuits are divided into functions, distributed and stored in the plurality of gate arrays ,
A circuit for outputting a completion signal indicating completion of configuration to the internal logic circuit of the gate array, and means for monitoring whether the configuration of the gate array is completed within a specified time;
An apparatus controller configured to perform configuration again when the configuration of the gate array is not completed within the specified time .
請求項1において、前記ゲートアレイ間を複数の信号線で結線し、
前記ゲートアレイのコンフィグレーションの完了後に、前記信号線を用いてゲートアレイ間で相互チェックする回路を設けたことを特徴とする装置コントローラ。
In Claim 1, the gate arrays are connected by a plurality of signal lines,
An apparatus controller comprising a circuit for performing mutual check between gate arrays using the signal lines after the configuration of the gate array is completed.
請求項1または2において、前記複数のゲートアレイのコンフィグレーションは、並行して実施されるように構成したことを特徴とする装置コントローラ。 3. The apparatus controller according to claim 1, wherein the plurality of gate arrays are configured in parallel. 請求項1、2または3において、前記内部論理回路を機能毎に分割したコンフィグレーションデータは、各ゲートアレイと接続されるROM、または一つのゲートアレイと接続されるROM及び前記MPUと共有される共用メモリに格納されることを特徴とする装置コントローラ。4. The configuration data obtained by dividing the internal logic circuit for each function according to claim 1 , 2 or 3 , is shared with a ROM connected to each gate array, or a ROM connected to one gate array and the MPU. A device controller that is stored in a shared memory. 大規模装置の複数のフィールドデバイスと伝送線で接続し、マイクロプロセッサを搭載して装置全体の制御を行う装置コントローラにおいて、
装置コントローラ基板内に、内部論理回路をコンフィグレーションされる一つのメインゲートアレイと少なくとも一つのサブゲートアレイを搭載し、
前記メインゲートアレイは、メイン用に分割されROMに格納されたコンフィグレーションデータを前記メインゲートアレイにローディングする手段と、サブ用に分割され前記マイクロプロセッサと共有する共有メモリ内に格納された少なくとも一つのコンフィグレーションデータを前記サブゲートアレイにローディングする手段を設け、前記内部論理回路を機能毎に分割して各ゲートアレイに格納することを特徴とする装置コントローラ。
In a device controller that is connected to multiple field devices of a large-scale device by transmission lines and has a microprocessor to control the entire device,
In the device controller board, one main gate array and at least one sub-gate array configured with internal logic circuits are mounted.
The main gate array has means for loading configuration data divided for main and stored in the ROM into the main gate array, and at least one stored in a shared memory divided for sub and shared with the microprocessor. A device controller comprising means for loading one configuration data into the sub-gate array, and the internal logic circuit is divided for each function and stored in each gate array.
請求項5において、前記共有メモリは、実装状態で、前記サブ用のコンフィグレーションデータのデータエリアを前記マイクロプロセッサから読み/書き可能に構成されることを特徴とする装置コントローラ。6. The apparatus controller according to claim 5 , wherein the shared memory is configured to be able to read / write the data area of the configuration data for the sub from the microprocessor in a mounted state. 請求項1〜のいずれかにおいて、前記ゲートアレイ間に定義可能な複数の信号線を結線し、機能毎に分割された内部論理回路が一つのゲートアレイの容量を超える場合に、その超過分を他のゲートアレイの特定エリアに格納するとともに前記信号線を定義し、一つのゲートアレイを超えて前記内部論理回路を格納できるように構成したことを特徴とする装置コントローラ。In any one of claims 1 to 6, when the aforementioned connecting a plurality of signal lines can be defined between the gate array, the internal logic circuit is divided into each function exceeds the capacity of one gate array, the excess Is configured to store the internal logic circuit beyond one gate array by defining the signal line in a specific area of another gate array.
JP2002025218A 2002-02-01 2002-02-01 Device controller Expired - Lifetime JP3686380B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002025218A JP3686380B2 (en) 2002-02-01 2002-02-01 Device controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002025218A JP3686380B2 (en) 2002-02-01 2002-02-01 Device controller

Publications (2)

Publication Number Publication Date
JP2003229760A JP2003229760A (en) 2003-08-15
JP3686380B2 true JP3686380B2 (en) 2005-08-24

Family

ID=27747441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002025218A Expired - Lifetime JP3686380B2 (en) 2002-02-01 2002-02-01 Device controller

Country Status (1)

Country Link
JP (1) JP3686380B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100651752B1 (en) 2004-12-07 2006-12-01 한국전자통신연구원 Mobile platform apparatus for multiple antenna system and mobile platform apparatus for verifying of multiple antenna system
JP5032764B2 (en) * 2005-11-09 2012-09-26 株式会社日立ハイテクノロジーズ Equipment controller for industrial equipment
WO2007132577A1 (en) * 2006-05-17 2007-11-22 Murata Manufacturing Co., Ltd. Platform board and production control method
US8407658B2 (en) 2007-02-01 2013-03-26 International Business Machines Corporation Methods, systems, and computer program products for using direct memory access to initialize a programmable logic device
ES2630035T3 (en) * 2008-06-02 2017-08-17 Kabushiki Kaisha Toshiba Digital procedure control device
JP5499950B2 (en) * 2010-06-30 2014-05-21 富士通株式会社 Control apparatus, information processing apparatus, control program, and control method
JP5685117B2 (en) * 2011-03-13 2015-03-18 セイコーソリューションズ株式会社 Configuration redundancy device and configuration method
JP6022344B2 (en) * 2012-12-21 2016-11-09 株式会社日立ハイテクノロジーズ Arithmetic device and charged particle beam application device
CN107358928B (en) * 2017-08-21 2022-12-23 武汉精测电子集团股份有限公司 Ultrahigh resolution graphics signal generator and starting and upgrading method thereof

Also Published As

Publication number Publication date
JP2003229760A (en) 2003-08-15

Similar Documents

Publication Publication Date Title
US7856545B2 (en) FPGA co-processor for accelerated computation
KR100327624B1 (en) Microcomputer with Programmable ROM
JP5102644B2 (en) Method, integrated circuit, system and computer program for initializing a programmable logic device using direct memory access
TWI620061B (en) Error detecting apparatus of server and error detecting method thereof
US20060117233A1 (en) System, Method and storage medium for testing a memory module
US6105154A (en) Multi-bus multi-data transfer protocols controlled by a bus arbiter coupled to a CRC signature compactor
JP3686380B2 (en) Device controller
US6917998B1 (en) Reusable complex multi-bus system hardware prototype system
US20070258288A1 (en) Flash programmer for programming NAND flash and NOR/NAND combined flash
US9009457B2 (en) Integrated circuit boot code and fuse storage implemented on interposer-mounted non-volatile memory
JP2003132010A (en) Method and apparatus for bridge connection between jtag bus and serial bus
JP5032764B2 (en) Equipment controller for industrial equipment
CN108459876B (en) Method and apparatus for reduced area control register circuit
KR20060110359A (en) Method and device for analyzing integrated systems for critical safety computing systems in motor vehicles
KR100735575B1 (en) Method and Apparatus for Interfacing between Test System and Embedded Memory on Test Mode Setting Operation
CN109117299B (en) Error detecting device and method for server
US20020089883A1 (en) Control device for a vehicle engine
US6058468A (en) Central processing unit and microcomputer having testing of circuitry external to the central processing unit
KR19990064824A (en) Apparatus and method for hardware/software co-emulating by supporting multi-function module
KR20210076533A (en) System-on-chip automatic desgin device and operation method thereof
JP6138666B2 (en) In-vehicle control system logging system
JP2008065813A (en) Local controller for reconfigurable processing elements
JP3050303B2 (en) LSI logic circuit evaluation equipment
JP7516974B2 (en) DEVICE FOR ELECTRONIC APPLICATION, CONTROL METHOD FOR ELECTRONIC APPLICATION DEVICE, AND CONTROL PROGRAM FOR ELECTRONIC APPLICATION DEVICE
JP2000321332A (en) Evaluation method and evaluation device of semiconductor device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050531

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050602

R150 Certificate of patent or registration of utility model

Ref document number: 3686380

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080610

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090610

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100610

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110610

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110610

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120610

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130610

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term