JP2011065415A - 非同期バス・インタフェース回路 - Google Patents

非同期バス・インタフェース回路 Download PDF

Info

Publication number
JP2011065415A
JP2011065415A JP2009215469A JP2009215469A JP2011065415A JP 2011065415 A JP2011065415 A JP 2011065415A JP 2009215469 A JP2009215469 A JP 2009215469A JP 2009215469 A JP2009215469 A JP 2009215469A JP 2011065415 A JP2011065415 A JP 2011065415A
Authority
JP
Japan
Prior art keywords
write
read
data
bus
output
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.)
Pending
Application number
JP2009215469A
Other languages
English (en)
Inventor
Kenji Mitaki
顕治 三滝
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric 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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2009215469A priority Critical patent/JP2011065415A/ja
Publication of JP2011065415A publication Critical patent/JP2011065415A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】マイクロプロセッサにはバス・アクセスのためのバス・アクセス・ウエイトを最小とし、一連の連続バス・アクセス動作が書き込み動作、読み出し動作とも互いに物理的な影響を与えず、各動作を停止させることなく連続非同期バス・アクセスを正常に実行することができる非同期バス・インタフェース回路を提供する。
【解決手段】アドレスを一時保存し、出力するライト・アドレス・バッファ114と、データを一時保存し、出力するライト・データ・バッファ116と、ライト・イネーブル信号を生成し、出力するライト制御回路115と、を備え、ライト・イネーブル信号がイネーブルのとき、ライト・アドレス・バッファ114から出力されるアドレスとライト・データ・バッファ116から出力されるデータとを、内部レジスタ102に書き込む。
【選択図】図1

Description

