李工在设计IOC模块软件时指出:为了使CPM模块能够及时处理RS422数据,在IOC与CPM间的双端口存储器中为每个422通道设计一级缓冲,当某通道接收一个字节时,就将数据放入缓冲,由CPM接收(其结构如图3-2所示)。这样的好处在于每当有数据输入时,CP

admin2009-03-25  53

问题 李工在设计IOC模块软件时指出:为了使CPM模块能够及时处理RS422数据,在IOC与CPM间的双端口存储器中为每个422通道设计一级缓冲,当某通道接收一个字节时,就将数据放入缓冲,由CPM接收(其结构如图3-2所示)。这样的好处在于每当有数据输入时,CPM模块可立即读取,而增大双口缓冲的目的是在CPM来不及处理时可防止数据的丢失。同时,IOC中的程序相对简单、实时性好、可以不考虑422通道的数据传输周期,只要按查询方式对16路422输入进行查询读取即可。
   会上,王工提出了强烈的反对意见,认为这种设计方法绝对不可取,这种方法只考虑了软件的简单与便利,而没有针对软件特点考虑问题,在设计中对实时性、负载平衡分配及实现算法上均存在缺陷,必须改进。
   (1)你认为李工的设计在实时性、负载平衡分配和实现算法上存在怎样的缺陷?详细说明理由。
   (2)请给出IOC模块和CPM模块之间双口存储器数据交换方法。
请用150字以内的文字说明针对IOC模块的多路RS422接口的数据采集,其驱动程序使用中断方式或查询方式的主要差别是什么?主要优缺点有哪些?

选项

答案(1)主要差别如下。 中断方式是在程序接收或发送每一个字节时,均产生中断信号,发中断主要通知处理器一个字节已经发送完成;接收中断主要通知处理器RS422接口中有一个字节数据达到。 查询方式主要用程序读取RS422接口的寄存器,判别接口是否有数据到达或接口发送缓冲区是否空。 (2)优缺点如下。 中断方式:及时响应数据、不会产生数据丢失;系统开销大、实现较复杂。 查询方式:软件实现简单、接收数据快、系统开销小;不能及时响应。 在实现时,可根据具体要求,将两种方式结合使用。

解析
转载请注明原文地址:https://jikaoti.com/ti/yR67FFFM
0

最新回复(0)