PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) 1.61 特長 グラフィック LCD コントローラへの 8 または 16 ビット インタフェース 多くのグラフィック コントローラデバイスと互換 提供 SEGGER emWin グラフィックライブラリによるインタフェース 書き込みおよび読み取り処理の実行 読み込み「LOW」パルス幅は、2〜255 サイクル 読み込み「HIGH」パルス幅は、1〜255 サイクル 典型的な i8080 インタフェースを実装 概要説明 グラフィック LCD インタフェース (GraphicLCDIntf) コンポーネントは、グラフィック LCD コントローラとドライバデバ イスのインタフェースを提供します。これらのデバイスは、一般に、LCD パネルに統合されます。これらのデバイスへ のインタフェースは、一般に、i8080 インタフェースと呼ばれています。これは、歴史的な Intel 8080 マイクロプロセッ サのパラレルバスインタフェースプロトコルに準拠しています。 このコンポーネントはSEGGER emWinグラフィックスライブラリを用いて動くよう設計されています。このグラフィック スライブラリは Cypress により提供され、Cypress デバイスと共に使用するためのもので、Cypressのウェブサイ トである www.cypress.com/go/comp_emWin にあります。グラフィックスライブラリは図やレンダリングテキスト および画像用のグラフィック機能の完全な機能を備えたセットを提供します。 GraphicLCDIntfを使用する場合 LCD コントローラとドライバデバイスは、一般に、LCD パネルに統合されます。それらはディスプレイ用のフレーム バッファへのインタフェースを内蔵または提供し、そのバッファを管理します。GraphicLCDIntf コンポーネントは、こ のコントローラとの読み取りおよび書き込み処理を実行します。これらの処理には、以下のパラメータがあります: 「読み込み」もしくは「書き込み」 address: d_c ピンで駆動される 1 ビットのアドレス Cypress Semiconductor Corporation • 198 Champion Court • San Jose, CA 95134-1709 • 408-943-2600 Document Number: 001-80337 Rev. ** Revised June 6, 2012 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート Data (データ) (8 または 16 ビット):書き込みは「do」で送信、読み取りは「di」で読み取ります GraphicLCDIntf コンポーネントは、多数のコントローラに対応します。このコンポーネントの設定では、3 つのパラ メータを使用できます。 クロック周波数: このコンポーネントを駆動するクロックの周波数は、書き込み信号の最小パルス幅「LOW」に よって、しばしば制限されます(この値はグラフィック LCD コントローラデータシートにあります)。書き込みパル スは、クロック1個分の期間「LOW」であるため、この要件を満たすようにクロック周波数を設定してください。 読み取りパルス幅「HIGH」: カスタマイザのこの設定は、クロックサイクル単位で評価されます。クロック周期を パルス幅「HIGH」のために設定したサイクル数に掛けたものは、コントローラの読み取りパルス幅「HIGH」の 要件を満たす必要があります。 読み取りパルス幅「LOW」: パラメータは読み取りパルス幅「HIGH」パラメータと同じ方法で設定されています。 読み取りパルス幅「LOW」のタイミングは、読み取りパルス幅のコントローラー要件と読み取りアクセス時間の 要件を満たす必要があります。データは、アクティブな「LOW」読み取りパルスが終わる 1 クロック周期前にサ ンプリングされるため、パルス幅は、十分なアクセス時間を持つよう設定する必要があります。 以下に、該当する LCD コントローラの設定を示します。 Solomon Systech SSD1289 クロック周波数: 20 MHz (50 ns) 読み取りパルス幅「HIGH」: 10 クロック周期 (500 ns) 読み取りパルス幅「LOW」: 10 クロック周期 (500 ns) Solomon Systech SSD2119 クロック周波数: 25 MHz (40 ns) 読み取りパルス幅「HIGH」: 13 クロック周期 (500 ns) 読み取りパルス幅「LOW」: 13 クロック周期 (500 ns) Himax HX8347A クロック周波数: 28.5 MHz (35 ns) 読み取りパルス幅「HIGH」: 3 クロック周期 (105 ns) 読み取りパルス幅「LOW」: 11 クロック周期 (385 ns) Page 2 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) ILITEK ILI9325 クロック周波数: 20 MHz (50 ns) 読み取りパルス幅「HIGH」: 3 クロック周期 (150 ns) 読み取りパルス幅「LOW」: 3 クロック周期 (150 ns) Epson S1D13743 クロック周波数: 33 MHz (33.3 ns) 読み取りパルス幅「HIGH」: 2 クロック周期 (67 ns) 読み取りパルス幅「LOW」: 5 クロック周期 (167 ns) 入出力接続 このセクションは GraphicLCDIntf コンポーネントの入出力接続を説明します。I/O リストのアスタリスク (*) は、そ の I/O の説明でリストされている条件において、I/O が*シンボル(ワイルドカード)に隠れている可能性があることを 示します。 クロック このコンポーネントを駆動するクロック。GraphicLCDIntf は、コンポーネントに接続されているクロックが1周期以 上あれば完全に動作します。 di_lsb[7:0] 入力データバスの下位 8 ビット。読み込み処理中のデータに使用。 デバイスの入力ピンに接続し、このピンに対する「入力同期」選択をディスエーブルにします。同期出力信号を基 にして駆動されるため、信号そのものは本質的には同期化されます。 di_msb[7:0] * 入力データバスの上位 8 ビット。読み込み処理中のデータに使用。16 ビット インタフェースモードのときのみ存在。 信号をデバイスの入力ピンに接続し、このピンに対する「入力同期」選択をディスエーブルにします。同期出力信 号を基にして駆動されるため、信号そのものは本質的には同期化されます。 do_lsb[7:0] 出力データバスの下位 8 ビット。書き込み処理中のデータで使用されます。 Document Number: 001-80337 Rev. ** Page 3 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート do_msb[7:0] * 出力データバスの上位 8 ビット。書き込み処理中のデータで使用されます。16 ビット インタフェースモードのときの み存在。 oe データ バスの出力イネーブル。これは通常データバスの入出力ピンコンポーネントの出力イネーブルに接続されて います。この信号が使用される方法については、「図解マクロ情報」を参照してください。 d_c データ/コマンド信号。「HIGH」の場合はデータ処理、「LOW」の場合はコマンド処理を示します。 ncs アクティブ「LOW」チップ選択。 nwr アクティブ「LOW」書き込み制御信号。 nrd アクティブ「LOW」読み取り制御信号。 回路図マクロ情報 コンポーネントカタログには、標準の記号エントリに加え、2 つのマクロが PSoC Creator により提供されています。 1 つは、ピンおよびクロックに接続される 8 ビットの実装用マクロです。もう 1 つは、ピンおよびクロックに接続される 16 ビットの実装用マクロです。 Page 4 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) それぞれのマクロでは、クロックが 20 MHz に設定され、パルス幅設定は初期設定のままになります。これが SSD1289 コントローラ用の適切な設定です。 「同期入力」オプションは、すべてのデータ ピンで選択が解除され、すべてのピンの API 生成はオフになります。 コンポーネントパラメータ GraphicLCDIntf コンポーネントを設計図上にドラッグし、ダブルクリックして [Configure] (設定) ダイアログを開 きます。初期設定の GraphicLCDIntf 設定は、Solomon Systech SSD1289 コントローラを操作するための 適切な設定です。 Document Number: 001-80337 Rev. ** Page 5 of 20 PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) バス幅 コンポーネントがグラフィック LCD コントローラへの 8 または 16 ビット パラレルインタフェースをサポートするか決定し ます。初期設定は 16 ビットです。 Low Pulse Width Time (「LOW」パルス幅時間) コントローラで、読み取りパルス幅「LOW」に必要なクロック周期数を決定します。この値は、2〜255 クロック周 期に設定できます (読み取り値は、パルス終了の 1 クロック前にサンプリングされる必要があるため、最小は 2 で す)。初期設定は 10 です。 High Pulse Width Time (「HIGH」パルス幅時間) コントローラで、読み取りパルス幅「HIGH」に必要なクロック周期数を決定します。この値は、1〜255 クロック周 期に設定できます。初期設定は 10 です。 クロックの選択 このコンポーネントには、内部クロックはありません。クロックソースを必ず取りつけてください。このコンポーネントは、 それに接続されているクロック1個から動作します。 配置 GraphicLCDIntf は、UDB アレイ全体に配置され、すべての配置情報は、cyfitter.h ファイルを通して API に 提供されます。 リソース API メモリ(バイト) リソースのタイプ リソース データパス セル PLD ステータス セル フラッシュ RAM ピン(外部入出 力ごと) 8ビットインタフェース 1 4 2 109 1 12 16ビットインタフェース 2 4 3 120 1 20 Page 6 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) アプリケーション プログラミング インタフェース アプリケーションプログラミングインタフェース (API) ルーチンにより、ソフトウェアを使用してコンポーネントを設定でき ます。次の表は、各関数へのインタフェースとその説明を示しています。続くセクションでは、各関数について詳しく 説明します。 初期設定において PSoC Creator は特定の設計のコンポーネントの最初のインスタンスに対して、インスタンス 名「GraphicLCDIntf_1」を割り当てます。インスタンス名は、識別子の構文ルールに従った固有の値に変更で きます。インスタンス名は、コンポーネントで生成されるすべてのグローバル関数名、変数、定数記号の接頭辞に なります。分かりやすくするために、次の表で使用されているインスタンス名は「GraphicLCDIntf」とします。 関数 説明 GraphicLCDIntf_Start() GraphicLCDIntfインタフェースを開始します。 GraphicLCDIntf_Stop() GraphicLCDIntfインタフェースをディスエーブルにします。 GraphicLCDIntf_Write8() 8 ビットパラレル インタフェースで、書き込み処理を開始します。 GraphicLCDIntf_Write16() 16 ビットパラレルインタフェースで、書き込み処理を開始します。 GraphicLCDIntf_Read8() 8 ビットパラレルインタフェースで、読み取り処理を開始します。 GraphicLCDIntf_Read16() 16 ビットパラレルインタフェースで、読み取り処理を開始します。 GraphicLCDIntf_Sleep() 設定を保存し、GraphicLCDIntfをディスエーブルにします。 GraphicLCDIntf_Wakeup() 設定を復元し、GraphicLCDIntfをイネーブルにします。 GraphicLCDIntf_Init() GraphicLCDIntf初期設定を初期化または復元します。 GraphicLCDIntf_Enable() GraphicLCDIntfをイネーブルにします。 GraphicLCDIntf_SaveConfig() GraphicLCDIntfの構成を保存します。 GraphicLCDIntf_RestoreConfig() GraphicLCDIntfの構成を復元します。 グローバル変数 変数 説明 GraphicLCDIntf_initVar グラフィックLCDインタフェースが初期化されたかどうかを示します。変数は、0に初期化され、最初に GraphicLCDIntf_Start() が呼び出されると1に設定されます。GraphicLCDIntf_Start() ルーチンを 最初に呼び出してから、再初期化することなく、コンポーネントが再起動できるようにします。 コンポーネントの再初期化が必要な場合、GraphicLCDCtrl_Start()もしくは GraphicsLCDCtrl_Enable()関数を呼び出す前に、GraphicLCDCtrl_Init()関数を呼び出すことも できます。 Document Number: 001-80337 Rev. ** Page 7 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート void GraphicLCDIntf_Start(void) 説明: この関数はActive modeパワーテンプレートビットまたはクロックのゲーティングを必要に応じてイネーブルに します。操作するコンポーネントを設定します。 パラメータ: なし 戻り値: なし 副作用: なし void GraphicLCDIntf_Stop(void) 説明: この関数はActive modeパワーテンプレートビットまたはゲートクロックを必要に応じてディスエーブルにしま す。 パラメータ: なし 戻り値: なし 副作用: なし void GraphicLCDIntf_Write8(uint8 d_c, uint8 data) 説明: この関数は8 ビットパラレルインタフェースでの書き込み処理を開始します。この書き込みはposted(要求 配信)書き込みであるため、この関数は、インタフェースに対し書き込みが実際に終了する前に戻ります。コ マンドのキューがいっぱいである場合は、この関数は、この書き込みリクエストのスペースが空くまで、戻り値 を返しません。 パラメータ: d_c: データ (1) またはコマンド (0) を示します。d_c ピンに渡されます data: do_lsb[7:0] ピンで送信されるデータ 戻り値: なし 副作用: なし Page 8 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) void GraphicLCDIntf_Write16(uint8 d_c, uint16 data) 説明: この関数は 16ビットパラレルインタフェース上の書き込み処理を開始します。この書き込みはposted(要求 配信)書き込みであるため、この関数は、インタフェースに対し書き込みが実際に終了する前に戻ります。コ マンドのキューがいっぱいである場合は、この関数は、この書き込みリクエストのスペースが空くまで、戻り値 を返しません。 パラメータ: d_c: データ (1) またはコマンド (0) を示します。d_c ピンに渡されます data: do_msb[7:0] (上位バイト) および do_lsb[7:0] (下位バイト) ピンに送られるデータ 戻り値: なし 副作用: なし uint8 GraphicLCDIntf_Read8(uint8 d_c) 説明: この関数は8ビットパラレルインタフェース上で書き込み処理を開始します。現在要求されている書き込み が全て完了した後に、読み込みが実行されます。この関数は、読み込みが完了するまで待機し、その後に 読み込み値を返します。 パラメータ: d_c: データ (1) またはコマンド (0) を示します。d_c ピンに渡されます。 戻り値: di_lsb[7:0] ピンからの 8 ビットの読み取り値 副作用: なし uint16 GraphicLCDIntf_Read16(uint8 d_c) 説明: この関数は 16ビットパラレルインタフェース上で読み取り処理を開始します。現在要求されている書き込み が全て完了した後に、読み込みが実行されます。この関数は、読み込みが完了するまで待機し、その後に 読み込み値を返します。 パラメータ: d_c: データ (1) またはコマンド (0) を示します。d_c ピンに渡されます。 戻り値: do_msb[7:0] (最上位バイト) と do_lsb[7:0] (最下位バイト) ピンからの 16 ビットの読み取り値 副作用: なし Document Number: 001-80337 Rev. ** Page 9 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート void GraphicLCDIntf_Sleep(void) 説明: これは、コンポーネントのスリープを準備するのに推奨されるルーチンです。GraphicLCDIntf_Sleep()ルー チンは、現在のコンポーネントの状態を保存します。次に、GraphicLCDIntf_Stop() 関数、さらに GraphicLCDIntf_SaveConfig() 関数を呼び出して、ハードウェアの設定を保存します。必要に応じて Active mode パワーテンプレートビットまたはクロックゲーティングをディスエーブルにします。 CyPmSleep() または CyPmHibernate() 関数を呼び出す前に、GraphicLCDIntf_Sleep() 関数を呼 び出します。電源管理関数については、『PSoC Creator システム・リファレンスガイド』 を参照してくださ い。 パラメータ: なし 戻り値: なし 副作用: なし void GraphicLCDIntf_Wakeup(void) 説明: これは、GraphicLCDIntf_Sleep() が呼び出された際に、コンポーネントにその状態を復元するための、望 ましいルーチンです。GraphicLCDIntf_Wakeup() 関数は、GraphicLCDIntf_RestoreConfig() 関数 を呼び出して、設定を復元します。GraphicLCDIntf_Sleep() 関数が呼び出される前にコンポーネントが イネーブルされていた場合、GraphicLCDIntf_Wakeup() 関数はコンポーネントも再度イネーブルにしま す。必要に応じてActive mode パワーテンプレートビットまたはクロックゲーティングをイネーブルにします。 パラメータ: なし 戻り値: なし 副作用: 最初に GraphicLCDIntf_Sleep() または GraphicLCDIntf_SaveConfig() 関数を呼び出さずに GraphicLCDIntf_Wakeup() 関数を呼び出すと、予期せぬ動作が起きることがあります。 void GraphicLCDIntf_Init(void) 説明: この関数はカスタマイザの [Configure] (設定) ダイアログの設定に従って、コンポーネントを初期化または 復元します。GraphicLCDIntf_Start() ルーチンが GraphicLCDIntf_Init() を呼び出し、これがコンポーネ ントの動作を開始する望ましい方法であるため、GraphicLCDIntf_Init() を呼び出す必要はありません。 読み取り「LOW」および「HIGH」パルス幅を定義する静的コンポーネント設定のみが、初期値に復元され ます。 パラメータ: なし 戻り値: なし 副作用: これはコンポーネントを再初期化しますが、FIFO からのデータはクリアしません。そしてコンポーネントハード ウェアステートマシンをリセットしません。現在の処理は、バス上で実行されます。 Page 10 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) void GraphicLCDIntf_Enable(void) 説明: この関数はハードウェアを起動し、コンポーネントの動作を開始します。GraphicLCDIntf_Start() ルーチン がこの関数を呼び出すので、GraphicLCDIntf_Enable() を呼び出す必要がありません。これはコンポー ネントの操作を開始するときに推奨される方法です。 パラメータ: なし 戻り値: なし 副作用: なし void GraphicLCDIntf_SaveConfig(void) 説明: この関数は、コンポーネントの設定と一時保持レジスタ内容を保存します。この関数は、[Configure] ダイ アログで定義されている、または該当する API で変更される、現在のコンポーネントパラメータ値も保存し ます。この関数は、GraphicLCDIntf_Sleep() 関数によって呼び出されます。読み取り「LOW」および 「HIGH」パルス幅を定義する、コンパイル時間コンポーネント設定は保存されています。 パラメータ: なし 戻り値: なし 副作用: なし void GraphicLCDIntf_RestoreConfig(void) 説明: この関数はGraphicLCDIntfの維持されないレジスタの構成を復元します。GraphicLCDIntf_Wakeup によって API が呼び出され、コンポーネントの一時保存レジスタ内容を復元します。 パラメータ: なし 戻り値: なし 副作用: このAPI がGraphicLCDIntf_SaveConfigの前に呼び出される場合は、読み取り「LOW」および 「HIGH」パルス幅のコンポーネント設定が、カスタマイザで提供されている値に復元されます。 ファームウェアソースコードのサンプル PSoC Creator は、[Find Example Project (サンプルプロジェクトを検索)] ダイアログに多数のサンプルプロジェ クトを提供しており、そこには回路図およびサンプル コードが含まれています。コンポーネント固有の例を見るには、 [Component Catalog ] または回路図中当該コンポーネントのインスタンスからダイアログを開きます。一般例に ついては、[Start Page] または [File (ファイル)] メニューからダイアログを開きます。必要に応じてダイアログにある Filter Options を使用し、選択できるプロジェクトのリストを絞り込みます。 詳細は PSoC Creator ヘルプの「Find Example Project(プロジェクト例を見つける)」を参照してください。 Document Number: 001-80337 Rev. ** Page 11 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート 機能説明 バスの処理 このインタフェースは、読み取りまたは書き込み処理のいずれかを実行します。これらの処理には、以下のパラメー タがあります: 「読み込み」もしくは「書き込み」 address: この場合、 d_c ピン上で駆動されている 1 ビット アドレスです Data (データ) (8 または 16 ビット):書き込みは「do」で送信、読み取りは「di」で読み取られます。 実装は、CPU が (データで使用されるのと同じ) FIFO を使用して、コマンド バイトをコンポーネントに送信するこ とを想定しています。このコマンド バイトが読み取りまたは書き込みを示し、d_c ビットを提供します。 アイドル状態 インタフェース上で読み取りも書き込みも行われていないとき、インタフェースはアイドル状態にあります。この条件 での出力ピンの値は、以下の通りです。 d_c: Don't care(影響なし、通常は、最後の状態のまま) ncs: 1 nwr: 1 nrd: 1 do: Don't care(影響なし、通常は、最後の状態のまま) oe: 0 読み取りおよび書き込み処理の説明で、リストされていない信号はアイドルです。 Page 12 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) 書き込み処理 図 1 はパラレルインタフェースでの書き込み処理のタイミング図です。 図 1. 書き込み処理タイミング図 この図は、書き込み処理が 3 つのクロック周期を必要としていることを示しています。タイミング図は、ビット幅に関 わらず同じです。この処理は、直ちに別の読み取りまたは書き込み処理の前または後に続いて実行できます。ま たは、書き込み処理の前または後で、アイドル状態になる場合があります。 CPU へのインタフェースにより、CPU が書き込み要求を要求できるようになります (アドレスとデータを提供し書き 込みをリクエストしてから、処理がパラレルバスで実際に完了する前に実行します)。実装により、CPU を著しくス トールさせることなく、CPU が 2 つの書き込みリクエストを持つことができます。 読み込み操作 図 2 はパラレルインタフェース上の読み取り処理のタイミング図です。 図 2. 読み取り処理タイミング図 この図は、読み取り処理が、読み取りパルス幅の「LOW」および「HIGH」設定により、さまざまなクロック周期数 を必要とすることを示しています。タイミング図は、ビット幅に関わらず同じです。データ入力は、ncs と nrd Document Number: 001-80337 Rev. ** Page 13 of 20 PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) 「LOW」パルスの終わりの前に、クロック周期 1 回をサンプリングすることに注意してください。この処理は、直ちに 別の読み取りまたは書き込み処理の前または後に続いて実行できます。または、読み取り処理の前または後で、 アイドル状態になる場合があります。 読み取りおよび書き込みの順序は維持されます (読み取りは、書き込み要求が完了する前に実行されます)。 読み取りでは、CPU が実行前に、読み取り処理の完了を待つ必要があります。 ブロック図と設定 GraphicLCDIntfコンポーネントは、設定されているUDBセットとして実装されます。図 3 はこの実装を示しま す。 図 3. ブロック図 Control logic cmd d_c z0 clock data valid cnf[2:0] cmd d_c nwr d_c ncs zero oe nrd clock Status to CPU cmd and lsb dp cnf_addr[2:0] Status to CPU F0 not empty clock zero detect z0 d_c nwr ncs oe nrd status Status to CPU do_lsb [7:0] PO[7:0] status clock msb dp lsb_reg di_msb [7:0] cnf_addr[2:0] status PO[7:0] clock do_msb [7:0] msb_reg di_lsb [7:0] status clock clock clock *Presents only for 16-bit interface Page 14 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) レジスタ GraphicLCDIntf_STATUS_REG ビット 7 6 5 値 4 3 2 予約済み 1 0 data_valid F0_half_ empty F0_half_empty: 設定されると、コマンド/データ FIFO に 2 バイト以上の空きがあります。 data_valid: CPU にとって読み取りデータが有効な場合にセットされます。このビットは、CPU がレジスタを読 み取る際にクリアされます。 GraphicLCDIntf_DIN_LSB_DATA_REG ビット 7 6 5 4 2 1 0 di_lsb[7:0] 値 3 読み取り処理の、入力データバスの下位 8 ビット。 8 ビットインタフェースでは、GraphicLCDIntf_Read8() API 関数でレジスタ値を読み取ることができます。値は、 16 ビット インタフェースでは、GraphicLCDIntf_Read16() API 関数から返される値の LSB(最も重要度が低い バイト)です。 GraphicLCDIntf_DIN_MSB_DATA_REG ビット 7 6 5 4 値 3 2 1 0 di_msb[7:0] 読み取り処理用の入力データバスの上位 8 ビット レジスタ値は、16 ビット インタフェースでは、GraphicLCDIntf_Read16() API 関数から返される値の MSB(最 も重要度が高いバイト)です。 注 DIN_LSB_DATA_REG および DIN_MSB_DATA_REG ビットは、CPU ファームウェアがこれらのレジスタ を読み取る際にクリアされます。 Document Number: 001-80337 Rev. ** Page 15 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート DC 電気的特性と AC 電気的特性 以下の値は、期待される性能を示しており、初期特性データを基にしています。 「名目配線での最大」タイミング特性 パラメータ 説明 Min Typ Max 1 単位 fCLOCK コンポーネントクロック周波数 − − 33 MHz tAS アドレスセットアップタイム 1 − − tCY_clock 2 tPWLW パルス幅「LOW」書き込み − 1 − tCY_clock tPWHW パルス幅「HIGH」書き込み 3 − − tCY_clock tPWLR パルス幅「LOW」読み取り 2 − 255 tCY_clock tPWHR パルス幅「HIGH」読み取り 1 − 255 tCY_clock tAH アドレスホールド時間 書き込み 2 − − tCY_clock 読み取り tPWHR − − tCY_clock 書き込みサイクル 4 − − tCY_clock 読み込みサイクル tPWLR + tPWRH + 1 − − tCY_clock tCYCLE クロックサイクル期間 tDSW データセットアップ時間 − 1 − tCY_clock tDHW データホールド時間 − 1 − tCY_clock tACC データアクセス期間 − tPWHR – 1 − tCY_clock tDHR 出力ホールドタイム − 0 − tCY_clock 1 これらの「名目値」は、通常ルーティング状況における、コンポーネントの最大安全動作周波数です。コンポーネントをより高いクロック周波数で実行 することができますが、STA 結果を使用して、タイミング要件を検証する必要があります。 2 tCY_clock = 1/fCLOCK. これは 1 クロック周期のサイクルタイムです Page 16 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) 「すべての配線での最大」タイミング特性 パラメータ 説明 Min Typ Max 3 単位 fCLOCK コンポーネントクロック周波数 − − 25 MHz tAS アドレスセットアップタイム 1 − − tCY_clock tPWLW パルス幅「LOW」書き込み − 1 − tCY_clock tPWHW パルス幅「HIGH」書き込み 3 − − tCY_clock tPWLR パルス幅「LOW」読み取り 2 − 255 tCY_clock tPWHR パルス幅「HIGH」読み取り 1 − 255 tCY_clock tAH アドレスホールド時間 書き込み 2 − − tCY_clock 読み取り tPWHR − − tCY_clock 書き込み 4 − − tCY_clock 読み取り tPWLR + tPWRH + 1 − − tCY_clock tCYCLE クロックサイクル期間 tDSW データセットアップ時間 − 1 − tCY_clock tDHW データホールド時間 − 1 − tCY_clock tACC データアクセス期間 − tPWHR – 1 − tCY_clock tDHR 出力ホールドタイム − 0 − tCY_clock 3 「すべての配線」で最大とはコンポーネントインスタンスがこれらの動作速度以下で(ゆっくり)作動する場合、適合タイミングはこのコンポーネントにとって 問題ではないことを意味します。 Document Number: 001-80337 Rev. ** Page 17 of 20 グラフィック LCD インタフェース (GraphicLCDIntf) PSoC® Creator™ コンポーネント データシート 図 4. データ 処理のタイミング図 Page 18 of 20 Document Number: 001-80337 Rev. ** PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) 特性データ用の STA 結果の使用方法 名目配線の最大値は、静的タイミング分析 (STA) を使って、複数のテストパスから収集されます。次の方法を 用いて、STA 結果と共に設計の最大値を計算することができます。 fCLOCK 最大コンポーネント・クロック周波数は、名前の付いたコンポーネント・クロック (この場合は CLK) として、 クロック要約の中のタイミング結果の中に出ています。次の図表は、クロック制限の例を示します。 残りのパラメータは、実装固有のものであり、クロックサイクル単位で表されます。これらは、2 つのカテゴリに分ける ことができます。 コンポーネントの設定に用いられるパラメータは: tPWLW 書き込み信号の最小パルス幅「LOW」時間 tPWLR 読み取り信号の最小パルス幅「LOW」時間 tPWHR 読み取り信号の最小パルス幅「HIGH」時間 コンポーネントを設定する際に、これらのパラメータをどのように使用するかについての詳しい説明は、1 ページ の「GraphicLCDIntf を使用する場合」に記載されています。 コンポーネントの実装に基づいて確定されるパラメータは: tPWHW 書き込み信号の最小パルス幅「HIGH」時間 tAS nwr/nrd 信号の立ち下がりエッジ前に、アドレス信号が有効になる最小時間 tAH nwr/nrd 信号の立ち上がりエッジ後に、アドレス信号が有効になる最小時間 tCYCLE 一回の処理(書き込み/読み取り) がインタフェースで実行される期間 tDSW 書き込み信号の立ち上がりエッジ前に、データが有効になる最小時間 tDHW 書き込み信号の立ち上がりエッジの後に、データが有効になる最小時間 tACC 読み取り信号の負のエッジ後に、データがサンプリングされる最小時間 tDHR nrd 信号の立ち上がりエッジ後に、データが有効になる最小時間 Document Number: 001-80337 Rev. ** Page 19 of 20 PSoC® Creator™ コンポーネント データシート グラフィック LCD インタフェース (GraphicLCDIntf) コンポーネントの変更 ここでは、過去のバージョンからコンポーネントに加えられた主な変更を示します。 バージョン 1.61 変更の理由 / 影響 変更の説明 すべてのAPIが真に再入可能とは限りません。コンポーネント API ソースフ .cyreファイルに含めるとき、すべてのコン ポーネント API に CYREENTRANTキー ァイルに含まれているコメントは、どの関数が(再入可能)候補であるかを示 しています。 ワードを追加 この変更では、安全な(フラグまたはクリティカルセクションによる並行コール から保護された)方法で使用される再入可能ではない関数のコンパイラ警 告を制限する必要があります。 コンポーネント中の不正なタイミング パスを 使用されていないパスをタイミング分析から取り除きます。これにより、誤っ マークするために、タイミング制約を追加 たタイミング違反メッセージを回避することができます。 1.60.a データシートからの関連キットへの参照を 削除 1.60 DPクロックに対するFIFOブロックステータス コンポーネントが、すべてのSoC 3およびPSoC 5シリコンで同じタイミング結 信号を再サンプル 果で機能することを可能にします。 データシートに特性データを追加 データシートのマイナーな編集と更新 Copyright © 2005-2012 Cypress Semiconductor Corporation 本文書に記載される情報は、予告なく変更される場合があります。Cypress Semiconductor Corporation は、サイプレス製品に組み込まれた回路以 外のいかなる回路を使用することに対しても一切の責任を負いません。特許又はその他の権限下で、ライセンスを譲渡又は暗示することもありません。サイプレス製品は、サイプレスとの書面による合意に基づくものでない限り、 医療、生命維持、救命、重要な管理、又は安全の用途のために仕様することを保証するものではなく、また使用することを意図したものでもありません。さらにサイプレスは、誤動作や故障によって使用者に重大な傷害をもた らすことを合理的に予想される、生命維持システムの重要なコンポーネンツとしてサイプレス製品を使用することを許可していません。生命維持システムの用途にサイプレス製品を供することは、製造者がそのような使用におけ るあらゆるリスクを負うことを意味し、その結果サイプレスはあらゆる責任を免除されることを意味します。 PSoC Designer™及び Programmable System-on-Chip™は、Cypress Semiconductor Corp.の商標、PSoC®は同社の登録商標です。本文書で言及するその他全ての商標又は登録商標は各社の所有物です。 全てのソースコード(ソフトウェア及び/又はファームウェア)は Cypress Semiconductor Corporation(以下「サイプレス」)が所有し、全世界(米国及びその他の国)の特許権保護、米国の著作権法並びに国際協定の条項に より保護され、かつそれらに従います。サイプレスが本書面によるライセンシーに付与するライセンスは、個人的、非独占的かつ譲渡不能のライセンスであって、適用される契約で指定されたサイプレスの集積回路と併用される ライセンシーの製品のみをサポートするカスタムソフトウェア及び/又はカスタムファームウェアを作成する目的に限って、サイプレスのソースコードの派生著作物を複製、使用、変更、そして作成するためのライセンス、並びにサイプ レスのソースコード及び派生著作物をコンパイルするためのライセンスです。上記で指定された場合を除き、サイプレスの書面による明示的な許可なくして本ソースコードを複製、変更、変換、コンパイル、又は表示することは 全て禁止されます。 免責条項:サイプレスは、明示的又は黙示的を問わず、本資料に関するいかなる種類の保証も行いません。これには、商品性又は特定目的への適合性の黙示的な保証が含まれますが、これに限定されません。サイプレス は、本文書に記載される資料に対して今後予告なく変更を加える権利を留保します。サイプレスは、本文書に記載されるいかなる製品又は回路を適用又は使用したことによって生ずるいかなる責任も負いません。サイプレス は、誤動作や故障によって使用者に重大な傷害をもたらすことが合理的に予想される生命維持システムの重要なコンポーネンツとしてサイプレス製品を使用することを許可していません。生命維持システムの用途にサイプレス 製品を供することは、製造者がそのような使用におけるあらゆるリスクを負うことを意味し、その結果サイプレスはあらゆる責任を免除されることを意味します。 ソフトウェアの使用は、適用されるサイプレスソフトウェアライセンス契約によって制限され、かつ制約される場合があります。 Page 20 of 20 Document Number: 001-80337 Rev. **