本発明は、マイクロコンピュータにおいて、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、CPLD(Complex Programmable Logic Device)といったデバイスに実装されるマクロ回路とマイクロプロセッサとのデータの送受信転送を行う非同期バス・インタフェース回路に関する。
マイクロコンピュータにおいて、ACIC、FPGA、CPLDといったデバイスに実装され、マイクロプロセッサをサポートする演算や入出力制御などを機能ブロックにまとめた半導体回路であるマクロ回路と、マイクロプロセッサを非同期バスで接続した構成を持つものがある。マクロ回路は低消費電力化のため、動作クロック周波数は低く抑える傾向にあり、マイクロプロセッサがマクロ回路にデータを転送する場合、バス・アクセス・ウエイトの時間が長くなるという問題があった。
この問題に対し、非同期バスを介してマイクロプロセッサとハンドシェイクを行ってデータを受信、一時記憶し、そのデータをマクロ回路へ出力する非同期バス・インタフェース回路を備えるマイクロコンピュータが知られている。(例えば特許文献1参照)
特許文献1の従来の非同期バス・インタフェース回路を備えたマイクロコンピュータの例を図8に示す。
図8において、11はマイクロプロセッサ、12は非同期バス、13はマクロ回路、14は非同期バス・インタフェース回路である。非同期バス・インタフェース回路14の内部の15は、外部レジスタであり、非同期バス12を介して書き込み要求信号に基づき入力されるデータを一時保存し、出力する。16は、同期化バッファであり、外部レジスタ15から出力されるデータを一時保存後、一時保存されたデータをマクロ回路13の動作クロックに同期して出力する。18は、調停回路であり、外部レジスタ15への書き込み要求信号を受信し、マクロ回路13の動作クロックに同期して書き込み信号を生成し、出力する書き込み信号生成サイクルを実行すると共に、書き込み要求信号を受信したときに、既に実行中の書き込み信号生成サイクルがあればこれを取り消す。17は、内部レジスタであり、同期化バッファ16から出力されるデータを調停回路の出力する書き込み信号が入力されたときのみ読み込んで一時保存し、一時保存されたデータをマクロ回路13の動作クロックに同期して出力する。
このように、従来の非同期バス・インタフェース回路14は、非同期バス12と同期動作するマクロ回路13との間で、非同期バス12を介して書き込み要求信号に基づき入力されるデータを一時保存後、出力する外部レジスタ15、外部レジスタ15から出力されるデータを一時保存後、一時保存されたデータをマクロ回路13の動作クロックに同期して出力する同期化バッファ16を備え、レジスタを含む多段バッファの構成でマイクロプロセッサ11からASIC、FPGA、CPLDといったデバイスに実装されるマクロ回路13との間でデータの送受信転送を行っている。
特開2002−140291号公報(請求項1−2、図1、図4、図5)
しかしながら、特許文献1に示す従来の非同期バス・インタフェース回路は、外部レジスタと内部レジスタの間に同期化バッファを配置し、外部レジスタへ書き込まれたデータを同期化バッファで保持して同期化バッファから内部レジスタへデータを書き込むようにした構成となっているので、受信したデータを内部レジスタへ書き込む前にマイクロプロセッサが次のデータの転送を要求した場合は、調停回路が古いデータを内部レジスタへ書き込まないようにし、新しいデータで古いデータを上書きすることで古いデータの破棄を行い、マクロ回路には常に最後に書き込まれたデータしか転送されず、連続したデータ転送が行われない。
また、マクロ回路の動作クロック周波数が遅い場合には、マクロ回路の動作クロックの周波数に合わせてバス・アクセスするには、マイクロプロセッサに必要以上のバス・アクセス・ウェイトを挿入しなければならないという従前からの問題も残ったままである。
また、従来の非同期バス・インタフェース回路は、読み出し動作と書き込み動作との共有化には対応していないため、書き込み要求の動作サイクルが完了するまでは、読み出し要求が受けられない。
また、マイクロプロセッサのバス設定機能が読み出しと書き込みのバス・アクセス・ウエイト機能が共有型の場合、読み出し機能はマクロ回路内制御信号に依存してしまうため、バス・アクセス・ウエイトが挿入され、目標とするアクセス動作タイムにはならないという問題もある。
本発明はこのような問題点に鑑みてなされたものであり、マイクロプロセッサのバス・アクセスのためのバス・アクセス・ウエイトを最小とし、一連の連続バス・アクセス動作が書き込み動作、読み出し動作とも互いに物理的な影響を与えず、各動作を停止させることなく連続非同期バス・アクセスを正常に実行することができる非同期バス・インタフェース回路を提供することを目的とする。
上記問題を解決するため、本発明は、次のように構成したのである。
請求項1に記載の発明は、マイクロプロセッサの非同期バスと、マクロ回路との間に配置され、前記マクロ回路とデータの入出力を行う内部レジスタを有する非同期バス・インタフェース回路において、前記マイクロプロセッサの前記非同期バスから出力されるライト制御信号に基づき入力されるアドレスを一時保存し、出力するライト・アドレス・バッファと、前記ライト制御信号に基づき入力されるデータを一時保存し、出力するライト・データ・バッファと、前記ライト制御信号を受信し、前記マクロ回路のクロックに同期したライト・イネーブル信号を生成し、出力するライト制御回路と、を備え、前記ライト・イネーブル信号がイネーブルのとき、前記ライト・アドレス・バッファから出力されるアドレスと前記ライト・データ・バッファから出力されるデータとを、前記内部レジスタに書き込むことを特徴とするものである。
また、請求項2に記載の発明は、請求項1記載の非同期バス・インタフェース回路において、前記マイクロプロセッサの前記非同期バスから出力されるリード制御信号に基づき入力される読み出しアドレスを一時保存し、出力する第1リード・アドレス・バッファと、前記第1リード・アドレス・バッファが出力するアドレスを一時保存し、出力する第2リード・アドレス・バッファと、前記非同期バス・リード制御信号を受信し、前記マクロ回路のクロックに同期したリード・イネーブル信号を生成し、出力するリード制御回路と、を備え、前記リード・イネーブル信号がイネーブルのとき、前記第2リード・アドレス・バッファから出力されるアドレスのデータを前記内部レジスタから読み出すことを特徴とするものである。
また、請求項3に記載の発明は、請求項2記載の非同期バス・インタフェース回路において、前記リード・イネーブル信号がイネーブルのとき、前記非同期バスに前記内部レジスタからの読み出しデータを出力し、前記リード・イネーブル信号がディセーブルのとき、前記非同期バスにはハイインピーダンスの出力状態とする、データ・バス切り替え器をさらに備えることを特徴とするものである。
また、請求項4に記載の発明は、請求項1記載の非同期バス・インタフェース回路において、前記ライト・アドレス・バッファ、前記ライト・データ・バッファを、前記マイクロプロセッサのバス・クロック信号を動作クロックとし、前記ライト制御信号を動作イネーブル用の信号とする同期型メモリとすることを特徴とするものである。
請求項1に記載の発明によると、ライト・アドレス・バッファ、ライト・データ・バッファで非同期バス上のアドレスとデータをバス・アクセス毎にバッファリングし、次の書き込みまで保持し、並行してライト制御信号から直ちに、マクロ回路の動作クロックに同期したライト・イネーブル信号を生成し、内部レジスタへの書き込み動作を実行完了しているため、余分なバス・アクセスの待ち時間が生じず、その結果、バス・アクセス・ウエイトを必要以上にマイクロプロセッサに要求することなく最小のバス・アクセス時間で、連続した書き込み動作を実行することができる。
また、請求項2に記載の発明によると、二つのリード・アドレス・バッファで非同期バス上のアドレスをバス・アクセス毎にバッファリングし、次の読み出しまで保持し、並行して非同期バス・リード制御信号から直ちに、マクロ回路の動作クロックに同期したリード・イネーブル信号を生成し、内部レジスタからの読み出し動作を実行完了しているため、余分なバス・アクセスの待ち時間が生じず、その結果、バス・アクセス・ウエイトを必要以上にマイクロプロセッサに要求することなく最小のバス・アクセス時間で、連続した読み出し動作を実行することができる。
さらに、請求項3に記載の発明によると、リード・イネーブル信号がイネーブルの場合には、非同期バスへリード・データ・バスからの読み出しデータを出力し、リード・イネーブル信号がディセーブルの場合には、非同期バスへはハイインピーダンスの出力状態とする、データ・バス切り替え器を備え非同期バスとの読み出しバス・アクセスに対応しているため、マイクロプロセッサは、連続した書き込み、読み出しに関わらずマクロ回路とのバス・アクセス動作を実行することができる。
そして、請求項4に記載の発明によると、ライト・アドレス・バッファ、ライト・データ・バッファをマイクロプロセッサのバス・クロック信号に同期したメモリでも動作するよう構成でき、これらバッファが同期型か非同期型かを選択できるようにすることができるので、チップ・ダイ・サイズ、消費電力やパフォーマンスの観点から何れかのバッファを選択し、非同期バス・インタフェース回路を構成できる。
本発明の非同期バス・インタフェース回路を備えたマイクロコンピュータの構成を示すブロック図 本発明の非同期バス・インタフェース回路のライト制御回路のブロック図 書き込みが連続で発生する場合のバス・アクセス動作のタイミングチャート図 本発明の非同期バス・インタフェース回路のリード制御回路のブロック図 読み出しが連続で発生する場合のバス・アクセス動作のタイミングチャート図 読み出し、書き込み、読み出しが連続で発生する場合のバス・アクセス動作のタイミングチャート図 書き込み、読み出し、書き込みが連続で発生する場合のバス・アクセス動作のタイミングチャート図 従来の非同期バス・インタフェース回路を備えたマイクロコンピュータの構成を示すブロック図
以下、本発明の実施の形態について、図面を参照して説明する。
図1は、本発明の非同期バス・インタフェース回路1を備えたマイクロコンピュータの構成を示すブロック図である。
同図において、マイクロコンピュータは、マイクロプロセッサ100と、非同期バス103と、非同期バス・インタフェース回路1と、マクロ回路101とを備えており、非同期バス103には、マイクロプロセッサ100と、非同期バス・インタフェース回路1を介してマクロ回路101が接続されている。
マイクロプロセッサ100は、マイクロコンピュータの主となる演算制御を行う装置であり、非同期バス103を介して、必要なときには逐次、マクロ回路101への書き込み、読み出し各動作により、データの送受信転送を行う。非同期バス103は、データ転送を行うための伝送路であり、マイクロプロセッサ100の制御信号105、アドレス106、データ107とで構成され、マイクロプロセッサ100がマクロ回路101から読み出すデータ、マイクロプロセッサ100がマクロ回路101に書き込む命令やデータを1回のアクセスで転送可能な十分なバス幅を有する。ここで制御信号105は、チップセレクト信号(図示せず)、リード制御信号108、ライト制御信号109を合わせた信号を表す。マクロ回路101は、マイクロプロセッサ100をサポートする演算、入出力制御などが機能ブロックごとにまとめられた半導体回路であり、ASIC、FPGA、CPLDといったデバイスに実装される。
非同期バス・インタフェース回路1は、非同期バス103及びマクロ回路101とそれぞれ入出力可能に構成されており、またマクロ回路101からマクロ回路101のクロック発生器104で発生されたクロック104aが入力されている。
次に非同期バス・インタフェース回路1の詳細について説明する。
ライト・アドレス・バッファ114は、ライト制御信号109に基づき入力される書き込み用のアドレス106を一時保存し、ライト・アドレス・バス119に出力する。ライト・データ・バッファ115は、ライト制御信号109に基づき入力される書き込み用のデータ107を一時保存し、ライト・データ・バス121に出力する。ライト制御回路115は、マクロ回路101のクロック104aに同期したライト・イネーブル信号120を内部レジスタ102に出力する。内部レジスタ102はマクロ回路101とデータの入出力を行うレジスタである。ライト・イネーブル信号120がイネーブルのときにライト・アドレス・バス119とライト・データ・バス121のデータが内部レジスタ102に書き込まれる。
第1リード・アドレス・バッファ112はリード制御信号108に基づき入力される読み出し用のアドレス106を一時保存し、第2リード・アドレス・バッファに出力する。第2リード・アドレス・バッファ113は第1リード・アドレス・バッファ112の出力を入力し一時保存し、リード・アドレス・バス118に出力する。リード制御回路110は、マクロ回路101のクロック104aに同期したリード・イネーブル信号117を内部レジスタ102に出力する。リード・イネーブル信号117がイネーブルのときに内部レジスタ102からリード・データ・バス122に読み出しデータが出力される。
データ・バス・切り替え器111は、書き込み、読み出しが交互に行われるときにデータ107の流れの切り替えを行う。すなわち、リード・イネーブル信号117がイネーブルのときはマクロ回路101からのデータの読み出しであるので、リード・データ・バス122のデータをデータ107に出力し、それ以外は非同期バス103にはハイインピーダンスの出力状態とする。
本発明が従来技術と異なる部分は、ライト・アドレス・バッファ114、ライト制御回路115、ライト・データ・バッファ116、リード制御回路110、第1リード・アドレス・バッファ112、第2リード・アドレス・バッファ113、データ・バス切り替え器111を備えた点である。
次に、マイクロプロセッサ100からマクロ回路101にデータを書き込む場合の詳細を説明する。
内部レジスタ102は、入力動作クロックとしてマクロ回路101のクロック104aが接続されており、入力側にリード・アドレス・バス118と、ライト・アドレス・バス119と、ライト・データ・バス121と、リード・イネーブル信号117と、ライト・イネーブル信号120が接続されており、出力側にリード・データ・バス122が接続されている。
ライト・アドレス・バッファ114は、入力データラッチ制御信号としてライト制御信号109が接続されており、入力側に非同期バス103のアドレス106が接続されており、出力側はライト・アドレス・バス119として内部レジスタ102の入力側に接続されている。ライト・アドレス・バッファ114は、マイクロプロセッサ100から非同期バス103を介してバッファリング可能なバッファメモリであり、ライト制御信号109の立ち上がりで、非同期バス103のアドレス106を一時保存することで、マイクロプロセッサ100をウエイトさせることなくバッファリングが可能である。バッファリングされたアドレスは、次にバッファリングされるまで保持されるとともに内部レジスタ102に出力される。
ライト・データ・バッファ116は、入力データラッチ制御信号としてライト制御信号109が接続されており、入力側に非同期バス103のデータ107が接続されており、出力側はライト・データ・バス121として内部レジスタ102の入力側に接続されている。ライト・データ・バッファ116は、マイクロプロセッサ100から非同期バス103を介してバッファリング可能なバッファメモリであり、ライト制御信号109の立ち上がりで、非同期バス103のデータ107を一時保存することで、マイクロプロセッサ100をウエイトさせることなくバッファリングが可能である。バッファリングされたデータは、次にバッファリングされるまで保持されるとともに内部レジスタ102に出力される。
ライト制御回路115は、入力動作クロックとしてマクロ回路101のクロック104aが接続されており、入力側にライト制御信号109が接続されており、出力側はライト・イネーブル信号120として内部レジスタ102の入力側に接続されている。
図2はライト制御回路115のブロック図である。図2に示すように、ライト制御回路115は、ライト制御信号109を入力信号、マクロ回路101のクロック104aを動作クロックとして、一段目のフリップフロップ123aで、マクロ回路101のクロック104aの立ち上がりでライト制御信号109を一時保存し、その出力をQ0A信号127として二段目のフリップフロップ123bに出力する。フリップフロップ123bで、クロック104aの立ち下りでQ0A信号127を一時保存し、その出力をQ0B信号128として三段目のフリップフロップ123cに出力する。フリップフロップ123cで、クロック104aの立ち上がりでQ0B信号128を一時保存し、その出力をQ0C信号129として四段目のフリップフロップ123dに出力する。フリップフロップ123dで、クロック104aの立ち下りでQ0C信号129を一時保存し、その出力をQ0D信号130として出力する。このQ0D信号130の論理反転をNOT回路124で生成し、この論理反転信号をQ0B信号128と論理積をとり生成される信号をライト・イネーブル信号120とし、内部レジスタ102へ出力する。
図3に書き込みが連続で発生する場合の一連のバス・アクセス動作に関するタイミングチャート図を示す。ここで、(a)〜(k)は以下に記す信号またはデータを示している。
(a)−ライト制御信号109
(b)−非同期バス103のアドレス106とデータ107
(c)−ライト・アドレス・バス119とライト・データ・バス121
(d)−ライト・イネーブル信号120
(e)−内部レジスタ102へのライト・タイミング
(f)−マクロ回路101のクロック104a
(g)−クロック104aの反転信号
(h)−図2におけるフリップフロップ123aのQ0A信号
(i)−図2におけるフリップフロップ123bのQ0B信号
(j)−図2におけるフリップフロップ123cのQ0C信号
(k)−図2におけるフリップフロップ123dのQ0D信号
この図に示すように、非同期バス・インタフェース回路1では、マイクロプロセッサ100の非同期バス103を介して、ライト・アドレス・バッファ114にライト制御信号109に基づき入力される書き込みアドレスを一時保存し出力する。そして、ライト・データ・バッファ116にて、ライト制御信号109に基づき入力される書き込み非同期バス103のデータ107を一時保存し出力する。同時に、ライト制御回路115にて、ライト制御信号109を受信し、マクロ回路104のクロック104aに同期したライト・イネーブル信号120を生成し出力する。ライト・イネーブル信号120がイネーブル(High)のとき、ライト・アドレス・バッファ114から出力されるアドレスとライト・データ・バッファ116から出力されるデータを、クロック104aに同期して内部レジスタ102に書き込み、非同期バス103からの書き込み動作を完了する。
すなわち、ライト・アドレス・バッファ、ライト・データ・バッファで非同期バス上のアドレスとデータをバス・アクセス毎にバッファリングし、次の書き込みまで保持し、並行してライト制御信号から直ちに、マクロ回路の動作クロックに同期したライト・イネーブル信号を生成し、内部レジスタへの書き込み動作を実行完了しているため、余分なバス・アクセスの待ち時間が生じず、その結果、バス・アクセス・ウエイトを必要以上にマイクロプロセッサに要求することなく最小のバス・アクセス時間で、連続した書き込み動作を実行することができる。このようにして、連続した書き込み時の非同期バス・アクセスであっても、マイクロプロセッサ100に必要以上のバス・ウエイトを要求することなく、さらにデータの取りこぼしがなく、マイクロプロセッサ100とマクロ回路101とのデータの送受信転送ができるのである。
次に、マイクロプロセッサ100がマクロ回路101からデータを読み出す場合の詳細を説明する。
図1において、第1リード・アドレス・バッファ112は、入力動作クロックとしてマクロ回路101のクロック104aが接続されており、入力側に非同期バス103のアドレス106が接続されており、出力側は第2リード・アドレス・バッファ113が接続されている。第2リード・アドレス・バッファ113は、入力動作クロックとしてクロック104aの反転信号が接続されており、入力側に第1リード・アドレス・バッファ112の出力が接続されており、出力側はリード・アドレス・バス118として内部レジスタ102の入力側に接続されている。リード・アドレス・バッファはクロック104aで動作するバッファであり、外部非同期信号を同期回路に取り込む回路であるため二段構成としている。
リード制御回路110は、入力動作クロックとしてクロック104aが接続されており、入力側にリード制御信号108が接続されており、出力側はリード・イネーブル信号117として内部レジスタ102の入力側に接続されている。
図4はリード制御回路110のブロック図である。図4に示すように、リード制御回路110は、リード制御信号108を入力信号、マクロ回路101のクロック104aを動作クロックとして、一段目のフリップフロップ123eで、クロック104aの立ち上がりでリード制御信号108を一時保存し、その出力をQIA信号131として二段目のフリップフロップ123fに出力する。フリップフロップ123fで、クロック104aの立ち下りでQIA信号131を一時保存し、その出力をQIB信号132として三段目のフリップフロップ123gに出力する。フリップフロップ123gで、クロック104aの立ち下りでQIB信号132を一時保存し、その出力をQIC信号133として出力する。このQIC信号133とQIB信号132との論理和をとり、さらに論理反転して生成される信号をリード・イネーブル信号117とし、内部レジスタ102へ出力する。
図5に読み出しが連続で発生する場合の一連のバス・アクセス動作に関するタイミングチャート図を示す。ここで、(a)〜(k)は以下に記す信号またはデータを示している。、
(a)−リード制御信号108
(b)−非同期バス103のアドレス106
(c)−第1リード・アドレス・バッファ112出力信号
(d)−リード・アドレス・バス118(第2リード・アドレス・バッファ113出力信号)
(e)−リード・イネーブル信号117
(f)−リード・データ・バス122
(g)−マクロ回路101のクロック104a
(h)−クロック104aの反転信号
(i)−図4におけるフリップフロップ123eのQIA信号
(j)−図4におけるフリップフロップ123fのQIB信号
(k)−図4におけるフリップフロップ123gのQIC信号
この図に示すように、非同期バス・インタフェース回路1では、マイクロプロセッサ100の非同期バス103を介して、リード制御信号108に基づき入力される読み出しアドレス106を第1リード・アドレス・バッファ112にマクロ回路101のクロック104aに同期して一時保存し出力する。そして、この第1リード・アドレス・バッファ112で一時保存したアドレスを第2リード・アドレス・バッファ113にて、さらにクロック104aに同期して一時保存し、出力することでマクロ回路101に同期した信号として使用する。同時に、リード制御回路110において、リード制御信号108を受信し、クロック104aに同期したリード・イネーブル信号117を生成し出力する。リード・イネーブル信号117がイネーブル(High)のとき、第2リード・アドレス・バッファ113から出力されるアドレスのデータを、内部レジスタ102のリード・データ・バス122から読み出し、クロック104aに同期して非同期バス103への読み出し動作を完了する。
すなわち、二つのリード・アドレス・バッファで非同期バス上のアドレスをバス・アクセス毎にバッファリングし、次の読み出しまで保持し、並行して非同期バス・リード制御信号から直ちに、マクロ回路の動作クロックに同期したリード・イネーブル信号を生成し、内部レジスタからの読み出し動作を実行完了しているため、余分なバス・アクセスの待ち時間が生じず、その結果、バス・アクセス・ウエイトを必要以上にマイクロプロセッサに要求することなく最小のバス・アクセス時間で、連続した読み出し動作を実行することができる。このようにして、連続した読み出し時の非同期バス・アクセスであっても、マイクロプロセッサ100に必要以上のバス・ウエイトを要求することなく、さらにデータの取りこぼしがなく、マイクロプロセッサ100とマクロ回路101とのデータの送受信転送ができるのである。
次に、マイクロプロセッサ100がマクロ回路101に対して読み出し、書き込みを交互に行う場合の詳細を説明する。
本発明では図1に示すように、データ・バス切り替え器111を備え、これでタイミングを制御する。データ・バス切り替え器111は、制御入力信号としてリード・イネーブル信号117が接続されており、入力側にリード・データ・バス122が接続されており、出力側に非同期バス103のデータ107が接続されている。リード・イネーブル信号117がイネーブル(High)の場合には、非同期バス103へリード・データ・バス122からの読み出しデータを出力し、リード・イネーブル信号117がディセーブル(Low) の場合には、非同期バス103へはハイインピーダンスの出力状態とする。
図6に読み出し、書き込み、読み出しが連続で発生する場合の一連のバス・アクセス動作に関するタイミングチャート図を示す。ここで、(a)〜(g)は以下に記す信号またはデータを示している。
(a)−非同期バスの制御信号105
(b)−非同期バス103のアドレス106、データ107
(c)−ライト・アドレス・バッファ114、ライト・データ・バッファ116
(d)−内部レジスタ102からのリード・データ
(e)−内部レジスタ102へのライト後データ
(f)−ライト・イネーブル信号120
(g)−リード・イネーブル信号117
また、図7に書き込み、読み出し、書き込みが連続で発生する場合の一連のバス・アクセス動作に関するタイミングチャート図を示す。ここで、(a)〜(g)は図6と同じ信号またはデータを示している。
すなわち、リード・イネーブル信号がイネーブルの場合には、非同期バスへリード・データ・バスからの読み出しデータを出力し、リード・イネーブル信号がディセーブルの場合には、非同期バスへはハイインピーダンスの出力状態とする、データ・バス切り替え器を備え非同期バスとの読み出しバス・アクセスに対応しているため、マイクロプロセッサは、連続した書き込み、読み出しに関わらずマクロ回路とのバス・アクセス動作を実行することができる。このような構成とすることで、マイクロプロセッサ100は、読み出し、書き込みに関わらず、非同期バス103上でのデータの衝突を回避でき、マクロ回路101とのバス・アクセスを正常に動作完了させることができる。
実施例2として、ライト・アドレス・バッファ114、ライト・データ・バッファ116に同期型メモリを使用する例を説明する。
これまで説明してきたように、ライト・アドレス・バッファ114は、ライト制御信号109の立ち上がりで、非同期バス103のアドレス106を一時保存し、出力する動作となっている。また、ライト・データ・バッファ116は、ライト制御信号109の立ち上がりで、非同期バス103のデータ107を一時保存し、出力する動作となっている。
このとき、ライト・アドレス・バッファ114、ライト・データ・バッファ116は共にマイクロプロセッサ100の非同期バス103のバス・クロック信号134を動作クロックとせずに動作する非同期型のメモリ、例えばSRAMから構成されるバッファとなっている。
一般にマイクロプロセッサ100は、マイクロプロセッサ100内部でバス・クロック信号134を生成し、これに同期して、制御信号105、アドレス106、データ107を非同期バス103に出力している。このことから、ライト・アドレス・バッファ114は、バス・クロック信号134を動作クロックとし、ライト制御信号109をメモリの動作イネーブル信号とし、非同期バス103のアドレス106を入力とする同期型メモリの構成とするバッファであっても良い(図示せず)。同様に、ライト・データ・バッファ116は、バス・クロック信号134を動作クロックとし、非同期バス・ライト制御信号109をメモリの動作イネーブル信号とし、非同期バス103のデータ107を入力とする同期型メモリの構成とするバッファであっても良い(図示せず)。
このように、ライト・アドレス・バッファ114、ライト・データ・バッファ116が同期型か非同期型かを選択できるようにすることで、チップ・ダイ・サイズ、消費電力やパフォーマンスの観点から何れかのバッファを選択し、非同期バス・インタフェース回路1を構成できるようになる。
マイクロプロセッサとしてCPUやDSPに外部バス・インタフェースとして新たに非同期バス・インタフェース回路1を内蔵することによって、異なるプロセッサ同士の共有データの管理を高速に行うことができ、マルチプロセスデータ処理という用途にも適用できる。
1、14 非同期バス・インタフェース回路
11、100 マイクロプロセッサ
12、103 非同期バス
13、101 マクロ回路
15 外部レジスタ
16 同期化バッファ
17、102 内部レジスタ
18 調停回路
19 内部レジスタライト信号
20 内部クロック信号
104 クロック発生器
104a クロック
105 制御信号
106 アドレス
107 データ
108 リード制御信号
109 ライト制御信号
110 リード制御回路
111 データ・バス切り替え器
112 第1リード・アドレス・バッファ
113 第2リード・アドレス・バッファ
114 ライト・アドレス・バッファ
115 ライト制御回路
116 ライト・データ・バッファ
117 リード・イネーブル信号
118 リード・アドレス・バス
119 ライト・アドレス・バス
120 ライト・イネーブル信号
121 ライト・データ・バス
122 リード・データ・バス
123a〜123g フリップフロップ
124 NOT回路
125 AND回路
126 OR回路
127 Q0A信号
128 Q0B信号
129 Q0C信号
130 Q0D信号
131 QIA信号
132 QIB信号
133 QIC信号
134 バス・クロック信号

