[发明专利]多核处理器及其串口复用方法有效
申请号: | 200710108666.9 | 申请日: | 2007-06-14 |
公开(公告)号: | CN101067794A | 公开(公告)日: | 2007-11-07 |
发明(设计)人: | 赵阳;于伟;贾皓昕;王守林;杨凡 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F15/17 |
代理公司: | 北京康信知识产权代理有限责任公司 | 代理人: | 尚志峰;吴孟秋 |
地址: | 518057广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核 处理器 及其 串口 方法 | ||
技术领域
本发明涉及多核处理器领域,尤其涉及在多核处理器运行多个嵌入式操作系统时,实现一种复用串口的技术。
背景技术
高性能多核处理器在嵌入式系统中得到了广泛的应用,多核处理器多个内核的不同线程可以独立运行嵌入式操作系统,目前主流的嵌入式操作系统都可以通过基于目标单板的串口Shell进行打印和调试,给软件开放带来极大的便利。
然而多核处理器系统的串口资源极其有限,不可能为每个内核线程固定一个串口,所以通常可以通过硬件设计电路扩展串口,达到增加串口个数的目的,因为大部分串口资源在大部分时间都闲置,会造成串口资源的浪费,同时也增加了成本;或者像CN200510030862专利,它是通过硬件切换模块控制串口在GPS串口和CPU串口之间切换,达到复用串口的目的,这种复用带有明显的互斥性,当前时刻串口只能被一个设备独占,其他设备无法使用串口,同时硬件切换串口时可能会造成正在使用串口的软件数据丢失。
为了充分发挥串口在多核处理器中的作用,通过软件控制串口在多个内核线程间切换是一种很好的解决问题的方法,不但提高了串口资源的利用率,而且可控性和可靠性都能得到保证。
发明内容
本发明的一个目的在于克服在串口资源受限的嵌入式系统中串口无法充分复用的缺点,因此提出一种通过利用多核处理器内部消息机制、共享内存、以及中断切换等机制共同完成串口在各个内核线程之间复用的方法。
根据本发明的一个方面,提供了一种多核处理器,包括:多核多线程处理器,用于运行至少一个内核线程,以及在接收到切换控制模块的切换控制消息后,进行串口在内核线程间的切换;串口,用于将多核多线程处理器的至少一个内核线程的数据发送至外部,并与用于串口中断挂接的串口主控内核线程进行数据交互;以及切换控制模块,连接于串口和多核多线程处理器之间,用于控制多核多线程处理器中的一个或多个内核线程的切换以共享串口。
切换控制模块定时向多核多线程处理器发送切换控制消息。切换控制模块向用户提供各个内核线程的运行信息,在用户指示切换串口主控内核线程的情况下,切换控制模块向多核多线程处理器发送切换控制命令。
多核多线程处理器在上电后进行以下处理:由用于串口中断挂接的串口主控内核线程进行初始化和加载驱动程序,使能串口中断,建立共享内存,初始化基于串口的Shell程序;为多核处理器中运行的各个内核线程分配独立的数据缓冲区,在共享内存中建立各个内核线程的串口控制信息;串口主控内核线程向各个内核线程发送串口初始化完成消息,串口初始化完成消息包括串口控制信息在共享内存中的地址;以及在允许使用串口的情况下,各个内核线程将需要发送的数据放入分配的数据缓冲区中并将通知消息发送至串口主控内核线程,串口主控内核线程根据通知消息将数据缓冲区中的数据通过串口发送到外部。
多核多线程处理器在接收到切换控制消息后进行以下处理:串口主控内核线程发起切换串口流程,禁止当前串口中断并卸载串口驱动程序,同时将串口中断挂接到需要切换到的目的内核线程并发送串口切换通知消息到目的内核线程;目的内核线程作为串口主控内核线程进行初始化和加载驱动程序,使能串口中断,建立共享内存,初始化基于串口的Shell程序,将共享内存中的串口主控内核线程号修改为目的内核线程的线程号,并将初始化完成消息发送至所有内核线程,其他内核线程将目的内核线程作为串口主控内核线程进行后续处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710108666.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:蛋白专用粉碎机
- 下一篇:连铸中间包浸入式水口高效烘烤装置