JPH01112450A - メモリ管理ユニット - Google Patents

メモリ管理ユニット

Info

Publication number
JPH01112450A
JPH01112450A JP62270600A JP27060087A JPH01112450A JP H01112450 A JPH01112450 A JP H01112450A JP 62270600 A JP62270600 A JP 62270600A JP 27060087 A JP27060087 A JP 27060087A JP H01112450 A JPH01112450 A JP H01112450A
Authority
JP
Japan
Prior art keywords
address
register
segment
bits
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP62270600A
Other languages
English (en)
Inventor
Setsushi Hide
秀 節史
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP62270600A priority Critical patent/JPH01112450A/ja
Priority to US07/262,861 priority patent/US5109334A/en
Publication of JPH01112450A publication Critical patent/JPH01112450A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〈産業上の利用分野〉 大発明はマイクロプロセッサのメモリ管理機溝に関する
もので、さらに詳しく言えば、論理アドレスを物理アド
レスに変換する回路構成に関するものである。
〈従来の技術〉 従来技術の例として米国ザイログ社の16ビツト・マイ
クロプロセッサの同辺素子であるメモリ・マネージメン
ト・ユニットM MUの例を第4図に示す。(丸善株式
会社発行「16ビツトマイクo 7’ロセツサ」第2章
参照) 同図の1はCPU(中央処理ユニット、図示せ
ず)から出力される23ビツトの論理アドレス、2(d
cPUから出力される16ビツトのデータバス、3は論
理アドレスから物理アドレスへ変換するためのメモリ管
理部、4は24ビツトの物理アドレス、5はCPUから
出力される論理アドレス1の1部を構成する16ビ・ン
トのオフセット・アドレス部、6はCPUから出力され
る論理アドレスlの1部を構成する7ビツトのセグメン
ト番号、7はセグメント・レジスタ部であり、各セグメ
ント・レジスタは16ビツト構成となっておシ、データ
設定はデータバス2を介してCPUから行ない、セグメ
ント・レジスタ7の選択は7ビツトのセグメント番号6
によシ行なう。選択されたセグメント・レジスタ7から
の16ビツト出力は9のベースアドレス・レジスタに保
持される。CPUの16ビツトのオフセット・アドレス
の上位8ビツト(A8〜A15)はテンポラリ・レジス
タ8に設定され、このテンポラリ・レジスタ8の8ビツ
トと、ベースアドレス・レジスタ9016ビツトが加算
器10により加算されて24ビツトの物理アドレス4の
上位16ビツト(第4図の12)を構成し、物理アドレ
ス空間におけるセグメント・アドレスを与える。
24ビツトの物理アドレス4の下位8ビツト(第4図の
11)はCPUのオフセット・アドレスの下位8ビツト
(AO〜A7)’にそのit使用している。
以上がザイログ社のメモリ・マネージメント・ユニット
の例であるが、第5図は第4図の回路構成に更に汎用性
を持たせた従来技術例を示す。
第5図の例では、データは8ビツトであるが、16ビツ
トであっても、その他のビット構成でも基本的には同じ
である。101はCPUから出力される16ビツトの論
理アドレス、102はCPUから出力される8ビツトの
データ、103は論理アドレス101から物理アドレス
へ変換するアドレス変換部、104は実際のメモリ・ア
ドレスを指定するための19ビツトの物理アドレス、1
05はセグメント・レジスタ106のどれか1個のレジ
スタを選択するためのセグメント・アドレス・デコーダ
であり、第5図の例では論理アドレス101の上位5ビ
ツト(A11〜A15)の入力によp2  (32)個
のセグメント・レジスタのど几か1つを選択する。選択
されたセグメント・レジスタの8ビツト出力がその−i
t物理アドレス104の上位の8ビツト・アドレス10
9を与える。このアドレスは物理アドレス空間における
セグメント・アドレスとなる。論理アドレス101の下
位11ピツ)(AO〜A10)はそのit物理アドレス
の下位11ビツト108を与え、各セグメント内でのオ
フセット・アドレスとなる。
107は第5図において明確に示していないが、セグメ
ント・レジスタ106の出力とCPUからの論理アドレ
スの下位アドレスの全て又はその1部との間で成る種の
論理変換を行なうための論理部であり、第4図の加算器
lOであってもよいしその他の論理変換であってもかま
わない。
〈発明が解決しようとする問題点〉 このような従来方式では、物理アドレス空間において、
成るセグメント・アドレスを選定し、た場合、そのセグ
メント内でCPUのアドレス選択により自由に選択可能
なオフセット・アドレスの領域は限定されてしまう。即
ち物理アドレスに入力されている論理アドレス、第4図
の例では8ビツト分つまり2 =256番地、第5図の
例では11ビツト分つまり2 −2048番地にそれぞ
れ限定される。このような各セグメント内におけるオフ
セット・アドレス領域の限定はアプリケーションによっ
ては大きな制約となり、マイクロプロセッサの利用を制
限し、使い勝手の悪いものになるという問題があった。
本発明はこのような点に鑑みて創案されたもので、同時
に使用できるセグメント・レジスタの数?制限してオフ
セット・アドレス領域を拡張することを目的としている
く問題点を解決するだめの手段〉 CPUから出力した論理アドレスを各種メモリへの物理
アドレスに変換する機能を具備したメモリ管理ユニット
において、論理アドレス信号の一部をセグメント・レジ
スタ用デコーダにアドレス信号として供給し、残りの論
理アドレス信号を物理アドレス空間の一部として拡張す
るための有効アドレス選択レジスタを設けて構成するも
のである。
く作 用〉 セグメント・レジスタ用デコーダの有効アドレス選択レ
ジスタにセグメント・レジスタを選択する有効アドレス
を設定することにより、有効でない論理アドレスの残り
のアドレスはそのit拡張物理アドレスとして使用でき
、各セグメント内におけるオフセット・アドレスは本末
のオフセット・アドレスに付加分が加わり拡張できる。
もう少し詳細に述べると、1例として有効アドレス選択
レジスタの上位3ビツト(A13〜A15)を有効アド
レスとして設定すれば、残り2ビツト(Al 1−AI
 2 )ハセグメント・レジスタの選択には無関係とな
