JP3862031B2 - Microprocessor - Google Patents

Microprocessor Download PDF

Info

Publication number
JP3862031B2
JP3862031B2 JP26087395A JP26087395A JP3862031B2 JP 3862031 B2 JP3862031 B2 JP 3862031B2 JP 26087395 A JP26087395 A JP 26087395A JP 26087395 A JP26087395 A JP 26087395A JP 3862031 B2 JP3862031 B2 JP 3862031B2
Authority
JP
Japan
Prior art keywords
address
bus
signal
card
microprocessor
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.)
Expired - Lifetime
Application number
JP26087395A
Other languages
Japanese (ja)
Other versions
JPH08320823A (en
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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
Priority to US08/524,701 priority Critical patent/US5848247A/en
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP26087395A priority patent/JP3862031B2/en
Priority to KR1019950030591A priority patent/KR100353348B1/en
Publication of JPH08320823A publication Critical patent/JPH08320823A/en
Priority to US09/191,219 priority patent/US6049844A/en
Priority to US09/438,337 priority patent/US6594720B1/en
Priority to US10/337,631 priority patent/US20030149821A1/en
Priority to US10/337,758 priority patent/US6792493B2/en
Application granted granted Critical
Publication of JP3862031B2 publication Critical patent/JP3862031B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Microcomputers (AREA)

Description

【0001】
【産業上の利用分野】
この発明はマイクロプロセッサに関し、例えば、その外部バスインターフェイスに利用して特に有効な技術に関するものである。
【0002】
【従来の技術】
シンクロナスDRAM(ダイナミック型ランダムアクセスメモリ)等の各種半導体メモリを直結しうる外部バスを具備するマイクロプロセッサ(マイクロコントローラ)が、例えば、日経マグロウヒル社発行の1994年2月14日付『日経エレクトロニクス』第79頁ないし第91頁に記載されている。
【0003】
一方、メモリカード及びI/Oカード等のPCカードがあり、マイクロプロセッサ等にPCカードを結合するためのインターフェイス条件が日本電子工業振興協会(JEIDA)及びPCMCIA(Personal ComputerMemory Card International AssocIation)により標準化されている。PCカードインターフェイスには、ガイドラインVer.4.1の『6.電気・インターフェイス仕様』で規定される68ピンのICメモリカードインターフェイス及びI/Oカードインターフェイスが含まれる。また、このようなPCカードインターフェイスに対処するため、82365SL等の専用IC(集積回路)チップが用意されている。
【0004】
【発明が解決しようとする課題】
従来のマイクロプロセッサ等において、PCカードを結合するためのバスは、半導体メモリ等を結合するためのバスとは別個に設けられるとともに、PCカードは上記専用ICチップを介してバスに結合され、そのインターフェイス制御はこれらの専用ICチップによって行われる。このため、パーソナルコンピュータや携帯情報端末等にPCカードインターフェイスを組み込もうとした場合、バス構成が複雑となり設計工数が増大するとともに、マイクロプロセッサの外付け部品が増大する。この結果、パーソナルコンピュータ及び携帯情報端末等の開発期間が増大し、その低コスト化が阻害されるものとなる。
【0005】
この発明の目的は、使い勝手を良くしたマイクロプロセッサを提供することにある。この発明の他の目的は、マイクロプロセッサを内蔵しかつPCカードインターフェイスを有するパーソナルコンピュータ等の設計工数を削減し外付け部品数を削減して、その低コスト化を図ることにある。この発明の前記ならびにそのほかの目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【0006】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、下記の通りである。 すなわち、パーソナルコンピュータ及び携帯情報端末等に内蔵されるマイクロプロセッサに、外部バスに結合されかつROM,バーストROM,SRAM,PSRAM,DRAM及びシンクロナスDRAM等の各種半導体メモリやメモリカード及びI/Oカード等のPCカードのインターフェイスを並行制御しうるバスステートコントローラを設ける。このバスステートコントローラBSCには、シンクロナスDRAM接続時におけるPCカードの起動信号(−OE、−WE)のセットアップ時間を制御するための制御レジスタ(PCR)が設けられる。
【0007】
また、外部バスのアドレス空間を所定数のエリアに分割し、各エリアに各種半導体メモリ又はPCカードを固定的に割り当てるとともに、I/Oカードが入出力装置として機能する場合の物理アドレスとメモリとして機能する場合の物理アドレスとを独立に割り当て、マイクロプロセッサに、その内部における論理アドレスを外部バスにおける物理アドレスに変換するためのメモリ管理ユニットを設ける。
【0008】
【作用】
上記した手段によれば、以下の理由により、上記目的が達成される。その物理アドレスによる制約を受けることなくしかもインターフェイス制御のための外付け部品を削減しつつ、各種半導体メモリとメモリカード及びI/Oカード等のPCカードとを直接かつ同時にマイクロプロセッサの外部バスに結合することができる。この結果、マイクロプロセッサの使い勝手を改善できるとともに、マイクロプロセッサを内蔵しかつPCカードインターフェイスを有するパーソナルコンピュータ等の設計工数を削減し外付け部品数を削減して、その低コスト化を図ることができる。
【0009】
また、バスステートコントローラBSCには、シンクロナスDRAM接続時におけるPCカードの起動信号(−OE、−WE)のセットアップ時間を制御するための制御レジスタ(PCR)が設けられるので、PCカードの起動信号としての出力イネーブル信号−OEないしライトイネーブル信号−WEのクロック信号CKIOの立ち下がりあるいはアドレス信号に対するセットアップ時間などを制御することが出来る。その結果、PCカードとシンクロナスDRAMとを本発明のマイクロプロセッサMPUに同時に結合させても、本発明のマイクロプロセッサMPUは、不都合なくPCカードとシンクロナスDRAMに対するアクセスを行うことが出来る。
【0010】
【実施例】
図1には、この発明に係るマイクロプロセッサMPUを含むパーソナルコンピュータの一実施例のシステム構成図が示されている。同図において、パーソナルコンピュータは、マイクロプロセッサMPUを搭載したマザーボードMBDをその基本構成要素とする。マザーボードMBDには、特に制限されないが、PCカードスロットPCSL1及びPCSL2を介して2種のPCカードつまりメモリカードMEMC及びI/OカードIOCがそれぞれ結合され、コネクタLCDCON及びKBDCONを介してマンマシンインターフェイスとなる液晶ディスプレイLCD及びキーボードKBDがそれぞれ結合される。
【0011】
メモリカードMEMCは、SRAM(スタティック型RAM),EPROM(電気的に情報の書き込み可能なリードオンリメモリ),EEPROM(電気的に情報の消去・書き込み可能なリードオンリメモリ)あるいはフラッシュEEPROM等から構成され、データ記憶用のカードとされる。一方、I/OカードIOCは、ファクシミリやデータ転送のためのモデム,LANに利用される制御回路,グローバルポジショニングシステム(GPS)に利用される制御回路あるいはスモールコンピュータシステムインターフェイスコントローラ等とされる。
【0012】
マザーボードMBDのマイクロプロセッサMPUには、特に制限されないが、外部バスE−BUSを介して6種の半導体メモリつまりROM,バーストROM(BROM),SRAM,PSRAM(疑似SRAM),DRAM(ダイナミック型RAM)及びシンクロナスDRAM(SDRAM)が結合される。この外部バスE−BUSには、さらにPCカードバッファBUF1及びBUF2ならびにディスプレイコントローラLCDC及びキーボードコントローラKBDCが結合される。このうち、PCカードバッファBUF1及びBUF2には、上記PCカードスロットPCSL1及びPCSL2つまりメモリカードMEMC及びI/OカードIOCがそれぞれ結合され、ディスプレイコントローラLCDC及びキーボードコントローラKBDCには、コネクタLCDCON及びKBDCONつまり液晶ディスプレイLCD及びキーボードKBDがそれぞれ結合される。マザーボードMBDに搭載された各種半導体メモリ,PCカードバッファ及びコントローラには、電源ユニットPOWUから所定の動作電源が供給される。
【0013】
マイクロプロセッサMPUは、ROM又はバーストROMから読み出されるプログラムに従ってステップ動作し、所定の論理演算処理を実行するとともに、パーソナルコンピュータの各部を制御・統括する。また、PCカードバッファBUF1及びBUF2は、PCカードスロットPCSL1又はPCSL2に装着されたメモリカードMEMC又はI/OカードIOCとの間のインターフェイス整合を行い、ディスプレイコントローラLCDC及びキーボードコントローラKBDCは、コネクタLCDCON又はKBDCONを介して結合された液晶ディスプレイLCD又はキーボードKBDを制御する。
【0014】
この実施例において、マイクロプロセッサMPUは、後述するように、外部バスE−BUSに結合されたROM,バーストROM,SRAM,PSRAM,DRAM及びシンクロナスDRAM等の各種半導体メモリとメモリカードMEMC及びI/OカードIOC等のPCカードとに対するインターフェイスを並行制御しうるバスステートコントローラBSCを備える。また、外部バスE−BUSのアドレス空間は所定数のエリアに分割され、これらのエリアに半導体メモリ又はPCカードが固定的に割り当てられるとともに、I/OカードがI/Oカードとして機能する場合の物理アドレスが、メモリカードとして機能する場合の物理アドレスとは独立に割り当てられる。
【0015】
このため、マイクロプロセッサMPUは、さらにその内部における論理アドレスを外部バスにおける物理アドレスに変換するメモリ管理ユニットMMUを備える。これらの結果、その物理アドレスによる制約を受けることなくしかもインターフェイス制御のための外付け部品を削減しつつ、各種半導体メモリとPCカードつまりメモリカードMEMC及びI/OカードIOCとを直接かつ同時に外部バスE−BUSに結合でき、これによってマイクロプロセッサMPUの使い勝手を改善できるとともに、パーソナルコンピュータの設計工数を削減し外付け部品数を削減して、その低コスト化を図ることができるものである。
【0016】
図2には、図1のパーソナルコンピュータの三つの実施例の外観構成図が示されている。まず、図2の(a)において、パーソナルコンピュータは、いわゆるノート型とされ、PCカードスロットMSLOT(PCSL1,PCSL2)に装着されたメモリカードMEMC又はI/OカードIOCからなるファイルFfileを内蔵するとともに、入出力装置としてキーボードKB(KBD)及び液晶ディスプレイDP(LCD)を備える。このうち、液晶ディスプレイは内側に折り畳むことができ、これによって携帯に便利な形態とされる。
【0017】
図2の(b)において、パーソナルコンピュータは、いわゆるデスクトップ型とされ、フロッピーディスクドライブFDDと、図示されないPCカードスロットに装置されたメモリカードMEMC又はI/OカードIOCからなるファイルFfileとを備える。また、入出力装置としてキーボードKB及び液晶ディスプレイDPを備え、フロッピーディスクドライブFDDには所定のフロッピーディスクFDが挿入される。これにより、パーソナルコンピュータは、フロッピーディスクFDによるソフトウェアとしての記憶領域と、ファイルFfileによるハードウェアとしての記憶領域とを併せ持つものとなる。
【0018】
図2の(c)において、パーソナルコンピュータは、いわゆるペンポータブル型とされ、メモリカードMEMC又はI/OカードIOCからなるファイルカードFfileCARDを装着しうる二つのPCカードスロットを備える。また、入出力装置として感圧シート付液晶ディスプレイDP及び入力ペンPENを備え、手書き文字による入力を可能とする。
【0019】
これらの実施例において、パーソナルコンピュータのマザーボードMBDを構成するマイクロプロセッサMPUは、前述のように、各種の半導体メモリとメモリカードMEMC及びI/OカードIOCからなるPCカードとを直接かつ同時に結合しうるインターフェイスを有する。この結果、マザーボードMBDひいてはパーソナルコンピュータの構成が簡素化され、その小型化,軽量化,薄型化が図られて携帯に便利な形態を採りうるとともに、後述するバースト機能等により大容量の情報を高速に入出力することが可能となり、パーソナルコンピュータとしての処理能力が高めるられるものとなる。
【0020】
図3には、図1のパーソナルコンピュータに含まれるマイクロプロセッサMPUの一実施例のブロック図が示され、図4には、マイクロプロセッサMPUの半導体基板(半導体チップ)上でのレイアウトの一実施例が示されている。すなわち、マイクロプロセッサMPUは公知の半導体製造方法によって単結晶シリコンのような半導体基板に形成される。
【0021】
図3において、マイクロプロセッサMPUは、演算器ALUを含むストアドプログラム方式の中央処理ユニットCPUをその基本構成要素とする。この中央処理ユニットCPUには、システムバスS−BUS(第1内部バス)を介して乗算器MULT,メモリ管理ユニットMMUならびにキャッシュメモリCACHEが結合され、メモリ管理ユニットMMUにはアドレス変換バッファTLBが結合される。メモリ管理ユニットMMU及びキャッシュメモリCACHEは、さらにその他方においてキャッシュバスC−BUS(第2内部バス)に結合され、このキャッシュバスC−BUSにはバスステートコントローラBSCが結合される。
【0022】
バスステートコントローラBSCは、その他方において周辺バスP−BUSに結合されるとともに、図示されないバスインターフェイス部及びバスコネクタを介して外部バスE−BUSに結合される。このうち、周辺バスP−BUS(第3内部バス)には、リフレッシュコントローラREFC,ダイレクトメモリアクセスコントローラDMAC,タイマ回路TIM,シリアルコミュニケーションインターフェイスSCI,ディジタル/アナログ変換回路D/A及びアナログ/ディジタル変換回路A/D等の周辺装置コントローラが結合され、外部バスE−BUSには、前記各種の半導体メモリやPCカードを結合するためのPCカードバッファBUF1及びBUF2ならびにディスプレイコントローラLCDC及びキーボードコントローラKBDCが結合される。
【0023】
バスステートコントローラBSC,リフレッシュコントローラREFC,ダイレクトメモリアクセスコントローラDMAC,タイマ回路TIM,シリアルコミュニケーションインターフェイスSCI,ディジタル/アナログ変換回路D/A及びアナログ/ディジタル変換回路A/Dは、さらに割り込みコントローラINTCに結合され、この割り込みコントローラは割り込み要求信号IRQを介して中央処理ユニットCPUに結合される。
【0024】
同図には図示されないが、システムバスS−BUS、キャッシュバスC−BUSおよび周辺バスP−BUSのそれぞれは、アドレス信号を伝送するための内部アドレスバス、データを伝送するための内部データバスおよび、制御信号を伝送するための内部制御バスをそれぞれ含むものとみなされる。一方、外部バスE−BUSは、アドレス信号を伝送するための外部アドレスバス、データを伝送するための外部データバスおよび、制御信号を伝送するための外部制御バスをそれぞれ含むものとみなされる。
【0025】
上記中央処理ユニットCPUは、クロックパルス発生回路CPGから供給される所定のシステムクロック信号に従って同期動作し、キャッシュメモリCACHEから読み出される制御プログラムに従って所定の演算処理を実行するとともに、マイクロプロセッサMPUの各部を制御・統括する。このとき、演算器ALUは所定の算術論理演算を実行し、乗算器MULTはディジタル信号処理等に有効な乗算処理又は積和処理を実行する。
【0026】
上記メモリ管理ユニットMMUは、メモリアクセスに際してマイクロプロセッサMPUの内部つまり中央処理ユニットCPU等から出力される論理アドレスを、アドレス変換バッファ(address translation look-aside buffer )TLBを参照して物理アドレスに変換し、バスステートコントローラBSCを介してマイクロプロセッサMPUの外部つまり外部バスE−BUSに伝達する。キャッシュメモリCACHEは、高速アクセス可能な半導体メモリからなり、外部のROM又はバーストROM等に格納された制御プログラム又はデータ等を所定のブロック単位で読み出し保持して、中央処理ユニットCPUの高速動作に寄与する。
【0027】
一方、バスステートコントローラBSCは、周辺バスP−BUSに結合される各周辺装置コントローラのバスアクセスを管理し、その動作を制御・統括するとともに、外部バスE−BUSに結合される各種の半導体メモリ及びPCカードならびに各種入出力コントローラの動作を制御・統括する。
【0028】
この実施例において、外部バスE−BUSの物理アドレス空間は、特に制限されないが、8つのエリアに分割され、このうち7つのエリアは、所定の組み合わせをもって各種半導体メモリ及びPCカードに固定的に割り当てられる。また、バスステートコントローラBSCは、外部バスE−BUSの各エリアに割り当てられた各種半導体メモリ及びPCカードに対する制御信号のタイミングをそれぞれ所定の条件でかつ並行して制御・管理する機能を有し、これらのタイミング条件を選択的に指定するための各種コントロールレジスタを備える。
【0029】
この結果、外部バスE−BUSには、前記のように、ROM,バーストROM,SRAM,PSRAM,DRAM及びシンクロナスDRAM等を含む各種半導体メモリと、メモリカードMEMC及びI/OカードIOCを含むPCカードとを直接かつ同時に結合しうるものとなる。外部バスE−BUSの信号構成ならびにバスステートコントローラBSCの具体的構成については、後で詳細に説明する。
【0030】
次に、周辺装置コントローラの一つであるリフレッシュコントローラREFCは、外部バスE−BUSに結合されたDRAM及びSDRAMのリフレッシュ動作を制御し、ダイレクトメモリアクセスコントローラDMACは、例えば外部バスE−BUSに結合されたROM又はバーストROMとキャッシュメモリCACHE等との間の高速データ転送をサポートする。
【0031】
タイマ回路TIMは、中央処理ユニットCPUに必要な時間管理をサポートとし、シリアルコミュニケーションインターフェイスSCIは、外部の通信制御装置等との間のシリアルデータ転送をサポートする。一方、アナログ/ディジタル変換回路A/Dは、外部のセンサ等から入力されるアナログ信号を所定のディジタル信号に変換し、ディジタル/アナログ変換回路D/Aは、逆に中央処理ユニットCPUから出力されるディジタル信号を所定のアナログ信号に変換して外部出力する。割り込みコントローラINTCは、バスステートコントローラBSCや各周辺装置コントローラの割り込み要求を所定の優先順位で択一的に受理し、割り込み要求信号IRQとして中央処理ユニットCPUに伝達する。
【0032】
この実施例において、マイクロプロセッサMPUを構成する各部は、図4に例示されるように、所定のレイアウト条件をもって1個の半導体基板上に配置される。また、マイクロプロセッサMPUの各部はいわゆるモジュール化され、ユーザ仕様に基づいて選択的に形成され、選択的に有効とされる。
【0033】
図4において、バスコントローラは図3のバスステートコントローラBSCに対応し、Timerはタイマ回路TIMに対応する。また、クロックパルス発生回路CPGにより形成されるシステムクロックは、所定のクロックドライバDriverを介してマイクロプロセッサMPUの各部に分配・供給される。
【0034】
図5には、図3のマイクロプロセッサMPUの外部バスE−BUSにおける物理アドレスの割り当てを説明するための一実施例のアドレスマップが示され、図6には、そのエリア5及びエリア6における物理アドレスの割り当てを説明するための一実施例の部分的なアドレスマップが示されている。まず図5において、この実施例のマイクロプロセッサMPUの外部バスE−BUSの物理アドレス空間は、特に制限されないが、8つのエリア0〜エリア7に分割され、このうちのエリア0〜6の7つが外部バスE−BUSに結合された各種半導体メモリ及びPCカードによって使用可能とされる。
【0035】
このうち、エリア0は、SRAM及びROMを含む通常メモリかバーストROMに対して選択的に割り当てられ、エリア1及びエリア4は通常メモリに選択的に割り当てられる。また、エリア2は、通常メモリ,SDRAM又はDRAMに対して選択的に割り当てられ、エリア3は、通常メモリ,SDRAM,DRAM又はPSRAMに選択的に割り当てられる。一方、エリア5は、通常メモリ又はバーストROMかメモリカードMEMCに選択的に割り当てられ、エリア6は、通常メモリ又はバーストROMかメモリカードMEMC又はI/OカードIOCに選択的に割り当てられる。なお、本明細書において、通常メモリとは、SRAMやROMのように行及び列アドレスが同時に供給されてアクセスされるアドレスノンマルチプレクス型のメモリを意味し、DRAMやSDRAMのように行及び列アドレスが時分割的に供給されてアクセスされるアドレスマルチプレクス型のメモリとは区別される。
【0036】
なお、エリア7は、マイクロプロセッサMPUの内部装置のアドレス、たとえば、CPUの内部レジスタのアドレスや上記周辺装置コントローラ内のレジスタのアドレス、に割り当てられ、外部装置では使用できない。また、エリア0〜エリア6にいずれの半導体メモリ又はPCカードが結合されるかは、後述するバスステートコントローラBSCのバスコントロールレジスタBCR1によって選択的に指定される。
【0037】
この実施例において、マイクロプロセッサMPUのシステムバスS−BUS、キャッシュバスC−BUSおよび周辺バスP−BUSの内部アドレスバスは、32ビットのアドレス信号A0〜A31を転送可能な信号線を含み、マイクロプロセッサMPUの内部における論理アドレスは、これらアドレス信号A0〜A31により択一的に指定されるいわゆる4GB(ギガバイト)のアドレス空間からなる。一方、マイクロプロセッサMPUの外部つまり外部バスE−BUSにおける物理アドレスは、上位3ビットを除く29ビットのアドレス信号A0〜A28により択一的に指定されるが、アドレス信号A0〜A31の上位3ビット、つまり、アドレス信号A26〜A28は、エリア0ないしエリア6を択一的に指定するためのチップセレクト信号−CS0〜−CS6を作成するために供され、下位26ビットのアドレス信号A0〜A25は、各エリア内のアドレスを択一的に指定するために供される。すなわち、外部バスE−BUSにおける外部アドレスバスは、アドレス信号A0〜A25を転送可能な信号線を含む。
【0038】
これにより、エリア0には、16進数表示でH’00000000ないしH’03FFFFFFの物理アドレスが割り当てられ、エリア1には、H’04000000ないし07FFFFFFの物理アドレスが割り当てられる。また、エリア2ないしエリア4には、H’08000000ないしH’0BFFFFFF,H’0C000000ないしH’0FFFFFFFならびにH’10000000ないしH’13FFFFFFの物理アドレスがそれぞれ割り当てられ、エリア5及びエリア6には、H’14000000ないしH’17FFFFFFならびにH’18000000ないしH’1BFFFFFFの物理アドレスがそれぞれ割り当てられる。この結果、各エリアは、いわゆる64MB(メガバイト)の物理アドレス空間を持つものとなる。なお、エリア0〜エリア6の物理アドレスにそれぞれH’20000000×n(n=1〜6)を加えた物理アドレスは、各エリアのシャドウ空間とされ、この乗数nは、論理アドレスの上位3ビットつまりアドレス信号A29〜A31により選択的に指定される。
【0039】
メモリカードMEMC及びI/OカードIOCに割り当てられるエリア5及びエリア6の物理アドレスは、図6に示されるように、さらにそれぞれ二つに分割される。このうち、エリア5では、アドレスH’14000000〜H’15FFFFFFからなる下位の領域が、メモリカードMEMCのためのコモンメモリ又はアトリビュートメモリ領域として割り当てられ、アドレスH’16000000〜H’17FFFFFFからなる上位の領域は、使用禁止領域とされる。また、エリア6では、アドレスH’18000000〜H’19FFFFFFからなる下位の領域が、メモリカードMEMCあるいはI/OカードIOCがメモリとして機能する場合のコモンメモリ又はアトリビュートメモリ領域として割り当てられ、アドレスH’1A000000〜H’1BFFFFFFからなる上位の領域は、I/OカードIOCが入出力装置として機能する場合のI/O領域とされる。この結果、エリア5及びエリア6におけるコモンメモリ又はアトリビュートメモリ領域は、いわゆる32MBのアドレス空間となる。
【0040】
特に制限されないが、エリア6の二分された領域つまりI/OカードIOCがメモリ又は入出力装置のいずれで機能するかは、アドレス信号A25によって選択的に指定され、32MBのアドレス空間は、残り25ビットのアドレス信号A0〜A24により択一的に指定される。周知のように、PCMCIA規格では、PCカードとして最大64MBのアドレス空間を持つことが許されるが、この場合、後述するように、さらに最上位ビットのアドレス信号A25がマイクロプロセッサMPUの出力ポートを介して別経路で出力される。このように、エリア6の物理アドレス空間を二分しアドレスA25により選択的に指定できるようにすることで、エリア6に結合されたI/OカードIOCのメモリ又は入出力装置としての機能をソフトウェアによりダイナミックに切り替えることが可能となり、マイクロプロセッサMPUの利便性が高められる結果となる。
【0041】
上記のようにマイクロプロセッサMPUの物理アドレス空間が8つのエリアに分割され、このうちの7つがマイクロプロセッサMPUの外部バスE−BUSに結合される各種半導体メモリ又はPCカードに固定的に割り当てられる。このことは、ユーザから見た場合、ソフトウェアにおける論理アドレスの配分に制約を与える原因となるように見える。しかし、この実施例では、前述のように、マイクロプロセッサMPUにメモリ管理ユニットMMUが設けられ、その内部における論理アドレスと外部バスE−BUSにおける物理アドレスとの対応は、アドレス変換バッファTLBの書き換え、すなわち、外部バスE−BUSに結合される外部メモリ、たとえば、DRAMなどに記憶されるアドレス変換テーブルのアドレス変換対の内容の書換によって容易に変更可能とされる。このため、ユーザは外部バスE−BUSの物理アドレスによる制約から解放され、自由な論理アドレス空間を有するソフトウェアを構築しうるものとなる。
【0042】
図7及び図8には、図3のマイクロプロセッサMPUの外部バスE−BUSの接続形態を説明するための一実施例の接続図が示されている。また、図9には、図7及び図8の外部バスE−BUSとPCカードが結合される場合の一実施例のインターフェイス構成図が示され、図10及び図11には、図7及び図8の外部バスE−BUSの一実施例の信号構成図が示されている。なお、図7及び図8では、エリア0〜エリア4に結合可能な半導体メモリを適当に割り当てているが、実際にはエリアによって結合可能な組み合わせが制限されるケースもある。図10及び図11は、図7ないし図9の説明の過程で適宜参照されたい。
【0043】
図7において、外部バスE−BUSは、マイクロプロセッサMPUから見てアドレス出力バスとなる26ビットの外部アドレスバスEBA0〜EBA25と、入出力バスとなる32ビットの外部データバスEBD0〜EBD31とを備える。このうち、アドレスバスEBA0〜EBA25を介して伝達されるアドレス信号A0〜A25は、各種半導体メモリ及びPCカードが結合されるすべてのエリアに共通に供給されるが、外部データバスEBD0〜EBD31は、外部バスE−BUSに結合される半導体メモリ及びPCカードのバスサイズに応じて選択的な接続形態を採る。なお、DRAM及びSDRAMにおいては、行及び列アドレスが時分割的にアドレスバス上の同一ラインに供給されるため、DRAM及びSDRAMの各アドレス入力端子は、外部アドレスバスEBA0〜EBA25のうちの所定数のラインに結合されることになる。
【0044】
すなわち、この実施例のマイクロプロセッサMPUでは、後述するバスステートコントローラBSCのバスコントロールレジスタBCR2により、エリア0〜エリア6のバスサイズをエリアごとに指定することができる。このうち、エリア0では、バイト(8ビット),ワード(16ビット),ロングワード(32ビット)のバスサイズを任意に選択できるが、エリア1ないしエリア6では、各エリアがSRAM,ROM又はバーストROMに割り当てられる場合には、バイト,ワード又はロングワードを任意に選択できるが、SDRAM,DRAM又はPSRAMに割り当てられる場合には、メモリコントロールレジスタMCR1との組み合わせによってワード又はロングワードの選択に制限される。さらに、エリア2及びエリア3がDRAMに割り当てられる場合、そのバスサイズはワードのみに制限され、エリア5及びエリア6がPCカードに割り当てられる場合には、バイト又ワードのいずれかが選択される。
【0045】
これにより、下位16ビットのデータバスEBD0〜EBD15は、エリア0〜エリア6に割り当てられたすべての半導体メモリ及びPCカードに結合されるが、上位16ビットのデータバスEBD16〜EBD23ならびにEBD24〜EBD31は、各エリアのバスサイズに応じてそれぞれ選択的に結合されるものとなる。なお、8ビットのデータバスEBD16〜EBD23は、後で例示するように、エリアのバスサイズが16ビット以下であることを条件に、汎用のポートPORT0〜PORT7としても使用できる。ただし、この場合にはバスステートコントローラBSC2のポート機能イネーブルビットが論理“1”にセットされる。
【0046】
外部バスE−BUSは、外部バスE−BUS上のデータが有効であることを示すバススタート信号−BS(ここで、それが有効とされるとき選択的にロウレベルとされるいわゆる反転信号等については、その名称の先頭に−を付加する。以下同様)を伝達するための制御信号線を外部制御バスEBCとして備える。この信号−BSは、バスステートコントローラBSCによって各種半導体メモリ及びPCカードに必要な起動信号に変換される。このため、バススタート信号−BSは、ディスプレイコントローラLCDC及びキーボードコントローラKBDC等のバス管理機能を持つI/Oコントローラには供給されるが、バス管理機能を持たない半導体メモリ及びPCカードには供給されない。
【0047】
一方、外部バスE−BUSの外部制御バスEBCは、エリア0ないしエリア6を択一的に指定するためのチップセレクト信号−CS0〜−CS6を伝達するための制御信号線と、エリア0のバスサイズやエンディアンの指定に供されるモード信号MD3〜MD5を伝達するための制御信号線を備える。このうち、チップセレクト信号−CS5及び−CS6は、エリア5及びエリア6のPCカードに対するカードイネーブル信号−CE1つまり−CE1A及び−CE1Bとしてそれぞれ併用される。また、モード信号MD3及びMD4は、これらのPCカードに対するカードイネーブル信号−CE2つまり−CE2A及び−CE2Bとしてそれぞれ併用され、モード信号MD5は、エリア3に結合される2セット目のDRAMに対するロウアドレスストローブ信号−RAS2として併用される。
【0048】
外部バスE−BUSの外部制御バスEBCは、さらに各種半導体メモリ及びPCカードに対する起動制御信号となるロウアドレスストローブ信号−RASを伝達するための制御信号線と、カラムアドレスストローブ信号−CASLL,−CASLH,−CASHL及び−CASHHのそれぞれを伝達するための制御信号線と、ライトイネーブル信号−WE0〜−WE3ならびにリード・ライトステータス信号RD/−WR,リードコントロール信号−RD,I/Oクロック信号CKIO及びクロックイネーブル信号CKEのそれぞれを伝達するための制御信号線を備える。なお、I/Oクロック信号CKIOは、マイクロプロセッサMPUに入力されるシステムクロックあるいは、SDRAM接続時に、上記SDRAMへ供給される動作クロック信号を示し、上記マイクロプロセッサMPUは、I/Oクロック信号CKIOに基づいて、各種出力信号のタイミング管理を行う。
【0049】
このうち、ロウアドレスストローブ信号−RASは、DRAM及びSDRAMに対するロウアドレスストローブ信号−RASとして供給されるともに、エリア3のPSRAMに対するチップイネーブル信号−CEとしても併用される。また、カラムアドレスストローブ信号−CASLL,−CASLH,−CASHL及び−CASHHは、32ビットバスサイズのDRAMに対して、データバスD0〜D7,D8〜D15,D16〜D23ならびにD24〜D31に対応したカラムアドレスストローブ信号として供給されるが、このうち、カラムアドレスストローブ信号−CASLLは、SDRAMに対するカラムアドレスストローブ信号−CASあるいはPSRAMに対する出力イネーブル信号−OEとして併用され、カラムアドレスストローブ信号−CASHL及び−CASHHは、2セット目のDRAMに対するバイト対応のカラムアドレスストローブ信号−CAS2L及び−CAS2Hとしてそれぞれ併用される。
【0050】
ライトイネーブル信号−WE0〜−WE3は、32ビットバスサイズのSRAM及びPSRAMあるいはSDRAMに対して、データバスEBD0〜EBD7,EBD8〜EBD15,EBD16〜EBD23ならびにEBD24〜EBD31にそれぞれ対応したライトイネーブル信号あるいはデータコントロール信号DQMLL,DQMLU,DQMUL及びDQMUUとして供給されるが、このうち、ライトイネーブル信号−WE2は、エリア6のI/OカードIOCに対するI/Oリードコントロール信号−ICIORDとして併用され、ライトイネーブル信号−WE3は、I/Oライトコントロール信号−ICIOWRとして併用される。
【0051】
リード・ライトステータス信号RD/−WRは、DRAM及びSDRAMに対するライトイネーブル信号−WEとして供給されるとともに、図示されないI/Oコントローラに対するリード・ライト信号R/−Wとして併用される。また、リードコントロール信号−RDは、ROM及びSRAMならびにメモリカードMEMC及びI/OカードIOCに対する出力イネーブル信号−OEとして供給され、I/Oクロック信号CKIOとクロックイネーブル信号CKEは、SDRAMに対して供給される。
【0052】
この実施例において、外部バスE−BUSは、PCカード専用の外部入力バスとしてライトプロテクト信号WPを伝達するための制御信号線を備え、バスコントロール用の信号としてウェイトコントロール信号−WAIT,バスリクエスト信号−BREQ及びバスアクノリジ信号BACKのそれぞれを伝達するための制御信号線を備える。このうち、ライトプロテクト信号WPは、書き込み禁止を必要とするメモリカードMEMCから選択的に入力されるとともに、I/OカードIOCのバスサイズが16ビットであることをマイクロプロセッサMPUに知らせるための16ビットI/Oポート信号−IOIS16としても併用される。
【0053】
ウェイトコントロール信号−WAITは、マイクロプロセッサMPUのサイクル待ち合わせを必要とするPCカード及びI/Oコントローラ等から必要に応じて選択的に入力される。さらに、バスリクエスト信号−BREQは、外部バスE−BUSを専有したいバスマスタから必要に応じて選択的に入力され、バスアクノリジ信号BACKは、これらのバスマスタに対するバス使用許可信号としてマイクロプロセッサMPUから出力される。マイクロプロセッサMPUから出力されライトイネーブル信号−WE1は、ライトイネーブル信号−WE/−PGMとしてPCカードに伝達される。なお、図8に示される各種半導体メモリ及びPCカードは、バスマスタとしての機能を有しない。
【0054】
外部バスE−BUSには含まれないが、メモリカードMEMC及びI/OカードIOCは、PCカードスロットPCSL1及びPCSL2にPCカードが装着されたことを示すカード検出信号−CD1及び−CD2のそれぞれを伝達するための制御信号線と、リセット信号RESETを伝達するための制御信号線とに結合される。これらの制御信号は、マザーボードMBDに設けられたボードコントローラBCで検知され、ボード制御に供される。マザーボードMBDは、さらに動作電源となる電源電圧VCC及び接地電位GNDを入力するための端子を備え、この電源電圧及び接地電位を各種半導体メモリ,PCカード,I/OコントローラならびにマイクロプロセッサMPUに1対の電源供給線を介して分配する。
【0055】
メモリカードMEMC又はI/OカードIOC等のPCカードは、前述のように、PCカードバッファBUF1又はBUF2を介して外部バスE−BUSに結合され、アドレス信号A25は、エリア6のI/OカードIOCがメモリ又は入出力装置のいずれで機能するかを識別するために供される。したがって、メモリカードMEMC及びI/OカードIOCが64MBのアドレス領域を有する場合には、図9に示されるように、マイクロプロセッサMPUのポートPORTを介して、最上位のアドレス選択に供されるアドレス信号A25が改めて出力される。このポートPORTには、リセット信号RESETとアトリビュートメモリ空間選択信号−REGが含まれる。
【0056】
マザーボードMBDは、割り込みレベルIRL0〜IRL3を設定するためのエンコーダENCODRとを備える。これらの信号が、PCMCIA標準に準拠したものであることは言うまでもない。図9に示されるように、PCカードバッファBUF1又はBUF2は、外部データバスEBD0〜EBD7に設けられる双方向バッファB1と、外部データバスEBD8〜EBD15に設けられる双方向バッファB2とを含む。上記双方向バッファB1およびB2は、リード・ライトステータス信号RD/−WRによってデータの伝送方向(DIR)がそれぞれ制御され、カードイネーブル信号−CE1B及び−CE2Bによってそのゲートティング動作(G)がそれぞれ制御される。
【0057】
図12には、図3のマイクロプロセッサMPUに含まれるバスステートコントローラBSCの一実施例のブロック図が示されている。同図において、バスステートコントローラBSCは、マイクロプロセッサMPUのキャッシュバスC−BUSに結合されるキャッシュバスインターフェイス部CBIFと、バスステートコントローラBSC内のモジュールバスM−BUSを介してキャッシュバスインターフェイス部CBIFに結合されるアドレスレジスタADR,データレジスタDTR,ウェイトコントロールレジスタWCR1及びWCR2,バスコントロールレジスタBCR1及びBCR2,メモリコントロールレジスタMCR,DRAMコントロールレジスタDCR,PCMCIAコントロールレジスタPCR,リフレッシュカウントレジスタRFCR,リフレッシュタイマカウントレジスタRTCNT,リフレッシュタイムコンスタントレジスタRTCOR及びリフレッシュタイマコントロールステータスレジスタRTCSRとを備える。
【0058】
これらのレジスタの内容は、マイクロプロセッサMPUの中央処理ユニットCPUつまりはそのソフトウェアによって任意に書き換えることができる。すなわち、中央処理ユニットCPUは、キャッシュバスC−BUS、キャッシュバスインターフェイス部CBIF及びモジュールバスM−BUSを介して、各レジスタ(ADR,DTR,WCR1,WCR2,BCR1,BCR2,MCR,DCR,PCMCIA,PCR,RFCR,RTCNT,RTCORおよびRTCSR)の内容の書き込み、あるいは変更を実施できる。
【0059】
上記バスステートコントローラBSCには、動作タイミングを決定するための動作クロックとして、図4に記載されるクロックパルスジェネレータCPGから発生される動作クロックCKがクロックドライバDriverから供給される。このクロック信号CKは、中央処理装置CPUの動作クロックと同一の周波数を有するクロックとされるとともに、上記マイクロプロプロセッサMPUの外部へシステムクロックとしてシステムクロック入出力端子CKIOから出力される。後述されるように、上記システムクロック入出力端子CKIOから出力されるシステムクロックは、シンクロナスDRAMの動作クロックとして利用される。
【0060】
アドレスレジスタADRは、アドレス制御部ADCに結合される。また、データレジスタDTRの出力端子は、マルチプレクサMPXの一方の入力端子に結合され、このマルチプレクサMPXの他方の入力端子は、ポートPORT0〜PORT7に結合される。一方、ウェイトコントロールレジスタWCR1及びWCR2は、ウェイト制御部WATECに結合され、バスコントロールレジスタBCR1は、エリア制御部AREACに結合される。
【0061】
バスコントロールレジスタBCR2ならびにメモリコントロールレジスタMCR,DRAMコントロールレジスタDCR及びPCMCIAコントロールレジスタPCRは、メモリタイミング制御部MTCに結合され、リフレッシュカウントレジスタRFCR,リフレッシュタイマカウントレジスタRTCNT,リフレッシュタイムコンスタントレジスタRTCORならびにリフレッシュタイマコントロールステータスレジスタRTCSRは、リフレッシュ制御部RFCに結合される。
【0062】
アドレス制御部ADCの出力端子は、外部バスE−BUSのアドレスバスEBA0〜EBA25にそれぞれ結合され、マルチプレクサMPXの出力端子はデータバスEBD0〜EBD31にそれぞれ結合される。また、ウェイト制御部WATECの出力信号はウェイトコントロール信号−WAITとなり、エリア制御部AREACの出力信号はチップセレクト信号−CS0〜−CS6ならびにカードイネーブル信号−CE2A及び−CE2Bとなる。
【0063】
メモリタイミング制御部MTCの出力信号は、バススタート信号−BS,ロウアドレスストローブ信号−RAS/チップイネーブル信号−CE,カラムアドレスストローブ信号−CAS/−CASxx(ここで、例えば四つのカラムアドレスストローブ信号−CASLL,−CASLH,−CASHL及び−CASHHを総称して−CASxxのようにxxを付して表す。以下同様),ライトイネーブル信号−WEx/データコントロール信号DQMxx,I/Oリードコントロール信号−ICIORD/I/Oライトコントロール信号−ICIOWR,リード・ライトステータス信号RD/−WR,リードコントロール信号−RD,ライトプロテクト信号WP/16ビットI/Oポート信号−IOIS16ならびにクロックイネーブル信号CKEとなる。
【0064】
アドレス制御部ADCは、キャッシュバスC−BUSのアドレスバスを介して伝達されるアドレス信号A0〜A25を外部バスE−BUSのアドレスバスEBA0〜EBA25に伝達するとともに、一連のアドレスを連続アクセスするためのバーストモードにおいてアドレス信号の所定ビットを自律的に更新するアドレス生成機能を有する。
【0065】
マルチプレクサMPXは、キャッシュバスC−BUS及び外部バスE−BUSのデータバスEBD0〜EBD31を結合するとともに、データバスの所定ビットつまりデータバスEBD16〜EBD23がポートPORT0〜PORT7として使用される場合の切り替え制御を行う。このように、バスステートコントローラBSCにアドレス制御部ADCを設け、バーストモードのためのアドレス生成機能を持たせることで、マイクロプロセッサの外付け部品を増やすことなく、バーストモードを有する半導体メモリ及びPCカードの接続を可能とし、その連続アクセスを高速化することができるものとなる。
【0066】
ウェイト制御部WATECは、外部バスE−BUSのウェイト信号−WAITを介して行われるPCカード又はI/Oコントローラからのサイクル待ち合わせ要求をマイクロプロセッサMPUに伝達する。また、ウェイトコントロールレジスタWCR1及びWCR2に書き込まれた各定数をもとに、リードアクセスからライトアクセスに切り替わった場合のアイドルサイクルの挿入や、各エリアに対するウェイトステート挿入を選択的に実行する。
【0067】
エリア制御部AREACは、バスステートコントロールレジスタラBSC1に書き込まれたエリア0〜エリア6の割り当て等に関する属性とキャッシュバスC−BUSのアドレスバスA26〜A28を介して供給されるエリア選択信号とをもとに、チップセレクト−CS0〜−CS6ならびにカードイネーブル信号−CE2A及び−CE2Bを選択的に形成する。
【0068】
メモリタイミング制御部MTCは、バスコントロールレジスタBCR2に書き込まれたエリア0〜エリア6のバスサイズ等に関する属性やメモリコントロールレジスタMCR,DRAMコントロールレジスタDCR及びPCMCIAコントロールレジスタPCRに書き込まれた定数とをもとに、各種半導体メモリ及びPCカードの動作制御に必要となる起動制御信号等を所定のタイミング条件で選択的に形成する。さらに、リフレッシュ制御部RFCは、リフレッシュカウンタのオーバーフロー割り込み機能を利用して、DRAM及びSDRAM等のリフレッシュ動作を制御する。
【0069】
図13には、図12のバスステートコントローラBSCの一実施例の状態遷移図が示されている。また、図14には、図12のバスステートコントローラBSCの一実施例のステート構成図が示され、図15には、その状態遷移に関する一実施例の遷移条件図が示されている。さらに、図16ないし図18には、図3のマイクロプロセッサMPUのウェイトを伴わないメモリカードMEMCアクセス時,ウェイトを伴うメモリカードMEMCアクセス時ならびにバーストモードを用いたメモリカードMEMCアクセス時の一実施例の信号波形図がそれぞれ示され、図19及び図20には、図3のマイクロプロセッサMPUのウェイトを伴わないI/OカードIOCアクセス時ならびにウェイトを伴うI/OカードIOCアクセス時の一実施例の信号波形図がそれぞれ示されている。
【0070】
以下、図13に沿ってバスステートコントローラBSCの状態遷移に関する具体的な説明を進めるが、図14ないし図20はこれらの説明の過程で随時参照されたい。なお、図13ないし図15に示されるステートは、SRAM,バーストROM及びPCカードの制御に関する部分的なものであり、バスステートコントローラBSCは、他の半導体メモリ等の制御に関する他の多数のステートを有する。
【0071】
図16ないし図20には、参考のため、メモリカードMEMC及びI/OカードIOCに供給されないI/Oクロック信号CKIO,バススタート信号−BS及びリード・ライトステータス信号RD/−WRが併せて示されている。なお、システムクロックあるいは中央処理装置の動作クロックとされるI/Oクロック信号CKIOは、図16ないし図20に示される各種のタイミング信号を作成するための基準クロック信号としての意味を有する。
【0072】
図13において、この実施例のバスステートコントローラBSCは、いわゆるステートマシンとされ、SRAM及びバーストROMならびにメモリカードMEMC及びI/OカードIOCの制御に関する10個のステートST1〜ST10を有する。このうち、ステートST1は、図14に示されるように、IDLEステートであって、マイクロプロセッサMPUの待機状態に対応する。
【0073】
ステートST2〜ST4は、PCMCIA TED1ないしPCMCIA TED3ステートであり、PCMCIAつまりメモリカードMEMC及びI/OカードIOCの起動制御信号となるライトイネーブル信号−WE1及び出力イネーブル信号−OEのアドレス信号A0〜A25に対するセットアップ時間を1サイクル分だけ遅延させるためのものである。
【0074】
ステートST5,ST6及びST7は、それぞれアクセス開始サイクルに対応するNORM T1ステート,ウェイトサイクルに対応するNORM TWステートならびにアクセス終結サイクルに対応するNORM T2ステートであって、ステートST8〜ST10は、ライトイネーブル信号−WE1及び出力イネーブル信号−OEのアドレス信号A0〜A25に対するホールド時間を1サイクル分だけ遅延させるためのPCMCIA TEH1ステート,PCMCIA TEH2ならびにPCMCIA TEH3ステートである。なお、ステートST1〜ST10は、図14の右端欄に示される形で、図16ないし図20の各サイクルと対応する。
【0075】
バスステートコントローラBSCがステートST1のIDLEつまり待機状態にあるとき、外部バスE−BUSが空き状態でメモリつまり外部バスE−BUSに対するアクセス要求が発生しかつPCMCIAコントロールレジスタPCRのセットアップ遅延に関する定数TEDが1〜3である遷移条件(1) が成立すると、バスステートコントローラBSCは、ステートST2に遷移し、ライトイネーブル信号−WE1及び出力イネーブル信号−OEのセットアップ時間の遅延サイクルに入る。このとき、メモリカードMEMC及びI/OカードIOCでは、図17及び図20に例示されるように、まずTpcm0サイクル又はTpci0サイクルによりバススタート信号−BSつまりはライトイネーブル信号−WE1及び出力イネーブル信号−OE(リードコントロール信号−RD)のセットアップ時間がI/Oクロック信号CKIOの1サイクル分だけ遅延される。
【0076】
ステートST2によるセットアップ時間の1サイクル遅延が終了しかつPCMCIAコントロールレジスタPCRの定数TEDが2又は3である遷移条件(4) が成立すると、バスステートコントローラBSCは、ステートST3に遷移し、再びライトイネーブル信号−WE1及び出力イネーブル信号−OEのセットアップ時間の遅延サイクルに入る。
【0077】
このとき、メモリカードMEMC及びI/OカードIOCでは、図17及び図20に例示されるように、Tpcm0wサイクル又はTpci0wサイクルによりバススタート信号−BSつまりはライトイネーブル信号−WE1及び出力イネーブル信号−OEのセットアップ時間がさらにI/Oクロック信号CKIOの1サイクル分だけ遅延される。さらに、ステートST3によるセットアップ時間の1サイクル遅延が終了しかつPCMCIAコントロールレジスタPCRの定数TEDが2である遷移条件(3) が成立すると、バスステートコントローラBSCは、ステートST5に遷移し、アクセス開始サイクルに入る。
【0078】
このとき、メモリカードMEMC及びI/OカードIOCでは、図17及び図20に例示されるように、Tpcm1サイクル又はTpci1サイクルによりバススタート信号−BSつまりは出力イネーブル信号−OE(I/Oリードコントロール信号−ICIORD)又はライトイネーブル信号−WE1(I/Oライトコントロール信号−ICIOWR)がロウレベルの有効レベルとされ、アドレス信号A0〜A25により指定されたアドレスに対する実質的なデータの読み出し又は書き込みが実行される。
【0079】
ステートST2においてセットアップ時間の1サイクル遅延が終了しかつPCMCIAコントロールレジスタPCRの定数TEDが1である遷移条件(2) が成立すると、バスステートコントローラBSCは、そのままステートST5に遷移し、アクセス開始サイクルに入る。また、ステートST3においてセットアップ時間の1サイクル遅延が終了しかつPCMCIAコントロールレジスタPCRの定数TEDが3である遷移条件(5) が成立すると、バスステートコントローラBSCは、ステートST4に遷移し、ライトイネーブル信号−WE1及び出力イネーブル信号−OEのセットアップ時間をさらに1サイクル分だけ遅延させる。そして、ステートST4におけるセットアップ時間の1サイクル遅延の終了つまり遷移条件(6) を受けてステートST5に遷移する。
【0080】
一方、ステートST1の待機状態において、外部バスE−BUSが空き状態でメモリアクセス要求が発生しかつPCMCIAコントロールレジスタPCRの定数TEDが0である遷移条件(7) が成立すると、バスステートコントローラBSCは、直接ステートST5に遷移し、アクセス開始サイクルに入る。このとき、メモリカードMEMC及びI/OカードIOCでは、図16及び図19に例示されるように、ライトイネーブル信号−WE1及び出力イネーブル信号−OEのセットアップ遅延のためのサイクルを挟むことなくTpcm1サイクル又はTpci1サイクルが実行され、データの読み出し又は書き込みが行われる。
【0081】
次に、ステートST5によるアクセス開始サイクルが終了し、ウェイトコントロールレジスタWCR2の定数WAITが例えば1である遷移条件(9) が成立すると、バスステートコントローラBSCは、ステートST6に遷移し、ウェイトサイクルに入る。このとき、メモリカードMEMC及びI/OカードIOCでは、図17及び図20に例示されるように、二つのTpcm1w又はTpci1wによる1回分のウェイトステートが挿入され、出力イネーブル信号−OE(I/Oリードコントロール信号−ICIORD)又はライトイネーブル信号−WE1(I/Oライトコントロール信号−ICIOWR)のハイレベルへの立ち上がりつまりデータの読み出し又は書き込み動作の終了が遅らされる。この間、ウェイトコントロール信号−WAITは、I/Oクロック信号CKIOの次の立ち上がりエッジを包含する所定のタイミングでロウレベルとされ、その次の立ち上がりエッジを包含する所定のタイミングでハイレベルに戻される。
【0082】
ステートST6によるウェイトサイクルが終了し遷移条件(12)が成立すると、バスステートコントローラBSCは、ステートST7に遷移し、アクセス終結サイクルに入る。このとき、メモリカードMEMC及びI/OカードIOCでは、図16ないし図20に例示されるように、Tpcm2サイクル又はTpci2サイクルによって出力イネーブル信号−OE(I/Oリードコントロール信号−ICIORD)又はライトイネーブル信号−WE1(I/Oライトコントロール信号−ICIOWR)がハイレベルの無効レベルに戻され、指定されたアドレスに対するデータの読み出し又は書き込み動作が終結する。なお、ステートST6において、ウェイトコントロールレジスタWCR2の定数WAITが2以上とされ引き続きウェイトが必要な遷移条件(10)が成立すると、バスステートコントローラBSCは再度ステートST6によるウェイトサイクルを挿入する。
【0083】
ステートST7によるアクセス終結サイクルが終了すると、バスステートコントローラBSCは、バーストモード又は全サイクルの終結状態とPCMCIAコントロールレジスタPCRの定数TED及びTEHつまりセットアップ時間及びホールド時間の遅延条件とに応じて選択的にステートST1,ST2,ST5又はST6に遷移する。すなわち、バスステートコントローラBSCは、ステートST7のアクセス終結サイクル時にバーストモードが未終了である遷移条件(12)が成立した場合、ステートST6に戻り、バーストモードが終了するまでこれを繰り返す。このとき、メモリカードMEMC及びI/OカードIOCでは、図18に例示されるように、バススタート信号−BS及び出力イネーブル信号−OE等がバースト回数だけ断続して形成されるとともに、バスステートコントローラBSCのアドレス制御部ADCにより下位4ビットのアドレス信号A0〜A3が順次生成され、一連のアドレスに対する連続アクセスが行われる。
【0084】
一方、ステートST7のアクセス終結サイクル時、例えばバスサイズが小さいためにバイト又はワード単位の分割アクセスが行われその全サイクルが未終了であって、かつセットアップ時間及びホールド時間の遅延が必要ない遷移条件(13)が成立した場合、バスステートコントローラBSCは、ステートST5に戻り、アクセスを繰り返す。このとき、セットアップ時間の遅延が必要な遷移条件(14)が成立すると、バスステートコントローラBSCは、ステートST2に遷移し、またホールド時間の遅延が必要な遷移条件(16)ないし(18)が成立すると、その遅延サイクル数に応じてステートST8,ST9又はST10に遷移する。
【0085】
エリア5及びエリア6におけるメモリカードMEMC及びI/OカードIOCのバーストモードは、キャッシュファイルの際の16バイトのアクセスをバーストROMのページモードと同様な形で実現するためのものである。このとき、バーストモードのデータ転送回数は、バスコントロールレジスタBCR1により設定可能とされ、4回,8回又は16回連続アクセスを任意に選択できる。バーストモードによる読み出し時の先頭アクセスサイクルでは、読み出し要求発生の原因となったデータのアクセスが行われ、残りのサイクルでは、当該データを含む16バイトバウンダリのデータがラップアラウンドでアクセスされる。バーストモードによる書き込み時は、16バイトバウンダリのデータに対応して先頭から順次書き込みが行われる。先頭アクセス時及び2回目以降のアクセス時のウェイトステートの挿入回数は、前述のように、ウェイトコントロールレジスタWCR2の定数WAITによって選択的に設定可能とされる。
【0086】
ステートST7のアクセス終結サイクル時に全サイクルの終了が確認されかつホールド時間の遅延が必要ない遷移条件(15)が成立した場合、バスステートコントローラBSCは、ステートST1に戻る。また、このとき、PCMCIAコントロールレジスタPCRの定数TEHが1以上とされホールド時間の遅延が必要な遷移条件(16)ないし(18)が成立した場合、バスステートコントローラBSCはその遅延サイクル数つまりPCMCIAコントロールレジスタPCRの定数TEHの値に応じて選択的にステートST8,ST9又はST10に遷移する。
【0087】
バスステートコントローラBSCが遷移条件(16)の成立を受けてステートST8の遅延サイクルに遷移したとき、メモリカードMEMC及びI/OカードIOCでは、図17及び図20に例示されるように、Tpcm2wサイクル又はTpci2wサイクルが挿入され、出力イネーブル信号−OE(I/Oリードコントロール信号−ICIORD)又はライトイネーブル信号−WE1(I/Oライトコントロール信号−ICIOWR)の立ち上がりからアドレス信号A0〜A25の次の遷移までのホールド時間が1サイクル分だけ遅延される。また、バスステートコントローラBSCが遷移条件(17)の成立を受けてステートST9の遅延サイクルに遷移すると、Tpcm2wサイクル又はTpci2wサイクルが2回挿入されてそのホールド時間が2サイクル分遅延され、バスステートコントローラBSCが遷移条件(18)の成立を受けてステートST9の遅延サイクルに遷移した場合には、Tpcm2wサイクル又はTpci2wサイクルが3回挿入されてそのホールド時間が3サイクル分遅延される。
【0088】
ステートST8では、その遅延サイクル終了に際してステートST7と同様な終結条件の選択が行われ、バスステートコントローラBSCは、全サイクルの終結状態とPCMCIAコントロールレジスタPCRの定数TEDつまりセットアップ時間の遅延条件とに応じて選択的にステートST1,ST2又はST5に遷移する。すなわち、バスステートコントローラBSCは、ステートST8の遅延サイクル終了時に全サイクルが未終了でありかつセットアップ時間の遅延が必要ない遷移条件(22)の成立を受けてステートST5に、またセットアップ時間の遅延が必要な遷移条件(21)の成立を受けてステートST2にそれぞれ戻り、アクセスを繰り返す。そして、ステートST8で全サイクルの終了が確認され遷移条件(23)が成立すると、ステートST1に戻って待機状態となる。
【0089】
このように、各種半導体メモリやPCカードに対応しうる複雑な機能を有するバスステートコントローラBSCをステートマシンとし、その遷移条件を各コントロールレジスタの定数書き換えにより選択的に設定できるようにすることで、外部バスE−BUSのエリア0ないしエリア6におけるインターフェイス条件を各エリアに結合された半導体メモリ又はPCカードのそれに効率良く適合させることができるとともに、バスステートコントローラBSC自体の論理構成を簡素化し、そのシステム柔軟性を高めることができるものとなる。
【0090】
図21は、シンクロナスDRAMとPCカード(MEMC/(IOC))とを本発明のマイクロプロセッサMPUに接続した場合の接続例を示している。PCカード(MEMC/(IOC))とマイクロプロセッサMPUとの接続に関しては、図9において詳細に説明されているので、図21には、その1部分についてのみ図示される。また、PCカード(MEMC/(IOC))とマイクロプロセッサMPUとの接続に関しての説明は、図9において詳細に説明されているので、この図では行われない。
【0091】
図21に示されるように、SDRAM1およびSDRAM2のそれぞれは、256K×16ビットのメモリ構成にされる。SDRAM1は、マイクロプロセッサMPUから出力されるアドレス信号A11−A2を受けるように結合されたアドレス端子A9−A0と、マイクロプロセッサMPUのシステムクロック入出力端子CKIOに結合されたクロック端子CKLと、マイクロプロセッサMPUのクロックイネーブル信号端子CKEに結合されたクロックイネーブル信号端子CKEと、マイクロプロセッサMPUのチップセレクト信号端子−CS3に結合されたチップセレクト信号端子−CSと、マイクロプロセッサMPUのロウアドレスストローブ信号端子−RAS/−CEに結合されたロウアドレスストローブ信号端子−RASと、マイクロプロセッサMPUのカラムアドレスストローブ信号端子−CAS/−OEに結合されたカラムアドレスストローブ信号端子−CASと、マイクロプロセッサMPUのリード・ライトステータス信号端子RD/−WRに結合されたライトイネーブル信号端子−WEと、マイクロプロセッサMPUのデータ入出力端子D31−D16にそれぞれ結合されたデータ入出力端子I/O15−I/O0、マイクロプロセッサMPUのデータコントロール信号端子DQMUU及びDQMULにそれぞれ結合されたデータコントロール信号端子DQMU及びDQMLをと有する。
【0092】
SDRAM2は、マイクロプロセッサMPUから出力されるアドレス信号A11−A2を受けるように結合されたアドレス端子A9−A0と、マイクロプロセッサMPUのシステムクロック入出力端子CKIOに結合されたクロック端子CKLと、マイクロプロセッサMPUのクロックイネーブル信号端子CKEに結合されたクロックイネーブル信号端子CKEと、マイクロプロセッサMPUのチップセレクト信号端子−CS3に結合されたチップセレクト信号端子−CSと、マイクロプロセッサMPUのロウアドレスストローブ信号端子−RAS/−CEに結合されたロウアドレスストローブ信号端子−RASと、マイクロプロセッサMPUのカラムアドレスストローブ信号端子−CAS/−OEに結合されたカラムアドレスストローブ信号端子−CASと、マイクロプロセッサMPUのリード・ライトステータス信号端子RD/−WRに結合されたライトイネーブル信号端子−WEと、マイクロプロセッサMPUのデータ入出力端子D15−D0にそれぞれ結合されたデータ入出力端子I/O15−I/O0、マイクロプロセッサMPUのデータコントロール信号端子DQMLU及びDQMLLにそれぞれ結合されたデータコントロール信号端子DQMU及びDQMLをと有する。
【0093】
図21に示されるように、マイクロプロセッサMPUと高速なアドレスアクセス時間を有するシンクロナスDRAM(SDRAM1,SDRAM2)とを結合することによって、32ビット幅のメモリとして上記シンクロナスDRAM(SDRAM1,SDRAM2)を利用することが出来る。マイクロプロセッサMPUのシステムクロック入出力端子CKIOから出力されるシステムクロック信号は、中央処理装置CPUの動作クロックと同一の周波数を有するクロック信号であり、かつ、バスステートコントローラBSCにも供給される。
【0094】
図22は、図21に示される上記シンクロナスDRAM(SDRAM1,SDRAM2)のバーストリード動作を説明するためのバスサイクル波形図を示している。なお、同図では省略されているが、クロックイネーブル信号CKEはハイレベルにされている。クロックイネーブル信号CKEは、上記シンクロナスDRAMにリフレッシュ動作させるとき、選択的に、ロウレベルにされる。バススタート信号−BSは、バスサイクルをモニタするためのストローブ信号であり、上記シンクロナスDRAMには接続されない。
【0095】
最初のサイクルTrでは、上記シンクロナスDRAMが割り当てられた空間に対応した信号−CS3がロウレベルにされ、ロウアドレスストローブ信号−RASがロウレベルにされて、上記シンクロナスDRAMにロウアドレスが取り込まれる。次のサイクルTc では、カラムアドレスストローブ信号−CASがロウレベルにされて、上記シンクロナスDRAMにカラムアドレスが取り込まれる。このように中央処理装置CPU側からのクロック信号CKIOの立ち上がりエッジに同期して出力される信号−CS2、−RASや−CAS及びアドレス信号に対して、上記シンクロナスDRAMにおいてクロック信号CKIOの立ち上がりエッジに同期して上記各信号が取り込まれる。すなわち、上記シンクロナスDRAMの読み出し動作ないし図示されない各種動作は、クロック信号CKIOに基づき制御される。
【0096】
3番目のサイクルTd1では、−CASがハイレベルにリセットされる。そして、3番目以降Td 1〜Td 4の4サイクルにわたって上記シンクロナスDRAMからデータD31〜D0が、1D−4Dとして示すように、連続して読み出される。このようなバーストリードによって、4バイト×4サイクル=16バイトのデータを読み出すことができる。上記のようなタイミングでの制御信号の発生は、前記バスステートコントローラBCSにより形成される。
【0097】
図23には、上記シンクロナスDRAM(以下、単にSDRAMという)の一実施例のブロック図が示されている。同図に示されたSDRAMは、特に制限されないが、公知の半導体集積回路の製造技術によって単結晶シリコンのような1つの半導体基板上に形成される。
【0098】
この実施例のSDRAMは、メモリバンクA(BANKA)を構成するメモリアレイ200Aと、メモリバンク(BANKB)を構成するメモリアレイ200Bを備える。それぞれのメモリアレイ200Aと200Bは、マトリクス配置されたダイナミック型メモリセルを備え、図に従えば同一列に配置されたメモリセルの選択端子は列毎のワード線(図示せず)に結合され、同一行に配置されたメモリセルのデータ入出力端子は行毎に相補データ線(図示せず)に結合される。
【0099】
上記メモリアレイ200Aの図示しないワード線はロウデコーダ201Aによるロウアドレス信号のデコード結果に従って1本が選択レベルに駆動される。メモリアレイ200Aの図示しない相補データ線はセンスアンプ及びカラム選択回路202Aに結合される。センスアンプ及びカラム選択回路202Aにおけるセンスアンプは、メモリセルからのデータ読出しによって夫々の相補データ線に現れる微小電位差を検出して増幅する増幅回路である。それにおけるカラムスイッチ回路は、相補データ線を各別に選択して相補共通データ線204に導通させるためのスイッチ回路である。カラムスイッチ回路はカラムデコーダ203Aによるカラムアドレス信号のデコード結果に従って選択動作される。
【0100】
メモリアレイ200B側にも同様にロウデコーダ201B,センスアンプ及びカラム選択回路202B,カラムデコーダ203Bが設けられる。上記相補共通データ線204は入力バッファ210の出力端子及び出力バッファ211の入力端子に接続される。入力バッファ210の入力端子及び出力バッファ211の出力端子は16ビットのデータ入出力端子I/O0〜I/O15に接続される。
【0101】
アドレス入力端子A0〜A9から供給されるロウアドレス信号とカラムアドレス信号はカラムアドレスバッファ205とロウアドレスバッファ206にアドレスマルチプレクス形式で取り込まれる。供給されたアドレス信号はそれぞれのバッファが保持する。ロウアドレスバッファ206はリフレッシュ動作モードにおいてはリフレッシュカウンタ208から出力されるリフレッシュアドレス信号をロウアドレス信号として取り込む。カラムアドレスバッファ205の出力はカラムアドレスカウンタ207のプリセットデータとして供給され、カラムアドレスカウンタ207はコマンドなどで指定される動作モードに応じて、上記プリセットデータとしてのカラムアドレス信号、又はそのカラムアドレス信号を順次インクリメントした値を、カラムデコーダ203A,203Bに向けて出力する。
【0102】
コントローラ212は、特に制限されないが、クロック信号CKIOが入力される入力端子CLKと、クロックイネーブル信号CKEが入力される入力端子と、チップセレクト信号−CSが入力される入力端子と、カラムアドレスストローブ信号−CASが入力される入力端子、ロウアドレスストローブ信号−RASが入力される入力端子と、及びライトイネーブル信号−WEが入力される入力端子と、データコントロール信号DQMU,DQMLが入力される入力端子とに結合される。コントローラ212は、上記各入力端子から供給される外部制御信号とアドレス入力端子A0〜A9からの制御データとが供給され、これらの信号のレベルの変化やタイミングなどに基づいてSDRAMの動作モード及び上記回路ブロックの動作を制御するための内部タイミング信号を形成するもので、そのためのコントロールロジック(図示せず)とモードレジスタ30を備える。
【0103】
クロック信号CKIOはSDRAMのマクタクロックとされ、その他の外部入力信号は当該クロック信号CKIOの立ち上がりエッジに同期して有意とされる。チップセレクト信号−CSはそのロウレベルによってコマンド入力サイクルの開始を指示する。チップセレクト信号−CSがハイレベルのとき(チップ非選択状態)やその他の入力は意味を持たない。但し、メモリバンクの選択状態やバースト動作などの内部動作はチップ非選択状態への変化によって影響されない。−RAS,−CAS,−WEの各信号は通常のDRAMにおける対応信号とは機能が相違され、コマンドサイクルを定義するときに有意の信号とされる。
【0104】
上記ロウアドレス信号は、クロック信号CKIOの立ち上がりエッジに同期するロウアドレスストローブ・バンクアクティブコマンドサイクルにおけるA0〜A8のレベルによって定義される。A9からの入力は、上記ロウアドレスストローブ・バンクアクティブコマンドサイクルにおいてバンク選択信号とみなされる。即ち、A9の入力がロウレベルの時はメモリバンクBANKAが選択され、ハイレベルの時はメモリバンクBANKBが選択される。メモリバンクの選択制御は、特に制限されないが、選択メモリバンク側のロウデコーダのみの活性化、非選択メモリバンク側のカラムスイッチ回路の全非選択、選択メモリバンク側のみの入力バッファ210及び出力バッファ211への接続などの処理によって行うことができる。
【0105】
プリチャージコマンドサイクルにおけるA8の入力は相補データ線などに対するプリチャージ動作の態様を指示し、そのハイレベルはプリチャージの対象が双方のメモリバンクであることを指示し、そのロウレベルは、A9で指示されている一方のメモリバンクがプリチャージの対象であることを指示する。上記カラムアドレス信号は、クロック信号CKIOの立ち上がりエッジに同期するリード又はライトコマンド(カラムアドレス・リードコマンド、カラムアドレス・ライトコマンド)サイクルにおけるA0〜A7のレベルによって定義される。そして、この様にして定義されたカラムアドレスはバーストアクセスのスタートアドレスとされる。
【0106】
このように、シンクロナスDRAMの動作は、クロック信号CKIOに基づいて制御されている。一方、PCカードとしてのメモリカードMEMCないしI/OカードIOCの動作制御も、バスステートコントローラBSCの動作説明から理解されるように、クロック信号CKIOに基づいて制御されている。したがって、シンクロナスDRAMを高速に動作させながら、PCカード(メモリカードMEMC、I/OカードIOC)の動作制御させる場合、PCカードの起動信号としての出力イネーブル信号−OEないしライトイネーブル信号−WEのクロック信号CKIOの立ち下がりあるいはアドレス信号に対するセットアップ時間などが、PCカードの規格を満足できない場合が発生する。
【0107】
そのため、バスステートコントローラBSCの動作説明ないし図17及び図20から理解されるように、バスステートコントローラBSCにPCMCIAコントロールレジスタPCRが設けられ、PCMCIAコントロールレジスタPCRのセットアップ遅延の関する定数TEDないしホールド遅延に関する定数TEHに基づいて、PCカードの起動信号としての出力イネーブル信号−OEないしライトイネーブル信号−WEのクロック信号CKIOの立ち下がりあるいはアドレス信号に対するセットアップ時間やホールド時間などが制御される。
【0108】
このように、PCカードの起動信号としての出力イネーブル信号−OEないしライトイネーブル信号−WEのクロック信号CKIOの立ち下がりあるいはアドレス信号に対するセットアップ時間などを制御することが出来るので、PCカードとシンクロナスDRAMとを本発明のマイクロプロセッサMPUに同時に結合させても、本発明のマイクロプロセッサMPUは、不都合なくPCカードとシンクロナスDRAMに対するアクセスを行うことが出来る。
【0109】
以上の実施例により得られる作用効果は、下記の通りである。すなわち、
(1)パーソナルコンピュータ等に内蔵されるマイクロプロセッサに、外部バスに結合されかつROM,バーストROM,SRAM,PSRAM,DRAM及びシンクロナスDRAM等の各種半導体メモリやメモリカード及びI/Oカード等のPCカードのインターフェイスを並行制御しうるバスステートコントローラを設けることで、インターフェイス制御のための外付け部品を削減しつつ、各種の半導体メモリ及びPCカードを直接かつ同時にマイクロプロセッサの外部バスに結合することができるという効果が得られる。
【0110】
(2)上記(1)項において、外部バスのアドレス空間を所定数のエリアに分割し、これらのエリアに各種半導体メモリ又はPCカードを固定的に割り当てるとともに、マイクロプロセッサにその内部における論理アドレスを外部バスにおける物理アドレスに変換するメモリ管理ユニットを設けることで、外部バスE−BUSの物理アドレスによる制約からユーザを解放し、自由な論理アドレス空間を有するソフトウェアを構築できるという効果が得られる。
【0111】
(3)上記(1)項及び(2)項において、I/Oカードの物理アドレス空間をさらに二分し、I/Oカードがメモリとして機能する場合の物理アドレスと入出力装置として機能する場合の物理アドレスとを独立に割り当てるとともに、これらのアドレス空間をアドレス信号の所定ビットにより選択的に指定できるようにすることで、I/Oカードのメモリ又は入出力装置としての機能をソフトウェアによりダイナミックに切り替えることができるという効果が得られる。
【0112】
(4)上記(1)項ないし(3)項において、バスステートコントローラをステートマシンとし、各エリアに割り当てられた半導体メモリ又はPCカードの種類及びその動作条件等をソフトウェアによって容易に設定しうるコントロールレジスタを設けることで、各エリアにおけるインターフェイス条件を対応する半導体メモリ又はPCカードのインターフェイス条件に効率良く適合させることができるとともに、バスステートコントローラ自体の論理構成を簡素化し、そのシステムの柔軟性を高めることができる
【0113】
(5)上記(1)項ないし(4)項において、バスステートコントローラに、バーストモードのためのアドレス生成機能を持たせることで、マイクロプロセッサの外付け部品を増やすことなく、バーストモードを有する半導体メモリ及びPCカードを結合し、そのアクセスを高速化できるという効果が得られる。
【0114】
(6)上記(1)項ないし(5)項により、マイクロプロセッサの使い勝手を改善できるとともに、マイクロプロセッサを内蔵しかつPCカードインターフェイスを有するパーソナルコンピュータ等の設計工数を削減し外付け部品数を削減して、その低コスト化を図ることができるという効果が得られる。
【0115】
以上、本発明者によってなされた発明を実施例に基づき具体的に説明したが、この発明は、上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。例えば、図1において、マイクロプロセッサMPUつまりマザーボードMBDの外部バスE−BUSに結合される半導体メモリ及びPCカードの種類及び数ならびにその組み合わせは、種々の実施形態を採りうる。また、パーソナルコンピュータは、各種の入出力装置を備えることができるし、そのブロック構成や接続形態も任意である。図2において、パーソナルコンピュータの外観構成は、これらの実施例による制約を受けない。図3において、マイクロプロセッサMPUは任意のブロック構成を採りうるし、そのバス形態も任意である。図4において、示されるマイクロプロセッサMPUの基板配置は本の一例であって、本発明に制約を与えない。
【0116】
図5及び図6において、外部バスE−BUSの物理アドレス空間は、任意数のエリアに分割できるし、その各種半導体メモリ及びPCカードに対する割り当ても任意に設定できる。図7ないし図11において、外部バスE−BUSの信号構成や各信号の有効レベル及び機能ならびに各種半導体メモリ及びPCカードとの組み合わせ等は、これらの実施例による制約を受けない。
【0117】
図12において、バスステートコントローラBSCのブロック構成は、設けられるレジスタの種類及び組み合わせを含めて任意である。図13ないし図15において、バスステートコントローラBSCのステートマシンとしての論理構成ならびに各ステートの機能及び遷移条件等は、種々の実施形態を採りうる。図16ないし図20において、各アクセスモードにおけるアドレス信号及び起動制御信号等の論理レベル及び時間関係等は、この実施例により制約されない。
【0118】
以上の説明では、主として本発明者によってなされた発明をその背景となった利用分野であるパーソナルコンピュータを構成するマイクロプロセッサに適用した場合について説明したが、それに限定されるものではなく、例えば、各種の携帯情報端末及びコンピュータを構成する同様なマイクロプロセッサにも適用できる。この発明は、少なくとも外部バスを有するマイクロプロセッサならびにこのようなマイクロプロセッサを含む装置又はシステムに広く適用できる。
【0119】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。すなわち、パーソナルコンピュータ及び携帯情報端末等に内蔵されるマイクロプロセッサに、その外部バスに結合されかつROM,バーストROM,SRAM,PSRAM,DRAM及びシンクロナスDRAM等の各種半導体メモリやメモリカード及びI/Oカード等のPCカードのインターフェイスを並行制御しうるバスステートコントローラを設けることで、インターフェイス制御のための外付け部品を削減しつつ、各種半導体メモリ及びPCカードとを直接かつ同時にマイクロプロセッサに結合できる。
【0120】
マイクロプロセッサの外部バスのアドレス空間を所定数のエリアに分割し、各エリアに各種半導体メモリ又はPCカードを固定的に割り当てるとともに、マイクロプロセッサにその内部における論理アドレスを外部バスにおける物理アドレスに変換するメモリ管理ユニットを設けることで、マイクロプロセッサの外部バスの物理アドレスによる制約からユーザを解放し、自由な論理アドレス空間を有するソフトウェアを構築することができる。
【0121】
I/Oカードの物理アドレス空間をさらに二分割し、I/Oカードがメモリとして機能する場合の物理アドレスと入出力装置として機能する場合のそれとを独立に割り当てるとともに、これらのアドレス空間をアドレス信号の所定ビットにより選択できるようにすることで、I/Oカードのメモリ又は入出力装置としての機能をソフトウェアによりダイナミックに切り替えることができる。
【0122】
バスステートコントローラをステートマシンとし、各エリアに割り当てられた半導体メモリ又はPCカードの種類及びその動作条件等をソフトウェアにより容易に設定しうるコントロールレジスタを設けることで、各エリアにおけるインターフェイス条件を対応する半導体メモリ又はPCカードのインターフェイス条件に効率良く適合させることができるとともに、バスステートコントローラ自体の論理構成を簡素化し、そのシステムの柔軟性を高めることができる。
【0123】
バスステートコントローラに、一連のアドレスを連続アクセスするバーストモードのためのアドレス生成機能を持たせることで、マイクロプロセッサの外付け部品を増やすことなく、バーストモードを有する半導体メモリ及びPCカードをマイクロプロセッサに結合し、そのアクセスを高速化できる。
【0124】
以上の結果、マイクロプロセッサの使い勝手を改善できるとともに、マイクロプロセッサを内蔵しかつPCカードインターフェイスを有するパーソナルコンピュータ等の設計工数を削減し、その外付け部品数を削減して、パーソナルコンピュータ等の低コスト化を図ることができる。
【図面の簡単な説明】
【図1】この発明に係るマイクロプロセッサを含むパーソナルコンピュータの一実施例を示すシステム構成図である。
【図2】図1のパーソナルコンピュータの一実施例を示す外観構成図である。
【図3】図1のパーソナルコンピュータに含まれるマイクロプロセッサの一実施例を示すブロック図である。
【図4】図3のマイクロプロセッサの一実施例を示す基板配置図である。
【図5】図3のマイクロプロセッサの外部バスのアドレス空間を説明するための一実施例を示すアドレスマップ図である。
【図6】図3のマイクロプロセッサの外部バスのエリア5及びエリア6におけるアドレス空間を説明するための一実施例を示すアドレスマップ図である。
【図7】図3のマイクロプロセッサの外部バスの接続形態を説明するための一実施例を示す部分的な接続図である。
【図8】図3のマイクロプロセッサの外部バスの接続形態を説明するための一実施例を示す他の部分的な接続図である。
【図9】図7及び図8の外部バスにPCカードが結合される場合の一実施例を示す部分的なインターフェイス構成図である。
【図10】図7及び図8の外部バスの一実施例を示す部分的な信号構成図である。
【図11】図7及び図8の外部バスの一実施例を示す他の部分的な信号構成図である。
【図12】図3のマイクロプロセッサに含まれるバスステートコントローラの一実施例を示すブロック図である。
【図13】図12のバスステートコントローラの一実施例を示す状態遷移図である。
【図14】図13のバスステートコントローラの一実施例を示すステート構成図である。
【図15】図13のバスステートコントローラの状態遷移を説明するための一実施例を示す遷移条件図である。
【図16】図3のマイクロプロセッサのウェイトを伴わないメモリカードアクセス時の一実施例を示す信号波形図である。
【図17】図3のマイクロプロセッサのウェイトを伴うメモリカードアクセス時の一実施例を示す信号波形図である。
【図18】図3のマイクロプロセッサのバーストモードを用いたメモリカードアクセス時の一実施例を示す信号波形図である。
【図19】図3のマイクロプロセッサのウェイトを伴わないI/Oカードアクセス時の一実施例を示す信号波形図である。
【図20】図3のマイクロプロセッサのウェイトを伴うI/Oカードアクセス時の一実施例を示す信号波形図である。
【図21】図3のマイクロプロセッサにPCカードとシンクロナスDRAMとが結合される場合の一実施例を部分的に示すインターフェイス構成図である。
【図22】シンクロナスDRAMアクセス時の一実施例を示す信号波形図である。
【図23】シンクロナスDRAMの一実施例を示すブロック図である。
【符号の説明】
MBD…マザーボード、POWU…電源ユニット、MPU…マイクロプロセッサ、E−BUS…外部バス、ROM…リードオンリメモリ、BROM…バーストROM、SRAM…スタティック型RAM、PSRAM…疑似SRAM、DRAM…ダイナミック型RAM、SDRAM…シンクロナスDRAM、BUF1〜BUF2…PCカードバッファ、PCSL1〜PCSL2…PCカードスロット、MEMC…メモリカード、IOC…I/Oカード、LCDC…ディスプレイコントローラ、LCDCON…ディスプレイ用コネクタ、LCD(DP)…液晶ディスプレイ、KBDC…キーボードコントローラ、KBDCON…キーボード用コネクタ、KBD(KB)…キーボード、
MSLOT…PCカードスロット、Ffile…ファイル、FDD…フロッピーディスクドライブ、PEN…入力ペン。
CPU…中央処理ユニット、ALU…演算器、MULT…乗算器、MMU…メモリ管理ユニット、TLB…アドレス変換テーブル、CACHE(Cache)…キャッシュメモリ、BSC…バスステートコントローラ、REFC…リフレッシュコントローラ、DMAC…ダイレクトメモリアクセスコントローラ、TIM(Timer)…タイマ回路、SCI…シリアルコミュニケーションインターフェイス、D/A(D/Aconverter)ディジタル/アナログ変換回路、A/D(A/Dconverter)…アナログ/ディジタル変換回路、INTC…割り込みコントローラ、CPG…クロック発生回路、S−BUS…システムバス、C−BUS…キャッシュバス、P−BUS…周辺バス、
ENCODR…エンコーダ、OG…オアゲート、PORT…ポート、
CBIF…キャッシュバスインターフェイス部、M−BUS…BSCモジュールバス、ADR…アドレスレジスタ、ADC…アドレス制御部、DTR…データレジスタ、MPX…マルチプレクサ、WCR1〜WCR2…ウェイトコントロールレジスタ、WATEC…ウェイト制御部、BCR1〜BCR2…バスコントロールレジスタ、AREAC…エリア制御部、MCR…メモリコントロールレジスタ、DCR…DRAMコントロールレジスタ、PCR…PCMCIAコントロールレジスタ、MTC…メモリタイミング制御部、RFCR…リフレッシュカウントレジスタ、RTCNT…リフレッシュタイマカウントレジスタ、RTCOR…リフレッシュタイムコンスタントレジスタ、RTCSR…リフレッシュタイマコントロールステータスレジスタ、RFC…リフレッシュ制御部、ST1〜ST10…ステート、
22…SDRAM、30…モードレジスタ、200A,200B…メモリアレイ、201A,201B…ロウデコーダ、202A,202B…センスアンプ及びカラム選択回路、203A,203B…カラムデコーダ、205…カラムアドレスバッファ、206…ロウアドレスバッファ、207…カラムアドレスカウンタ、208…リフレッシュカウンタ、210…入力バッファ、211…出力バッファ、212…コントローラ。
[0001]
[Industrial application fields]
The present invention relates to a microprocessor and, for example, to a technique that is particularly effective when used for its external bus interface.
[0002]
[Prior art]
A microprocessor (microcontroller) having an external bus capable of directly connecting various semiconductor memories such as a synchronous DRAM (dynamic random access memory) is, for example, “Nikkei Electronics” dated February 14, 1994 issued by Nikkei McGraw-Hill. 79-91.
[0003]
On the other hand, there are PC cards such as memory cards and I / O cards, and interface conditions for coupling PC cards to microprocessors etc. are standardized by Japan Electronics Industry Promotion Association (JEIDA) and PCMCIA (Personal Computer Memory Card International Association). ing. For the PC card interface, Guidelines Ver. 4.1 “6. 68-pin IC memory card interface and I / O card interface defined in “Electrical / Interface Specification” are included. In order to cope with such a PC card interface, a dedicated IC (integrated circuit) chip such as 82365SL is prepared.
[0004]
[Problems to be solved by the invention]
In a conventional microprocessor or the like, a bus for coupling a PC card is provided separately from a bus for coupling a semiconductor memory or the like, and the PC card is coupled to the bus via the dedicated IC chip. Interface control is performed by these dedicated IC chips. For this reason, when a PC card interface is to be incorporated into a personal computer, a portable information terminal, or the like, the bus configuration becomes complicated, the design man-hour increases, and the number of external parts of the microprocessor increases. As a result, the development period of personal computers, portable information terminals, etc. increases, and the cost reduction is impeded.
[0005]
An object of the present invention is to provide a microprocessor with improved usability. Another object of the present invention is to reduce the design man-hour of a personal computer having a built-in microprocessor and a PC card interface, to reduce the number of external parts, and to reduce the cost. The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
[0006]
[Means for Solving the Problems]
The outline of a typical invention among the inventions disclosed in the present application will be briefly described as follows. That is, various semiconductor memories such as ROM, burst ROM, SRAM, PSRAM, DRAM, and synchronous DRAM, a memory card, and an I / O card are coupled to an external bus to a microprocessor built in a personal computer and a portable information terminal. A bus state controller capable of controlling the PC card interface in parallel is provided. The bus state controller BSC is provided with a control register (PCR) for controlling the setup time of the PC card activation signals (-OE, -WE) when the synchronous DRAM is connected.
[0007]
In addition, the address space of the external bus is divided into a predetermined number of areas, and various semiconductor memories or PC cards are fixedly assigned to the respective areas, and as physical addresses and memories when the I / O card functions as an input / output device. A memory management unit is provided for independently assigning a physical address for functioning and converting a logical address in the microprocessor to a physical address in an external bus.
[0008]
[Action]
According to the above-described means, the above object is achieved for the following reason. Coupling various semiconductor memories and PC cards such as memory cards and I / O cards directly and simultaneously to the external bus of the microprocessor without being restricted by the physical address and reducing external parts for interface control can do. As a result, it is possible to improve the usability of the microprocessor, reduce the design man-hours such as a personal computer having a built-in microprocessor and a PC card interface, reduce the number of external parts, and reduce the cost. .
[0009]
The bus state controller BSC is provided with a control register (PCR) for controlling the setup time of the PC card activation signals (-OE, -WE) when the synchronous DRAM is connected. It is possible to control the fall of the clock signal CKIO of the output enable signal -OE or write enable signal -WE or the setup time for the address signal. As a result, even if the PC card and the synchronous DRAM are simultaneously coupled to the microprocessor MPU of the present invention, the microprocessor MPU of the present invention can access the PC card and the synchronous DRAM without any inconvenience.
[0010]
【Example】
FIG. 1 shows a system configuration diagram of an embodiment of a personal computer including a microprocessor MPU according to the present invention. In the figure, a personal computer uses a motherboard MBD on which a microprocessor MPU is mounted as its basic component. Although not particularly limited to the motherboard MBD, two kinds of PC cards, that is, a memory card MEMC and an I / O card IOC are respectively coupled via PC card slots PCSL1 and PCSL2, and a man-machine interface is coupled via connectors LCDCON and KBDCON. A liquid crystal display LCD and a keyboard KBD are respectively coupled.
[0011]
The memory card MEMC is composed of SRAM (static RAM), EPROM (electrically writable read-only memory), EEPROM (electrically erasable / writable read-only memory), flash EEPROM, or the like. , A data storage card. On the other hand, the I / O card IOC is a modem for facsimile or data transfer, a control circuit used for a LAN, a control circuit used for a global positioning system (GPS), or a small computer system interface controller.
[0012]
The microprocessor MPU of the motherboard MBD is not particularly limited, but six types of semiconductor memory, that is, ROM, burst ROM (BROM), SRAM, PSRAM (pseudo SRAM), DRAM (dynamic RAM) via the external bus E-BUS And a synchronous DRAM (SDRAM). PC card buffers BUF1 and BUF2, a display controller LCDC, and a keyboard controller KBDC are further coupled to the external bus E-BUS. Of these, the PC card buffers BUF1 and BUF2 are connected to the PC card slots PCSL1 and PCSL2, that is, the memory card MEMC and the I / O card IOC, respectively. A display LCD and a keyboard KBD are respectively coupled. A predetermined operating power is supplied from the power supply unit POWU to various semiconductor memories, PC card buffers, and controllers mounted on the motherboard MBD.
[0013]
The microprocessor MPU performs a step operation according to a program read from the ROM or burst ROM, executes a predetermined logical operation process, and controls and supervises each part of the personal computer. The PC card buffers BUF1 and BUF2 perform interface matching with the memory card MEMC or the I / O card IOC mounted in the PC card slot PCSL1 or PCSL2, and the display controller LCDC and the keyboard controller KBDC are connected to the connector LCDCON or Control the liquid crystal display LCD or keyboard KBD coupled via KBDCON.
[0014]
In this embodiment, as will be described later, the microprocessor MPU includes various semiconductor memories such as ROM, burst ROM, SRAM, PSRAM, DRAM and synchronous DRAM coupled to an external bus E-BUS, memory cards MEMC, and I / O. A bus state controller BSC capable of controlling an interface with a PC card such as an O card IOC in parallel is provided. The address space of the external bus E-BUS is divided into a predetermined number of areas, and a semiconductor memory or a PC card is fixedly allocated to these areas, and the I / O card functions as an I / O card. The physical address is assigned independently of the physical address when functioning as a memory card.
[0015]
Therefore, the microprocessor MPU further includes a memory management unit MMU that converts a logical address inside the microprocessor MPU into a physical address on the external bus. As a result, it is possible to directly and simultaneously connect various semiconductor memories and PC cards, that is, the memory card MEMC and the I / O card IOC, without being restricted by the physical address and reducing external components for interface control. This can be coupled to the E-BUS, thereby improving the usability of the microprocessor MPU, and reducing the design man-hour of the personal computer and the number of external parts, thereby reducing the cost.
[0016]
FIG. 2 shows an external configuration diagram of three embodiments of the personal computer of FIG. First, in FIG. 2A, the personal computer is a so-called notebook type, and has a built-in file Ffile consisting of a memory card MEMC or an I / O card IOC mounted in a PC card slot MSLOT (PCSL1, PCSL2). As an input / output device, a keyboard KB (KBD) and a liquid crystal display DP (LCD) are provided. Of these, the liquid crystal display can be folded inward, thereby making it convenient for carrying.
[0017]
2B, the personal computer is a so-called desktop type, and includes a floppy disk drive FDD and a file Ffile made up of a memory card MEMC or an I / O card IOC installed in a PC card slot (not shown). Also, a keyboard KB and a liquid crystal display DP are provided as input / output devices, and a predetermined floppy disk FD is inserted into the floppy disk drive FDD. Thereby, the personal computer has both a storage area as software by the floppy disk FD and a storage area as hardware by the file Ffile.
[0018]
In FIG. 2C, the personal computer is a so-called pen-portable type, and includes two PC card slots into which a file card FfileCARD composed of a memory card MEMC or an I / O card IOC can be mounted. In addition, a liquid crystal display DP with pressure sensitive sheet and an input pen PEN are provided as input / output devices, enabling input by handwritten characters.
[0019]
In these embodiments, the microprocessor MPU constituting the motherboard MBD of the personal computer can directly and simultaneously couple various semiconductor memories and a PC card comprising the memory card MEMC and the I / O card IOC as described above. Has an interface. As a result, the configuration of the motherboard MBD and personal computer is simplified, and it is possible to adopt a form that is convenient for portability due to its miniaturization, weight reduction, and thinning, and high-capacity information can be obtained at high speed by using a burst function to be described later. Therefore, the processing capability as a personal computer is enhanced.
[0020]
FIG. 3 shows a block diagram of an embodiment of a microprocessor MPU included in the personal computer of FIG. 1, and FIG. 4 shows an embodiment of a layout of the microprocessor MPU on a semiconductor substrate (semiconductor chip). It is shown. That is, the microprocessor MPU is formed on a semiconductor substrate such as single crystal silicon by a known semiconductor manufacturing method.
[0021]
In FIG. 3, the microprocessor MPU has a stored program type central processing unit CPU including an arithmetic unit ALU as its basic component. The central processing unit CPU is coupled to a multiplier MULT, a memory management unit MMU, and a cache memory CACHE via a system bus S-BUS (first internal bus), and an address translation buffer TLB is coupled to the memory management unit MMU. Is done. The memory management unit MMU and the cache memory CACHE are further coupled to a cache bus C-BUS (second internal bus) on the other side, and a bus state controller BSC is coupled to the cache bus C-BUS.
[0022]
The bus state controller BSC is coupled to the peripheral bus P-BUS on the other side and to the external bus E-BUS via a bus interface unit and a bus connector (not shown). Among these, the peripheral bus P-BUS (third internal bus) includes a refresh controller REFC, a direct memory access controller DMAC, a timer circuit TIM, a serial communication interface SCI, a digital / analog conversion circuit D / A, and an analog / digital conversion circuit. Peripheral device controllers such as A / D are coupled, and the external bus E-BUS is coupled with the PC card buffers BUF1 and BUF2, the display controller LCDC, and the keyboard controller KBDC for coupling the various semiconductor memories and PC cards. The
[0023]
The bus state controller BSC, refresh controller REFC, direct memory access controller DMAC, timer circuit TIM, serial communication interface SCI, digital / analog conversion circuit D / A and analog / digital conversion circuit A / D are further coupled to an interrupt controller INTC. The interrupt controller is coupled to the central processing unit CPU via an interrupt request signal IRQ.
[0024]
Although not shown in the figure, each of the system bus S-BUS, the cache bus C-BUS and the peripheral bus P-BUS includes an internal address bus for transmitting an address signal, an internal data bus for transmitting data, and , Each including an internal control bus for transmitting control signals. On the other hand, the external bus E-BUS is considered to include an external address bus for transmitting address signals, an external data bus for transmitting data, and an external control bus for transmitting control signals.
[0025]
The central processing unit CPU operates synchronously in accordance with a predetermined system clock signal supplied from the clock pulse generation circuit CPG, executes predetermined arithmetic processing in accordance with a control program read from the cache memory CACHE, and controls each part of the microprocessor MPU. Control and control. At this time, the arithmetic unit ALU executes a predetermined arithmetic logic operation, and the multiplier MULT executes a multiplication process or a product-sum process effective for digital signal processing or the like.
[0026]
The memory management unit MMU converts a logical address output from the inside of the microprocessor MPU, that is, from the central processing unit CPU or the like at the time of memory access into a physical address with reference to an address translation look-aside buffer TLB. The signal is transmitted to the outside of the microprocessor MPU, that is, the external bus E-BUS via the bus state controller BSC. The cache memory CACHE is composed of a semiconductor memory that can be accessed at high speed, and reads and holds control programs or data stored in an external ROM or burst ROM in predetermined block units, contributing to the high-speed operation of the central processing unit CPU. To do.
[0027]
On the other hand, the bus state controller BSC manages the bus access of each peripheral device controller coupled to the peripheral bus P-BUS, controls and supervises the operation thereof, and various semiconductor memories coupled to the external bus E-BUS. Control and control the operation of PC cards and various input / output controllers.
[0028]
In this embodiment, the physical address space of the external bus E-BUS is not particularly limited, but is divided into eight areas, of which seven areas are fixedly assigned to various semiconductor memories and PC cards with a predetermined combination. It is done. In addition, the bus state controller BSC has a function of controlling and managing the timing of control signals for various semiconductor memories and PC cards assigned to each area of the external bus E-BUS under predetermined conditions in parallel. Various control registers are provided for selectively designating these timing conditions.
[0029]
As a result, the external bus E-BUS, as described above, includes various semiconductor memories including ROM, burst ROM, SRAM, PSRAM, DRAM and synchronous DRAM, and a PC including a memory card MEMC and an I / O card IOC. The card can be connected directly and simultaneously. The signal configuration of the external bus E-BUS and the specific configuration of the bus state controller BSC will be described later in detail.
[0030]
Next, the refresh controller REFC, which is one of the peripheral device controllers, controls the refresh operation of the DRAM and SDRAM coupled to the external bus E-BUS, and the direct memory access controller DMAC is coupled to, for example, the external bus E-BUS. Supports high-speed data transfer between the read ROM or burst ROM and the cache memory CACHE or the like.
[0031]
The timer circuit TIM supports time management necessary for the central processing unit CPU, and the serial communication interface SCI supports serial data transfer with an external communication control device or the like. On the other hand, the analog / digital conversion circuit A / D converts an analog signal input from an external sensor or the like into a predetermined digital signal, and the digital / analog conversion circuit D / A is output from the central processing unit CPU. The digital signal is converted into a predetermined analog signal and output externally. The interrupt controller INTC selectively accepts an interrupt request from the bus state controller BSC or each peripheral device controller with a predetermined priority and transmits it as an interrupt request signal IRQ to the central processing unit CPU.
[0032]
In this embodiment, each part constituting the microprocessor MPU is arranged on one semiconductor substrate with predetermined layout conditions as illustrated in FIG. Also, each part of the microprocessor MPU is so-called modularized, selectively formed based on user specifications, and selectively enabled.
[0033]
In FIG. 4, the bus controller corresponds to the bus state controller BSC of FIG. 3, and Timer corresponds to the timer circuit TIM. The system clock formed by the clock pulse generation circuit CPG is distributed and supplied to each part of the microprocessor MPU via a predetermined clock driver Driver.
[0034]
FIG. 5 shows an address map of an embodiment for explaining allocation of physical addresses in the external bus E-BUS of the microprocessor MPU of FIG. 3, and FIG. 6 shows physical addresses in the areas 5 and 6. A partial address map of one embodiment for illustrating address assignment is shown. First, in FIG. 5, the physical address space of the external bus E-BUS of the microprocessor MPU of this embodiment is not particularly limited, but is divided into eight areas 0 to 7, and seven of these areas 0 to 6 are included. It can be used by various semiconductor memories and PC cards coupled to the external bus E-BUS.
[0035]
Of these, area 0 is selectively allocated to normal memory including SRAM and ROM or burst ROM, and area 1 and area 4 are selectively allocated to normal memory. Area 2 is selectively assigned to normal memory, SDRAM or DRAM, and area 3 is selectively assigned to normal memory, SDRAM, DRAM or PSRAM. On the other hand, area 5 is selectively assigned to normal memory or burst ROM or memory card MEMC, and area 6 is selectively assigned to normal memory or burst ROM or memory card MEMC or I / O card IOC. In this specification, the normal memory means an address non-multiplex type memory that is accessed by simultaneously supplying row and column addresses, such as SRAM and ROM, and row and column like DRAM and SDRAM. It is distinguished from an address multiplex type memory in which addresses are supplied in a time division manner and accessed.
[0036]
The area 7 is assigned to an internal device address of the microprocessor MPU, for example, an internal register address of the CPU or a register address in the peripheral device controller, and cannot be used by an external device. Further, which semiconductor memory or PC card is coupled to area 0 to area 6 is selectively designated by a bus control register BCR1 of a bus state controller BSC described later.
[0037]
In this embodiment, the internal address buses of the system bus S-BUS, the cache bus C-BUS and the peripheral bus P-BUS of the microprocessor MPU include signal lines capable of transferring 32-bit address signals A0 to A31. The logical address in the processor MPU is composed of a so-called 4 GB (gigabyte) address space that is alternatively specified by these address signals A0 to A31. On the other hand, the physical address external to the microprocessor MPU, that is, the external bus E-BUS, is alternatively specified by 29-bit address signals A0 to A28 excluding the upper 3 bits, but the upper 3 bits of the address signals A0 to A31. That is, the address signals A26 to A28 are provided for generating chip select signals -CS0 to -CS6 for alternatively designating the areas 0 to 6, and the lower 26 bits of the address signals A0 to A25 are provided. , Provided to alternatively specify addresses within each area. That is, the external address bus in the external bus E-BUS includes signal lines that can transfer the address signals A0 to A25.
[0038]
As a result, physical addresses H'00000000 to H'03FFFFFF are assigned to area 0 in hexadecimal notation, and physical addresses H'04000000 to 07FFFFFF are assigned to area 1. Areas 2 to 4 are assigned physical addresses of H'08000000 to H'0BFFFFFF, H'0C000000 to H'0FFFFFFF, and H'10000000 to H'13FFFFFF, respectively. Physical addresses of '14000000 to H'17FFFFFF and H'18000000 to H'1BFFFFFF are assigned, respectively. As a result, each area has a so-called 64 MB (megabyte) physical address space. Note that the physical address obtained by adding H'20000000 × n (n = 1 to 6) to the physical addresses of area 0 to area 6 is the shadow space of each area, and this multiplier n is the upper 3 bits of the logical address. That is, it is selectively specified by the address signals A29 to A31.
[0039]
The physical addresses of area 5 and area 6 assigned to the memory card MEMC and the I / O card IOC are further divided into two as shown in FIG. Among these, in area 5, a lower area consisting of addresses H'14000000 to H'15FFFFFF is allocated as a common memory or attribute memory area for the memory card MEMC, and an upper area consisting of addresses H'16000000 to H'17FFFFFF The area is a use-prohibited area. In area 6, a lower area composed of addresses H'18000000 to H'19FFFFFF is assigned as a common memory or attribute memory area when the memory card MEMC or the I / O card IOC functions as a memory, and the address H ' The upper area composed of 1A000000 to H′1BFFFFFF is an I / O area when the I / O card IOC functions as an input / output device. As a result, the common memory or attribute memory area in the areas 5 and 6 is a so-called 32 MB address space.
[0040]
Although not particularly limited, whether the area divided into two, that is, the I / O card IOC, functions as a memory or an input / output device is selectively designated by an address signal A25, and the remaining 25 MB of address space is 25. It is alternatively designated by bit address signals A0 to A24. As is well known, the PCMCIA standard allows a PC card to have a maximum address space of 64 MB. In this case, as will be described later, an address signal A25 of the most significant bit further passes through the output port of the microprocessor MPU. Is output on another route. As described above, the physical address space of the area 6 is divided into two and can be selectively designated by the address A25, so that the function of the I / O card IOC coupled to the area 6 as a memory or an input / output device can be realized by software. As a result, it is possible to dynamically switch, and the convenience of the microprocessor MPU is improved.
[0041]
As described above, the physical address space of the microprocessor MPU is divided into eight areas, seven of which are fixedly assigned to various semiconductor memories or PC cards coupled to the external bus E-BUS of the microprocessor MPU. From the user's point of view, this seems to cause a restriction on the distribution of logical addresses in software. However, in this embodiment, as described above, the microprocessor MPU is provided with the memory management unit MMU, and the correspondence between the internal logical address and the physical address on the external bus E-BUS is the rewriting of the address translation buffer TLB, That is, it can be easily changed by rewriting the contents of an address translation pair in an address translation table stored in an external memory coupled to the external bus E-BUS, for example, a DRAM. For this reason, the user is released from the restriction by the physical address of the external bus E-BUS, and can construct software having a free logical address space.
[0042]
7 and 8 are connection diagrams of an embodiment for explaining the connection form of the external bus E-BUS of the microprocessor MPU of FIG. 9 shows an interface configuration diagram of an embodiment when the external bus E-BUS of FIG. 7 and FIG. 8 and the PC card are combined, and FIG. 10 and FIG. A signal configuration diagram of one embodiment of eight external buses E-BUS is shown. 7 and 8, semiconductor memories that can be coupled to areas 0 to 4 are appropriately assigned. However, in some cases, combinations that can be coupled are limited depending on the area. 10 and 11 should be referred to as appropriate in the course of the description of FIGS.
[0043]
In FIG. 7, the external bus E-BUS includes 26-bit external address buses EBA0 to EBA25 that are address output buses when viewed from the microprocessor MPU, and 32-bit external data buses EBD0 to EBD31 that are input / output buses. . Of these, the address signals A0 to A25 transmitted through the address buses EBA0 to EBA25 are commonly supplied to all areas to which various semiconductor memories and PC cards are coupled, but the external data buses EBD0 to EBD31 are A selective connection form is adopted according to the bus size of the semiconductor memory and the PC card coupled to the external bus E-BUS. In DRAM and SDRAM, row and column addresses are supplied to the same line on the address bus in a time-sharing manner, so that each address input terminal of the DRAM and SDRAM has a predetermined number of external address buses EBA0 to EBA25. Will be connected to the line.
[0044]
That is, in the microprocessor MPU of this embodiment, the bus sizes of area 0 to area 6 can be designated for each area by a bus control register BCR2 of the bus state controller BSC described later. Of these, in area 0, the bus size of bytes (8 bits), words (16 bits), and long words (32 bits) can be arbitrarily selected. In areas 1 to 6, each area is SRAM, ROM, or burst. When assigned to ROM, byte, word or long word can be selected arbitrarily, but when assigned to SDRAM, DRAM or PSRAM, it is limited to selection of word or long word by combination with memory control register MCR1. The Further, when area 2 and area 3 are allocated to the DRAM, the bus size is limited to only words, and when area 5 and area 6 are allocated to the PC card, either byte or word is selected.
[0045]
Thereby, the lower 16-bit data buses EBD0 to EBD15 are coupled to all the semiconductor memories and PC cards assigned to the areas 0 to 6, but the upper 16-bit data buses EBD16 to EBD23 and EBD24 to EBD31 are These are selectively coupled according to the bus size of each area. The 8-bit data buses EBD16 to EBD23 can also be used as general-purpose ports PORT0 to PORT7 on condition that the area bus size is 16 bits or less, as will be exemplified later. In this case, however, the port function enable bit of the bus state controller BSC2 is set to logic "1".
[0046]
The external bus E-BUS is a bus start signal -BS indicating that data on the external bus E-BUS is valid (here, a so-called inverted signal or the like that is selectively set to a low level when it is valid). Is provided with an external control bus EBC as a control signal line for transmitting-. This signal -BS is converted into an activation signal necessary for various semiconductor memories and PC cards by the bus state controller BSC. For this reason, the bus start signal -BS is supplied to an I / O controller having a bus management function, such as the display controller LCDC and the keyboard controller KBDC, but is not supplied to a semiconductor memory and a PC card having no bus management function. .
[0047]
On the other hand, the external control bus EBC of the external bus E-BUS includes a control signal line for transmitting chip select signals -CS0 to -CS6 for alternatively designating area 0 to area 6, and an area 0 bus. A control signal line is provided for transmitting mode signals MD3 to MD5 used for specifying the size and endian. Of these, the chip select signals -CS5 and -CS6 are used together as card enable signals -CE1 for the area 5 and area 6 PC cards, that is, -CE1A and -CE1B, respectively. The mode signals MD3 and MD4 are used together as card enable signals -CE2 for these PC cards, that is, -CE2A and -CE2B, respectively. The mode signal MD5 is a row address strobe for the second set of DRAMs coupled to the area 3. It is used together as signal -RAS2.
[0048]
The external control bus EBC of the external bus E-BUS further includes a control signal line for transmitting a row address strobe signal -RAS serving as an activation control signal for various semiconductor memories and PC cards, and column address strobe signals -CASLL, -CASLH. , -CASHL and -CASHH, control signal lines, write enable signals -WE0 to -WE3, read / write status signal RD / -WR, read control signal -RD, I / O clock signal CKIO, A control signal line for transmitting each of the clock enable signals CKE is provided. The I / O clock signal CKIO indicates a system clock input to the microprocessor MPU or an operation clock signal supplied to the SDRAM when the SDRAM is connected. The microprocessor MPU receives the I / O clock signal CKIO. Based on this, the timing management of various output signals is performed.
[0049]
Among these, the row address strobe signal -RAS is supplied as the row address strobe signal -RAS for the DRAM and SDRAM, and is also used as the chip enable signal -CE for the PSRAM in the area 3. The column address strobe signals -CASLL, -CASLH, -CASHL and -CASHH are columns corresponding to the data buses D0 to D7, D8 to D15, D16 to D23 and D24 to D31 for a 32-bit bus size DRAM. Of these, the column address strobe signal -CASLL is used as the column address strobe signal -CAS for the SDRAM or the output enable signal -OE for the PSRAM, and the column address strobe signals -CASHL and -CASHH are supplied as the address strobe signal. The byte address column address strobe signals -CAS2L and -CAS2H for the second set of DRAMs are used together.
[0050]
Write enable signals -WE0 to -WE3 are write enable signals or data corresponding to data buses EBD0 to EBD7, EBD8 to EBD15, EBD16 to EBD23, and EBD24 to EBD31, respectively, for 32-bit bus size SRAM and PSRAM or SDRAM. The control signals DQMLL, DQMLU, DQMUL, and DQMUU are supplied. Of these, the write enable signal -WE2 is used together as the I / O read control signal -ICIOORD for the I / O card IOC in the area 6, and the write enable signal- WE3 is used together as an I / O write control signal-ICIOWR.
[0051]
The read / write status signal RD / -WR is supplied as a write enable signal -WE for DRAM and SDRAM, and is also used as a read / write signal R / -W for an I / O controller (not shown). The read control signal -RD is supplied as an output enable signal -OE for the ROM and SRAM and the memory card MEMC and the I / O card IOC, and the I / O clock signal CKIO and the clock enable signal CKE are supplied to the SDRAM. Is done.
[0052]
In this embodiment, the external bus E-BUS includes a control signal line for transmitting a write protect signal WP as an external input bus dedicated to a PC card, and wait control signals -WAIT, bus request signals as bus control signals. A control signal line for transmitting each of the BREQ and the bus acknowledge signal BACK is provided. Of these, the write protect signal WP is selectively input from the memory card MEMC that requires write prohibition, and 16 for notifying the microprocessor MPU that the bus size of the I / O card IOC is 16 bits. It is also used as a bit I / O port signal-IOIS16.
[0053]
The wait control signal -WAIT is selectively input as necessary from a PC card, an I / O controller, and the like that require the microprocessor MPU to wait for a cycle. Further, the bus request signal -BREQ is selectively input as needed from a bus master who wants to occupy the external bus E-BUS, and the bus acknowledge signal BACK is output from the microprocessor MPU as a bus use permission signal for these bus masters. . The write enable signal -WE1 output from the microprocessor MPU is transmitted to the PC card as the write enable signal -WE / -PGM. Note that the various semiconductor memories and PC cards shown in FIG. 8 do not have a function as a bus master.
[0054]
Although not included in the external bus E-BUS, the memory card MEMC and the I / O card IOC receive card detection signals -CD1 and -CD2 respectively indicating that the PC card is installed in the PC card slots PCSL1 and PCSL2. A control signal line for transmitting and a control signal line for transmitting the reset signal RESET are coupled. These control signals are detected by a board controller BC provided in the mother board MBD and used for board control. The motherboard MBD further includes a terminal for inputting a power supply voltage VCC and a ground potential GND as an operation power supply. The power supply voltage and the ground potential are paired with various semiconductor memories, PC cards, I / O controllers and a microprocessor MPU. Distribute via the power supply line.
[0055]
As described above, the PC card such as the memory card MEMC or the I / O card IOC is coupled to the external bus E-BUS via the PC card buffer BUF1 or BUF2, and the address signal A25 is the I / O card in the area 6. It serves to identify whether the IOC functions as a memory or an input / output device. Therefore, when the memory card MEMC and the I / O card IOC have a 64 MB address area, as shown in FIG. 9, the address used for selecting the highest address through the port PORT of the microprocessor MPU. The signal A25 is output again. The port PORT includes a reset signal RESET and an attribute memory space selection signal -REG.
[0056]
Motherboard MBD includes an encoder ENCODER for setting interrupt levels IRL0 to IRL3. Needless to say, these signals conform to the PCMCIA standard. As shown in FIG. 9, the PC card buffer BUF1 or BUF2 includes a bidirectional buffer B1 provided in the external data buses EBD0 to EBD7 and a bidirectional buffer B2 provided in the external data buses EBD8 to EBD15. In the bidirectional buffers B1 and B2, the data transmission direction (DIR) is controlled by the read / write status signal RD / -WR, respectively, and the gating operation (G) is controlled by the card enable signals -CE1B and -CE2B. Is done.
[0057]
FIG. 12 is a block diagram showing an embodiment of the bus state controller BSC included in the microprocessor MPU of FIG. In the figure, the bus state controller BSC is connected to the cache bus interface unit CBIF via the cache bus interface unit CBIF coupled to the cache bus C-BUS of the microprocessor MPU and the module bus M-BUS in the bus state controller BSC. Combined address register ADR, data register DTR, wait control registers WCR1 and WCR2, bus control registers BCR1 and BCR2, memory control register MCR, DRAM control register DCR, PCMCIA control register PCR, refresh count register RFCR, refresh timer count register RTCNT , Refresh time constant register RTCOR and Refre And a shoe timer control status register RTCSR.
[0058]
The contents of these registers can be arbitrarily rewritten by the central processing unit CPU of the microprocessor MPU, that is, its software. That is, the central processing unit CPU sends each register (ADR, DTR, WCR1, WCR2, BCR1, BCR2, MCR, DCR, PCMCIA, through the cache bus C-BUS, the cache bus interface unit CBIF, and the module bus M-BUS. The contents of PCR, RFCR, RTCNT, RTCOR and RTCSR) can be written or changed.
[0059]
The bus driver BSC is supplied with an operation clock CK generated from a clock pulse generator CPG shown in FIG. 4 as an operation clock for determining the operation timing. The clock signal CK is a clock having the same frequency as the operation clock of the central processing unit CPU, and is output from the system clock input / output terminal CKIO as a system clock to the outside of the micro processor MPU. As will be described later, the system clock output from the system clock input / output terminal CKIO is used as an operation clock of the synchronous DRAM.
[0060]
Address register ADR is coupled to address controller ADC. The output terminal of the data register DTR is coupled to one input terminal of the multiplexer MPX, and the other input terminal of the multiplexer MPX is coupled to the ports PORT0 to PORT7. On the other hand, the wait control registers WCR1 and WCR2 are coupled to the wait control unit WATEC, and the bus control register BCR1 is coupled to the area control unit AREAC.
[0061]
The bus control register BCR2, the memory control register MCR, the DRAM control register DCR, and the PCMCIA control register PCR are coupled to the memory timing control unit MTC, and the refresh count register RFCR, the refresh timer count register RTCNT, the refresh time constant register RTCOR, and the refresh timer control The status register RTCSR is coupled to the refresh control unit RFC.
[0062]
The output terminals of address control unit ADC are coupled to address buses EBA0 to EBA25 of external bus E-BUS, respectively, and the output terminals of multiplexer MPX are coupled to data buses EBD0 to EBD31, respectively. Further, the output signal of the wait control unit WATEC is the wait control signal -WAIT, and the output signals of the area control unit AREAC are the chip select signals -CS0 to -CS6 and the card enable signals -CE2A and -CE2B.
[0063]
The output signal of the memory timing control unit MTC is a bus start signal-BS, a row address strobe signal-RAS / chip enable signal-CE, a column address strobe signal-CAS / -CASxx (here, for example, four column address strobe signals- CASLL, -CASLH, -CASHL, and -CASHH are collectively referred to as -CASxx, and the same applies hereinafter), write enable signal -WEx / data control signal DQMxx, I / O read control signal -ICIORD / I / O write control signal -ICIOWR, read / write status signal RD / -WR, read control signal -RD, write protect signal WP / 16 bit I / O port signal -IOIS16 and clock enable signal The KE.
[0064]
The address control unit ADC transmits address signals A0 to A25 transmitted through the address bus of the cache bus C-BUS to the address buses EBA0 to EBA25 of the external bus E-BUS and continuously accesses a series of addresses. Address generation function for autonomously updating predetermined bits of the address signal in the burst mode.
[0065]
The multiplexer MPX couples the data buses EBD0 to EBD31 of the cache bus C-BUS and the external bus E-BUS, and switching control when predetermined bits of the data bus, that is, the data buses EBD16 to EBD23 are used as the ports PORT0 to PORT7. I do. As described above, the bus state controller BSC is provided with the address control unit ADC and has an address generation function for the burst mode, so that the semiconductor memory and the PC card having the burst mode can be obtained without increasing the number of external components of the microprocessor. Can be connected, and the continuous access can be speeded up.
[0066]
The wait control unit WATEC transmits a cycle wait request from the PC card or the I / O controller, which is performed via the wait signal -WAIT of the external bus E-BUS, to the microprocessor MPU. Also, based on the constants written in the wait control registers WCR1 and WCR2, insertion of an idle cycle when switching from read access to write access and insertion of wait states for each area are selectively executed.
[0067]
The area control unit AREAC has attributes related to the allocation of the areas 0 to 6 written in the bus state control register BSC1 and area selection signals supplied via the address buses A26 to A28 of the cache bus C-BUS. And chip select signals -CS0 to -CS6 and card enable signals -CE2A and -CE2B are selectively formed.
[0068]
The memory timing control unit MTC is based on the attributes related to the bus size of area 0 to area 6 written in the bus control register BCR2 and the constants written in the memory control register MCR, DRAM control register DCR and PCMCIA control register PCR. In addition, activation control signals and the like necessary for operation control of various semiconductor memories and PC cards are selectively formed under predetermined timing conditions. Further, the refresh control unit RFC controls the refresh operation of the DRAM and SDRAM using the overflow interrupt function of the refresh counter.
[0069]
FIG. 13 shows a state transition diagram of one embodiment of the bus state controller BSC of FIG. FIG. 14 shows a state configuration diagram of one embodiment of the bus state controller BSC of FIG. 12, and FIG. 15 shows a transition condition diagram of one embodiment regarding the state transition. Further, FIG. 16 to FIG. 18 show an embodiment when accessing the memory card MEMC without the wait of the microprocessor MPU of FIG. 3, accessing the memory card MEMC with the wait, and accessing the memory card MEMC using the burst mode. FIG. 19 and FIG. 20 show an embodiment of the microprocessor MPU of FIG. 3 when accessing the I / O card IOC without a wait and when accessing the I / O card IOC with a wait. The signal waveform diagrams are respectively shown.
[0070]
Hereinafter, a specific description of the state transition of the bus state controller BSC will be made with reference to FIG. 13, but FIGS. 14 to 20 should be referred to as needed in the course of these descriptions. The state shown in FIGS. 13 to 15 is a partial state related to the control of the SRAM, burst ROM, and PC card, and the bus state controller BSC has many other states related to the control of other semiconductor memories and the like. Have.
[0071]
16 to 20 also show an I / O clock signal CKIO, a bus start signal −BS, and a read / write status signal RD / −WR that are not supplied to the memory card MEMC and the I / O card IOC for reference. Has been. The I / O clock signal CKIO used as the system clock or the operation clock of the central processing unit has a meaning as a reference clock signal for generating various timing signals shown in FIGS.
[0072]
In FIG. 13, the bus state controller BSC of this embodiment is a so-called state machine, and has 10 states ST1 to ST10 relating to control of SRAM and burst ROM, memory card MEMC and I / O card IOC. Among these, the state ST1 is an IDLE state as shown in FIG. 14, and corresponds to a standby state of the microprocessor MPU.
[0073]
States ST2 to ST4 are PCMCIA TED1 to PCMCIA TED3 states, which correspond to the address signals A0 to A25 of the write enable signal -WE1 and the output enable signal -OE serving as activation control signals for the PCMCIA, that is, the memory card MEMC and the I / O card IOC. This is for delaying the setup time by one cycle.
[0074]
States ST5, ST6, and ST7 are a NORM T1 state corresponding to an access start cycle, a NORM TW state corresponding to a wait cycle, and a NORM T2 state corresponding to an access end cycle, and states ST8 to ST10 are write enable signals. -WE1 and output enable signal-PCMCIA TEH1 state, PCMCIA TEH2 and PCMCIA TEH3 state for delaying the hold time of OE for address signals A0 to A25 by one cycle. The states ST1 to ST10 correspond to the cycles shown in FIGS. 16 to 20 in the form shown in the rightmost column of FIG.
[0075]
When the bus state controller BSC is in the IDLE of the state ST1, that is, in the standby state, the access request to the memory, that is, the external bus E-BUS is generated when the external bus E-BUS is empty, and the constant TED relating to the setup delay of the PCMCIA control register PCR is When the transition condition (1) of 1 to 3 is satisfied, the bus state controller BSC transitions to the state ST2 and enters a delay cycle of the setup time of the write enable signal -WE1 and the output enable signal -OE. At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIG. 17 and FIG. 20, first, the bus start signal -BS, that is, the write enable signal -WE1 and the output enable signal -by the Tpcm0 cycle or the Tpci0 cycle- The setup time of OE (read control signal-RD) is delayed by one cycle of the I / O clock signal CKIO.
[0076]
When the one cycle delay of the setup time by the state ST2 is completed and the transition condition (4) in which the constant TED of the PCMCIA control register PCR is 2 or 3 is satisfied, the bus state controller BSC transits to the state ST3 and is again write-enabled. A delay cycle of the setup time of signal -WE1 and output enable signal -OE is entered.
[0077]
At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIG. 17 and FIG. 20, the bus start signal -BS, that is, the write enable signal -WE1 and the output enable signal -OE is performed by the Tpcm0w cycle or the Tpci0w cycle. Is further delayed by one cycle of the I / O clock signal CKIO. Further, when the one-cycle delay of the setup time by the state ST3 is completed and the transition condition (3) in which the constant TED of the PCMCIA control register PCR is 2 is satisfied, the bus state controller BSC transits to the state ST5, and the access start cycle to go into.
[0078]
At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIG. 17 and FIG. 20, the bus start signal -BS, that is, the output enable signal -OE (I / O read control) is performed in the Tpcm1 cycle or the Tpci1 cycle. The signal -ICIOORD) or the write enable signal -WE1 (I / O write control signal -ICIOWR) is set to the low level effective level, and substantial data reading or writing is executed for the address specified by the address signals A0 to A25. The
[0079]
When the transition condition (2) in which the one cycle delay of the setup time is completed in the state ST2 and the constant TED of the PCMCIA control register PCR is 1, the bus state controller BSC shifts to the state ST5 as it is, and enters the access start cycle. enter. When the transition condition (5) in which the one cycle delay of the setup time is completed and the constant TED of the PCMCIA control register PCR is 3 is satisfied in the state ST3, the bus state controller BSC transits to the state ST4, and the write enable signal -We delay the setup time of WE1 and output enable signal -OE by one more cycle. Then, in response to the end of the one cycle delay of the setup time in the state ST4, that is, the transition condition (6), the state transitions to the state ST5.
[0080]
On the other hand, when the transition condition (7) in which the external bus E-BUS is empty and a memory access request is generated and the constant TED of the PCMCIA control register PCR is 0 is satisfied in the standby state of the state ST1, the bus state controller BSC Directly transit to state ST5 and enter an access start cycle. At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIGS. 16 and 19, the Tpcm1 cycle without interposing the cycle for the setup delay of the write enable signal -WE1 and the output enable signal -OE. Alternatively, the Tpci1 cycle is executed, and data is read or written.
[0081]
Next, when the access start cycle by the state ST5 is completed and the transition condition (9) in which the constant WAIT of the wait control register WCR2 is 1, for example, is satisfied, the bus state controller BSC transits to the state ST6 and enters the wait cycle. . At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIG. 17 and FIG. 20, one wait state by two Tpcm1w or Tpci1w is inserted, and the output enable signal -OE (I / O The rise of the read control signal -ICIOORD) or the write enable signal -WE1 (I / O write control signal -ICIOWR) to the high level, that is, the end of the data read or write operation is delayed. During this time, the wait control signal -WAIT is set to the low level at a predetermined timing including the next rising edge of the I / O clock signal CKIO, and returned to the high level at the predetermined timing including the next rising edge.
[0082]
When the wait cycle in state ST6 ends and the transition condition (12) is satisfied, the bus state controller BSC transitions to state ST7 and enters an access termination cycle. At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIGS. 16 to 20, the output enable signal -OE (I / O read control signal -ICIOORD) or the write enable is performed by the Tpcm2 cycle or the Tpci2 cycle. The signal -WE1 (I / O write control signal -ICIOWR) is returned to the high invalid level, and the data read or write operation for the designated address is terminated. In the state ST6, when the constant WAIT of the wait control register WCR2 is set to 2 or more and the transition condition (10) that continuously requires the wait is satisfied, the bus state controller BSC inserts the wait cycle by the state ST6 again.
[0083]
When the access termination cycle by the state ST7 is completed, the bus state controller BSC selectively selects according to the termination state of the burst mode or all cycles and the constants TED and TEH of the PCMCIA control register PCR, that is, the setup time and hold time delay conditions. Transition to state ST1, ST2, ST5 or ST6. That is, the bus state controller BSC returns to the state ST6 when the transition condition (12) in which the burst mode is not completed is satisfied in the access termination cycle of the state ST7, and repeats this until the burst mode is terminated. At this time, in the memory card MEMC and the I / O card IOC, as illustrated in FIG. 18, the bus start signal -BS, the output enable signal -OE, and the like are intermittently formed by the number of bursts, and the bus state controller The address control unit ADC of the BSC sequentially generates lower 4 bits of address signals A0 to A3, and continuous access to a series of addresses is performed.
[0084]
On the other hand, in the access termination cycle of state ST7, for example, because the bus size is small, divided access is performed in units of bytes or words, the entire cycle is not completed, and the setup time and hold time are not delayed. When (13) is established, the bus state controller BSC returns to the state ST5 and repeats access. At this time, when the transition condition (14) that requires the setup time delay is satisfied, the bus state controller BSC transitions to the state ST2, and the transition conditions (16) to (18) that require the hold time delay are satisfied. Then, the state transits to the state ST8, ST9 or ST10 according to the number of delay cycles.
[0085]
The burst mode of the memory card MEMC and the I / O card IOC in the areas 5 and 6 is for realizing 16-byte access in the case of a cache file in the same manner as the page mode of the burst ROM. At this time, the number of times of data transfer in the burst mode can be set by the bus control register BCR1, and continuous access can be arbitrarily selected 4, 8, or 16 times. In the head access cycle at the time of reading in the burst mode, the data causing the read request is accessed, and in the remaining cycles, the 16-byte boundary data including the data is accessed in a wraparound. At the time of writing in the burst mode, writing is sequentially performed from the head corresponding to 16-byte boundary data. As described above, the number of wait state insertions during the first access and the second and subsequent accesses can be selectively set by the constant WAIT of the wait control register WCR2.
[0086]
When the transition condition (15) in which the end of all the cycles is confirmed and the hold time is not required is satisfied in the access termination cycle of the state ST7, the bus state controller BSC returns to the state ST1. At this time, if the constant TEH of the PCMCIA control register PCR is set to 1 or more and the transition conditions (16) to (18) requiring hold time delay are satisfied, the bus state controller BSC determines the number of delay cycles, that is, PCMCIA control. Depending on the value of the constant TEH of the register PCR, a transition is selectively made to the state ST8, ST9 or ST10.
[0087]
When the bus state controller BSC transitions to the delay cycle of the state ST8 in response to the establishment of the transition condition (16), the memory card MEMC and the I / O card IOC have Tpcm2w cycles as illustrated in FIGS. Alternatively, the Tpci2w cycle is inserted, and the next transition of the address signals A0 to A25 from the rising edge of the output enable signal -OE (I / O read control signal -ICIOORD) or the write enable signal -WE1 (I / O write control signal -ICIOWR). Hold time is delayed by one cycle. When the bus state controller BSC transitions to the delay cycle of the state ST9 in response to the establishment of the transition condition (17), the Tpcm2w cycle or the Tpci2w cycle is inserted twice, and the hold time is delayed by two cycles. When the BSC transitions to the delay cycle of the state ST9 in response to the establishment of the transition condition (18), three Tpcm2w cycles or Tpci2w cycles are inserted and the hold time is delayed by three cycles.
[0088]
In the state ST8, the termination condition similar to that in the state ST7 is selected at the end of the delay cycle, and the bus state controller BSC responds according to the termination state of all cycles and the constant TED of the PCMCIA control register PCR, that is, the setup time delay condition. Selectively transition to state ST1, ST2 or ST5. That is, the bus state controller BSC receives a transition condition (22) in which all cycles are not completed at the end of the delay cycle of state ST8 and does not require a setup time delay, and the delay of the setup time is changed to state ST5. In response to the establishment of the necessary transition condition (21), the process returns to the state ST2 to repeat access. When the end of all cycles is confirmed in the state ST8 and the transition condition (23) is satisfied, the process returns to the state ST1 and enters a standby state.
[0089]
In this way, by making the bus state controller BSC having a complicated function capable of supporting various semiconductor memories and PC cards as a state machine, the transition condition can be selectively set by constant rewriting of each control register. The interface conditions in areas 0 to 6 of the external bus E-BUS can be efficiently adapted to those of the semiconductor memory or PC card coupled to each area, and the logical configuration of the bus state controller BSC itself can be simplified. System flexibility can be increased.
[0090]
FIG. 21 shows a connection example when a synchronous DRAM and a PC card (MEMC / (IOC)) are connected to the microprocessor MPU of the present invention. Since the connection between the PC card (MEMC / (IOC)) and the microprocessor MPU has been described in detail in FIG. 9, only one part thereof is shown in FIG. In addition, the connection between the PC card (MEMC / (IOC)) and the microprocessor MPU is described in detail in FIG.
[0091]
As shown in FIG. 21, each of SDRAM1 and SDRAM2 has a memory configuration of 256K × 16 bits. SDRAM 1 includes address terminals A9-A0 coupled to receive address signals A11-A2 output from microprocessor MPU, a clock terminal CKL coupled to system clock input / output terminal CKIO of microprocessor MPU, and a microprocessor. A clock enable signal terminal CKE coupled to the clock enable signal terminal CKE of the MPU, a chip select signal terminal −CS coupled to the microprocessor MPU −CS 3, and a row address strobe signal terminal − of the microprocessor MPU A row address strobe signal terminal -RAS coupled to RAS / -CE and a column address strobe signal coupled to column address strobe signal terminal -CAS / -OE of the microprocessor MPU. Data input / output coupled to terminal -CAS, write enable signal terminal -WE coupled to read / write status signal terminal RD / -WR of microprocessor MPU, and data input / output terminals D31-D16 of microprocessor MPU, respectively. Terminal I / O15-I / O0 and data control signal terminals DQMU and DQML respectively coupled to data control signal terminals DQMUU and DQMUL of the microprocessor MPU.
[0092]
The SDRAM 2 includes address terminals A9-A0 coupled to receive address signals A11-A2 output from the microprocessor MPU, a clock terminal CKL coupled to the system clock input / output terminal CKIO of the microprocessor MPU, and a microprocessor. A clock enable signal terminal CKE coupled to the clock enable signal terminal CKE of the MPU, a chip select signal terminal −CS coupled to the microprocessor MPU −CS 3, and a row address strobe signal terminal − of the microprocessor MPU A row address strobe signal terminal -RAS coupled to RAS / -CE and a column address strobe signal coupled to column address strobe signal terminal -CAS / -OE of the microprocessor MPU. Data input / output coupled to terminal -CAS, write enable signal terminal -WE coupled to read / write status signal terminal RD / -WR of microprocessor MPU, and data input / output terminals D15-D0 of microprocessor MPU, respectively. Terminal I / O15-I / O0 and data control signal terminals DQMU and DQML respectively coupled to data control signal terminals DQMLU and DQMLL of the microprocessor MPU.
[0093]
As shown in FIG. 21, by combining a microprocessor MPU and a synchronous DRAM (SDRAM1, SDRAM2) having a fast address access time, the above-mentioned synchronous DRAM (SDRAM1, SDRAM2) is used as a 32-bit width memory. It can be used. The system clock signal output from the system clock input / output terminal CKIO of the microprocessor MPU is a clock signal having the same frequency as the operation clock of the central processing unit CPU, and is also supplied to the bus state controller BSC.
[0094]
FIG. 22 shows a bus cycle waveform diagram for explaining the burst read operation of the synchronous DRAM (SDRAM1, SDRAM2) shown in FIG. Although not shown in the figure, the clock enable signal CKE is at a high level. The clock enable signal CKE is selectively set to a low level when the synchronous DRAM is refreshed. The bus start signal -BS is a strobe signal for monitoring a bus cycle and is not connected to the synchronous DRAM.
[0095]
In the first cycle Tr, the signal -CS3 corresponding to the space to which the synchronous DRAM is allocated is set to the low level, the row address strobe signal -RAS is set to the low level, and the row address is taken into the synchronous DRAM. In the next cycle Tc, the column address strobe signal -CAS is set to the low level, and the column address is taken into the synchronous DRAM. As described above, the rising edge of the clock signal CKIO in the synchronous DRAM with respect to the signals -CS2, -RAS, -CAS and the address signal output in synchronization with the rising edge of the clock signal CKIO from the central processing unit CPU side. Each of the above signals is captured in synchronization with the above. That is, the reading operation of the synchronous DRAM or various operations not shown are controlled based on the clock signal CKIO.
[0096]
In the third cycle Td1, -CAS is reset to high level. Then, the data D31 to D0 are continuously read from the synchronous DRAM as shown as 1D-4D over the fourth and subsequent cycles of Td1 to Td4. By such burst read, data of 4 bytes × 4 cycles = 16 bytes can be read. The generation of the control signal at the timing as described above is formed by the bus state controller BCS.
[0097]
FIG. 23 is a block diagram showing an embodiment of the synchronous DRAM (hereinafter simply referred to as SDRAM). The SDRAM shown in the figure is not particularly limited, but is formed on a single semiconductor substrate such as single crystal silicon by a known semiconductor integrated circuit manufacturing technique.
[0098]
The SDRAM of this embodiment includes a memory array 200A that constitutes a memory bank A (BANKA) and a memory array 200B that constitutes a memory bank (BANKB). Each of the memory arrays 200A and 200B includes dynamic memory cells arranged in a matrix, and according to the figure, the selection terminals of the memory cells arranged in the same column are coupled to word lines (not shown) for each column, Data input / output terminals of memory cells arranged in the same row are coupled to complementary data lines (not shown) for each row.
[0099]
One word line (not shown) of the memory array 200A is driven to a selected level according to the decoding result of the row address signal by the row decoder 201A. Complementary data lines (not shown) of memory array 200A are coupled to sense amplifier and column selection circuit 202A. The sense amplifier in the sense amplifier and column selection circuit 202A is an amplification circuit that detects and amplifies a minute potential difference appearing on each complementary data line by reading data from the memory cell. In this case, the column switch circuit is a switch circuit for selecting a complementary data line and making it conductive to the complementary common data line 204. The column switch circuit is selectively operated according to the decoding result of the column address signal by the column decoder 203A.
[0100]
Similarly, a row decoder 201B, a sense amplifier and column selection circuit 202B, and a column decoder 203B are also provided on the memory array 200B side. The complementary common data line 204 is connected to the output terminal of the input buffer 210 and the input terminal of the output buffer 211. The input terminal of the input buffer 210 and the output terminal of the output buffer 211 are connected to 16-bit data input / output terminals I / O0 to I / O15.
[0101]
The row address signal and the column address signal supplied from the address input terminals A0 to A9 are taken into the column address buffer 205 and the row address buffer 206 in an address multiplex format. The supplied address signal is held in each buffer. The row address buffer 206 takes in the refresh address signal output from the refresh counter 208 as a row address signal in the refresh operation mode. The output of the column address buffer 205 is supplied as preset data of the column address counter 207. The column address counter 207 receives the column address signal as the preset data or the column address signal according to the operation mode specified by the command or the like. The sequentially incremented value is output to the column decoders 203A and 203B.
[0102]
The controller 212 is not particularly limited, but includes an input terminal CLK to which the clock signal CKIO is input, an input terminal to which the clock enable signal CKE is input, an input terminal to which the chip select signal -CS is input, and a column address strobe signal. An input terminal to which CAS is input, an input terminal to which a row address strobe signal -RAS is input, an input terminal to which a write enable signal -WE is input, and an input terminal to which data control signals DQMU and DQML are input Combined with The controller 212 is supplied with the external control signals supplied from the input terminals and the control data from the address input terminals A0 to A9. Based on the level change and timing of these signals, the operation mode of the SDRAM and the above-described control data are supplied. It forms an internal timing signal for controlling the operation of the circuit block, and includes a control logic (not shown) and a mode register 30 for that purpose.
[0103]
The clock signal CKIO is the SDRAM's macter clock, and other external input signals are significant in synchronization with the rising edge of the clock signal CKIO. The chip select signal -CS instructs the start of the command input cycle according to its low level. When the chip select signal -CS is at a high level (chip non-selected state) or other inputs are meaningless. However, the memory bank selection state and the internal operation such as the burst operation are not affected by the change to the chip non-selection state. Each of the -RAS, -CAS, and -WE signals has a function different from that of a corresponding signal in a normal DRAM, and is a significant signal when defining a command cycle.
[0104]
The row address signal is defined by the levels of A0 to A8 in the row address strobe / bank active command cycle synchronized with the rising edge of the clock signal CKIO. The input from A9 is regarded as a bank selection signal in the row address strobe / bank active command cycle. That is, when the input of A9 is low level, the memory bank BANKA is selected, and when it is high level, the memory bank BANKB is selected. The selection control of the memory bank is not particularly limited, but only the row decoder on the selected memory bank side is activated, all the column switch circuits on the non-selected memory bank side are not selected, only the input buffer 210 and the output buffer on the selected memory bank side It can be performed by a process such as connection to 211.
[0105]
The input of A8 in the precharge command cycle indicates the mode of the precharge operation for the complementary data line, etc., the high level indicates that the target of the precharge is both memory banks, and the low level is indicated by A9. It is instructed that one of the memory banks being subjected to the precharge. The column address signal is defined by the levels of A0 to A7 in a read or write command (column address / read command, column address / write command) cycle synchronized with the rising edge of the clock signal CKIO. The column address thus defined is used as a burst access start address.
[0106]
Thus, the operation of the synchronous DRAM is controlled based on the clock signal CKIO. On the other hand, the operation control of the memory card MEMC or the I / O card IOC as the PC card is also controlled based on the clock signal CKIO as understood from the operation description of the bus state controller BSC. Therefore, when controlling the operation of the PC card (memory card MEMC, I / O card IOC) while operating the synchronous DRAM at high speed, the output enable signal -OE or write enable signal -WE as the PC card activation signal is used. There is a case where the falling edge of the clock signal CKIO or the setup time for the address signal cannot satisfy the PC card standard.
[0107]
Therefore, as will be understood from the explanation of the operation of the bus state controller BSC or FIGS. 17 and 20, the PCMCIA control register PCR is provided in the bus state controller BSC, and the constant TED or hold delay related to the setup delay of the PCMCIA control register PCR. Based on the constant TEH, the fall of the clock signal CKIO of the output enable signal -OE or write enable signal -WE as the PC card activation signal or the setup time and hold time for the address signal are controlled.
[0108]
In this way, the fall of the clock signal CKIO of the output enable signal -OE or write enable signal -WE as the PC card activation signal or the setup time for the address signal can be controlled, so that the PC card and the synchronous DRAM can be controlled. Can be simultaneously coupled to the microprocessor MPU of the present invention, the microprocessor MPU of the present invention can access the PC card and the synchronous DRAM without any inconvenience.
[0109]
The operational effects obtained by the above embodiment are as follows. That is,
(1) Various semiconductor memories such as ROMs, burst ROMs, SRAMs, PSRAMs, DRAMs and synchronous DRAMs, and PCs such as memory cards and I / O cards, which are coupled to an external bus to a microprocessor incorporated in a personal computer or the like By providing a bus state controller that can control the interface of the card in parallel, it is possible to couple various semiconductor memories and PC cards directly and simultaneously to the external bus of the microprocessor, while reducing external parts for interface control. The effect that it can be obtained.
[0110]
(2) In the above item (1), the address space of the external bus is divided into a predetermined number of areas, and various semiconductor memories or PC cards are fixedly allocated to these areas, and the internal logical addresses are assigned to the microprocessor. By providing a memory management unit for converting to a physical address on the external bus, it is possible to release the user from the restriction by the physical address of the external bus E-BUS and to construct software having a free logical address space.
[0111]
(3) In the above items (1) and (2), the physical address space of the I / O card is further divided into two, and the physical address when the I / O card functions as a memory and the function as an input / output device The function of the I / O card as a memory or input / output device is dynamically switched by software by allocating the physical address independently and selectively specifying these address spaces by predetermined bits of the address signal. The effect that it can be obtained.
[0112]
(4) In the above items (1) to (3), the bus state controller is a state machine, and the type of semiconductor memory or PC card assigned to each area and its operating conditions can be easily set by software. By providing registers, the interface conditions in each area can be efficiently adapted to the interface conditions of the corresponding semiconductor memory or PC card, and the logical configuration of the bus state controller itself is simplified and the flexibility of the system is increased. be able to
[0113]
(5) In the above items (1) to (4), by providing the bus state controller with an address generation function for the burst mode, the semiconductor having the burst mode without increasing the number of external components of the microprocessor. The effect that the memory and the PC card can be combined and the access speed can be increased is obtained.
[0114]
(6) According to the above items (1) to (5), the usability of the microprocessor can be improved, and the number of external components can be reduced by reducing the design man-hours for personal computers with built-in microprocessors and PC card interfaces. And the effect that the cost reduction can be achieved is acquired.
[0115]
As mentioned above, the invention made by the present inventor has been specifically described based on the embodiments. However, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. Needless to say. For example, in FIG. 1, the types and number of semiconductor memories and PC cards coupled to the external bus E-BUS of the microprocessor MPU, that is, the motherboard MBD, and combinations thereof may take various embodiments. Further, the personal computer can be provided with various input / output devices, and the block configuration and connection form thereof are arbitrary. In FIG. 2, the external configuration of the personal computer is not restricted by these embodiments. In FIG. 3, the microprocessor MPU can take an arbitrary block configuration, and its bus form is also arbitrary. In FIG. 4, the substrate arrangement of the microprocessor MPU shown is an example of the present invention and does not limit the present invention.
[0116]
5 and 6, the physical address space of the external bus E-BUS can be divided into an arbitrary number of areas, and the allocation to various semiconductor memories and PC cards can be arbitrarily set. 7 to 11, the signal configuration of the external bus E-BUS, the effective level and function of each signal, the combination with various semiconductor memories and PC cards, etc. are not restricted by these embodiments.
[0117]
In FIG. 12, the block configuration of the bus state controller BSC is arbitrary including the type and combination of registers provided. 13 to 15, the logical configuration as the state machine of the bus state controller BSC, the function of each state, the transition condition, and the like can take various embodiments. In FIG. 16 to FIG. 20, the logic levels and time relationships of the address signal and the activation control signal in each access mode are not restricted by this embodiment.
[0118]
In the above description, the case where the invention made mainly by the present inventor is applied to the microprocessor constituting the personal computer which is the field of use behind the invention has been described. However, the present invention is not limited thereto. The present invention can also be applied to a similar microprocessor constituting a portable information terminal and a computer. The present invention can be widely applied to a microprocessor having at least an external bus and an apparatus or system including such a microprocessor.
[0119]
【The invention's effect】
The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows. That is, a microprocessor incorporated in a personal computer, a portable information terminal, etc., is coupled to its external bus, and various semiconductor memories such as ROM, burst ROM, SRAM, PSRAM, DRAM and synchronous DRAM, memory cards, and I / O By providing a bus state controller capable of controlling the interface of a PC card such as a card in parallel, various semiconductor memories and PC cards can be directly and simultaneously coupled to a microprocessor while reducing external components for interface control.
[0120]
The address space of the external bus of the microprocessor is divided into a predetermined number of areas, and various semiconductor memories or PC cards are fixedly assigned to each area, and the internal logical address is converted to a physical address on the external bus to the microprocessor. By providing the memory management unit, it is possible to release the user from the restriction due to the physical address of the external bus of the microprocessor and to construct software having a free logical address space.
[0121]
The physical address space of the I / O card is further divided into two, and the physical address when the I / O card functions as a memory and that when the I / O card functions as an input / output device are assigned independently, and these address spaces are assigned to address signals. The function as the memory or input / output device of the I / O card can be dynamically switched by software.
[0122]
A semiconductor that corresponds to interface conditions in each area by providing a control register that can easily set the type of semiconductor memory or PC card assigned to each area and its operating conditions by software, using a bus state controller as a state machine It is possible to efficiently adapt to the interface conditions of the memory or PC card, simplify the logical configuration of the bus state controller itself, and increase the flexibility of the system.
[0123]
By giving the bus state controller an address generation function for burst mode that continuously accesses a series of addresses, semiconductor memory and PC cards having burst mode can be added to the microprocessor without increasing the number of external components of the microprocessor. It can be combined to speed up access.
[0124]
As a result, the usability of the microprocessor can be improved, the design man-hours for personal computers with built-in microprocessors and PC card interfaces can be reduced, the number of external parts can be reduced, and the cost of personal computers, etc. can be reduced. Can be achieved.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram showing an embodiment of a personal computer including a microprocessor according to the present invention.
FIG. 2 is an external configuration diagram showing an embodiment of the personal computer shown in FIG. 1;
3 is a block diagram showing an embodiment of a microprocessor included in the personal computer of FIG. 1. FIG.
4 is a board layout showing an embodiment of the microprocessor of FIG. 3; FIG.
FIG. 5 is an address map showing an embodiment for explaining an address space of an external bus of the microprocessor of FIG. 3;
6 is an address map showing one embodiment for explaining an address space in areas 5 and 6 of the external bus of the microprocessor of FIG. 3; FIG.
7 is a partial connection diagram showing an embodiment for explaining a connection form of an external bus of the microprocessor of FIG. 3; FIG.
FIG. 8 is another partial connection diagram showing an embodiment for explaining the connection form of the external bus of the microprocessor of FIG. 3;
9 is a partial interface configuration diagram showing an embodiment when a PC card is coupled to the external bus of FIGS. 7 and 8. FIG.
10 is a partial signal configuration diagram showing an embodiment of the external bus shown in FIGS. 7 and 8. FIG.
11 is another partial signal configuration diagram showing an embodiment of the external bus shown in FIGS. 7 and 8. FIG.
12 is a block diagram showing an embodiment of a bus state controller included in the microprocessor of FIG. 3; FIG.
13 is a state transition diagram showing an embodiment of the bus state controller of FIG.
FIG. 14 is a state configuration diagram showing an embodiment of the bus state controller of FIG. 13;
FIG. 15 is a transition condition diagram showing an embodiment for explaining state transition of the bus state controller of FIG. 13;
16 is a signal waveform diagram showing an embodiment when accessing a memory card without a wait of the microprocessor of FIG. 3; FIG.
FIG. 17 is a signal waveform diagram showing an embodiment when a memory card is accessed with a wait of the microprocessor of FIG. 3;
FIG. 18 is a signal waveform diagram showing one embodiment when a memory card is accessed using the burst mode of the microprocessor of FIG. 3;
FIG. 19 is a signal waveform diagram showing an embodiment when accessing an I / O card without the wait of the microprocessor of FIG. 3;
FIG. 20 is a signal waveform diagram showing an example of accessing the I / O card with the wait of the microprocessor of FIG. 3;
FIG. 21 is an interface configuration diagram partially showing an embodiment when a PC card and a synchronous DRAM are coupled to the microprocessor of FIG. 3;
FIG. 22 is a signal waveform diagram showing an embodiment when accessing a synchronous DRAM;
FIG. 23 is a block diagram showing an embodiment of a synchronous DRAM.
[Explanation of symbols]
MBD ... Motherboard, POWU ... Power supply unit, MPU ... Microprocessor, E-BUS ... External bus, ROM ... Read only memory, BROM ... Burst ROM, SRAM ... Static RAM, PSRAM ... Pseudo SRAM, DRAM ... Dynamic RAM, SDRAM ... Synchronous DRAM, BUF1 to BUF2 ... PC card buffer, PCSL1 to PCSL2 ... PC card slot, MEMC ... Memory card, IOC ... I / O card, LCDC ... Display controller, LCDCON ... Display connector, LCD (DP) ... Liquid crystal Display, KBDC ... Keyboard controller, KBDCON ... Keyboard connector, KBD (KB) ... Keyboard,
MSLOT ... PC card slot, Ffile ... file, FDD ... floppy disk drive, PEN ... input pen.
CPU: Central processing unit, ALU: Arithmetic unit, MULT: Multiplier, MMU ... Memory management unit, TLB ... Address translation table, CACHE (Cache) ... Cache memory, BSC ... Bus state controller, REFC ... Refresh controller, DMAC ... Direct Memory access controller, TIM (Timer) ... Timer circuit, SCI ... Serial communication interface, D / A (D / A converter) digital / analog converter circuit, A / D (A / D converter) ... Analog / digital converter circuit, INTC ... Interrupt Controller, CPG ... Clock generation circuit, S-BUS ... System bus, C-BUS ... Cache bus, P-BUS ... Peripheral bus,
ENCODER ... Encoder, OG ... Or gate, PORT ... Port,
CBIF: Cache bus interface unit, M-BUS: BSC module bus, ADR: Address register, ADC: Address control unit, DTR: Data register, MPX ... Multiplexer, WCR1 to WCR2: Wait control register, WATEC: Wait control unit, BCR1 BCR2: Bus control register, AREAC ... Area control unit, MCR ... Memory control register, DCR ... DRAM control register, PCR ... PCMCIA control register, MTC ... Memory timing control unit, RFCR ... Refresh count register, RTCNT ... Refresh timer count register , RTCOR: Refresh time constant register, RTCSR: Refresh timer control status Register, RFC ... refresh control unit, ST1~ST10 ... state,
22 ... SDRAM, 30 ... mode register, 200A, 200B ... memory array, 201A, 201B ... row decoder, 202A, 202B ... sense amplifier and column selection circuit, 203A, 203B ... column decoder, 205 ... column address buffer, 206 ... row Address buffer, 207 ... column address counter, 208 ... refresh counter, 210 ... input buffer, 211 ... output buffer, 212 ... controller.

Claims (6)

半導体基板上のマイクロプロセッサであって、中央処理装置と、第1端子と、第2端子と、アドレス制御回路と、データ入出力回路と、制御信号生成回路と、制御レジスタとを有し、
前記中央処理装置は前記マイクロプロセッサの外部アドレス空間内のアドレスにアクセスするためのアドレス信号を供給し、
前記制御レジスタは、前記中央処理装置によってPCMCIAカードと接続されているときのアクセスタイミングを決定するための情報を格納し、
前記情報は、前記アドレス信号に対する出力タイミングを規定する定数を含み、
前記アドレス制御回路は前記第1端子に接続され、前記中央処理装置からマイクロプロセッサの外部へアドレス信号を出力し、
前記データ入出力回路は前記第2端子と接続し、
前記制御信号生成回路はアドレス信号に反応し、前記マイクロプロセッサの外部へ出力するための制御信号を生成し、
前記制御信号生成回路はPCMCIAカード用の第1アドレス空間内のアドレスを示すアドレス信号を検出した時、制御信号としてカードイネーブル信号を生成し、
前記制御信号生成回路は半導体メモリ用の第2アドレス空間内のアドレスを示すアドレス信号を検出した時、半導体メモリに対し制御信号としてチップセレクト信号を生成し、
前記制御信号生成回路は、前記アドレス信号の出力に反応し、リードまたはライトのストローブ制御信号を生成し、前記制御レジスタの情報出力タイミングを規定する定数に従い、前記PCMCIAカードに対する前記ストローブ制御信号の出力タイミングを調整して出力し、
前記マイクロプロセッサは、前記PCMCIAカードが挿入されていることを示す検出信号が入力され、
前記制御信号生成回路は、前記検出信号が前記PCMCIAカードの挿入を示している場合、前記カードイネーブル信号及び前記ストローブ制御信号を出力することを特徴とするマイクロプロセッサ。
A microprocessor on a semiconductor substrate, comprising a central processing unit, a first terminal, a second terminal, an address control circuit, a data input / output circuit, a control signal generation circuit, and a control register,
The central processing unit provides an address signal for accessing an address in the external address space of the microprocessor;
The control register stores information for determining access timing when connected to a PCMCIA card by the central processing unit ,
The information includes a constant that defines an output timing for the address signal,
The address control circuit is connected to the first terminal, and outputs an address signal from the central processing unit to the outside of the microprocessor;
The data input / output circuit is connected to the second terminal;
The control signal generation circuit responds to an address signal, generates a control signal for output to the outside of the microprocessor,
When the control signal generation circuit detects an address signal indicating an address in the first address space for the PCMCIA card, it generates a card enable signal as a control signal,
When the control signal generation circuit detects an address signal indicating an address in the second address space for the semiconductor memory, the control signal generation circuit generates a chip select signal as a control signal for the semiconductor memory,
The control signal generation circuit generates a read or write strobe control signal in response to the output of the address signal, and outputs the strobe control signal to the PCMCIA card according to a constant that defines information output timing of the control register. Adjust the timing and output,
The microprocessor receives a detection signal indicating that the PCMCIA card is inserted,
The microprocessor, wherein the control signal generation circuit outputs the card enable signal and the strobe control signal when the detection signal indicates insertion of the PCMCIA card.
請求項1において、
前記マイクロプロセッサの外部アドレス空間は第1及び第2アドレス空間を含む複数のアドレス空間に分割され、
前記制御信号生成回路は前記第1アドレス空間をPCMCIAカードに割り当て、第2アドレス空間を半導体メモリに割り当てることを決めるためのデータを格納するレジスタを含むことを特徴とするマイクロプロセッサ。
In claim 1,
The external address space of the microprocessor is divided into a plurality of address spaces including first and second address spaces,
The microprocessor includes a register for storing data for deciding to allocate the first address space to a PCMCIA card and to allocate the second address space to a semiconductor memory.
請求項1において、
前記アドレス制御回路は前記外部アドレス空間内の一連のアドレスが連続的にアクセスされるバーストモード時、自動的にアドレス信号を更新するためのアドレス生成回路を含むことを特徴とするマイクロプロセッサ。
In claim 1,
The microprocessor according to claim 1, wherein the address control circuit includes an address generation circuit for automatically updating an address signal in a burst mode in which a series of addresses in the external address space are continuously accessed.
請求項1において、
さらにメモリ管理ユニットを含み、
前記メモリ管理ユニットは前記中央処理装置から生成される論理アドレス信号としてのアドレス信号を物理アドレスへと変換し、
前記アドレス制御回路はアドレス信号として物理アドレスを受け取り、前記第1端子へアドレス信号を供給することを特徴とするマイクロプロセッサ。
In claim 1,
A memory management unit,
The memory management unit converts an address signal as a logical address signal generated from the central processing unit into a physical address,
The microprocessor according to claim 1, wherein the address control circuit receives a physical address as an address signal and supplies the address signal to the first terminal.
請求項1において、
前記マイクロプロセッサに接続されるPCMCIAカードはメモリカード及びIOカードの何れか一方または両方を接続可能とされ、
前記制御信号生成回路は、接続されるPCMCIAカードの数に応じて前記カードイネーブル信号を出力することを特徴とするマイクロプロセッサ。
In claim 1,
The PCMCIA card connected to the microprocessor can be connected to either or both of a memory card and an IO card,
The microprocessor characterized in that the control signal generation circuit outputs the card enable signal according to the number of PCMCIA cards to be connected.
請求項1において、
更に、バス制御レジスタを有し、
前記バス制御レジスタは、前記PCMCIAカード用の第1アドレス空間に対するバス幅および前記半導体メモリ用の第2アドレス空間に対するバス幅を決定できる情報を格納していることを特徴とするマイクロプロセッサ。
In claim 1,
In addition, it has a bus control register,
2. The microprocessor according to claim 1, wherein the bus control register stores information capable of determining a bus width for the first address space for the PCMCIA card and a bus width for the second address space for the semiconductor memory .
JP26087395A 1994-09-13 1995-09-13 Microprocessor Expired - Lifetime JP3862031B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
US08/524,701 US5848247A (en) 1994-09-13 1995-09-07 Microprocessor having PC card interface
JP26087395A JP3862031B2 (en) 1995-03-20 1995-09-13 Microprocessor
KR1019950030591A KR100353348B1 (en) 1994-09-20 1995-09-19 Microprocessor
US09/191,219 US6049844A (en) 1994-09-20 1998-11-13 Microprocessor having a PC card type interface
US09/438,337 US6594720B1 (en) 1994-09-20 1999-11-13 Data processing system having a PC card type interface with assigned addressing
US10/337,631 US20030149821A1 (en) 1994-09-20 2003-01-07 Data processing system having an external device interface with assigned addressing
US10/337,758 US6792493B2 (en) 1994-09-20 2003-01-07 Data processing system having a card type interface with assigned addressing

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-85931 1995-03-20
JP8593195 1995-03-20
JP26087395A JP3862031B2 (en) 1995-03-20 1995-09-13 Microprocessor

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005314309A Division JP2006065887A (en) 1995-03-20 2005-10-28 Microprocessor

Publications (2)

Publication Number Publication Date
JPH08320823A JPH08320823A (en) 1996-12-03
JP3862031B2 true JP3862031B2 (en) 2006-12-27

Family

ID=26426942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26087395A Expired - Lifetime JP3862031B2 (en) 1994-09-13 1995-09-13 Microprocessor

Country Status (1)

Country Link
JP (1) JP3862031B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4722305B2 (en) * 2001-02-27 2011-07-13 富士通セミコンダクター株式会社 Memory system
JP6498557B2 (en) * 2015-07-28 2019-04-10 株式会社日立産機システム Programmable controller
CN108982121B (en) * 2018-07-27 2020-09-22 中国汽车技术研究中心有限公司 Multi-channel information fusion system for analyzing target vehicles

Also Published As

Publication number Publication date
JPH08320823A (en) 1996-12-03

Similar Documents

Publication Publication Date Title
KR100353348B1 (en) Microprocessor
EP2025001B1 (en) Hybrid memory device with single interface
US7185135B1 (en) USB to PCI bridge
US5764968A (en) Clock supply permission/inhibition control system
US7240145B2 (en) Memory module having a memory controller to interface with a system bus
US4601018A (en) Banked memory circuit
JPH04230544A (en) Data processing apparatus for dynamically setting timing of dynamic memory system
WO1999041667A1 (en) Memory module including a memory module controller
US5734914A (en) Computer system capable of shifting voltage level of data signal between processor and system memory
US5822768A (en) Dual ported memory for a unified memory architecture
KR20040030049A (en) Memory device having different burst order addressing for read and write operations
US5553244A (en) Reflexively sizing memory bus interface
US7646649B2 (en) Memory device with programmable receivers to improve performance
JP3862031B2 (en) Microprocessor
US6088761A (en) Reduced pin system interface
EP0731412B1 (en) Electronic device for computer
EP0691616A1 (en) RAM and ROM control unit
JP2006065887A (en) Microprocessor
US5828857A (en) ASIC cell implementation of a bus controller with programmable timing value registers for the apple desktop bus
JPH0895943A (en) Microprocessor
US6377510B2 (en) Memory control system for controlling write-enable signals
JP2002063149A (en) Data processing system
JP2002049608A (en) Microprocessor, interface unit, interface method and data movement method
WO1998007099A1 (en) A microcontroller including an internal memory unit and circuitry to generate an associated enable signal
KR100452332B1 (en) Method for improving data read and write speed

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050901

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060605

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060920

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

EXPY Cancellation because of completion of term