集積回路と、前記集積回路とデータバスで接続されている中央処理部と、を有するデータバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、データバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記データバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記データバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記データバス診断記憶部は、前記安全関連記憶部に格納されたデータを格納し、前記データバス診断記憶部に前記安全関連記憶部に格納されたデータが格納された後、前記中央処理部は、前記データバス診断記憶部に格納されたデータ及び前記安全関連部に格納されたデータを読み出し、前記データバス診断記憶部に格納されたデータと前記安全関連記憶部に格納されたデータを比較することでデータバス上の転送エラーを検出することを特徴とするデータバス診断機能を備えた制御装置。請求項1記載のデータバス診断機能を備えた制御装置であって、前記集積回路の前記データバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記データバス診断記憶部からいずれか1つを選択し、選択された1つのデータバス診断記憶部に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることを特徴とするデータバス診断機能を備えた制御装置。集積回路と、前記集積回路とアドレスバスで接続されている中央処理部と、を有するアドレスバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、アドレスバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記アドレスバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記アドレスバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記アドレスバス診断記憶部は、前記中央処理部から供給される前記安全関連記憶部のアドレスを格納し、前記アドレスバス診断記憶部に前記安全関連記憶部のアドレスが格納された後、前記中央処理部は、前記アドレスバス診断記憶部に格納されたアドレスを読み出し、前記アドレスバス診断記憶部に格納されたアドレスと前記安全関連記憶部のアドレスを比較することでアドレスバス上の転送エラーを検出することを特徴とするアドレスバス診断機能を備えた制御装置。請求項3記載のアドレスバス診断機能を備えた制御装置であって、前記集積回路の前記アドレスバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記アドレスバス診断記憶部からいずれか1つを選択し、選択された1つのアドレスバス診断記憶部に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることを特徴とするアドレスバス診断機能を備えた制御装置。集積回路と、前記集積回路とデータバス及びアドレスバスで接続されている中央処理部と、を有するデータバス及びアドレスバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、データバス診断記憶部と、アドレスバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記データバス診断記憶部及びアドレスバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記データバス診断記憶部及びアドレスバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記データバス診断記憶部は、前記安全関連記憶部に格納されたデータを格納し、前記バス診断アドレス判定部から前記バス診断信号を受けた前記アドレスバス診断記憶部は、前記中央処理部から供給される前記安全関連記憶部のアドレスを格納し、前記データバス診断記憶部に前記安全関連記憶部に格納されたデータが格納され、前記アドレスバス診断記憶部に前記安全関連記憶部のアドレスが格納された後、前記中央処理部は、前記データバス診断記憶部に格納されたデータ、前記アドレスバス診断記憶部に格納されたアドレス及び前記安全関連部に格納されたデータを読み出し、前記データバス診断記憶部に格納されたデータと前記安全関連記憶部に格納されたデータを比較することでデータバス上の転送エラーを検出し、前記アドレスバス診断記憶部に格納されたアドレスと前記安全関連記憶部のアドレスを比較することでアドレスバス上の転送エラーを検出することを特徴とするデータバス及びアドレス診断機能を備えた制御装置。請求項5記載のデータバス及びアドレスバス診断機能を備えた制御装置であって、前記集積回路の前記データバス診断記憶部及び前記アドレスバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記データバス診断記憶部からいずれか1つを選択し、複数の前記アドレスバス診断記憶部からいずれか1つを選択し、選択された1つのデータバス診断記憶部とアドレスバス診断記憶部との組に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることを特徴とするデータバス及びアドレスバス診断機能を備えた制御装置。図6に示すような従来の制御装置においては、CPUの内部にパリティ生成回路及びパリティエラー検出回路が必要であるが、近年の高性能な組込用のCPUは、データバス及びアドレスバスに、パリティビットやECCビットを付加しないCPUが大部分であり、一般的な組込用のCPUを用いてデータバス及びアドレスバス上の転送エラー検出を行うことは困難になっている。一方、特許文献1から特許文献4には、CPUとデータバス及びアドレスバスにより接続される集積回路内にデータバス及びアドレスバス上の転送エラー検出のための回路を付加することによりデータバス及びアドレスバス上の転送エラーを検出する実施例が記載されているが、これらの例では、当該転送エラー検出のための回路が、安全関連部か、非安全関連部かを区別することなく動作するため、CPUの処理ルーチンに非安全関連部に係る処理が混在するシステムでは、CPUが、安全関連部に係る処理を行う際にデータバス及びアドレスバスの転送エラーの検出を行い、非安全関連部に係る処理を行う際はデータバス及びアドレスバスの転送エラーの検出を行わないということができなかった。本発明の目的は、安全関連部に属するレジスタである安全関連レジスタ及び非安全関連部に属する通常レジスタを有する集積回路と、中央処理部を有する制御装置において、中央処理部が安全関連レジスタにアクセスしたときについてのみ、データバス及びアドレスバス上の転送エラーを、検知することができる制御装置を提供することにある。1本発明は、集積回路と、前記集積回路とデータバスで接続されている中央処理部と、を有するデータバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、データバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記データバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記データバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記データバス診断記憶部は、前記安全関連記憶部に格納されたデータを格納し、前記データバス診断記憶部に前記安全関連記憶部に格納されたデータが格納された後、前記中央処理部は、前記データバス診断記憶部に格納されたデータ及び前記安全関連部に格納されたデータを読み出し、前記データバス診断記憶部に格納されたデータと前記安全関連記憶部に格納されたデータを比較することでデータバス上の転送エラーを検出することを特徴とする。2上記1のデータバス診断機能を備えた制御装置であって、前記集積回路の前記データバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記データバス診断記憶部からいずれか1つを選択し、選択された1つのデータバス診断記憶部に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることが好ましい。3また、本発明は、集積回路と、前記集積回路とアドレスバスで接続されている中央処理部と、を有するアドレスバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、アドレスバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記アドレスバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記アドレスバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記アドレスバス診断記憶部は、前記中央処理部から供給される前記安全関連記憶部のアドレスを格納し、前記アドレスバス診断記憶部に前記安全関連記憶部のアドレスが格納された後、前記中央処理部は、前記アドレスバス診断記憶部に格納されたアドレスを読み出し、前記アドレスバス診断記憶部に格納されたアドレスと前記安全関連記憶部のアドレスを比較することでアドレスバス上の転送エラーを検出することを特徴とする。4上記3のアドレスバス診断機能を備えた制御装置であって、前記集積回路の前記アドレスバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記アドレスバス診断記憶部からいずれか1つを選択し、選択された1つのアドレスバス診断記憶部に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることが好ましい。5また、本発明は、集積回路と、前記集積回路とデータバス及びアドレスバスで接続されている中央処理部と、を有するデータバス及びアドレスバス診断機能を備えた制御装置であって、前記集積回路は、前記中央処理部からアクセスされ、所定の安全関連部の動作状態を規定するデータを記憶する安全関連記憶部と、前記中央処理部からアクセスされ、所定の非安全関連部の動作状態を規定するデータを記憶する非安全関連記憶部と、データバス診断記憶部と、アドレスバス診断記憶部と、バス診断アドレス判定部と、を備え、前記バス診断アドレス判定部は、前記中央処理部のアクセス先のアドレスに基づき、前記中央処理部のアクセス先が前記安全関連記憶部であるときは、前記データバス診断記憶部及びアドレスバス診断記憶部にバス診断信号を供給し、前記中央処理部のアクセス先が前記非安全関連記憶部であるときは、前記データバス診断記憶部及びアドレスバス診断記憶部にバス診断信号を供給せず、前記バス診断アドレス判定部から前記バス診断信号を受けた前記データバス診断記憶部は、前記安全関連記憶部に格納されたデータを格納し、前記バス診断アドレス判定部から前記バス診断信号を受けた前記アドレスバス診断記憶部は、前記中央処理部から供給される前記安全関連記憶部のアドレスを格納し、前記データバス診断記憶部に前記安全関連記憶部に格納されたデータが格納され、前記アドレスバス診断記憶部に前記安全関連記憶部のアドレスが格納された後、前記中央処理部は、前記データバス診断記憶部に格納されたデータ、前記アドレスバス診断記憶部に格納されたアドレス及び前記安全関連部に格納されたデータを読み出し、前記データバス診断記憶部に格納されたデータと前記安全関連記憶部に格納されたデータを比較することでデータバス上の転送エラーを検出し、前記アドレスバス診断記憶部に格納されたアドレスと前記安全関連記憶部のアドレスを比較することでアドレスバス上の転送エラーを検出することを特徴とする。6上記5のデータバス及びアドレスバス診断機能を備えた制御装置であって、前記集積回路の前記データバス診断記憶部及び前記アドレスバス診断記憶部は、前記中央処理部の割込レベルの数に対応して複数設けられ、前記集積回路はさらに、前記中央処理部が前記安全関連記憶部にアクセスする際の割込レベルを示すデータを格納する割込レベル記憶部と、前記割込レベル記憶部に格納されたデータに基づいて、複数の前記データバス診断記憶部からいずれか1つを選択し、複数の前記アドレスバス診断記憶部からいずれか1つを選択し、選択された1つのデータバス診断記憶部とアドレスバス診断記憶部との組に、前記バス診断アドレス判定部から供給された前記バス診断信号を供給する選択回路と、を備えることが好ましい。上記構成によれば、バス診断アドレス判定部にアドレスが予め登録された安全関連記憶部に対して、中央処理部がアクセスした際の安全関連記憶部に格納された値及びアドレスバスの値が、データバス診断レジスタ及びアドレスバス診断レジスタそれぞれに格納される。その後、データバス診断レジスタに格納された値及び当該安全関連レジスタに格納された値を読み出し比較することで、データバス上の転送エラーを検知することができる。また、同様に、アドレスバス診断レジスタに格納された値及び当該安全関連部のアドレス値を比較することで、アドレスバス上の転送エラーを検知することができる。また、上記構成によれば、割込レベル毎に異なるデータバス診断レジスタ及びアドレスバス診断レジスタが使用され、複数の割込レベルにおいて、独立して安全関連部の診断処理を行うことができるため、複数の割込レベルでデータバス及びアドレスバス上の転送エラーを検出しようとする際に、他の割込レベルの処理内容を考慮することなく、診断処理のプログラムを容易に作成することができる。本発明によれば、安全関連部に属する安全関連記憶部及び非安全関連部に属する非安全記憶部を有する集積回路と、中央処理部を有する制御装置において、中央処理部が安全関連記憶部にアクセスしたときについてのみ、データバス及びアドレスバス上の転送エラーを検知することができる。図1は、本実施形態に係るデータバス及びアドレスバス診断機能を備えた制御装置の一例を示す図である。本実施形態に係るデータバス及びアドレスバス診断機能を備えた制御装置は、中央処理部であるCPU1a、データバス2、アドレスバス3、集積回路6aを備え、集積回路6aは、データバス診断記憶部としてのデータバス診断レジスタ12、アドレスバス診断記憶部としてのアドレスバス診断レジスタ13、バス診断アドレス判定部14、安全関連記憶部としての安全関連レジスタ1から安全関連レジスタN符号81から8NまでのN個のレジスタ、非安全関連記憶部としての通常レジスタ1から通常レジスタM符号91から9MまでのM個のレジスタ、入出力される値を一時的に記憶する入出力バッファ7、アドレスバスの値からアクセス先のレジスタを選択するアドレスデコーダ10、複数の入力信号のうち一つを選択して出力するデータセレクタ11を備える。CPU1aと、安全関連レジスタ1から安全関連レジスタN符号81から8N、通常レジスタ1から通常レジスタM符号91から9M、データバス診断レジスタ12及びデータセレクタ11は、入出力バッファ7を介し、データバス2により夫々接続される。また、データバス診断レジスタ12とデータセレクタ11も同様に、データバス2により接続される。CPU1aと、アドレスデコーダ10、バス診断アドレス判定部14及びアドレスバス診断レジスタ13は、アドレスバス3により夫々接続される。また、CPU1aとバス診断アドレス判定部14及びアドレスデコーダ10は、アドレスバス3で接続される他、書込制御信号WRN4及び読込制御信号RDN5を送るための制御線で夫々接続される。バス診断アドレス判定部14とデータバス診断レジスタ12及びアドレスバス診断レジスタ13は、バス診断信号CHKBUS15を送るための制御線で夫々接続される。アドレスデコーダ10と、安全関連レジスタ1から安全関連レジスタN符号81から8N及び通常レジスタ1から通常レジスタM符号91から9Mは、アドレスデコーダ10の出力WRS1~WRSN、WRN1~WRNMを各レジスタに送るための制御線で夫々接続される。また、アドレスデコーダ10とデータセレクタ11は、データセレクタ11の入力の複数の入力のうちいずれか1つを選択するためのレジスタ選択信号REGSEL16を送るための制御線で接続される。データセレクタ11と、安全関連レジスタ1から安全関連レジスタN符号81から8N及び通常レジスタ1から通常レジスタM符号91から9Mは、各レジスタの出力がデータセレクタ11に入力されるように、データバス2により夫々接続される。バス診断アドレス判定部14は、安全関連レジスタ1から安全関連レジスタN符号81から8Nのアドレスを内部に記憶し、安全関連レジスタ1から安全関連レジスタN符号81から8Nのいずれかに対しての書込制御信号WRN4又は読込制御信号RDN5をCPU1aから受けたときに、データバス診断レジスタ12及びアドレスバス診断レジスタ13に対しバス診断信号CHKBUS15を出力する。バス診断アドレス判定部14は、通常レジスタ1から通常レジスタM符号91から9Mに対しての書込制御信号WRN4又は読込制御信号RDN5をCPU1aから受けたときは、データバス診断レジスタ12とアドレスバス診断レジスタ13に対しバス診断信号CHKBUS15を出力しない。なお、バス診断アドレス判定部14が、CPU1aから読込制御信号RDN5を受けたときのみバス診断信号CHKBUS15を出力することでデータバス及びアドレスバス上の転送エラーを検出することが可能になるが、CPU1aから書込制御信号WRN4を受けた時にもバス診断信号CHKBUS15を出力することによって、CPU1aが安全関連レジスタにデータを書き込む際のデータバス及びアドレスバス上の転送エラーを検出するにあたって、CPU1aが保持している安全関連レジスタに書き込んだ値を利用できるため、CPU1aが安全関連レジスタに格納されている値を読み出す処理1回分を短縮することができる。データバス診断レジスタ12は、バス診断アドレス判定部14からバス診断信号CHKBUS15を受け取ったときに、データセレクタ11の出力データDBOUTを格納するレジスタとして機能するものである。本実施形態では、データバス診断レジスタ12は、格納したDBOUTの値を全ビット反転して出力するように構成されている。また、アドレスバス診断レジスタ13は、バス診断アドレス判定部14からバス診断信号CHKBUS15を受け取ったときに、CPU1aから入力されるアドレス値を格納するレジスタとして機能するものである。データセレクタ11は、アドレスデコーダ10から送られるレジスタ選択信号REGSEL16を参照し、データセレクタ11の複数の入力のうちいずれか1つを選択し、出力する機能を有するものである。なお、バス診断アドレス判定部14が、書込制御信号WRN4を受けたときだけでなく、読込制御信号RDN5を受けたときにもバス診断信号CHKBUS15をデータバス診断レジスタ12に出力するのは、安全関連レジスタには入力専用レジスタが含まれ、集積回路6a内の他の回路や、集積回路6a外の回路からアクセスされる虞があり、CPU1aが特定の安全関連レジスタに書き込み処理を行わなくても、異なる時間に当該特定の安全関連レジスタから読み込んだ値は同一とならない虞があるためである。図2は、本実施形態における、CPU1aの処理のフローチャートの一例を示す図である。図2のステップS219からS223に示すように、本実施形態では、CPU1a上で割込レベルの異なる2つの割込処理が動作するようになっている。安全関連レジスタ1から安全関連レジスタN符号81から8Nに対するデータ入出力処理である、安全入出力処理1から安全入出力処理Nは、割込レベル1側でのみ実施されている。割込の優先順位は、レベル1よりレベル2の方が高く、割込レベル1の処理中に割込レベル2の処理が発生した場合は、割込レベル2の処理を優先的に行うが、割込レベル2の処理中に割込レベル1の処理が発生しても、割込レベル2の処理が終えるまで割込レベル1の処理は開始されない。安全入出力処理1の詳細な実施手順については、ステップS201からS218に示す。以下、安全入出力処理1の詳細な実施手順について、図1及び図2に基づいて説明する。まず、図2に示す安全入出力処理1のステップS201からS218の概略を説明する。ステップS201からS203では、安全関連レジスタの異常を検出する。ステップS204からS206では、CPU1aが安全関連レジスタ1符号81にデータを書き込む際のデータバス2上の転送エラーを検出する。ステップS207からS209では、CPU1aが安全関連レジスタ1符号81にデータを書き込む際のアドレスバス3上の転送エラーを検出する。ステップS210からS213では、CPU1aが安全関連レジスタ1符号81からデータを読み出す際のデータバス2上の転送エラーを検出する。ステップS214からS216では、CPU1aが安全関連レジスタ1符号81からデータを読み出す際のアドレスバス3上の転送エラーを検出する。以下、各ステップを詳細に説明する。ステップS201では、CPU1aが、安全関連レジスタ1符号81にCPU1aの出力ポートSOUT1の値aaaとするを書き込む。このとき、バス診断アドレス判定部14は、CPU1aから書込制御信号WRN4を受け、内部に記憶された安全関連レジスタ1からN符号81から8Nのアドレスと、CPU1aから送られた書き込み先のレジスタのアドレスである安全関連レジスタ1符号81のアドレスとを比較し、安全関連部のレジスタへのデータの書き込みであると判断して、データバス診断レジスタ12とアドレスバス診断レジスタ13に対し、バス診断信号CHKBUS15を出力する。また、アドレスデコーダ10は、CPU1aから送られた書き込み先のレジスタのアドレスである安全関連レジスタ1符号81のアドレスを参照し、データセレクタ11に対し、安全関連レジスタ1符号81からの入力を選択し、出力することを指示するレジスタ選択信号REGSEL16を出力する。レジスタ選択信号REGSEL16を受けたデータセレクタ11は、その指示の通り、安全関連レジスタ1符号81からの入力を選択し、出力する。データバス診断レジスタ12は、バス診断アドレス判定部14からバス診断信号CHKBUS15を受けると、データセレクタ11から出力される値である、安全関連レジスタ1符号81に格納されているSOUT1の値aaaが格納される。また、アドレスバス診断レジスタ13は、バス診断アドレス判定部14からバス診断信号CHKBUS15を受けると、CPU1aから送られる安全関連レジスタ1符号81のアドレスAAAとするが格納される。ステップS202では、CPU1aが、安全関連レジスタ1符号81に格納されている値aaaをデータセレクタ11及び入出力バッファ7を介して読み出し、CPU1a内のレジスタR1に格納する。このとき、ステップS201における処理と同様に、バス診断アドレス判定部14は、CPU1aから読込制御信号RDN5を受け、データバス診断レジスタ12とアドレスバス診断レジスタ13に対し、バス診断信号CHKBUS15を出力し、データバス診断レジスタ12に安全関連レジスタ1符号81に格納されている値aaaが、アドレスバス診断レジスタ13に安全関連レジスタ1符号81のアドレスAAAが格納される。ステップS203では、CPU1aが、SOUT1の値とR1に格納された値が同一であるか否かを確認する。SOUT1の値とR1に格納された値が同一である場合は、安全関連レジスタ1符号81が正常であるとして、ステップS204に進む。SOUT1の値とR1に格納された値が異なる場合には、安全関連レジスタ1符号81に異常があると判断して、リトライや危険回避処理等を行う異常時処理1ステップS217に移行する。ステップS204では、CPU1aが、ステップS201においてデータバス診断レジスタ12に格納された値aaaをデータセレクタ11及び入出力バッファ7を介して読み出し、CPU1a内のレジスタR2に格納する。本実施形態では、データバス診断レジスタ12は格納された値を全ビット反転させて出力するため、R2に格納される値は、データバス診断レジスタ12に格納された値を全ビット反転させたものになる。R2に格納された値をデータバス診断レジスタ12に格納されていた値と同じ値にするために、ステップS205において、CPU1aは、R2に格納された値を全ビット反転させる。ステップS206では、CPU1aが、CPU1a内のレジスタR1に格納された値とCPU1a内のレジスタR2に格納された値が同一であるか否かを確認する。ここで、レジスタR1に格納された値とレジスタR2に格納された値が同じであれば、CPU1aが安全関連レジスタ1符号81にデータを書き込む際に、データバス2上で転送エラーが無かったとしてステップS207に進む。レジスタR1に格納された値とレジスタR2に格納された値が異なる場合には、データバス2上で転送エラーがあったと判断し、異常時処理1ステップS217に移行する。ステップS207では、CPU1aは、安全関連レジスタ1符号81のアドレスAAAをCPU1aのレジスタR1に格納する。ステップS208において、CPU1aは、ステップS201においてアドレスバス診断レジスタ13に格納された安全関連レジスタ1符号81のアドレスAAAをCPU1aのレジスタR2に格納する。ステップS209では、CPU1aは、CPU1a内のレジスタR1に格納された値とレジスタR2に格納された値が同一であるか否かを確認する。ここで、レジスタR1に格納された値とレジスタR2に格納された値が同じであれば、CPU1aが安全関連レジスタ1符号81にデータを書き込む際に、アドレスバス3上で転送エラーが無かったとしてステップS210に進む。レジスタR1に格納された値とレジスタR2に格納された値が異なる場合には、アドレスバス3上で転送エラーがあったと判断し、異常時処理1ステップS217に移行する。ステップS210では、CPU1aが、安全関連レジスタ2符号82に格納されている値bbbとするを読み出し、CPU1aの入力ポートSIN1にその値を格納する。このとき、ステップS201と同様の処理により、データバス診断レジスタ12に安全関連レジスタ2符号82に格納された値bbbが格納され、アドレスバス診断レジスタ13に安全関連レジスタ2符号82のアドレスBBBとするが格納される。ステップS211では、CPU1aが、ステップS210においてデータバス診断レジスタ12に格納された値bbbを読み出し、CPU1a内のレジスタR2に格納する。本実施形態では、データバス診断レジスタ12は格納された値を全ビット反転させて出力するため、R2に格納される値は、データバス診断レジスタ12に格納された値を全ビット反転させたものになる。R2に格納された値をデータバス診断レジスタ12に格納されていた値と同じ値にするために、ステップS212において、CPU1aは、R2に格納された値を全ビット反転させる。ステップS213では、CPU1aが、CPU1a内のレジスタR1に格納された値とレジスタR2に格納された値が同一であるか否かを確認する。ここで、レジスタR1に格納された値とレジスタR2に格納された値が同じであれば、CPU1aが安全関連レジスタ2符号82からデータを読み出す際に、データバス2上で転送エラーが無かったとして、ステップS214に進む。レジスタR1に格納された値とレジスタR2に格納された値が異なる場合には、データバス2上で転送エラーがあったと判断し、異常時処理2ステップS218に移行する。ステップS214では、CPU1aが、安全関連レジスタ2符号82のアドレスBBBをCPU1aのレジスタR1に格納する。ステップS215において、CPU1aは、ステップS210においてアドレスバス診断レジスタ13に格納された安全関連レジスタ2符号82のアドレスBBBをCPU1aのレジスタR2に格納する。ステップS216では、CPU1aが、CPU1a内のレジスタR1に格納された値とレジスタR2に格納された値が同一であるか否かを確認する。ここで、レジスタR1に格納された値とレジスタR2に格納された値が同じであれば、CPU1aが安全関連レジスタ2符号82からデータを読み出す際に、アドレスバス3上で転送エラーが無かったとして、ステップS220に進む。レジスタR1に格納された値とレジスタR2に格納された値が異なる場合には、アドレスバス3上で転送エラーがあったと判断し、異常時処理2ステップS218に移行する。ステップS216の処理が終了すると、安全入出力処理1が終了し、ステップS220に進む。ステップS220において、CPU1aが非安全関連部のレジスタである通常レジスタ1符号91に値を書き込んだときは、バス診断アドレス判定部14には通常レジスタ1のアドレスは記憶されていないため、バス診断アドレス判定部14はデータバス診断レジスタ12及びアドレスバス診断レジスタ13に対してバス診断信号CHKBUS15を出力しない。このため、データバス診断レジスタ12及びアドレスバス診断レジスタ13には通常レジスタ1符号91に書き込まれた値及びそのアドレスは格納されず、データバス2及びアドレスバス3の診断は行わないことになる。このように、本実施形態によれば、CPU1aが非安全関連部のレジスタにアクセスしたときは、データバス2及びアドレスバス3上の転送エラーを診断することはなく、安全関連部のレジスタにアクセスしたときのみデータバス2及びアドレスバス3上の転送エラーを診断するため、安全関連部と非安全関連部が混在している集積回路及びCPUの処理ルーチンに安全関連部と非安全関連部の処理が混在しているCPUを用いたときであっても、CPUが安全関連部のレジスタにアクセスしたときのみ、データバス及びアドレスバス上の転送エラーを検出することができる。本実施形態では、データバス及びアドレスバス上の転送エラーを検出するものであるが、本実施形態の構成からアドレスバス診断レジスタ13を省略し、データバス上の転送エラーのみを検出する構成にしてもよい。また、本実施形態の構成からデータバス診断レジスタ12を省略し、アドレスバス上の転送エラーのみを検出する構成にしてもよい。さらに、本実施形態では、安全入出力処理を割込優先順位の低い、割込レベル1にて実施しているが、割込レベル2で実施してもよい。但し、両方の割込レベルで安全入出力処理を行う場合、割込レベル1の安全入出力処理において各診断レジスタに格納した値が、割込レベル2の安全入出力処理の際に重ね書きされてしまうため、本実施形態では、両方の割込レベルに安全入出力処理を配置することはできない。図3は、他の実施形態に係るデータバス及びアドレスバス診断機能を備えた制御装置の一例を示す図である。後述するCPUバス診断レジスタ群21と割込レベルレジスタ20を備えること以外の構成要素については、上述の実施形態と同様であるので、重複する説明は省略する。図3に示す集積回路6bは、図1に示す集積回路6aが備えるものに加え、CPUバス診断レジスタ群21、CPU1aの現在の割込レベルを示す値を記憶する割込レベル記憶部としての割込レベルレジスタ20を備える。図1に示す集積回路6aが備えるデータバス診断レジスタ12及びアドレスバス診断レジスタ13は、後述するように、CPUバス診断レジスタ群21の中に含まれる。図4は、CPUバス診断レジスタ群21の構成の一例を示す図である。図4に示すCPUバス診断レジスタ21の構成は、CPU1aの割込レベルの数が4つの場合についての例である。CPUバス診断レジスタ群21は、割込レベルレジスタ20の値を読み込み、復号して出力するデコーダ210とCPU1aの割込レベルの数と同数のANDゲート211から214とからなる選択回路22、CPU1aの割込レベルの数と同数のデータバス診断レジスタ1からデータバス診断レジスタ4符号220から223、CPU1aの割込レベルの数と同数のアドレスバス診断レジスタ1からアドレスバス診断レジスタ4符号215から218、データセレクタ1符号224、データセレクタ2符号219を備える。選択回路22とデータバス診断レジスタ1からデータバス診断レジスタ4符号220から223及びアドレスバス診断レジスタ1からアドレスバス診断レジスタ4符号215から218は、バス診断信号CHKBUS15を送るための制御線で夫々接続される。データセレクタ1符号224とデータバス診断レジスタ1からデータバス診断レジスタ4符号220から223は、各レジスタの出力がデータセレクタ1符号224に入力されるように、データバス2により接続される。また、データセレクタ2符号219とアドレスバス診断レジスタ1からアドレスバス診断レジスタ4符号215から218は、各レジスタの出力がデータセレクタ2符号219に入力されるように、データバス2により接続される。割込レベルレジスタ20と選択回路22及びデータセレクタ1符号224及びデータセレクタ2符号219は、CPUの現在の割込レベル数を送るための制御線で夫々接続される。選択回路22は、割込レベルレジスタ20から送られるCPU1aの現在の割込レベルの値を参照し、データバス診断レジスタ220から223のうちいずれか1つ、及びアドレスバス診断レジスタ215から218のうちいずれか1つを選択して、バス診断アドレス判定部14から受け取ったバス診断信号CHKBUS15を、選択されたデータバス診断レジスタ及びアドレスバス診断レジスタに送る機能を有する。例えば、CPU1aの割込レベルが1であるとき、選択回路22は、データバス診断レジスタ1とアドレスバス診断レジスタ1とを選択し、CPU1aの割込レベルが2であるとき、選択回路22は、データバス診断レジスタ2とアドレスバス診断レジスタ2とを選択する。このように、データバス診断レジスタとアドレスバス診断レジスタは、CPU1aの現在の割込レベルに対応する組となって選択される。データセレクタ1符号224及びデータセレクタ2符号219は、割込レベルレジスタ20から送られるCPU1aの現在の割込レベルの値を参照し、データセレクタ1符号224及びデータセレクタ2符号219の複数の入力からいずれか1つの選択し、出力する機能を有する。例えば、CPU1aの割込レベルが1であるとき、データセレクタ1符号224及びデータセレクタ2符号219は、データバス診断レジスタ1及びアドレスバス診断レジスタ1から入力される値を選択して出力し、CPU1aの割込レベルが2であるとき、データセレクタ1符号224及びデータセレクタ2符号219は、データバス診断レジスタ2及びアドレスバス診断レジスタ2から入力される値を選択して出力する。図5は、本実施形態における、CPU1aの処理のフローチャートの一例を示す図である。図5に示す、ステップ501からS517及びステップS520からS531につき、図2に基づいて説明した内容と異なる部分について説明する。なお、本実施形態においては、割込レベル1においてのステップS501が終了した時点で、CPU1aにレベル2の割込処理が発生した場合について説明する。割込レベル1においてのステップS501では、CPU1aが、安全関連レジスタ1符号81にCPU1aの出力ポートSOUT1の値cccとするを書き込む。このとき、バス診断アドレス判定部14はCPU1aから安全関連レジスタ1符号81に対しての書込制御信号WRN4を受け、CPUバス診断レジスタ群21内の選択回路22に対して、バス診断信号CHKBUS15を出力する。選択回路22は、割込レベルレジスタ20からCPU1aの現在の割込レベルレベル1を示す値を読み込み、復号して出力することにより、データバス診断レジスタ1符号220及びアドレスバス診断レジスタ1符号215を選択する。選択されたデータバス診断レジスタ1符号220及びアドレスバス診断レジスタ1符号215にバス診断信号CHKBUS15が供給され、データバス診断レジスタ1符号220にSOUT1の値cccが格納され、アドレスバス診断レジスタ1符号215に安全関連レジスタ1符号81のアドレスCCCとするが格納される。割込レベル1においてのステップS501が終了した後、CPU1aにレベル2の割込処理が発生すると、レベル2の割込処理が開始されるステップS526からS531。ステップS526では、レベル2の割込処理を終えた後に、元の割込レベルの処理に戻れるようにするために、レベル2の割込処理が発生した時点での割込レベルの値をスタックに格納する。本実施形態では、レベル2の割込処理が発生した時点での割込レベルは1であるから、スタックに割込レベル1を示す値を格納する。ステップS527では、割込レベルレジスタ20に、CPU1aの現在の割込レベルが2であることを示す値が格納される。ステップS528において、安全入出力処理5が開始される。安全入出力処理5の処理内容は、安全入出力処理1と同様である。割込レベル2においてのステップS501では、CPU1aが、安全関連レジスタ5符号85にCPU1aの出力ポートSOUT1の値dddとするを書き込む。このとき、バス診断アドレス判定部14はCPU1aから安全関連レジスタ5符号85に対しての書込制御信号WRN4を受け、CPUバス診断レジスタ群21内の選択回路22に対して、バス診断信号CHKBUS15を出力する。選択回路22は、割込レベルレジスタ20からCPU1aの現在の割込レベルレベル2の値を読み込み、復号して出力することにより、データバス診断レジスタ2符号221及びアドレスバス診断レジスタ2符号216を選択する。選択されたデータバス診断レジスタ2符号221及びアドレスバス診断レジスタ2符号216にバス診断信号CHKBUS15が供給され、データバス診断レジスタ2符号221にSOUT1の値dddが格納され、アドレスバス診断レジスタ2符号216に安全関連レジスタ5符号85のアドレスDDDが格納される。このように、CPU1aの割込レベルが2であるときは、データバス診断レジスタ2符号221にCPU1aの出力ポートSOUT1の値が格納され、アドレスバス診断レジスタ2符号216に安全関連レジスタ5符号85のアドレスの値が格納され、データバス診断レジスタ1符号220及びアドレスバス診断レジスタ2符号215の値は書き換わらない。以後、ステップS516までの処理は、図2に基づいて説明した内容と同様であるため、説明は省略するが、割込レベル2においての安全入出力処理においては、CPU1aはデータバス診断レジスタ2符号221及びアドレスバス診断レジスタ2符号216以外のデータバス診断レジスタ及びアドレスバス診断レジスタにはアクセスしない。そのため、データバス診断レジスタ1符号220及びアドレスバス診断レジスタ1符号215に格納された値は書き換わらない。安全入出力処理5が終了し、割込レベル2の処理がステップS531まで進むと、割込レベル2の処理は終了し、割込レベル1の処理が再開する。上述のとおり、割込レベル1においてのステップS501においてデータバス診断レジスタ1符号220及びアドレスバス診断レジスタ1符号215に格納された値は書き換えられず残っているため、割込レベル1において、割込レベル2の処理が始まる前に途中まで処理した安全入出力処理1を引き続き処理することができる。このように、本実施形態では、複数の割込レベルにおいて、独立して安全入出力処理を行うことができる。本実施形態においても、本実施形態の構成からアドレスバス診断レジスタ1から4符号215から218を省略し、データバス上の転送エラーのみを検出する構成にしてもよい。また、本実施形態の構成からデータバス診断レジスタ1から4符号220から223を省略し、アドレスバス上の転送エラーのみを検出する構成にしてもよい。