る。そこで、この2ビツト叩 (A11〜A12)を適蘂物理アドレスの1部として出
力し拡張物理アドレスとする。この結果、オフセット・
アドレスは11ビツトから13ビツトに拡張されたわけ
で、各セグメント内においてCPUのアドレス指定によ
って直接設定できるオフセット・アドレス領域は204
8番地から8192番地へ4倍に拡張される。
但し、この場合2’ (32)個あるセグメント・レジ
スタの内、2’ (8)個しか使用できなくなる。
これは一種の機能低下ではあるが、用途によってハセク
メント・レジスタをそれほと:必要としないものもあシ
、用途に応じて使用するセグメント・レジスタ数とオフ
セット・アドレス領域とのバランスを勘案して有効アド
レス選択レジスタを適当に設定することができる。
〈実施例〉 第1図は大発明による一実施例を示すブロック図で、第
5図に示した汎用型メモリ管理ユニットの構成と比較し
て、論理アドレスの活用されないアドレスを拡張物理ア
ドレスとして利用するためにセグメント・アドレス用デ
コーダ205の入力部に有効アドレス選択レジスタ21
1を設けて構成する。
木実施例においては論理アドレス201の上位5ビツト
について、その一部をセグメント・レジスタ206の有
効アドレスとして導入し、5ビツト中の残りのビットに
ついては物理アドレスの拡張として利用する。
第2図は上記第1図でのセグメント・レジスタ用デコー
ダ205の有効アドレス選択レジスタ211の実施例で
ある。図において、有効アドレス選択レジスタ211は
データバスのビット数に対応して8ビツトのレジスタ2
13が設けられ、これら各レジスタ213の内容は前も
ってデータが設定されている。第1図、第2図の例では
セグメント・レジスタ206の選択に5ビツトを使用し
ているので、第2図のレジスタ213も下位5ビツト(
Bo−84)だけが有効であり、この例では85〜B7
はなくてもよい。又、逆にセグメント・レジスタ206
の選択に9ビツト以上のアドレス入力を使用する場合に
はレジスタ213もそのビット数だけあるのが望ましい
が、必らずしも同数のビット数を必要とするものではな
い。
214〜218はそれぞれ2−人力ANDゲートであり
、レジスタ213の論理II 1 #が設定されている
ビットに対応する2人力ANDゲートのみがオン状態と
なり、それに対応するアドレスだけがセグメント・レジ
スタ用デコーダ205へ入力され、レジスタ213の論
理1°0″が設定されているビットに対応する2人力A
NDゲートはオフ状態となり、それに対応するアドレス
状態にかかわらずセグメント・レジスタ用デコーダ20
5への入力は常に“0″となる。
即ち有効アドレス選択レジスタ211に設定したビット
の信号がデコーダ205にアドレスのだめの信号として
入力される。一方論理アドレスの上位ビットAl1−A
15は、またMMUからの本末の11ビツトからなる物
理アドレスを拡張するべく導出され、上記有効アドレス
選択に寄与しなかった論理アドレスが物理アドレスに活
用される。
く他の実施例〉 第3図は第1図に示したセグメント・レジスタ用デm1
−1’205の有効アドレス選択レジスタの他の実施例
である。第3図において、有効アドレス選択レジスタ2
13は前記実施例と同様のデータバスに接続された有効
アドレス選択レジスタ213を備え、論理”1”が設定
されてε)るビットに対応するアドレスはそのままセグ
メント・レジスタ用デコーダ205の入力となる。一方
、上記有効アドレス選択レジスタ213で論理″′0″
が設定されているビットに対応するアドレスはセグメン
ト・レジスタ用デコーダ205の入力とはならずセグメ
ント・レジスタ用デコーダとは無関係となる。したがっ
て、このアドレスが物理アドレス空間におけるオフセッ
ト・アドレスの一部として利用できM M Uから導出
されている。ところで、第2図の実施例では、レジスタ
213で論理t′0”のビットに対応するセグメント・
レジスタII O”であったが、第6図の実施例では第
°2のレジスタ219を設けて非有効アドレス入力のレ
ベルを°0″か′°1#に自由に設定する。
即ち上記レジスタ213及び第2のレジスタ219の入
力は共にデータラインDO〜D8に接続されて状態が設
定され、出力信号がデコーダ205側に与えられる。こ
こで上記出力信号は、非有効アドレス入力のレベルを第
2のレジスタ219の設定状態に応じて°′0”或いは
°°1″に自由に設定するため、各ビット当り2アンド
ゲート及び1オアゲートからなる回路を介してデコーダ
205に入力される。
上記第2のレジスタ219を付加した有効アドレス選択
レジスタ212においては、レジスタ213の内容をB
O=”O”、B1=60”。
B 2= ”1”  、B 3= ”1”  、B4=
 ”1’とし、第2のレジスタ219の内容をBo−1
′。
B1−′0′に設定したとすれば、オアゲート220の
出力はレジスタ219のBOの内容がそのまま出力され
、11%である。オアゲート221の出力はレジスタ2
19の81の内容がそのit比出力れO1″である。オ
アゲート222の出力は論理アドレスのビットA13と
同信号、オアゲ−)223の出力はピッ)A14と同信
号、オアゲート224の出力はピッ)A15と同信号が
、それぞれ出力される。
上記各実施例のメモリ管理ユニットは論理アドレスの非
有効アドレスを物理アドレスと活用が図られている。
〈発明の効果〉 以上述べてきたように、本発明によれば、セグメント・
レジスタの使用数を制限すれば容易に物理アドレス空間
における各セグメント内のオフセット・アドレス領域を
拡張することができる。しかも、応用に応じて自由に設
定可能であり実用的に鳳めて有用である。
【図面の簡単な説明】
第1図は本発明による一実施例のメモリ管理ユニットを
示すブロック図、第2図は同実施例の要Wtl[l]’
を示すブロック図、第3図は要部詳細の他の実施例を示
すブロック図、第4図及び第5図は従来の論理アドレス
を物理アドレスに変換するユニットのブロック図である
。 201:論理アドレス、202:データ、203ニアド
レス変換部、204:物理アドレス、205:セグメン
ト・アドレス用デコーダ、206:セグメント・レジス
タ、 209:拡張物理アドレス、 211:有効アドレス選択レジスタ。 代理人 弁理士 杉 山 毅 至(他1名)篤l Σ

