JPH10326254A - マイクロコントローラ・システムおよびインタフェース論理回路と通信するための方法 - Google Patents

マイクロコントローラ・システムおよびインタフェース論理回路と通信するための方法

Info

Publication number
JPH10326254A
JPH10326254A JP10091248A JP9124898A JPH10326254A JP H10326254 A JPH10326254 A JP H10326254A JP 10091248 A JP10091248 A JP 10091248A JP 9124898 A JP9124898 A JP 9124898A JP H10326254 A JPH10326254 A JP H10326254A
Authority
JP
Japan
Prior art keywords
serial
data
address
parallel
byte
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10091248A
Other languages
English (en)
Inventor
Yi-Ming Ku
イー・ミン・ク
Thang Q Nguyen
タン・キュー・グエン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH10326254A publication Critical patent/JPH10326254A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4045Coupling between buses using bus bridges where the bus bridge performs an extender function

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)
  • Microcomputers (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 マイクロコントローラのシリアル・ポートと
パラレル・バス・デバイスとのインタフェースを取るた
めのシリアル/パラレル・インタフェースと、そのイン
タフェースと通信するためのプロトコルとを提供するこ
と。 【解決手段】 このインタフェースは、最小限の初期接
続手順でスループットを最大限にするように動作する。
バス・デバイスがマイクロコントローラ・システムのオ
ペレーティング・ソフトウェアを含む不揮発性メモリで
ある場合、このインタフェースは、オペレーティング・
プログラムの動的更新に対応する。また、このインタフ
ェースは、マイクロコントローラ上で使用可能な入出力
ピンの数が限られているためにマイクロコントローラ・
システムにアクセス可能なバス・デバイスの数に課せら
れた制約を軽減するものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に埋込み型コ
ントローラ・システムに関し、より具体的には埋込み型
コントローラ・システム内のシリアル・バス/パラレル
・バス・インタフェースに関する。
【0002】
【従来の技術】埋込み型マイクロコントローラを使用す
るシステムでは、使用可能な入出力ピンおよびオンデバ
イス・メモリに関するマイクロコントローラの限界によ
って、不当な設計上の制約がシステムに課せられる可能
性がある。使用可能な入出力ピンの数は、マイクロコン
トローラがアクセス可能なアドレス空間のサイズを抑制
する。このため、そのアドレス空間内に存在するバス・
デバイスのサイズと数が制限される。これは、ソフトウ
ェアおよびデータに使用可能なメモリのサイズを制限す
る必要があるだけでなく、マイクロコントローラがアク
セス可能な周辺装置も制限することができる。さらに、
オンデバイスの不揮発性メモリは、通常、そのサイズが
非常に小さく、外部メモリ空間内にオペレーティング・
ソフトウェアを格納することが不可欠になっている。し
かも、マイクロコントローラは、ワンタイム・プログラ
ム可能(「OTP」)デバイスである場合が多いので、
ソフトウェアがオンチップの不揮発性メモリに「焼き付
け」られると、そのソフトウェアは修正できなくなる。
システム・ソフトウェアは、マイクロコントローラ・チ
ップ自体を交換せずに更新することはできない。
【0003】したがって、外部メモリ空間内に存在する
不揮発性プログラム可能メモリにシステム・ソフトウェ
アを格納することが望ましい可能性がある。システム・
ソフトウェアの更新は、新しいソフトウェアを不揮発性
メモリにダウンロードすることにより行うことができ
る。しかし、オンチップのみではなく、外部メモリ空間
内にシステム・プログラムを存在させると、入出力ピン
の数が制限されるという問題が悪化する。
【0004】
【発明が解決しようとする課題】したがって、当技術分
野では、マイクロコントローラのピン・カウントを超え
ずに新しいソフトウェアを不揮発性メモリ内にダウンロ
ードすることによりそのオペレーティング・ソフトウェ
アを容易に更新できるように、そのオペレーティング・
ソフトウェアを含む不揮発性メモリとマイクロコントロ
ーラとのインタフェースを取るための方法および回路の
必要性が存在する。
【0005】
【課題を解決するための手段】前述の必要性は本発明に
よって達成される。本発明は、シリアル/パラレル両方
向バス・インタフェース(以下シリアル/パラレル・イ
ンタフェースという)に関連してマイクロコントローラ
上で使用可能なシリアル・ポートを利用することによ
り、上記の必要性を満足する。シリアル/パラレル・イ
ンタフェースは、マイクロコントローラからのシリアル
・サイクルを受け入れ、パラレル・バス・デバイスであ
る不揮発性メモリによって認識可能なサイクルにそれを
変換する。ダウンロードすべきコードを表すデータは、
マイクロコントローラのシリアル・ポートからシリアル
/パラレル・インタフェースにクロックアウトされる。
シリアル/パラレル・インタフェースはこのデータをそ
のパラレル・データ・バス上に提示し、シリアル/パラ
レル・インタフェースのアドレス空間上に存在する不揮
発性メモリ内にそのデータを読み込めるようにする。シ
リアル/パラレル・インタフェースに関連してマイクロ
コントローラ上のシリアル・ポートを使用すると、マイ
クロコントローラ上で使用可能な限定された数の入出力
ピンが、マイクロコントローラによるリアルタイム・ア
クセスを必要とするランダム・アクセス・メモリ(「R
AM」)デバイスを含む、パラレル・バス・デバイスで
使用可能になるという点で有利である。
【0006】本発明のもう1つの利点は、システム・ソ
フトウェアを動的に更新できるようにすることである。
使用時にマイクロコントローラは、マイクロコントロー
ラの入出力ポートの1つのアドレス空間内に存在するR
AM内に位置するそのシステム・ソフトウェアの制御下
で動作する。オペレーティング・コードは、シリアル/
パラレル・インタフェースおよびマイクロコントローラ
・シリアル・ポートを介して不揮発性メモリから始動時
にRAMにアップロードされる。更新されたソフトウェ
アはマイクロコントローラ・シリアル・ポートおよびシ
リアル/パラレル・インタフェースを介して不揮発性メ
モリにダウンロードすることができ、マイクロコントロ
ーラはRAM内に常駐するソフトウェア・コードの制御
下で動作する。このようにして、本発明の他の目的が達
成される。
【0007】マイクロコントローラ・シリアル・ポート
と不揮発性メモリとのデータ・スループットを最大化す
るためには、マイクロコントローラとシリアル/パラレ
ル・インタフェースとの初期接続手順を最小限にするこ
とが望ましい。これは、本発明では、データの流れを制
御するためにシリアル/パラレル・インタフェースその
ものの内部に論理回路を組み込むことにより達成され
る。
【0008】本発明およびその利点をより完全に理解す
るため、添付図面に関連して以下の説明を参照する。
【0009】
【発明の実施の形態】以下の説明では、本発明を完全に
理解するために多数の具体的な詳細を記載する。しか
し、このような具体的な詳細がなくても本発明を実施で
きることは、当業者には明白になるだろう。他の例で
は、不必要なほど詳細に示して本発明を不明確にしない
ために、周知の回路はブロック図形式で示されている。
ほとんどの部分では、タイミング上の考慮事項などに関
する詳細は、本発明を完全に理解するためにこのような
詳細が不要であり、関連技術の当業者の技能の範囲内で
ある限り、省略されている。本発明の実施態様の詳細な
説明では、「アサート」および「否定」という用語なら
びにその様々な文法形式を使用して、「アクティブ・ハ
イ」および「アクティブ・ロー」という論理信号の混合
を処理する際の混乱を回避する。「アサート」は、論理
信号またはレジスタ・ビットをその活動状態または論理
的に真の状態にすることを指すために使用する。「否
定」は、論理信号またはレジスタ・ビットをその非活動
状態または論理的に偽の状態にすることを指すために使
用する。
【0010】次に添付図面を参照するが、図示の要素は
必ずしも一定の縮尺で示されているわけではなく、同一
または同様の要素は複数の図面にわたって同じ参照番号
で示されている。
【0011】マイクロコントローラ・システム内のピン
アウト問題を緩和し、オペレーティング・ソフトウェア
の動的更新を取り入れる発明について、以下に詳述す
る。図1を参照すると、同図には、本発明の一実施例に
よるマイクロコントローラ・システム100が示されて
いる。マイクロコントローラ101は、リセット11
1、シリアル・クロック112、Rx/TxD113と
いう3つの信号線によりシリアル/パラレル・インタフ
ェース102と通信する。パラレル・バス・デバイス1
03にデータをダウンロードするかまたはパラレル・バ
ス・デバイス103からデータをアップロードできる動
作は、リセット線111上の信号によって開始される。
シリアル・データは、動作に応じて、マイクロコントロ
ーラ101のシリアル・ポートからクロックアウトされ
るかまたはマイクロコントローラ101のシリアル・ポ
ートにクロックインされる。シリアル・データは、両方
向シリアル・データ線であるRx/TxD線113上で
マイクロコントローラ101の両方向シリアル・ポート
とシリアル/パラレル・インタフェース102との間で
通信される。マイクロコントローラ101のシリアル・
クロックは、シリアル・クロック線112を介してシリ
アル/パラレル・インタフェース102に送信される。
ダウンロードまたは書込み動作では、シリアル・データ
はシリアル/パラレル・インタフェース102によって
受信され、パラレル両方向データ・バス122に供給さ
れる。データ・バス122はmビットのパラレル・デー
タ線であり、mは所定の整数のビット数である。これに
対して、アップロードまたは読取り動作では、バス・デ
バイス103は両方向データ・バス122上でマイクロ
コントローラ101に送信するデータをセットアップす
るが、そのバス上でデータはシリアル/パラレル・イン
タフェース102によって受信される。次にデータは線
Rx/TxD113上でシリアル/パラレル・インタフ
ェース102によってクロックアウトされるが、その線
上でデータはマイクロコントローラ101のシリアル・
ポートで受信される。そこでデータが書き込まれるかま
たは読み取られるアドレスは、そのアドレス線121上
でシリアル/パラレル・インタフェース102によって
供給される。アドレス線121はnビットのアドレス・
バスであり、nは所定の整数のビット数である。シリア
ル/パラレル・インタフェース102は、読取り/書込
み(「R/W」)制御バス123を使用して読取りまた
は書込み動作が実行されるときにバス・デバイス103
に通知する。シリアル/パラレル・インタフェース10
2は、複数のバス・デバイスにアクセスすることができ
る。このような実施例では、R/W制御バス123は、
その線の1つでチップ選択信号を実現するはずである。
チップ選択動作および回路については、当業者に理解さ
れるものである。バス・デバイス103は、本発明の一
実施例では、不揮発性メモリを含むメモリまたは周辺バ
ス・デバイスとして実現することができる。さらに、バ
ス・デバイス103はパラレル・バスを介して通信する
データ処理システム内の任意のデバイスにすることがで
きることに留意されたい。
【0012】マイクロコントローラ・システム100
は、マイクロコントローラ101のアドレス空間内に存
在するバス・デバイス104などの他のバス・デバイス
も含むことができる。データはパラレル・データ・バス
142上でバス・デバイス104に送信されるかまたは
バス・デバイス104から受信され、読取りまたは書込
み動作が行われるアドレスはマイクロコントローラ10
1のアドレス・バス141によって供給される。マイク
ロコントローラ101は、読取り/書込みバス143を
アサートすることにより、読取りまたは書込み動作につ
いてバス・デバイス104に通知する。シリアル/パラ
レル・インタフェース102の実施例のブロック図を示
す図2を参照することにより、本発明をより詳細に理解
することができる。
【0013】動作は、マイクロコントローラ101(図
2には図示せず)がリセット線111をアサートするこ
とによって初期設定される。リセット線111上の信号
に応答して、制御論理回路207は、インタフェース・
リセット線272をアサートすることにより、アドレス
論理回路203およびクロック順序付け論理回路201
をリセットする。マイクロコントローラ101は、アド
レス線121上でアサートすべき初期nビット・アドレ
スをクロックアウトする。初期nビット・アドレスは、
アップロードまたはダウンロードすべきデータの第1の
ブロックの位置に対応する。このアドレスは、クロック
順序付け論理回路201によって生成されるレジスタ・
クロック211によってシフト・レジスタ202にクロ
ックインされる。クロック順序付け論理回路201は、
シリアル・クロック112上でマイクロコントローラ1
01からシリアル・クロックを受信する。レジスタ・ク
ロック211はシリアル・クロック112と同期化され
る。マイクロコントローラ101は、初期アドレスを1
バイトずつ送信することができる。このような実施例の
マイクロコントローラ101は、アドレスのnビットを
すべて送信してしまうまでアドレスのバイトを順次送信
する。クロック順序付け論理回路201はシリアル・ク
ロック・サイクルを蓄積する。nビットをすべて受信し
た後、クロック順序付け論理回路201は、アドレス・
ラッチ212をアサートすることにより、シフト・レジ
スタ202のパラレル・バス221上に現れるアドレス
をアドレス論理回路203にラッチする。パラレル・バ
ス221は長さがZビットであり、Zは所定の整数値で
ある。
【0014】初期アドレスが送信された後、マイクロコ
ントローラ101はコマンド・バイトを送信する。制御
論理回路207は、シリアル・クロック線112上でマ
イクロコントローラ101からシリアル・クロックを受
信する。これは、コマンド・バイトの8つのビットがク
ロックインされるまでクロック・サイクルを蓄積する。
次にこれは、それがシフト・レジスタ202のパラレル
・バス221上で受信するコマンド・バイトをラッチす
る。コマンド・バイトの第1のビットの状態は、実行す
べき動作が読取りかまたは書込みかを決定する。次に制
御論理回路207は、R/Wイネーブル271の状態を
確立するためにこれを使用する。入力データ・バッファ
205および出力データ・バッファ206は、R/Wイ
ネーブル線271の状態に応じてイネーブルになるかま
たはディスエーブルになる。
【0015】読取り動作は、マイクロコントローラ10
1がそのシリアル・ポートに読取りコマンドを発行した
ときに開始される。シリアル・クロック信号112は、
データ・クロック線213を介してクロック順序付け論
理回路201によって出力データ・バッファ206に渡
される。出力データ・バッファ206は、R/Wイネー
ブル線271上の信号によってイネーブルになってい
る。また、読取り状態は、読取りが行われることをバス
・デバイス103(図2には図示せず)に通知するR/
W制御バス123上でアサートされる。mビットのデー
タはシリアルに読み出され、制御論理回路207はアド
レス・カウント増分信号273をアサートし、アドレス
論理回路203が次のmビットのデータ・ブロックをア
ドレス指定する。mビットのデータがマイクロコントロ
ーラ101に供給された後、クロック順序付け論理回路
201は出力データ・バッファ206にクロック信号を
発行するのを停止する。この動作を繰り返すことによ
り、mビット単位のデータ・ブロックがマイクロコント
ローラ101によって順次受信される。マイクロコント
ローラ101がリセット111をアサートし、次の動作
を見越してシリアル/パラレル・インタフェース102
をリセットすべきであることを示すと、読取り動作が終
了する。
【0016】書込み動作は、ソフトウェア・コード内の
命令に応答してマイクロコントローラ101がそのシリ
アル・ポートにデータを書き込んだときに開始される。
これについてはここに図示しないが、当業者であれば十
分理解できるだろう。入力データ・バッファ205はシ
フト・レジスタ202のパラレル・バス221上でmビ
ットのデータ・ブロックを受信する。データは、データ
・クロック213に応答して入力データ・バッファ20
5にラッチされる。制御論理回路207は、入力データ
・バッファ制御線274を介して入力データ・バッファ
205へのデータのラッチを制御することができる。代
替実施例では、代替手段を使用して入力データ・バッフ
ァ205にデータをラッチすることができる。このよう
な手段は当技術分野では周知のものである。また、制御
論理回路207はデータ・クロック213も受信する。
それに応答して、制御論理回路207はR/W制御バス
123上で書込み状態をアサートし、その結果、バス・
デバイス103はデータ・バス122上でデータにアク
セスする。制御論理回路207はアドレス・カウント増
分273もアサートし、その結果、アドレス論理回路2
03はアドレス・カウンタを増分する。次のnビットの
データ・ブロックがダウンロードされる位置のアドレス
は、アドレス論理回路203によってアドレス・バス1
21上で供給される。書込み動作は、ダウンロードすべ
きすべてのデータが送信されるまで、これらのステップ
を実行し続ける。次に、マイクロコントローラ101
は、リセット線111をアサートすることにより書込み
動作の終わりを知らせ、次の動作を見越してリセットす
るようシリアル/パラレル・インタフェース102に通
知する。
【0017】データは、インタリーブ方式で1バイトず
つダウンロードすることができる。このような実施例で
は、書込み動作が企図されている場合、コマンド・バイ
トのうちの最後の4ビットは第1の出力バイトの下位4
ビット(「下位ニブル」)を含む。読取り動作が企図さ
れている場合、コマンド・バイトのビット1〜7の値は
無視される。制御論理回路207は、コマンド・バイト
の第1のビットをデコードし、書込み動作を検出する
と、その4ビットをラッチするよう入力データ・バッフ
ァ205に指示する。その場合、マイクロコントローラ
101によって送信された第1の出力バイトの下位ニブ
ルは第1のデータ・バイトの上位4ビット(「上位ニブ
ル」)を含み、第1の出力バイトの上位ニブルはダウン
ロードすべき次のデータ・バイトの下位ニブルを含む。
制御論理回路207は、入力バッファ制御バス274を
介して、入力データ・バッファ205の内部レジスタ
(図示せず)への出力バイトのラッチをステアリングす
る。このステアリングは、インタリーブ方式で伝送され
た2つのニブルを全データ・バイトにアセンブリするこ
とに影響する。この方法を使用するデータ・バイトの通
信が、データ表現のモードが最下位ビット(「LS
B」)優先であるか最上位ビット(「MSB」)優先で
あるかとは無関係であることは、当業者には十分理解さ
れるだろう。制御論理回路207は、mビットのデータ
がすべてアセンブルされるまで、入力データを1バイト
ずつ蓄積し続ける。次にこの回路は入力データ・バッフ
ァ205にデータをロードし、上記のように動作が継続
する。本発明の他の実施例のブロック図を示す図3を参
照することにより、本発明の動作をさらに理解すること
ができる。
【0018】図3では、マイクロコントローラ101
(図3には図示せず)がリセット111をアサートし、
読取り/書込み状態マシン307、行・列カウント状態
マシン308、コマンド論理回路309をリセットさせ
ることから動作が開始される。次にマイクロコントロー
ラ101は、そこでダウンロードまたはアップロード動
作が始まるアドレス・バス121上の初期アドレスのダ
ウンロードを開始する。マイクロコントローラ101
は、Rx/TxD線113上でそのシリアル・ポートか
らアドレスをクロックアウトすることにより、nビット
のアドレスを送信する。このアドレスはシリアル/パラ
レル・インタフェース102上でシフト・レジスタ20
2にクロックインされ、アドレス転送は1バイトずつ行
うことができる。また、マイクロコントローラ101
は、シリアル・クロック線112上でそのシリアル・ク
ロックを出力する。クロック・ジェネレータ301は、
シリアル・クロック112を受信し、インタフェース・
クロック線311上でインタフェース・シリアル・クロ
ック・パルスを出力する。インタフェース・クロックは
シリアル・クロック112と同期化される。クロック・
ジェネレータ301は、シリアル・クロック112の立
上りエッジと立下りエッジのそれぞれでインタフェース
・クロック・パルスを出力することができる。シフト・
レジスタ202のクロックは、インタフェース・クロッ
ク線311上の信号によって制御される。
【0019】初期アドレスは304−0乃至304−X
と呼ばれるX個の複数のラッチ付きマルチプレクサによ
って格納されるが、Xは所定の数のラッチ付きマルチプ
レクサの個数に等しい整数値である。初期アドレスは、
1バイトずつ格納することができる。ラッチ付きマルチ
プレクサ304−1乃至ラッチ付きマルチプレクサ30
4−Xは、シフト・レジスタ302のパラレル・バス3
21に結合される。送信中のmビットのアドレスの現行
ブロックを格納するラッチ付きマルチプレクサは、行・
列カウント状態マシン308の出力バス381上で供給
される行・列カウント信号をデコードすることによって
選択される。nビットのアドレスの1つのブロックは、
1バイトの長さにすることができる。現行ブロックがマ
イクロコントローラ101からクロックアウトされ、シ
フト・レジスタ202にクロックインされた後、アドレ
スは、線311上のインタフェース・クロック・パルス
によってラッチ付きマルチプレクサ304−0乃至ラッ
チ付きマルチプレクサ304−Xのうちの指定の1つに
ラッチされる。アドレスのnビットのすべてが送信され
た後、アドレスはアドレス・カウンタ303にロードさ
れる。
【0020】行および列選択信号は、行・列カウント状
態マシン308によって生成される。行・列カウント状
態マシン308は、インタフェース・クロック線311
上でクロック・ジェネレータ301からインタフェース
・クロック・パルスを受信する。行・列カウント状態マ
シン308の実施例の流れ図については図4に示す。
【0021】リセット後、行・列カウント状態マシン3
08は、インタフェース・シリアル・クロック線311
上で受信したインタフェース・シリアル・クロック・パ
ルスを蓄積する。クロック・パルスを蓄積するための論
理回路は行・列カウント状態マシン308の内部にあ
り、詳細に図示しない。蓄積したクロック・パルスの数
がYに達していない場合、行・列カウント状態マシン3
08は列カウントを増分し、行・列カウントを出力し、
インタフェース・シリアル・クロック線311上で受信
したインタフェース・シリアル・クロック・サイクルに
応じて続行する。Yは、単一ダウンロード・サイクル中
にダウンロードすべきデータ・ブロックの長さに対応す
る事前選択整数である。さらに、mビットのデータすべ
てが1サイクルでダウンロードされる実施例では、Yは
mに等しくなるはずである。バイト単位でダウンロード
する実施例では、Yの値が8に等しくなるはずである。
さらに、本発明では、マイクロコントローラ101がま
ずnビットのアドレスを送信した後、行・列カウント状
態マシン308は適応方式でYを設定することができ
る。たとえば、アドレス全体が1つのブロックとして送
信される実施例では、Yは最初にnに等しく設定され
る。nビットが受信された後、行・列カウント状態マシ
ン308はYを新しい事前選択値に設定することができ
る。この新しい事前選択値は、1つのブロックでm個の
データ・ビットをダウンロードする実施例ではmになる
はずである。また、nビットのアドレスとmビットのデ
ータの両方を1バイトずつ送信する実施例では、Yは8
という固定値を有するはずである。
【0022】クロック・アキュムレータがYに達してい
る場合、行・列カウント状態マシン308は行カウント
を増分し、列カウントをリセットし、その出力バス38
1上で行および列カウントを出力する。リセット線11
1上でマイクロコントローラ101からリセットを受信
していない場合、行・列カウント状態マシン308は、
クロック・サイクルを蓄積し続け、前述のように行およ
び列カウントを増分し続ける。リセット線111上でリ
セットを受信した場合、行・列カウント状態マシン30
8がリセットする。次の動作が始まると、行・列カウン
ト状態マシン308は、クロック・サイクルを受信した
ときにその蓄積を開始する。行・列カウント状態マシン
308の順次動作のタイミングは、その内部クロック
(図示せず)によって制御される。内部クロックは線3
11上のインタフェース・シリアル・クロック・パルス
と同期化する必要はなく、内部クロックの速度は線31
1上のインタフェース・シリアル・クロック・パルスの
速度よりかなり速くすることができる。
【0023】nビットの初期アドレスを送信した後、マ
イクロコントローラ101はコマンド・バイトを送信す
る。コマンド論理回路309は、出力線381上で行・
列カウント状態マシン308から受信した行および列ア
ドレスをデコードする。コマンド・バイトの8ビットが
シフト・レジスタ302にクロックインされた後、コマ
ンド論理回路309は、それがシフト・レジスタ302
のパラレル・バス321上で受信するコマンド・バイト
をラッチする。コマンド・バイトの第1のビットの状態
は、実行すべき動作が読取りか書込みかをシリアル/パ
ラレル・インタフェース102に通知する。コマンド論
理回路309は、コマンド・バイトの第1のビットの状
態を確認し、コマンド論理回路309の出力線391に
より読取り/書込み状態マシン307の状態を設定す
る。データ転送が1バイトずつ行われる本発明の一実施
例では、書込み動作を実行する場合、コマンド・バイト
の最後の4ビットは、上記のようにダウンロードすべき
第1のデータ・バイトの最下位ニブルを含む。
【0024】読取り動作と書込み動作は、読取り/書込
み状態マシン307によって制御される。読取り/書込
み状態マシン307の実施例の流れ図については図5に
示す。読取り/書込み状態マシン307は、行・列カウ
ント状態マシン308により行および列アドレス・バス
381上で出力行アドレスおよび出力列アドレスを受信
する。コマンド論理回路がアドレス指定された場合、読
取り/書込み状態マシン307は、コマンド論理回路3
09の出力線391の状態をテストする。線391が読
取り状態になっている場合、読取り/書込み状態マシン
307はR/W制御バス123上で読取りをアサートす
る。次にこの状態マシンは、線371を介してデータ・
バス122上でデータをラッチするよう読取りデータ・
バッファ206に指示する。送信すべきデータの第1の
ブロックは、アドレス・カウンタ303にロードされる
初期アドレスに存在する。mビットが送信された後、リ
セットがアサートされていない場合、R/W状態マシン
307はアドレス・カウンタ303を増分するので、次
に読み取るデータ・ブロックのアドレスがアドレス・バ
ス121上に現れる。アドレス・カウンタ303は、ア
ドレス・カウンタ増分線372を介して読取り/書込み
状態マシン307から受信したアドレス増分信号に応答
して、アドレス・バス121上のアドレスを増分する。
データのラッチ後、読取りデータ・バッファ206は、
シリアル・データ線Rx/TxD113を介してデータ
をクロックアウトする。データのクロックは、インタフ
ェース・シリアル・クロック線311上でクロック・ジ
ェネレータ301によってアサートされるシリアル・ク
ロック・パルスによって制御される。アドレス・カウン
タ303が増分された後、マイクロコントローラ101
(図示せず)によってリセット線111上でリセットが
アサートされるまでこのサイクルを繰り返す。
【0025】書込みを実行する場合、読取り/書込み状
態マシン307は受信したビットの数を蓄積する。mビ
ットが受信されると、読取り/書込み状態マシン307
はR/W制御バス123上で書込みをアサートする。次
に読取り/書込み状態マシン307は、リセットがアサ
ートされたかどうかを確認するためにテストする。リセ
ットがアサートされた場合、読取り/書込み状態マシン
307はリセットし、アサートされていない場合、アド
レス・カウンタ増分線372を介してアドレス・カウン
タ303を増分する。マイクロコントローラ101によ
ってリセット線111上でリセットがアサートされるま
でこのサイクルを繰り返す。R/W状態マシン307の
順次動作のタイミングは、その内部クロック(図示せ
ず)によって制御される。内部クロックは線311上の
インタフェース・シリアル・クロックと同期しない場合
があり、内部クロックの速度は線311上のインタフェ
ース・シリアル・クロック・パルスの速度よりかなり速
くすることができる。
【0026】書込み動作では、データ・バイト122に
書き込むべきデータがデータ論理回路305によって受
信される。データは、1バイトずつマイクロコントロー
ラ101から送信することができる。このような実施例
のコマンド・バイトは、前述のように、ダウンロードす
べき第1のデータ・バイトの最下位ニブルを含む。デー
タ論理回路305は、シフト・レジスタ202のパラレ
ル・バス321上でコマンド・バイトを受信する。その
シリアル・ポートRx/TxD113を介してマイクロ
コントローラ101によって送信される次のバイトは、
その下位4ビットに第1のデータ・バイトの上位ニブル
を含み、その上位4ビットに次のデータ・バイトの下位
ニブルを含む。データ論理回路305は、シフト・レジ
スタ302のパラレル・バス321によって送信された
次のバイトを受信し、この出力バイトをラッチする。次
にデータ論理回路305は、第1のデータ・バイトの下
位ニブルと上位ニブルを連結し、それをデータ・バス1
22に転送する。マイクロコントローラ101は、この
ようなインタリーブ方式でシリアル線Rx/TxD11
3上でデータを送信し続ける。データ論理回路305
は、それを受信したときに出力バイトをラッチし、前述
のようにデータの各バイトの下位ニブルと上位ニブルを
連結する。データ論理回路305でのデータのラッチ
は、線311上で生成されるインタフェース・シリアル
・クロック・パルスによって制御される。この方法を使
用するデータ・バイトの通信が、データ表現のモードが
LSB優先であるかMSB優先であるかとは無関係であ
ることは、当業者には十分理解されるだろう。mビット
のデータが送信された後、データは読取り/書込み状態
マシン307によってバス・デバイス103に書き込ま
れ、R/W制御バス123上で書込み状態をアサートす
る。mビットが送信された後、リセットがアサートされ
ていない場合、R/W状態マシン307はアドレス・カ
ウンタ303を増分するので、次に読み取るデータ・ブ
ロックのアドレスがアドレス・バス121上に現れる。
アドレス・カウンタ303は、アドレス・カウンタ増分
線372を介して読取り/書込み状態マシン307から
受信したアドレス増分信号に応答して、アドレス・バス
121上のアドレスを増分する。後続のmビットのデー
タ・ブロックは、ダウンロードすべきすべてのデータが
送信されるまでこのようにして送信され、マイクロコン
トローラ101はリセット線111上でリセットをアサ
ートする。次にシリアル/パラレル・インタフェース1
02は次の動作を開始できる状態になる。
【0027】ここに記載した実施例に表されているデー
タ処理システムおよび方法は、限られた数のパラレル入
出力バスを有する埋込み型コントローラを備えたバス・
デバイスのインタフェースを取ることと、データ処理シ
ステムのオペレーティング・ソフトウェアの動的更新と
いう関連問題にとって有効な解決策である。本発明およ
びその利点について詳細に説明してきたが、請求の範囲
で定義した本発明の趣旨および範囲を逸脱せずに、ここ
で様々な変更、代用、改変が可能であることを理解され
たい。
【0028】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0029】(1)少なくとも1つのパラレル入出力バ
スと、シリアル・データ・ポートとを有するマイクロコ
ントローラと、前記シリアル・データ・ポートと、パラ
レル・アドレス・バスと、パラレル・データ・バスとを
有するシリアル/パラレル・インタフェース論理回路で
あって、前記シリアル・データ・ポートが前記マイクロ
コントローラの前記シリアル・データ・ポートと通信で
きるようになっており、前記マイクロコントローラの前
記シリアル・データ・ポート上で通信される第1のデー
タ値が前記パラレル・データ・バス上でパラレル・デー
タ値として提示され、前記シリアル/パラレル・インタ
フェース論理回路が前記シリアル/パラレル・インタフ
ェース論理回路の前記パラレル・アドレス・バス上でア
ドレスを供給するシリアル/パラレル・インタフェース
論理回路と、前記シリアル/パラレル・インタフェース
論理回路の前記パラレル・アドレス・バス上で前記アド
レスを受信するために適応可能なバス・デバイスであっ
て、前記パラレル・データ値を通信するために前記デー
タ・バスにアクセスできるバス・デバイスとを含む、マ
イクロコントローラ・システム。 (2)前記シリアル/パラレル・インタフェース論理回
路が、シリアル・データ値を受信するためのシフト・レ
ジスタであって、パラレル出力バスを有するシフト・レ
ジスタと、シリアル・クロック信号を受信するために前
記マイクロコントローラに結合されたクロック順序付け
論理回路であって、前記シフト・レジスタをクロックす
るために第1のクロック信号を供給するクロック順序付
け論理回路と、前記シリアル/パラレル・インタフェー
ス論理回路の前記パラレル・データ・バス上で第2のデ
ータ値を受信するための出力データ・バッファであっ
て、前記クロック順序付け論理回路からの前記第1のク
ロック信号を受信したときに前記第2のデータ値をラッ
チするために動作可能であり、前記シリアル/パラレル
・インタフェース論理回路の前記シリアル・データ・ポ
ート上で前記第2のデータ値をアサートする出力データ
・バッファと、前記シフト・レジスタの前記パラレル・
バスからアドレス・データ値を受信するために動作可能
であるアドレス論理回路であって、前記アドレス・デー
タ値がカウンタを初期設定できるアドレス論理回路と、
前記シフト・レジスタの前記パラレル出力バスからコマ
ンド値を受信するために動作可能である制御論理回路で
あって、実行すべき動作を反映するように前記シリアル
/パラレル・インタフェース論理回路を構成する制御論
理回路と、前記シフト・レジスタの前記パラレル出力バ
スからダウンロード・データ値を受信するための入力デ
ータ・バッファであって、前記シリアル/パラレル・イ
ンタフェース論理回路の前記パラレル・データ・バス上
で前記ダウンロード・データ値を供給し、前記ダウンロ
ード・データ値をラッチするために動作可能な入力デー
タ・バッファとをさらに含む、上記(1)に記載のマイ
クロコントローラ・システム。 (3)前記制御論理回路が複数の入力データ・バッファ
制御信号を供給し、前記入力データ・バッファが前記複
数の入力データ・バッファ制御信号に応答して前記ダウ
ンロード・データ値をラッチするために動作可能であ
る、上記(2)に記載のマイクロコントローラ・システ
ム。 (4)前記制御論理回路が、前記コマンド値を受信する
ために適応可能であり、第1のコマンド信号を供給する
ためのコマンド論理回路と、前記コマンド論理回路から
受信した第1のコマンド信号に応答して前記シリアル/
パラレル・インタフェース論理回路の読取り/書込み動
作を制御するために適応可能な読取り/書込み状態マシ
ンと、複数の行/列レジスタ選択信号を出力するための
行・列カウント状態マシンであって、前記複数の行/列
レジスタ選択信号が前記クロック順序付け論理回路から
の複数のクロック信号に応答して生成され、前記アドレ
ス論理回路が前記複数の行/列選択信号に応じた選択の
ために適応可能な複数のアドレス・レジスタを含み、前
記入力データ・バッファが前記複数の行/列選択信号に
応じた選択のために適応可能である前記行・列カウント
状態マシンとをさらに含む、上記(2)に記載のマイク
ロコントローラ・システム。 (5)前記複数のアドレス・レジスタが複数のラッチ付
きマルチプレクサをさらに含む、上記(4)に記載のマ
イクロコントローラ・システム。 (6)前記シリアル/パラレル・インタフェース論理回
路が、シリアル・データ値を受信するためのシフト・レ
ジスタであって、パラレル出力バスを有するシフト・レ
ジスタと、前記シリアル・データ値と同期化させた外部
シリアル・クロック信号を受信するためのクロック・ジ
ェネレータであって、前記外部シリアル・クロック信号
に応答して複数のインタフェース・シリアル・クロック
・パルスを生成し、前記シフト・レジスタが前記複数の
インタフェース・シリアル・クロック・パルスに応答し
て前記シリアル・データ値をクロックインするクロック
・ジェネレータと、前記クロック・ジェネレータからの
前記複数のインタフェース・シリアル・クロック・パル
スに応答して行/列アドレス信号を生成する状態マシン
と、前記シフト・レジスタの前記パラレル出力バス上で
受信したアドレス・データ値を格納するためのラッチ付
きマルチプレクサであって、前記状態マシンからの前記
行/列アドレス信号に応答して前記アドレス・データ値
を受信するために選択されるラッチ付きマルチプレクサ
と、前記シリアル/パラレル・インタフェース論理回路
のパラレル・アドレス・バス上でアドレスを選択するた
めのアドレス・カウンタであって、前記ラッチ付きマル
チプレクサ内に格納された前記アドレス・データ値から
初期アドレス値を受信し、アドレス・カウンタ増分信号
に応答して前記初期アドレス値を増分するアドレス・カ
ウンタと、前記シフト・レジスタの前記パラレル出力バ
スからコマンド値を受信するためのコマンド論理回路で
あって、読取り動作と書込み動作のうちの一方を選択す
るために前記コマンド値をデコードし、前記コマンド値
に応答して動作選択信号を生成するコマンド論理回路
と、前記シリアル/パラレル・インタフェース論理回路
のパラレル・データ・バスから第2のデータ値を受信す
るための読取りデータ・バッファであって、シリアル・
データ線から前記第2のデータ値を送信するために動作
可能であり、前記第2のデータ値が前記クロック・ジェ
ネレータからの前記複数のインタフェース・シリアル・
クロック・パルスに応答して前記シリアル・データ線上
にクロックされる読取りデータ・バッファと、前記コマ
ンド論理回路から前記動作選択信号を受信するための読
取り/書込み状態マシンであって、前記シリアル/パラ
レル・インタフェース論理回路の前記パラレル・データ
・バスに制御信号を送信し、それに応答して前記読取り
データ・バッファにイネーブル信号を送信し、前記クロ
ック・ジェネレータから前記複数のインタフェース・シ
リアル・クロック・パルスを受信し、前記状態マシンか
ら前記行/列アドレス信号を受信し、それに応答して前
記アドレス・カウンタに前記アドレス・カウンタ増分信
号を送信する読取り/書込み状態マシンと、前記シフト
・レジスタの前記パラレル出力バスからシリアル・デー
タ値を受信するためのデータ論理回路であって、前記行
/列アドレス信号に応答して選択するために動作可能で
あり、前記シリアル/パラレル・インタフェース論理回
路の前記パラレル・データ・バス上で前記シリアル・デ
ータ値を出力するデータ論理回路とをさらに含む、上記
(1)に記載のマイクロコントローラ・システム。 (7)シリアル/パラレル・インタフェース論理回路と
通信するための方法であって、前記シリアル/パラレル
・インタフェース論理回路を初期設定するステップと、
前記シリアル/パラレル・インタフェース論理回路に複
数のアドレス・ビットを送信するステップであって、前
記複数のアドレス・ビットの少なくとも一部分がアドレ
ス空間内のアドレスを含むステップと、読取り動作と書
込み動作のうちの一方を選択するためにコマンド値の第
1のコマンド・ビットをアサートするステップと、前記
シリアル/パラレル・インタフェース論理回路に前記コ
マンド値を送信するステップと、前記第1のコマンド・
ビットに応答して前記読取り動作と前記書込み動作のう
ちの一方を実行するステップと、前記シリアル/パラレ
ル・インタフェース論理回路にリセット信号を送信する
ステップとを含む方法。 (8)前記第1のコマンド・ビットが前記書込み動作を
実行すべきであることを示し、前記書込み動作が前記シ
リアル/パラレル・インタフェース論理回路に少なくと
も第1のデータ・ビットを書き込む、上記(7)に記載
の方法。 (9)前記書込み動作がバイト増分で前記シリアル/パ
ラレル・インタフェース論理回路に第1のデータ値を書
き込み、前記コマンド値がコマンド・バイトである、上
記(8)に記載の方法。 (10)前記書込み動作を実行するステップが、前記コ
マンド・バイトの第1のニブルに第1のデータ・バイト
の第2のニブルをロードするステップと、前記シリアル
/パラレル・インタフェース論理回路に前記コマンド・
バイトを書き込むステップと、第1の出力バイトの第1
のニブルに前記第1のデータ・バイトの第2のニブルを
ロードし、前記第1の出力バイトの第2のニブルに第2
のデータ・バイトの第1のニブルをロードするステップ
と、前記シリアル/パラレル・インタフェース論理回路
に前記第1の出力バイトを書き込むステップと、第2の
出力バイトの第1のニブルに前記第2のデータ・バイト
の第2のニブルをロードし、前記第2の出力バイトの第
2のニブルに第3のデータ・バイトの第1のニブルをロ
ードするステップと、前記シリアル/パラレル・インタ
フェース論理回路に前記第2の出力バイトを書き込むス
テップと、前記シリアル/パラレル・インタフェースに
次の複数の出力バイトを書き込むステップであって、次
の出力バイトの第1のニブルに前のデータ・バイトの第
2のニブルがロードされ、前記次の出力バイトの第2の
ニブルに次のデータ・バイトの第1のニブルがロードさ
れるステップとをさらに含む、上記(9)に記載の方
法。 (11)前記第1のコマンド・ビットが前記読取り動作
を実行すべきであることを示し、前記読取り動作が、前
記シリアル/パラレル・インタフェース論理回路に前記
コマンド値を送信するステップと、前記シリアル/パラ
レル・インタフェース論理回路からデータ・ビットを読
み取るステップとをさらに含む、上記(7)に記載の方
法。 (12)前記読取り動作が複数のバイト増分単位で前記
シリアル/パラレル・インタフェース論理回路からデー
タ値を読み取り、データ・ビットが前記複数のバイト増
分単位のうちの少なくとも1つにパックされている、上
記(11)に記載の方法。 (13)シリアル/パラレル・インタフェース論理回路
と通信するための方法であって、前記シリアル/パラレ
ル・インタフェース論理回路を初期設定するためにリセ
ット信号をアサートするステップと、前記シリアル/パ
ラレル・インタフェース論理回路にアドレス・ビットを
送信するステップであって、前記アドレス・ビットがア
ドレス値の一部分を含み、前記アドレス値がパラレル・
バス・デバイス内の位置をアドレス指定するステップ
と、前記シリアル/パラレル・インタフェース論理回路
にコマンド値を送信するステップであって、前記コマン
ド値の第1のビットが読取り動作と書込み動作のうちの
一方を選択できるようになっているステップと、前記シ
リアル/パラレル・インタフェース論理回路とデータ処
理回路との間で複数のデータ・バイトを転送するステッ
プと、前記シリアル/パラレル・インタフェース論理回
路をリセットするためにリセット信号をアサートするス
テップとを含む方法。 (14)前記アドレス・ビットを送信するステップが、
バイト増分単位で複数のアドレス・ビットを送信する、
上記(13)に記載の方法。 (15)バイト増分単位で複数の前記アドレス・ビット
を送信するステップが、前記シリアル/パラレル・イン
タフェース論理回路に第1のバイトを送信するステップ
であって、前記第1のバイトが少なくとも3バイトの長
さを有するアドレスの第1のバイトであるステップと、
前記シリアル/パラレル・インタフェース論理回路に第
2のバイトを送信するステップであって、前記第2のバ
イトが少なくとも3バイトの長さを有する前記アドレス
の第2のバイトであるステップと、前記シリアル/パラ
レル・インタフェース論理回路に第3のバイトを送信す
るステップであって、前記第3のバイトが少なくとも3
バイトの長さを有する前記アドレスの第3のバイトであ
るステップとをさらに含む、上記(14)に記載の方
法。
【図面の簡単な説明】
【図1】本発明を使用するマイクロコントローラ・シス
テムの実施例のブロック図である。
【図2】本発明のシリアル/パラレル・インタフェース
の実施例のブロック図である。
【図3】本発明のシリアル/パラレル・インタフェース
の他の実施例の詳細を示すブロック図である。
【図4】図3の行・列/カウント状態マシンの流れ図で
ある。
【図5】図3の読取り/書込み状態マシンの流れ図であ
る。
【符号の説明】
100 マイクロコントローラ・システム 101 マイクロコントローラ 102 シリアル/パラレル・インタフェース 103 パラレル・バス・デバイス 104 バス・デバイス 111 リセット線 112 シリアル・クロック線 113 Rx/TxD線 121 アドレス線 122 パラレル両方向データ・バス 123 読取り/書込み(「R/W」)制御バス 141 アドレス・バス 142 パラレル・データ・バス 143 読取り/書込みバス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 タン・キュー・グエン アメリカ合衆国78613 テキサス州シーダ ー・パーク ロード・ランナー 1309

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】少なくとも1つのパラレル入出力バスと、
    シリアル・データ・ポートとを有するマイクロコントロ
    ーラと、 前記シリアル・データ・ポートと、パラレル・アドレス
    ・バスと、パラレル・データ・バスとを有するシリアル
    /パラレル・インタフェース論理回路であって、前記シ
    リアル・データ・ポートが前記マイクロコントローラの
    前記シリアル・データ・ポートと通信できるようになっ
    ており、前記マイクロコントローラの前記シリアル・デ
    ータ・ポート上で通信される第1のデータ値が前記パラ
    レル・データ・バス上でパラレル・データ値として提示
    され、前記シリアル/パラレル・インタフェース論理回
    路が前記シリアル/パラレル・インタフェース論理回路
    の前記パラレル・アドレス・バス上でアドレスを供給す
    るシリアル/パラレル・インタフェース論理回路と、 前記シリアル/パラレル・インタフェース論理回路の前
    記パラレル・アドレス・バス上で前記アドレスを受信す
    るために適応可能なバス・デバイスであって、前記パラ
    レル・データ値を通信するために前記データ・バスにア
    クセスできるバス・デバイスとを含む、マイクロコント
    ローラ・システム。
  2. 【請求項2】前記シリアル/パラレル・インタフェース
    論理回路が、 シリアル・データ値を受信するためのシフト・レジスタ
    であって、パラレル出力バスを有するシフト・レジスタ
    と、 シリアル・クロック信号を受信するために前記マイクロ
    コントローラに結合されたクロック順序付け論理回路で
    あって、前記シフト・レジスタをクロックするために第
    1のクロック信号を供給するクロック順序付け論理回路
    と、 前記シリアル/パラレル・インタフェース論理回路の前
    記パラレル・データ・バス上で第2のデータ値を受信す
    るための出力データ・バッファであって、前記クロック
    順序付け論理回路からの前記第1のクロック信号を受信
    したときに前記第2のデータ値をラッチするために動作
    可能であり、前記シリアル/パラレル・インタフェース
    論理回路の前記シリアル・データ・ポート上で前記第2
    のデータ値をアサートする出力データ・バッファと、 前記シフト・レジスタの前記パラレル・バスからアドレ
    ス・データ値を受信するために動作可能であるアドレス
    論理回路であって、前記アドレス・データ値がカウンタ
    を初期設定できるアドレス論理回路と、 前記シフト・レジスタの前記パラレル出力バスからコマ
    ンド値を受信するために動作可能である制御論理回路で
    あって、実行すべき動作を反映するように前記シリアル
    /パラレル・インタフェース論理回路を構成する制御論
    理回路と、 前記シフト・レジスタの前記パラレル出力バスからダウ
    ンロード・データ値を受信するための入力データ・バッ
    ファであって、前記シリアル/パラレル・インタフェー
    ス論理回路の前記パラレル・データ・バス上で前記ダウ
    ンロード・データ値を供給し、前記ダウンロード・デー
    タ値をラッチするために動作可能な入力データ・バッフ
    ァとをさらに含む、請求項1に記載のマイクロコントロ
    ーラ・システム。
  3. 【請求項3】前記制御論理回路が複数の入力データ・バ
    ッファ制御信号を供給し、前記入力データ・バッファが
    前記複数の入力データ・バッファ制御信号に応答して前
    記ダウンロード・データ値をラッチするために動作可能
    である、請求項2に記載のマイクロコントローラ・シス
    テム。
  4. 【請求項4】前記制御論理回路が、 前記コマンド値を受信するために適応可能であり、第1
    のコマンド信号を供給するためのコマンド論理回路と、 前記コマンド論理回路から受信した第1のコマンド信号
    に応答して前記シリアル/パラレル・インタフェース論
    理回路の読取り/書込み動作を制御するために適応可能
    な読取り/書込み状態マシンと、 複数の行/列レジスタ選択信号を出力するための行・列
    カウント状態マシンであって、前記複数の行/列レジス
    タ選択信号が前記クロック順序付け論理回路からの複数
    のクロック信号に応答して生成され、前記アドレス論理
    回路が前記複数の行/列選択信号に応じた選択のために
    適応可能な複数のアドレス・レジスタを含み、前記入力
    データ・バッファが前記複数の行/列選択信号に応じた
    選択のために適応可能である前記行・列カウント状態マ
    シンとをさらに含む、請求項2に記載のマイクロコント
    ローラ・システム。
  5. 【請求項5】前記複数のアドレス・レジスタが複数のラ
    ッチ付きマルチプレクサをさらに含む、請求項4に記載
    のマイクロコントローラ・システム。
  6. 【請求項6】前記シリアル/パラレル・インタフェース
    論理回路が、 シリアル・データ値を受信するためのシフト・レジスタ
    であって、パラレル出力バスを有するシフト・レジスタ
    と、 前記シリアル・データ値と同期化させた外部シリアル・
    クロック信号を受信するためのクロック・ジェネレータ
    であって、前記外部シリアル・クロック信号に応答して
    複数のインタフェース・シリアル・クロック・パルスを
    生成し、前記シフト・レジスタが前記複数のインタフェ
    ース・シリアル・クロック・パルスに応答して前記シリ
    アル・データ値をクロックインするクロック・ジェネレ
    ータと、 前記クロック・ジェネレータからの前記複数のインタフ
    ェース・シリアル・クロック・パルスに応答して行/列
    アドレス信号を生成する状態マシンと、 前記シフト・レジスタの前記パラレル出力バス上で受信
    したアドレス・データ値を格納するためのラッチ付きマ
    ルチプレクサであって、前記状態マシンからの前記行/
    列アドレス信号に応答して前記アドレス・データ値を受
    信するために選択されるラッチ付きマルチプレクサと、 前記シリアル/パラレル・インタフェース論理回路のパ
    ラレル・アドレス・バス上でアドレスを選択するための
    アドレス・カウンタであって、前記ラッチ付きマルチプ
    レクサ内に格納された前記アドレス・データ値から初期
    アドレス値を受信し、アドレス・カウンタ増分信号に応
    答して前記初期アドレス値を増分するアドレス・カウン
    タと、 前記シフト・レジスタの前記パラレル出力バスからコマ
    ンド値を受信するためのコマンド論理回路であって、読
    取り動作と書込み動作のうちの一方を選択するために前
    記コマンド値をデコードし、前記コマンド値に応答して
    動作選択信号を生成するコマンド論理回路と、 前記シリアル/パラレル・インタフェース論理回路のパ
    ラレル・データ・バスから第2のデータ値を受信するた
    めの読取りデータ・バッファであって、シリアル・デー
    タ線から前記第2のデータ値を送信するために動作可能
    であり、前記第2のデータ値が前記クロック・ジェネレ
    ータからの前記複数のインタフェース・シリアル・クロ
    ック・パルスに応答して前記シリアル・データ線上にク
    ロックされる読取りデータ・バッファと、 前記コマンド論理回路から前記動作選択信号を受信する
    ための読取り/書込み状態マシンであって、前記シリア
    ル/パラレル・インタフェース論理回路の前記パラレル
    ・データ・バスに制御信号を送信し、それに応答して前
    記読取りデータ・バッファにイネーブル信号を送信し、
    前記クロック・ジェネレータから前記複数のインタフェ
    ース・シリアル・クロック・パルスを受信し、前記状態
    マシンから前記行/列アドレス信号を受信し、それに応
    答して前記アドレス・カウンタに前記アドレス・カウン
    タ増分信号を送信する読取り/書込み状態マシンと、 前記シフト・レジスタの前記パラレル出力バスからシリ
    アル・データ値を受信するためのデータ論理回路であっ
    て、前記行/列アドレス信号に応答して選択するために
    動作可能であり、前記シリアル/パラレル・インタフェ
    ース論理回路の前記パラレル・データ・バス上で前記シ
    リアル・データ値を出力するデータ論理回路とをさらに
    含む、請求項1に記載のマイクロコントローラ・システ
    ム。
  7. 【請求項7】シリアル/パラレル・インタフェース論理
    回路と通信するための方法であって、 前記シリアル/パラレル・インタフェース論理回路を初
    期設定するステップと、 前記シリアル/パラレル・インタフェース論理回路に複
    数のアドレス・ビットを送信するステップであって、前
    記複数のアドレス・ビットの少なくとも一部分がアドレ
    ス空間内のアドレスを含むステップと、 読取り動作と書込み動作のうちの一方を選択するために
    コマンド値の第1のコマンド・ビットをアサートするス
    テップと、 前記シリアル/パラレル・インタフェース論理回路に前
    記コマンド値を送信するステップと、 前記第1のコマンド・ビットに応答して前記読取り動作
    と前記書込み動作のうちの一方を実行するステップと、 前記シリアル/パラレル・インタフェース論理回路にリ
    セット信号を送信するステップとを含む方法。
  8. 【請求項8】前記第1のコマンド・ビットが前記書込み
    動作を実行すべきであることを示し、前記書込み動作が
    前記シリアル/パラレル・インタフェース論理回路に少
    なくとも第1のデータ・ビットを書き込む、請求項7に
    記載の方法。
  9. 【請求項9】前記書込み動作がバイト増分で前記シリア
    ル/パラレル・インタフェース論理回路に第1のデータ
    値を書き込み、前記コマンド値がコマンド・バイトであ
    る、請求項8に記載の方法。
  10. 【請求項10】前記書込み動作を実行するステップが、 前記コマンド・バイトの第1のニブルに第1のデータ・
    バイトの第2のニブルをロードするステップと、 前記シリアル/パラレル・インタフェース論理回路に前
    記コマンド・バイトを書き込むステップと、 第1の出力バイトの第1のニブルに前記第1のデータ・
    バイトの第2のニブルをロードし、前記第1の出力バイ
    トの第2のニブルに第2のデータ・バイトの第1のニブ
    ルをロードするステップと、 前記シリアル/パラレル・インタフェース論理回路に前
    記第1の出力バイトを書き込むステップと、 第2の出力バイトの第1のニブルに前記第2のデータ・
    バイトの第2のニブルをロードし、前記第2の出力バイ
    トの第2のニブルに第3のデータ・バイトの第1のニブ
    ルをロードするステップと、 前記シリアル/パラレル・インタフェース論理回路に前
    記第2の出力バイトを書き込むステップと、 前記シリアル/パラレル・インタフェースに次の複数の
    出力バイトを書き込むステップであって、次の出力バイ
    トの第1のニブルに前のデータ・バイトの第2のニブル
    がロードされ、前記次の出力バイトの第2のニブルに次
    のデータ・バイトの第1のニブルがロードされるステッ
    プとをさらに含む、請求項9に記載の方法。
  11. 【請求項11】前記第1のコマンド・ビットが前記読取
    り動作を実行すべきであることを示し、前記読取り動作
    が、 前記シリアル/パラレル・インタフェース論理回路に前
    記コマンド値を送信するステップと、 前記シリアル/パラレル・インタフェース論理回路から
    データ・ビットを読み取るステップとをさらに含む、請
    求項7に記載の方法。
  12. 【請求項12】前記読取り動作が複数のバイト増分単位
    で前記シリアル/パラレル・インタフェース論理回路か
    らデータ値を読み取り、データ・ビットが前記複数のバ
    イト増分単位のうちの少なくとも1つにパックされてい
    る、請求項11に記載の方法。
  13. 【請求項13】シリアル/パラレル・インタフェース論
    理回路と通信するための方法であって、 前記シリアル/パラレル・インタフェース論理回路を初
    期設定するためにリセット信号をアサートするステップ
    と、 前記シリアル/パラレル・インタフェース論理回路にア
    ドレス・ビットを送信するステップであって、前記アド
    レス・ビットがアドレス値の一部分を含み、前記アドレ
    ス値がパラレル・バス・デバイス内の位置をアドレス指
    定するステップと、 前記シリアル/パラレル・インタフェース論理回路にコ
    マンド値を送信するステップであって、前記コマンド値
    の第1のビットが読取り動作と書込み動作のうちの一方
    を選択できるようになっているステップと、 前記シリアル/パラレル・インタフェース論理回路とデ
    ータ処理回路との間で複数のデータ・バイトを転送する
    ステップと、 前記シリアル/パラレル・インタフェース論理回路をリ
    セットするためにリセット信号をアサートするステップ
    とを含む方法。
  14. 【請求項14】前記アドレス・ビットを送信するステッ
    プが、バイト増分単位で複数のアドレス・ビットを送信
    する、請求項13に記載の方法。
  15. 【請求項15】バイト増分単位で複数の前記アドレス・
    ビットを送信するステップが、 前記シリアル/パラレル・インタフェース論理回路に第
    1のバイトを送信するステップであって、前記第1のバ
    イトが少なくとも3バイトの長さを有するアドレスの第
    1のバイトであるステップと、 前記シリアル/パラレル・インタフェース論理回路に第
    2のバイトを送信するステップであって、前記第2のバ
    イトが少なくとも3バイトの長さを有する前記アドレス
    の第2のバイトであるステップと、 前記シリアル/パラレル・インタフェース論理回路に第
    3のバイトを送信するステップであって、前記第3のバ
    イトが少なくとも3バイトの長さを有する前記アドレス
    の第3のバイトであるステップとをさらに含む、請求項
    14に記載の方法。
JP10091248A 1997-04-10 1998-04-03 マイクロコントローラ・システムおよびインタフェース論理回路と通信するための方法 Pending JPH10326254A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/827,744 US5812881A (en) 1997-04-10 1997-04-10 Handshake minimizing serial to parallel bus interface in a data processing system
US08/827744 1997-04-10

Publications (1)

Publication Number Publication Date
JPH10326254A true JPH10326254A (ja) 1998-12-08

Family

ID=25250034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10091248A Pending JPH10326254A (ja) 1997-04-10 1998-04-03 マイクロコントローラ・システムおよびインタフェース論理回路と通信するための方法

Country Status (8)

Country Link
US (2) US5812881A (ja)
JP (1) JPH10326254A (ja)
KR (1) KR100265141B1 (ja)
CN (1) CN1199116C (ja)
CA (1) CA2231362C (ja)
HK (1) HK1015050A1 (ja)
MY (1) MY129495A (ja)
SG (1) SG72796A1 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453334B1 (en) 1997-06-16 2002-09-17 Streamtheory, Inc. Method and apparatus to allow remotely located computer programs and/or data to be accessed on a local computer in a secure, time-limited manner, with persistent caching
US6119195A (en) * 1998-08-04 2000-09-12 Intel Corporation Virtualizing serial bus information point by address mapping via a parallel port
US6256687B1 (en) * 1998-08-04 2001-07-03 Intel Corporation Managing data flow between a serial bus device and a parallel port
US6191713B1 (en) * 1998-08-04 2001-02-20 Intel Corporation Conversion between serial bus cycles and parallel port commands using a state machine
US6260092B1 (en) * 1998-09-24 2001-07-10 Philips Semiconductors, Inc. Point to point or ring connectable bus bridge and an interface with method for enhancing link performance in a point to point connectable bus bridge system using the fiber channel
EP1121759B1 (en) * 1998-10-23 2005-07-20 Polycom, Inc. Serial-to-parallel/parallel-to-serial conversion engine
PL358677A1 (en) 2000-03-14 2004-08-09 James Hardie Research Pty Limited Fiber cement building materials with low density additives
CA2424377C (en) 2000-10-04 2013-07-09 Donald J. Merkley Fiber cement composite materials using sized cellulose fibers
CZ20031253A3 (cs) 2000-10-17 2004-12-15 James Hardie Research Pty Limited Způsob a zařízení pro snižování nečistot v celulózových vláknech určených pro výrobu cementových složených materiálů vyztužených vlákny
US8831995B2 (en) 2000-11-06 2014-09-09 Numecent Holdings, Inc. Optimized server for streamed applications
US7062567B2 (en) 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications
KR100391169B1 (ko) * 2000-11-25 2003-07-12 엘지전자 주식회사 프로세서와 외부장치간의 직렬 통신장치
US7969702B2 (en) * 2000-12-06 2011-06-28 Motorola Mobility, Inc. Intelligent power supply and cable system
US6816935B1 (en) 2001-03-02 2004-11-09 Advanced Micro Devices, Inc. Interrupt and status reporting structure and method for a timeslot bus
US7594026B1 (en) * 2001-04-25 2009-09-22 Zarlink Semiconductor (U.S.) Inc. Method and apparatus for multi-phy communication without an ATM bus master
WO2003046738A1 (en) * 2001-11-21 2003-06-05 Interdigital Technology Corporation Method employed by a base station for transferring data
CN1332328C (zh) * 2001-11-21 2007-08-15 美商内数位科技公司 具有混合并行/串行总线接口的基站
US7069464B2 (en) 2001-11-21 2006-06-27 Interdigital Technology Corporation Hybrid parallel/serial bus interface
CA2467841C (en) * 2001-11-21 2008-05-13 Interdigital Technology Corporation User equipment (ue) having a hybrid parallel/serial bus interface
US20030167347A1 (en) * 2002-02-11 2003-09-04 Combs James Lee Home network printer adapter
US6829663B1 (en) * 2002-08-21 2004-12-07 Adaptec, Inc. Method and apparatus for the synchronous control of a serial interface
US6993616B2 (en) * 2002-10-01 2006-01-31 Analog Devices, Inc. Read-write interface system and method that accesses a leading bit in advance of a read operation
US7993570B2 (en) 2002-10-07 2011-08-09 James Hardie Technology Limited Durable medium-density fibre cement composite
EP1587767B1 (en) 2003-01-09 2017-07-19 James Hardie Technology Limited Fiber cement composite materials using bleached cellulose fibers and their manufacturing method
US7246199B2 (en) * 2003-05-29 2007-07-17 Elantec Semiconductor, Inc. Double buffering of serial transfers
US20050002728A1 (en) * 2003-07-01 2005-01-06 Isaac Weiser Plastic connector for connecting parts and method therefor
DE10350388A1 (de) * 2003-10-28 2005-06-02 Micronas Gmbh Bussystem mit wenigen Steuerleitungen
CN1321382C (zh) * 2004-01-20 2007-06-13 宏达国际电子股份有限公司 串行/并行数据转换模块及相关计算机系统
WO2006055445A2 (en) 2004-11-13 2006-05-26 Stream Theory, Inc. Hybrid local/remote streaming
US7757295B1 (en) * 2005-02-09 2010-07-13 Lsi Corporation Methods and structure for serially controlled chip security
US9716609B2 (en) 2005-03-23 2017-07-25 Numecent Holdings, Inc. System and method for tracking changes to files in streaming applications
US8024523B2 (en) 2007-11-07 2011-09-20 Endeavors Technologies, Inc. Opportunistic block transmission with time constraints
US8261345B2 (en) 2006-10-23 2012-09-04 Endeavors Technologies, Inc. Rule-based application access management
EP2140556A1 (en) * 2007-05-03 2010-01-06 Icera Canada ULC System and method for transceiver control of peripheral components
US8892738B2 (en) 2007-11-07 2014-11-18 Numecent Holdings, Inc. Deriving component statistics for a stream enabled application
US8209927B2 (en) 2007-12-20 2012-07-03 James Hardie Technology Limited Structural fiber cement building materials
US7941570B2 (en) * 2008-02-14 2011-05-10 International Business Machines Corporation Bi-directional data transfer within a single I/O operation
US7840717B2 (en) * 2008-02-14 2010-11-23 International Business Machines Corporation Processing a variable length device command word at a control unit in an I/O processing system
US7827342B2 (en) * 2008-11-21 2010-11-02 Texas Instruments Incorporated Readback registers
DE102011007437A1 (de) 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen
US10389343B2 (en) * 2013-09-30 2019-08-20 Integrated Device Technology, Inc. High speed, low power, isolated buffer
US9529764B1 (en) * 2013-10-29 2016-12-27 Exelis, Inc. Near-to-eye display hot shoe communication line
US10110232B2 (en) 2015-06-30 2018-10-23 Taiwan Semiconductor Manufacturing Company, Ltd. Multiplexer and latch system
CN105205027B (zh) * 2015-09-14 2018-08-21 江苏金智科技股份有限公司 配电网终端的总线数据访问方法、装置及配电网终端设备
CN105242601B (zh) * 2015-10-09 2018-05-08 贵州智达科技有限责任公司 一种电暖炉串口多兼容双向通讯方法
CA3121110A1 (en) * 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry package
CN110046113B (zh) * 2019-05-06 2024-02-09 华峰测控技术(天津)有限责任公司 一种基于fpga的sdram控制系统及控制方法
CN112540944B (zh) * 2020-12-15 2022-11-25 安徽皖通邮电股份有限公司 并行总线协议以及基于协议实现板间数据交互的方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4447804A (en) * 1981-06-22 1984-05-08 The United States Of America As Represented By The Secretary Of The Navy Serial to parallel data conversion interface circuit
US4728930A (en) * 1987-06-30 1988-03-01 The United States Of America As Represented By The Secretary Of The Navy Parallel-to-serial-data interface-adaptor
US5086388A (en) * 1988-03-18 1992-02-04 Hitachi Maxell, Ltd. Semiconductor serial/parallel-parallel/serial file memory and storage system
US5005151A (en) * 1988-05-13 1991-04-02 Dallas Semiconductor Corporation Interleaved arbitration scheme for interfacing parallel and serial ports to a parallel system port
US5025257A (en) * 1988-06-10 1991-06-18 General Electric Company Increased performance of digital integrated circuits by processing with multiple-bit-width digits
US5016011A (en) * 1988-06-10 1991-05-14 General Electric Company Increased performance of digital integrated circuits by processing with multiple-bit-width digits
US5099481A (en) * 1989-02-28 1992-03-24 Integrated Device Technology, Inc. Registered RAM array with parallel and serial interface
US5457786A (en) * 1990-07-03 1995-10-10 Texas Instruments Incorporated Serial data interface with circular buffer
USH1472H (en) * 1992-09-11 1995-08-01 The United States Of America As Represented By The Secretary Of The Navy Computer interface adapter for supporting data communication between a parallel signal device and a serial signal device
US5602780A (en) * 1993-10-20 1997-02-11 Texas Instruments Incorporated Serial to parallel and parallel to serial architecture for a RAM based FIFO memory
FR2721416B1 (fr) * 1994-06-20 1996-08-30 Met Dispositif d'acheminement de cellules de données à mode de transfert asynchrone.

Also Published As

Publication number Publication date
CN1195821A (zh) 1998-10-14
CA2231362A1 (en) 1998-10-10
KR19980079678A (ko) 1998-11-25
SG72796A1 (en) 2000-05-23
US6122683A (en) 2000-09-19
CN1199116C (zh) 2005-04-27
US5812881A (en) 1998-09-22
HK1015050A1 (en) 1999-10-08
MY129495A (en) 2007-04-30
CA2231362C (en) 2002-02-05
KR100265141B1 (ko) 2000-10-02

Similar Documents

Publication Publication Date Title
JPH10326254A (ja) マイクロコントローラ・システムおよびインタフェース論理回路と通信するための方法
US8046527B2 (en) Apparatus and method for using a page buffer of a memory device as a temporary cache
US8122202B2 (en) Reduced pin count interface
KR101507194B1 (ko) 직렬 인터페이스 nand
US7617383B2 (en) Circular register arrays of a computer
JP4861030B2 (ja) 半導体装置
US20030079077A1 (en) Method and system for a compact flash memory controller
CN101226456A (zh) 一种用于序列周边接口的方法与系统
TWI534615B (zh) 串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法
JP2000030499A (ja) 汎用ポ―トをjtagポ―トとして利用可能なメモリチップ
US6742058B2 (en) Memory controller having a multiplexer selecting either second set of input signals or converted signals from first set of input signals by a bus mode input
US5923894A (en) Adaptable input/output pin control
EP0910014B1 (en) Program loading method and apparatus
US7069352B2 (en) Serial peripheral interface and related methods
US7249253B2 (en) Booting from a re-programmable memory on an unconfigured bus
JPH04302041A (ja) メモリーのアドレス指定デバイス
JPH09259068A (ja) 拡張入出力インターフェイス
US20200272588A1 (en) Programmable arbitrary sequence direct memory access controller for configuring multiple core independent peripherals
US7596651B2 (en) Multi-character adapter card
KR0147476B1 (ko) 컴퓨터의 입/출력 컨피그레이션 셋팅 시스템 및 방법
US6360295B1 (en) Serially loadable digital electronic memory and method of loading the same
WO2004051465A2 (en) Data processing device with microprocessor and with additional arithmetic unit and associated method
KR20090019806A (ko) 컴퓨터의 순환 레지스터 어레이
JPH10320267A (ja) メモリ制御装置及び方法
JPH11214520A (ja) 半導体集積回路

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20031203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040224

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040227

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040803