JP2004112241A - Lsi - Google Patents

Lsi Download PDF

Info

Publication number
JP2004112241A
JP2004112241A JP2002270818A JP2002270818A JP2004112241A JP 2004112241 A JP2004112241 A JP 2004112241A JP 2002270818 A JP2002270818 A JP 2002270818A JP 2002270818 A JP2002270818 A JP 2002270818A JP 2004112241 A JP2004112241 A JP 2004112241A
Authority
JP
Japan
Prior art keywords
lsi
register
general
initial value
setting
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.)
Granted
Application number
JP2002270818A
Other languages
Japanese (ja)
Other versions
JP4048091B2 (en
Inventor
Kenta Yamaguchi
山口 健太
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002270818A priority Critical patent/JP4048091B2/en
Publication of JP2004112241A publication Critical patent/JP2004112241A/en
Application granted granted Critical
Publication of JP4048091B2 publication Critical patent/JP4048091B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To obtain an LSI for control that can automatically write an initial value to a universal LSI when power is turned on even without going through CPUs. <P>SOLUTION: There are three registers where it is necessary to perform setting to an external universal LSI as an initial value. A state machine control procedure controls the output of an initial setting value to the universal LSI from a register 3 for setting an automatic initial value in the LSI for control. An internal counter 2 becomes 0, and an address and data stored in an address (000) of the register 3 are outputted as a state 1 when the power of the LSI for control is turned on. Writing the data to the universal LSI (not illustrated) counts up the internal counter 2 by a transmission completion flag for advancing to a state 2. Data of an initial value setting resister address where an address outputted in the state 1 are incremented by one each till a state 3, and END is reached by outputting for three times to reach a state 4, thus completing the setting of the initial value to the universal LSI. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、LSI制御スキャナ、デジタルPPC、デジタルFAX等で用いられ制御用LSI等のLSIに関する。
【0002】
【従来の技術】
LSI内部に外部からデータを書き込む記録器(以後これをレジスタと呼ぶ)を持つ汎用LSIでは、初期設定時に前記レジスタにデータを書き込み、LSIを動作させることがある。これにより、通常は汎用LSI内部で固定される設定値を、レジスタを設けることで外部から設定することが可能となる。
このような構造にしておけば、システムの変更により設定値が変更となっても、レジスタの設定値を外部から変更することで対応することができる。
【0003】
レジスタへのデータの外部からの設定方法としては、前述の汎用LSIは、シリアル又はパラレルのインタフェイスを有し、外部からデータの書き込みを行うのが一般的である。この方式は、周辺デバイスの制御機能を持つLSI(以後これを制御用LSIと呼ぶ)を用い、CPUがこの制御用LSI内のレジスタに汎用LSIの初期設定値を書き込んだ後、この初期設定値を汎用LSIのレジスタに書き込むようにした汎用LSI制御システムで使用される場合がある。
【0004】
図14に汎用LSI制御システムの構成を示す。
図において、CPUはシリアル又はパラレルのインタフェイスにより制御用LSIのレジスタに、汎用LSIのレジスタ1に書き込むための初期設定値を書き込む。制御用LSIはレジスタ1に書き込まれた初期設定値をパラレル/シリアル変換し、シリアルインタフェイスを介して、又はパラレルデータとしてパラレルインタフェイスを介して汎用LSIのレジスタに書き込む。
【0005】
これらの動作は、CPU、制御用LSI及び汎用LSIの各電源を入れた後、CPUからのソフト制御により初期設定値が設定されることになるので、CPUが初期設定値を送信していない段階では、制御用LSI、汎用LSIの各レジスタにはLSIそのものが持つ固有の初期値が設定されており、各LSIは、その設定値に従った動作を行っている。
【0006】
図15に上記のようなシステムの一例を示す(例えば、特許文献1参照)。
図15において、システムクロックを取り込むシフトレジスタ16の偶数段の出力と奇数段の出力とが、オア回路23、24を介してフリップフロップ21をセット又はリセットする。カウンタ22はフリップフロップ21の出力に対して逆位相の信号を入力する。外部から入力されたWR信号とフリップフロップ21の出力とが自動読み込み設定信号の状態に応じて選択的にLSI内のレジスタ25に読み込まれる。
【0007】
【特許文献1】
特開平5−143752号公報
【0008】
【発明が解決しようとする課題】
しかし、前述のように汎用LSIの初期設定値の書き込みにCPUを介したシリアル又はパラレルのインタフェイスを用いる場合、CPUの制御ソフトを介在する必要が生まれ、CPUの無いシステムでは汎用LSIに初期値を設定することができない。また、汎用LSIがアナログ機能を有するLSIの場合には、アナログ出力が安定するまでの時間を確保する必要がある場合があるという問題があった。
また、CPUが初期値を設定する前に汎用LSIの電源が入るシステムの場合には、汎用LSIから狙いの値と異なるアナログ信号が出力されることでシステムに不具合を与える可能性があるという問題があった。
【0009】
本発明は上記の問題を解決するためのもので、CPUを介さずとも、任意の汎用デバイスに対応した初期値を設定することができる制御用LSIを提供することを目的とするものである。
【0010】
【課題を解決するための手段】
上記目的を達成するために、本発明による制御用LSIは、汎用LSIの1つ以上の初期設定値を保存する第1のレジスタと、第1のレジスタに保存された初期設定値の数をカウントするカウンタを用いてステートマシン制御を行うことにより、第1のレジスタから初期設定値を前記汎用LSIに出力させる制御を行う制御手段とを設けたものである。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態を図面と共に説明する。
図1は第1の実施の形態を示すもので、CPUを介さずとも、電源が投入されると汎用LSIに初期値を自動的に書きこむ制御用LSIにおける自動初期設定値出力部を示すブロック図である。尚、本実施の形態は請求項1、2に対応する。
図1において、本制御用LSIは、内部カウンタ2を有するパワーONイニシャル検出回路1と自動初期値設定用レジスタ3を備えている。
【0012】
自動初期値設定用レジスタ3は、制御用LSIのターゲットとなる汎用LSI(図示せず)の初期設定値を保存している。パワーONイニシャル検出回路1には、システムクロックSYSCLK、リセット信号RSTが入力されると共に、図示の所定の各信号が出力される。
【0013】
図2は自動初期値設定用レジスタ3の構成を示す図である。
汎用LSIに初期値として設定する必要のあるレジスタが3つあるとすると、図示のように(000)から(010)にターゲットとなる汎用LSIの初期設定値(アドレス+データ)が保存されている。
【0014】
図3は制御用LSI内で自動初期値設定用レジスタ3から、初期設定値の出力制御をするステートマシン制御手順を示すフローチャートである。
制御用LSIの電源がONになると、内部カウンタの初期値が0となり、自動初期値設定用レジスタのアドレス(000)に保存されているアドレスとデータがステート1として出力される。このデータが汎用LSIに書き込まれると、送信完了フラグ信号INI_WR_Flgにより内部カウンタ2がカウントアップされ、ステート2に進む。ステート3まではステート1で出力したアドレスから1ずつインクリメントした初期値設定レジスタアドレスのデータを出力し、3回出力してステート4まで行くとENDとなり、汎用LSIへの初期値の設定が終了する。
【0015】
図4は第2の実施の形態を示すもので、CPUを介さずとも、電源が投入されると汎用LSIに初期値を自動的に書きこむ制御用LSIにおける自動初期設定値出力部のブロック図であり、図1と対応する部分には同一符号を付して重複する説明は省略する。尚、本実施の形態は請求項3、4、5と対応する。
【0016】
本実施の形態は図示のように、初期値選択用端子A、Bと汎用LSIに初期値を設定するかしないかを選択するON/OFF端子5を有するコンフィグレーションレジスタ4を設け、このコンフィグレーションレジスタ4をパワーONイニシャル検出回路1に接続したものである。
【0017】
上記構成によれば、複数の汎用LSIの初期値選択や、初期値の設定をしないことをも選択することができる。
自動初期値設定用レジスタ3は、制御用LSIのターゲットとなる複数の汎用LSIの初期設定値を保存している。どの汎用LSIの初期値を出力するのかの選択は、コンフィグレーションレジスタ4の初期値選択用端子A、Bで行う。
【0018】
ターゲットとなる汎用LSIがLSI1とLSI2の2種類、汎用LSIに初期値として設定する必要のあるレジスタが3つであるとする。図5はその場合の自動初期値設定用レジスタ3の構成を示す図である。
図示のように(000)から(010)にLSI1の初期設定値(アドレス+データ)、(011)から(110)にLSI2の初期設定値(アドレス+データ)が保存されている。
【0019】
図6は制御用LSI内で自動初期値設定用レジスタ3から、LSI2の初期設定値を出力するステートマシン制御手順を示すフローチャートである。
端子論理に対応する初期アドレスとして、コンフィグレーションレジスタ4の初期値設定用端子A、Bが[端子A:0、端子B:0]に選択されていると、LSI1の初期値が選択されて出力され、自動初期値設定用レジスタ3のアドレス(000)に保存されているアドレスとデータがステート1として出力される。また、上記A、Bが[端子A:0、端子B:1]に選択されていると、LSI2の初期値が選択されて出力され、自動初期値設定用レジスタ3のアドレス(011)に保存されているアドレスとデータがステート1として出力される。
例えば、コンフィグレーションレジスタ4の初期値設定用端子A、Bが[端子A:0、端子B:1]に選択されていると、LSI2の初期値が選択されて出力され、自動初期値設定用レジスタ3のアドレス(011)に保存されているアドレスとデータがステート1として出力される。このデータが汎用LSI2に書き込まれると、送信完了フラグ信号INI_WR_Flgにより内部カウンタ2がカウントアップされ、ステート2に進む。ステート3まではステート1で出力したアドレスから1つずつインクリメントしたアドレスのデータを出力し、3回出力してステート4まで行くとENDとなり、汎用LSI2への初期値の設定が終了する。
【0020】
上記の説明において、例として汎用LSIに書きこむI/F形式がシリアルI/Fの場合の各信号のタイミングを図7に示す。図において、SDCLKは汎用LSIへのデータ書きこみクロックであり、DINは汎用LSIへの書きこみデータであり、XSENは汎用LSIのチップ選択信号である。
【0021】
次に、汎用LSIの初期値を自動初期値設定用レジスタ3から出力する場合と、CPUから出力する場合の、汎用LSIへの初期設定値書き込み動作について説明する。
(1)汎用LSIの初期値を自動初期値設定用レジスタ3から出力する場合。
(1−1)初期値選択用端子A、Bにより、ターゲットとなる汎用LSIの初期値が決まる。
【0022】
図4の初期設定値出力部のブロック図において、RSTは制御LSI外部のリセットICからのリセット信号であり、SYSCLKはシステムクロックであり、LM_INI_DAT[14:0]は自動初期値設定用レジスタ出力であり、INI_WRは自動初期値設定時のWrite信号であり、INI_CSは自動初期値設定時のチップセレクト信号であり、LM_INIは自動初期値設定期間信号(設定期間中High)であり、INI_WR_Flgは初期値送信完了フラグ信号である。
【0023】
(1−2)電源ONで、パワーONイニシャル検出回路1に信号RST、SYSCLKが入力されると、パワーONイニシャル検出回路1はステート1となり、(1−1)で決まる端子論理に対応して内部カウンタ2の初期値が決まる。内部カウンタ2の出力値は自動初期値設定用レジスタ3に接続されており、カウンタ出力によりデコードされたレジスタデータをLM_INI_DAT[14:0]として出力する。
(1−3)パワーONイニシャル検出回路1は、SYSCLKからINI_WR、INI_CS、LM_INIを生成する。
【0024】
(1−4) INI_WR、INI_CSはSYSCLKと共に図8のタイミング生成部6に入力される。タイミング生成部6では入力信号から、SDCLK、XSEN、INI_WR_Flg、WR_SELを生成する。ここで、SDCLKは汎用LSIへのデータ書き込み及びシフトレジスタのシフトクロックであり、CSは汎用LSIの初期値をCPUから出力する場合のチップセレクト信号であり、WRは汎用LSIの初期値をCPUから出力する場合のWrite信号であり、INI_WR_Flgは初期値送信完了フラグ信号であり、XSENは汎用LSIのチップセレクトである。
【0025】
WR_SELは図9のRead/Write判定部7において、セレクタBはLow期間でRead/Writeをセレクトし、次のLowレベル入力までセレクトしたRead/Write信号をLM_DAT[14]としてフリップフロップFFから出力するものである。
【0026】
タイミング生成部6のタイミングチャートを図10に示す。
図10は汎用LSIの初期値設定にCPUを使用していないため、CS、WRは常にLowレベルである。LDはINI_CSが立下ってから、次のSYSCLKの↑で立ち上がり、図11のパラレル/シリアル変換部8のシフトレジスタ9へ出力される。SDCLKはXSENと、SYSCLKをタイミング生成部6内で2分周したクロックから生成され、制御用LSIのパラレル/シリアル変換部8と、汎用LSIのシリアルデータ入力レジスタに出力される。本実施の形態ではSYSCLKの2分周としたが、それ以外の分周クロックとすることも可能である。
【0027】
また、INI_WR_FlgはXSENが立ち上がってから、次のSYSCLKの↑で立ち上がり、LM_INIとANDがとられて初期設定値出力部の内部カウンタ2に出力される。初期設定動作以外では、LM_INIが“L”となることから、内部カウンタ2はカウントアップしない。
【0028】
(1−5)次に、出力された初期値を汎用LSIに書きこむシリアル/パラレル変換部8について図10、図11を参照して説明する。
図10、図11において、LDはセレクタ出力をシフトレジスタ9の内部レジスタにロードする信号であり、SDOUTは汎用LSI設定シリアルデータである。
【0029】
(1−6)自動初期値設定用レジスタ3から出力されたデータLM_INI_DAT[14:0]は、セレクタAに入力される。
(1−7)セレクタAの出力はシフトレジスタ9のデータ入力端子に接続されている。タイミング生成部6でINI_WRとINI_CSから生成されたLD信号がシフトレジスタ9に入力されると、LM_INIが“H”となっていることから、LM_INI_DAT[14:0]が選択され、汎用LSIの初期値のデータがシフトレジスタ9にロードされる。
【0030】
(1−8)シフトレジスタ9にタイミング生成部6でXSENとSYSCLKから生成されたSDCLKによって、シフトされた汎用LSIの初期値がシリアル信号SDOUTとして汎用LSIのレジスタに書き込まれる。
(1−9)図10のタイミングで、送信完了フラグ信号INI_WR_Flgがタイミング生成部6から出力される。
【0031】
(1−10)INI_WR_Flgは図4のように、LM_INIとANDがとられている。LM_INIは自動初期設定期間にHとなる信号で、H以外はLとなるので自動初期設定以外は内部カウンタ2がカウントアップしない。よって、ここではLM_INIが“H”であるのでINI_WR_Flgの立ち上がりで、パワーONイニシャル検出回路1の内部カウンタ2が1進んで、パワーONイニシャル検出回路1のステートが1進むため、自動初期値設定用レジスタ3からカウンタデコードで選択されたデータが出力される。
【0032】
(1−11)以下、(1−2)から(1−10)の動作が汎用レジスタの初期値設定の必要な数分だけ繰り返され、全ての初期設定が終わると、次のステートでENDとなり初期値設定が完了する。
【0033】
(2)汎用LSIの初期値をCPUから出力する場合。
(2−1)初期値設定ON/OFF用端子5をLに固定しておくことにより、自動初期値設定を行わずに、汎用LSIの初期値をCPUから出力することが可能となる。
【0034】
(2−2)図12は制御用LSIのCPUインタフェイス30を示す。CPUから、CPUインタフェイス30を介して、LM_DAT[13:0]、WR、CSが制御用LSIに入力される。
図12において、LM_DAT[13:0]は初期設定値データであり、CSは汎用LSIの初期値をCPUから出力する場合のチップセレクト信号であり、WRは汎用LSIの初期値をCPUから出力する場合のWrite信号である。
【0035】
(2−3)WR、CSはSYSCLKと共に図8のタイミング生成部6に入力される。タイミング生成部6では入力されたクロックから、SDCLK、XSEN、INI_WR_Flg、WR_SELを生成する。
【0036】
タイミング生成部6のタイミングチャートを図13に示す。
図13は汎用LSIの自動初期値設定用レジスタを使用していない場合のタイミングであり、INI_CS、INI_WRは常にLowレベルである。LDはCSが立下ってから、次のSYSCLKの↑で立ち上がり、図11のパラレル/シリアル変換部8へ出力される。SDCLKはXSENと、SYSCLKをタイミング生成部6内で2分周したクロックから生成され、制御用LSIのパラレル/シリアル変換部8と、汎用LSIのシリアルデータ入力レジスタに出力される。
【0037】
本実施の形態ではSYSCLKの2分周としたが、それ以外の分周クロックとすることも可能である。また、INI_WR_FlgはXSENが立ち上がってから、次のSYSCLKの↑で立ち上がり、LM_INIとANDがとられて初期設定値出力部の内部カウンタ2に出力される。初期設定動作以外では、LM_INIが“L”となることから、内部カウンタ2はカウントアップしない。
【0038】
(2−4)図9はRead/Write判定部7のブロック図とタイミングを示す。LM_DAT[14]は図7のように1ならばRead、0ならばWriteと汎用LSIの動作を制御するデータである。
まず、セレクタBにおいてWR_SELがL期間にはセレクタBのLの端子に入力されている信号WRが選択され、WR信号が“H”であればSYSCLKによりFFからは“H”が出力される。するとLM_DAT[14]は1となる。WR_SELが“H”となると、セレクタBはFFの出力を入力として選択し、FFの出力をFFの入力にフィードバックする。上記によりLM_DAT[14]は1に固定されLM_DAT[14]がシリアル/パラレル変換部8に出力される。
【0039】
(2−5)次に、出力された初期値を汎用LSIに書きこむシリアル/パラレル変換部8について図11、図13を参照して説明する。
(2−6)CPUから送信されたデータLM_DAT[13:0]およびRead/Write判定部7の出力LM_DAT[14]が、データLM_DAT[14:0]として、セレクタAに入力される。
【0040】
(2−7)セレクタAの出力はシフトレジスタ9のデータ入力端子に接続されている。タイミング生成部でWRとCSから生成されたLD信号がシフトレジスタに入力されると、LM_INIが“H”となっていることから、LM_DAT[14:0]が選択され汎用LSIの初期値データがシフトレジスタ9にロードされる。
【0041】
(2−8)シフトレジスタ9にタイミング生成部6でXSENとSYSCLKから生成されたSDCLKによって、シフトされた汎用LSIの初期値がシリアル信号SDOUTとして汎用LSIのレジスタに書きこまれ、汎用LSIの初期値設定が終了する。
【0042】
以上、説明したように、本実施の形態による制御用LSIは、汎用LSIの初期値を選択するための端子と、汎用LSIに初期値を設定するかしないかのON/OFF用端子と、複数の汎用LSIの初期値を記録している自動初期値設定用のレジスタと、前記自動初期値設定用のレジスタから初期値を汎用LSIに対応したシリアル又はパラレルのI/F形式で出力して汎用LSIに書きこむ機能を備え、電源が投入されると汎用LSIのレジスタに初期設定値を自動的に書きこむようにしたものである。これによって、内部のレジスタの書き込みにバス方式をとったLSIを、CPUを有しないシステムでも使用可能とするための初期設定データ自動読み込み回路を実現することができる。
【0043】
【発明の効果】
請求項1、2の発明によれば、ソフトを介在せずに、電源ON直後に自動的に任意の汎用LSIの初期値を設定できるので、汎用LSIから狙いの値と異なるアナログ信号が出力されることでシステムに不具合を与えることを防ぐことができる。また、CPUを持たないシステムでもLSIを使用できるため、小型化を図ることができる。
【0044】
請求項3、5の発明によれば、1つの制御LSIで複数のLSI用の初期設定値を選択できるので、本発明の制御用LSI自体に汎用性を持たせることができる。
【0045】
請求項4の発明によれば、本発明の制御用LSIがもつ汎用LSIの初期値を設定しないこともできるので、CPUを持ったシステムで、ソフトを介在させて初期値を設定したり、汎用LSI固有の初期設定値を使用するなど様々な使用状況に対応することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態による制御用LSIの初期設定値出力部を示すブロック図である。
【図2】自動初期値設定用レジスタを示す構成図である。
【図3】ステートマシン制御手順を示すフローチャートである。
【図4】本発明の第2の実施の形態による制御用LSIの初期設定値出力部を示すブロック図である。
【図5】自動初期値設定用レジスタを示す構成図である。
【図6】ステートマシン制御手順を示すフローチャートである。
【図7】汎用LSIの書き込み形式がシリアルI/Fの場合の各信号を示すタイミングチャートである。
【図8】タイミング生成部のブロック図である。
【図9】Read/Write判定部のブロック図とタイミングを示す図である。
【図10】タイミング生成部の動作を示すタイミングチャートである。
【図11】パラレル/シリアル変換部のブロック図である。
【図12】CPUインタフェースのブロック図である。
【図13】タイミング生成部の動作を示すタイミングチャートである。
【図14】従来の初期設定値出力部のブロック図である。
【図15】従来の汎用LSI制御システムの例を示すブロック図である。
【符号の説明】
1 パワーONイニシャル検出回路
2 内部カウンタ
3 自動初期値設定用レジスタ
4 コンフィグレーションレジスタ
5 初期値設定ON/OFF用端子
6 タイミング生成部
7 Read/Write判定部
8 パラレル/シリアル変換部
9 シフトレジスタ
30 CPUインターフェース
SYSCLK システムクロック
LM_INI_DAT[14:0]  自動初期値設定用レジスタ出力
LM_DAT[13:0]  初期設定値データ
A、B 初期値設定用端子
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an LSI such as a control LSI used in an LSI control scanner, digital PPC, digital facsimile, and the like.
[0002]
[Prior art]
In a general-purpose LSI having a recorder (hereinafter referred to as a register) for writing data from the outside in the LSI, data may be written to the register at the time of initial setting to operate the LSI. This makes it possible to set a set value which is usually fixed inside a general-purpose LSI from the outside by providing a register.
With such a structure, even if the set value is changed due to a change in the system, it can be dealt with by changing the set value of the register from outside.
[0003]
As a method of externally setting data in a register, the above-described general-purpose LSI generally has a serial or parallel interface, and writes data externally. This method uses an LSI having a peripheral device control function (hereinafter referred to as a control LSI). After the CPU writes an initial setting value of the general-purpose LSI to a register in the control LSI, the CPU sets the initial setting value. Is written in a general-purpose LSI register in some cases.
[0004]
FIG. 14 shows the configuration of a general-purpose LSI control system.
In the figure, the CPU writes an initial setting value for writing to the register 1 of the general-purpose LSI into the register of the control LSI through a serial or parallel interface. The control LSI performs parallel / serial conversion of the initial setting value written in the register 1 and writes it into a register of a general-purpose LSI via a serial interface or as parallel data via a parallel interface.
[0005]
These operations are performed when the CPU, the control LSI, and the general-purpose LSI are turned on, and the initial setting values are set by software control from the CPU, so that the CPU does not transmit the initial setting values. In each of the registers of the control LSI and the general-purpose LSI, a unique initial value of the LSI itself is set, and each LSI operates according to the set value.
[0006]
FIG. 15 shows an example of the above system (for example, see Patent Document 1).
In FIG. 15, the output of the even-numbered stage and the output of the odd-numbered stage of the shift register 16 for taking in the system clock set or reset the flip-flop 21 via the OR circuits 23 and 24. The counter 22 inputs a signal having an opposite phase to the output of the flip-flop 21. The WR signal input from the outside and the output of the flip-flop 21 are selectively read into the register 25 in the LSI according to the state of the automatic read setting signal.
[0007]
[Patent Document 1]
JP-A-5-143752
[Problems to be solved by the invention]
However, when a serial or parallel interface via a CPU is used to write the initial setting values of a general-purpose LSI as described above, it is necessary to intervene control software for the CPU. Can not be set. Further, when the general-purpose LSI is an LSI having an analog function, there is a problem that it may be necessary to secure time until the analog output is stabilized.
Further, in a system in which the power of the general-purpose LSI is turned on before the CPU sets the initial value, the general-purpose LSI may output an analog signal different from a target value, thereby causing a problem to the system. was there.
[0009]
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problem, and an object of the present invention is to provide a control LSI capable of setting an initial value corresponding to an arbitrary general-purpose device without using a CPU.
[0010]
[Means for Solving the Problems]
To achieve the above object, a control LSI according to the present invention counts a first register for storing one or more initial setting values of a general-purpose LSI, and counts the number of initial setting values stored in the first register. Control means for controlling the output of the initial setting value from the first register to the general-purpose LSI by performing state machine control using a counter which performs the operation.
[0011]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 shows a first embodiment, and is a block diagram showing an automatic initial setting value output unit in a control LSI for automatically writing an initial value to a general-purpose LSI when power is turned on without using a CPU. FIG. This embodiment corresponds to claims 1 and 2.
In FIG. 1, the control LSI includes a power-on initial detection circuit 1 having an internal counter 2 and a register 3 for automatic initial value setting.
[0012]
The automatic initial value setting register 3 stores an initial setting value of a general-purpose LSI (not shown) which is a target of the control LSI. The power-on initial detection circuit 1 receives a system clock SYSCLK and a reset signal RST, and outputs predetermined signals shown in the figure.
[0013]
FIG. 2 is a diagram showing the configuration of the register 3 for automatic initial value setting.
Assuming that there are three registers that need to be set as initial values in the general-purpose LSI, the initial setting values (address + data) of the target general-purpose LSI are stored from (000) to (010) as shown in the figure. .
[0014]
FIG. 3 is a flowchart showing a state machine control procedure for controlling the output of the initial setting value from the register 3 for automatic initial value setting in the control LSI.
When the power of the control LSI is turned on, the initial value of the internal counter becomes 0, and the address and data stored in the address (000) of the automatic initial value setting register are output as state 1. When this data is written to the general-purpose LSI, the internal counter 2 is counted up by the transmission completion flag signal INI_WR_Flg, and the process proceeds to state 2. Until the state 3, the data of the initial value setting register address which is incremented by one from the address output in the state 1 is output. When the data is output three times and the state 4 is reached, the state becomes END, and the setting of the initial value in the general-purpose LSI is completed. .
[0015]
FIG. 4 shows a second embodiment, and is a block diagram of an automatic initial setting value output unit in a control LSI that automatically writes an initial value to a general-purpose LSI when power is turned on without using a CPU. The same reference numerals are given to portions corresponding to those in FIG. 1 and duplicate description will be omitted. This embodiment corresponds to claims 3, 4, and 5.
[0016]
In this embodiment, as shown, a configuration register 4 having initial value selection terminals A and B and an ON / OFF terminal 5 for selecting whether or not to set an initial value in a general-purpose LSI is provided. The register 4 is connected to the power-on initial detection circuit 1.
[0017]
According to the above configuration, it is possible to select initial values of a plurality of general-purpose LSIs and not to set initial values.
The automatic initial value setting register 3 stores initial values of a plurality of general-purpose LSIs which are targets of the control LSI. The selection of which of the general-purpose LSIs to output the initial value is performed by the initial value selection terminals A and B of the configuration register 4.
[0018]
Assume that there are two types of target general-purpose LSIs, LSI1 and LSI2, and there are three registers that need to be set as initial values in the general-purpose LSI. FIG. 5 is a diagram showing the configuration of the automatic initial value setting register 3 in that case.
As shown, the initial setting value (address + data) of LSI1 is stored from (000) to (010), and the initial setting value (address + data) of LSI2 is stored from (011) to (110).
[0019]
FIG. 6 is a flowchart showing a state machine control procedure for outputting the initial setting value of the LSI 2 from the automatic initial value setting register 3 in the control LSI.
If the initial value setting terminals A and B of the configuration register 4 are selected as [terminal A: 0, terminal B: 0] as the initial address corresponding to the terminal logic, the initial value of the LSI 1 is selected and output. Then, the address and data stored in the address (000) of the automatic initial value setting register 3 are output as state 1. If A and B are selected as [terminal A: 0, terminal B: 1], the initial value of the LSI 2 is selected and output and stored in the address (011) of the register 3 for automatic initial value setting. The output address and data are output as state 1.
For example, if the initial value setting terminals A and B of the configuration register 4 are selected as [terminal A: 0, terminal B: 1], the initial value of the LSI 2 is selected and output, and the automatic initial value setting is performed. The address and data stored in the address (011) of the register 3 are output as state 1. When this data is written to the general-purpose LSI 2, the internal counter 2 is counted up by the transmission completion flag signal INI_WR_Flg, and the process proceeds to state 2. Until the state 3, the data at the address incremented by one from the address output in the state 1 is output. When the data is output three times and the state 4 is reached, the state becomes END, and the setting of the initial value in the general-purpose LSI 2 is completed.
[0020]
In the above description, FIG. 7 shows the timing of each signal when the I / F format written in the general-purpose LSI is a serial I / F as an example. In the figure, SDCLK is a clock for writing data to the general-purpose LSI, DIN is data for writing to the general-purpose LSI, and XSEN is a chip selection signal of the general-purpose LSI.
[0021]
Next, the operation of writing the initial value to the general-purpose LSI when the initial value of the general-purpose LSI is output from the register 3 for automatic initial value setting and when the initial value is output from the CPU will be described.
(1) When the initial value of the general-purpose LSI is output from the automatic initial value setting register 3.
(1-1) The initial values of the target general-purpose LSI are determined by the initial value selection terminals A and B.
[0022]
In the block diagram of the initial setting value output unit shown in FIG. 4, RST is a reset signal from a reset IC outside the control LSI, SYSCLK is a system clock, and LM_INI_DAT [14: 0] is an automatic initial value setting register output. Yes, INI_WR is a Write signal at the time of automatic initial value setting, INI_CS is a chip select signal at the time of automatic initial value setting, LM_INI is an automatic initial value setting period signal (High during the setting period), and INI_WR_Flg is an initial value. This is a transmission completion flag signal.
[0023]
(1-2) When the signals RST and SYSCLK are input to the power-on initial detection circuit 1 while the power is on, the power-on initial detection circuit 1 enters state 1 and corresponds to the terminal logic determined by (1-1). The initial value of the internal counter 2 is determined. The output value of the internal counter 2 is connected to the register 3 for automatic initial value setting, and the register data decoded by the counter output is output as LM_INI_DAT [14: 0].
(1-3) The power-on initial detection circuit 1 generates INI_WR, INI_CS, and LM_INI from SYSCLK.
[0024]
(1-4) INI_WR and INI_CS are input to the timing generator 6 in FIG. 8 together with SYSCLK. The timing generator 6 generates SDCLK, XSEN, INI_WR_Flg, and WR_SEL from the input signal. Here, SDCLK is a data write to the general-purpose LSI and a shift clock of the shift register, CS is a chip select signal when the initial value of the general-purpose LSI is output from the CPU, and WR is an initial value of the general-purpose LSI from the CPU. This is a Write signal for output, INI_WR_Flg is an initial value transmission completion flag signal, and XSEN is a chip select of a general-purpose LSI.
[0025]
For WR_SEL, in the Read / Write determination unit 7 in FIG. 9, the selector B selects Read / Write in the Low period, and outputs the Read / Write signal selected up to the next Low level input from the flip-flop FF as LM_DAT [14]. Things.
[0026]
FIG. 10 shows a timing chart of the timing generator 6.
In FIG. 10, since the CPU is not used for setting the initial value of the general-purpose LSI, CS and WR are always at the Low level. LD rises at the next SYSCLK after INI_CS falls, and is output to the shift register 9 of the parallel / serial converter 8 in FIG. SDCLK is generated from XSEN and a clock obtained by dividing SYSCLK by 2 in the timing generator 6, and is output to the parallel / serial converter 8 of the control LSI and the serial data input register of the general-purpose LSI. In the present embodiment, SYSCLK is divided by two, but another divided clock may be used.
[0027]
Further, INI_WR_Flg rises at the next SYSCLK か ら after XSEN rises, and LM_INI and AND are taken and output to the internal counter 2 of the initial set value output unit. Since the LM_INI becomes “L” other than the initial setting operation, the internal counter 2 does not count up.
[0028]
(1-5) Next, the serial / parallel converter 8 for writing the output initial value to a general-purpose LSI will be described with reference to FIGS.
In FIGS. 10 and 11, LD is a signal for loading the selector output into the internal register of the shift register 9, and SDOUT is general-purpose LSI setting serial data.
[0029]
(1-6) The data LM_INI_DAT [14: 0] output from the automatic initial value setting register 3 is input to the selector A.
(1-7) The output of the selector A is connected to the data input terminal of the shift register 9. When the LD signal generated from the INI_WR and INI_CS by the timing generation unit 6 is input to the shift register 9, LM_INI is set to “H”, so that LM_INI_DAT [14: 0] is selected and the initial state of the general-purpose LSI is initialized. The value data is loaded into the shift register 9.
[0030]
(1-8) The shifted initial value of the general-purpose LSI is written into the register of the general-purpose LSI as the serial signal SDOUT in the shift register 9 by the SDCLK generated from XSEN and SYSCLK by the timing generation unit 6.
(1-9) The transmission completion flag signal INI_WR_Flg is output from the timing generator 6 at the timing shown in FIG.
[0031]
(1-10) INI_WR_Flg is ANDed with LM_INI as shown in FIG. LM_INI is a signal which becomes H during the automatic initialization period. Since it becomes L except H, the internal counter 2 does not count up except for the automatic initialization. Therefore, here, since LM_INI is “H”, the internal counter 2 of the power-on initial detection circuit 1 advances by one at the rise of INI_WR_Flg, and the state of the power-on initial detection circuit 1 advances by one. The data selected by the counter decode is output from the register 3.
[0032]
(1-11) Thereafter, the operations from (1-2) to (1-10) are repeated for the number of times required for setting the initial value of the general-purpose register, and when all the initial settings are completed, the state becomes END in the next state. Initial value setting is completed.
[0033]
(2) When the initial value of the general-purpose LSI is output from the CPU.
(2-1) Initial value setting By fixing the ON / OFF terminal 5 to L, the initial value of the general-purpose LSI can be output from the CPU without performing automatic initial value setting.
[0034]
(2-2) FIG. 12 shows the CPU interface 30 of the control LSI. LM_DAT [13: 0], WR, and CS are input from the CPU to the control LSI via the CPU interface 30.
In FIG. 12, LM_DAT [13: 0] is initial setting value data, CS is a chip select signal for outputting the initial value of the general-purpose LSI from the CPU, and WR outputs the initial value of the general-purpose LSI from the CPU. Write signal in this case.
[0035]
(2-3) WR and CS are input to the timing generator 6 in FIG. 8 together with SYSCLK. The timing generator 6 generates SDCLK, XSEN, INI_WR_Flg, and WR_SEL from the input clock.
[0036]
FIG. 13 shows a timing chart of the timing generator 6.
FIG. 13 shows the timing when the automatic initial value setting register of the general-purpose LSI is not used. INI_CS and INI_WR are always at the low level. The LD rises at the next SYSCLK after CS falls, and is output to the parallel / serial conversion unit 8 in FIG. SDCLK is generated from XSEN and a clock obtained by dividing SYSCLK by 2 in the timing generator 6, and is output to the parallel / serial converter 8 of the control LSI and the serial data input register of the general-purpose LSI.
[0037]
In the present embodiment, SYSCLK is divided by two, but another divided clock may be used. Further, INI_WR_Flg rises at the next SYSCLK か ら after XSEN rises, and LM_INI and AND are taken and output to the internal counter 2 of the initial set value output unit. Since the LM_INI becomes “L” other than the initial setting operation, the internal counter 2 does not count up.
[0038]
(2-4) FIG. 9 shows a block diagram and timing of the read / write determination unit 7. As shown in FIG. 7, LM_DAT [14] is data for controlling the operation of the Read if it is 1 and the Write and the operation of the general-purpose LSI if it is 0.
First, in the selector B, when the WR_SEL is in the L period, the signal WR input to the L terminal of the selector B is selected. If the WR signal is “H”, “H” is output from the FF by SYSCLK. Then, LM_DAT [14] becomes 1. When WR_SEL becomes “H”, the selector B selects the output of the FF as an input, and feeds back the output of the FF to the input of the FF. As described above, LM_DAT [14] is fixed to 1 and LM_DAT [14] is output to the serial / parallel converter 8.
[0039]
(2-5) Next, the serial / parallel converter 8 for writing the output initial value to a general-purpose LSI will be described with reference to FIGS.
(2-6) The data LM_DAT [13: 0] transmitted from the CPU and the output LM_DAT [14] of the read / write determination unit 7 are input to the selector A as data LM_DAT [14: 0].
[0040]
(2-7) The output of the selector A is connected to the data input terminal of the shift register 9. When the LD signal generated from WR and CS by the timing generation unit is input to the shift register, LM_INI is set to “H”, so that LM_DAT [14: 0] is selected and the initial value data of the general-purpose LSI is The data is loaded into the shift register 9.
[0041]
(2-8) The shifted initial value of the general-purpose LSI is written to the register of the general-purpose LSI as a serial signal SDOUT by the SDCLK generated from XSEN and SYSCLK by the timing generation unit 6 in the shift register 9, and the initial value of the general-purpose LSI is initialized. The value setting ends.
[0042]
As described above, the control LSI according to the present embodiment includes a terminal for selecting an initial value of a general-purpose LSI, an ON / OFF terminal for determining whether or not to set an initial value in the general-purpose LSI, and a plurality of terminals. A register for recording an initial value of the general-purpose LSI, and an initial value output from the register for automatic initial value setting in a serial or parallel I / F format corresponding to the general-purpose LSI. It has a function of writing to an LSI, and automatically writes an initial set value to a register of a general-purpose LSI when power is turned on. As a result, it is possible to realize an initial setting data automatic reading circuit for making it possible to use an LSI adopting a bus system for writing an internal register even in a system having no CPU.
[0043]
【The invention's effect】
According to the first and second aspects of the present invention, an initial value of an arbitrary general-purpose LSI can be automatically set immediately after power-on without intervening software, so that an analog signal different from a target value is output from the general-purpose LSI. By doing so, it is possible to prevent the system from malfunctioning. Further, since the LSI can be used even in a system without a CPU, miniaturization can be achieved.
[0044]
According to the third and fifth aspects of the present invention, since one control LSI can select a plurality of LSI initial values, the control LSI itself of the present invention can have versatility.
[0045]
According to the fourth aspect of the present invention, the initial value of the general-purpose LSI included in the control LSI of the present invention can not be set. Therefore, in a system having a CPU, the initial value can be set through software and the general-purpose LSI can be set. Various usage situations can be dealt with, such as using an initial setting value specific to the LSI.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an initial setting value output unit of a control LSI according to a first embodiment of the present invention.
FIG. 2 is a configuration diagram showing an automatic initial value setting register.
FIG. 3 is a flowchart showing a state machine control procedure.
FIG. 4 is a block diagram illustrating an initial setting value output unit of a control LSI according to a second embodiment of the present invention;
FIG. 5 is a configuration diagram showing an automatic initial value setting register.
FIG. 6 is a flowchart showing a state machine control procedure.
FIG. 7 is a timing chart showing signals when the write format of the general-purpose LSI is a serial I / F.
FIG. 8 is a block diagram of a timing generator.
FIG. 9 is a block diagram of a Read / Write determination unit and a diagram showing timing.
FIG. 10 is a timing chart showing the operation of the timing generation unit.
FIG. 11 is a block diagram of a parallel / serial converter.
FIG. 12 is a block diagram of a CPU interface.
FIG. 13 is a timing chart showing the operation of the timing generation unit.
FIG. 14 is a block diagram of a conventional initial set value output unit.
FIG. 15 is a block diagram showing an example of a conventional general-purpose LSI control system.
[Explanation of symbols]
REFERENCE SIGNS LIST 1 Power ON initial detection circuit 2 Internal counter 3 Automatic initial value setting register 4 Configuration register 5 Initial value setting ON / OFF terminal 6 Timing generation unit 7 Read / Write determination unit 8 Parallel / serial conversion unit 9 Shift register 30 CPU Interface SYSCLK System clock LM_INI_DAT [14: 0] Automatic initial value setting register output LM_DAT [13: 0] Initial setting value data A, B Initial value setting terminals

Claims (5)

汎用LSIの1つ以上の初期設定値を保存する第1のレジスタと、
前記第1のレジスタに保存された前記初期設定値の数をカウントするカウンタを用いてステートマシン制御を行うことにより、前記第1のレジスタから前記初期設定値を前記汎用LSIに出力させる制御を行う制御手段とを設けたことを特徴とするLSI。
A first register for storing one or more initial setting values of the general-purpose LSI;
By performing state machine control using a counter that counts the number of the initial setting values stored in the first register, control is performed to output the initial setting value from the first register to the general-purpose LSI. An LSI comprising control means.
システムクロックから分周クロックを生成する分周手段と、外部から前記初期設定値を読み込む第2のレジスタとを設け、前記第1のレジスタは前記生成された分周クロックに基づいて出力を行うことを特徴とする請求項1記載のLSI。Frequency dividing means for generating a frequency-divided clock from a system clock; and a second register for reading the initial set value from the outside, wherein the first register outputs based on the generated frequency-divided clock. 2. The LSI according to claim 1, wherein: 前記第1のレジスタは、複数の前記汎用LSIに対してそれぞれ1つ以上の前記初期設定値を保存すると共に、前記汎用LSIの1つを選択する選択手段を設けたことを特徴とする請求項1又は2記載のLSI。2. The method according to claim 1, wherein the first register stores one or more of the initial setting values for a plurality of the general-purpose LSIs, and further includes a selection unit that selects one of the general-purpose LSIs. 3. The LSI according to 1 or 2. 前記汎用LSIに前記初期設定値を出力するかしないかを切り換える切り換え手段を設けたことを特徴とする請求項1、2又は3記載のLSI。4. The LSI according to claim 1, further comprising switching means for switching whether or not to output the initial setting value to the general-purpose LSI. 前記レジスタに保存された1つ以上の前記初期設定値の1つを選択するため、及びこの選択を行うか否かを切り換えるための複数の端子を設け、この複数の端子に選択的に入力された信号の論理により前記選択と切り換え行うことを特徴とする請求項1から4のいずれか1項に記載のLSI。A plurality of terminals are provided for selecting one of the one or more initial setting values stored in the register and for switching whether or not to make this selection, and selectively input to the plurality of terminals. The LSI according to any one of claims 1 to 4, wherein the selection and the switching are performed according to the logic of the signal.
JP2002270818A 2002-09-17 2002-09-17 LSI and image forming apparatus Expired - Fee Related JP4048091B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002270818A JP4048091B2 (en) 2002-09-17 2002-09-17 LSI and image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002270818A JP4048091B2 (en) 2002-09-17 2002-09-17 LSI and image forming apparatus

Publications (2)

Publication Number Publication Date
JP2004112241A true JP2004112241A (en) 2004-04-08
JP4048091B2 JP4048091B2 (en) 2008-02-13

Family

ID=32268312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002270818A Expired - Fee Related JP4048091B2 (en) 2002-09-17 2002-09-17 LSI and image forming apparatus

Country Status (1)

Country Link
JP (1) JP4048091B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107127A (en) * 2004-10-05 2006-04-20 Nec Electronics Corp Semiconductor integrated circuit device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107127A (en) * 2004-10-05 2006-04-20 Nec Electronics Corp Semiconductor integrated circuit device

Also Published As

Publication number Publication date
JP4048091B2 (en) 2008-02-13

Similar Documents

Publication Publication Date Title
JP2006323469A (en) System lsi
US8295100B2 (en) Pipe latch circuit and method for operating the same
TW200839571A (en) Device and method for access time reduction by speculatively decoding non-memory read commands on a serial interface
US20070038795A1 (en) Asynchronous bus interface and processing method thereof
US11631454B2 (en) Methods and apparatus for reduced area control register circuit
JP4160068B2 (en) Digital programming interface between baseband processor and radio frequency integrated module
JP4048091B2 (en) LSI and image forming apparatus
JP4908056B2 (en) Semiconductor device and test execution method for semiconductor device
US7134060B2 (en) Semiconductor integrated circuit including operation test circuit and operation test method thereof
GB2290203A (en) Communication circuit for performing data transfer
JP2008122374A (en) Serializer/de-serializer bus controller inferface
JP2007094603A (en) Programmable device control unit and programmable device control method
JP2008118179A (en) Semiconductor integrated circuit
US6240028B1 (en) Simplified peripheral logic for memory device
CN110008155B (en) Electronic device and operation method thereof
US6459751B1 (en) Multi-shifting shift register
JP4840963B2 (en) Bus system and control method thereof
JP5489871B2 (en) Image processing device
JPH11328961A (en) Electronic circuit device and interface circuit
JP4894218B2 (en) Semiconductor integrated circuit
JPH0833439B2 (en) Semiconductor integrated circuit
JP2004228844A (en) Semiconductor integrated circuit
JP2007334600A (en) Semiconductor integrated circuit device
JP2007018320A (en) Microcomputer and lsi test device
JP2003273232A (en) Integrated circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070828

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071025

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071126

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

Free format text: PAYMENT UNTIL: 20101130

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111130

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111130

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121130

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131130

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees