一种实现处理器相互通讯的方法及装置制造方法及图纸

技术编号:2820069 阅读:168 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种实现处理器相互通讯的方法及装置,预先将第一处理器和第二处理器共享的内存划分为命令区和反馈区,所述第一处理器和第二处理器将指示对方操作的命令写入所述命令区中状态标识为可写的不同命令字,并将该命令字的状态标识设置为对方可读;所述第一处理器和第二处理器从所述命令区中读取状态标识为自身可读的命令字中的命令,并将该命令字的状态标识设置为可写;所述第一处理器和第二处理器将自身对命令的执行结果写入所述反馈区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读;所述第一处理器和第二处理器从所述反馈区读取状态标识为自身可读的命令字中的命令执行结果,并设置该命令字的状态标识为可写。

【技术实现步骤摘要】

本专利技术涉及通讯
,尤其涉及一种实现处理器相互通讯的方法及装置
技术介绍
现有的实现两个处理器之间相互通讯的方式一般有以下两种一、 通过外围设备接口的方式。即两个处理器之间为了实现相互通讯,使用外围设备接口,如串行接口。 但是,这种通讯方式速度慢,而且通讯的数据可能会丟失,容错性不好。二、 通过共享内存的方式。所谓共享内存的方式,是指一个处理器将自己的一段内存与另一处理器共 享,使得另一处理器也可以访问该段内存,从而实现两个处理器之间的相互通 讯,那么该段内存即称为共享内存。然而,现有的通过共享内存的方式实现两个处理器之间的相互通讯时,一 个处理器在向共享内存写入数据时,另一处理器只能从该共享内存中读取数 据,而不可以同时也向该共享内存中写入数据,否则会造成数据混乱,造成读 写错误。也就是说,在处理器向共享内存写入数据时,另一处理器只能从该共 享内存中读取数据,如果一个处理器要向共享内存写入数据的话,只能等待另 一处理器对共享内存的写入操作结束。所以,这种通讯方式的速度也比较慢。综上所述,现有技术实现两个处理器之间相互通讯的效率较低。
技术实现思路
本专利技术实施例提供了一种实现处理器相互通讯的方法及装置,用以提高处 理器之间相互通讯的效率。本专利技术实施例提供的一种实现处理器相互通讯的方法,预先将第一处理器和第二处理器共享的内存划分为命令区和反馈区,该方法包括所述第一处理器和第二处理器将指示对方操作的命令写入所述命令区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读; 所述第一处理器和第二处理器从所述命令区中读取状态标识为自身可读的命令字中的命令,并将该命令字的状态标识设置为可写;所述第一处理器和第二处理器将自身对命令的执行结果写入所述反馈区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读;所述第一处理器和第二处理器从所述反馈区读取状态标识为自身可读的 命令字中的命令执行结果,并设置该命令字的状态标识为可写。本专利技术实施例提供的一种实现处理器相互通讯的系统包括内存划分单元 和两个处理器;所述内存划分单元,用于将所述两个处理器共享的内存划分为命令区和反 馈区;所述处理器,用于将指示对端处理器操作的命令写入所述命令区中状态标 识为可写的命令字,并将该命令字的状态标识设置为对端处理器可读;从所述 命令区中读取状态标识为自身可读的命令字中的命令,并将该命令字的状态标 识设置为可写;将对所述读取到的命令的执行结果写入所述反馈区中状态标识 为可写的命令字,并将该命令字的状态标识设置为对端处理器可读;从所述反 馈区读取状态标识为自身可读的命令字中的命令执行结果,并设置该命令字的 状态标识为可写。本专利技术实施例,预先将第一处理器和第二处理器共享的内存划分为命令区 和反馈区,所述第一处理器和第二处理器将指示对方操作的命令写入所述命令 区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读;所述第一处理器和第二处理器从所述命令区中读取状态标识为自身可读的 命令字中的命令,并将该命令字的状态标识设置为可写;所述第一处理器和第 二处理器将自身对命令的执行结果写入所述反馈区中状态标识为可写的不同 的命令字,并将该命令字的状态标识设置为对方可读;所述第一处理器和第二设置该命令字的状态标识为可写,从而使得两个处理器可以同时互相发送命 令,以及读取命令,实现了两个处理器的双工通讯,因此,提高了处理器之间 相互通讯的效率。附图说明图1为本专利技术实施例提供的一种实现处理器相互通讯的装置的总体结构示 意图2为本专利技术实施例提供的一种实现处理器相互通讯的装置的具体结构示 意图3为本专利技术实施例提供的一种实现处理器相互通讯的方法流程示意图。具体实施例方式本专利技术实施例提供了一种通过采用共享内存的方式,在两个处理器之间实 现双工通讯的方法及装置,用以提高两个处理器之间的通讯速率。本专利技术实施例所述的双工通讯,是指两个处理器可以同时相互发送命令, 以及可以同时读糾目互发送的命令。下面结合附图对本专利技术实施例提供的技术方案进行说明。参见图1,本专利技术实施例提供的一种实现处理器相互通讯的装置总体包括: 内存划分单元101、第一处理器102和第二处理器103。所述内存划分单元101,用于将第一处理器102和第二处理器103共享的 内存划分为命令区和反馈区。所述命令区,是用来存储第一处理器102和第二处理器103相互发送的命 令的;所述反馈区,是用来存储第一处理器102和第二处理器103相互发送的 命令执行结果的。所述第一处理器102,用于将指示第二处理器103操作的命令写入所述命 令区中状态标识为可写的命令字,并将该命令字的状态标识设置为第二处理器 103可读;从所述命令区中读取状态标识为自身可读的命令字中的命令,并将 该命令字的状态标识设置为可写;将对所述读取到的命令的执行结果写入所述 反馈区中状态标识为可写的命令字,并将该命令字的状态标识设置为第二处理果,并设置该命令字的状态标识为可写。所述第二处理器103,用于将指示第一处理器102操作的命令写入所述命 令区中状态标识为可写的命令字,并将该命令字的状态标识设置为第一处理器 102可读;从所述命令区中读取状态标识为自身可读的命令字中的命令,并将 该命令字的状态标识设置为可写;将对所述读取到的命令的执行结果写入所述 反馈区中状态标识为可写的命令字,并将该命令字的状态标识设置为第一处理果,并设置该命令字的状态标识为可写。较佳地,参见图2,所述第一处理器102具体包括清除单元21、写入命 令单元22、读取命令通知单元23、读取命令单元24、命令已读通知单元25、 写入执行结果单元26、读取执行结果通知单元27、读取执行结果单元28;所 述第二处理器103具体包括清除单元31、写入命令单元32、读取命令通知 单元33、读取命令单元34、命令已读通知单元35、写入执行结果单元36、读 取执行结果通知单元37、读取执行结果单元38。为了保证新来的命令得到及时处理,保证系统的健壮性,设置清除单元21 , 用于当命令区或反馈区中不存在状态标识为可写的命令字时,将命令区或反馈 区的命令字中存储时间最长的数据删除,并将该命令字的状态标识设置为可写,并触发写入命令单元22。写入命令单元22,用于将指示第二处理器103操作的命令写入所述命令区 中状态标识为可写的命令字,并将该命令字的状态标识设置为对端处理器可 读。读取命令通知单元23,用于通知第二处理器103从命令区读取命令。时,将命令区或反馈区的命令字中存储时间最长的数据删除,并将该命令字的 状态标识设置为可写,并触发写入命令单元32。写入命令单元32,用于将指示第一处理器102操作的命令写入所述命令区 中状态标识为可写的命令字,并将该命令字的状态标识设置为对端处理器可 读。读取命令通知单元33,用于通知第一处理器102从命令区读取命令。 读取命令单元24,用于根据读取命令通知单元33的通知,从命令区中读取状态标识为第一处理器102可读的命令字中的命令,并将该命令字的状态标识设置为可写。读取命令单元34,用于根据读取命令通知单元23的通知,从命令区中读 取状态标识为第二处理器103可读的命令字中的命令,并将该命令字的状态本文档来自技高网...

【技术保护点】
一种实现处理器相互通讯的方法,其特征在于,预先将第一处理器和第二处理器共享的内存划分为命令区和反馈区,该方法包括: 所述第一处理器和第二处理器将指示对方操作的命令写入所述命令区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读; 所述第一处理器和第二处理器从所述命令区中读取状态标识为自身可读的命令字中的命令,并将该命令字的状态标识设置为可写; 所述第一处理器和第二处理器将自身对命令的执行结果写入所述反馈区中状态标识为可写的不同的命令字,并将该命令字的状态标识设置为对方可读; 所述第一处理器和第二处理器从所述反馈区读取状态标识为自身可读的命令字中的命令执行结果,并设置该命令字的状态标识为可写。

【技术特征摘要】

【专利技术属性】
技术研发人员:张华
申请(专利权)人:北京中星微电子有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1