JP4557179B2 - マイクロコンピュータ装置 - Google Patents

マイクロコンピュータ装置 Download PDF

Info

Publication number
JP4557179B2
JP4557179B2 JP2007197036A JP2007197036A JP4557179B2 JP 4557179 B2 JP4557179 B2 JP 4557179B2 JP 2007197036 A JP2007197036 A JP 2007197036A JP 2007197036 A JP2007197036 A JP 2007197036A JP 4557179 B2 JP4557179 B2 JP 4557179B2
Authority
JP
Japan
Prior art keywords
signal
signal terminal
read
memory
microprocessor
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.)
Active
Application number
JP2007197036A
Other languages
English (en)
Other versions
JP2008059570A (ja
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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2007197036A priority Critical patent/JP4557179B2/ja
Publication of JP2008059570A publication Critical patent/JP2008059570A/ja
Application granted granted Critical
Publication of JP4557179B2 publication Critical patent/JP4557179B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Microcomputers (AREA)

Description

この発明は、マイクロプロセッサのセットアップ時間とメモリの読出遅れ時間との関係から、クロック速度によっては、ソフトウェイト機能を利用してアクセスタイムを延長させることが必要なマイクロコンピュータ装置に関する。
周知のように、この種のマイクロコンピュータ装置は、マイクロプロセッサとメモリとを含んで構成される。
マイクロプロセッサは、アドレス信号出力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号出力用のチップセレクト信号端子(/CS)と、リード信号出力用のリード信号端子(/RD)と、ライト信号出力用のライト信号端子(/WR)とを有する。
同様にして、メモリは、アドレス信号入力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号入力用のチップセレクト信号端子(/CS)と、リード信号入力用のリード信号端子(/RD)と、ライト信号入力用のライト信号端子(/WR)とを有する。
マイクロプロセッサのアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)と、メモリのアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)は、それぞれ、対応するもの同士が、アドレスバス、データバス、チップセレクト信号線、リード信号線、及びライト信号線を介して結ばれる。
ところで、一般的な普及型のマイクロプロセッサ(MPU:例えば、ルネサステクノロジー社製のSHシリーズ等)に組み込まれたメモリアクセス機能においては、リードサイクルの場合には、図12に示されるように、チップセレクト信号端子(/CS)の信号状態を"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させたのち、さらに1/2クロック((1/2)×Tclk)経過するのを待って、リード信号端子(/RD)の信号状態を"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させるように仕組まれており、これによりメモリからリードデータが出力されることとなる。
なお、図12において、(a)は動作クロックの信号状態、(b)はMPUのアドレス端子列の信号状態、(c)はMPUのチップセレクト信号端子の信号状態、(d)はMPUのリード端子列の信号状態、(e)はデータバスの信号状態をそれぞれ示すものである。
一般的な普及型のメモリ(チップセレクト信号及びリード信号の変化に応答してリードデータを出力するメモリ:例えば、スタティックRAM(SRAM)やフラッシュメモリ(FROM)等)においては、リード信号端子(/RD)の信号状態が"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化したのち、実際にリードデータがデータバス上に読み出されるまでには、なにがしかの遅れ時間が存在する。このようなメモリとしては、例えば、Cypress社製のCY7C1019、Renesa社製のR1RP0404等の非同期高速SRAMを挙げることができる。
具体的には、図12に示されるように、この種のメモリにおいては、2種類の読出遅れ時間(Td1,Td2)が定義(通常、Td1>Td2)されているのが通例である。第1の読出遅れ時間(Td1)は、リード信号端子(/RD)の信号状態を予め"L"(イネーブル状態)にしたままで、チップセレクト信号端子(/CS)の信号状態を"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させたときに、その変化時点から実際にデータが読み出されるまでの読出遅れ時間である。一方、第2の読出遅れ時間(Td2)は、チップセレクト信号端子(/CS)の信号状態を予め"L"(イネーブル状態)にしたままで、リード信号端子(/RD)の信号状態を"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させたときに、その変化時点から実際にデータが読み出されるまでの読出遅れ時間である。
ここで、前述のように、リード信号端子(/RD)の信号状態は、チップセレクト信号端子(/CS)の信号状態が"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化したのち、さらに1/2クロック((1/2)×Tclk)経過するのを待って、"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化するため、マイクロプロセッサの動作クロック周波数が低いと、第1の読出遅れ時間(Td1)が長大化することにより、次式の関係が成立する状態となる。

Td2 + (1/2)×Tclk > Td1 ・・・(式)
すると、データバス上にリードデータが存在する時間が短くなり、マイクロプロセッサがデータバス上のデータを読み込むに必要なセットアップ時間(Tsu)を満足することができなくなる。
具体的には、今仮に、第1の読出遅れ時間(Td1)を15ns、第2の読出遅れ時間(Td2)を7ns、MPUのセットアップ時間(Tsu)を25ns、クロック周期(Tclk)を30nsとすると、

(1/2)×Tclk + Td2 + Tsu
= 15ns + 7ns + 25ns
= 47ns > 45ns(=1.5×Tclk)

となって、規定のアクセス時間(45ns)内に収まらないため、MPUのセットアップ時間(Tsu)を満足させることができないことが判る。
このような場合、マイクロプロセッサに組み込まれたソフトウェイト機能を利用して、アクセス時間を延長することにより、セットアップ時間(Tsu)を確保するのが通例である。具体的には、図12の場合、ソフトウェイト時間(Twait)として1クロック分(1×clk)だけアクセス時間を延長することで、セットアップ時間(Tsu)を満たす試みがなされている。その結果、1アクセスに要する時間は、2クロック時間(2×clk)から3クロック時間(3×clk)に延長され、その分だけマイクロコンピュータとしての処理速度の低速化を来すこととなる。
そこで、このような処理速度の低速化を回避するために、メモリのチップセレクト信号端子(/CS)及びリード信号端子(/RD)を予めグランド(GND:イネーブル状態)に落として、メモリから常時データを垂れ流し状態とする一方、メモリからのデータ出力経路には、リード対象データが格納されたアドレス空間がアクセスされたときだけ開くゲート回路を介在させるようにしたマイクロコンピュータも知られている(特許文献1参照)。
特開平8−339680号公報
しかしながら、このような従来のマイクロコンピュータにあっては、チップセレクト信号端子(/CS)及びリード信号端子(/RD)がグランド(GND:イネーブル状態)に結線されたメモリは、読出専用メモリに固定されてしまうため、特定のアドレス空間をリード・ライト可能としつつも、読出速度を上げることができず、設計自由度が大きく制約を受けると言う問題点がある。
この発明は、従来のマイクロコンピュータにおける上述の問題点に着目してなされたものであり、その目的とするところは、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができ、しかも特定のアドレス空間がリード専用に固定されることもなく、設計上の自由度を確保することが可能なマイクロコンピュータを提供することにある。
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
次のような構成のマイクロコンピュータ装置であれば、上記の課題を解決することができる。
すなわち、このマイクロコンピュータ装置は、マイクロプロセッサとメモリとを含んで構成される。
このマイクロプロセッサは、アドレス信号出力用のアドレス信号端子列と、データ信号入出力用のデータ信号端子列と、チップセレクト信号出力用のチップセレクト信号端子と、リード信号出力用のリード信号端子と、ライト信号出力用のライト信号端子と、所定の命令語を介して任意に使用可能な汎用出力ポートとを有している。
また、上記のメモリは、アドレス信号入力用のアドレス信号端子列と、データ信号入出力用のデータ信号端子列と、チップセレクト信号入力用のチップセレクト信号端子と、リード信号入力用のリード信号端子と、ライト信号入力用のライト信号端子とを有している。
そして、上記のマイクロプロセッサのアドレス信号端子列、データ信号端子列、チップセレクト信号端子、リード信号端子、及びライト信号端子と、上記のメモリのアドレス信号端子列、データ信号端子列、チップセレクト信号端子、リード信号端子、及びライト信号端子とは、それぞれ、対応するもの同士が、アドレスバス、データバス、チップセレクト信号線、リード信号線、及びライト信号線を介して結ばれている。
さらに、上記のマイクロプロセッサのリード信号端子と前記メモリのリード信号端子とを結ぶリード信号線には、上記の汎用出力ポートからの信号により制御されるゲート素子が介在されている。
それにより、汎用出力ポートから出力される制御信号により前記ゲート素子を制御することにより、メモリのリード信号端子の信号状態が前記マイクロプロセッサのリード信号端子の信号状態に連動してイネーブル状態とディスイネーブル状態とに変化する第1の動作モードを選択すると共に、前記汎用出力ポートから出力される制御信号により前記ゲート素子を制御することにより、前記メモリのリード信号端子の信号状態が前記マイクロプロセッサのリード信号端子の信号状態に拘わらずイネーブル状態に強制的に固定される第2の動作モードを選択するものである。
このような構成によれば、第2の動作モードを選択することにより、メモリのリード信号端子(/RD(メモリ))の信号状態は、前記マイクロプロセッサのリード信号端子(/RD(MPU))の信号状態に拘わらずイネーブル状態("L")に強制的に固定されるから、これを利用することにより、マイクロプロセッサのチップセレクト信号端子(/CS(MPU))の信号状態をメモリアクセスと連動して、その都度"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させるだけで、第1の読出遅れ時間(Td1)をもって各アドレスのメモリ内データをデータバス上に読み出すことができるから、別途ソフトウェイト機能でアクセス時間をクロック単位で延長せずとも、マイクロプロセッサのセットアップ時間(Tsu)を満足させつつ、メモリからの読出からマイクロプロセッサへの読込に至るリードサイクルを比較的に短時間で完結することができる。したがって、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができる。
しかも、第2の動作モードの選択は、前記汎用出力ポート(Port)から出力される制御信号により前記ゲート素子を制御することにより、前記メモリのリード信号端子(/RD(メモリ))の信号状態が前記マイクロプロセッサのリード信号端子(/RD(MPU))の信号状態に拘わらずイネーブル状態("L")に強制的に固定されることで行われるものであって、従来例のように、メモリのチップセレクト信号端子(/CS(メモリ))及びリード信号端子(/RD(メモリ))を予めハードウェア的にグランド(GND:イネーブル状態)に落とすものではないから、同一のメモリアドレスであっても、汎用出力ポート(Port)から出力される制御信号により前記ゲート素子を制御することにより、ライトサイクル並びにソフトウェイトを利用しつつのリードサイクルを実現することができる。
さらに、第1の動作モードと第2の動作モードとの切換は、マイクロプロセッサで実行されるプログラム中の適宜箇所に、所定命令語を使用した汎用出力ポート操作プログラム(ゲート開プログラム又はゲート閉プログラム)を組み込むだけでよいため、同一のメモリアドレス空間をその時々の状況に合わせて、リード専用空間、ライト専用空間、リード・ライト共用空間として割り当てることができ、ユーザのプログラム設計自由度を阻害することがない。
本発明により得られる作用効果は一定の条件が成立するときに顕著に表れる。すなわち、前記マイクロプロセッサの動作クロック周期をTclk、前記メモリのチップセレクト端子の信号状態がイネーブルとなったのち、前記メモリのデータ信号端子列にデータが読み出されるまでの遅れ時間をTd1、前記メモリのリード信号端子の信号状態がイネーブルとなったのち、前記メモリのデータ信号端子列にデータが読み出されるまでの遅れ時間をTd2としたとき、TclkとTd1とTd2との間には、
Td2 + (1/2)×Tclk > Td1
なる関係が成立すると共に、前記マイクロプロセッサにはソフトウェイト機能が組み込まれている。
これにより、第1の動作モードが選択されるときには、前記ソフトウェイト機能を利用してアクセス時間を延長することにより、マイクロプロセッサがデータを読み込むに要するセットアップ時間を満足させる一方、第2の動作モードが選択されるときには、前記ソフトウェイト機能を利用することなく、規定のアクセス時間をもって、マイクロプロセッサにデータの読み込みを行わせる、こととなる。
本発明のマイクロコンピュータは様々な機能実現装置として適用されるが、プログラマブル・コントローラのCPUユニットとして構成されている場合には、ユーザプログラム実行用のマイクロプロセッサとして、データ演算機能には優れる一方、ビット演算機能には劣るマイクロプロセッサを使用する場合に好適である。すなわち、この種のマイクロプロセッサは、一般に動作クロックがあまり高速ではないため、リードサイクルのたびにソフトウェイト機能でアクセス時間を延長する場合には、サイクルタイムの長大化により動作応答性が悪化して、実用上支障を来す虞がある。
本発明によれば、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができ、しかも特定のアドレス空間がリード専用に固定されることもなく、設計上の自由度を確保することが可能なマイクロコンピュータを提供することができる。
以下に、本発明に係るマイクロコンピュータ装置の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
本発明装置の要部を示すハードウェアブロック図が図1に示されている。同図に示されるように、このマイクロコンピュータ装置は、マイクロプロセッサ1とメモリ(SRAM)2Aとを含んで構成される。
このマイクロプロセッサ1は、アドレス信号出力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号出力用のチップセレクト信号端子(/CS)と、リード信号出力用のリード信号端子(/RD)と、ライト信号出力用のライト信号端子(/WR)と、所定の命令語を介して任意に使用可能な汎用出力ポート(Port)とを有している。
また、上記のメモリ(SRAM)2Aは、アドレス信号入力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号入力用のチップセレクト信号端子(/CS)と、リード信号入力用のリード信号端子(/RD)と、ライト信号入力用のライト信号端子(/WR)とを有している。
そして、上記のマイクロプロセッサ1のアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)と、上記のメモリ(SRAM)2Aのアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)とは、それぞれ、対応するもの同士が、アドレスバス3、データバス4、チップセレクト信号線5、リード信号線6a,6b、及びライト信号線7を介して結ばれている。
さらに、上記のマイクロプロセッサ1のリード信号端子(/RD)とメモリ(SRAM)2Aのリード信号端子(/RD)とを結ぶリード信号線(6a,6b)には、上記の汎用出力ポート(Port)からの信号により制御されるゲート素子としてのANDゲート9が介在されている。
それにより、汎用ポート(Port)から出力される制御信号を論理値"H"("1")にすることにより、メモリ(SRAM)2Aのリード信号端子(/RD)の信号状態がマイクロプロセッサ1のリード信号端子(/RD)の信号状態に連動してイネーブル状態("L")とディスイネーブル状態("H")とに変化する第1の動作モードを選択する
と共に、汎用ポート(Port)から出力される制御信号を論理値"L"("0")にすることにより、メモリ(SRAM)2Aのリード信号端子(/RD)の信号状態が前記マイクロプロセッサ1のリード信号端子(/RD)の信号状態に拘わらずイネーブル状態( "L")に強制的に固定される第2の動作モードを選択するものである。なお、ゲート素子としては、汎用ポート(Port)から出力される制御信号により制御するものであれば、具体的な素子構成は限定されるものではない。したがって、ANDゲート9に代えて、図11に示されるように、シグナルグランド(GND)にプルダウンされたトライステートバッファ9a等を採用することもできる。
このような構成によれば、第2の動作モードを選択することにより、図2及び図5に示されるように、メモリ(SRAM)2Aのリード信号端子(/RD(メモリ))の信号状態(図2(f)、図5(f)参照)は、前記マイクロプロセッサ1のリード信号端子(/RD(MPU))の信号状態(図2(c)、図5(d)参照)に拘わらず、イネーブル状態("L")に強制的に固定されため、これを利用することにより、マイクロプロセッサ1のチップセレクト信号端子(/CS(MPU))の信号状態をメモリアクセスと連動して、その都度"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させるだけで、第1の読出遅れ時間(Td1)をもって各アドレスのメモリ内データをデータバス上に読み出すことができるから、別途ソフトウェイト機能でアクセス時間をクロック単位で延長せずとも、マイクロプロセッサのセットアップ時間(Tsu)を満足させつつ、メモリからの読出からマイクロプロセッサへの読込に至るリードサイクルを比較的に短時間で完結することができる。したがって、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができる。
具体的には、今仮に、第1の読出遅れ時間(Td1)を15ns、第2の読出遅れ時間(Td2)を7ns、MPUのセットアップ時間(Tsu)を25ns、クロック周期(Tclk)を30nsとすると、

Td1 + Tsu = 15ns + 25ns
= 40ns < 45ns(=1.5×Tclk)

となって、規定のアクセス時間(45ns)内に収まるから、ソフトウェイト機能を使用せずとも、MPUのセットアップ時間(Tsu)を満足することが判る。
しかも、第2の動作モードの選択は、汎用ポート(Port)から出力される制御信号によりゲート素子9を制御することにより、メモリ(SRAM)2Aのリード信号端子(/RD(SRAM))の信号状態がマイクロプロセッサ1のリード信号端子(/RD(MPU))の信号状態に拘わらずイネーブル状態("L")に強制的に固定されることで行われるものであって、従来例のように、メモリのチップセレクト信号端子(/CS(メモリ))及びリード信号端子(/RD(メモリ))を予めハードウェア的にグランド(GND:イネーブル状態)に落とすものではないから、同一のメモリアドレスであっても、汎用ポート(Port)から出力される制御信号によりゲート素子9を制御することにより、図3及び図4に示されるように、ライトサイクル並びにソフトウェイトを利用しつつのリードサイクルを従前通りに実現することができる。
ここで、図3に示されるタイムチャートは、メモリ(SRAM)2Aのリード信号端子(/RD(SRAM))の信号状態をイネーブル固定を解除した状態のまま、ソフトウェイトを使用しつつ、連続的にリードサイクルを実行する例であり、図4に示されるタイムチャートは、メモリ(SRAM)2Aのリード信号端子(/RD(SRAM))の信号状態をイネーブル固定を解除した状態のまま、ソフトウェイトを使用するリードサイクルとライトサイクルとを交互に実行する例である。
さらに、第1の動作モードと第2の動作モードとの切換は、後に図9を参照しつつ詳述するように、マイクロプロセッサ1で実行されるプログラム中の適宜箇所に、所定命令語を使用した汎用ポート操作プログラム(ゲート開プログラム又はゲート閉プログラム)を組み込むだけでよいため、同一のメモリアドレス空間をその時々の状況に合わせて、リード専用空間、ライト専用空間、リード・ライト共用空間として割り当てることができ、ユーザのプログラム設計自由度を阻害することがない。
次に、上述のマイクロコンピュータ装置を利用して、プログラマブル・コントローラ(PLC)のCPUユニットを構成した具体例を添付図面の図6〜図10を参照しつつ詳細に説明する。
PLCのCPUユニット(演算ユニット)のメモリ構成の一例を説明する概略構成図が図6に示されている。同図に示されるように、このPLCは、マイクロプロセッサ1Aと、第1のスタティックRAM(SRAM)2Aと、第2のスタティックRAM(SRAM)2Bと、フラッシュメモリ(FROM)2Cとを含んで構成される。なお、メモリとマイクロプロセット以外の構成要素は図示を省略されている。
第1のSRAM2A内には、外部I/O割付用の記憶領域と、ユーザプログラムで使用するデータの記憶領域と、MPUのワーク領域とが設けられており、それらの領域はいずれもリード・ライト動作が行われる領域とされている。
第2のSRAM2B内には、ユーザプログラムの記憶領域と、MPUのワーク領域とが設けられており、ユーザプログラムの演算実行処理の期間は、ユーザプログラムを構成する命令語のリード動作のみが行われるが、その他の処理中はリード・ライト動作が行われる。
FROM2C内には、システムファームウェアの記憶領域が設けられており、それらの領域は、通常動作中にあっては、リード動作のみが行われる。
PLCのCPUユニットの詳細構成図が図7に示されている。同図に示されるように、マイクロプロセッサ1Aには、アドレス信号出力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、第1、第2のSRAM2A,2Bのチップセレクト信号出力用の第1のチップセレクト信号端子(/CS1)と、FROM用のチップセレクト信号出力用の第2のチップセレクト信号端子(/CS2)と、リード信号出力用のリード信号端子(/RD)と、ライト信号出力用のライト信号端子(/WR)と、所定の命令語を介して任意に使用可能なSRAM制御用の第1の汎用出力ポート(Port1)と、所定の命令語を介して任意に使用可能なFROM制御用の第2の汎用出力ポート(Port2)とを有している。
SRAM2A,2Bは、アドレス信号入力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号入力用のチップセレクト信号端子(/CS)と、リード信号入力用のリード信号端子(/RD)と、ライト信号入力用のライト信号端子(/WR)とを有している。
FROM2Cは、アドレス信号入力用のアドレス信号端子列(A)と、データ信号入出力用のデータ信号端子列(D)と、チップセレクト信号入力用のチップセレクト信号端子(/CS)と、リード信号入力用のリード信号端子(/RD)と、ライト信号入力用のライト信号端子(/WR)とを有している。
マイクロプロセッサ1のアドレス信号端子列(A)、データ信号端子列(D)、第1のチップセレクト信号端子(/CS1)、リード信号端子(/RD)、及びライト信号端子(/WR)と、SRAM2A,2Bのアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)とは、それぞれ、対応するもの同士が、アドレスバス3、データバス4、チップセレクト信号線51、リード信号線6a,61b、及びライト信号線7を介して結ばれている。
マイクロプロセッサ1のアドレス信号端子列(A)、データ信号端子列(D)、第2のチップセレクト信号端子(/CS2)、リード信号端子(/RD)、及びライト信号端子(/WR)と、FROM2Cのアドレス信号端子列(A)、データ信号端子列(D)、チップセレクト信号端子(/CS)、リード信号端子(/RD)、及びライト信号端子(/WR)とは、それぞれ、対応するもの同士が、アドレスバス3、データバス4、チップセレクト信号線51、リード信号線6a,62b、及びライト信号線7を介して結ばれている。
マイクロプロセッサ1のリード信号端子(/RD)とSRAM2A,2Bのリード信号端子(/RD)とを結ぶリード信号線(6a,61b)には、第1の汎用出力ポート(Port1)からの信号により制御されるゲート素子としてのANDゲート91が介在されている。
マイクロプロセッサ1のリード信号端子(/RD)とFROM2Cのリード信号端子(/RD)とを結ぶリード信号線(6a,62b)には、第2の汎用出力ポート(Port2)からの信号により制御されるゲート素子としてのANDゲート92が介在されている。
第1の汎用ポート(Port1)から出力される制御信号によりゲート素子としてのANDゲート91を制御することにより、SRAM2A,2Bのリード信号端子(/RD)の信号状態がマイクロプロセッサ1のリード信号端子(/RD)の信号状態に連動してイネーブル状態("L")とディスイネーブル状態("H")とに変化する第1の動作モードが選択されると共に、第1の汎用ポート(Port1)から出力される制御信号により前記ゲート素子としてのANDゲート91を制御することにより、メモリ(SRAM2A,2Bのリード信号端子(/RD)の信号状態が前記マイクロプロセッサ1のリード信号端子(/RD)の信号状態に拘わらずイネーブル状態("L")に強制的に固定される第2の動作モードが選択される。
第2の汎用ポート(Port2)から出力される制御信号によりゲート素子としてのANDゲート92を制御することにより、FROM2Cのリード信号端子(/RD)の信号状態がマイクロプロセッサ1のリード信号端子(/RD)の信号状態に連動してイネーブル状態("L")とディスイネーブル状態("H")とに変化する第1の動作モードが選択され、第2の汎用ポート(Port2)から出力される制御信号により前記ゲート素子としてのANDゲート92を制御することにより、FROM2Cのリード信号端子(/RD)の信号状態が前記マイクロプロセッサ1のリード信号端子(/RD)の信号状態に拘わらずイネーブル状態("L")に強制的に固定される第2の動作モードが選択される。
PLCの制御プログラムの全体を示すゼネラルフローチャートが図8に示されている。同図に示されるように、制御プログラムの全体は、電源ON(イニシャル)処理(ステップ801)と、共通処理(ステップ802)と、演算処理(ステップ803)と、I/Oリフレッシュ処理(ステップ804)と、周辺サービス処理(ステップ805)とから構成されている。
電源ON(イニシャル)処理(ステップ801)においては、FROM2Cからユーザメモリ(UM)として機能する第2のSRAM2Bへとユーザプログラムデータを転送する処理、メモリの初期化処理等が実行される。これに伴い、第2のSRAM2Bに対しては、リード・ライト動作が行われる。続く、共通処理(ステップ802)においては、バスチェック等が実行される。これに伴い、第2のSRAM2Bに対しては、リード・ライト動作が行われる。続く、演算処理(ステップ803)においては、ユーザプログラムに関する命令実行処理が実行される。これに伴い、第1のSRAM2Aに対しては、リード動作のみが行われる。続く、I/Oリフレッシュ処理(ステップ804)においては、図示しないI/OユニットとI/O領域(IOM)との間におけるデータ交換が実行される。これに伴い、ユーザメモリ(UM)として機能する第2のSRAM2Bに対するリード・ライト処理が行われる。
以上のPLC処理全体を前提として、本発明に係る第1の動作モードと第2の動作モードとを適用することにより、この例では、演算処理(ステップ803)に関して、処理の高速化を実現する。
PLCの第2のSRAM2Bに高速読出処理を適用する際のMPUポート(Port2)の操作処理を示すフローチャートが図9に示されている。同図に示されるように、この例にあっては、共通処理(ステップ802)と演算処理(ステップ803)との間には、第1の動作モードから第2の動作モードへの切換処理(ステップ901)が設けられ、また演算処理(ステップ803)とI/Oリフレッシュ処理(ステップ804)との間には、第2の動作モードから第1の動作モードへの切換処理(ステップ902)が設けられる。
ここで、切換処理(ステップ901)においては、MPUの第1のポート(Port1)から出力される制御信号の信号状態を"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変更する処理、並びに、ソフトウェイトを除去するためのウェイト設定処理("1"→"0")が実行される。これにより、第2のSRAM2Bのリード端子(/RD)の信号状態はイネーブル状態に固定されるため、第2のSRAM2Bからのデータ読出動作(ユーザプログラムを構成する各命令語の連続読出処理)は、ソフトウェイトを含むことなく、規定のアクセス周期で高速に実行されることとなるから、ユーザプログラムの実行時間が短縮され、サイクルタイムの短縮によりPLCの入出力応答性が向上することとなる。
一方、切換処理(ステップ902)においては、MPUの第1のポート(Port1)から出力される制御信号の信号状態を"L"(イネーブル状態)から"H"(ディスイネーブル状態)へと変更する処理、並びに、ソフトウェイトを付加するためのウェイト設定処理("0"→"1")が実行される。これにより、第2のSRAM2Bのリード端子(/RD)の信号状態はイネーブル状態が解除されるため、第2のSRAM2Bからのデータ読出動作(ユーザプログラムを構成する各命令語の連続読出処理)は、ソフトウェイトを含む通常の処理へ戻され、またライト動作も可能となって、同一のアドレス空間に対するリード・ライト動作が可能となる。
その結果、PLCの処理全体の中で、演算処理(ステップ803)については、ソフトウェイト処理を使用することなく、規定のアクセス時間を採用しつつ、高速に処理されることとなるのである。
なお、本発明の高速読出処理は、PLCの処理全体の中で他の様々な処理にも適用することができる。PLCのFROMに対する高速読出処理を適用する場合におけるMPUポートの操作処理を説明するためのフローチャートが図10に示されている。
同図に示されるように、FROM2Cに着目してPLCの各処理を観察すると、殆どの処理において、FROM2Cに対してはリード動作のみが行われていることが判る。したがって、それらのリード動作のみが行われる処理の前後に、前述の動作モード切換処理(ステップ901,902)を挿入することで、第2のポート(Port2)を介して第2のゲート素子92を制御することで、FROM2Cに関しても、FRAMに対する場合と同様にして、本発明の高速リードオンリ処理を適用することができる。
このように、本発明によれば、第2の動作モードを選択することにより、メモリのリード信号端子(/RD(メモリ))の信号状態は、前記マイクロプロセッサのリード信号端子(/RD(MPU))の信号状態に拘わらずイネーブル状態("L")に強制的に固定されるから、これを利用することにより、マイクロプロセッサのチップセレクト信号端子(/CS(MPU))の信号状態をメモリアクセスと連動して、その都度"H"(ディスイネーブル状態)から"L"(イネーブル状態)へと変化させるだけで、第1の読出遅れ時間(Td1)をもって各アドレスのメモリ内データをデータバス上に読み出すことができるから、別途ソフトウェイト機能でアクセス時間をクロック単位で延長せずとも、マイクロプロセッサのセットアップ時間(Tsu)を満足させつつ、メモリからの読出からマイクロプロセッサへの読込に至るリードサイクルを比較的に短時間で完結することができる。したがって、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができる。
しかも、第2の動作モードの選択は、前記汎用ポート(Port)から出力される制御信号により前記ゲート素子を制御することにより、前記メモリのリード信号端子(/RD(メモリ))の信号状態が前記マイクロプロセッサのリード信号端子(/RD(MPU))の信号状態に拘わらずイネーブル状態("L")に強制的に固定されることで行われるものであって、従来例のように、メモリのチップセレクト信号端子(/CS(メモリ))及びリード信号端子(/RD(メモリ))を予めハードウェア的にグランド(GND:イネーブル状態)に落とすものではないから、同一のメモリアドレスであっても、汎用ポート(Port)から出力される制御信号により前記ゲート素子を制御することにより、ライトサイクル並びにソフトウェイトを利用しつつのリードサイクルを実現することができる。
さらに、第1の動作モードと第2の動作モードとの切換は、マイクロプロセッサで実行されるプログラム中の適宜箇所に、所定命令語を使用した汎用ポート操作プログラム(ゲート開プログラム又はゲート閉プログラム)を組み込むだけでよいため、同一のメモリアドレス空間をその時々の状況に合わせて、リード専用空間、ライト専用空間、リード・ライト共用空間として割り当てることができ、ユーザのプログラム設計自由度を阻害することがない。
本発明によれば、動作クロック周波数が比較的に低速であることに起因してメモリからの読出遅延時間が増大する場合にも、ソフトウェイト機能等を使用してアクセス時間を増大せずとも、マイクロプロセッサのセットアップ時間を満足させて、処理速度の低下を回避することができ、しかも特定のアドレス空間がリード専用に固定されることもなく、設計上の自由度を確保することが可能なマイクロコンピュータを提供することができる。
本発明装置の要部を示すハードウェア構成図である。 SRAMの/RDに与えられるリード信号を強制的にイネーブル状態に固定した状態における各部の信号状態を示すタイムチャートである。 SRAMの/RDに与えられるリード信号のイネーブル固定を解除した状態における各部の信号状態を示すタイムチャート(1)である。 SRAMの/RDに与えられるリード信号のイネーブル固定を解除した状態における各部の信号状態を示すタイムチャート(2)である。 本発明の作用説明図である。 PLCのCPUユニットの概略構成図である。 PLCのCPUユニットの詳細構成図である。 PLCの制御プログラムの全体を示すゼネラルフローチャートである。 PLCのSRAMに高速読出処理を適用する際のMPUポートの操作処理を示すフローチャートである。 PLCのFROMに対する高速読出処理を適用する場合におけるMPUポートの操作処理を説明するためのフローチャートである。 本発明装置の要部を示すハードウェア構成図(他の例)である。 従来技術の作用説明図である。
符号の説明
1 MPU
2A 第1のSRAM
2B 第2のSRAM
2C FROM
3 アドレスバス
4 データバス4
5 チップセレクト信号線
6a,6b リード信号線
7 ライト信号線
8 制御信号線
9 ANDゲート(ゲート素子)
9a トライステートバッファ(ゲート素子)
A アドレス端子列
D データ端子列
/CS チップセレクト端子
/RD リード端子
/WR ライト端子
Port 制御ポート

Claims (3)

  1. マイクロプロセッサとメモリとを含み、
    前記マイクロプロセッサは、
    アドレス信号出力用のアドレス信号端子列と、
    データ信号入出力用のデータ信号端子列と、
    チップセレクト信号出力用のチップセレクト信号端子と、
    リード信号出力用のリード信号端子と、
    ライト信号出力用のライト信号端子と、
    所定の命令語を介して任意に使用可能な汎用出力ポートとを有し、
    前記メモリは、
    アドレス信号入力用のアドレス信号端子列と、
    データ信号入出力用のデータ信号端子列と、
    チップセレクト信号入力用のチップセレクト信号端子と、
    リード信号入力用のリード信号端子と、
    ライト信号入力用のライト信号端子とを有し、
    前記マイクロプロセッサのアドレス信号端子列、データ信号端子列、チップセレクト信号端子、リード信号端子、及びライト信号端子と、
    前記メモリのアドレス信号端子列、データ信号端子列、チップセレクト信号端子、リード信号端子、及びライト信号端子とは、
    それぞれ、対応するもの同士が、アドレスバス、データバス、チップセレクト信号線、リード信号線、及びライト信号線を介して結ばれており、さらに
    前記マイクロプロセッサのリード信号端子と前記メモリのリード信号端子とを結ぶリード信号線には、前記汎用出力ポートからの信号により制御されるゲート素子が介在されており、
    それにより、前記汎用出力ポートから出力される制御信号により前記ゲート素子を制御することにより、前記メモリのリード信号端子の信号状態が前記マイクロプロセッサのリード信号端子の信号状態に連動してイネーブル状態とディスイネーブル状態とに変化する第1の動作モードを選択すると共に、前記汎用出力ポートから出力される制御信号により前記ゲート素子を制御することにより、前記メモリのリード信号端子の信号状態が前記マイクロプロセッサのリード信号端子の信号状態に拘わらずイネーブル状態に強制的に固定される第2の動作モードを選択する、ことを特徴とするマイクロコンピュータ装置。
  2. 前記マイクロプロセッサの動作クロック周期をTclk、前記メモリのチップセレクト端子の信号状態がイネーブルとなったのち、前記メモリのデータ信号端子列にデータが読み出されるまでの遅れ時間をTd1、前記メモリのリード信号端子の信号状態がイネーブルとなったのち、前記メモリのデータ信号端子列にデータが読み出されるまでの遅れ時間をTd2としたとき、TclkとTd1とTd2との間には、
    Td2 + (1/2)×Tclk > Td1
    なる関係が成立すると共に、前記マイクロプロセッサにはソフトウェイト機能が組み込まれており、
    それにより、前記第1の動作モードが選択されるときには、前記ソフトウェイト機能を利用してアクセス時間を延長することにより、マイクロプロセッサがデータを読み込むに要するセットアップ時間を満足させる一方、前記第2の動作モードが選択されるときには、前記ソフトウェイト機能を利用することなく、規定のアクセス時間をもって、マイクロプロセッサにデータの読み込みを行わせる、ことを特徴とする請求項1に記載のマイクロコンピュータ装置。
  3. プログラマブル・コントローラのCPUユニットとして構成されていることを特徴とする請求項1又は2に記載のマイクロコンピュータ装置。
JP2007197036A 2006-08-04 2007-07-30 マイクロコンピュータ装置 Active JP4557179B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007197036A JP4557179B2 (ja) 2006-08-04 2007-07-30 マイクロコンピュータ装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006213704 2006-08-04
JP2007197036A JP4557179B2 (ja) 2006-08-04 2007-07-30 マイクロコンピュータ装置

Publications (2)

Publication Number Publication Date
JP2008059570A JP2008059570A (ja) 2008-03-13
JP4557179B2 true JP4557179B2 (ja) 2010-10-06

Family

ID=39242167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007197036A Active JP4557179B2 (ja) 2006-08-04 2007-07-30 マイクロコンピュータ装置

Country Status (1)

Country Link
JP (1) JP4557179B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003122621A (ja) * 2001-10-01 2003-04-25 Motorola Inc バッファ制御システムおよびバッファ制御可能なメモリー

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3778920D1 (de) * 1986-01-20 1992-06-17 Nec Corp Mikrorechner mit betriebsarten fuer hohe und fuer geringe taktrate.
JP2762138B2 (ja) * 1989-11-06 1998-06-04 三菱電機株式会社 メモリコントロールユニット

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003122621A (ja) * 2001-10-01 2003-04-25 Motorola Inc バッファ制御システムおよびバッファ制御可能なメモリー

Also Published As

Publication number Publication date
JP2008059570A (ja) 2008-03-13

Similar Documents

Publication Publication Date Title
JP7258523B2 (ja) メモリデバイス、メモリシステム及び動作方法
US7907469B2 (en) Multi-port memory device for buffering between hosts and non-volatile memory devices
KR100633828B1 (ko) 프리페치 길이보다 짧은 버스트 길이를 갖는 메모리 시스템
JP4593575B2 (ja) 埋め込み型コンピュータシステムの各構成部材のための共通化インターフェース
KR102344834B1 (ko) 솔리드 스테이트 드라이브 및 이를 포함하는 컴퓨팅 시스템
US20080010418A1 (en) Method for Accessing a Non-Volatile Memory via a Volatile Memory Interface
JP2009528635A (ja) 集積回路の動作パラメータを調整するための装置及び方法
JP4869713B2 (ja) マルチチップパッケージデバイス
US20080010419A1 (en) System and Method for Issuing Commands
KR20200108773A (ko) 연산 처리를 수행하는 메모리 장치, 이를 포함하는 데이터 처리 시스템 및 메모리 장치의 동작방법
JP2006228194A (ja) 内部メモリデバイス間の直接的データ移動が可能な複合メモリチップおよびデータ移動方法
JP2008305350A (ja) メモリシステム、メモリ装置、およびメモリ装置の制御方法
CN110008147A (zh) 存储器控制器以及用于对存储模块进行访问的方法
KR100890381B1 (ko) 반도체 메모리 소자
US9104401B2 (en) Flash memory apparatus with serial interface and reset method thereof
US10558255B2 (en) Hybrid hardware/firmware power management controller for media devices
US9218861B2 (en) Apparatuses and methods including selectively providing a single or separate chip select signals
US8654603B2 (en) Test operation for a low-power double-data-rate (LPDDR) nonvolatile memory device
KR100903368B1 (ko) 고속으로 데이터 송신할 수 있는 반도체 메모리 장치
JP4557179B2 (ja) マイクロコンピュータ装置
US8537624B2 (en) Semiconductor memory device and method of operating the same
CN107093447B (zh) 存储器装置
JP3964585B2 (ja) 半導体メモリ装置のアドレス発生回路
KR100368117B1 (ko) 레이트 선택 동기 파이프라인 타입 반도체 메모리장치에서의 데이터 코히런시 유지방법 및 그에 따른데이터 코히런시 유지회로
JP6493044B2 (ja) マルチプロセッサシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100527

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

R150 Certificate of patent or registration of utility model

Ref document number: 4557179

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100713

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

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250