Claims (4)

  1. マイクロプロセッサの非同期バスと、マクロ回路との間に配置され、前記マクロ回路とデータの入出力を行う内部レジスタを有する非同期バス・インタフェース回路において、
    前記マイクロプロセッサの前記非同期バスから出力されるライト制御信号に基づき入力されるアドレスを一時保存し、出力するライト・アドレス・バッファと、
    前記ライト制御信号に基づき入力されるデータを一時保存し、出力するライト・データ・バッファと、
    前記ライト制御信号を受信し、前記マクロ回路のクロックに同期したライト・イネーブル信号を生成し、出力するライト制御回路と、を備え、
    前記ライト・イネーブル信号がイネーブルのとき、前記ライト・アドレス・バッファから出力されるアドレスと前記ライト・データ・バッファから出力されるデータとを、前記内部レジスタに書き込むことを特徴とする非同期バス・インタフェース回路。
  2. 前記マイクロプロセッサの前記非同期バスから出力されるリード制御信号に基づき入力される読み出しアドレスを一時保存し、出力する第1リード・アドレス・バッファと、
    前記第1リード・アドレス・バッファが出力するアドレスを一時保存し、出力する第2リード・アドレス・バッファと、
    前記非同期バス・リード制御信号を受信し、前記マクロ回路のクロックに同期したリード・イネーブル信号を生成し、出力するリード制御回路と、を備え、
    前記リード・イネーブル信号がイネーブルのとき、前記第2リード・アドレス・バッファから出力されるアドレスのデータを前記内部レジスタから読み出すことを特徴とする請求項1記載の非同期バス・インタフェース回路。
  3. 前記リード・イネーブル信号がイネーブルのとき、前記非同期バスに前記内部レジスタからの読み出しデータを出力し、
    前記リード・イネーブル信号がディセーブルのとき、前記非同期バスにはハイインピーダンスの出力状態とする、データ・バス切り替え器をさらに備えることを特徴とする請求項2記載の非同期バス・インタフェース回路。
  4. 前記ライト・アドレス・バッファ、前記ライト・データ・バッファを、前記マイクロプロセッサのバス・クロック信号を動作クロックとし、前記ライト制御信号を動作イネーブル用の信号とする同期型メモリとすることを特徴とする請求項1記載の非同期バス・インタフェース回路。
JP2009215469A 2009-09-17 2009-09-17 非同期バス・インタフェース回路 Pending JP2011065415A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009215469A JP2011065415A (ja) 2009-09-17 2009-09-17 非同期バス・インタフェース回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009215469A JP2011065415A (ja) 2009-09-17 2009-09-17 非同期バス・インタフェース回路

Publications (1)

Publication Number Publication Date
JP2011065415A true JP2011065415A (ja) 2011-03-31

Family

ID=43951592

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009215469A Pending JP2011065415A (ja) 2009-09-17 2009-09-17 非同期バス・インタフェース回路

Country Status (1)

Country Link
JP (1) JP2011065415A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9489009B2 (en) 2014-02-20 2016-11-08 Samsung Electronics Co., Ltd. System on chip, bus interface and method of operating the same
CN110362519A (zh) * 2018-04-09 2019-10-22 北京松果电子有限公司 接口装置和接口方法
CN110703999A (zh) * 2019-09-30 2020-01-17 盛科网络(苏州)有限公司 存储器的读操作的调度方法和存储器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9489009B2 (en) 2014-02-20 2016-11-08 Samsung Electronics Co., Ltd. System on chip, bus interface and method of operating the same
CN110362519A (zh) * 2018-04-09 2019-10-22 北京松果电子有限公司 接口装置和接口方法
CN110362519B (zh) * 2018-04-09 2021-01-26 北京小米松果电子有限公司 接口装置和接口方法
CN110703999A (zh) * 2019-09-30 2020-01-17 盛科网络(苏州)有限公司 存储器的读操作的调度方法和存储器

