CN1009771B - 段描述符信息的存贮装置 - Google Patents
段描述符信息的存贮装置Info
- Publication number
- CN1009771B CN1009771B CN87108389A CN87108389A CN1009771B CN 1009771 B CN1009771 B CN 1009771B CN 87108389 A CN87108389 A CN 87108389A CN 87108389 A CN87108389 A CN 87108389A CN 1009771 B CN1009771 B CN 1009771B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- signal
- memory cell
- word
- ram
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
Abstract
一种段描述符单元(SDU)包括相互连接的一被分组的随机存取存贮器(RAM)、一个相联存贮器(CAM)和译码器电路,用于在最小芯片面积和最小功耗情况下执行静态和动态地址转换操作。安排CAM去存贮某些项目,这些项目包括段号和与相应号的段描述符相关的有效信息。RAM含有用于存贮段描述符字(SDW)和工作数据的存贮单元。每一SDW逻辑地分为两个字段,含有为执行一静态地址转换操作所需所有位的静态转换字(STW)字段和含有依照系统安全性进行检验所需所有位的存取控制字(ACW)字段。
Description
本发明涉及存贮装置,特别是应用于处理段描述符信息的存贮装置。
现今,许多系统都采用页面和分段相结合的特点。其中较为广知的系统之一是MULTICS系统。这类系统使用了段描述字。每一个段描述字都包含有在确认某段存在于存贮器中时指向该段页表的信息、该段的大小以及一个包含存取控制信息的描述符字段。一个段描述符字的位数是相当大的,特别是在系统的存贮容量很大或者在采用复杂的安全措施时。有关MULTICS系统的更详细的情况,可参考Elliott I.Organick所写的“Multics系统:对其结构的分析”一文(1972年版)。
为了存贮和访问段描述字,这些系统应用了多组存贮器的存储单元或者具有必要比特位数的存贮寄存器。这就需要成对的利用RAM芯片以提供所希望的存贮寄存器宽度。虽然这种途径适用于许多系统,但对由超大规模集成(VLSI)芯片工艺完成的系统来说,所占的空间太大,而且功耗太大。加之,为了应用段描述字,还可能需要存贮附加的信息。这就可能增加对RAM存贮空间和功耗的进一步要求。在已有的技术中,美国专利第4084226涉及一种虚拟地址翻译器,该翻译器包括一内容寻址的存储器和一字寻址的存储器。其中,来自由处理器提供的虚拟地址的任务名和子段号是一关键字。如果关键字匹配,则读出子段描述符。子段描述符包括一绝对基地址,该地址加上一偏程移即可得到一绝对地址。将存储地址送给存储器,以允许在处理器和存储器之间传送一个字。所述处理器可以根据是处理器的指令或数据的存储,或I/O
设备的指令或数据的存储来指出一任务名。如果,内容寻址的存储器的查找表明想要的子段描述符不在字寻址的存储器中,则翻译器从存储器中获得描述符,然后产生想要的绝对存储器地址。所述翻译器配有产生指明操作效率的值的电路。提供有控制,用来选择从处理器中接受的虚拟地址的多个宽度子段和偏移段之一。而这种技术具有和其它先有技术一样的缺点,除了多个操作周期外,还需要大量的存储器、数据通路、多路转换器和开关。而本发明的装置则使得不同类型的地址翻译操作能够在微程序控制下进行操作,消除了复杂的开关和转换装置的需要,因此,减小了芯片区域和路径需要。
据此,本发明的基本目的是要提供一种段描述符存贮装置,它便于作成VLSI,而且只需要最小的空间。
本发明的另一目的则是提供功耗最小的段描述符存贮装置。
本发明的上述及其它的目的可由本发明的一个最佳实施方案来实现。该方案包括一个段描述符单元(SDU),此单元包括有一个独立的随机存取存贮器(RAM),一个可按内容寻址的存贮器(CAM),
以及一个接在两者之间并能在微程序控制下以最小的芯片空间和功耗完成动态和静态地址变换操作的译码电路。设置CAM用于存贮多个数据项,其中包括段号和表明相应的段描述符的有效的信息。
RAM具有分配给存贮段描述字(SDW′S)和工作数据的存储单元。每一SDW在逻辑或者功能上被划分成两个字段:一个具有为执行静态地址变换操作所需要的全部毕特的静态变换字(STW)的字段;一个具有为验证系统安全所需的全部毕特位的存取控制字(ACW)的字段。每一STW和ACW的毕特均存贮于SDW存贮单元的相交替的毕特位置中。每一对RAM毕特存贮单元耦合到一个公用读/写放大器和多路转换器电路。
在所规定的各种不同地址变换功能的微程序指令的控制下,由CAM所选定的STW和ACW字段以不同的时间间隔由RAM读出,以执行这种地址变换操作所需的步骤。例如,在此最佳实施方案中,每一64位的段描述符字一次32地写入SDU中。当由一个第一微程序指令指定一动态地址变换操作时,由存贮器读出页面描述符信息,SDU被置定为并行读出,CAM的命中输出指定了段描述符的ACN区段以及被转换的虚拟地址的部分被译码。这就使得SDU内部的安全比较电路按照系统安全要求加以检验。在由第二微程序指令指定的静态地址变换操作的情况下,SDU即被置定为读出由CAM的命中输出所指定段描述符的STW字段以及被转换虚拟地址部分被译码。
由该第一和第二微程序指令所产生的输入信号被用来决定RAM的哪一部分应被访问,来作为被这些指令所规定而要执行的地址变换操作的型式功能。STW字段被传送到一个加法器,以形成由主存或高速缓冲中读取段描述符所需的变换地址。其它的微程序指令可进行
对能存贮与欲执行的转换功能有关的信息的同一存贮器的另外的区域的访问。
本发明将段描述字按照功能加以分割的设置免除了对数据通路多路转接器和开关的需要。因为由RAM读出传送到保密单元或加法器的信息字的宽度与这些单元所处理的信息的宽度是相适配的。同时,这也使得加法器和安全对比电路可以安置于RAM的附近,而降低芯片在金属喷镀、接线和空间上的要求。而且这种布局也使读/写放大器电路的数目减少了一半,从而大大节省了芯片面积和功耗。此外,本发明还使得有可能通过只用极少的微程序指令来访问全部包含在单一RAM中的若干不同型式的寄存器的内容。
作为本发明的布局和运行方法方面所特有的新颖特点,以及其它的目的和优点,由下面结合附图所作的说明中可得到清楚的理解。但是,需要特别说明的是,每一附图仅仅是用来图示和说明本发明的目的,而不是要对本发明进行限制。
图1为本发明的段描述单元(SDU)的方框图。
图2是图1SDU的存贮器组的方框图。
图3a到图3g详细列举了图2的存贮器组的各个不同的部分。
图4a至图4b说明图2中存贮器组的换算表和内容。
图5是用来解释图1中SDU的运行的流程图。
图6a至图6e说明在解释图1SDU的运行时所采用的控制字格式和虚拟地址格式。
图1以方框图形式示出了按照本发明的技术构成的描述符单元SDU的最佳实施方案。由图中可看到,SDU10包括一个存贮器组12,加法器16,安全检验比较电路14和虚拟地址寄存器18。
如图所示,部件12至18的每一个都连接到内部总线20。SDU10在其与一相关的中央处理单元(CPU)的虚拟存贮器处理单元的其它部分共享的微程序控制单元30的控制下工作。这就是说,每一微指令字被分为若干部分,这些部分被分配到SDU10和该CPU的其它部分。由图可知,SDU10接受对应于信号VRDRU-15的16位微指令字。这些信号为图中未列出的电路译码,并用作为输入。Richard P.Kelley等的相关专利申请中就揭示了这样一种布局的一个实施例。但本发明的目的是将存贮单元30作为SDU10的一部分。
存贮器组12包括:一个28×32随机存取存贮器(RAM)12-1,一个内容可寻址寄存器(CAM)12-3,多个缓冲电路12-5以及如图示安排的译码电路12-7。如这里所述那样,RAM12-1的不同部分由微程序控制信号和/或从VA寄存器18来的虚拟地址信号协同寻址。
RAM12-1的28×32位存贮单元的存贮段描述字条目包括有:8个32位静态变换字(STW′S),8个32位存取控制字(ACW′S),4个32位段页表字,1个32位描述符段变址寄存器(DSBR)的高位部分,一个32位DSBR的低位部分以及6个32位工作寄存器字。CAM12-3的8个11位存贮单元存贮8个10位段号字和8个1位CAM有效位。
SDU10的工作过程包括:(1)利用自VA寄存器收到的虚拟段号询问CAM-1,以查找表明存在所需段的命中信息;(2)在未发现该段号时,发信号到VMMU的其它部分;(3)对于无效段清除CAM有效位;(4)根据命中信号置CAM条目为有效;
(5)根据需要将工作寄存器内容存入RAM12-1;(6)将页表条目存入需要设置段描述符的RAM12-1中;以及(7)在页表被存贮于RAM12-1中时,确定为DSBR所指定的页表的地址。
如这里所述,虚拟地址被分为若干区域,包括有:一个2位的段号区Sx,一个8位的段号区Sy,一个第一8位字号区ix以及一个第二8位字号区iy。ix区对应于针对段描述符的页修正值,而iy区则对应于段描述符的字修正值。
Sx和Sy区用一有效位衔接起来产生一个11毕特区,被用作CAM12-3的输入数据来对CAM12-3进行询问。CAM12-3的8字条目即被扫描,当比较存在有相同值时,CAM12-3即迫使8个命中信号线中的一条呈高位值。
由图1可见,此8条命中信号线是被用作相应的8级缓冲电路12-5的输入的。缓冲电路12-5将RAM12-1由CAM12-3隔开,并增加用来访问RAM12-1的命中信号线的信号驱动强度。
此8条命中信号线的信号用作包含有ACW′S或STW′S的RAM12-1部分的子地址。对ACW′S和STW′S的选择是在微程序控制单元30的控制下作为一个动作的功能或要进行的操作来完成的。例如,在要执行一动态地址变换操作而存贮页描述字的VMMU部分要被访问时,本发明的安排即可以使对ACW的访问可以由安全检验电路14来检验其访问的权力<例如,环形分类和访问(读,写,执行,门控),大小(即区段,门)>而且,在当一地址被用来形成未命中页描述符的地址时,本发明也可能访问STW′S来
由页表取得其它的页面。
这样,这种装置就可能在微程序控制单元30的一个完整的操作周期内完成包括所有必须检验的由虚拟地址到真实地址的变换。
作为上述地址变换的一部分,可能还要访问某些工作寄存器的内容,这是在微程序的控制下,调整译码电路12-7,利用来自BI20或VAR18的信号产生一子地址来完成的。这一根据被选择的信号源(即BI20或VAR18)的3位信号而产生的6位子地址被用来选择6个32位工作寄存器存贮单元中的一个,或者6个32位描述符段寄存器存贮单元中的一个。这被作为微程序控制单元(30)规定的要执行的特定操作功能。
这种安排免除了访问不同RAM的要求,而将这些作为ALU的输入,以便在需要时形成一个新的地址。这就要形成所希望的静态变换地址和进行必要的存取检验,仅仅只需利用由很少的微指令控制的一个CAM和译码器,从而使得控制大为简化。
利用上述的结构,使得SDU10的各部件的布局效率将最大。也就是说,RAM12-1的部件和ALU10被排为纵列,而使芯片面积和功耗为最小。图2,3a和4b表示了这种结构的各种情况。
图2详细地示出了本发明所提出的存贮器组12的构成情况。由图2可见,存贮器组12的RAM12-1包括一对RAM-1a和12-1b。每一RAM包含有:排列成14行32列位组元的组元阵列12-10,16个多路转接器电路12-12,16个读/写放大器电路12-14,以及32个予装载电路12-16。每一RAM由一列14个输入缓冲电路12-5将其与CAM12-3和译码器12-7隔离开。
缓冲电路6至13的每个第一组从CAM12-3接收输入命中信号HIT0至HIT7。缓冲电路0至5的第二组由单元12-7的译码电路12-7a和12-7b中相对应的一个接收译码信号DEC0至DEC5。每一列缓冲电路还包括有存贮由单元30产生的输入控制信号V79EQ7D的状态的缓冲电路12-50。这两组输入缓冲电路可以看作是通常的设计。它们的作用是将逻辑电平输入信号改变成高电平的互补输出信号。同时,这组缓冲电路还由一图中未示出的通常设置的中央定时源接收一写入保护信号WRTPROT。这一信号阻止输入信号在RAM12-1正处于予装载的时间间隔T1内进入RAM12-1。
互补输出信号OUT和
OUT分别用以控制第一和第二组缓冲电路12-5的输出。此外,缓冲电路12-5和予装载电路12-16还由中央定时源接收定时信号T11。该定时源也提供用于R/W放大器电路12-14的定时信号
T2和T12。如图所示,在微程序控制单元30的控制下产生的控制信号SAT,
SAT和
SWRTRAMR被送到多路转接器电路12-12和R/W放大器电路12-14。按照定时信号T11,RAM的组元为一般设计的予装载电路所予先装入信号。这些信息是通过R/W放大器电路12-14读出和写入RAM组元的。
每个RAM的每一RAM放大电路12-14为不同时的列位组元共享(如图示)。由微程序控制单元30发出的信号SAT和
SAT确定哪一对组元的内容应如这里所说的被多路转接器电路12-12送给R/W放大器电路12-14。
如图2所示,每一译码电路12-7a和12-7b都接收一组
由单元30或VAR18的三输入信号是作为来自微程序控制单元30的译码VRDR位7-9所产生的控制信号VRDR79EQ6的功能(即位7-9=“10”或6)经由单元12-72的多路转接器和输入缓冲电路加以引用的。
CAM12-3包括一个8×11存贮器阵列12-30,多个输入缓冲电路12-32以及多个输出缓冲电路12-34。输入缓冲电路12-32接收虚拟地址信号BV00至BV09,和由VAR18来的有效控制位信号WRT04。有效控制位信号WRTOA是由置换电路(图中未示出)产生的。在地址信号被写入CAM12-3时,此有效位置位。当地址字改变时,此有效位按通常方式更新。
CAM12-3的功能是将输入到输入缓冲电路12-32的虚拟地址与存贮于阵列12-30的垂直行或列存贮器组元中的所有8个段描述字同时进行比较,当存在有相同的比较值时,检测比较结果的垂直行将使得一连接到该垂直行所有组元的共用命中信号线成为予定的状态。CAM12-3将此同时比较的结果送给命中信号线HIT0至HIT7。这些信号分别通过缓冲电路12-5a和12-5b依次作为各自的输入送到RAM存贮器阵列12-10a和12-10b的相应的水平行组元。
输出缓冲器电路12-34将相应于信号HIT0至HIT7状态的比较结果送到替换电路。作为一组字信号线上的替换电路所产生的信号,SDWL0至SDWL7的状态作用,CAW12-3的内容被改变或被写入。针对本发明的目的来说,此替换电路可被看作是一种通常的设计。借助顺序将该8根字信号线的每一个均置为予定状态0开始时,CAM12-3即可存贮有8个描述符地址字组。
将会注意到,CAM12-3具有两组命中信号线、水平方向延伸的第一组连接到RAM12-a及12-b,垂直方向延伸的第二组连接安置于CAM12-3之上的替换电路。这由将一系列信号线相互垂直地穿过每一CAM组元来完成。这样的装置使得命中信号线和字信号线可以按所希望连接到VMMU芯片其它部分的方向来取向。其结果使得面积减小,效率和性能提高。关于CAM组元构成的进一步的信息可以参考Thomas F.Joyce等的有关专利申请。
图3a详细地示出:存贮器段12的部分构成,比较电路14,以及毕特位Q0至Q15的加法器。如图所示,阵列12-10的存贮组元,多路转接器电路12-12,R/W放大器电路12-14,以及加法器16的各单元均被排成队列或分成片。图中示出了与总线BI20的连接和至加法器单元的所需输入信号。最佳实施方案借助于比较电路14的部件和加法器16的单元,进一步减少了对芯片空间的要求。其余毕特位Q16至Q31也作相类似的安排,如图4b所示。
图3b至3f详细示出了图3a和4b的毕特位Q0至Q31的电路结构,特别是图3b示出了Q0至Q3前4位毕特的构成。如图所示,这些部分包含有在来自单元30的微程序指令信号BICTL1和BICTL2的控制下由各自的R/W放大器电路传送信号到总线BI20的放大器和晶体管。
图3C示出了毕特位Q4至Q13的最先10个加法器单元A0至A9的构成,图3d示出了毕特位Q14至Q31的加法器单元A10至A27。由这些图可以看出,加法器单元10-27中的每一个产生一对算子A和B的和数和进位传输信号,而加法器单元0-9中的
每一个则为产生单一算子的和数和进位转输信号。因此,图3C中的一半加法电路即代表图3d整个加法电路的一个被简化了的模型。
详细地说,具有代表性的图3d中的完整的加法器单元包括有:一个由增强型MOSFET 16-1000,16-1032和16-1030组成的进位传输部分,一个由MOSFET16-1032至16-1046相互连接成NOR、AND、EXNOR和EXOR门电路所组成的逻辑部分,以及一个包含有反向电路16-1020和16-1022及MOSFET16-1004和16-1006的异或和数部分。此单元所产生的和数毕特(A10或S10)经由三态缓冲电路16-1016和16-1014分别作为控制信号BICTL1和BICTL2的作用被送到总线BI。控制信号CTLB被用作传送所选择的B算子值到总线BI。在由单元30译码得到的微指令信号VRDR(0)至VRDR(4)的控制下,由MOSFET16-1054至16-1058所组成的5∶1多路转接路电路被用来选择所希望的B算子值。如图示,被选择的B算子值通过反相电路16-1050和16-1052及MOSFET16-1012被送至完整的加法电路和总线BI。
图3C示出了具有代表性的加法器单元A0,它包括一个由反相器电路16-220,16-222和MOSFET16-204及16-206组成的异或门部分,以及一个由MOSFET16-200和16-202组成的进位传输部分。和数位(A0或S0)按指令信号BICTL1和BICTL2的功能分别经由三态缓冲电路16-216和16-214连接到总线BI。被加到MOSFET16-210的控制信号CTLADD被用来传送和数信号S0,而加到
MOSFET16-212的控制信号CTLB则将ZERO B算子值传给总线BI。
图3e示出了处于图4b所示的R/W放大器电路之后的最后两级加法器A28和A29。每一半加法单元针对由5∶1多路转接器电路所选择的单个B算子产生和数及进位信号。更详细地说,由图可看出,典型的加法器单元A28的结构与图3c所示的半加法器单元是相似的,只是增加了一个类似图3g中那样的多路转接器电路,用来选择B算子值。也就是说,此加法单元包含一个由增强型MOSFET16-2800和16-2802所组成的进位传输部分,以及一个由反相器电路16-2820和16-2822及MOSFET16-2804和16-2806所组成的异或电路部分。根据加在MOSFET16-2813上的控制信号CTLADD,作为指令信号BICTL2的功能,和数位B28经由三态缓冲电路16-2814被送到总线BI。加到MOSFET16-2812的控制信号CTLB被用来传送经由反相电路16-2852和16-2850及MOSFET16-2812送入的、为MOSFET16-2854至16-2858所选定的B算子B28到总线BI。
图3f所示为安全检验电路14的位比较器部分的结构。如同图4b所看到的,第一和第二组位比较器部分在图3a中所列出的加法单元A2至A11和A18至A27之间相互交替。第一组位比较器部分(C0-C9)由SDRAM12-1a接受A算子信号SS0至SS9,由VAR寄存器18接受B算子信号ix(12)至ix(21)。第二组位比较器部分(C0-C9)(图中未示出)由SDRAM12-1b接受A算子信号GS0至GS9,由VAR寄
存器18接受B算子信号Iy(22)至Iy(31)。每一位比较器部分产生一表明这A和B算子对的比较结果的进位传输信号。
详细的说,图3f的典型性的位比较器部分30包括一个由增强型MOSFET16-230至16-234组成的进位传输部分和一个由MOSFET16-236至16-246所组成的组合逻辑部分。除比较器部分C9之外,其它每一部分都由其前一部分接受一进位信号(例如CYIN(1))。B算子值ix(12)通过一反相器电路16-248加到这一部分。
可以把类似结构的比较器电路和所需的寄存器结合起来用以完成各种不同的环形校验操作。对于本发明的目的来说,用来构成各级加法器16和安全检验电路14各部分的特定的电路可被看作是通常的设计。
图3g较详细地说明了单元12-12及12-14各自的一个多路转接器和一个读/写电路。如图所示,多路转接器电路包括两对增强型MOSFET12-120,12-122和12-124,12-126。每对连接到一个不同的RAM组元,并为不同的互补控制信号SAT和
SAT中的一个所启动。
如图示,每一读/写放大器电路包括:一对予装载MOSFET12-140和12-142,一个由MOSFET12-145至12-148组成的写放大器电路。放大器电路还包括一个由互相串联的反相电路12-150和12-152及MOSFET12-154和12-156所组成的D触发器电路,以及一个包括有MOSFET12-160至12-164的三态缓冲电路。在每一操作周期的时间T1内,予装载MOSFET12-140和12-142对与高态相关的RAM位
信号线进行予装载。
D触发器电路在由定时信号T2所确定的读操作周期内被触发。这就是说,作为单元30所产生的控制信号
RWRTRAMR的功能,放大器电路12-14被置于读或写的状态。当该控制信号是二进制的“1”或高态时,它使得MOSFET对12-170和12-172将写放大器置于三态状态,其本上将其与电路分开。这样,使得它不受由一对反相器电路12-174和12-176加到其输入端的总线BI20的信号的影响。这时,如果单元30的控制信号BICTL1被置于二进制“1”或高态,D触发器电路所存贮的数据信号即被读到BI20。同时,这对互补输出信号OUT和
OUT也被送到对应的加法器16单元。
控制信号SAT的状态决定对STW RAM组元毕特位或ACW RAM组元毕特位的信息的选择。当信号SAT呈二进制“1”或高态时,STW RAM毕特位的内容即成为加法器16单元的输入信号。紧接着时间T2,当
T2
为二进制“1”时,由RAM读出的信息内容保持存贮在锁存晶体管内至另一完整的操作周期。这是由于信号
T2
使得MOSFET12-154保持其内容。
正如前面提到过的,图2中的RAM12-1a和12-1b在功能上是被安排来存贮两种类型的信息。一部分存放ACW/STW信息,而另一部分存放工作寄存器的信息。STW/ACW的8个字由CAM12-3根据一命中信息进行访问或有选择地进行访问。工作存贮器的信息则由译码器12-7按照微程序控制单元30的微指令信号加以选择而不管CAM的选择如何。
图4a和4b详细地示出了RAM12-1a和12-1b的编
排和构成。参照图4a可见,6个工作寄存器存贮单元1-6的地址被安排为0-5,并如这里所说的由微程序控制单元30进行寻址。其次的二个存贮单元7和8分别对应于描述符段的变址寄存器(DSBR)的上位和下位,也由控制单元30寻址。
DSBR指定处理单元的地址模式和现行处理地址空间。如果DSBR的最前面两字为0,则CPU处于绝对寻址工作模式,而处理的地址空间仅限于实际存贮器所存贮的一切。如果DSBR的最前面两字大于0,则CPU处于变址地址模式,其处理地址空间由DSBR所指向的描述符段表(DSPT)来确定。描述符段页表存贮单元17-20由控制单元30和/或虚拟地址的上位毕特来寻址。
段描述符存贮在段表中,它可能占有1000个64位的条目。在一处理开始时,操作系统指派所需的系统和用户段描述符到该过程。在执行该处理过程期间,根据需要将补充段以递升顺序加入段表,以使该表尽可能紧凑。最近期应用的段描述符被放在PAM12-1a和12-1b中。更确切地说,描述符根据功能被划分,并存贮在STW和ACW存贮单元。STW存贮单元9-16为控制单元30和一段CAM命中信号所寻址。ACW存贮单元21-28由控制单元30和段ACW“命中信号”寻址。
图4b详细地示出了存贮在RAM12-1a和12-1b的不同存贮单元的不同毕特位的信息型式。它也说明了加法器16的位片构成,安全单元比较器电路14以及使得布局简化、性能和密度提高的RAM组元。
由图可看出,描述符段变址寄存器上位(DSBRU)部分包括以下内容:
(1)毕特0或NS是一个新堆栈指示器。如果这一毕特被置为1,则可容许新的调用和返回指令,而俘获将可在新堆栈的适当堆栈段内取得/放弃一帧(数据)。如果毕特被置0,则不允许新的调用和返回指令,而俘获将在俘获保留区进行处理。
(2)毕特或NI是一个新的I/O指示器如果毕特置为1。I/O的执行要求新的I/O处理。
(3)毕特4-23或PGF0-19确定一页面帧号值,它对应于描述符段表(DSPT)的30位物理地址中20位高位毕特。
(4)毕特24-31或OFSO-7确定一对应于描述符段表30位物理地址的中间8毕特(该30位物理地址的其余二位低位毕特置为零)。
DSBRL由下列构成:
(1)毕特2-9或SB0-7确定堆栈基地址值。这一8比特区和2毕特现行环指定在利用新的堆栈功能时的现行堆栈段的段号。
(2)毕特24-31或PS0-9确定一个过程或段描述符表的大小。此毕特区包括一个代表最大有效段号的10毕特大小的值。如果一虚拟地址的段号大于该过程或段描述表的大小,则发出段故障信号。
描述符段页表(DSPT)条目由下列组成:
(1)毕特0为有效指示器。如果此有效位置1,则此描述符即为有效,而其余毕特指定该段描述符表的页帧号。
(2)毕特1-2或V,M分别为被采用的或被修改的指示器。对于被采用的或修正的条目,它们必须置1。
(3)毕特4-23或PGF0-19确定一相当于段描述符表
物理地址上位20毕特的页帧号值。
(4)毕特24-31或MBZ0-7被置为0,并对应于段解说符表物理地址的低8位毕特(此30位物理地址的其余二位低位毕特被置为0)。
静态变换字(STW)由下列组成:
(1)毕特0或V为有效指示器。如果此有效位置1,则该段描述符有效,而此段描述符的其余毕特即被用来完成虚拟地址到物理地址的变换和访问恰当权的校验。如果有效位置为0,则此段描述符无效,并发出段差错信息。
(2)毕特1或PR是一特权指示器。如果它被置1,则只有在环形分量为零为时才允许执行特权指令。如果它被置为0,则不允许执行任何特权指令,如遇到这一情况则发出特权指令差错信息。
(3)毕特4-23或PGF0-9标明页帧号,并相当于页描述符表30位物理地址的高20位毕特或存贮器中该段的起始。
(4)毕特24-31或OF0-7指定相应于物理地址中间8毕特的位移值。如果该段没有页,此毕特区即不用,而且必须置0。如果该段分成页面,那么它就和页号一起被指定为此段页表的起点(30位物理地址的其余2位低位毕特被置0)。
访问控制字(ACW)由下列组成:
(1)毕特0或P为分页指示器。如果其为1,该段则被分成页面,页帧号和位移区确定页表的起点。如果为0,则该段未进行分页。此页帧号指定主存中的未分页段的起点。一个未分页的段必须以一页面为单位来开始和结束,而且要由连续的页帧构成。
(2)毕特1或E为容许执行指示器。只有在此指示器为1时才
允许由该段取指,而且该处理过程在一大于或等于R1而小于或等于R2的环内进行。应注意,当此允许执行指示器处于选通而允许读指示器为禁止态时,那么该段应被作为一“仅执行”过程段来处理。一仅执行过程段被允许引用其自身内部的数据而不管是否允许读。但对其它段中的所有其它过程则是不允许读的。如果企图在一不允许执行的段中执行一指令,则发出访问差错信号。
(3)毕特2-3或R1指明该段(0-R1)的读/写类最低特权环号。就是说,在环号0-R1运行的过程(写类)可写入这一段。
(4)毕特4-5或R2指明该段(R1-R2)的读/执行类最低特权环数,就是说,一运行于环号(R1-R2)的过程可以读或执行这一段。
(5)毕特6-15或SS0-9为指定页面中段大小的段尺寸位。如果该段是分页的,此尺寸亦确定页表的大小。如果虚拟地址大于段尺寸,则发出段差错信号。
(6)毕特16或C是兼容性指示,如果置1,则执行括号从环路0扩展到R2以模拟在先存取控制过程的状态。如果置0,则执行括号从R1扩展到R2。
(7)毕特17或G是一选通指示,如果置1,则该段是一选通段。
(8)毕特18或R是允许读指示,只有在该位为1并只有在等于或大于R2的特权的环路内执行处理的情况下才允许由其它的段到该段进行数据取数。
如果试图违背允许读指示,那么就会得到一个故障信号。
(9)毕特19或W是允许写指示,只有在该位为1并只有在等于
或大于R1的特权的环路内执行处理的情况下才允许到该段进行数据存贮。
如果试图违背允许写指示,那么就会得到一个故障信号。
(10)毕特20-21或R3规定该段(R2-R3)调用括号的最少被给予特权的环路数。
(11)毕特22-31或GS0-9是选通容量字段,如果该选通指示置“1”,那么该选通容量字段规定在段的选通区域内的字数,该字段在调用指令期间使用。
如上所述,由图1中SDU10所执行的不同操作是在微编程控制单元30的控制之下进行的。这些操作由从图6a-6c中的不同的微指令来确定。图6a所表明的第一种类型微指令字确定静态地址转换操作(SAT),如图所示,该微指令字最左边两位(0,1)置为“0”。该字的其它字段对本发明不是特别重要,然而,应当注意,位地址6-9含有用于控制SDU10操作的信息。例如,位地址6存贮一个写位,位地址7-9存贮可以是从值000-111的逻辑地址,当该8进制逻辑地址是值000时,该描述符段基址寄存器(DSBR)中较高的32位被寻址;而当该8进制逻辑地址是值001时,该DSBR的较低的32位被寻址。写位6的状态用于确定是从该存贮单元中读出信息还是向该存贮单元写入信息。
8进制逻辑地址值010-101直接允许描述符段页面表项目0(DSPT0)-3(DSPT3)的寻址。8进制逻辑地址值110规定以对应于图6d所示虚拟地址字段Sx较高两位的子地址去寻址4个DSPT存贮单元中的任一个,8进制逻辑地址值111允许使用该段CAM“命中”(SCH)的静态转换字(STW)的
存取。这是由该静态地址转换操作所执行的主要功能,该静态地址转换操作使用STW去转换虚拟地址,以便在遗漏页面描述符的情况下获得用于取另一个页面的页面表项目。
用于控制SDU10操作的第二种类型微指令字是一个示于图6b中被称为MSZ的杂用字段,该微指令字最左边两位的地址(0、1)被置1,位地址6-9提供如图6a中微指令字所提供的相同信息。该微指令字重新解释8进制逻辑地址位7-9,以便使能SDU10中将被存取的不同RAM存贮单元,特别是,当该8进制逻辑地址值为000-101时,工作寄存器存贮单元WR0-WR5被存取。8进制逻辑地址值111使能使用段CAM命中(SCH)的存取控制字(ACW)的存取。
示于图6c中用于控制SDU10操作的第三种类型的微指令字是一个用于规定动态地址转换DAT操作的微指令,该微指令字的最左边两个位地址(01)被置为“0、1”,这意味着对SDU RAM12-1中的ACW存贮单元进行存取,该SDU RAM12-1把段CAM“命中”用作子地址。DAT微指令字的其它字段虽然与理介本发明无关,但它们被用于控制转换(例如提供CAM遗漏)、存取检验(例如允许读、写等等)和环路检验操作。
示于图6d用于把虚拟地址装载到VAR寄存器18的第四种类型微指令字是被称为MSI的杂用字段,该微指令字的最左边两个位地址(01)置为“10”,地址12-14的位以如下方式控制VAR寄存器18的装载:当8进制值为“000”时,内容保持一致;当值为“001”时,从总线BI向VA寄存器装载;而当值为“010”时,该VA内容减1。8进制值“011”使VA寄存器
加1;“100”则使VA寄存器清零,而“101”也使VA寄存器加载。8进制“110”和“111”分别使其内容减2和加2。该微指令字的其它字段对本发明并不重要。
从上述可以看到,只需要少数微指令就可以平行的方式执行某些不同的操作,这种平行方式要求到单一SDU RAM12-1中的所有不同类型的寄存器存贮单元中进行存取。
现在参照图5的流程图来描述SDU10的操作。图5表示了一个典型的读存贮器顺序,如图所示,该顺序包括执行由逻辑方框图500-504所指明的操作,这些操作包括装载VAR寄存器18,把虚拟地址转换成实际地址,执行存取检验,装载从高速暂存器接收的数据并用该数据装载VAR18。详细地说就是在具有图6d所示的MSC1微指令格式的第一微指令字的控制下,具有图6e格式的虚拟地址从总线BI被装入VAR寄存器18,该地址被送到SDU10以及一未示出的页面描述符单元(PDU),该PDU与SDU操作平行地执行从20位虚拟地址到20位实际地址的页面转换。
由于PDU操作与理介本发明无关,所以不在这里描述。但作为进一步的资料,可以参考题目为“高速高密度动态转换器”的有关专利申请。
如在图5中看到的,在具有图6c所示的DAT微指令格式的第二种微指令字控制下,执行方框502的操作,虚拟地址的段号被送到CAM12-3。在等同比较情况下,SDU8个命中信号中的一个变成二进制1。假设该实际地址被送往高速暂存器并在高速暂存器读操作周期内SDU10执行必须的存取检验。即DAT微指令字使得SDU RAM12-1去存取由命中信号SCH再寻址的ACW
部份。在DAT微指令字6c的控制下,VMMU的安全检验比较器电路14使用SDU RAM12-1的ACW部分去执行环路选择、存取检验和环路简化。
由包括在安全检验电路14的环路检测逻辑电路执行环路选择,该环路检测逻辑电路除了使用当前环路寄存器(RCR),有效环路寄存器(REF)的内容以及虚拟地址(VA)的环路号的值以外,还使用了ACW的R1、R2和R3去形成一个值(RNG)。在DAT微指令环路形成控制字段位12-14的控制下,安全性被如下监督。
安全检验电路14利用ACW的位地址1-5以及位地址16去完成执行准许和环路括号检验,例如,如果比较电路14确定图6d的字段RN大于ACW字段R2(位4-5),或者如果ACW字段R1(位2-3)大于RN和ACW兼容性位16不是1,或执行准许指示位18不是1以及微指令字位6-8等于8进制1或4,则报告一个存取故障。
电路14利用ACW位地址4-5和ACW位地址18耒执行允许读和环路括号检验,例如,如果电路14检测出由值RN和REF中的较大者确定的值(REFF)大于ACW字段R2(位4-5)或允许读指示位18不是1和微指令字位6-8等于8进制的2或7,则报告一个存取故障。
另外,电路14利用ACW位地址2-3和位地址19耒执行允许写和环路括号检验,例如,如果电路14检测出REFF大于ACW字段R1(位2-3)或允许写指示位19不是1以及微指令字位6-8等于8进制4或7,则报告一个存取故障。
安全检验电路14利用ACW位地址2-5,20-21和位地址17耒执行选通允许和环路括号检验,例如,如果电路14检测出字段R1大于REF并且微指令字位6-8等于8进制5,则报告一个选通故障。最后,电路14利用ACW位地址6-15耒执行段容量检验,例如,如果电路14检测出虚拟地址的中间位12-21大于段容量位6-15,则报告一个容量故障。
在完成存取检验的情况下,在另一个MSC1微指令字的控制下,由从高速暂存器接收的实际地址所确定的数据被装入适当的CPU寄存器中并且下一个虚拟地址被装入VAR寄存器18。方框502和504的操作顺序所持续的时间和检测命中的时间一样长,其中MSC1回路和DAT微指令字要被重复存取。当检测到一个描述符遗漏状态时,就使得SDU10在控制单元30的控制下去执行为取得遗漏段描述符所需要的,由方框506-530所指明的操作顺序,页面描述符遗漏的发生也中断了该顺序的环路,并引起执行一个类似在方框506-530所表示的操作顺序,以便从贮存在高速暂存器或存贮器内的页面表中取得遗漏的页面描述符。将仅在PDU利用从SDU10存取的信息方面,对它的工作情况加以叙述。
详细地讲,具有图6d格式的虚拟地址的段号被提供给CAM12-3。在没有等同比较的情况下,所有8个命中信号都保持为二进制0,这就导致产生了由CAW12-3所检测到的遗漏状态(被检测到所有0),由于假设存在一个指明所需数据不取自高速暂存器的误差,所以微编程控制单元30通过MSC2微指令字执行一个消除操作,以便抵削或者消除将被执行的这一步。然后,控制单元30循环到遗漏的处理程序第一个存贮单元。
如方框508表明的,所执行的第一步操作是消除遗漏状态,这个操作是在SAT微指令字的控制之下进行的,SAT微指令字使除用于存贮其它状态信息以外还存贮无误差(off error)状态的出错寄存器(a syndrom register)中的适当位地址复位。另外,在另一个MSC2微指令字控制下,与写操作有关的信息被存贮在称为星形寄存器的暂存器中,如果该特定操作原耒是写操作,那么该信息允许该系统去补作一个写操作。
在完成方框506、508和510的内务处理操作的基础上,SDU10开始执行遗漏段描述符的第一步。从方框512中可以看到,在耒自微编程控制单元30的另一个SAT微指令字的控制下,SDU10产生该STW地址并将其写入CAM12-3。为了产生一个需要的地址,SDU RAM12-1中4个DSPT字存贮单元中适当的一个被存取以响应SAT微指令字。由SAT微指令字的7-9位规定的DSPT存贮单元的内容从RAM12-1中读出并送往加法器16。
如方框514所示,在下一周期中,在另外的SAT微指令字控制下,对DSPT字作遗漏检查,即检查适当的位(位0)以确定在DSPT字中是否存在遗漏(即在SDU RAM12-1中是否存在遗漏)。如果有遗漏,微编程控制单元30引起到用于解决该DSPT遗漏的子程序FIX DSPT的转移,这涉及到SDU10的使用,特别涉及到对DSBR字存贮单元所进行的存取,这种存取产生用于从存贮器中取下一个页面的地址。
在如方框516所示的下一周期中,假设有一命中,这一由在VAR寄存器18中虚拟地址的一部分和DSPT字组合而产生的地
址用于在另一个MSC2微指令字的控制下对耒自高速暂存器的SDW进行存取,该SDW是一个与虚拟地址段号有关的段表项目。
所需值由总线BI20传送给SDU10,相应于STW的段描述符字的前半部分被写入SDU RAM12-1。详细地讲,在由方框518所指明的下一周期中,写寄存器位6置1、地址位7-9置111的SAT微指令字将把STW值写入由段CAM命中所确定的SDU RAM12-1中8个STW存贮单元中的一个,即这个顺序是由于CAM遗漏而被首次输入。在从高速暂贮器接收段描述符字以前,VAR18的虚拟地址内容被写入段CAM12-5。此时,段描述符字的STW位被写入由段CAM命中所指出的RAM存贮单元。该SAT微指令字产生信号SAT,该信号支配图2中的多路转接器电路12-12,把耒自R/W放大器12-14的信号仅加到RAM12-1a和12-1b的STW位地址。SAT微指令字位地址6的状态强迫使
SWRTRAMR信号为二进制0,从而使图3g中的R/W放大器12-14向每一个STW位存贮单元提供互补信号。
如方框520所示,在正产生地址的后半部分(即存贮在高速暂存器中的段描述符的第二双字地址)期间内,SDU10在下一个SAT微指令字的控制下,检验该段描述符字的最左位(位0)的状态,以便确定它是否是有效的段描述符,如果它不是表明它是无效的二进制1,则微编程控制单元30转移到段描述符故障程序SD-FLT,如方框520所示。这一程序按照处理故障的要求在SDU工作寄存器存贮单元中存贮丢掉的信息。
假设该段描述符是有效的,则如方框522所示,在MSC2微
指令字控制下,执行另一个读操作。此时,取出ACW并写入SDU RAM12-1,即如方框524所示,这一操作是由MS2微指令字执行的,该MS2微指令字最左边两位是11,写寄存器位6是二进制1和位7-9是111。如方框524所示,其结果是ACW被写入由位7-9和段CAM命中所规定的存贮单元,即在此时,信号SAT是二进制0,这就决定了多路转接器电路12-12所提供的信号只送到ACW位地址。位地址6的状态再一次强迫SWRTRAMR为二进制0,从而使得每个R/W放大器把互补信号送到每个ACW存贮单元。
如从方框526所看到的,除了补作方框528的操作以外,在脱离该顺序以前还要在另一个MSC2微指令字控制下执行一个进一步的净化步骤。由于SDU10已经执行了一个读操作,如方框530所示,这一操作将导致把该虚拟地址转换为用于读高速暂存器的实际地址,并导致与高速暂存器读操作相平行地执行存取检验。
下一步,该顺序返回到初始环路,由于遗漏信息被还原,由此将产生一命中,并且接收的数据将随着向VAR存贮器装载待被转换的下一个虚拟地址一起被装载。如上所述,SDU10将仍然保留在这一环路中,直到一个段或页面描述符遗漏中任何一个发生为止。在遗漏页面描述符的情况下,必须产生一页面表字PTW项目地址作为该顺序的一部分以用于标明页数的段,ACW含有用于指明该段是否被标明页数的一个二进制位,根据这一位的状态,SDU10执行用于标明页数或未标明页数段的那些操作。这是响应SAT微指令字而完成的操作,该SAT微指令字中写寄存器位6是二进制0和7-9是“111”。这样就允许SDW的STW位从SDU RAM12-1
中被读出。该STW包含存贮在高速暂存器页面表中的PTW基地址和偏移。在VAR寄存器18中的虚拟地址位被用于指明特殊页面表项目。利用这个信息,在加法器16中计算出结果地址并将其存贮在STAR寄存器中。接着在STAR寄存器里它被用于从高速暂存器中取PTW。在未标明页数段的情况下,在一个不同的SAT微指令字的控制下,加法器16从STW位产生该页面描述符地址而不必到高速暂存器中进行存取。这样,该ACW存贮在执行包含注明页数和未注明页数段的地址转换操作中提供一种加法器灵活性。
从以上所述可以看到,根据本发明SDU10的结构允许在极少数微指令的控制下,通过存取在一单个RAM内一些不同类型的寄存器存贮单元耒执行多种操作。
很明显,本技术领域内的普通技术人员可以对本发明的实施例加以改变,例如字容量,存贮单元容量以及信息和控制的类型可以根据需要加以改变。
而且根据通过对本发明最佳形式的图解和描述所提供的条款和规定,可以作某些改变,而不脱离在后面附加权利要求中所述本发明的精神,并且在某些情况下可以使用本发明的某些特征获得益处而不必相应使用其它特征。
Claims (10)
1、一种段描述符号信息的存贮装置,用于在由该装置接收的每一字上执行转换操作,所述装置其特征在于包括:
一具有多个存贮单元的随机存取存贮器(RAM),每一存贮单元具有多个位存贮单元,存贮有与第一种类型转换操作有关信息的上述多个存贮单元的每一个第一序号的第一组位存贮单元和存贮有与第二种类型转换操作有关信息的上述存贮单元的每一个上述第一序号的第二组位存贮单元;
一个相联存贮器(CAM),该CAM具有用于存贮与待转换段描述符字相应序号有关信息的多个存贮单元,并且具有用于产生命中信号的多个输出,这些命中信号指明上述每个待转换字与上述多个存贮单元中所存贮信息相比较的结果,所说的输出耦合到上述的RAM,和,
耦合到上述RAM和CAM的微编程控制装置,上述控制装置产生第一和第二组信号,这些信号分别用于存取由将其分别传送给用来执行操作的第一和第二装置的上述CAM命中信号所指定的一个所说疗号存贮单元内的上述的第一和第二组位存贮单元的信息内容,从而执行所说的第一和第二种转换操作。
2、根据权利要求1所说的装置,其中上述单元还包括耦合到上述RAM和上述微编程控制装置的译码器装置,由来自上述微编程控制装置的第三组信号支配的上述译码器装置存取上述多个存贮单元第二序号中指定的一个,该存贮单元用于存贮在执行上述第一和第二种转换操作期间所使用的工作寄存器信息。
3、根据权利要求1所说的装置,其中微编程控制装置包括具有用于存贮多个不同类型微指令字的多个存贮单元的控制存贮器,上述控制装置响应接收上述每个待被转换的字,读出上述不同类型微指实字的第一个,用于产生上述第一组信号,该第一组信号使上述第一装置执行操作以便执行上述第一种转换操作,并且,上述控制装置响应表示遗漏状态的上述命中信号,读出上述不同类型微指令字的第二个,用于产生上述第二组信号,该第二组信号号使上述第二装置执行操作以便执行上述第二种转换操作。
4、根据权利要求3所说的装置,其中上述第一装置相当于安全检验电路,用于检验以存贮在上述第一组位存贮单元内的上述信息状态为基础的存贮器存取。
5、根据权利要求3所说的装置,其中上述第二装置是一个加法器,用于从存贮在上述第二组存贮单元中的上述信息产生一个地址,该地址用于存取为完成上述接收字的转换所需要的遗漏数据。
6、根据权利要求2所说的装置,其中上述单元还包括一个寄存器,用于存贮每个需要被转换的字,上述寄存器被耦合到上述译码器装置,上述译码器装置由来自上述寄存器的信号和来自上述第二组信号中的信号支配,去存取上述存贮单元第三序号中被指定的一个,以用于产生一个地址,该地址用于取将被存贮在一个所说第一序号存贮单元第二组位存贮单元中的信息,该信息使得上述CAM产生指示遗漏状态的命中信号。
7、根据权利要求1所说的装置,其中上述单元具有VLSI芯片结构并且其中上述RAM的上述第一组位存贮单元和上述第二组位存贮单元以交错形式排列,这样,在由上述第一和第二组信号所规定操作的不同周期中,仅使那个对于由上述第一和第二装置执行的上述第一和第二种转换操作所必须的信息可以被存取,上述配置降低了与由上述装置运行的信号的位数相适应的芯片空间量。
8、根据权利要求7所说的装置,其中上述第一装置包括多个比较器组,并且上述第二装置包括一些加法器级,上述某些加法器级与上述比较器组相交错,从而满足使芯片空间最小化的要求。
9、根据权利要求7所说的装置,其中上述RAM还包括多个读/写放大器电路和多个多路转接器电路,每个电路在序号上对应于上述第一组位存贮单元,上述放大器电路与多路转换器电路以列的形式排列,这些列与RAM位存贮单元的上述第一和第二组的相应位地址对相互对准,上述多路转换器电路耦合到上述微编程控制装置,上述多路转换器电路响应来自上述控制装置的信号,在操作的RAM读或写周期内,选择上述位地址对中的某一个位地址连接到相应的一个读/写放大器电路上。
10、一种段描述符信息的存贮装置,用于在由该装置接收的每个字上执行转换操作,上述装置其特征在于:
一个具有多个段描述符字(SDW)存贮单元的随机存取存贮器(RAM),每一存贮单元分成若干组位地址,用于存贮与不同类型转换操作的相应序号有关的信息;
一个相联存贮器,该存贮器具有用于存贮与待转换的相应序号段描述符字有关信息的多个存贮单元,并且有用于产生命中信号的多个输出,该命中信号指示上述每个待转换字与上述CAM中存贮信息相比较的结果,上述输出连接到上述RAM,和,
耦合到上述RAM和CAM的微编程控制装置,该控制装置产生第一和第二多个信号,用于分别存取由上述CAM命中信号指定的一个SDW存贮单元中用于执行第一和第二种转换操作的第一和第二序号组。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US94731586A | 1986-12-23 | 1986-12-23 | |
US947,315 | 1986-12-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN87108389A CN87108389A (zh) | 1988-07-06 |
CN1009771B true CN1009771B (zh) | 1990-09-26 |
Family
ID=25485945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN87108389A Expired CN1009771B (zh) | 1986-12-23 | 1987-12-23 | 段描述符信息的存贮装置 |
Country Status (11)
Country | Link |
---|---|
EP (1) | EP0272670A3 (zh) |
JP (1) | JPH07120316B2 (zh) |
KR (1) | KR930009667B1 (zh) |
CN (1) | CN1009771B (zh) |
AU (1) | AU603167B2 (zh) |
CA (1) | CA1286422C (zh) |
DK (1) | DK685987A (zh) |
FI (1) | FI93586C (zh) |
MX (1) | MX168306B (zh) |
NO (1) | NO173116C (zh) |
YU (1) | YU236587A (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4819165A (en) * | 1987-03-27 | 1989-04-04 | Tandem Computers Incorporated | System for performing group relative addressing |
GB2260629B (en) * | 1991-10-16 | 1995-07-26 | Intel Corp | A segment descriptor cache for a microprocessor |
US5895489A (en) * | 1991-10-16 | 1999-04-20 | Intel Corporation | Memory management system including an inclusion bit for maintaining cache coherency |
US5479628A (en) * | 1993-10-12 | 1995-12-26 | Wang Laboratories, Inc. | Virtual address translation hardware assist circuit and method |
US5530824A (en) * | 1994-04-04 | 1996-06-25 | Motorola, Inc. | Address translation circuit |
US6754784B1 (en) * | 2000-02-01 | 2004-06-22 | Cirrus Logic, Inc. | Methods and circuits for securing encached information |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4520441A (en) * | 1980-12-15 | 1985-05-28 | Hitachi, Ltd. | Data processing system |
US4538241A (en) * | 1983-07-14 | 1985-08-27 | Burroughs Corporation | Address translation buffer |
-
1987
- 1987-12-16 AU AU82609/87A patent/AU603167B2/en not_active Ceased
- 1987-12-21 FI FI875615A patent/FI93586C/fi not_active IP Right Cessation
- 1987-12-21 EP EP87118946A patent/EP0272670A3/en not_active Withdrawn
- 1987-12-22 NO NO875391A patent/NO173116C/no unknown
- 1987-12-22 CA CA000555044A patent/CA1286422C/en not_active Expired - Lifetime
- 1987-12-22 MX MX009885A patent/MX168306B/es unknown
- 1987-12-22 JP JP62325130A patent/JPH07120316B2/ja not_active Expired - Lifetime
- 1987-12-23 YU YU02365/87A patent/YU236587A/xx unknown
- 1987-12-23 CN CN87108389A patent/CN1009771B/zh not_active Expired
- 1987-12-23 KR KR1019870015023A patent/KR930009667B1/ko not_active IP Right Cessation
- 1987-12-23 DK DK685987A patent/DK685987A/da not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
FI875615A0 (fi) | 1987-12-21 |
JPH07120316B2 (ja) | 1995-12-20 |
FI93586C (fi) | 1995-04-25 |
CA1286422C (en) | 1991-07-16 |
YU236587A (en) | 1990-12-31 |
EP0272670A2 (en) | 1988-06-29 |
DK685987A (da) | 1988-06-24 |
AU8260987A (en) | 1988-06-23 |
EP0272670A3 (en) | 1990-05-16 |
NO173116B (no) | 1993-07-19 |
KR880008160A (ko) | 1988-08-30 |
JPS63213046A (ja) | 1988-09-05 |
NO875391L (no) | 1988-06-24 |
FI875615A (fi) | 1988-06-24 |
MX168306B (es) | 1993-05-17 |
CN87108389A (zh) | 1988-07-06 |
DK685987D0 (da) | 1987-12-23 |
NO875391D0 (no) | 1987-12-22 |
KR930009667B1 (ko) | 1993-10-08 |
FI93586B (fi) | 1995-01-13 |
AU603167B2 (en) | 1990-11-08 |
NO173116C (no) | 1993-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1099078C (zh) | 在多处理器系统中的处理器之间传送消息的方法与装置 | |
CN1054223C (zh) | 用于分级数据超高速缓冲存储器系统中同步化的系统和方法 | |
CN1248118C (zh) | 以推测方式使高速缓存中的缓存行失效的方法及系统 | |
CN1087451C (zh) | 用于在高速缓冲存储器中设置一项目的方法和装置 | |
CN1114860C (zh) | 处理多个电平触发和边沿触发中断的方法和装置 | |
US20020144027A1 (en) | Multi-use data access descriptor | |
CN1794236A (zh) | 高效的基于cam在分组有效载荷中进行串搜索的技术 | |
CN1254424A (zh) | 存储器访问保护 | |
CN1690952A (zh) | 根据多组高速缓存组预测来选择执行的指令的装置和方法 | |
US11360958B2 (en) | Techniques for indexing and querying a set of documents at a computing device | |
CN1652092A (zh) | 不同高速缓存级上具有关联集重叠同余组的多级高速缓存 | |
CN1397887A (zh) | 一种将储存数据重新导向的虚拟集合高速缓存 | |
CN101063957A (zh) | 管理锁定的高速缓冲存储器中的组替换的系统和方法 | |
CN1581069A (zh) | 具有多位字段的寄存器的重命名 | |
US20210318958A1 (en) | Cache Memory Addressing | |
WO2003014940A1 (en) | A memory engine for the inspection and manipulation of data | |
CN113316772A (zh) | 用于启用具有指示符的部分数据传输的系统、方法和装置 | |
CN1924816A (zh) | 提高多核系统访问临界资源速度的方法和装置 | |
CN1306419C (zh) | 一种高速缓存及从高速缓存读取数据的方法 | |
CN1120196A (zh) | 地址变换电路 | |
CN1912853A (zh) | 用于管理高速缓存数据的方法和数据处理系统 | |
CN1278931A (zh) | 特别适于译码数字音频信号的数字信号处理器 | |
CN1009771B (zh) | 段描述符信息的存贮装置 | |
Chen et al. | Reconfigurable accelerator for the word-matching stage of BLASTN | |
CN1540666A (zh) | 可动态配置的内容可寻址存储器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C13 | Decision | ||
GR02 | Examined patent application | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |