JP4257239B2 - Configuration data setting method and computer system - Google Patents

Configuration data setting method and computer system Download PDF

Info

Publication number
JP4257239B2
JP4257239B2 JP2004073178A JP2004073178A JP4257239B2 JP 4257239 B2 JP4257239 B2 JP 4257239B2 JP 2004073178 A JP2004073178 A JP 2004073178A JP 2004073178 A JP2004073178 A JP 2004073178A JP 4257239 B2 JP4257239 B2 JP 4257239B2
Authority
JP
Japan
Prior art keywords
configuration data
configuration
type
manufacturer
data
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
JP2004073178A
Other languages
Japanese (ja)
Other versions
JP2005259053A (en
Inventor
弘幸 齋藤
Original Assignee
埼玉日本電気株式会社
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 埼玉日本電気株式会社 filed Critical 埼玉日本電気株式会社
Priority to JP2004073178A priority Critical patent/JP4257239B2/en
Publication of JP2005259053A publication Critical patent/JP2005259053A/en
Application granted granted Critical
Publication of JP4257239B2 publication Critical patent/JP4257239B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、コンフィグレーションデータをFPGA(Field Programmable Gate Array)に設定するためのコンフィグレーションデータ設定方法に関し、特に、コンフィグレーションデータの設定の際のインタフェースが異なる複数のFPGA(Field Programmable Gate Array)を有するコンピュータシステムに関する。   The present invention relates to a configuration data setting method for setting configuration data in an FPGA (Field Programmable Gate Array), and in particular, a plurality of FPGAs (Field Programmable Gate Arrays) having different interfaces for setting configuration data. The present invention relates to a computer system.

近年、ハードウェア構成が煩雑に変更される製品や少量生産の製品等に対して、論理回路を自由にプログラミングすることができるFPGAが広く用いられるようになってきている(例えば、特許文献1、2参照。)。このようなFPGAにおいて論理回路をプログラミングするためには、コンフィグレーションデータと呼ばれる設定データをFPGAにダウンロードさせる必要がある。   In recent years, FPGAs capable of freely programming logic circuits have been widely used for products whose hardware configuration is complicatedly changed, products manufactured in small quantities, and the like (for example, Patent Document 1, 2). In order to program a logic circuit in such an FPGA, it is necessary to download setting data called configuration data to the FPGA.

従来、コンフィグレーションデータの設定の際のコンフィグレーション用インタフェースがメーカ毎に違うため、異なるメーカのFPGAを使用する場合には、それぞれ別々のインタフェースを用意しなければならず、回路が複雑になってしまっていた。そのため、それぞれチップセットのシリアルPROMを用意してコンフィグレーションデータをダウンロードさせる方法がとられていた。この方法の場合、回路構成は比較的簡単になるが使用するFPGAの数が増えるほど部品点数が増えてしまい、実装面や価格面の考慮をしなければならない弊害があった。また、このような弊害を解決するために特定のメーカのFPGAのみを使用するという方法をとることも可能であるが、メーカが限定されてしまうことから、回路構成の融通性に乏しくなってしまいがちであった。
特開2001−290758号公報 特開2003−44303号公報
Conventionally, configuration interfaces for setting configuration data are different for each manufacturer, so when using FPGAs of different manufacturers, separate interfaces must be prepared for each, resulting in complicated circuits. I was sorry. Therefore, a method has been adopted in which a serial PROM of a chipset is prepared and configuration data is downloaded. In this method, the circuit configuration is relatively simple, but as the number of FPGAs to be used increases, the number of components increases, and there is a problem that the mounting surface and the price must be taken into consideration. In addition, in order to solve such an adverse effect, it is possible to use only a specific manufacturer's FPGA. However, since the manufacturer is limited, the flexibility of the circuit configuration becomes poor. It was apt.
JP 2001-290758 A JP 2003-44303 A

上述した従来のコンピュータシステムでは1つのシステムにおいて、異なるメーカのFPGAを使用すると回路が複雑となり部品点数が増加してしまうという問題点があった。   In the conventional computer system described above, there is a problem in that, when using FPGAs of different manufacturers in one system, the circuit becomes complicated and the number of parts increases.

本発明の目的は、異なるメーカのFPGAを1つのシステムで使用した場合でも、回路が複雑とならず部品点数が大幅に増加することを防ぐことが可能なコンピュータシステムを提供することである。   An object of the present invention is to provide a computer system capable of preventing a circuit from becoming complex and preventing the number of parts from greatly increasing even when different manufacturers' FPGAs are used in one system.

上記目的を達成するために、本発明は、コンフィグレーションデータの設定の際のインタフェースが異なる複数のFPGAを備えたコンピュータシステムであって、
メーカ種別情報と前記コンフィグレーションデータの格納順番を示すシーケンス種別情報とを含むコンフィグレーションヘッダ部が付加された複数のコンフィグレーションデータが格納されている不揮発性メモリと、
前記不揮発性メモリに格納されているコンフィグレーションデータをそれぞれ読み出し、読み出したコンフィグレーションデータのコンフィグレーションヘッダ部に含まれる前記メーカ種別情報から当該コンフィグレーションデータのメーカ種別を識別し、読み出した該コンフィグレーションデータを識別したメーカ種別に応じたインタフェース出力するFPGAデータ分配機能部と、
前記FPGAデータ分配機能部から出力されたコンフィグレーションデータをダウンロードして起動する、メーカの異なる複数のFPGAとを備えている。
In order to achieve the above object, the present invention is a computer system comprising a plurality of FPGAs having different interfaces for setting configuration data,
A non-volatile memory storing a plurality of configuration data to which a configuration header portion including manufacturer type information and sequence type information indicating the storage order of the configuration data is added;
Each of the configuration data stored in the nonvolatile memory is read, the manufacturer type of the configuration data is identified from the manufacturer type information included in the configuration header portion of the read configuration data, and the read configuration An FPGA data distribution function unit that outputs data through an interface according to the manufacturer type that has identified the data;
And a plurality of FPGAs of different manufacturers that download and start the configuration data output from the FPGA data distribution function unit.

また、本発明の他のコンピュータシステムでは、前記FPGAデータ分配機能部が、
前記不揮発性メモリに格納されたコンフィグレーションデータを読み出す不揮発性メモリアクセス制御部と、
前記不揮発性メモリアクセス制御部により読み出されたコンフィグレーションデータのコンフィグレーションヘッダ部からシーケンス種別を識別し、受け取ったコンフィグレーションデータを識別されたシーケンス種別に基づいた経路に出力するシーケンス識別部と、
前記シーケンス識別部により各経路毎に出力されたコンフィグレーションデータのコンフィグレーションヘッダ部からメーカ種別を識別し、コンフィグレーションヘッダ部を取り除いた後のコンフィグレーションデータを、識別したメーカ種別の認識結果とともに出力する、前記経路毎に設けられた複数のメーカ種別識別部と、
前記各メーカ種別識別部からのメーカ種別の認識結果に基づいて、前記メーカ種別識別部からのコンフィグレーションデータをそれぞれのメーカ固有のインタフェース出力する、前記経路毎に設けられた複数のFPGAインタフェース部と
を備えている。
Further, in another computer system of the present invention, the FPGA data distribution function unit includes:
A non-volatile memory access control unit that reads configuration data stored in the non-volatile memory; and
A sequence identification unit that identifies a sequence type from a configuration header portion of configuration data read by the nonvolatile memory access control unit, and outputs the received configuration data to a path based on the identified sequence type;
The manufacturer type is identified from the configuration header part of the configuration data output for each path by the sequence identification part, and the configuration data after removing the configuration header part is output together with the recognition result of the identified manufacturer type. A plurality of manufacturer type identification units provided for each of the paths ;
Based on the recognition result of the manufacturer type from each manufacturer type identification unit, the configuration data from the manufacturer type identification unit is output by each manufacturer specific interface , and a plurality of FPGA interface units provided for each path and,
It has.

本発明では、メーカ毎に異なるフォーマットのコンフィグレーションデータにヘッダというラベルをつけることにより、メーカに関係なく同じレイヤでデータを扱うことができるようにし、複数のシリアルPROMを使用することなくひとつのFROMに格納し、かつ各メーカに対応したインタフェースを用意することで、メーカという壁を意識しない融通性のある回路構成が可能となる。また、コンフィグレーションヘッダというラベルを持たせることにより、メーカ毎にフォーマットの異なるコンフィグレーションデータを意識せずに扱うことを可能とし、異なるメーカのコンフィグレーションデータを1つの不揮発性メモリに格納することが可能となる。   In the present invention, the header is attached to the configuration data in a format different for each manufacturer, so that the data can be handled in the same layer regardless of the manufacturer, and one FROM can be used without using a plurality of serial PROMs. By preparing an interface corresponding to each manufacturer, it is possible to realize a flexible circuit configuration that is not conscious of the barrier of the manufacturer. In addition, by providing a label called a configuration header, it is possible to handle configuration data with different formats for each manufacturer without concern, and configuration data from different manufacturers can be stored in one nonvolatile memory. It becomes possible.

また、前記不揮発性メモリを、セクタイレーズタイプのフラッシュメモリとし、前記不揮発性メモリアクセス制御部が、前記不揮発性メモリとCPUのバスを接続するためのバスブリッジ機能を備えるようにするようにしてもよい。   The nonvolatile memory may be a sector erase type flash memory, and the nonvolatile memory access control unit may have a bus bridge function for connecting the nonvolatile memory and a CPU bus. Good.

本発明によれば、前記不揮発性メモリとしてセクタイレーズタイプのフラッシュメモリを使用してセクタ構成を意識したメモリ配置を行うことにより、各FPGAごとの消去や書き込みが可能となる。   According to the present invention, by using a sector erase type flash memory as the non-volatile memory and arranging the memory in consideration of the sector configuration, erasing and writing for each FPGA can be performed.

さらに、前記コンフィグレーションヘッダ部には、当該コンフィグレーションデータのバージョン情報を含めるようにしてもよい。   Furthermore, the configuration header part may include version information of the configuration data.

本発明によれば、コンフィグレーションヘッダ部にバージョン情報を含めるようにしているので、コンフィグレーションデータのバージョン情報を意識した保守監視が可能となる。   According to the present invention, since version information is included in the configuration header portion, maintenance monitoring can be performed in consideration of the version information of the configuration data.

以上説明したように、本発明によれば、異なるメーカの複数のFPGAを1つのシステムで使用した場合でも、1つの不揮発性メモリに各コンフィグレーションデータを格納することが可能なので、回路構成を複雑にすることなく、また部品点数を大幅に増加させることがないという効果を得ることができる。   As described above, according to the present invention, even when a plurality of FPGAs from different manufacturers are used in one system, each configuration data can be stored in one nonvolatile memory, so that the circuit configuration is complicated. In addition, it is possible to obtain an effect that the number of parts is not significantly increased.

次に、本発明の実施の形態について図面を参照して詳細に説明する。   Next, embodiments of the present invention will be described in detail with reference to the drawings.

(第1の実施形態)
図1は本発明の第1の実施形態のコンピュータシステムの構成を示すブロック図である。図1を用いて、本発明の第1の実施形態の構成について説明する。なお、本実施形態では説明を簡単にするために、3個のFPGAを使用した場合について説明するが、回路構成により4個以上のFPGAの使用も許容する。
(First embodiment)
FIG. 1 is a block diagram showing the configuration of a computer system according to the first embodiment of this invention. The configuration of the first embodiment of the present invention will be described with reference to FIG. In this embodiment, for simplicity of explanation, a case where three FPGAs are used will be described. However, use of four or more FPGAs is allowed depending on a circuit configuration.

本実施形態のコンピュータシステムは、図1に示されるように、FPGA4a〜4cのコンフィグレーションデータを格納するセクタイレーズタイプのFROM(フラッシュメモリ)1と、CPU2と、FPGAデータ分配機能部3と、FPGAデータ分配機能部3からコンフィグレーションデータをダウンロードして起動するFPGA4a〜4cとから構成されている。   As shown in FIG. 1, the computer system of the present embodiment includes a sector erase type FROM (flash memory) 1 that stores configuration data of FPGAs 4a to 4c, a CPU 2, an FPGA data distribution function unit 3, and an FPGA. It consists of FPGAs 4 a to 4 c that start by downloading configuration data from the data distribution function unit 3.

FROM1は、メーカ種別情報と格納順番を示すシーケンス種別情報とを含むコンフィグレーションヘッダ部が付加された複数のコンフィグレーションデータが格納されている。   The FROM 1 stores a plurality of configuration data to which a configuration header portion including manufacturer type information and sequence type information indicating the storage order is added.

FPGAデータ分配機能部3は、FROM1に格納されているコンフィグレーションデータをそれぞれ読み出し、読み出したコンフィグレーションデータのコンフィグレーションヘッダ部に含まれるメーカ種別情報から当該コンフィグレーションデータのメーカ種別を識別し、読み出したそのコンフィグレーションデータを識別したメーカ種別に応じたインタフェースにのせかえて出力する。   The FPGA data distribution function unit 3 reads the configuration data stored in the FROM 1, identifies the manufacturer type of the configuration data from the manufacturer type information included in the configuration header portion of the read configuration data, and reads the configuration data. The configuration data is output by replacing it with an interface corresponding to the identified manufacturer type.

FROM1に格納されるFPGAのコンフィグレーションデータのフォーマットを図2に示す。図2において、各FPGAのコンフィグレーションデータは2つのブロック構成をとり、6バイトのコンフィグレーションヘッダ部と各FPGAのコンフィグレーションデータ部からなる。   The format of FPGA configuration data stored in FROM 1 is shown in FIG. In FIG. 2, the configuration data of each FPGA takes two block configurations, and consists of a 6-byte configuration header part and a configuration data part of each FPGA.

コンフィグレーションヘッダ部は、データの開始を表す4バイトのスタートキーと、コンフィグレーションデータのFROM1への格納順番を示す1バイトのシーケンス種別情報と、1バイトのメーカ種別とからなる。このコンフィグレーションヘッダ部はもともとコンフィグレーションデータとは何の関係もないデータであり、本発明を実現させるうえで、メーカ毎に異なるフォーマットを持つコンフィグレーションデータを同じレイヤで扱うために、後から付加したものである。   The configuration header portion includes a 4-byte start key indicating the start of data, 1-byte sequence type information indicating the storage order of the configuration data in the FROM 1, and a 1-byte manufacturer type. This configuration header part is data that has nothing to do with configuration data from the beginning, and is added later to handle configuration data with different formats for each manufacturer in the same layer in order to realize the present invention. It is a thing.

コンフィグレーションヘッダ部のスタートキーのデータの組み合わせは任意であるが、各コンフィグレーションデータの先頭を正しく認識させる必要があるので、コンフィグレーションデータ部中には発生しないデータの連続であることが望ましい。   The combination of the start key data in the configuration header part is arbitrary, but it is necessary to correctly recognize the head of each configuration data. Therefore, it is desirable that the data is not continuous in the configuration data part.

また、FPGAデータ分配機能部3においてシーケンス種別情報を識別するための回路の回路構成を簡単にするのであればスタートキーも各FPGAごとに用意するのではなく、全て同一のスタートキーとするのがよい。本実施形態では、仮に“404E4543”というスタートキーとする。   Further, if the circuit configuration of the circuit for identifying the sequence type information in the FPGA data distribution function unit 3 is simplified, the start key is not prepared for each FPGA but all the same start key is used. Good. In the present embodiment, it is assumed that the start key is “404E4543”.

シーケンス種別情報は、上述したようにコンフィグレーションデータの格納順番を表し、コンフィグレーションデータの経路を決定づける役割を持っている。本実施形態では、3つの経路を持つために最低3つのシーケンス種別が必要になる。仮に経路1のシーケンス種別を“1”とし、以下順番に経路2はシーケンス種別を“2”とし、経路3はシーケンス種別を“3”とする。   As described above, the sequence type information represents the storage order of the configuration data, and has a role of determining the path of the configuration data. In the present embodiment, since there are three paths, at least three sequence types are required. Assume that the sequence type of route 1 is “1”, the sequence type of route 2 is “2”, and the sequence type of route 3 is “3”.

また、本実施形態ではシーケンス種別を1バイトの情報で表しているため、使い方により経路の数を変更することができる。例えば、1バイトは10進数に換算すると0から255の256種類の数字の組み合わせを持つため、256個の経路を持つことが可能であり、また、別の例で1バイトは8ビットであるため、各1ビットを経路に対応させて8個までの経路を区別させることもできる。   In this embodiment, since the sequence type is represented by 1-byte information, the number of paths can be changed depending on how it is used. For example, since 1 byte has 256 combinations of numbers from 0 to 255 when converted to decimal numbers, it is possible to have 256 paths, and in another example, 1 byte is 8 bits. It is also possible to distinguish up to eight paths by associating each bit with a path.

メーカ種別情報は、FPGAを製造したメーカを表し、例えば図3のような対応表が存在する。本実施形態では3メーカのFPGAを使用するものと仮定して、00(hex)をA社、01(hex)をB社、02(hex)をC社としている。また、FPGA4aはA社製、FPGA4bはB社製、FPGA4cはC社製とする。   The manufacturer type information represents the manufacturer that manufactured the FPGA, and for example, there is a correspondence table as shown in FIG. In this embodiment, assuming that three manufacturers' FPGAs are used, 00 (hex) is Company A, 01 (hex) is Company B, and 02 (hex) is Company C. Further, FPGA 4a is manufactured by Company A, FPGA 4b is manufactured by Company B, and FPGA 4c is manufactured by Company C.

次に、図4を用いて、図1中のFPGAデータ分配機能部3の構成について説明する。FPGAデータ分配機能部3は、図4に示されるように、不揮発性メモリアクセス制御部として機能するFROMアクセス制御部100と、シーケンス識別部101と、第1から第3のメーカ種別識別部102、103、104と、第1から第3のFPGAインタフェース部105、106、107と、コンフィグレーション完了検出部108とから構成される。   Next, the configuration of the FPGA data distribution function unit 3 in FIG. 1 will be described with reference to FIG. As shown in FIG. 4, the FPGA data distribution function unit 3 includes a FROM access control unit 100 that functions as a nonvolatile memory access control unit, a sequence identification unit 101, first to third manufacturer type identification units 102, 103, 104, first to third FPGA interface units 105, 106, and 107, and a configuration completion detection unit 108.

FROMアクセス制御部100は、起動時にFROM1に格納されたコンフィグレーションデータを読み出し、コンフィグレーションデータの設定が正常に終了したことを通知されるとFROM1へのアクセスを中止する機能およびCPU2からFROM1へのアクセスを可能とするバスブリッジ機能を持つ。   The FROM access control unit 100 reads the configuration data stored in the FROM 1 at the time of start-up, and notifies the fact that the setting of the configuration data has been completed normally. Has a bus bridge function that allows access.

シーケンス識別部101は、FROMアクセス制御部100から読み出されたコンフィグレーションデータのコンフィグレーションヘッダ部からシーケンス種別を識別し、受け取ったコンフィグレーションデータを識別されたシーケンス種別に基づいた経路に出力する。   The sequence identification unit 101 identifies the sequence type from the configuration header part of the configuration data read from the FROM access control unit 100, and outputs the received configuration data to a path based on the identified sequence type.

メーカ種別識別部102、103、104は、シーケンス識別部101により各経路毎に出力されたコンフィグレーションデータのコンフィグレーションヘッダ部からメーカ種別を識別し、コンフィグレーションヘッダ部を取り除いた後のコンフィグレーションデータを、識別したメーカ種別の認識結果とともに出力する。   The manufacturer type identification units 102, 103, and 104 identify the manufacturer type from the configuration header part of the configuration data output for each path by the sequence identification unit 101, and remove the configuration header part. Is output together with the recognition result of the identified manufacturer type.

FPGAインタフェース部105、106、107は、複数のメーカのFPGAインタフェースに対応しており、メーカ種別識別部102、103、104からのメーカ種別の認識結果に基づいて、メーカ識別部102、103、104からのコンフィグレーションデータをそれぞれのメーカ固有のインタフェースにのせかえて出力する。   The FPGA interface units 105, 106, and 107 correspond to the FPGA interfaces of a plurality of manufacturers, and the manufacturer identification units 102, 103, and 104 are based on the recognition results of the manufacturer types from the manufacturer type identification units 102, 103, and 104. The configuration data from is replaced with the interface specific to each manufacturer and output.

コンフィグレーション完了検出部108は、各FPGA4a〜4cから出力されるコンフィグレーション状態信号を監視することにより、各FPGA4a〜4cのコンフィグレーション状態を監視してFROMアクセス制御部100に通知する。   The configuration completion detection unit 108 monitors the configuration state signals output from the FPGAs 4a to 4c, thereby monitoring the configuration states of the FPGAs 4a to 4c and notifying the FROM access control unit 100.

なお、メーカ種別識別部102、103、104とFPGAインタフェース部105、106、107は使用するFPGAの数に応じて経路が増える構成であり、本実施形態では3個のFPGAを使用しているため、3つの経路を有している。   Note that the manufacturer type identification units 102, 103, and 104 and the FPGA interface units 105, 106, and 107 have a configuration in which the number of paths increases according to the number of FPGAs to be used. In this embodiment, three FPGAs are used. It has three paths.

次に、本発明の実施形態の動作を図面を参照して詳細に説明する。   Next, the operation of the embodiment of the present invention will be described in detail with reference to the drawings.

先ず、本実施形態のコンピュータシステムにおける全体動作を図1を参照して説明する。図1において、起動時にFPGAデータ分配機能部3はFROM1に格納されているFPGA4aからFPGA4cまでのコンフィグレーションデータを読み出し、各コンフィグレーションデータのヘッダ部からメーカ情報を検出して、FPGA4aからFPGA4cのそれぞれに決まったインタフェースでコンフィグレーションデータを出力し、FPGA4aからFPGA4cのコンフィグレーションを実施する。   First, the overall operation of the computer system of this embodiment will be described with reference to FIG. In FIG. 1, the FPGA data distribution function unit 3 reads configuration data from the FPGA 4a to the FPGA 4c stored in the FROM 1 at startup, detects manufacturer information from the header part of each configuration data, and each of the FPGA 4a to the FPGA 4c. The configuration data is output through the interface determined by the above, and the FPGA 4a to FPGA 4c are configured.

次に、FPGAデータ分配機能部3の動作を図4を参照して説明する。図4において、FROMアクセス制御部100は起動時にFROM1をリードして、FROM1から格納されているコンフィグレーションデータを読み出し、シーケンス識別部101にコンフィグレーションデータを送る。このとき、FROMアクセス制御部100はFROM1内のメモリ構成を気にせずにリードアクセスをして、コンフィグレーション完了検出部108がコンフィグレーション完了を認識したらFROM1へのアクセスを停止する。   Next, the operation of the FPGA data distribution function unit 3 will be described with reference to FIG. In FIG. 4, the FROM access control unit 100 reads the FROM 1 at startup, reads the configuration data stored from the FROM 1, and sends the configuration data to the sequence identification unit 101. At this time, the FROM access control unit 100 performs read access regardless of the memory configuration in the FROM 1 and stops the access to the FROM 1 when the configuration completion detection unit 108 recognizes the completion of configuration.

シーケンス識別部101では、FROMアクセス制御部100でFROM1内のメモリ構成を意識しないで読み出してくるため、コンフィグレーションデータの先頭を認識する必要がある。そのために、シーケンス識別部101においては、まず特殊な連続データであるスタートキー(404E4543)の検出を行う。スタートキーの検出後、コンフィグレーションヘッダ部を認識すると、次にシーケンス種別を検出し、シーケンス種別が“1”であれば経路1側にコンフィグレーションデータを送信する。つまり、本実施形態ではFPGAa用のコンフィグレーションデータは経路1に、FPGA4b用のコンフィグレーションデータは経路2に、FPGA4c用のコンフィグレーションデータは経路3に、それぞれ出力される。   In the sequence identification unit 101, the FROM access control unit 100 reads out the memory configuration in the FROM 1 without being aware of the memory configuration. Therefore, it is necessary to recognize the head of the configuration data. For this purpose, the sequence identification unit 101 first detects a start key (404E4543) which is special continuous data. When the configuration header portion is recognized after detecting the start key, the sequence type is detected next. If the sequence type is “1”, the configuration data is transmitted to the path 1 side. In other words, in this embodiment, the configuration data for FPGAa is output to path 1, the configuration data for FPGA 4b is output to path 2, and the configuration data for FPGA 4c is output to path 3.

第1から第3のメーカ種別識別部102、103、104へ送信されたコンフィグレーションデータは、コンフィグレーションヘッダ部とコンフィグレーションデータ部に分解され、コンフィグレーションデータ部のみが第1から第3のFPGAインタフェース部105、106、107にそれぞれ送られる。第1から第3のメーカ種別識別部102、103、104は、データの分解の他にメーカ種別を識別し、第1から第3のFPGAインタフェース部105、106、107に通知する。   The configuration data transmitted to the first to third manufacturer type identification units 102, 103, and 104 is decomposed into a configuration header part and a configuration data part, and only the configuration data part is the first to third FPGA. The data are sent to the interface units 105, 106, and 107, respectively. The first to third manufacturer type identification units 102, 103, and 104 identify the manufacturer type in addition to data decomposition, and notify the first to third FPGA interface units 105, 106, and 107.

第1から第3のFPGAインタフェース部105、106、107は複数のメーカのFPGAインタフェースに対応しており、メーカ種別識別部102、103、104から受け取ったメーカ種別にあわせたインタフェースでコンフィグレーションデータ部を出力する。   The first to third FPGA interface units 105, 106, and 107 correspond to the FPGA interfaces of a plurality of manufacturers, and the configuration data unit is an interface that matches the manufacturer type received from the manufacturer type identification units 102, 103, and 104. Is output.

本実施形態では、経路1を通るFPGAa用のコンフィグレーションデータは、第1のメーカ種別識別部102でコンフィグレーションヘッダ部とコンフィグレーションデータ部に分解され、第1のFPGAインタフェース部105に送られる。また、第1のメーカ種別識別部102では、FPGAaがA社製であることをコンフィグレーションヘッダ部のメーカ種別から認識し、A社用のインタフェースを準備するように第1のFPGAインタフェース部105に通知し、第1のFPGAインタフェース部105はFPGA4a用のコンフィグレーションデータ部をA社用のインタフェースに準じて送信する。 In the present embodiment, the configuration data for FPGAa passing through the path 1 is decomposed into a configuration header part and a configuration data part by the first manufacturer type identification unit 102 and sent to the first FPGA interface unit 105. Further, in the first type of maker identification unit 102, FPGA 4 a is recognized from the type of maker of configuration header portion that is made of the company A, the first FPGA interface unit to prepare the interface A company 105, the first FPGA interface unit 105 transmits a configuration data unit for the FPGA 4a according to the interface for the company A.

同様に、経路2ではFPGA4bがB社であることを第2のメーカ種別識別部106が認識し、第2のFPGAインタフェース部106がB社用のインタフェースでFPGA4b用のコンフィグレーションデータ部を出力し、経路3ではFPGA4cがC社であることを第3のメーカ種別識別部107が認識し、第3のFPGAインタフェース部107がC社用のインタフェースでFPGA4c用のコンフィグレーションデータ部を出力する。   Similarly, in the route 2, the second manufacturer type identification unit 106 recognizes that the FPGA 4b is the company B, and the second FPGA interface unit 106 outputs the configuration data unit for the FPGA 4b through the interface for the company B. In the path 3, the third manufacturer type identification unit 107 recognizes that the FPGA 4c is the company C, and the third FPGA interface unit 107 outputs the configuration data unit for the FPGA 4c through the interface for the company C.

コンフィグレーション完了検出部108は、各FPGAから出力されているコンフィグレーション状態信号をモニタしており、全てのFPGAのコンフィグレーションが正常に終了したら、FROMアクセス制御部100に通知しFROM1へのアクセスを停止させる。また、コンフィグレーション完了検出部108はFROMアクセス制御部100に対し、各FPGAのコンフィグレーション状態を通知しているため、CPU2はFROMアクセス制御部100を介して、各FPGAのコンフィグレーション状態を監視することができる。   The configuration completion detection unit 108 monitors the configuration status signal output from each FPGA. When the configuration of all the FPGAs is normally completed, the configuration completion detection unit 108 notifies the FROM access control unit 100 to access the FROM 1. Stop. Further, since the configuration completion detection unit 108 notifies the FROM access control unit 100 of the configuration state of each FPGA, the CPU 2 monitors the configuration state of each FPGA via the FROM access control unit 100. be able to.

また、FPGAデータ分配機能部3はFROM1とCPU2のバスを接続するバスブリッジ機能を持つため、CPU2からFROM1へのアクセスが可能であり、かつ各コンフィグレーションデータはFROM1内ではセクタを意識して格納されているため、CPU2は各々のコンフィグレーションデータの消去および書き込みが可能となる。そのため、FROM1に格納されているコンフィグレーションデータの変更が必要なときには、CPU2は、FPGAデータ分配機能部3のバスブリッジ機能を使用して、FROM1へアクセスしてコンフィグレーションデータを変更することが可能である。   Further, since the FPGA data distribution function unit 3 has a bus bridge function for connecting the FROM 1 and CPU 2 buses, the CPU 2 can access the FROM 1, and each configuration data is stored in the FROM 1 in consideration of the sector. Therefore, the CPU 2 can erase and write each configuration data. Therefore, when the configuration data stored in the FROM 1 needs to be changed, the CPU 2 can use the bus bridge function of the FPGA data distribution function unit 3 to access the FROM 1 and change the configuration data. It is.

本実施形態のコンピュータシステムによれば、FPGAデータ分配機能部3のシーケンス識別部101は、コンフィグレーションヘッダ部に用意したスタートキーを検出することで、コンフィグレーションデータの先頭を認識できるため、メーカを意識せずにデータを格納することが可能となる。そのため、異なるメーカのコンフィグレーションデータを1つのFROM1で管理することができる。   According to the computer system of this embodiment, the sequence identification unit 101 of the FPGA data distribution function unit 3 can recognize the start of the configuration data by detecting the start key prepared in the configuration header unit. Data can be stored without being conscious. Therefore, configuration data of different manufacturers can be managed by one FROM 1.

また、本実施形態のコンピュータシステムによれば、コンフィグレーションヘッダ部に用意されたメーカ種別情報にてメーカ種別を区別することができるため、コンフィグレーション用のインタフェースをコンフィグレーションデータに応じてあわせることができる。そのため、異なるメーカのFPGAを1つのシステムで同時に使用した場合でも、FPGA毎に価格の高い専用のメモリを用意することなく、価格の安いFROMにコンフィグレーションデータを格納できる。そのため、回路構成を複雑にすることなく原価低減を図ることもできる。   Further, according to the computer system of the present embodiment, the manufacturer type can be distinguished by the manufacturer type information prepared in the configuration header portion, and therefore the configuration interface can be adjusted according to the configuration data. it can. Therefore, even when FPGAs from different manufacturers are used simultaneously in one system, configuration data can be stored in a low-cost FROM without preparing a high-priced dedicated memory for each FPGA. Therefore, cost reduction can be achieved without complicating the circuit configuration.

さらに、本実施形態のコンピュータシステムによれば、セクタイレーズタイプのFROM1にセクタ構成を意識してコンフィグレーションデータを格納しているため、CPU2からの消去および書き込みがデータ毎にできる。そのため、FPGAのコンフィグレーションデータをそれぞれ独立して変更、消去、書き換え等の操作をすることができる。   Furthermore, according to the computer system of the present embodiment, since the configuration data is stored in the sector erase type FROM 1 in consideration of the sector configuration, the data can be erased and written from the CPU 2 for each data. Therefore, operations such as changing, deleting, and rewriting the FPGA configuration data can be performed independently.

(第2の実施形態)
次に、本発明の第2の実施形態のコンピュータシステムについて説明する。
(Second Embodiment)
Next, a computer system according to a second embodiment of this invention will be described.

本実施形態におけるコンフィグレーションデータの構成を図5に示す。本実施形態におけるコンフィグレーションデータは、図2に示した第1の実施形態におけるコンフィグレーションデータに対して、コンフィグレーションヘッダ部にさらに1バイトのバージョン情報が追加された構成となっている。   FIG. 5 shows a configuration of configuration data in this embodiment. The configuration data in this embodiment has a configuration in which 1-byte version information is further added to the configuration header portion with respect to the configuration data in the first embodiment shown in FIG.

例えば、最初に作成したコンフィグレーションデータを1版とするときには、バージョン情報は“01(hex)”とし、新たな機能が追加となったコンフィグレーションデータは2版と管理し、バージョン情報を“02(hex)”とする。FROMアクセス制御部100のバスブリッジ機能により、CPU2からFROM1へのアクセスが可能であることから、コンフィグレーションデータのバージョン情報を意識した保守監視が可能となる。例えば、運用中にCPU2からFROM1にアクセスしてFPGAa用コンフィグレーションデータのヘッダ部分のバージョン情報を確認し、仮にバージョン情報が古いものだと判明したら、最新のコンフィグレーションデータを書き込むことができる。従って、本実施形態を使用することでデータ上での保守監視が容易に行えるようになるという新たな効果が生まれる。   For example, when the first created configuration data is set to version 1, the version information is managed as “01 (hex)”, the configuration data added with a new function is managed as version 2, and the version information is set to “02”. (Hex) ". Since the CPU 2 can access the FROM 1 by the bus bridge function of the FROM access control unit 100, maintenance monitoring can be performed in consideration of the version information of the configuration data. For example, during operation, the CPU 2 accesses the FROM 1 to check the version information in the header portion of the FPGAa configuration data. If the version information is found to be old, the latest configuration data can be written. Therefore, the use of the present embodiment brings about a new effect that maintenance monitoring on data can be easily performed.

上記第1および第2の実施形態では、コンフィグレーションデータが格納されるメモリとしてFROM1を使用する場合を用いて説明したが、本発明はこれに限定されるものではなく、電源を切っても記憶内容を保持することができる他の不揮発性メモリを使用した場合でも同様に本発明を適用することができるものである。   In the first and second embodiments, the case where the FROM 1 is used as the memory for storing the configuration data has been described. However, the present invention is not limited to this, and the memory is stored even when the power is turned off. The present invention can be similarly applied even when another nonvolatile memory capable of holding the contents is used.

本発明の第1の実施形態のコンピュータシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the computer system of the 1st Embodiment of this invention. 本発明のコンフィグレーションデータの構成を示す図である。It is a figure which shows the structure of the configuration data of this invention. 本発明のメーカ種別とメーカの関係を示す図である。It is a figure which shows the relationship between the manufacturer classification of this invention, and a manufacturer. 図1中のFPGAデータ分配機能部3の構成を示すブロック図である。It is a block diagram which shows the structure of the FPGA data distribution function part 3 in FIG. 本発明の第2の実施形態におけるコンフィグレーションデータの構成を表す図である。It is a figure showing the structure of the configuration data in the 2nd Embodiment of this invention.

符号の説明Explanation of symbols

1 フラッシュメモリ(FROM)
2 CPU
3 FPGAデータ分配機能部
4a、4b、4c FPGA
100 FROMアクセス制御部
101 シーケンス識別部
102 第1のメーカ種別識別部
103 第2のメーカ種別識別部
104 第3のメーカ種別識別部
105 第1のFPGAインタフェース部
106 第2のFPGAインタフェース部
107 第3のFPGAインタフェース部
108 コンフィグレーション完了検出部
1 Flash memory (FROM)
2 CPU
3 FPGA data distribution function unit 4a, 4b, 4c FPGA
100 FROM access control unit 101 Sequence identification unit 102 First manufacturer type identification unit 103 Second manufacturer type identification unit 104 Third manufacturer type identification unit 105 First FPGA interface unit 106 Second FPGA interface unit 107 Third FPGA interface part 108 Configuration completion detection part

Claims (7)

コンフィグレーションデータの設定の際のインタフェースが異なる複数のFPGAを備えたコンピュータシステムであって、
メーカ種別情報と前記コンフィグレーションデータの格納順番を示すシーケンス種別情報とを含むコンフィグレーションヘッダ部が付加された複数のコンフィグレーションデータが格納されている不揮発性メモリと、
前記不揮発性メモリに格納されているコンフィグレーションデータをそれぞれ読み出し、読み出したコンフィグレーションデータのコンフィグレーションヘッダ部に含まれる前記メーカ種別情報から当該コンフィグレーションデータのメーカ種別を識別し、読み出した該コンフィグレーションデータを識別したメーカ種別に応じたインタフェース出力するFPGAデータ分配機能部と、
前記FPGAデータ分配機能部から出力されたコンフィグレーションデータをダウンロードして起動する、メーカの異なる複数のFPGAと、
を備えたコンピュータシステム。
A computer system including a plurality of FPGAs having different interfaces for setting configuration data,
A non-volatile memory storing a plurality of configuration data to which a configuration header portion including manufacturer type information and sequence type information indicating the storage order of the configuration data is added;
Each of the configuration data stored in the nonvolatile memory is read, the manufacturer type of the configuration data is identified from the manufacturer type information included in the configuration header portion of the read configuration data, and the read configuration An FPGA data distribution function unit that outputs data through an interface according to the manufacturer type that has identified the data;
A plurality of FPGAs of different manufacturers that download and start the configuration data output from the FPGA data distribution function unit;
Computer system with
前記FPGAデータ分配機能部が、
前記不揮発性メモリに格納されたコンフィグレーションデータを読み出す不揮発性メモリアクセス制御部と、
前記不揮発性メモリアクセス制御部により読み出されたコンフィグレーションデータのコンフィグレーションヘッダ部からシーケンス種別を識別し、受け取ったコンフィグレーションデータを識別されたシーケンス種別に基づいた経路に出力するシーケンス識別部と、
前記シーケンス識別部により各経路毎に出力されたコンフィグレーションデータのコンフィグレーションヘッダ部からメーカ種別を識別し、コンフィグレーションヘッダ部を取り除いた後のコンフィグレーションデータを、識別したメーカ種別の認識結果とともに出力する、前記経路毎に設けられた複数のメーカ種別識別部と、
前記各メーカ種別識別部からのメーカ種別の認識結果に基づいて、前記メーカ種別識別部からのコンフィグレーションデータをそれぞれのメーカ固有のインタフェース出力する、前記経路毎に設けられた複数のFPGAインタフェース部と
を備えた請求項1記載のコンピュータシステム。
The FPGA data distribution function unit
A non-volatile memory access control unit that reads configuration data stored in the non-volatile memory; and
A sequence identification unit that identifies a sequence type from a configuration header portion of configuration data read by the nonvolatile memory access control unit, and outputs the received configuration data to a path based on the identified sequence type;
The manufacturer type is identified from the configuration header part of the configuration data output for each path by the sequence identification part, and the configuration data after removing the configuration header part is output together with the recognition result of the identified manufacturer type. A plurality of manufacturer type identification units provided for each of the paths ;
Based on the recognition result of the manufacturer type from each manufacturer type identification unit, the configuration data from the manufacturer type identification unit is output by each manufacturer specific interface , and a plurality of FPGA interface units provided for each path and,
The computer system according to claim 1, further comprising:
前記不揮発性メモリが、セクタイレーズタイプのフラッシュメモリであり、
前記不揮発性メモリアクセス制御部は、前記不揮発性メモリとCPUのバスを接続するためのバスブリッジ機能を備えている請求項2記載のコンピュータシステム。
The nonvolatile memory is a sector erase type flash memory,
The computer system according to claim 2, wherein the nonvolatile memory access control unit has a bus bridge function for connecting the nonvolatile memory and a CPU bus.
前記コンフィグレーションヘッダ部には、当該コンフィグレーションデータのバージョン情報が含まれている請求項1から3のいずれか1項記載のコンピュータシステム。   The computer system according to claim 1, wherein the configuration header portion includes version information of the configuration data. コンフィグレーションデータをFPGAに設定するためのコンフィグレーションデータ設定方法であって、
メーカ種別情報と前記コンフィグレーションデータの格納順番を示すシーケンス種別情報とを含むコンフィグレーションヘッダ部が付加されたコンフィグレーションデータが格納されている不揮発性メモリから、格納されているコンフィグレーションデータをそれぞれ読み出す第1のステップと、
読み出した該コンフィグレーションデータのコンフィグレーションヘッダ部に含まれる前記メーカ種別情報から当該コンフィグレーションデータのメーカ種別を識別する第2のステップと、
読み出した該コンフィグレーションデータを識別したメーカ種別に応じたインタフェース、メーカの異なる複数のFPGAにそれぞれ出力する第3のステップと、
を備えたコンフィグレーションデータ設定方法。
A configuration data setting method for setting configuration data in an FPGA,
The stored configuration data is read from the nonvolatile memory storing the configuration data to which the configuration header portion including the manufacturer type information and the sequence type information indicating the storage order of the configuration data is added. A first step;
A second step of identifying the manufacturer type of the configuration data from the manufacturer type information included in the configuration header portion of the read configuration data;
In the interface according to the type of maker identifying the read the configuration data, and a third step of outputting each of a plurality of different FPGA of manufacturers,
Configuration data setting method with
前記第2および第3のステップが、
不揮発性メモリから読み出された前記コンフィグレーションデータの前記コンフィグレーションヘッダ部からシーケンス種別を識別し、受け取ったコンフィグレーションデータを識別されたシーケンス種別に基づいた経路に出力するステップと、
各経路毎に出力された前記コンフィグレーションデータのコンフィグレーションヘッダ部からメーカ種別を識別し、前記コンフィグレーションヘッダ部を取り除いた後のコンフィグレーションデータを、識別したメーカ種別の認識結果とともに対応する経路に出力するステップと、
前記メーカ種別の認識結果に基づいて、前記コンフィグレーションデータを、前記経路毎に設けられた、それぞれのメーカ固有のインタフェース出力するステップと
を備えている請求項5記載のコンフィグレーションデータ設定方法。
The second and third steps are:
Identifying a sequence type from the configuration header portion of the configuration data read from the non-volatile memory, and outputting the received configuration data to a path based on the identified sequence type;
Identifies the type of maker from configuration header portion of the configuration data output for each path, the configuration data after removing the configuration header portion, the corresponding path with the recognition result of the type of maker was identified Output step;
A step based on the recognition result of the type of maker, the configuration data, provided for each said path, for outputting the respective manufacturer-specific interfaces,
The configuration data setting method according to claim 5, further comprising:
前記コンフィグレーションヘッダ部には、当該コンフィグレーションデータのバージョン情報が含まれている請求項5または6記載のコンフィグレーションデータ設定方法。   The configuration data setting method according to claim 5 or 6, wherein the configuration header portion includes version information of the configuration data.
JP2004073178A 2004-03-15 2004-03-15 Configuration data setting method and computer system Expired - Fee Related JP4257239B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004073178A JP4257239B2 (en) 2004-03-15 2004-03-15 Configuration data setting method and computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004073178A JP4257239B2 (en) 2004-03-15 2004-03-15 Configuration data setting method and computer system

Publications (2)

Publication Number Publication Date
JP2005259053A JP2005259053A (en) 2005-09-22
JP4257239B2 true JP4257239B2 (en) 2009-04-22

Family

ID=35084674

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004073178A Expired - Fee Related JP4257239B2 (en) 2004-03-15 2004-03-15 Configuration data setting method and computer system

Country Status (1)

Country Link
JP (1) JP4257239B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4847585B2 (en) 2007-06-12 2011-12-28 富士通株式会社 Configuration device
JP5151957B2 (en) * 2008-12-16 2013-02-27 富士通株式会社 Configuration method, configuration apparatus, and configuration program
US8058897B1 (en) * 2010-06-28 2011-11-15 Xilinx, Inc. Configuration of a multi-die integrated circuit
JP5774941B2 (en) * 2011-08-11 2015-09-09 日本信号株式会社 Configuration device and configuration method
JP6048249B2 (en) * 2013-03-19 2016-12-21 富士通株式会社 Device updating apparatus and device updating method
JP2016035692A (en) * 2014-08-04 2016-03-17 キヤノン株式会社 Image processing apparatus, system, information processing method, and program

Also Published As

Publication number Publication date
JP2005259053A (en) 2005-09-22

Similar Documents

Publication Publication Date Title
CN100454257C (en) Embedded system
US7937172B2 (en) Program creating device for programmable controller, program creating method for programmable controller, and recording medium having program recorded thereon
JP2009181425A (en) Memory module
JP4257239B2 (en) Configuration data setting method and computer system
US20080177931A1 (en) Byte mask command for memories
US7979606B2 (en) Method for storing data
US7085086B2 (en) Apparatus and method for reducing errors in writing to a storage medium
EP1814037B1 (en) Semiconductor storage device
EP1901195A2 (en) Unauthorized usage prevention system and information processing apparatus
JP2007257271A (en) Memory diagnostic method, microcomputer system and program
US7389445B2 (en) Circuit for detecting abnormal operation of memory and integrated circuit and method for detecting abnormal operation
JP4865213B2 (en) Interrupt controller
JPH1011277A (en) Computer device with electrically rewritable nonvolatile memory and nonvolatile semiconductor memory
JP2020101889A (en) Module, information processing device provided with module, program data update method for updating program data of module
US7185117B2 (en) Microcomputer and evaluation device, evaluation method thereof
JPH11110142A (en) Storage device and data processing method
JP2731047B2 (en) Program operand check method
JP2005316667A (en) Method for updating firmware
JP2003216507A (en) Storage capacity processing system
JPH0765592A (en) Nonvolatile memory
JPH0822404A (en) Film management system
TWI406175B (en) Memory card and method for memory card
JPS62118439A (en) Patching mechanism
JPH10293700A (en) Logical element confirming method and electronic device having logical element confirming function
JP2012048277A (en) Semiconductor integrated circuit, debugging system, debugging method, debugging program, and recording medium

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080218

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: 20090114

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090202

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

Free format text: PAYMENT UNTIL: 20120206

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees