1995年4月
DS3578-2.5
MA2910
MA2910
抗辐射微控制器
行业标准MA2910微程序控制器
形成设备MA2900系列的一部分。
提供一个构建块的方式和微机
控制器的设计,在该范围内的每个设备是可膨胀
允许任何微控制的高效仿真
机。该系列已被设计为运行在
恶劣的环境,如空间,并且有资格的
最高级别的可靠性。
在MA2910微程序控制器是一个地址
音序器适用于微指令的顺序控制
存储在微程序存储器在高速微
处理器的应用。
所有内部元素都充满12位宽,最多应对
4096的话有一个芯片。该装置有一个整体的可固化
对于重复指令12位内部循环计数器和
计数循环迭代。
该MA2910有四个地址来源,允许
微程序地址必须从微克选
计数器,分公司地址总线, 9级压入/弹出堆栈,或
内部保持寄存器。
的MA2910支持100ns的周期时间,并具有一个
积分解码器的功能,使外部设备上
这消除了要求的分支地址总线
外部解码器。
特点
I
完全兼容行业标准2910A
I
SOS CMOS技术
I
辐射坚硬度高SEU免疫
I
高速/低功耗
I
完全兼容TTL
图1 :框图
1
MA2910
手术
该MA2910是SOS微控制器意
用于高速微处理器应用中使用。除了
的顺序访问能力,它提供条件
跳转到任何微指令的4096微字以内
范围内。
后进先出的堆栈提供microsubroutine回报
联动和循环能力;有九个嵌套级别
microsubroutines 。微指令循环计数控制
具有4096计数的能力。
该装置由16 , 4位的微指令来控制。该
聚乳酸中解码的微指令就我(3: P),并产生
选择控制码的多路复用器,寄存器/计数器,
微程序计数器寄存器和堆栈。 4位
微指令也产生三个低电平有效使能
信号( PL ,
VECT ,
和
MAP)
外用。操作
每个器件的块详述如下:
多路复用器
的MA2910包含用于一个四输入多路转换器
以选择寄存器/计数器,直接输入,微
计数器,或叠层作为下一条微指令的源
地址。
注册/计数器
寄存器/计数器由12 D型, edgetriggered
触发器,具有一个共同的时钟使能。它是在操作
微指令( 8,9,15 ),作为一个12位递减计数器,与结果
=零作为一个微指令分支的测试标准。
这提供微指令的高效迭代。
寄存器/计数器被设置,如果它被预加载,使得
用数N ,然后被用作一个循环终止
计数器,该序列将被正确地执行了N + 1次。
在指令15 ,三路分支下的结合
循环计数器和条件码的控制是可用的。
当它的负载控制, RLD ,为低电平时,新的数据被上载
下一个正控制过渡。
寄存器/计数器的输出提供给
多路转换器,作为下一条微指令地址的来源。
直接输入配料数据源,用于装载
注册/计数器。
微程序计数器寄存器
微程序计数器寄存器( μPC )是由
一个12位加法后跟一个12位的寄存器。在( μPC )
可以两种方式中的一种中:当进位到
增量为高电平时,微程序寄存器被加载到
在下一个时钟周期与当前的Y输出字加一
(Y + 1
¨
μPC ) 。微指令序列是这样
执行。当进位为低电平时,通过增量
Y输出未修饰使得μPC被重新装入的
在下一时钟周期相同字(Y
¨
μPC ) 。相同
因此微指令执行任意次数。
堆栈和堆栈指针
在多路复用器输入端提供的第三个来源是一个
9字由12位堆栈。堆栈是用来提供回
执行microsubroutines或循环处理时联动。
堆栈包含一个内置的堆栈指针(SP ),它总是
指向写入的最后一个文件的话。这使得协议栈参考
操作(循环) ,而不会在POP进行。
堆栈指针的显式控制过程中发生
指令0 ( RESET ) ,这使得栈空的
重置SP为零。一个复位,每当经过
堆栈是空的,在堆栈的顶部的内容是
未定义直到发生推。而执行的任何持久性有机污染物
堆栈为空放未定义的数据输出和离开
堆叠在零。
堆栈指针作为向上/向下计数器。中
微指令1,4 ,和5中,可能会出现该按键操作。
这导致堆栈指针递增,并且该文件是
写有要求的回报率联动。在周期以下
该按键,则返回的数据是在新位置所指向的
堆栈指针。
在5微指令,可能会出现一个POP操作。
堆栈指针递减在下一个时钟上升沿
下一个POP ,有效地去除旧信息
在堆栈的顶部。
堆栈指针连接是这样的,任何序列
推,持久性有机污染物或堆引用就可以实现。在复位
( 0指令) ,嵌套的深度为零。对于每一个
PUSH ,嵌套深度增加一个;每个POP中,
通过一个深度减小。
引脚说明
VDD和GND (电源和接地)
该MA2910从单电源电压工作
5V + 10%
D( 0 11) (直接输入)
这些连接提供直接输入到寄存器/
计数器,以及多路转换器。 D0是至少显著位和
D1中的最显著
我( 03) (指令总线)
这些输入的数据被读出关于CP的上升沿。它
determlnes的指令来根据被执行
表1中。
CC
(条件代码)
这个低电平有效输入用于确定的结果
有条件的instructlon 。 LOW表示TRUE conditlon 。
CCEN
(条件代码启用)
此低电平输入使CC的输入。当CCEN是
高, CC被忽略,并且有条件的操作执行为
虽然CC为低电平( TRUE)。
CI
(进位输入)
当这种高投入使微程序
计数器寄存器递增关于CP的上升沿。当
低电平,计数器保持不变。
RLD
(寄存器加载)
这个低电平有效输入加载从D寄存器/计数器
总线上的CP的上升沿。这将覆盖任何HOLD或DEC
指令通过I总线上的数据指定。
2
MA2910
指令集
该MA2910提供了选择16个指令
要执行的下一条微指令的地址。 4的
指令是无条件的,其效果只取决于
该指令。 10的指令产生效果是
部分地由外部条件来控制。 3的指令
有被部分由内容控制的效果
内部寄存器/计数器。在本讨论中,假定
在C1被连接到高电平。
在10条件指令,所述数据 - 的结果
取决于测试被施加到
CC.
如果
CC
输入为低时,所述
测试被认为通过,并在名称中指定的操作
发生;否则,测试失败和一个备用(常
下一顺序微指令的执行)。
发生。试验
CC
对于一个特定的可能被禁用
微指令通过设置
CCEN
高,其无条件
强制在名称中指定的操作;这是它迫使一个
使用pass.Other方式
CCEN
包括: ( 1 )绑得高高,
如果没有微指令是依赖于数据的这是有用的; (2)
它绑低,如果数据相关的指令不会被强制
无条件的;或(3)绑到MA2910的源
指令位I
0
,这使指令4,6和10的数据 -
依赖,但留给别人无条件的。所有这些招数
节省微码宽的一个位
的三个指令的效果取决于内容
的寄存器/计数器。除非该计数器保持的值
为零时,则递减;如果它保持为零,它被保持和
不同的微接下来的地址是selected.These
指令用于执行微指令循环的有用
次数量有限。指令15是受两个由
外部条件码和内部寄存器/计数器。
最有效的技术对于理解
MA2910是简单地拿每条指令并审查其
操作。为了提供一些感觉的实际
执行这些指令,所有指令16例
都包括在内。
给出的实施例应当在下面进行解释
方式:其目的是为了表明微流的各种
微记忆单词被执行。
例如,在CONTINUE指令(数14)
简单地指微程序存储器中的内容
字50顷执行,那么字51的内容是
执行。这之后的52和53的内容
在实施例中使用的微程序的地址是任意
选择并没有任何意义以外,以显示指令
流动。唯一的例外是第一个例子中,跳ZERO时,
这迫使微位置计数器来解决
ZERO 。每个点是指时间的内容
微记忆单词是在流水线寄存器。而
没有特殊符号被用于条件指令
下面的文字将解释什么条件的选择是
在每个实施例。
指令0 : JZ (跳转到零,或复位) 。
该指令无条件地指定地址
下一条微指令的是零。许多设计人员利用该
功能的上电顺序,并提供电
固件开始在微程序存储器字位置0 。
图3 : 0 JUMP ZERO ( JZ )
说明1 :有条件跳转到子程序。
该指令是条件跳转到子程序通过
地址在流水线寄存器提供的。如图4 ,
机器可能会在地址50 , 51执行的话,
和52。当地址52的内容是在管道
寄存器的下一个地址的控制功能是
条件跳转- TO-子程序。这里,如果测试是
通过在被执行的下一条指令将内容
微程序存储器位置90中。如果测试失败,则
JUMP - TO-子程序将不被执行;的内容
微存储单元53将转而执行。
因此,有条件跳转到子程序指令在
位置52将引起指令或者在位置90或
位置53下一个要执行的。如果测试输入是这样的
位置90被选择时,数值53将被压入到
内部堆栈。这提供了返回键的机器
开始时,在位置90的子程序完成。在
本实施例中,子程序在位置93完成,并
一个RETURN -FROM-子程序会在位置上找到
93.
图4 : COND JSB PL ( CJS )
说明2 :跳地图。
这是一条无条件指令,该指令使
地图
被使能的输出,以使下一条微指令的位置
通过经由该映射提供的地址来确定
PROM中。通常,在JUMP MAP指令用于在
该指令的结束取本机序列。
4
MA2910
说明4 :推/条件,负载柜。
此指令主要用于设置环路中
微固件。在这个例子中,当指令52是
在流水线寄存器中, PUSH将作出入堆栈
并基于所述条件,计数器将被加载。当一个
单键时,值被推始终下一顺序
指令地址。在这种情况下,地址是53。如果测试
失败时,计数器没有被加载时;如果通过,则计数器是
装载有包含在流水线寄存器分支的值
解决网络连接场。
因此,一个单一的微指令可用于建立一个
循环要执行的特定次数。说明8
将描述如何使用推值和寄存器/
专柜的循环。
图5 : 2 JUMP MAP( JMAP )
在图5的例子中,微指令的位置处
50,51 , 52和53可能会出现的取得顺序,并在
它的位置在53完成,跳转地图功能将是
包含在流水线寄存器。这个例子显示了
映射PROM输出为90 ;因此,无条件
跳转至微程序存储器地址90进行
说明3 :有条件跳转管道。
该指令从派生的分支地址
流水线寄存器分公司地址值( BR
0
-BR
11
) 。这
指令提供了一种技术分支到各
根据测试条件微程序序列的
输入。很多时候,状态机设计了简单
执行各种输入等待条件测试
成真。当真正的条件达到时,机器
然后跳转并执行了一套微指令来
执行某些功能。这通常有复位的效果
被测输入,直到在将来的某个时候。
该示例显示了通过管道中的条件跳转
在52位置寄存器地址时的内容
mlcroprogram存储器字52顷在流水线寄存器,该
下一地址将是任一位置53或30 ,在该例子。如果
测试通过,则该值当前在流水线寄存器
(30)将被选择。如果测试失败,则下一个地址选
将被包含在微程序计数器,在这种
举例来说,位置是53 。
图7 : 4 PUSH / COND LD CNTR ( PUSH )
说明5 :有条件跳转到子程序。
该指令是条件跳转到子程序通过
注册的流水线寄存器中的内容/计数器。一
PUSH总是执行和两个子程序1
执行。在本例中,任一子程序开始于
地址80或从地址的子程序90将
进行。执行RETURN - FROM-子程序(指令
10号)返回的微流来解决55 。
为了使该微指令控制序列来
正确地操作,指令53的两个下一个地址字段
和指令54的下一个地址字段将不得不
包含正确的值。让我们假定该分支地址
图6 : 3 COND JUMP PL ( CLP )
图8 : 5 COND JSB R / PL ( JSRP )
5
1995年4月
DS3578-2.5
MA2910
MA2910
抗辐射微控制器
行业标准MA2910微程序控制器
形成设备MA2900系列的一部分。
提供一个构建块的方式和微机
控制器的设计,在该范围内的每个设备是可膨胀
允许任何微控制的高效仿真
机。该系列已被设计为运行在
恶劣的环境,如空间,并且有资格的
最高级别的可靠性。
在MA2910微程序控制器是一个地址
音序器适用于微指令的顺序控制
存储在微程序存储器在高速微
处理器的应用。
所有内部元素都充满12位宽,最多应对
4096的话有一个芯片。该装置有一个整体的可固化
对于重复指令12位内部循环计数器和
计数循环迭代。
该MA2910有四个地址来源,允许
微程序地址必须从微克选
计数器,分公司地址总线, 9级压入/弹出堆栈,或
内部保持寄存器。
的MA2910支持100ns的周期时间,并具有一个
积分解码器的功能,使外部设备上
这消除了要求的分支地址总线
外部解码器。
特点
I
完全兼容行业标准2910A
I
SOS CMOS技术
I
辐射坚硬度高SEU免疫
I
高速/低功耗
I
完全兼容TTL
图1 :框图
1
MA2910
手术
该MA2910是SOS微控制器意
用于高速微处理器应用中使用。除了
的顺序访问能力,它提供条件
跳转到任何微指令的4096微字以内
范围内。
后进先出的堆栈提供microsubroutine回报
联动和循环能力;有九个嵌套级别
microsubroutines 。微指令循环计数控制
具有4096计数的能力。
该装置由16 , 4位的微指令来控制。该
聚乳酸中解码的微指令就我(3: P),并产生
选择控制码的多路复用器,寄存器/计数器,
微程序计数器寄存器和堆栈。 4位
微指令也产生三个低电平有效使能
信号( PL ,
VECT ,
和
MAP)
外用。操作
每个器件的块详述如下:
多路复用器
的MA2910包含用于一个四输入多路转换器
以选择寄存器/计数器,直接输入,微
计数器,或叠层作为下一条微指令的源
地址。
注册/计数器
寄存器/计数器由12 D型, edgetriggered
触发器,具有一个共同的时钟使能。它是在操作
微指令( 8,9,15 ),作为一个12位递减计数器,与结果
=零作为一个微指令分支的测试标准。
这提供微指令的高效迭代。
寄存器/计数器被设置,如果它被预加载,使得
用数N ,然后被用作一个循环终止
计数器,该序列将被正确地执行了N + 1次。
在指令15 ,三路分支下的结合
循环计数器和条件码的控制是可用的。
当它的负载控制, RLD ,为低电平时,新的数据被上载
下一个正控制过渡。
寄存器/计数器的输出提供给
多路转换器,作为下一条微指令地址的来源。
直接输入配料数据源,用于装载
注册/计数器。
微程序计数器寄存器
微程序计数器寄存器( μPC )是由
一个12位加法后跟一个12位的寄存器。在( μPC )
可以两种方式中的一种中:当进位到
增量为高电平时,微程序寄存器被加载到
在下一个时钟周期与当前的Y输出字加一
(Y + 1
¨
μPC ) 。微指令序列是这样
执行。当进位为低电平时,通过增量
Y输出未修饰使得μPC被重新装入的
在下一时钟周期相同字(Y
¨
μPC ) 。相同
因此微指令执行任意次数。
堆栈和堆栈指针
在多路复用器输入端提供的第三个来源是一个
9字由12位堆栈。堆栈是用来提供回
执行microsubroutines或循环处理时联动。
堆栈包含一个内置的堆栈指针(SP ),它总是
指向写入的最后一个文件的话。这使得协议栈参考
操作(循环) ,而不会在POP进行。
堆栈指针的显式控制过程中发生
指令0 ( RESET ) ,这使得栈空的
重置SP为零。一个复位,每当经过
堆栈是空的,在堆栈的顶部的内容是
未定义直到发生推。而执行的任何持久性有机污染物
堆栈为空放未定义的数据输出和离开
堆叠在零。
堆栈指针作为向上/向下计数器。中
微指令1,4 ,和5中,可能会出现该按键操作。
这导致堆栈指针递增,并且该文件是
写有要求的回报率联动。在周期以下
该按键,则返回的数据是在新位置所指向的
堆栈指针。
在5微指令,可能会出现一个POP操作。
堆栈指针递减在下一个时钟上升沿
下一个POP ,有效地去除旧信息
在堆栈的顶部。
堆栈指针连接是这样的,任何序列
推,持久性有机污染物或堆引用就可以实现。在复位
( 0指令) ,嵌套的深度为零。对于每一个
PUSH ,嵌套深度增加一个;每个POP中,
通过一个深度减小。
引脚说明
VDD和GND (电源和接地)
该MA2910从单电源电压工作
5V + 10%
D( 0 11) (直接输入)
这些连接提供直接输入到寄存器/
计数器,以及多路转换器。 D0是至少显著位和
D1中的最显著
我( 03) (指令总线)
这些输入的数据被读出关于CP的上升沿。它
determlnes的指令来根据被执行
表1中。
CC
(条件代码)
这个低电平有效输入用于确定的结果
有条件的instructlon 。 LOW表示TRUE conditlon 。
CCEN
(条件代码启用)
此低电平输入使CC的输入。当CCEN是
高, CC被忽略,并且有条件的操作执行为
虽然CC为低电平( TRUE)。
CI
(进位输入)
当这种高投入使微程序
计数器寄存器递增关于CP的上升沿。当
低电平,计数器保持不变。
RLD
(寄存器加载)
这个低电平有效输入加载从D寄存器/计数器
总线上的CP的上升沿。这将覆盖任何HOLD或DEC
指令通过I总线上的数据指定。
2
MA2910
指令集
该MA2910提供了选择16个指令
要执行的下一条微指令的地址。 4的
指令是无条件的,其效果只取决于
该指令。 10的指令产生效果是
部分地由外部条件来控制。 3的指令
有被部分由内容控制的效果
内部寄存器/计数器。在本讨论中,假定
在C1被连接到高电平。
在10条件指令,所述数据 - 的结果
取决于测试被施加到
CC.
如果
CC
输入为低时,所述
测试被认为通过,并在名称中指定的操作
发生;否则,测试失败和一个备用(常
下一顺序微指令的执行)。
发生。试验
CC
对于一个特定的可能被禁用
微指令通过设置
CCEN
高,其无条件
强制在名称中指定的操作;这是它迫使一个
使用pass.Other方式
CCEN
包括: ( 1 )绑得高高,
如果没有微指令是依赖于数据的这是有用的; (2)
它绑低,如果数据相关的指令不会被强制
无条件的;或(3)绑到MA2910的源
指令位I
0
,这使指令4,6和10的数据 -
依赖,但留给别人无条件的。所有这些招数
节省微码宽的一个位
的三个指令的效果取决于内容
的寄存器/计数器。除非该计数器保持的值
为零时,则递减;如果它保持为零,它被保持和
不同的微接下来的地址是selected.These
指令用于执行微指令循环的有用
次数量有限。指令15是受两个由
外部条件码和内部寄存器/计数器。
最有效的技术对于理解
MA2910是简单地拿每条指令并审查其
操作。为了提供一些感觉的实际
执行这些指令,所有指令16例
都包括在内。
给出的实施例应当在下面进行解释
方式:其目的是为了表明微流的各种
微记忆单词被执行。
例如,在CONTINUE指令(数14)
简单地指微程序存储器中的内容
字50顷执行,那么字51的内容是
执行。这之后的52和53的内容
在实施例中使用的微程序的地址是任意
选择并没有任何意义以外,以显示指令
流动。唯一的例外是第一个例子中,跳ZERO时,
这迫使微位置计数器来解决
ZERO 。每个点是指时间的内容
微记忆单词是在流水线寄存器。而
没有特殊符号被用于条件指令
下面的文字将解释什么条件的选择是
在每个实施例。
指令0 : JZ (跳转到零,或复位) 。
该指令无条件地指定地址
下一条微指令的是零。许多设计人员利用该
功能的上电顺序,并提供电
固件开始在微程序存储器字位置0 。
图3 : 0 JUMP ZERO ( JZ )
说明1 :有条件跳转到子程序。
该指令是条件跳转到子程序通过
地址在流水线寄存器提供的。如图4 ,
机器可能会在地址50 , 51执行的话,
和52。当地址52的内容是在管道
寄存器的下一个地址的控制功能是
条件跳转- TO-子程序。这里,如果测试是
通过在被执行的下一条指令将内容
微程序存储器位置90中。如果测试失败,则
JUMP - TO-子程序将不被执行;的内容
微存储单元53将转而执行。
因此,有条件跳转到子程序指令在
位置52将引起指令或者在位置90或
位置53下一个要执行的。如果测试输入是这样的
位置90被选择时,数值53将被压入到
内部堆栈。这提供了返回键的机器
开始时,在位置90的子程序完成。在
本实施例中,子程序在位置93完成,并
一个RETURN -FROM-子程序会在位置上找到
93.
图4 : COND JSB PL ( CJS )
说明2 :跳地图。
这是一条无条件指令,该指令使
地图
被使能的输出,以使下一条微指令的位置
通过经由该映射提供的地址来确定
PROM中。通常,在JUMP MAP指令用于在
该指令的结束取本机序列。
4
MA2910
说明4 :推/条件,负载柜。
此指令主要用于设置环路中
微固件。在这个例子中,当指令52是
在流水线寄存器中, PUSH将作出入堆栈
并基于所述条件,计数器将被加载。当一个
单键时,值被推始终下一顺序
指令地址。在这种情况下,地址是53。如果测试
失败时,计数器没有被加载时;如果通过,则计数器是
装载有包含在流水线寄存器分支的值
解决网络连接场。
因此,一个单一的微指令可用于建立一个
循环要执行的特定次数。说明8
将描述如何使用推值和寄存器/
专柜的循环。
图5 : 2 JUMP MAP( JMAP )
在图5的例子中,微指令的位置处
50,51 , 52和53可能会出现的取得顺序,并在
它的位置在53完成,跳转地图功能将是
包含在流水线寄存器。这个例子显示了
映射PROM输出为90 ;因此,无条件
跳转至微程序存储器地址90进行
说明3 :有条件跳转管道。
该指令从派生的分支地址
流水线寄存器分公司地址值( BR
0
-BR
11
) 。这
指令提供了一种技术分支到各
根据测试条件微程序序列的
输入。很多时候,状态机设计了简单
执行各种输入等待条件测试
成真。当真正的条件达到时,机器
然后跳转并执行了一套微指令来
执行某些功能。这通常有复位的效果
被测输入,直到在将来的某个时候。
该示例显示了通过管道中的条件跳转
在52位置寄存器地址时的内容
mlcroprogram存储器字52顷在流水线寄存器,该
下一地址将是任一位置53或30 ,在该例子。如果
测试通过,则该值当前在流水线寄存器
(30)将被选择。如果测试失败,则下一个地址选
将被包含在微程序计数器,在这种
举例来说,位置是53 。
图7 : 4 PUSH / COND LD CNTR ( PUSH )
说明5 :有条件跳转到子程序。
该指令是条件跳转到子程序通过
注册的流水线寄存器中的内容/计数器。一
PUSH总是执行和两个子程序1
执行。在本例中,任一子程序开始于
地址80或从地址的子程序90将
进行。执行RETURN - FROM-子程序(指令
10号)返回的微流来解决55 。
为了使该微指令控制序列来
正确地操作,指令53的两个下一个地址字段
和指令54的下一个地址字段将不得不
包含正确的值。让我们假定该分支地址
图6 : 3 COND JUMP PL ( CLP )
图8 : 5 COND JSB R / PL ( JSRP )
5