トップ :: G 物理学 :: G06 計算;計数




【発明の名称】 マルチポートメモリ装置
【発明者】 【氏名】豊村 浩一

【氏名】矢野 修志

【氏名】浜崎 岳史

【要約】 【課題】シングルポートメモリを使って簡単な構成で複雑な調停手段をもたずに、従来より多くのポート数を確保する。

【解決手段】制御シーケンスは所定の周期を有し、制御シーケンスの1周期内における入出力系統毎のDRAM4へのアクセスタイミングおよびアクセス順は固定であるとし、シリアル−パラレル変換回路1a,1bは外部からの書き込み要求タイミングに同期してシリアル−パラレル変換を行い、ライトバッファ2a,2bは制御シーケンスの位相に同期してシリアル−パラレル変換1a,1bの出力を記憶する。シリアル−パラレル変換回路1bから遅延シリアル信号を出力し、この遅延シリアル信号をシリアル−パラレル変換回路1aにすることで、シリアル−パラレル変換回路1a,1bで倍速で入力されるシリアルデータを制御シーケンスの1周期内でパラレルデータに変換して、通常速度でDRAM4に書き込む。
【特許請求の範囲】
【請求項1】 シリアルデータを所定のデータ数毎にシリアル−パラレル変換してパラレルデータを出力し、複数のうち少なくとも一つは前記シリアルデータを所定の遅延段数だけ時間シフトされた遅延シリアルデータを前記パラレルデータとは別に出力する複数のシリアル−パラレル変換手段と、前記複数のシリアル−パラレル変換手段の少なくとも一つのシリアルデータ入力端に設けられて外部入力のシリアルデータと他のシリアル−パラレル変換手段から出力される遅延シリアルデータのいずれか一方を選択して出力するシリアルデータ選択出力手段と、前記複数のシリアル−パラレル変換手段の出力を一時記憶するライトバッファと、前記ライトバッファの出力の一部を選択して出力するライトデータ選択出力手段と、前記ライトデータ選択出力手段の出力が書き込まれるメモリと、前記メモリから読み出されたデータを一時記憶するリードバッファと、前記リードバッファの出力を出力系統別にパラレル−シリアル変換する1または複数のパラレル−シリアル変換手段と、前記1または複数のパラレル−シリアル変換手段の出力を遅延する1または複数の遅延調整手段と、前記メモリの書き込み・読み出しおよびアドレス制御を行うメモリ制御手段と、前記ライトバッファ、前記ライトデータ選択出力手段、前記リードバッファ、前記メモリ制御手段の各々の動作の制御シーケンスを発生するシーケンス発生手段とを備え、前記シーケンス発生手段で発生する制御シーケンスは所定の周期を有し、前記制御シーケンスの1周期内における入出力系統毎の前記メモリへのアクセスタイミングおよびアクセス順は固定であるとし、前記シリアル−パラレル変換手段は外部からの書き込み要求タイミングに同期してシリアル−パラレル変換を行い、前記ライトバッファは前記シーケンス発生手段の出力する制御シーケンスの位相に同期して前記シリアル−パラレル変換手段の出力を一時記憶し、前記リードバッファは前記シーケンス発生手段の出力する制御シーケンスの位相に同期して前記メモリから読み出されたデータを一時記憶し、前記遅延調整手段は外部からの読み出し要求タイミングと前記制御シーケンスの位相の差に基いて前記パラレル−シリアル変換手段の出力を前記外部からの読み出し要求タイミングと合致するように遅延し、外部入力のシリアルデータが通常の倍速であるときに前記他のシリアル−パラレル変換手段に前記外部入力のシリアルデータを供給し、前記シリアルデータ選択出力手段は、前記外部入力のシリアルデータが通常の倍速であるときに前記他のシリアル−パラレル変換手段から出力される遅延シリアルデータを選択し、前記制御シーケンスの1周期内における2ポート分のアクセス期間を使って前記メモリに前記外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させるようにしたことを特徴とするマルチポートメモリ装置。
【請求項2】 R(赤)、G(緑)、B( 青) にそれぞれ専用の撮像素子を用い、前記撮像素子の水平および垂直方向の画素配列間隔をそれぞれPh、Pvとするとき、前記G用の撮像素子を前記RおよびB用の撮像素子に対し、水平・垂直方向にそれぞれ(Ph/2+a)、(Pv/2+b)(a,b は定数)だけずらして配置する斜め画素ずらし配置を行う3板方式の撮像装置であって、前記R、G、B用の撮像素子の画素出力信号を記憶するマルチポートメモリ装置を備え、前記R、G、B用の撮像素子の画素出力信号または、前記マルチポートメモリ装置の出力信号を入力とし、前記RおよびB用の撮像素子の画素出力信号と、前記RおよびB用の撮像素子の画素に対し空間的に左下最近傍または右下最近傍に位置する前記G用の撮像素子の画素出力信号とを用いて、水平方向画素数が前記G用の撮像素子の2倍である第1の輝度信号を作成し、前記RおよびB用の撮像素子の画素出力信号と、前記RおよびB用の撮像素子の画素に対し空間的に左上最近傍または右上最近傍に位置する前記G用の撮像素子の画素出力信号とを用いて、水平方向画素数が前記G用の撮像素子の2倍である第2の輝度信号を作成する輝度信号作成手段を備え、前記マルチポートメモリ装置は、シリアルデータを所定のデータ数毎にシリアル−パラレル変換してパラレルデータを出力し、複数のうち少なくとも一つは前記シリアルデータを所定の遅延段数だけ時間シフトされた遅延シリアルデータを前記パラレルデータとは別に出力する複数のシリアル−パラレル変換手段と、前記複数のシリアル−パラレル変換手段の少なくとも一つのシリアルデータ入力端に設けられて外部入力のシリアルデータと他のシリアル−パラレル変換手段から出力される遅延シリアルデータのいずれか一方を選択して出力するシリアルデータ選択出力手段と、前記複数のシリアル−パラレル変換手段の出力を一時記憶するライトバッファと、前記ライトバッファの出力の一部を選択して出力するライトデータ選択出力手段と、前記ライトデータ選択出力手段の出力が書き込まれるメモリと、前記メモリから読み出されたデータを一時記憶するリードバッファと、前記リードバッファの出力を出力系統別にパラレル−シリアル変換する1または複数のパラレル−シリアル変換手段と、前記1または複数のパラレル−シリアル変換手段の出力を遅延する1または複数の遅延調整手段と、前記メモリの書き込み・読み出しおよびアドレス制御を行うメモリ制御手段と、前記ライトバッファ、前記ライトデータ選択出力手段、前記リードバッファ、前記メモリ制御手段の各々の動作の制御シーケンスを発生するシーケンス発生手段とを備え、前記シーケンス発生手段で発生する制御シーケンスは所定の周期を有し、前記制御シーケンスの1周期内における入出力系統毎の前記メモリへのアクセスタイミングおよびアクセス順は固定であるとし、前記シリアル−パラレル変換手段は外部からの書き込み要求タイミングに同期してシリアル−パラレル変換を行い、前記ライトバッファは前記シーケンス発生手段の出力する制御シーケンスの位相に同期して前記シリアル−パラレル変換手段の出力を一時記憶し、前記リードバッファは前記シーケンス発生手段の出力する制御シーケンスの位相に同期して前記メモリから読み出されたデータを一時記憶し、前記遅延調整手段は外部からの読み出し要求タイミングと前記制御シーケンスの位相の差に基いて前記パラレル−シリアル変換手段の出力を前記外部からの読み出し要求タイミングと合致するように遅延し、外部入力のシリアルデータが通常の倍速であるときに前記他のシリアル−パラレル変換手段に前記外部入力のシリアルデータを供給し、前記シリアルデータ選択出力手段は、前記外部入力のシリアルデータが通常の倍速であるときに前記他のシリアル−パラレル変換手段から出力される遅延シリアルデータを選択し、前記制御シーケンスの1周期内における2ポート分のアクセス期間を使って前記メモリに前記外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させるようにし、前記マルチポートメモリ装置は前記第1および第2の輝度信号を記憶する場合は倍速モードとなるよう制御されることを特徴とする撮像装置。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、例えばビデオカメラ等に用いられ、ディジタル信号を記憶させるDRAM等のメモリ装置に関するものである。特に、画像データなど連続するシリアルデータの複数系統の同時書き込み、もしくは同時読み出しが可能なマルチポートメモリ装置に関するものである。また、このメモリ装置を用いたデジタルビデオカメラ、デジタルスチルカメラなどの撮像装置に関するものである。
【0002】
【従来の技術】ビデオカメラなどで用いられている画像メモリとしては、一般にVRAMと呼ばれるデュアルポートメモリや、フィールドメモリと呼ばれるFIFO構造のメモリがある。
【0003】
【発明が解決しようとする課題】しかし、高機能化、高画質化などを実現するためには、それらの画像メモリでは、同時アクセス可能なポート数が限られているため、用途によって必要なポート数を確保できないという問題がある。
【0004】この解決策としては、使用する画像メモリの数を増やす方法や、画像メモリの動作周波数をデータの同期周波数の2倍等に高くして、データの書き込み・読み出し部分でレート変換することによりメモリアクセスを高速化して、見かけ上の同時アクセス可能な系統数を増やす方法などが考えられる。
【0005】しかしながら、前者の方法では大型化してしまい、後者の方法は消費電力が増大してしまうなどの問題がある。
【0006】また、3ポート以上のポートを備える画像メモリは、汎用性を高めるため、各ポートと画像メモリの各々の動作クロックを独立に取り扱える反面、ポート間のメモリへのアクセスの調停手段が複雑になり、ポート数を増やすことが困難であった。
【0007】本発明は上記課題を解決し、シングルポートメモリを使って簡単な構成で複雑な調停手段をもたずに、従来より多くのポート数を確保することができるマルチポートメモリ装置を提供することを目的とする。
【0008】
【課題を解決するための手段】本発明の請求項1記載のマルチポートメモリ装置は、シリアルデータを所定のデータ数毎にシリアル−パラレル変換してパラレルデータを出力し、複数のうち少なくとも一つはシリアルデータを所定の遅延段数だけ時間シフトされた遅延シリアルデータをパラレルデータとは別に出力する複数のシリアル−パラレル変換手段と、複数のシリアル−パラレル変換手段の少なくとも一つのシリアルデータ入力端に設けられて外部入力のシリアルデータと他のシリアル−パラレル変換手段から出力される遅延シリアルデータのいずれか一方を選択して出力するシリアルデータ選択出力手段と、複数のシリアル−パラレル変換手段の出力を一時記憶するライトバッファと、ライトバッファの出力の一部を選択して出力するライトデータ選択出力手段と、ライトデータ選択出力手段の出力が書き込まれるメモリと、メモリから読み出されたデータを一時記憶するリードバッファと、リードバッファの出力を出力系統別にパラレル−シリアル変換する1または複数のパラレル−シリアル変換手段と、1または複数のパラレル−シリアル変換手段の出力を遅延する1または複数の遅延調整手段と、メモリの書き込み・読み出しおよびアドレス制御を行うメモリ制御手段と、ライトバッファ、ライトデータ選択出力手段、リードバッファ、メモリ制御手段の各々の動作の制御シーケンスを発生するシーケンス発生手段とを備えている。
【0009】そして、シーケンス発生手段で発生する制御シーケンスは所定の周期を有し、制御シーケンスの1周期内における入出力系統毎のメモリへのアクセスタイミングおよびアクセス順は固定であるとしている。
【0010】また、シリアル−パラレル変換手段は外部からの書き込み要求タイミングに同期してシリアル−パラレル変換を行う。
【0011】また、ライトバッファはシーケンス発生手段の出力する制御シーケンスの位相に同期してシリアル−パラレル変換手段の出力を一時記憶する。
【0012】また、リードバッファはシーケンス発生手段の出力する制御シーケンスの位相に同期してメモリから読み出されたデータを一時記憶する。
【0013】また、遅延調整手段は外部からの読み出し要求タイミングと制御シーケンスの位相の差に基いてパラレル−シリアル変換手段の出力を外部からの読み出し要求タイミングと合致するように遅延する。
【0014】また、外部入力のシリアルデータが通常の倍速であるときに他のシリアル−パラレル変換手段に外部入力のシリアルデータを供給する。
【0015】また、シリアルデータ選択出力手段は、外部入力のシリアルデータが通常の倍速であるときに他のシリアル−パラレル変換手段から出力される遅延シリアルデータを選択し、制御シーケンスの1周期内における2ポート分のアクセス期間を使ってメモリに外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させる。
【0016】この構成によれば、シーケンス発生手段によってメモリへの入出力系統の各ポートのメモリへのアクセスタイミングの順序を周期的に固定し、入力系統の書き込みデータはこのアクセスタイミングに同期するようライトバッファで一時記憶保持し、出力系統の読み出しデータは固定されたアクセスタイミングで読み出した後遅延調整手段で読み出し要求タイミングに合致するように遅延させることで、従来のようなポート間のメモリへのアクセスの調停を必要とせず、簡単にポート数を増やし、多くの入出力ポートを得ることができる。
【0017】また、複数のシリアル−パラレル変換手段のうちの少なくとも一つは、シリアルデータを所定の遅延段数だけ時間シフトされた遅延シリアルデータをパラレルデータとは別に出力するようにし、複数のシリアル−パラレル変換手段の少なくとも一つのシリアルデータ入力端にシリアルデータ選択出力手段を設け、外部入力のシリアルデータと他のシリアル−パラレル変換手段から出力される遅延シリアルデータのいずれか一方を選択して出力するようにし、外部入力のシリアルデータが通常の倍速であるときに他のシリアル−パラレル変換手段から出力される遅延シリアルデータをシリアルデータ選択出力手段が選択するようにしたので、制御シーケンスの1周期内における2ポート分のアクセス期間を使ってメモリに外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させることが可能となる。
【0018】この際、倍速モードのシリアルデータをメモリに書き込む際に、ライトバッファ以降の回路、特にメモリについては、書き込みクロックおよび読み出しクロックともに、通常速度のクロックを用いることができ、倍速入力のシリアルデータをメモリに書き込む場合にも、消費電力が増加することはない。
【0019】また、メモリについては、倍速書き込みを行う場合にも、通常速度のクロックを使用して書き込みを行っており、メモリの書き込みクロックを切り替える必要がないため、メモリの記憶データを保証することができる。
【0020】また、通常速度のシリアルデータも倍速のシリアルデータも一つのメモリに書き込むことができ、通常速度のシリアルデータと倍速のシリアルデータの両方を処理する必要がある場合にも、メモリとしては通常速度のクロックで動作する一つのマルチポートメモリ装置だけですみ、撮像装置などにおいて、動作モードによってシリアルデータの入力速度が異なる場合にも、一つのマルチポートメモリ装置のみで、画像処理を行うことが可能で、撮像装置の構成を簡単化でき、小型化、低価格化を実現できる。
【0021】また、静止画等の画素数の多い画像データを倍速モードで書き込んで処理する場合に、メモリの読み出し側については通常速度で動作させることができ、動画を表示する表示手段をそのまま利用してモニタ画面上に静止画を容易に表示させることが可能となる。
【0022】本発明の請求項2記載の撮像装置は、R(赤)、G(緑)、B( 青) にそれぞれ専用の撮像素子を用い、撮像素子の水平および垂直方向の画素配列間隔をそれぞれPh、Pvとするとき、G用の撮像素子をRおよびB用の撮像素子に対し、水平・垂直方向にそれぞれ(Ph/2+a)、(Pv/2+b)(a,b は定数)だけずらして配置する斜め画素ずらし配置を行う3板方式の撮像装置であって、R、G、B用の撮像素子の画素出力信号を記憶するマルチポートメモリ装置と、輝度信号作成手段とを備えている。
【0023】輝度信号作成手段は、R、G、B用の撮像素子の画素出力信号または、マルチポートメモリ装置の出力信号を入力とし、RおよびB用の撮像素子の画素出力信号と、RおよびB用の撮像素子の画素に対し空間的に左下最近傍または右下最近傍に位置するG用の撮像素子の画素出力信号とを用いて、水平方向画素数がG用の撮像素子の2倍である第1の輝度信号を作成し、RおよびB用の撮像素子の画素出力信号と、RおよびB用の撮像素子の画素に対し空間的に左上最近傍または右上最近傍に位置するG用の撮像素子の画素出力信号とを用いて、水平方向画素数がG用の撮像素子の2倍である第2の輝度信号を作成する。
【0024】マルチポートメモリ装置は、請求項1に記載したものであり、第1および第2の輝度信号を記憶する場合は倍速モードとなるよう制御される。
【0025】この構成によれば、マルチポートメモリ装置におけるライト2ポートを1ポートとして扱えるようになるため、メモリアクセス速度の2倍速のデータが書き込み可能になる。そのため、このマルチポートメモリ装置を撮像装置に用いることで、2倍速書き込み動作が必要なモード(例えば、画素ずらし配置されたCCDを用いての静止画撮影モード)においても、メモリの駆動周波数を通常状態に保ったまま実行でき、異なる2系統の信号の蓄積用メモリ(RGB信号蓄積用メモリとY1,Y2,C信号蓄積用メモリ)を1つのメモリで共用することが可能になる。さらに、メモリ駆動周波数を2fsとし、データ読み出し動作を1クロックおきに行う方式に比べてメモリ消費電力を抑えることが可能になる。
【0026】
【発明の実施の形態】以下、本発明の実施の形態について、図面を用いて説明する。
【0027】[第1の実施の形態]図1は本発明のマルチポートメモリ装置の実施の形態(請求項1に対応)の全体の構成を示すブロック図である。図2から図6までの各図は図1のマルチポートメモリ装置の要部の具体的な構成を示すブロック図である。
【0028】まず、図1から図6までの各図に基づいて、本発明の実施の形態におけるマルチポートメモリ装置の構成を説明する。
【0029】図1では、例として、入出力ポート数4ポート、具体的には入力2ポート(WAポート,WBポート)、出力2ポート(RAポート,RBポート)の4ポートのマルチポートメモリ装置を示している。このマルチポートメモリ装置は、シリアル−パラレル変換を行うシリアル−パラレル変換手段としてのシリアル−パラレル変換回路1a,1bと、データを一時記憶するライトバッファ2a,2bと、ライトデータ選択出力手段としてのセレクタ3a,3b,3cと、メモリとしてのDRAM4と、データを一時記憶するリードバッファ5a,5bと、パラレル−シリアル変換を行うパラレル−シリアル変換手段としてのパラレル−シリアル変換回路6a,6bと、遅延調整手段としての遅延調整回路7a,7bと、メモリ制御手段としてのDRAMコントローラ8と、シーケンス発生手段としてのシーケンス発生回路9と、シリアルデータ選択出力手段としてのセレクタ10とから構成されている。このマルチポートメモリ装置は、例えばマイクロプロセッサと同じ回路基板上に混載されるものであり、そのデータのビット幅は、128〜256ビット程度と単体のメモリに比べて大きいものである。
【0030】上記したシリアル−パラレル変換回路1a,1bはクロックWCKに従って動作し、ライトバッファ2a,2bより後段の回路および、DRAMコントローラ8およびシーケンス発生回路9はクロックDCKに従って動作する。
【0031】図2から図6までの各図は、図1中のシリアル−パラレル変換回路1a、ライトバッファ2a、リードバッファ5a、パラレル−シリアル変換回路6a、遅延調整回路7aのさらに詳細な構成例を示したブロック図である。
【0032】ここで、入力データWSDA,WSDBは例えばデータ幅12ビットでクロックWCKに同期した時系列データとしており、また、DRAM4のアクセスデータ幅は例えば120ビットであるとしている。なお、これらのビット幅に限定されるものではない。なお、クロックWCKは、通常モードのときはクロックDCKと同じ周波数であり、倍速モードのときはクロックDCKの2倍の周波数になる。
【0033】シリアル−パラレル変換回路1aは、図2に示すように、40段のシフトレジスタ21と、通常モードと倍速モードとを切り替えるためのモード切替信号MODEによって外部信号WSTRBA,WSTRBBのいずれか一方を選択して出力するセレクタ22と、セレクタ22の出力信号WSTRB2Aを制御信号としてシフトレジスタ21の出力のロード、ホールド動作を行うレジスタ23とから構成されている。シフトレジスタ21およびレジスタ23は、クロックWCKに従って動作する。上記のシリアル−パラレル変換回路1aは、セレクタ10から入力されるシリアルデータWSD2Aをセレクタ22の出力信号WSTRB2AのタイミングでパラレルデータWPDAに変換して出力する。なお、セレクタ22は、通常モードのときには外部信号WSTRBAを選択出力し、倍速モードのときには外部制御信号WSTRBBを選択出力する。
【0034】シリアル−パラレル変換回路1bは、図2に示すように、40段のシフトレジスタ31と、外部制御信号WSTRBBを制御信号としてシフトレジスタ31の出力のロード、ホールド動作を行うレジスタ32とから構成されている。シフトレジスタ31およびレジスタ32は、クロックWCKに従って動作する。上記のシフトレジスタ31は、外部から入力されるシリアルデータWSDBを外部信号WSTRBBのタイミングでパラレルデータWPDBに変換して出力するほか、シフトレジスタ31の最終段から、シリアルデータWSDBを所定の遅延段数(この例では40段)だけ時間シフトした遅延シリアルデータDLYWSDBを出力し、セレクタ10へ供給する。上記した所定の遅延段数というのは、シリアルデータWSDBをパラレルデータWPDBに変換するのに必要な遅延段数に等しい。
【0035】セレクタ10は、モード切替信号MODEによって、通常モードのとき(MODE=“L”)は、外部入力のシリアルデータWSDAを選択してシリアル−パラレル変換回路1aへ供給し、倍速モードのとき(MODE=“H”)は、パラレル−シリアル変換回路1bから出力される遅延シリアルデータDLYWSDBを選択してシリアル−パラレル変換回路1aへ供給することになる。
【0036】そして、この構成によって、通常モードのときは、12ビットの40個のシリアルの入力データWSDAが480ビットの出力データWPDAに変換されて出力され、ライトバッファ2aへ入力される。また、12ビットの40個のシリアルの入力データWSDBが480ビットの出力データWPDBに変換されて出力され、ライトバッファ2bへ入力さる。
【0037】一方、倍速モードのときは、クロックWCKがクロックDCKの2倍の周波数になり、またシフトレジスタ31とシフトレジスタ21とが縦続接続された状態になり、結果的に両者を合わせて80段のシフトレジスタが構成されることになる。その結果、12ビットの80個のシリアルの入力データWSDBが480ビットずつの出力データWPDA,WPDBに変換されて出力されることになる。
【0038】ライトバッファ2aは、図3に示すように、シーケンス発生回路9からの制御信号であるポート基準信号WACTAによりロード、ホールド制御される480ビットのレジスタ12で構成されており、DRAM4の動作クロックDCKに同期して動作する。レジスタ12は、図では4個の120ビットのレジスタ12a,12b,12c,12dで構成され、それぞれ120ビット分ずつ保持され、それぞれ120ビットの出力データWDDA0〜WDDA3として出力され、セレクタ3aへ送られる。
【0039】ライトバッファ2bは、ライトバッファ2aと同様の構成であり、シーケンス発生回路9からの制御信号であるポート基準信号WACTBによりロード、ホールド制御され、DRAM4の動作クロックDCKに同期して動作して、4個の120ビットの出力データWDDB0〜WDDB3として出力され、セレクタ3bへ送られる。
【0040】セレクタ3aは、ライトバッファ2aの出力データWDDA0〜WDDA3をシーケンス発生回路9からの書き込みデータ選択信号WDSELに従って出力データWDDAとして選択的に出力する。
【0041】セレクタ3bは、ライトバッファ2bの出力データWDDB0〜WDDB3をシーケンス発生回路9からの書き込みデータ選択信号WDSELに従って出力データWDDBとして選択的に出力する。
【0042】セレクタ3cは、セレクタ3aの出力データWDDAとセレクタ3bの出力データWDDBとをシーケンス発生回路9からの書き込みデータ選択信号WPSELに従って120ビットの出力データWDDとして選択的に出力し、DRAM4へ送る。
【0043】DRAM4は、DRAMコントローラ8からのRAS(ローアドレスストローブ)制御信号NRAS,CAS(カラムアドレスストローブ)制御信号NCAS,メモリ番地を指定する列アドレスCAD,行アドレスRAD,書き込み読み出し許可状態を示すWE(ライトイネーブル)制御信号NWEに従って書き込みおよび読み出し動作が行われる。
【0044】リードバッファ5aは、図4に示すように、DRAM4の出力データRDDを入力とし、読み出しデータ選択信号RDSELA0,RDSELA1,RDSELA2,RDSELA3(図1では、RDSELAとまとめて記している)によって、120ビット毎に異なるタイミングでロード、ホールド制御されるレジスタ13a,13b,13c,13dで構成されている。レジスタ13a,13b,13c,13dはそれぞれ120ビットのデータRPDA0〜RPDA3を出力する。さらに、これらのデータRPDA0〜RPDA3は480ビットのデータRPDAとしてまとめられて、パラレル−シリアル変換回路6aに入力される。
【0045】リードバッファ5bは、リードバッファ5aと同様の構成で、DRAM4の出力データRDDを入力とし、選択信号RDSELBによって120ビット毎に異なるタイミングでロード、ホールド制御され、480ビットのデータRPDBを出力し、パラレル−シリアル変換回路6bに送られる。
【0046】パラレル−シリアル変換回路6aは、図5に示すように、シーケンス発生回路9からの出力信号であるポート基準信号RACTAを一定時間遅延させる遅延回路14とその遅延回路14の出力信号RACTA’によって前段レジスタ出力かリードバッファ5a出力かが選択制御されるセレクタ15とシフトレジスタ16とから構成されていて、DRAM4のクロックDCKに従って動作する。この構成によって、480ビットのデータRPDAは40個の12ビットのデータRSDPAに変換されて、遅延調整回路7aへ送られることになる。
【0047】パラレル−シリアル変換回路6bは、パラレル−シリアル変換回路6aと同様の構成であり、シーケンス発生回路9からの出力信号であるポート基準信号RACTBに従って480ビットのデータRPDBを40個の12ビットのデータRSDPBに変換して遅延調整回路7bへ送る。
【0048】遅延調整回路7aは、図6に示すように、パラレル−シリアル変換回路6aの出力データRSDPAを所望の時間遅延させて出力するデュアルポートRAM16(例えばSRAM)とその書き込みアドレスWADR,読み出しアドレスRADRを発生するアドレス生成回路17とから構成されている。そして、同一アドレスの書き込みタイミングと読み出しタイミングとをずらせることにより、入力されたデータRSDPAを所定時間遅延してデータRSDAとして出力することになる。これによって、シリアルデータの出力タイミングが外部からの読み出し要求タイミングに合致することになる。
【0049】この場合の遅延時間(クロック数)は、アドレス生成回路17に加える遅延設定値RDLYAによって任意に設定できる。この場合、デュアルポートRAM16は、書き込み動作はクロックDCKに従い、読み出し動作はクロックRCKに従う。
【0050】遅延調整回路7bは、遅延調整回路7aと同様の構成であり、遅延設定値RDLYBに従い、パラレル−シリアル変換回路6bの出力データRSDPBを所望の時間遅延させてデータRSDBとして出力する。
【0051】シーケンス発生回路9は、外部リセット信号RSTR、クロックWCK,DCKに従って各種信号WACTA,WACTB,WDSEL,WPSEL,RDSELA,RDSELB,RACTA,RACTB,RDLYA,RDLYB,PSEQを出力する。
【0052】DRAMコントローラ8は、外部信号WSTRBA,WSTRBB,RSTRBA,RSTRBB,ブロックアドレスWADRA,WADRB,RADRA,RADRBと、シーケンス発生回路9のシーケンス信号PSEQと、クロックDCKに従って、RAS制御信号NRAS,CAS制御信号NCAS,列アドレスCAD,行アドレスRAD,WE制御信号NWEを出力する。
【0053】なお、上記の外部信号WSTRBA,WSTRBBは外部からの書き込み要求タイミングに対応している。また、外部信号RSTRBA,RSTRBBは外部からの読み出し要求タイミングに対応している。すなわち、外部信号WSTRBA,WSTRBBがアクティブとなったタイミングが外部からの書き込み要求タイミングに対応し、外部信号RSTRBA,RSTRBBがアクティブとなったタイミングが外部からの読み出し要求タイミングに対応する。
【0054】つぎに、図7〜図9を用いて、通常モードにおいて、入力系統のデータがDRAM4に書き込まれる動作を説明する。
【0055】図7は、シリアル−パラレル変換回路1a,1bにおける、入出力信号のタイミング関係を示すタイミングチャートである。このときのクロックWCKはクロックDCKと同じ周波数である。
【0056】WAポート、WBポートにクロックWCKに従ってそれぞれ入力される12ビットの時系列データWSDA(WA1,WA2,・・・・・・・・),WSDB(WB1,WB2,・・・・・・・・・)は、シリアル−パラレル変換回路1a,1bで図7に示すとおり、有効データのタイミングに同期した40データの周期をもつ外部信号WSTRBA,WSTRBBの各タイミングで40データ単位(480ビット単位)でパラレルデータWPDA,WPDBに変換される。なお、図中の記号Xは任意の数値を示している。
【0057】図8は、シーケンス発生回路9で外部リセット信号RSTRを基準に生成されるDRAM基本サイクル信号CYCLEと、各ポートのメモリへのアクセスの順序、タイミングを固定したシーケンス信号PSEQと、DRAM基本サイクル信号CYCLEの周期内のポート別の割り当て期間のスタートタイミングを示すポート基準信号WACTA,WACTB,RACTA,RACTBとの関係を示すタイミングチャートである。図8にはクロックDCKも示している。
【0058】図8に示すように、シーケンス発生回路9では、外部リセット信号RSTRを基準に、40T周期(TはDRAMクロックDCKの周期;=40DCK=40WCK)のDRAM基本サイクル信号CYCLEが生成され、この周期内で6T間隔でWAポート,WBポート、RAポート、RBポートの専用アクセス期間を規定するシーケンス信号PSEQが生成される。
【0059】図8では、PSEQ=1のときWAポートの専用アクセス期間であり、PSEQ=2のときWBポートの専用アクセス期間であり、PSEQ=3のときRAポートの専用アクセス期間であり、PSEQ=4のときRBポートの専用アクセス期間であるとした例を示している。
【0060】また、ポート基準信号WACTA,WACTB,RACTA,RACTBが、図8に示すようにシーケンス信号PSEQに同期するかたちで生成される。
【0061】シリアル−パラレル変換回路1a,1bでパラレル化されたデータWPDA,WPDBは、上記に示したポート基準信号WACTA, WACTBのタイミングでライトバッファ2a,2bにそれぞれ一時記憶される。このとき、データWPDA,WPDBは120ビット単位で各々4分割されて一時記憶される。
【0062】図9は、ライトバッファ2a,2bの動作、ならびにシーケンス発生回路9で生成された書き込みデータ選択信号WDSEL,WPSELに基づいてセレクタ3a,3b,3cの各出力信号が切り替わる状態を示したタイミングチャートである。図中のXは任意の数値を示している。
【0063】シーケンス発生回路9のシーケンス信号PSEQが1の期間の最初のタイミングで発生するポート基準信号WACTAに対応してシリアル−パラレル変換回路1aの出力データWPDAがロード・ホールドされ、それによってホールドされたデータWDDA0〜WDDA3がライトバッファ2aから出力される。また、シーケンス発生回路9のシーケンス信号PSEQが2の期間の最初のタイミングで発生するポート基準信号WACTBに対応してシリアル−パラレル変換回路1bの出力データWPDBがロード・ホールドされ、それによってホールドされたデータWDDB0〜WDDB3がライトバッファ2bから出力される。
【0064】そして、WDSEL=0のときセレクタ3a,3bでWDDA0,WDDB0が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=1のときセレクタ3a,3bでWDDA1,WDDB1が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=2のときセレクタ3a,3bでWDDA2,WDDB2が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=3のときセレクタ3a,3bでWDDA3,WDDB3とが各々選択され、データWDDA,WDDBとして出力される。
【0065】WPSEL=0(ローレベル)のときセレクタ3cでWAポート側のデータ(セレクタ3aの出力データWDDA)が選択され、データWDDとして出力される。また、WPSEL=1(ハイレベル)のときWBポート側のデータ(セレクタ3bの出力データWDDB)が選択され、データWDDとして出力される。
【0066】以上のようにして、分割データのうちの1データがセレクタ3a,3b,3cで選択され、DRAM4へ出力され、DRAMコントローラ8によってDRAM4の所定アドレスへの書き込み動作が行われる。
【0067】つぎに、図10および図11を用いて、倍速モードにおいて、入力系統のデータがDRAM4に書き込まれる動作を説明する。
【0068】図10は、シリアル−パラレル変換回路1a,1bにおける、入出力信号のタイミング関係を示すタイミングチャートである。このときのクロックWCKはクロックDCKの2倍の周波数である。
【0069】WBポートにクロックWCKに従って12ビットの時系列データWSDB(WB1,WB2,・・・・・・・・・)が入力されると、シリアル−パラレル変換回路1bで図10に示すとおり、40WCK分遅延され、遅延シリアルデータDLYWSDBが出力され、これがセレクタ10を介して時系列データWSD2AとしてクロックWCKに従って入力される。このとき、WPポートには、その後に続く12ビットの時系列データWSDB(WB41,WB42,・・・・・・・・・)が入力される。そして、これらの時系列データWSDB(WB1,WB2,・・・・・,WB41,WB42,・・・・・・・・・)は、有効データのタイミングに同期した80データの周期をもつ外部信号WSTRB2A,WSTRBBの各タイミングで40データ単位(480ビット単位)でパラレルデータWPDA,WPDBに変換される。なお、図中の記号Xは任意の数値を示している。
【0070】図11は、シーケンス発生回路9で外部リセット信号RSTRを基準に生成されるDRAM基本サイクル信号CYCLEと、各ポートのメモリへのアクセスの順序、タイミングを固定したシーケンス信号PSEQと、DRAM基本サイクル信号CYCLEの周期内のポート別の割り当て期間のスタートタイミングを示すポート基準信号WACTA,WACTBとの関係を示すタイミングチャートである。また、図11には、ライトバッファ2a,2bの動作、ならびにシーケンス発生回路9で生成された書き込みデータ選択信号WDSEL,WPSELに基づいてセレクタ3a,3b,3cの各出力信号が切り替わる状態も併せて示している。さらに、図11にはクロックWCKおよびDCKも示されている。図中のXは任意の数値を示している。
【0071】図11に示すように、シーケンス発生回路9では、外部リセット信号RSTRを基準に、40DCK周期(=80WCK周期)のDRAM基本サイクル信号CYCLEが生成され、この周期内で6DCK間隔でWAポート,WBポート、RAポート、RBポートの専用アクセス期間を規定するシーケンス信号PSEQが生成される。
【0072】図11では、PSEQ=1のときWAポートの専用アクセス期間であり、PSEQ=2のときWBポートの専用アクセス期間であり、PSEQ=3のときRAポートの専用アクセス期間であり、PSEQ=4のときRBポートの専用アクセス期間であるとした例を示している。
【0073】また、ポート基準信号WACTA,WACTBが、図11に示すようにシーケンス信号PSEQに同期するかたちで生成される。ポート基準信号RACTA,RACTBについても、図示はしていないが、シーケンス信号PSEQに同期している。
【0074】シリアル−パラレル変換回路1a,1bでパラレル化されたデータWPDA,WPDBは、上記に示したポート基準信号WACTA, WACTBのタイミングでライトバッファ2a,2bにそれぞれ一時記憶される。このとき、データWPDA,WPDBは120ビット単位で各々4分割されて一時記憶される。
【0075】具体的に説明すると、シーケンス発生回路9のシーケンス信号PSEQが1の期間の最初のタイミングで発生するポート基準信号WACTAに対応してシリアル−パラレル変換回路1aの出力データWPDA(WB40〜1)がライトバッファ2aでロード・ホールドされ、それによってホールドされたデータWDDA0〜WDDA3がライトバッファ2aから出力される。また、シーケンス発生回路9のシーケンス信号PSEQが2の期間の最初のタイミングで発生するポート基準信号WACTBに対応してシリアル−パラレル変換回路1bの出力データWPDB(WB80〜41)がライトバッファ2bでロード・ホールドされ、それによってホールドされたデータWDDB0〜WDDB3がライトバッファ2bから出力される。
【0076】そして、WDSEL=0のときセレクタ3a,3bでWDDA0,WDDB0が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=1のときセレクタ3a,3bでWDDA1,WDDB1が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=2のときセレクタ3a,3bでWDDA2,WDDB2が各々選択され、データWDDA,WDDBとして出力される。また、WDSEL=3のときセレクタ3a,3bでWDDA3,WDDB3とが各々選択され、データWDDA,WDDBとして出力される。
【0077】WPSEL=0(ローレベル)のときセレクタ3cでWAポート側のデータ(セレクタ3aの出力データWDDA)が選択され、データWDDとして出力される。また、WPSEL=1(ハイレベル)のときWBポート側のデータ(セレクタ3bの出力データWDDB)が選択され、データWDDとして出力される。
【0078】以上のようにして、分割データのうちの1データがセレクタ3a,3b,3cで選択され、DRAM4へ出力され、DRAMコントローラ8によってDRAM4の所定アドレスへの書き込み動作が行われる。
【0079】つぎに、DRAMコントローラ8によってDRAM4から読み出されたデータがRAポート,RBポートから出力されるまでの動作を図12を用いて説明する。
【0080】図12は、シーケンス発生回路9で生成された読み出しデータ選択信号RDSELA0〜RDSELA3,RDSELB0〜RDSELB3とその信号で制御されるリードバッファ5a,5bのパラレル出力データRPDA(RPDA0〜RPDA3),RPDB(RPDB0〜RPDB3)との関係を示したタイミングチャートであり、図中のRPDA0〜RPDA3は、図4に示すリードバッファ5aのレジスタ13a,13b,13c,13dの各120ビットデータ出力であり、RPDB0〜RPDB3は、同様の構成をもつリードバッファ5bの内部のレジスタ出力(図省略)である。なお、図12には、シーケンス信号PSEQとポート基準信号RACTA,RACTBが併せて示されている。
【0081】図12に示すように、DRAMコントローラ8によって120ビット単位でDRAM4から読み出されたデータRDDは、リードバッファ5a,5bで、シーケンス発生回路9からの制御信号である読み出しデータ選択信号RDSELA0〜RDSELA3,RDSESB0〜RDSESB3によりリードバッファ5a,5bをそれぞれ構成する各レジスタに一時記憶され、リードバッファ5a,5bからデータRPDA(RPDA0〜RPDA3),RPDB(RPDB0〜RPDB3)として出力される。
【0082】パラレル−シリアル変換回路6a,6bでは、リードバッファ5a,5bの出力データRPDA,RPDBが、図8で示したシーケンス発生回路9から出力されるポート基準信号RACTA,RACTBの一定遅延された信号RACTA’,RACTB’(図示せず)によってシリアルデータに変換され、データRSDPA,RSDPBとして出力される。ここで一定遅延を与えているのは、リードバッファ5a,5bのレジスタの480ビットデータがすべて更新された後にシリアル変換させるためである。
【0083】そのためには、4分割されて読み出されたデータがレジスタに一時記憶された後からつぎに更新されるまでの期間内にパラレル−シリアル変換されるようにポート基準信号RACTA,RACTBを遅延させればよい。例えば、6T遅延(TはクロックDCKの周期)とし、信号RACTA’,RACTB’を各々のポートにおいて4分割データがすべてリードバッファ5a,5bに一時記憶された直後となるように発生させれば、7T以上とした場合に比べ、より早く読み出しポートより出力することができ、また遅延回路も小さく構成できることになる。
【0084】シリアル化されたデータRSDPA,RSDPBは後段の遅延調整回路7a,7bによって遅延調整され、2系統の出力ポートに各々データRSDA,RSDBとして出力される。ここでの遅延調整量は、シーケンス発生回路9から出力される遅延設定値RDLYA,RDLYBで決定される。
【0085】図13は、RAポートについて、シーケンス発生回路9から出力された信号である遅延設定値RDLYA(=d:整数)と、図6に示した遅延調整回路7aの内部のアドレス生成回路17で生成される書き込みアドレスWADRと読み出しアドレスRADRおよびデータの入出力の関係を示したタイミングチャートである。なお、図13には、先に説明したシーケンス信号とポート基準信号RACTAおよびその遅延信号RACTA’とパラレル−シリアル変換回路6aへの入力データRPDAとクロックRCKも併せて示している。
【0086】図13に示すとおり、アドレス生成回路17では、遅延設定値RDLYAに連動して書き込みアドレスWADRと読み出しアドレスRADRに値dだけ差を持たせており、これにより読み出しタイミングをずらすことができる。また、デュアルポートRAM16のリード側のクロックをDRAM動作クロックDCKと位相関係が自由なクロックRCKに同期してシリアルデータRSDA,RSDBを出力することができる。この場合、RDLYAを値dに設定することで、書き込みタイミングに対して読み出しタイミングdクロック(RCK)分遅らせることができる。
【0087】ここで、書き込みアドレスWADRと読み出しアドレスRADRの各アドレスはアドレス最大値に到達すると0アドレスに戻るように、巡回動作をさせる。ここでデュアルポートRAM16のワード長は、DRAM動作クロックDCKと読み出し用クロックRCKが同一周波数ならば、RACTA' ,RACTB' の周期に相当するワード数(本例では40ワード)を有すれば、その周期内で任意の読み出しタイミングに調整することができる。
【0088】ここで、図8に示したとおり、外部リセット信号RSTRによってDRAM基本サイクル信号CYCLEの位相が確定し、これにより各リードポートのメモリアクセスタイミングが決定されるため、読み出しタイミングは、この外部リセット信号RSTRの位相と、この遅延調整回路7a,7bへのシーケンス発生回路9からの遅延設定値RDLYA,RDLYBによって、外部からの読み出し要求タイミングに一致するように調整することになる。この遅延設定値RDLYA,RDLYBは例えばマイコンからのレジスタ書き込みにより設定すればよい。
【0089】ここで、外部リセット信号RSTRからの有効データの読み出しスタートタイミングは、遅延設定値RDLYA,RDLYBを同一にしても、各ポートのメモリアクセスタイミングが6Tずれて固定されているため、RAポートがRBポートよりも6T早く出力される。これに対して、パラレル−シリアル変換回路6aの遅延回路14での遅延量を、RBポート用の同様の遅延回路(図示せず)での遅延量よりも6T多くなるようにするか、もしくは遅延設定値RDLYAと遅延設定値RDLYBの値が同一でも、遅延調整回路7a,7bでの書き込みアドレスWADRと読み出しアドレスRADRの差をポート間で6ずらし、RAポート用の遅延調整回路7aのほうを6だけ差が大きくなるように図6におけるアドレス生成回路17を構成すれば、出力系統のアクセスタイミングのずれを遅延調整回路7aで補正することができ、この読み出しタイミングのポート間のズレを無くすことができ、外部からの読み出し要求タイミングと各ポートの遅延設定値を一律に取り扱えるためタイミング制御が容易になる。
【0090】つぎに、図14から図18までの各図を用いて、通常モードおよび倍速モードにおいて、シーケンス発生回路9により規定されたタイミングで各ポートのデータおよびアドレス等を選択し、DRAM4を制御するDRAMコントローラ8の動作を説明する。
【0091】DRAM4は、クロックDCKに従い、DRAMコントローラ8から出力されるDRAM制御に必要なRAS制御信号NRAS,CAS制御信号NCASおよび書き込み読み出し許可状態を示すWE制御信号NWEおよびメモリ番地を指定する行アドレスRAD,列アドレスCADによって、書き込み動作、読み出し動作を行う。
【0092】図14は、通常モードにおいて、外部リセット信号RSTRと、DRAM基本サイクル信号CYCLEと、クロックDCKと、シーケンス発生回路9で生成されたシーケンス信号PSEQと、DRAM4を制御するためにDRAMコントローラ8で生成されるRAS制御信号NRAS,CAS制御信号NCAS,WE制御信号NWE,行アドレスRAD,列アドレスCADの各々のタイミング関係を示したチャートである。
【0093】図15は、倍速モードにおいて、外部リセット信号RSTRと、DRAM基本サイクル信号CYCLEと、クロックDCKと、シーケンス発生回路9で生成されたシーケンス信号PSEQと、DRAM4を制御するためにDRAMコントローラ8で生成されるRAS制御信号NRAS,CAS制御信号NCAS,WE制御信号NWE,行アドレスRAD,列アドレスCADの各々のタイミング関係を示したチャートである。
【0094】ここでは、1つの行アドレス設定に対して、列アドレスは4アドレス連続して書き込み、読み出し可能なページモード動作を行わせている。このDRAM4が、プリチャージ期間1Tと行アドレス設定期間1Tが必要だとして、列アドレス設定期間の4Tとあわせて、1ポートあたりトータル6Tで480画素のデータの書き込み、読み出しを実現している。
【0095】図16は、最大ページ長を16(16カラム)とした場合のDRAM4のメモリマップを模式的に示した図である。
【0096】図17は図16のようなDRAM4に対して、従来のVRAMに与えていたようなブロックアドレスWADRAを外部入力とした場合において、DRAMコントローラ8の内部でWAポート用に行アドレスWRA、列アドレスWCAを生成する回路、つまりアドレスのビット分割を行う回路の構成例を示すブロック図である。図17において、81は外部入力のブロックアドレスWADRAを、WAポートのアクセススタートの基準となるポート基準信号WACTAによってラッチしたブロックアドレスWADRA’を入力とし、このブロックアドレスWADRA’の2ビットダウンシフトを行う2ビットダウン回路である。82はブロックアドレスWADRA’の下位2ビットを抽出する下位2ビット抽出回路である。83は下位2ビット抽出回路82の出力データの2ビットアップシフトを行う2ビットアップ回路である。84は2ビットアップ回路83の出力データを初期値としてクロックDCKのカウントを行う4ビットカウンタである。
【0097】図18はその行アドレスWRA、列アドレスWCAと外部入力のブロックアドレスWADRAの具体値との関係を例示したものである。なお、図18には、DRAM基本サイクル信号CYCLEとシーケンス信号PSEQと外部信号WSTRBAが併せて示されている。
【0098】図18に示すとおり、外部入力のブロックアドレスWADRAは、WAポートのアクセススタートの基準となるポート基準信号WACTAによってラッチされWADRA’となり、このラッチ後のブロックアドレスWADRA’は、図17のような回路構成により、行アドレスWRAと列アドレスWCAに変換される。
【0099】同様にしてWBポート,RAポート,RBポート用のブロックアドレスWADRB, RADRA, RADRBから行アドレスWRB,RRA,RRBおよび列アドレスWCB,RCA,RCBが生成される。これらの行アドレス、列アドレスは、図14または図15で示したように、DRAM基本サイクル信号CYCLEの周期内で決められたタイミングでDRAM4の行アドレスRAD、列アドレスRCDとして選択されDRAM4へ出力される。
【0100】ここで、行アドレスWRA,列アドレスWCAを生成する回路は、図17に示したとおり、2ビットダウン回路81,下位2ビット抽出回路82,2ビットアップ回路83および4ビットカウンタ84だけの簡単な構成で実現できる。これは、メモリの最大ページ長が16(2のC乗、Cは2の2乗)でかつ、使用するページ長Pが4(2の2乗)であるため、ブロックアドレスが0,1,2,3,4,5・・・・のとき、行アドレスWRAは0,0,0,0,1,1・・・・、DRAM基本サイクル信号CYCLEの周期内での各ポートの列アドレスWCAのスタートアドレスは0,4,8,12,0,4,・・・・のようになる。すなわち、行アドレスWRAは、ブロックアドレスをCで割った商、DRAM基本サイクル信号CYCLEの周期内での各ポートの列アドレスWCAのスタートアドレスはブロックアドレスをCで割った剰余をP倍したものとなり、これらC,Pの値が2のべき乗になるようにDRAM基本サイクルを決定しているからである。
【0101】以上のことを一般化すると、以下のようになる。すなわち、メモリは、行アドレスと列アドレスを有し、行アドレスに対して連続した列アドレスの書き込みおよび読み出しが可能なページ動作を行うものであるとし、制御シーケンス(CYCLEの1周期)内の1ポートがメモリにアクセスするためのページ長をP、シリアルデータのビット幅をSビット、メモリの最大ページ長を2のC乗、メモリのアクセスデータ幅をAビットとすると、シーケンス発生手段の周期Wクロックは、シリアルデータのビット幅Sビット、メモリのアクセスデータ幅Aビットおよびページ長Pに対してW=(A/S)×Pの関係とし、かつCおよびPの値が2のべき乗となるようシーケンス発生手段およびメモリが構成されるということになる。
【0102】実施の形態では、A=120ビット、S=12ビット、P=4(=22 )、C=16( =24 ) となっている。
【0103】以上のような構成および動作により、各ポート間の調停手段を持たずに4ポートの入出力系統を有するマルチポートメモリ装置を実現することが可能となる。
【0104】また、複数のシリアル−パラレル変換回路1a,1bのうちの少なくとも一つは、シリアルデータWSDBを所定の遅延段数だけ時間シフトされた遅延シリアルデータDLYWSDBをパラレルデータWPDBとは別に出力するようにし、複数のシリアル−パラレル変換回路1a,1bの少なくとも一つのシリアルデータ入力端にセレクタ10を設け、外部入力のシリアルデータWSDAと他のシリアル−パラレル変換回路1bから出力される遅延シリアルデータDLYWSDBのいずれか一方を選択して出力するようにし、外部入力のシリアルデータWSDAが通常の倍速であるときに他のシリアル−パラレル変換回路1bから出力される遅延シリアルデータをセレクタ10が選択するようにしたので、制御シーケンスの1周期内における2ポート分のアクセス期間を使ってDRAM4に外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させることが可能となる。
【0105】この際、倍速モードのシリアルデータWSDBをDRAM4に書き込む際に、ライトバッファ2a,2b以降の回路、特にDRAM4については、書き込みクロックおよび読み出しクロックともに、通常速度のクロックを用いることができ、倍速入力のシリアルデータをメモリに書き込む場合にも、消費電力が増加することはない。
【0106】また、DRAM4については、倍速書き込みを行う場合にも、通常速度のクロックを使用して書き込みを行うので、DRAM4のの書き込みクロックを2倍にするのとは異なり、メモリの記憶データを保証することができる。また、通常速度のシリアルデータも倍速のシリアルデータも一つのメモリに書き込むことができ、通常速度のシリアルデータと倍速のシリアルデータの両方を処理する必要がある場合にも、メモリとしては通常速度のクロックで動作する一つのマルチポートメモリ装置だけですみ、撮像装置などにおいて、動作モードによってシリアルデータの入力速度が異なる場合にも、一つのマルチポートメモリ装置のみで、画像処理を行うことが可能で、撮像装置の構成を簡単化でき、小型化、低価格化を実現できる。
【0107】また、静止画等の画素数の多い画像データを倍速モードで書き込んで処理する場合に、DRAM4の読み出し側については通常速度で動作させることができ、動画を表示する表示手段をそのまま利用してモニタ画面上に静止画を容易に表示させることが可能となる。
【0108】なお、本実施の形態では、遅延調整回路7a,7bとしてデュアルポートRAMを用いたが、DRAM動作クロックDCKと読み出し用クロックRCKの位相が規定され、かつ同一周波数である場合ならば、例えばFIFO−RAMあるいは、シフトレジスタとその各レジスタ出力のセレクタ構成による遅延調整でも同様の効果を持たせることが可能である。
【0109】また、シリアル−パラレル変換回路1a,1bおよびライトバッファ2a,2bおよびリードバッファ5a,5bの詳細な構成例として、本実施の形態ではロードホールド型のDフリップフロップで構成したが、この限りではなく、同等の機能を有するものであれば他の構成でもよい。
【0110】また、本実施の形態では、DRAM基本サイクル内での各ポートのアクセスタイミングの固定順序をWA,WB,RA,RBの順としたが、この順に制限されるものではなく任意に決定してよい。例えば、RA,RB,WA,WBなど入力系統より出力系統のアクセスタイミングが前になるように固定すれば、外部リセット信号RSTRと読み出しポートのメモリへのアクセスタイミングの差が小さくなり、読み出しタイミングの遅れ量(レーテンシ)をより小さくできる効果がある。
【0111】また、本実施の形態では、メモリとしてアクセスデータ幅が120ビット、DRAM4の最大ページ長16のDRAMを使用したが、この限りではなく、例えば120ビットより広い240ビットのアクセスデータ幅を有するDRAMを用いれば、ライトバッファ2a,2bにおけるデータの分割数およびセレクタ3a,3bへの入力は各々2系統で済み、セレクタ制御信号もそれにあわせて減らすことができる。また、480ビットのアクセスデータ幅を有するDRAMを使用すれば、セレクタ3a,3bは省くことができる。
【0112】また、本実施の形態では、入力2ポート、出力2ポートとしたがこの限りではなく、例えば、入力1ポート、出力3ポートとしてもよく、この場合は入力系統用のシリアル−パラレル変換回路、ライトバッファ、セレクタが1系統のみでよく、図1のセレクタ3cは必要ない。また、出力系統用のリードバッファ、パラレル−シリアル変換回路、遅延調整回路は3系統に増やせばよい。シーケンス発生回路では、例えば図19に示すように固定した制御シーケンスによって各ブロックの動作を制御すればよい。入出力ポート数が同じであれば、シリアル−パラレル変換の段数等は変える必要はない。図19では、クロックDCKと、外部リセット信号RSTRと、DRAM基本サイクル信号CYCLEと、シーケンス信号PSEQと、ポート基準信号RACTA,RACTB,RACTC,WACTAが示されている。なお、入力ポートの数は、1個、2個に限らず3個以上であってもよい。また、出力ポートの数についても、2個、3個に限らず、1個または4個以上であってもよい。
【0113】また入出力ポートの合計ポート数は4ポートと限るものでもなく、必要なポート数Nと、使用するメモリの仕様(アクセスデータのビット幅A、最大ページ長=2のC乗ビット、Cは2のべき乗とする)と、ポートのシリアルデータのビット幅Sとに応じて、DRAM基本シーケンスの周期Wを決定する。
【0114】ここで、DRAM基本シーケンスの周期Wは、セレクタの入力系統数を2のべき乗となるように決定し、かつW≧n×N(n:1周期内で1ポートあたりのメモリへのアクセス期間のクロック数)の条件を満たす範囲の最小値をとるように決定すれば、メモリのアドレスを計算する場合に端数が出ないので、DRAMコントローラの行アドレス発生回路、列アドレス発生回路を前述のとおり、ビットシフトによる簡単な構成で実現でき、かつ必要以上の回路規模増加を抑えた最適な構成のマルチポートメモリ装置を得ることが可能になる。
【0115】なお、入力ポートが1ポートのみで、S×W=Aならば、本実施の形態のセレクタ3a,3b,3cはいずれも必要なく、シリアル−パラレル変換回路出力のパラレルデータがそのままDRAMへの書き込みデータとして選択されることは言うまでもない。
【0116】なお、本実施の形態ではメモリとしてシングルポートのDRAMを用いたが、これに制限されるものでなく、行アドレス、列アドレスを有する半導体メモリであればよい。
【0117】[第2の実施の形態]つぎに、本願発明の請求項3に示す発明に対応した実施の形態について説明する。図20は本願請求項3に示す発明の実施の形態の撮像装置を示すブロック図である。CCD101−1〜101−3は、それぞれR, G, B用インターレース(飛び越し走査)CCDを示す。以下では、説明の簡略化のため、CCDは垂直画素混合をしないものとする。
【0118】図21は、CCD1−1〜1−3の画素の空間的な位置関係を示すものである。斜め方向の画素ずらし配置により、G信号の画素G11,G12, ...は、RおよびB信号の画素R11,R12,...およびB11, B12, ...に対して、右下方向に水平垂直方向に1/2画素分ずれている。
【0119】図21の空間位置関係にあるRGB信号は、CCDから垂直方向1画素おきに出力される。G信号の画素を例にとると、奇数フィールドでの垂直方向はG11,G31,...の順で、偶数フィールドでの垂直方向はG21,G41,...の順で出力される。R信号、B信号についても同様である。つまり、1フィールド期間ではCCDの全画素データを出力できないため2フィールド期間かけて出力する必要がある。
【0120】そこで、これらのRGB信号は2フィールド期間かけてCCD101−1〜101−3から出力され、アナログ処理部102、A/D変換器103−1〜103−3でそれぞれアナログ処理、デジタル信号への変換が行われ、メモリ手段108のライトポートに入力される。この結果、メモリ手段108にはRGBの全画素分のデータが蓄積される。
【0121】メモリ手段108のリードポートからは、CCD上の空間位置を再現するようにRGB信号が出力される。G信号の画素を例にとると、垂直方向はG11,G21,G31,...の順で出力される。R信号、B信号についても同様である。メモリ手段108の出力は、輝度信号作成手段であるマトリクス回路104に入力される。
【0122】マトリクス回路104では、RGB信号から2系統のY信号および1系統のC信号に変換される。マトリクス回路104の動作を以下に示す。
【0123】図22に示すように、Y1用マトリクス回路115には、メモリ手段8からのRGB画素信号がサンプリング周波数fsで入力され、G信号の画素G21,G22, ...と、RおよびB信号の画素R21,R22,...およびB21,B22,...から、数1のようにY信号の画素Y21,Y22,...を求め、これをY1信号としてサンプリング周波数2fsで出力する。
【0124】
【数1】

【0125】同様に、Y2用マトリクス回路116には、メモリ手段108からのRGB画素信号がサンプリング周波数fsで入力され、G信号の画素G11,G12, ...と、RおよびB信号の画素R21,R22,...およびB21,B22,...から数2のようにY信号の画素Y11,Y12,...を求め、これをY2信号としてサンプリング周波数2fsで出力する。
【0126】
【数2】

【0127】Y1およびY2の空間位置を図23に●で示す。以上のようにY信号の画素を求めることにより、水平方向にGの2倍の画素数を持つY信号を得ることができ、Y1,Y2信号を併せると垂直方向にもGの2倍の画素数を持つY信号が得られることになる。例として、RGB画素信号が水平768画素、垂直480画素の場合、Y1およびY2信号は共に水平1536画素、垂直480画素となり、Y1とY2を併せると水平1536画素、垂直960画素のY信号となる。このとき、fs=15.75MHzとすれば、2fs=31.5MHzとなる。
【0128】また、C信号は数3のように1系統のみ求める。人間の視覚特性から、C信号はそれほど高い帯域を必要としないため、1系統で充分である。Cの空間位置は、Gと同じ位置となるが、図23の簡略化のため図示していない。
【0129】
【数3】

【0130】マトリクス回路104の内部構成を図22に従って説明する。入力されたRおよびB信号はそれぞれ1Hラインメモリ111(H:水平方向走査期間)、112およびCマトリクス回路117に入力される。1Hラインメモリ111、112の出力はY1用マトリクス回路115およびY2用マトリクス回路116に入力される。
【0131】一方、入力されたG信号は1Hラインメモリ113に入力され、1Hラインメモリ113の出力はY1用マトリクス回路115およびCマトリクス回路117および1Hラインメモリ114に入力される。1Hラインメモリ114の出力はY2用マトリクス回路116に入力される。
【0132】このように構成することにより、Y1用マトリクス回路115にはR21,R22,...、G21,G22,...、B21,B22,...が、Y2用マトリクス回路116にはR21,R22,...、G11,G12,...、B21,B22,...が、C用マトリクス回路117にはR21,R22,...、R31,R32,...、G21,G22,...、B21,B22,...、B31,B32,...が、それぞれ入力されることになる。
【0133】マトリクス回路104の出力は水平ズーム回路105に入力され、正方画素変換される。ここで、正方画素変換について説明する。一般に、デジタルスチルカメラ用のCCDでは水平および垂直方向の画素間隔が等しくなっている(正方画素配列)が、ビデオカメラ用のCCDでは異なった間隔になっており、これをそのままパソコンの画面に出力すると、縦または横に延びた画像になってしまうため、電子的に水平方向にズーム処理を行い、YおよびC信号の水平垂直方向の画素間隔を揃える、つまり水平垂直の画素数の比を4:3にすることが必要になる。水平1536画素、垂直960画素のY信号を考えた場合、水平方向に約0.83倍の水平ズームを施すことにより、水平1280画素、垂直960画素の正方画素データが得られる。
【0134】水平ズーム回路105の出力は、セレクタ106を介して、メモリ手段108のライトポートに入力される。前述のように、メモリ手段108のリードポートからはサンプリング周波数fsでRGBデータが読み出され、ライトポートにはマトリクス回路104からのY1,Y2,Cデータがサンプリング周波数2fsで入力される。いま、メモリ手段108の駆動周波数がfsだとすると、ライトポートからの入力されるサンプリング周波数2fsのデータを書き込むには、メモリ手段108は駆動周波数の2倍の速度で書き込みを行うことが必要になる。
【0135】ここで、メモリ手段108として第1の実施の形態に示したマルチポートメモリ装置(例えばライト3ポート、リード3ポート)を用いることにより、駆動周波数の2倍の速度でのデータ書き込みが可能になる。この結果、メモリ手段108には、正方画素変換後のY,C信号、つまり水平1280画素、垂直480画素のY1,Y2,C信号が得られる。
【0136】メモリ手段108のリードポートからのY信号出力は、空間的に上に位置するY2信号から出力が開始され、以後Y1信号、Y2信号を交互に出力することで、垂直960画素分のY信号を出力する。メモリ手段108からのC信号出力は、インターレース補正回路107に入力される。
【0137】インターレース補正回路107では、垂直480画素のC信号を垂直方向に補間し、垂直960画素のC信号として出力する。インターレース補正回路106の内部構成を図24に示す。入力されたC信号は1Hラインメモリ121、加算器122、セレクタ124に入力される。1Hラインメモリ121で1H期間遅延されたC信号は、加算器122で入力C信号と加算され、除算手段123で1/2のゲインがかけられた後、セレクタ124に入力される。セレクタ124は、1H期間毎に入力C信号または除算手段123の出力信号の一方を選択して出力する。インターレース補正回路107の出力はカメラ出力として出力される。この結果、カメラ出力は水平1280画素、垂直960画素のY,C信号となる。
【0138】以上のような構成とすれば、メモリに蓄積されたRGB信号をサンプリング周波数fsで読み出し、マトリクス回路でサンプリング周波数2fsのY1,Y2,C信号に変換した後、2倍速の書き込み動作でメモリに再蓄積するといった一連の処理を、メモリの駆動周波数をfsに保ったまま実行でき、RGB信号蓄積用メモリとY1,Y2,C信号蓄積用メモリを1つのメモリで共用することが可能になる。さらに、メモリ駆動周波数を2fsとし、データ読み出し動作を1クロックおきに行う方式に比べてメモリ消費電力を抑えることが可能になる。
【0139】
【発明の効果】以上のように本発明のマルチポートメモリ装置によれば、シーケンス発生手段によってメモリへの入出力系統の各ポートのメモリへのアクセスタイミングの順序を周期的に固定し、入力系統の書き込みデータはこのアクセスタイミングに同期するようライトバッファで一時記憶保持し、出力系統の読み出しデータは固定されたアクセスタイミングで読み出した後遅延調整手段で読み出し要求タイミングに合致するように遅延させることで、従来のようなポート間のメモリへのアクセスの調停を必要とせず、簡単にポート数を増やすことができる。また、このマルチポートメモリ装置を用いれば、画像メモリとしてだけでなく、ポート数を多く持たせ、これらのポートを用いて、従来のFIFOメモリやデュアルポートSRAM等で実現していた1Hメモリ(Hは映像信号の水平走査期間)機能を実現することもでき、これにより、例えば回路面積の縮小化が図れるなどの効果も得られる。
【0140】また、複数のシリアル−パラレル変換手段のうちの少なくとも一つは、シリアルデータを所定の遅延段数だけ時間シフトされた遅延シリアルデータをパラレルデータとは別に出力するようにし、複数のシリアル−パラレル変換手段の少なくとも一つのシリアルデータ入力端にシリアルデータ選択出力手段を設け、外部入力のシリアルデータと他のシリアル−パラレル変換手段から出力される遅延シリアルデータのいずれか一方を選択して出力するようにし、外部入力のシリアルデータが通常の倍速であるときに他のシリアル−パラレル変換手段から出力される遅延シリアルデータをシリアルデータ選択出力手段が選択するようにしたので、制御シーケンスの1周期内における2ポート分のアクセス期間を使ってメモリに外部入力のシリアルデータを記憶させる倍速書き込みモードで動作させることが可能となる。
【0141】この際、倍速モードのシリアルデータをメモリに書き込む際に、ライトバッファ以降の回路、特にメモリについては、書き込みクロックおよび読み出しクロックともに、通常速度のクロックを用いることができ、倍速入力のシリアルデータをメモリに書き込む場合にも、消費電力が増加することはない。
【0142】また、メモリについては、倍速書き込みを行う場合にも、通常速度のクロックを使用して書き込みを行っており、メモリの書き込みクロックを切り替える必要がないため、メモリの記憶データを保証することができる。
【0143】また、通常速度のシリアルデータも倍速のシリアルデータも一つのメモリに書き込むことができ、通常速度のシリアルデータと倍速のシリアルデータの両方を処理する必要がある場合にも、メモリとしては通常速度のクロックで動作する一つのマルチポートメモリ装置だけですみ、撮像装置などにおいて、動作モードによってシリアルデータの入力速度が異なる場合にも、一つのマルチポートメモリ装置のみで、画像処理を行うことが可能で、撮像装置の構成を簡単化でき、小型化、低価格化を実現できる。
【0144】また、静止画等の画素数の多い画像データを倍速モードで書き込んで処理する場合に、メモリの読み出し側については通常速度で動作させることができ、動画を表示する表示手段をそのまま利用してモニタ画面上に静止画を容易に表示させることが可能となる。
【0145】また、本発明の撮像装置によれば、上記したように、マルチポートメモリ装置におけるライト2ポートを1ポートとして扱えるようになるため、メモリアクセス速度の2倍速のデータが書き込み可能になる。そのため、このマルチポートメモリ装置を撮像装置に用いることで、2倍速書き込み動作が必要なモード(例えば、画素ずらし配置されたCCDを用いての静止画撮影モード)においても、メモリの駆動周波数を通常状態に保ったまま実行でき、異なる2系統の信号の蓄積用メモリ(RGB信号蓄積用メモリとY1,Y2,C信号蓄積用メモリ)を1つのメモリで共用することが可能になる。さらに、メモリ駆動周波数を2fsとし、データ読み出し動作を1クロックおきに行う方式に比べてメモリ消費電力を抑えることが可能になる。
【出願人】 【識別番号】000005821
【氏名又は名称】松下電器産業株式会社
【出願日】 平成12年9月29日(2000.9.29)
【代理人】 【識別番号】100076174
【弁理士】
【氏名又は名称】宮井 暎夫
【公開番号】 特開2002−108701(P2002−108701A)
【公開日】 平成14年4月12日(2002.4.12)
【出願番号】 特願2000−300945(P2000−300945)