JP2002517820A - ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元 - Google Patents

ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元

Info

Publication number
JP2002517820A
JP2002517820A JP2000552593A JP2000552593A JP2002517820A JP 2002517820 A JP2002517820 A JP 2002517820A JP 2000552593 A JP2000552593 A JP 2000552593A JP 2000552593 A JP2000552593 A JP 2000552593A JP 2002517820 A JP2002517820 A JP 2002517820A
Authority
JP
Japan
Prior art keywords
data
dma
source
address
destination
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
JP2000552593A
Other languages
English (en)
Other versions
JP2002517820A5 (ja
Inventor
スピロ,デイビッド・エイ
ティパルドス,メラニー・ディ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2002517820A publication Critical patent/JP2002517820A/ja
Publication of JP2002517820A5 publication Critical patent/JP2002517820A5/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 マイクロコントローラ(M)はデータの圧縮および復元を行ない1つのメモリブロックから他のメモリブロックへの転送を行なうダイレクトメモリアクセスユニット(116)を含む。より具体的には、ワードサイズのデータが読出され、1バイトが破棄され、逐次のバイトサイズデータとして記憶される。これは、ステータス情報をデータとともに記憶する拡張された読出および拡張された書込非同期シリアルポート(148)に関連して用いられ得る。ステータス情報が処理されると、そのステータスは「圧縮」DMAを実行することによってストリッピングされる。

Description

【発明の詳細な説明】
【0001】
【技術分野】
1.発明の分野 この発明はマイクロコントローラに関し、より特定的には、シリアルインター
フェイスと関連して用いる改良されたダイレクトメモリアクセスコントローラを
提供するマイクロコントローラに関する。
【0002】
【背景技術】
統合された通信特徴を伴う特別化されたマイクロコントローラは通信適用例に
対し特に魅力的なものとなりつつある。マイクロコントローラ、または埋込まれ
たコントローラは、機能性を1つのモノリシックな半導体基板(つまりチップ)
に組合せることに独自に適している。さまざまな通信特徴を単一のチップ内に埋
込むことにより、通信マイクロコントローラは広い範囲の通信適用例をサポート
し得る。
【0003】 マイクロコントローラは何年もの間数多くの適用例において使用されてきた。
多数のこれらの適用例には、電子ネットワーク、たとえば、デジタル形式および
アナログ形式の両方における電話線、コンピュータネットワークならびにローカ
ルエリアネットワークおよびワイドエリアネットワークといった電子ネットワー
クを介しての通信が含まれる。通信適用例においては、マイクロコントローラは
、一般に、実行ユニットに加えて多数の統合された通信周辺装置を有する。これ
らは、低速シリアルポートおよび高速シリアルポート、ならびにより洗練された
通信周辺装置、たとえばユニバーサルシリアルバス(USB)インターフェイス
およびハイレベルデータリンクコントロール(HDLC)チャネルなどであり得
る。
【0004】 非同期シリアル通信ポートはマイクロコントローラにおける1つのそのような
ありふれた付加的な特徴である。非同期シリアルリンクにより、マイクロコント
ローラは、データのビットをシーケンスで送受信することにより他の装置とまた
はデータ線を介して通信する。この「非同期な」性質は、これらのポートがデー
タをクロックするのに別途のクロック信号を与えないことを意味する。代わりに
、データが送受信される速度は予め定められるかまたは予め交渉されなければな
らず、送信端および受信端の両方で独立に制御されなければならない。このデー
タ速度はボーレートとして公知なものであり、1ビット期間の逆数である。この
ボーレートは一般には多数の予め規定される速度のうちの1つであり、当業界内
において標準的なものである。このような速度には、1200、2400、48
00、9600、19.2K、28.8K、33.3Kおよび54Kボーおよび
高速データ転送レートが含まれる。
【0005】 シリアルデータ通信の普及で、数多くのマイクロコントローラには、データを
一度に1ビット送受信し得る1つ以上の非同期シリアルポート(ASP)が含ま
れる。このようなマイクロコントローラは、典型的には、割込信号を用いること
により、マイクロプロセッサコアに対し、ASPが処理を要求している旨を通知
する。ASPは、典型的には、データ単位がASPによって受取られそのデータ
単位がそのASPから外部メモリユニットに転送されることを必要とする場合、
ASPがデータ単位を送信し終え次の送信されるべきデータ単位が外部メモリユ
ニットからASPに転送されなければならない場合、またはエラーが生じた場合
に割込要求信号を出す。
【0006】 ASPはさまざまなデータ形式向けに構成され得るが、歴史的に見ると、7ま
たは8データビットが典型的な値である。数多くの9ビットシリアルプロトコル
がしかしながらマイクロコントローラを用いて開発されており、それらにはダイ
レクトメモリアクセスに関連して9ビット非同期シリアルプロトコルが含まれる
。このようなプロトコルは、John P. HansenおよびMelanie D. Typaldosによる
1997年2月4日提出の「ダイレクトメモリアクセスを用いて1つ以上の非同
期シリアルポートとの間でデータを転送するよう構成可能なマイクロコントロー
ラ(A MICROCONTROLLER WHICH IS CONFIGURABLE TO TRANSFER DATA TO AND FROM
ONE OR MORE ASYNCHRONOUS SERIAL PORTS USING DIRECT MEMORY ACCESS)」と
題される米国特許出願連続番号第 号、およびJohn P. Hans
en、Ronald W. StentsおよびMelanie D. Typaldosによる1997年2月4日提
出の「1つ以上の非同期シリアルポートとの間におけるDMAデータ転送中に9
ビットシリアルプロトコルをサポートするハードウェア特徴を有するマイクロコ
ントローラ(A MICROCONTROLLER HAVING HARDWARE FEATURES SUPPORTING 9-BIT
SERIAL PROTOCOLS DURING DMA DATA TRANSFERS TO AND FROM ONE OR MORE ASYNC
HRONOUS SERIAL PORTS)」と称される米国特許出願第 号に
記載されているが、それらは両方とも共通の譲受人に譲渡されここに引用により
援用するものである。これらのプロトコルは、California州SunnyvaleのAdvance
d Micro Devices Inc.によるAm186ES Users ManualおよびAm186ED Users Manual
にも記載されている。これらの適用例に記載されるとおりでは、後に論ずるよう
に、別途の制御ビットをセットまたはリセットすることによりデータの送受信中
に第9番目のデータビットとして働くようにする。このような9ビットプロトコ
ルを用いてDMAをサポートするために、その特定のビットがある値として受取
られると、割込が引起されることにより、第9番目のデータビットが実際にセッ
トされたことを示す。
【0007】
【発明の開示】
この発明に従うと、マイクロコントローラは、データの圧縮および復元を行な
うダイレクトメモリアクセス(DMA)コントローラを含む。具体的には、この
DMAコントローラは、調整され得かつ転送項目サイズからは独立したソース増
分値および宛先増分値を有する。ソースポインタおよび宛先ポインタはメモリ内
のブロックにセットされ得、ソースブロックには先頭バイトが破棄されることに
なるワードサイズのデータが含まれる。ソースは各転送後に2つ、宛先は1つ、
増分するようセットされ得る。次いで、DMAが実行されて、ソース内の各ワー
ドからバイトのデータを転送し、次のワードに増分し、宛先に対して次のバイト
を増分する。このようにして、1バイトのデータが、各ワードから、DMAを用
いながら、ほとんどプロセッサの介入なく、ストリッピングされる。
【0008】 これは、DMAに関連して拡張された読出をサポートする非同期シリアルポー
トを用いる際に特に有用である。データのシーケンスがそのシリアルポートから
読まれ得るが、各7または8ビット値はDMAコントローラによって記憶される
対応のステータスバイトを有している。これらのステータスバイトがアドレスビ
ットまたはエラービットに対して調べられると、DMAは必要とされないデータ
バイトを「ストリッピング」するようにプログラムされ得る。
【0009】 同様に、DMA転送の実行前に、バイトレベルのデータがワードに拡張され得
、拡張された書込バイトがデータの前に付加されて、DMAコントローラにより
、拡張された書込をサポートする非同期シリアルポートへの転送が行なわれる。
【0010】
【発明を実施するためのモード】
関連出願 以下の関連出願をここに引用により援用する: Melanie D. TypaldosおよびPatrick E. Maupinによる1997年8月7日提出
の「DMAを用いる非同期シリアル線を介する高速データレートをサポートする
方法および装置(A METHOD AND APPARATUS FOR SUPPORTING HIGH DATA RATES OV
ER AN ASYNCHRONOUS SERIAL LINE USING DMA)」と称される米国特許出願連続番
号第08/920,930号。
【0011】 Melanie D. Typaldosにより同時提出された「レジスタ単位でのアドレスマッ
チングのために用いられるユアートキャラクタマッチング(UART CHARACTER MAT
CHING USED FOR ADDRESS MATCHING ON A REGISTER-BY-REGISTER BASIS)」と称
される米国特許出願代理人番号第A98201US号。
【0012】 図1Aを参照して、この発明に従って実施される典型的なマイクロコントロー
ラMのブロック図を示す。このようなマイクロコントローラは好ましくは単一の
モノリシック集積回路上において実施される。
【0013】 このマイクロコントローラMは、好ましくは、実行ユニット124とシステム
周辺装置174とメモリ周辺装置176とシリアル通信周辺装置172とを結合
する内部バス100を含む。実行ユニット124はこの開示される実施例におい
てはCalifornia州SunnyvaleのAdvanced Micro Devices Inc.からのさまざまなマ
イクロコントローラにおいて実現されるAM186命令セットと互換性がある。
さまざまな他の実行ユニットをこの実行ユニット124の代わりに用いてもよい
。システム周辺装置174には、マスク不可割込(NMI)、マイクロコントロ
ーラリセットおよびシステムリセットを発生させるウォッチドッグタイマ(WD
T)104が含まれる。15のチャネルの使用を介して36のマスク可能割込ソ
ースをサポートするための割込コントローラ108もシステム周辺装置として設
けられる。1つの開示されるシステム周辺装置は3チャネルタイマ制御ユニット
112である。このタイマ制御ユニット112は3つの16ビットプログラマブ
ルタイマを含む。もう1つのシステム周辺装置は4つのチャネル0〜3を伴う汎
用ダイレクトメモリアクセス(DMA)ユニット116である。このマイクロコ
ントローラMのプログラマブルI/Oユニット132はユーザプログラマブル入
力/出力信号(PIOs)をサポートする。この開示される実施例では、48の
PIOsが設けられる。
【0014】 この開示されるマイクロコントローラのメモリ周辺装置176には、DRAM
コントローラ170と、RAMまたはROMへのグルーレスインターフェイス1
68と、チップセレクトユニット126とが含まれる。この開示される実施例で
は、DRAMコントローラ170はマイクロコントローラMに十分に統合される
。さらに、この開示される実施例では、チップセレクトユニット126は、メモ
リ装置とともに用いるための6つのチップセレクト出力と、周辺装置とともに用
いるための8つのチップセレクト出力とを与える。
【0015】 万能非同期受信機/送信機(UART)136として実施される低速シリアル
ポートはシリアル通信周辺装置として設けられる。この低速UART136は、
典型的には、当業界において公知である標準的な16550UARTと互換性が
ある。この開示される実施例におけるもう1つのシリアル通信周辺装置は同期シ
リアルインターフェイス(SSI)140である。好ましくはこのマイクロコン
トローラMは標準的な同期シリアルチャネルである同期シリアルインタフェース
140においてマスタとして働く。
【0016】 マイクロコントローラMは、この開示される実施例においては、通信環境に対
し特に十分に好適とされる。この目的のため、マイクロコントローラMのシリア
ル通信周辺装置172には多数の高速通信コントローラが含まれており、ハイレ
ベルデータリンクコントロール(HDLC)コントローラ144、ユニバーサル
シリアルバス(USB)コントローラ146、および高速シリアルポート(HS
UART)148が含まれる。この開示されるHDLCコントローラ144は4
つのHDLCチャネル164を与える。これらHDLCチャネル164およびU
SBコントローラ146は「SmartDMA」ユニット150によって書込および
読出が行われ得るが、このユニットはDMAチャネルの対を介してアクセスされ
る連鎖されたバッファを可能にするものである。SmartDMAユニット150は
過度な実行ユニット124の介入を伴うことなく大きな割合のパケット化された
転送を斟酌する。このSmartDMAユニット150は好ましくは4つのSmartDM
AコントローラSmartDMA0〜3からなり、それらの各々はDMAチャネルの
対からなる。
【0017】 HSUART148はマイクロコントローラMの外部の装置に対しバスを介し
て非同期シリアルリンクを形成するよう働く。この非同期な性質は、HSUAR
T148がデータをクロックするのに別途のクロック信号を与えないことを示す
。その代わりに、データの送受信速度は予め定められるかまたは自動ボー処理を
介して決定され独立して送信端および受信端で制御されなければならない。この
データ速度はボーレートとして公知である。マイクロコントローラMは複数のH
SUART148を含んでもよいことを理解されたい。
【0018】 この開示されるHDLCコントローラ144はさらにインターフェイスマルチ
プレクサ162を含む。このマルチプレクサ162は4つのHDLCチャネル1
64と4つの時間スロット割当器(TSA)166と多数の外部バスとを結合す
る。具体的には、時間スロット割当器を用いてるかまたは他の態様で、HDLC
チャネル164は、パルスコード変調(PCM)ハイウェイ、汎用回路インター
フェイス(GCI)、ISDN志向型モジュラーインターフェイスリビジョン2
(IOM−2)シリアルバス、データ搬送装置(DCE)シリアルインターフェ
イス、ならびに、パケット化された通信を頻繁に用いる他の汎用インターフェイ
スおよび特化インターフェイスに選択的に結合され得る。さらに、このHDLC
チャネル164は、HDLC、SDLC、平衡リンクアクセス手順(LAPB)
、Dチャネル上リンクアクセス手順(LAPD)およびPPPをサポートし、上
で注記したように、それらの各々は、等時性または等時型通信を行なうためにシ
リアルフレームの一部を各HDLCに割当てる独立した時間スロット割当器16
6を含む。
【0019】 図1Bを参照して、この発明に従って実施されるマイクロコントローラMの例
示的ピン配置図を示す。図示されているのは、クロック102に対するクロック
ピン配置と、バスインターフェイスユニット120に対するアドレスおよびアド
レス/データバスピン配置と、これも概してバスインターフェイスユニット12
0に対するバスステータスおよび制御ピン配置と、タイマ制御ユニット112に
結合されるタイマ制御ピン配置と、USBコントローラ146に対するUSB制
御および送受信機制御ピン配置と、同期シリアルインターフェイス140に対す
る同期シリアルコントローラピン配置と、プログラマブルI/Oユニット132
2対するプログラマブルI/Oピン配置と、リセット制御ピン配置と、チップセ
レクトユニット126およびバスインターフェイスユニット120の両方に結合
されるメモリおよび周辺制御ピン配置と、汎用DMAユニット116およびSmar
tDMAユニット150に対するDMA制御ピン配置と、HDLCコントローラ
144に結合するためのHDLCチャネル/DCEインターフェイス/PCMイ
ンターフェイスピン配置と、低速UART136に対するUARTピン配置と、
HSUART148に対する高速UARTピン配置とである。これらのピン配置
はすべて当然のことながら例示的なものであり、幅広い範囲のさまざまな他の機
能ユニットおよび関連のピン配置がこの発明の精神を逸脱することなく用いられ
得る。たとえば、図1Aからの多数の通信および汎用周辺装置の両方がこの発明
の精神から逸脱することなく除去または追加され得る。
【0020】 この発明に従う技術および回路は幅広い範囲のさまざまなマイクロコントロー
ラおよび他の同様の環境に適用され得る。「マイクロコントローラ」という用語
それ自体は業界においてさまざまな定義を有する。一部の企業は、それがオンボ
ードメモリを有さない場合、付加的な特徴(たとえばI/Oなど)を伴うプロセ
ッサコアを「マイクロプロセッサ」として称し、デジタル信号プロセッサ(DS
P)が現在特別なコントローラ機能および汎用コントローラ機能の両方に対し用
いられる。ここで用いられるとおりでは、「マイクロコントローラ」という用語
はすべての製品を包含し、一般には単一のモノリシック集積回路上ですべて実施
される追加された機能性を伴う実行ユニットを意味する。
【0021】 図2を参照して、さらに示されるのはDMAユニット116およびここでは非
同期シリアルポート(ASP)148として記載される高速UART148であ
る。これは、「DMAを用いて非同期シリアル線を介して高速データレートをサ
ポートするための方法および装置(A METHOD AND APPARATUS FOR SUPPORTING HI
GH DATA RATES OVER AN ASYNCHRONOUS SERIAL LINE USING DMA)」と題される先
に援用された出願にさらに記載されている。ASP148は、「アドレスビット
」を余分のシリアルビットとして用いる非同期シリアルプロトコルをサポートし
得る。
【0022】 図3を参照して、そのようなプロトコルを用いる非同期シリアル伝送が示され
る。スタートビット200の後、ASP148は7または8のデータビット20
2を送信または受信する。これらは、非同期プロトコルにおいて、低次ビットが
最初に送られる標準データビットである。7または8のデータビット202の後
、しかしながら、ASP148によりサポートされるアドレスビットプロトコル
がオプションとしてのアドレスビットAB204を可能にする。このアドレスビ
ットは典型的にはASP148によって送信または受信される8番目または9番
目のビットのいずれかであり、典型的にはたとえば1つのマスタ装置が複数のス
レーブ装置を制御することを必要とするマルチドロップ適用例のような適用例に
おいて用いられる。アドレスビットと称されるが、このビットは、フローおよび
他の制御のためにスレーブ装置内で割込を効果的に引起す拡張されたビットとし
て働き得る。このアドレスビットプロトコルは当該技術において公知である。
【0023】 オプションとしてのアドレスビットAB204の後、次いで、オプションとし
てのパリティビットPB206にストップビットST208が続き、次いで、オ
プションとしての第2のストップビットST210が続く。
【0024】 図2に戻って、DMAユニット116およびASP148は、図3に示される
ようにアドレスビットAB204を用いるデータを送り受取る際に役立つであろ
うこの発明に従う付加的な特徴を有する。これらの特徴は、ここではDMAレジ
スタ212およびASPレジスタ214として示される、DMAユニット116
およびASP148内のレジスタの組を調べることによって最もよく理解される
。DMAレジスタ212は図6A〜図6Eを参照してさらに詳細に論じられ、A
SPレジスタ214は図7A〜図7Gを参照してさらに論じられる。
【0025】 バイトからワードへの拡張およびワードからバイトへの圧縮DMAユニット この発明に従うマイクロコントローラMの1つの局面では、DMAユニット1
16は2つの異なるデータサイズを有するソースと宛先との間における転送中に
データを圧縮し復元し得る。たとえば、DMAユニット116はソースメモリブ
ロックからバイト単位でデータを読出し、読出された各バイトのデータを連続す
るワードの低(または高)次バイトとして宛先メモリブロックに書込み得る。逆
に、このDMAユニットは連続するワードの低次バイトをソースブロックから読
出して、次いでそれらの読出されたバイトを逐次宛先ブロックに記憶し得る。こ
のことは、ASP148に関連する場合において、それが拡張された読出および
書込モードにおいて用いられる際に特に有用である。以下に図7A〜図7Gを参
照してさらに論じられるが、同時係属出願「DMAを用いて非同期シリアル線を
介して高速データレートをサポートするための方法および装置(A METHOD AND A
PPARATUS FOR SUPPORTING HIGH DATA RATES OVER AN ASYNCHRONOUS SERIAL LINE
USING DMA)」において記載されるように、ASP148は7または8のビット
データ単位をシリアル線を介して読込得るが、そのデータを、16ビットワード
に、そのI/O読出に対応するアドレスビットおよびステータスビットの両方と
ともに記憶する。これらは図7Gにおいてさらに示され、後に論じられるが、ま
とめると、パリティエラー、オーバーランエラー、フレーム付けエラー、キャラ
クタマッチ、ブレーク、アドレスビット、および他のステータスが、実際に受取
られた7または8ビットのデータとともに記憶され得る。これがDMAを用いて
実行されると、それによって、実行ユニット124は戻って、受取られたデータ
を調べることにより、エラーが生じたかもしれない場所またはアドレスビットが
セットされたかもしれない場所を判断し、それに従ってデータを処理する。
【0026】 しかしながら、一旦エラーが調べられアドレスビットが処理されると、典型的
にはその受取られたデータはもはやその関連付けられるステータスを必要としな
い。つまり、実行ユニット124は、次いで、データをワードとしての代わりに
バイト内に7または8ビットデータとして記憶し得る。
【0027】 DMAユニット116が特に有利なのはこの点である。図4を参照して、示さ
れるのは、論じられたASPユニット148からのデータを処理するDMAユニ
ット116である。DMAユニット116はこのデータをメモリ216において
一連のデータおよびステータスバイトとしてブロック218内に記憶し、これら
は、DATA1、STATUS1、DATA2、STATUS2などとして示さ
れる。したがって、各7または8ビットデータ値DATA1〜DATAnはその
関連付けられるステータスバイトSTATUS1〜STATUSnと組合せられ
ると16ビットを占める。
【0028】 DMAユニット116は、しかしながら、次いで、実行ユニット124によっ
てプログラミングされることによりブロック218からメモリ216内の別のブ
ロック220に転送を実行し得るが、このブロックは単にある数の逐次データ値
DATA1〜DATAnをそれらの関連のステータスなしで含むにすぎない。D
MAユニット116はまず第1のデータ項目DATA1を読出し、ブロック21
8から次いでそれをブロック220内の宛先位置DATA1に書込む。次いで、
しかしながら、DMAユニット116はブロック220内の宛先アドレスを1だ
け増分するが、同時にブロック218内のソースアドレスは2だけ増分する。し
たがって、ブロック218から読出される次のデータ項目はDATA2(STA
TUS1は飛ばされる)であり、これが次いで第1のデータ項目DATA1の直
後にバイトとして宛先ブロック220に書込まれる。これが繰返されることによ
り、元の16ビットデータおよびステータス値が単に8ビットデータ値となるよ
うにデータを圧縮する。
【0029】 図5に戻って、逆が、ASP148による外部データの書込に対して示される
。ここでは、ソースデータブロック222には、マイクロコントローラMが外部
非同期シリアル線に送るべきデータが含まれる。このデータは、メモリのバイト
内において7または8ビットを各々が占める4つのデータ項目DATA4を含む
。DMAユニット116は、ブロック222においてこれらデータ項目のうち最
初の項目DATA1を読出し次いでそのデータ項目DATA1を宛先ブロック2
24に書込むようプログラムされる。次いで、データブロック222内のソース
アドレスが増分されるが、宛先ブロック224内の宛先アドレスは2だけ増分さ
れる。したがって、次のデータ項目DATA2がソースブロック222から読出
されるが、2バイトあとに宛先ブロック224に書込まれる。
【0030】 そのデータが実際に送信される前において、実行ユニット124によって、宛
先ブロック224内においてデータ項目DATA1〜DATA4の介入バイトに
記憶されるアドレスビットをクリアすることが望ましいかもしれない。ここにお
いては、3つのアドレスビット226がクリアされて示され、1つのアドレスビ
ット228がセットされて示される。
【0031】 DMAユニット116は、次いで、ASP148の拡張された書込能力を用い
てASP148に対しワードサイズの書込を実行するようプログラムされる。高
次バイトの低次ビットを次いでデータ送信のためのアドレスビットとして用い、
その結果4つの例示されるデータ項目230、232、234および236が与
えられ、それらのうち最初のデータ項目はそのアドレスビットがセットされ残り
のデータ項目はセットされていない。
【0032】 DMAユニット116は2つ以上のDMAチャネルを含んでもよく、それらD
MAチャネルは循環バッファとして実施され得る。さらに、図4の2つのチャネ
ルを、それらのうち1つのチャネルがASP148から拡張されたデータを読出
し次いでそれをバッファ218として実施される循環バッファに書込み、次いで
第2のチャネルがバッファ218から読出を行なってデータを宛先バッファ22
0に圧縮するように実施することも考えられ得る。
【0033】 DMAユニット116によってデータの圧縮および復元を行なうことにより、
実行ユニット124は、DMAユニット116がASP148にデータを送りま
たはASP148からデータを受取る前にデータから不要なステータス情報をス
トリッピングしたりまたはデータに不要なステータス情報を追加するよう必要と
されるオーバーヘッドを処理することから解放される。
【0034】 図6A〜図6Eを参照して、この発明に従って圧縮および復元を実施するため
に用いられるDMAレジスタ212の5つが示される。図6Aでは、汎用DMA
チャネル「x」制御レジスタGDxCON0 300が示される(4つのチャネ
ルの場合、「x」は1から4となることに注意されたい)。
【0035】 GDxCON0レジスタ300は多数の標準汎用DMA制御ビット、たとえば
、スタート/ストップビットST302、オートスタートビットAST304、
ターミナルカウントストップビットTC306、割込可能化ビットINT308
、優先順位フィールドP310、およびDMA要求ソースフィールドDSEL3
12などを含む。
【0036】 GDxCON0レジスタ300はさらに転送サイズビットTS314も含む。
このビットは、チャネルが1回につきデータのバイト(TS=0または1’b0
)を転送するかまたは1回につきワード(TS=1’b1)を転送するかを選択
する。この発明の圧縮機能および復元機能では、TSビット314は概してバイ
トサイズ転送に対しては0にセットされる。
【0037】 図6Bを参照して、第2の汎用DMA制御レジスタGDxCON1 316が
示される。このGDxCON1レジスタ316も多数の標準DMAビット、たと
えば、ソースアドレス空間セレクトビットSM/*IO318、ソースアドレス
ラップフィールドSAW320、宛先アドレス空間セレクトビットDM/*IO
322、および宛先アドレスラップフィールドDAW324などを含む。SM/ * IOビット318およびDM/*IOビット322はソースおよび宛先空間がメ
モリであるかまたはI/Oであるかを選択する。
【0038】 ソースまたは宛先アドレス空間がメモリ内になるとき、一般には、データが送
られるかまたは受取られた後にソースおよび宛先アドレスを増分または減分する
のが望ましい。この目的のため、2つのフィールド、ソース増分フィールドSI
NC326と宛先増分フィールドDINC328とが設けられる。これらは、各
転送後にソースおよび宛先ポインタに付加される4ビットの2の補数値である。
たとえば、SINCフィールド326またはDINCフィールド328が0であ
る場合、増分は全くない。それらが2進値の1に等しい場合または4’b000
1である場合には、それらのフィールドは1だけ増分される。それらが4’b0
010に等しい場合には、それらのポインタは2バイトだけ増分され、4’b0
011に等しい場合には3バイトだけ増分される、というようになる。負の値に
対しては逆が真である。たとえば、2の補数形式を用いて、SINCフィールド
326またはDINCフィールド328が4’b1111に等しい場合には、ソ
ースまたは宛先アドレスは転送後に1だけ減分される。
【0039】 別個のSINCフィールド326およびDINCフィールド328を与え、さ
らに、増分量または減分量がデータ項目のサイズに依存しないことにより、DM
Aを用いたデータ圧縮および復元は影響を受ける。これについては以下に再び図
4および図5を参照して論ずる。
【0040】 図6Cおよび図6Dを参照して、ソースアドレスレジスタ330および宛先ア
ドレスレジスタ332を示す。最後に、図6Eを参照して転送カウントレジスタ
334を示す。これらはすべてDMA設計に関連して十分理解されるものである
【0041】 図4および図5に戻って、および図6A〜図6Eに示されるレジスタが与えら
れると、圧縮に対するDMAユニット116のプログラミングおよび動作がより
よく理解される。図4において、ASP148と宛先ブロック218との間にお
ける転送に対して、DMAユニット116は値の集合336でプログラムされる
。具体的には、ソースはI/O位置からとなるようセットされ、各転送後に0だ
け増分するよう(I/O位置に対して適当である)セットされ、宛先はメモリに
セットされ各転送後に2だけ増分するようセットされる。さらに、データサイズ
はワードにセットされる。これによって、各転送はASPからの16ビットの拡
張されたシリアル読出値となり、宛先ブロック218にワード単位で記憶される
【0042】 圧縮機能に対しては、DMAユニット116は値の集合338でプログラムさ
れる。具体的には、ソースはメモリ内においてセットされ(ソースアドレス33
0はソースブロック218のスタートにセットされる)、各転送後に2だけ増分
するようセットされる。宛先もメモリ内にセットされるが、宛先アドレスは各転
送後に1だけ増分される。最後に、転送サイズは1バイトに対してセットされる
。これは、1バイトがソースブロック218から読出され宛先ブロック220に
DATA1として書込まれることを意味する。ソースアドレス330は、しかし
ながら、次いで2だけ増分され、その一方、宛先アドレス332は1だけ増分さ
れるにすぎない。次いで、データの第2のバイトDATA2がソースブロック2
18から読出されDATA1の直後に宛先ブロック220に書込まれる。したが
って、STATUS1における不要なステータス情報が飛ばされる。
【0043】 宛先ブロック220はソースブロック228と実際には重複するようプログラ
ムされることもあり得、なぜならば、データがソースブロック218から読出さ
れた後それはもはや必要ではないからである。したがって、ソースバッファは文
字どおり宛先バッファとして用いられ、メモリ空間を節約し得る。
【0044】 図5を参照して、DMAユニット116の拡張能力はプログラムされた値の集
合340によって示される。ここにおいて、8ビットデータのソースブロック2
22は、メモリからメモリへの転送を行なうようDMAユニット116をセット
すること、SINCフィールド326を1の値にセットすること、しかしながら
DINCフィールド328は2の値にセットすることによって拡張される。転送
サイズビットTS314は0にセットされ、したがってデータはバイト単位で転
送される。このプログラミングで、データバイトはソースブロック222から読
出されて宛先ブロック224に書込まれるが、ソースブロック222から逐次読
出される次のデータバイトは2バイト後に宛先ブロック224に書込まれる。実
行ユニット124は、次いで、アドレスビットABを宛先ブロック224におい
て適切にセットまたはリセットし、ASP148への第2のDMA転送を始める
【0045】 ここにおいて、プログラムされた値の集合342が用いられるが、これは、メ
モリにおけるソースおよびI/O空間における宛先を可能にし、2のソース増分
SINC326値を可能にし宛先増分値はない。さらに、転送サイズビットTS
314はワード転送に対して1にセットされる。この結果、拡張されたデータは
ASP148に書込まれ、したがって、それはそのシリアルデータの送信におけ
る9番目のアドレスビットを制御し得る。
【0046】 したがって、転送されている最中のデータのサイズからは独立してソース増分
および宛先増分の独立した制御性を与えることにより、メモリの圧縮および復元
が影響を受け得る。これは、ワードデータをバイトデータに圧縮するかまたはそ
の逆を行なうことが望ましいさまざまな他の機能に対しても用いられ得る。
【0047】 アドレスビットを用いたキャラクタマッチング 図7A〜図7Gを参照して、この発明に従って別の特徴を実施するASPレジ
スタ214のいくつかを示す。図7Aは、受取られたデータのキャラクタのマッ
チングのためにASP148によって用いられる6つのキャラクタマッチバイト
を示す。具体的には、3つのレジスタHSPM0 400、HSPM1 402
およびHSPM2 404に6つのキャラクタマッチ値MCHR0 406〜M
CHR5 415が含まれる。
【0048】 これらバイトサイズ値MCHR0 406〜MCHR5 415の動作は、非
同期シリアルポート418受信レジスタHSPRXD416を示す図7Gを参照
するとより良く理解される。このレジスタには7または8ビット値受信データR
DATA418が含まれるが、8つのステータスビット420〜434も含まれ
る。
【0049】 歴史的には、受信データRDATA418のみがマッチキャラクタ値MCHR
0 406〜MCHR5 415と比較される。RDATA値418がそれらマ
ッチングされたキャラクタ値の1つに一致すると、図7Dを参照して下に示され
るようにステータスビットがステータスレジスタにおいてセットされ、適切なマ
スク値がセットされる場合には、図7Eを参照して下に示されるように、割込が
発生する。歴史的には、アドレスビットAB204はHSPRXDレジスタ41
6の拡張されたデータ内において第1のビットとして反映され(ここではアドレ
スビット値AB434)、さらに、図7Dを参照して以下の論じられるステータ
スレジスタ内に見出されることもあり得る。このアドレスビットは、しかしなが
ら、キャラクタマッチングされた値MCHR0 406〜MCHR5 415の
1つとマッチングするようには用いられない。
【0050】 この発明に従うと、セットされた場合にアドレスビット値AB434がRDA
TA値RDATA418に加えてマッチングされるように付加的なビットが与え
られる。
【0051】 このことは、図7Cを参照して、高速シリアルポート制御レジスタHP CO
N0 436と関連させるとより良く理解される。このレジスタは、部分的に、
アドレスビットが用いられるか(ABENビット442によって示される)、パ
リティビットPB206が用いられるか(パリティ可能化ビットPEN440で
示される)、7または8ビットデータが用いられしたがってビット202のD7
ビットが用いられるか(可能化ビットD7 444で示される)、および第2の
ストップビットST2 210が用いられるか(第2のストップビット可能化ビ
ットSTP2 446で示される)を決定するよう構成設定を与える。データが
書込まれるとき、アドレスビットセットまたはリセットビットAB438は送信
されたアドレスビットをセットまたはリセットするが、これは長いアドレスビッ
ト通信が可能化されるためである(ABENビット442によって制御される)
【0052】 これらのビット438〜446のすべてが、送信されたフレームの長さに影響
を及ぼす。この開示される実施例では、および歴史的には、しかしながら、受信
データ418が7ビットデータ(D7ビット444偽)でありアドレスビットが
可能化される(ABENビット442が真である)場合であっても、RDATA
418はそのアドレスビットは含まないであろう。その代わり、それは依然とし
てHSPRXDレジスタ416の高次バイトにアドレスビットAB434として
記憶される。したがって、そのビットはマッチキャラクタMCHR0 406〜
MCHR5 415のいずれとも決してマッチングされない。
【0053】 この発明に従うと、しかしながら、付加的なマッチキャラクタアドレスビット
MATCHビットが第2の制御レジスタHSPCON1 448に与えられる。
具体的には、このレジスタ448にはマッチ可能化ビットMEN405が含まれ
、それが真であるときにはMCHR0 406〜MCHR5 415のキャラク
タマッチングを可能化する。この発明に従うと、しかしながら、付加的なキャラ
クタマッチングビットが与えられる。アドレスビットが制御レジスタHSPCO
N0 436のABENビット442によって可能化されると、マッチアドレス
ビットMAB2 452、MAB1 454およびMAB0 456は、効果的
に、3つのマッチレジスタHSPM0 400〜HSPM2 404に対するア
ドレスビットマッチングビットになる。
【0054】 たとえば、MAB2ビット452が0でありABENビット442が1である
とき、受信されたキャラクタはHSPM2レジスタ404内のキャラクタにマッ
チングするようそのアドレスビットAB204がクリアでなければならない。M
AB2ビット452がセットされABENビット442が真であるとき、受信さ
れたキャラクタはHSPM2レジスタ404内のキャラクタにマッチングするよ
うそのアドレスビットAB204がセットされなければならない。MAB1ビッ
ト454およびMAB0ビット456も同様にHSPM1レジスタ402および
HSPM0レジスタ400に対応する。
【0055】 したがって、HSPCON1レジスタ448におけるこれら付加的なビットは
HSPM0レジスタ400〜HSPM2レジスタ404のうち対応のものに対す
るアドレスマッチングを可能にする。ASP148のセットアップは、レジスタ
HSPM0 404〜HSPM2 444のうちの1つがキャラクタマッチング
に対してセットされ他の2つはアドレスマッチングに対してセットされる場合に
行なわれるということもあり得る。
【0056】 HSPCON1レジスタ448は拡張された書込ビット458および拡張され
た読出ビット460をさらに含み、それらは真のときには、16ビットデータが
送信レジスタHSPTXD462(図7F参照)から読出されるかまたは受信レ
ジスタHSPRXD416(図7G参照)において受信される。これらの値が不
能化されると、8ビットデータのみがそれらのレジスタに記憶され、アドレスビ
ットおよびマッチステータスはステータスレジスタHPSTAT464(図7D
)を読むことによって判断されることのみが可能である。ステータスレジスタ4
64は、特に、入来データがHSPM0〜HSPM2レジスタ400〜402の
1つへの(適切な)キャラクタまたはアドレスマッチである場合に真にセットさ
れるマッチビットMATCH466と、入来データのアドレスビットがセットさ
れている場合に真にセットされるアドレスビットAB468とを含む。
【0057】 割込マスクレジスタHSPIMSK470は対応するようにマッチビットMA
TCH466およびアドレスAB468を割込として伝える。
【0058】 図8を参照して、この発明に従うアドレスビットマッチングが用いられ得るマ
ルチドロップシステムが示される。ホストシステム500はシリアルデータを複
数のマルチドロップ周辺装置502、504および506に送信する。これら周
辺装置の各々はそれ自身のマイクロコントローラM 508、510および51
2を含む。これらの各々のプログラミングは、それが周辺装置502、504お
よび506に対し独自のアドレス1、2および3を有するようになされ得る。各
々は、周辺装置502、504および506のうちの1つがアドレスマッチを有
するまで受信キャラクタがそれら周辺装置の各々によって効果的にダンピングさ
れる休止モードに置かれ得る。たとえば、周辺装置502のマイクロコントロー
ラ508のプログラミングは、MCHR0バイト406が周辺装置502に割当
てられる「1」アドレスを含む適切なアドレス指定情報を含むようになされるこ
とも考えられ、その関連のアドレスマッチングビットMAB0 456はアドレ
スビット可能化ABEN442とともにセットされるであろう。このようにして
、ホスト500が非同期データのフレームを適切なアドレスマッチングMCHR
0 406とともに周辺装置502に送ると、そのデータはMCHR0 406
にあるキャラクタとマッチングし、セットされているアドレスはMAB0 45
6ビットにマッチングするであろう。したがって、マッチビットMATCH46
6はHPSTATレジスタ464においてセットされ、マッチ割込のセットがH
SPIMSKレジスタ470においてパスするよう行なわれると仮定すると、割
込は、周辺装置502を起こして次のデータを処理するようセットするように実
行ユニット124に送られるであろう。
【0059】 したがって、キャラクタマッチングおよびアドレスマッチングの両方を独立し
てマッチアドレスレジスタのうちあるものに対して与えると、この発明に従う非
同期シリアルポートはマッチング可能キャラクタデータに基づくデータフレーム
の始めおよび終わりを検出するのみならず、さらにアドレスビットのマッチング
によっていつ特定のマイクロコントローラがマルチドロップシステムにおいてア
ドレス指定されているかも検出し得る。これによって、マイクロコントローラM
の適用例において追加された柔軟性が可能となる。
【0060】 この発明に従う技術を非同期通信ポートに関連づけて記載してきたが、それら
の技術は圧縮および復元ならびにアドレスマッチングのために同期通信ポートと
ともにも同様に用いられ得る。
【0061】 この発明の前述の開示および記載は例示的なものであり、記載される装置およ
び構成ならびに動作方法の詳細におけるさまざまな変更がこの発明の精神から逸
脱することなく行なわれてもよい。
【図面の簡単な説明】
【図1A】 この発明に従って実施される典型的なマイクロコントローラの
ブロック図である。
【図1B】 図1Aのマイクロコントローラに対するピン配置の概略ピン配
置図である。
【図2】 図1Aおよび図1Bのマイクロコントローラに対する非同期シリ
アルポートとDMAコントローラとそれらのレジスタとの間の関係を示すブロッ
ク図である。
【図3】 この発明に従う非同期シリアルフレーム内におけるアドレスビッ
トの使用を示すタイミング図である。
【図4】 この発明に従うDMAユニットデータ圧縮を示す図である。
【図5】 この発明に従うDMAユニットデータ拡張を示す図である。
【図6A】 この発明に従うDMAユニットにおけるレジスタ内容を示すブ
ロック図である。
【図6B】 この発明に従うDMAユニットにおけるレジスタ内容を示すブ
ロック図である。
【図6C】 この発明に従うDMAユニットにおけるレジスタ内容を示すブ
ロック図である。
【図6D】 この発明に従うDMAユニットにおけるレジスタ内容を示すブ
ロック図である。
【図6E】 この発明に従うDMAユニットにおけるレジスタ内容を示すブ
ロック図である。
【図7A】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7B】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7C】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7D】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7E】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7F】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図7G】 この発明に従う非同期シリアルポートにおけるレジスタ内容を
示すブロック図である。
【図8】 マルチドロップ非同期プロトコルの実現例を示すブロック図であ
る。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成12年6月14日(2000.6.14)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0006
【補正方法】変更
【補正内容】
【0006】 ASPはさまざまなデータ形式向けに構成され得るが、歴史的に見ると、7ま
たは8データビットが典型的な値である。数多くの9ビットシリアルプロトコル
がしかしながらマイクロコントローラを用いて開発されており、それらにはダイ
レクトメモリアクセス(DMA)に関連して9ビット非同期シリアルプロトコル
が含まれる。これらのプロトコルは、たとえば、California州SunnyvaleのAdvan
ced Micro Devices Inc.によるAm186ES Users ManualおよびAm186ED Users Manu
alに記載されている。これらの刊行物に記載されるとおりでは、後に論ずるよう
に、別途の制御ビットをセットまたはリセットすることによりデータの送受信中
に第9番目のデータビットとして働くようにする。このような9ビットプロトコ
ルを用いてDMAをサポートするために、その特定のビットがある値として受取
られると、割込が引起されることにより、第9番目のデータビットが実際にセッ
トされたことを示す。 US−A−5,737,638には、オンボードDMAコントローラによって
ホストメモリとアダプタメモリとの間におけるDMA転送が管理されデータがそ
のデータ転送中に圧縮および復元され得るデータ処理システムが開示されている
。 この発明に従うと、ソースアドレスレジスタと宛先アドレスレジスタとソース
増分フィールドと宛先増分フィールドとを含むダイレクトメモリアクセス(DM
A)コントローラによって特徴付けられるダイレクトメモリアクセス(DMA)
システムであって、ソース増分フィールドおよび宛先増分フィールドが独立して
ソースアドレスレジスタおよび宛先アドレスレジスタの増分を制御し、さらに、
ソースアドレスレジスタおよび宛先アドレスレジスタの増分は、ソースアドレス
レジスタに関連付けられるソースブロックまたは宛先アドレスレジスタに関連付
けられる宛先ブロックでのデータの間隔がDMA転送中に圧縮または拡張される
ように、転送サイズからは独立している、ダイレクトメモリアクセス(DMA)
システムが提供される。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正内容】
【0007】 好ましくは、このDMAコントローラは、調整され得かつ転送項目サイズから
は独立したソース増分値および宛先増分値を有する。ソースポインタおよび宛先
ポインタはソースブロックおよび宛先ブロックにセットされ得、ソースブロック
には先頭バイトが破棄されることになるワードサイズのデータが含まれる。ソー
スは各転送後に2つ、宛先は1つ、増分するようセットされ得る。次いで、DM
Aが実行されて、ソース内の各ワードからバイトのデータを転送し、次のワード
に増分し、宛先に対して次のバイトを増分する。このようにして、1バイトのデ
ータが、各ワードから、DMAを用いながら、ほとんどプロセッサの介入なく、
ストリッピングされる。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0009
【補正方法】変更
【補正内容】
【0009】 同様に、DMA転送の実行前に、バイトレベルのデータがワードに拡張され得
、拡張された書込バイトがデータの前に付加されて、DMAコントローラにより
、拡張された書込をサポートする非同期シリアルポートへの転送が行なわれる。 添付の図面は単に例示的なものである。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0010
【補正方法】削除
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0011
【補正方法】削除
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0021
【補正方法】変更
【補正内容】
【0021】 図2を参照して、さらに示されるのはDMAユニット116およびここでは非
同期シリアルポート(ASP)148として記載される高速UART148であ
る。ASP148は、「アドレスビット」を余分のシリアルビットとして用いる
非同期シリアルプロトコルをサポートし得る。
【手続補正8】
【補正対象書類名】明細書
【補正対象項目名】0025
【補正方法】変更
【補正内容】
【0025】 バイトからワードへの拡張およびワードからバイトへの圧縮DMAユニット この発明に従うマイクロコントローラMの1つの局面では、DMAユニット1
16は2つの異なるデータサイズを有するソースと宛先との間における転送中に
データを圧縮し復元し得る。たとえば、DMAユニット116はソースメモリブ
ロックからバイト単位でデータを読出し、読出された各バイトのデータを連続す
るワードの低(または高)次バイトとして宛先メモリブロックに書込み得る。逆
に、このDMAユニットは連続するワードの低次バイトをソースブロックから読
出して、次いでそれらの読出されたバイトを逐次宛先ブロックに記憶し得る。こ
のことは、ASP148に関連する場合において、それが拡張された読出および
書込モードにおいて用いられる際に特に有用である。以下に図7A〜図7Gを参
照してさらに論じられるが、ASP148は7または8のビットデータ単位をシ
リアル線を介して読込得るが、そのデータを、16ビットワードに、そのI/O
読出に対応するアドレスビットおよびステータスビットの両方とともに記憶する
。これらは図7Gにおいてさらに示され、後に論じられるが、まとめると、パリ
ティエラー、オーバーランエラー、フレーム付けエラー、キャラクタマッチ、ブ
レーク、アドレスビット、および他のステータスが、実際に受取られた7または
8ビットのデータとともに記憶され得る。これがDMAを用いて実行されると、
それによって、実行ユニット124は戻って、受取られたデータを調べることに
より、エラーが生じたかもしれない場所またはアドレスビットがセットされたか
もしれない場所を判断し、それに従ってデータを処理する。
【手続補正9】
【補正対象書類名】明細書
【補正対象項目名】0061
【補正方法】削除
【手続補正書】
【提出日】平成12年12月4日(2000.12.4)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スピロ,デイビッド・エイ アメリカ合衆国、78759 テキサス州、オ ースティン、バルコンズ・ウッズ・ドライ ブ、4200 (72)発明者 ティパルドス,メラニー・ディ アメリカ合衆国、78610 テキサス州、ブ ダ、ジェリーズ・レーン、700 Fターム(参考) 5B061 DD01 DD04 DD06 DD11 RR03 RR07

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 命令を実行するための実行ユニット(124)を含むマイク
    ロコントローラであって、 ソースアドレスレジスタと宛先アドレスレジスタとソース増分フィールドと宛
    先増分フィールドとを含むダイレクトメモリアクセス(DMA)コントローラ(
    116)によって特徴づけられ、 ソース増分フィールドおよび宛先増分フィールドは独立してソースアドレスレ
    ジスタおよび宛先アドレスレジスタの増分を制御し、 さらに、ソースアドレスレジスタおよび宛先アドレスレジスタの増分はデータ
    がDMA転送中に圧縮または拡張され得るよう転送サイズからは独立している、
    マイクロコントローラ。
  2. 【請求項2】 DMAコントローラ(116)に結合され、シリアルデータ
    を受信するためのシリアルポート(148)をさらに含み、 DMAコントローラ(116)はデータおよびステータスの両方をシリアルポ
    ート(148)からメモリに転送するよう構成可能であり、 DMAコントローラ(116)は受信されたデータのステータス部が破棄され
    る場合に後続のDMAをメモリからメモリに行なうよう構成可能である、請求項
    1に記載のマイクロコントローラ。
  3. 【請求項3】 シリアルポート(148)は非同期シリアルポートである、
    請求項2に記載のマイクロコントローラ。
  4. 【請求項4】 シリアルポート(148)によって受信されるステータス情
    報はアドレスビットステータス情報をさらに含む、請求項2に記載のマイクロコ
    ントローラ。
  5. 【請求項5】 シリアルポート(148)は同期シリアルポートである、請
    求項4に記載のマイクロコントローラ。
  6. 【請求項6】 DMAコントローラ(116)は、ソースアドレスから宛先
    アドレスへのデータのバイトの各転送ごとにソースアドレスを2だけ増分し宛先
    アドレスを1だけ増分するよう構成可能である、請求項1に記載のマイクロコン
    トローラ。
  7. 【請求項7】 ソースアドレスレジスタと宛先アドレスレジスタとソース増
    分フィールドと宛先増分フィールドとを含むダイレクトメモリアクセス(DMA
    )コントローラ(116)によって特徴づけられ、 ソース増分フィールドおよび宛先増分フィールドは独立してソースアドレスレ
    ジスタおよび宛先アドレスレジスタの増分を制御し、 さらに、ソースアドレスレジスタおよび宛先アドレスレジスタの増分はデータ
    がDMA転送中に圧縮または拡張され得るよう転送サイズからは独立している、
    ダイレクトメモリアクセス(DMA)システム。
  8. 【請求項8】 DMAコントローラ(116)に結合され、シリアルデータ
    を受信するためのシリアルポート(148)をさらに含み、 DMAコントローラ(116)はデータおよびステータスの両方をシリアルポ
    ートからメモリに転送するよう構成可能であり、 DMAコントローラ(116)は受信されたデータのステータス部が破棄され
    る場合に後続のDMAをメモリからメモリに行なうよう構成可能である、請求項
    7に記載のDMAシステム。
  9. 【請求項9】 シリアルポート(148)は非同期シリアルポートである、
    請求項8に記載のDMAシステム。
  10. 【請求項10】 非同期シリアルポートによって受信されるステータス情報
    はアドレスビットステータス情報をさらに含む、請求項8に記載のDMAシステ
    ム。
  11. 【請求項11】 シリアルポート(148)は同期シリアルポートである、
    請求項10に記載のDMAシステム。
  12. 【請求項12】 DMAコントローラ(116)は、ソースアドレスから宛
    先アドレスへのデータのバイトの各転送ごとにソースアドレスを2だけ増分し宛
    先アドレスを1だけ増分するよう構成可能である、請求項7に記載のDMAシス
    テム。
  13. 【請求項13】 ソースアドレスレジスタと宛先アドレスレジスタとを含む
    DMAコントローラ(116)であって、 データをソースアドレスから宛先アドレスへ転送し、次いで、ソースアドレス
    および宛先アドレスの変更を、ソースアドレスによって指し示されるブロック内
    にあるデータのうちある部分がソースアドレスから宛先アドレスへの転送中にス
    トリッピングされるように行なうための手段によって特徴づけられる、DMAコ
    ントローラ。
  14. 【請求項14】 ソースアドレスレジスタと宛先アドレスレジスタとを含む
    DMAコントローラ(116)であって、 データをソースアドレスから宛先アドレスへ転送し、次いで、ソースアドレス
    および宛先アドレスの変更を、宛先アドレスによって指し示されるブロック内に
    あるデータのうちある部分がソースアドレスから宛先アドレスへの転送中にスト
    リッピングされるように行なうための手段によって特徴づけられる、DMAコン
    トローラ。
  15. 【請求項15】 DMAコントローラ(116)を用いてメモリ内において
    データを圧縮するための方法であって、 ソースアドレスブロックおよび宛先アドレスブロックを指し示すようDMAコ
    ントローラ(116)をセットするステップと、 ソースアドレスブロックから宛先アドレスブロックへの各転送ごとにソースア
    ドレスを2バイトおよび宛先アドレスを1バイト増分するようDMAコントロー
    ラ(116)をセットするステップと、 各転送ごとに1バイトの情報を転送するようDMAコントローラ(116)を
    セットするステップと、 ソースアドレスブロックからの情報の1バイトおきが宛先アドレスブロックへ
    の書込で破棄されるようにDMAを実行するステップとを含む、方法。
  16. 【請求項16】 ソースアドレスは宛先アドレスと同じ場所にセットされる
    、請求項15に記載の方法。
  17. 【請求項17】 受信された拡張されたシリアルデータを圧縮するための方
    法であって、 シリアルデータおよび関連のステータスを非同期シリアルポート(148)を
    介して受信するステップと、 シリアルデータおよび関連のステータスをメモリ位置に転送するステップと、 複数のデータおよびステータスを前記受信するステップと、受信された複数の
    データおよびステータスを複数のメモリ位置に前記転送するステップとを繰返し
    て、データおよびステータスの両方を複数のメモリ位置に記憶するステップと、 複数のメモリ位置からデータをダイレクトメモリアクセス転送を実行するステ
    ップとを含み、これには、そのデータに関連するステータスを破棄するステップ
    と、そのデータをそのステータスを伴わずに宛先メモリ位置に記憶するステップ
    とを含む、方法。
  18. 【請求項18】 ステータスは8ビットで記憶され、データは8ビットで記
    憶され、DMA転送は、データの1バイトをソースから宛先に転送すること、ソ
    ースアドレスポインタを2だけ増分し宛先アドレスポインタを1だけ増分するこ
    と、および転送ステップを繰返すことによって、ステータスをデータからストリ
    ッピングする、請求項17に記載の方法。
JP2000552593A 1998-06-01 1999-03-01 ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元 Pending JP2002517820A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/088,133 1998-06-01
US09/088,133 US6385670B1 (en) 1998-06-01 1998-06-01 Data compression or decompressions during DMA transfer between a source and a destination by independently controlling the incrementing of a source and a destination address registers
PCT/US1999/004610 WO1999063447A1 (en) 1998-06-01 1999-03-01 Compression and decompression of serial port data and status using direct memory access

Publications (2)

Publication Number Publication Date
JP2002517820A true JP2002517820A (ja) 2002-06-18
JP2002517820A5 JP2002517820A5 (ja) 2006-03-30

Family

ID=22209549

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000552593A Pending JP2002517820A (ja) 1998-06-01 1999-03-01 ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元

Country Status (6)

Country Link
US (1) US6385670B1 (ja)
EP (1) EP1082666B1 (ja)
JP (1) JP2002517820A (ja)
KR (1) KR100546085B1 (ja)
DE (1) DE69900477T2 (ja)
WO (1) WO1999063447A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816921B2 (en) * 2000-09-08 2004-11-09 Texas Instruments Incorporated Micro-controller direct memory access (DMA) operation with adjustable word size transfers and address alignment/incrementing
US7861073B2 (en) * 2007-01-03 2010-12-28 Apple Inc. On-chip decompression engine
US10275375B2 (en) * 2013-03-10 2019-04-30 Mellanox Technologies, Ltd. Network interface controller with compression capabilities
US12066955B2 (en) * 2021-05-19 2024-08-20 Hughes Network Systems, Llc System and method for enhancing throughput during data transfer

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208915A (en) * 1982-11-09 1993-05-04 Siemens Aktiengesellschaft Apparatus for the microprogram control of information transfer and a method for operating the same
US4700391A (en) * 1983-06-03 1987-10-13 The Variable Speech Control Company ("Vsc") Method and apparatus for pitch controlled voice signal processing
US4642791A (en) * 1983-09-15 1987-02-10 Pitney Bowes Inc. Interface for mailing system peripheral devices
US4646261A (en) * 1983-09-27 1987-02-24 Motorola Computer Systems, Inc. Local video controller with video memory update detection scanner
JP2539058B2 (ja) * 1989-03-30 1996-10-02 三菱電機株式会社 デ―タプロセッサ
JP2527821B2 (ja) * 1989-09-14 1996-08-28 株式会社日立製作所 デ―タ処理方法及び入出力装置
US4974223A (en) * 1989-09-18 1990-11-27 International Business Machines Corporation Parallel architecture for high speed flag detection and packet identification
JPH04219859A (ja) * 1990-03-12 1992-08-10 Hewlett Packard Co <Hp> 並列プロセッサに直列命令ストリームデータを分散するハードウェアディストリビュータ
EP0467717B1 (en) * 1990-07-20 1998-01-14 Matsushita Electric Industrial Co., Ltd. Data shuffling apparatus
GB2250615B (en) * 1990-11-21 1995-06-14 Apple Computer Apparatus for performing direct memory access with stride
US5313454A (en) * 1992-04-01 1994-05-17 Stratacom, Inc. Congestion control for cell networks
JPH06133269A (ja) * 1992-09-02 1994-05-13 Pioneer Electron Corp 映像信号記録及び再生装置
FR2716276B1 (fr) * 1994-02-16 1996-05-03 Sgs Thomson Microelectronics Circuit de réorganisation de données.
US5588029A (en) * 1995-01-20 1996-12-24 Lsi Logic Corporation MPEG audio synchronization system using subframe skip and repeat
US5633865A (en) * 1995-03-31 1997-05-27 Netvantage Apparatus for selectively transferring data packets between local area networks
US5737638A (en) 1995-07-14 1998-04-07 International Business Machines Corporation System for determining plurality of data transformations to be performed upon single set of data during single transfer by examining communication data structure
US5761453A (en) * 1995-12-07 1998-06-02 Apple Computer, Inc. Method and system for increasing the throughput of serial data in a computer system
US5854640A (en) * 1996-01-02 1998-12-29 Intel Corporation Method and apparatus for byte alignment of video data in a memory of a host system
US5768445A (en) 1996-09-13 1998-06-16 Silicon Graphics, Inc. Compression and decompression scheme performed on shared workstation memory by media coprocessor
US5982373A (en) * 1996-11-12 1999-11-09 Chromatic Research, Inc. Dynamic enhancement/reduction of graphical image data resolution
US5896549A (en) * 1997-02-04 1999-04-20 Advanced Micro Devices, Inc. System for selecting between internal and external DMA request where ASP generates internal request is determined by at least one bit position within configuration register
US5958024A (en) * 1997-08-29 1999-09-28 Advanced Micro Devices, Inc. System having a receive data register for storing at least nine data bits of frame and status bits indicating the status of asynchronous serial receiver
US5944800A (en) * 1997-09-12 1999-08-31 Infineon Technologies Corporation Direct memory access unit having a definable plurality of transfer channels

Also Published As

Publication number Publication date
KR20010052493A (ko) 2001-06-25
WO1999063447A1 (en) 1999-12-09
US6385670B1 (en) 2002-05-07
EP1082666A1 (en) 2001-03-14
EP1082666B1 (en) 2001-11-14
DE69900477D1 (de) 2001-12-20
DE69900477T2 (de) 2002-07-18
KR100546085B1 (ko) 2006-01-26

Similar Documents

Publication Publication Date Title
US6266715B1 (en) Universal serial bus controller with a direct memory access mode
US20030074502A1 (en) Communication between two embedded processors
USRE41494E1 (en) Extended cardbus/PC card controller with split-bridge technology
WO1984001447A1 (en) Line support processor for data transfer system
US5978865A (en) System for performing DMA transfers where an interrupt request signal is generated based on the value of the last of a plurality of data bits transmitted
US5958024A (en) System having a receive data register for storing at least nine data bits of frame and status bits indicating the status of asynchronous serial receiver
US20040225779A1 (en) Programmable CPU/interface buffer structure using dual port RAM
JPH09128330A (ja) 映像表示装置
US6388989B1 (en) Method and apparatus for preventing memory overrun in a data transmission system
JP2002517820A (ja) ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元
JP4385247B2 (ja) 集積回路、および情報処理装置
US6105081A (en) UART character matching used for address matching on a register-by-register basis
JP2005504393A (ja) バス・システムおよびバス・インターフェース
KR100642158B1 (ko) 슬레이브 그룹 인터페이스 장치와, 슬레이브 그룹 인터페이스 장치를 통해 버스와 주변 장치를 인터페이스하는 방법 및 시스템
US6178462B1 (en) Protocol for using a PCI interface for connecting networks
JP2520905B2 (ja) シリアル通信制御装置
US20040162924A1 (en) Apparatus and method for transmitting data by means of direct memory access medium
CN1672374A (zh) 分组处理结构
JP2528879B2 (ja) 通信処理装置
US6311235B1 (en) UART support for address bit on seven bit frames
US5764907A (en) Computer to microcomputer interface
CN212061144U (zh) 一种基于asi总线的扩展系统
JP3069867U (ja) 電子装置
KR100260538B1 (ko) 중앙처리장치와 주변장치 간의 데이터 전송 방법 및 장치
CN115344244A (zh) 处理程序语言函数的装置及方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060208

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081208

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090108

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090623

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090709

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20091002