Similar Documents

Publication Publication Date Title
JP4536618B2 (ja) リコンフィグ可能な集積回路装置
JP2010027032A (ja) Fifo装置及びfifoバッファへのデータ格納方法
JP2010244238A (ja) リコンフィギュラブル回路及びリコンフィギュラブル回路システム
JP2001167580A (ja) 半導体記憶装置
JP2011065415A (ja) 非同期バス・インタフェース回路
JP2009015953A (ja) アドレスカウンタ及びこれを有する半導体記憶装置、並びに、データ処理システム
JP2009015952A (ja) アドレスカウンタ及びこれを有する半導体記憶装置、並びに、データ処理システム
JP4436902B2 (ja) 割り込みをクリアするロジック・ユニット及び集積回路
JP7228590B2 (ja) データバス
JPWO2016063667A1 (ja) 再構成可能デバイス
JP2004362215A (ja) プロセッサ及び半導体集積回路
JP5528939B2 (ja) マイクロコンピュータ
WO2014103235A1 (ja) 演算装置及び演算方法
JP2008198003A (ja) アレイ型プロセッサ
JP4633334B2 (ja) 情報処理装置およびメモリアクセス調停方法
US8462167B2 (en) Memory access control circuit and image processing system
US9043510B2 (en) Hardware streaming unit
JP4851964B2 (ja) デュアルポートメモリを用いた同期化回路
WO2008026273A1 (fr) Contrôleur dma
JP2008287557A (ja) バスシステム及びマイクロコンピュータ
JP5701930B2 (ja) 半導体装置
JP2005157929A (ja) 半導体装置
JP2005141866A (ja) メモリ制御装置および電子装置
JP2006221435A (ja) メモリ回路
JPWO2013136857A1 (ja) データ処理システム、半導体集積回路およびその制御方法