论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
位信息是二进制中最基本的数据。控制系统中,经常需要检测位信息,例如进程的标识、外设的状态等。在多任务系统中,各进程将占用不同物理地址的系统资源。这时,指令能否支持间址的位访问,就大大影响进程之间的切换。如果不支持间址的位访问,假设有8位信息点,则必须编写8句直接位检测的语句来判别,增加了代码的长度;如果各进程要使用同一个代码段,必须为各进程置换重用的资源,浪费时间;而如果各进程使用不同的资源,则必须书写代码功能相同、仅仅资源不同的代码。现在常用的微控制器,位间接寻址能力都比较差,编写程序费时费力,代码冗长,修改困难。
对于字节数据,要求提供既可对数据代码区,又可对程序代码区的间址访问支持。当前常见的微控制器,虽然也提供对程序代码区的间址访问支持,但限于查表操作。应用程序要访问存放于数据内的常数,必须先调用查表程序获取对象,再将它放入某个工作单元,然后才能开始处理。如果能通过间址直接访问程序存储器中的数据表,则节省了时间与空间的开销。
(2)数据描述能力
随着人工智能、自适应、自学习技术的发展,参与关系运算的两个对象经常都是变量,微控制器指令系统的设计必须考虑这一因素。
关系运算的两个对象,应该支持运算器与立即数、寄存器、直接寻址或者间接寻址对象的关系运算;而间接寻址对象可以放在数据存储区中,也可以在程序存储区中。考虑到数组、队列的运算需要,比较理想的是间址寄存器支持指定次数循环或者支持循环队列操作。
相对寻址能力;采用一个基指针,再与间址寄存器叠加形成访问地址。既可访问程序代码空间。便于查表操作,用空间资源换取时间,提高非线性运算的处理速度;又可访问数据存储空间,便于计算机辅助开发应用程序生成运行代码中数据间址访问。
3.原子操作指令支持
同步与互斥是多进程必须处理的问题。多进程抢占系统资源时,要先判断系统资源使用标识。一般用一个位标识,是空闲则占用。这是一种互斥行为,一旦资源被占用,其它进程不得使用。为了避免一个进程检测到系统资源空闲之后,但在未改变标识位之间,另一个进程也检测到该资源空闲,必须将检测与改变标识设计为原子操作。一般,都通过禁止系统中断来解决。在检测之前关闭中断,检测之后再开启中断。如果指令提供对标志位以及对标识字节的原子操作支持,将减少程序并提高效率。
(1)标识位操作指令
要求对标识位的检测、清除标识位以及转移,在一条指令内完成。这在有些微控制器中已有指令支持。
(2)适应信号灯操作的指令
多进程并发运行时,经常用到信号灯技术。为了适应PV操作等同步与互斥操作,微控制器应提供减一等于某值转移,以及增一等于某值转移这样的指令支持。这样就可免去信号监测前后的关闭、开启中断操作,而仅在需要保护临界区时才关闭中断。禁止中断的时间减少了,相当于系统响应实时事件的能力