Claims (1)

    【特許請求の範囲】
  1. 1)セグメント・アドレスを保持している複数個のセグ
    メント・レジスタの内、どれか1個のセグメント・レジ
    スタを選択するためのセグメント・レジスタ用デコーダ
    の入力アドレス信号として、CPUが発生する論理アド
    レス信号を入力するか、固定レベルを入力とするかを各
    入力アドレス信号ごとに設定できるレジスタを備え、セ
    グメント・レジスタ用デコーダの入力アドレス信号とし
    て使用しなかった論理アドレス信号を物理アドレス信号
    としても利用できることを特徴としたメモリ管理ユニッ
    ト。
JP62270600A 1987-10-27 1987-10-27 メモリ管理ユニット Pending JPH01112450A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP62270600A JPH01112450A (ja) 1987-10-27 1987-10-27 メモリ管理ユニット
US07/262,861 US5109334A (en) 1987-10-27 1988-10-26 Memory management unit capable of expanding the offset part of the physical address

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62270600A JPH01112450A (ja) 1987-10-27 1987-10-27 メモリ管理ユニット

Publications (1)

Publication Number Publication Date
JPH01112450A true JPH01112450A (ja) 1989-05-01

Family

ID=17488357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62270600A Pending JPH01112450A (ja) 1987-10-27 1987-10-27 メモリ管理ユニット

Country Status (2)

Country Link
US (1) US5109334A (ja)
JP (1) JPH01112450A (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5197130A (en) * 1989-12-29 1993-03-23 Supercomputer Systems Limited Partnership Cluster architecture for a highly parallel scalar/vector multiprocessor system
US5771368A (en) * 1990-10-29 1998-06-23 Sun Microsystems, Inc. Memory addressing scheme for increasing the number of memory locations available in a computer for storing higher precision numbers
US5247642A (en) * 1990-12-05 1993-09-21 Ast Research, Inc. Apparatus for determining cacheability of a memory address to provide zero wait state operation in a computer system
US5313606A (en) * 1991-01-17 1994-05-17 Chips And Technologies, Inc. System for detecting boundary cross-over of instruction memory space using reduced number of address bits
JPH0553920A (ja) * 1991-08-26 1993-03-05 Toshiba Corp 構造化アドレス生成装置
US5404474A (en) * 1992-01-10 1995-04-04 Digital Equipment Corporation Apparatus and method for addressing a variable sized block of memory
US5386523A (en) * 1992-01-10 1995-01-31 Digital Equipment Corporation Addressing scheme for accessing a portion of a large memory space
US5410664A (en) * 1993-03-31 1995-04-25 Intel Corporation RAM addressing apparatus with lower power consumption and less noise generation
US5822778A (en) * 1995-06-07 1998-10-13 Advanced Micro Devices, Inc. Microprocessor and method of using a segment override prefix instruction field to expand the register file
US5680578A (en) * 1995-06-07 1997-10-21 Advanced Micro Devices, Inc. Microprocessor using an instruction field to specify expanded functionality and a computer system employing same
US5768574A (en) * 1995-06-07 1998-06-16 Advanced Micro Devices, Inc. Microprocessor using an instruction field to expand the condition flags and a computer system employing the microprocessor
US5819080A (en) * 1996-01-02 1998-10-06 Advanced Micro Devices, Inc. Microprocessor using an instruction field to specify condition flags for use with branch instructions and a computer system employing the microprocessor
US6230259B1 (en) 1997-10-31 2001-05-08 Advanced Micro Devices, Inc. Transparent extended state save
US6157996A (en) * 1997-11-13 2000-12-05 Advanced Micro Devices, Inc. Processor programably configurable to execute enhanced variable byte length instructions including predicated execution, three operand addressing, and increased register space
US5974525A (en) * 1997-12-05 1999-10-26 Intel Corporation System for allowing multiple instructions to use the same logical registers by remapping them to separate physical segment registers when the first is being utilized
US5940587A (en) * 1997-12-12 1999-08-17 Intel Corporation System and method for trap address mapping for fault isolation
US6877084B1 (en) 2000-08-09 2005-04-05 Advanced Micro Devices, Inc. Central processing unit (CPU) accessing an extended register set in an extended register mode
US6981132B2 (en) 2000-08-09 2005-12-27 Advanced Micro Devices, Inc. Uniform register addressing using prefix byte
DE50113128D1 (de) * 2001-12-03 2007-11-22 Infineon Technologies Ag Datenübertragungseinrichtung
WO2008014817A1 (en) * 2006-08-01 2008-02-07 Freescale Semiconductor, Inc. Memory management unit and method of accessing an address
US8166213B2 (en) * 2007-11-21 2012-04-24 Microchip Technology Incorporated Controller with indirect accessible memory
US8677203B1 (en) * 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL6806735A (ja) * 1968-05-11 1969-11-13
FR2230258A5 (ja) * 1973-05-16 1974-12-13 Honeywell Bull Soc Ind
US4035779A (en) * 1976-04-30 1977-07-12 International Business Machines Corporation Supervisor address key control system
US4037215A (en) * 1976-04-30 1977-07-19 International Business Machines Corporation Key controlled address relocation translation system
US4042911A (en) * 1976-04-30 1977-08-16 International Business Machines Corporation Outer and asynchronous storage extension system
US4037207A (en) * 1976-04-30 1977-07-19 International Business Machines Corporation System for controlling address keys under interrupt conditions
JPS533029A (en) * 1976-06-30 1978-01-12 Toshiba Corp Electronic computer
JPS5448449A (en) * 1977-09-26 1979-04-17 Hitachi Ltd Virtual addressing sustem
FR2431732A1 (fr) * 1978-07-19 1980-02-15 Materiel Telephonique Dispositif de conversion d'adresse virtuelle en adresse reelle
US4251860A (en) * 1978-10-23 1981-02-17 International Business Machines Corporation Virtual addressing apparatus employing separate data paths for segment and offset portions of a virtual address and utilizing only the offset portion to calculate virtual address
US4442484A (en) * 1980-10-14 1984-04-10 Intel Corporation Microprocessor memory management and protection mechanism
US4432053A (en) * 1981-06-29 1984-02-14 Burroughs Corporation Address generating apparatus and method
US4453212A (en) * 1981-07-13 1984-06-05 Burroughs Corporation Extended address generating apparatus and method
US4473878A (en) * 1981-11-23 1984-09-25 Motorola, Inc. Memory management unit
US4785398A (en) * 1985-12-19 1988-11-15 Honeywell Bull Inc. Virtual cache system using page level number generating CAM to access other memories for processing requests relating to a page
US4761737A (en) * 1986-01-16 1988-08-02 International Business Machines Corporation Method to automatically increase the segment size of unix files in a page segmented virtual memory data processing system
JPH06100968B2 (ja) * 1986-03-25 1994-12-12 日本電気株式会社 情報処理装置

Also Published As

Publication number Publication date
US5109334A (en) 1992-04-28

Similar Documents

Publication Publication Date Title
JPH01112450A (ja) メモリ管理ユニット
KR970705076A (ko) 메모리에 저장된 오정렬 데이타용 어드레스를 효율적으로 결정하는 장치 및 방법(Apparatus and Method for Efficiently Determining Addresses for Misaligned Data Stored in Memory)
US5454092A (en) Microcomputer having an improved internal address mapping apparatus
TW202018597A (zh) 實施神經網路之啟動邏輯之裝置及其方法
JPH02242355A (ja) 拡張アドレス空間を持つマイクロプロセシングシステム
JPH11259417A (ja) バスアクセス方式およびバスアクセス制御装置
JPS5981724A (ja) Dma制御装置アドレス空間の拡張方法
JPS6343563Y2 (ja)
US6990565B2 (en) Address conversion apparatus, address conversion method and computer program
JP2622553B2 (ja) マイクロコンピュータ
JPH02304648A (ja) メモリ制御装置
JP2692180B2 (ja) マイクロコンピュータ
JPH0383149A (ja) マイクロコンピュータ
JPH0363251U (ja)
JPS61199294A (ja) メモリ・アドレス・デコ−ド回路
JPS60250450A (ja) メモリエリア切換回路
JPS63271567A (ja) 非対称密結合マルチプロセツサシステム
JPS6299842A (ja) メモリアドレスアクセス方式
JPS58107975A (ja) アドレス拡張方式
JPH0934866A (ja) マイクロコンピュータ
JPS6288199A (ja) デイジタル回路
JPH02308351A (ja) アクセス範囲検出方式
JPS63223859A (ja) アドレス変換装置
JPH0855058A (ja) メモリエリア拡張方法
JPS58123146A (ja) メモリアドレス拡張方式