CN1430144A - 一种多处理机复用外围pci设备的方法 - Google Patents
一种多处理机复用外围pci设备的方法 Download PDFInfo
- Publication number
- CN1430144A CN1430144A CN 01138092 CN01138092A CN1430144A CN 1430144 A CN1430144 A CN 1430144A CN 01138092 CN01138092 CN 01138092 CN 01138092 A CN01138092 A CN 01138092A CN 1430144 A CN1430144 A CN 1430144A
- Authority
- CN
- China
- Prior art keywords
- pci
- processor
- pci equipment
- equipment
- driver
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种多处理机复用外围PCI设备的方法,通过对主处理机和从处理机进行系统初始化,使得每个处理机都加载一套PCI设备驱动程序,而只有使用该PCI设备的处理机的PCI设备中断才给予开放,切换时通过处理机之间的消息交互机制通知源处理机先屏蔽中断,再通知目的处理机开放PCI中断,启动PCI设备。本发明广泛适用于嵌入式多处理机系统,尤其是大型嵌入式设备中。采用本发明的方法由于不再需要为每个处理机配置一串口用于调试,而是直接通过PCI设备进行调试,节约了系统的成本,加快了调试速度;在处理机需要向外发送数据时,可以直接通过PCI设备输出,不需要经过主处理机转发,提高了系统的带宽利用率。
Description
所属领域
本发明涉及嵌入式多处理机领域,特别是涉及大型嵌入式设备中多处理机系统的设计,实现一种基于PCI网的多处理机复用外围PCI设备的方法。
背景技术
目前大型嵌入式设备经常被设计成多个多处理机系统,多处理机之间的通信可以通过PCI网进行,参考图1所示的现有系统的硬件结构示意图,受嵌入式系统空间的限制,为了减少嵌入式系统的体积,通常不采用每个处理机分配一块PCI网卡的方式,而是将一块PCI网卡和所有的处理机都直接连接在PCI总线上,通过PCI网卡实现系统中多处理机之间的通信(通信带宽达到132MB/s)。
由于现行的嵌入式软件开发平台是通过网络或串口调试目标程序,如果没有调试手段将给程序员编程和查错增加了很大的困难,特别是对大型嵌入式设备的软件开发来说,没有调试通道几乎是不可能的。而目前的方法是为每个处理机增加一个串口作为调试的手段。但是这些串口在系统正常运行时是空闲的,造成系统资源的浪费,而且串口通信的带宽也限制了软件调试进度。
发明内容
本发明克服现有技术在系统调试时的带宽限制,以及串口的利用率低的问题,提供一种多处理机复用外围PCI设备的方法,使得PCI设备可以按照系统需求指定给某个独立的处理机专用,节省了PCI设备。而且通过外围的PCI设备还可实现系统的软件调试,增加PCI总线带宽使用效率。
本发明提出一种多处理机复用外围PCI设备的方法,包括以下步骤:步骤1,主处理机系统初始化:1)初始化PCI总线上的所有的处理机和PCI设备,分配地址空间和中断向量;2)主处理机加载所述PCI设备的驱动程序;3)开放主处理机上的所述PCI设备中断,启动所述PCI设备;4)向从处理机发送PCI设备已经正常运行的通知;步骤2,从处理机系统初始化:1)接收PCI设备正常运行通知;2)从处理机加载所述PCI设备的驱动程序;3)关闭从主处理机上的所述PCI设备中断,禁止从处理机使用所述PCI设备的驱动程序;步骤3,PCI设备由源处理机使用切换到目的处理机使用:1)目的处理机发送请求消息到源处理机;2)停止所述PCI设备的运行,屏蔽源处理机的PCI设备中断,禁止驱动程序发送数据到PCI设备的发送缓冲区;3)向目的处理机发送请求成功消息;4)目的处理机启动PCI设备,并开放PCI设备中断,允许使用PCI设备驱动程序,完成切换。
采用本发明的多处理机复用外围PCI设备的方法,具有以下三个方面的优点:
(1)由于不再需要为每个处理机配置串口,减少了系统中设备
的数量,降低硬件成本;
(2)由于不用将数据经过主处理机进行转发而占用PCI总线的
带宽,可以提高多处理机系统中通信带宽效率;
(3)对每个处理机可以将PCI设备指定给其进行调试,加快软
件调试进度。
附图说明
图1现有技术多处理机系统的结构示意图;
图2本发明的多处理机系统的结构示意图;
图3本发明的多处理机复用外围PCI设备的方法流程图;
实施方式
参考图1所示现有技术的系统结构,当某个处理机向PCI设备输出时,需要先将数据通过PCI总线发送使用PCI设备的主处理机,主处理机再通过PCI设备将数据输出。这种方式虽然节省了PCI设备,但是占用了PCI总线的带宽。另外在进行系统调试时,特别是对单个处理机调试时,由于处理机不能直接使用PCI设备,需要另外给各处理机增加一个串口,专门用以调试系统。在系统正常工作时,这些串口的状态为空闲。
而本发明的系统结构(参考图2所示)由于可以将PCI设备指定给单个处理机使用,这样就不再需要增加专门的串口来调试单个处理机;而且各处理机向外发送数据时,可以直接通过PCI设备发送,不再需要经过主处理器的转发。
下面再就以PCI网卡为本发明的PCI设备,具体介绍如何实现多处理机复用PCI网卡。首先所有的处理机和网卡都连接在PCI总线上,其中的一个处理机是PCI总线的主设备,负责为其他的处理机和网卡分配PCI空间,为了让所有的处理机都能使用同一个网卡,网卡的中断申请线要同时连接上所有的处理机。参考图3所示的实现流程图:
系统设计主要涉及到PCI网卡驱动的设计,主处理机初始化PCI总线上的所有的处理机和PCI设备,分配PCI空间和I/O空间;其它的处理机都不做PCI初始化。为了达到处理机之间轮换使用网卡的目的,一般由主当前使用网卡的处理机指定网卡新使用者,当前使用网卡的处理机释放网卡,新的使用者开始使用网卡。这就需要在主处理机与其他处理机之间有一种通信手段:可以采用PCI共享内存或PCI的消息机制(Message Unit)。具体过程如下:1.初始化过程系统启动时,主处理机上的程序初始化PCI总线上的所有处理机和设备。主处理机将为网卡驱动程序分配初始化信息的空间、发送和接受描述符表、接受和发送缓冲区空间。主处理机初始化以上空间中的信息,启动网卡运行。主处理机通过处理机之间的通信手段通告其他的处理机,设备正常运行。其他的处理机接受到上面通告后,加载网卡驱动程序;但是不启动网卡,禁止发送数据到网卡的发送缓冲区,也不开放网卡的中断。所有的处理机网络协议栈使用相同的IP地址。2.网卡切换过程当前使用网卡的处理机接受到网卡切换消息后,首先停止网卡的运行,屏蔽网卡的中断,禁止驱动程序发送任何数据到网卡的发送缓冲区。当前使用网卡的处理机通过处理机之间通信的手段通告目的处理机请求成功。目的处理机重新初始化一次网卡初始化信息的空间、发送和接受描述符表、接受和发送缓冲区空间。目的处理机启动网卡运行,允许发送数据,开放网卡中断。在单调某个处理机时,程序员可以直接使用PCI网卡,并指定将该网卡配置给待调处理机,通过网卡调试单个处理机上的程序,十分方便,还大大增加了软件调试的带宽,节省硬件投入。
当某个处理机需要通过PCI网卡输出数据时,不再需要使用PCI总线将数据转发使用网卡的主处理机,再由其通过PCI网卡输出,而是直接申请使用网卡进行数据输出,节省了PCI总线的带宽。
Claims (5)
1.一种多处理机复用外围PCI设备的方法,其特征在于,包括以下步骤:
步骤1,主处理机系统初始化:1)初始化PCI总线上的所有的处理机和PCI设备,分配地址空间和中断向量;2)主处理机加载所述PCI设备的驱动程序;3)开放主处理机上的所述PCI设备中断,启动所述PCI设备;4)向从处理机发送PCI设备已经正常运行的通知;步骤2,从处理机系统初始化:1)接收PCI设备正常运行通知;2)从处理机加载所述PCI设备的驱动程序;3)关闭从主处理机上的所述PCI设备中断,禁止从处理机使用所述PCI设备的驱动程序;步骤3,PCI设备由源处理机使用切换到目的处理机使用:1)目的处理机发送请求消息到源处理机;2)停止所述PCI设备的运行,屏蔽源处理机的PCI设备中断,禁止驱动程序发送数据到PCI设备的发送缓冲区;3)向目的处理机发送请求成功消息;4)目的处理机启动PCI设备,并开放PCI设备中断,允许使用PCI设备驱动程序,完成切换。
2.根据权利要求1所述的一种多处理机复用外围PCI设备的方法,其特征在于,所述主处理机与其他处理机之间采用PCI共享内存的方式进行通讯。
3.根据权利要求1所述的一种多处理机复用外围PCI设备的方法,其特征在于,所述主处理机与其他处理机之间采用PCI的消息机制(Message Unit)通讯。
4.根据权利要求1所述的一种多处理机复用外围PCI设备的方法,其特征在于,所述各处理机的网络协议栈使用同一IP地址。
5.根据权利要求1所述的一种多处理机复用外围PCI设备的方法,其特征在于,所述的PCI设备是PCI网卡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01138092 CN1430144A (zh) | 2001-12-31 | 2001-12-31 | 一种多处理机复用外围pci设备的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01138092 CN1430144A (zh) | 2001-12-31 | 2001-12-31 | 一种多处理机复用外围pci设备的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1430144A true CN1430144A (zh) | 2003-07-16 |
Family
ID=4674379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 01138092 Pending CN1430144A (zh) | 2001-12-31 | 2001-12-31 | 一种多处理机复用外围pci设备的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1430144A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1308855C (zh) * | 2004-03-18 | 2007-04-04 | 联想(北京)有限公司 | 在嵌入式系统中分配硬件地址的装置和方法 |
CN100428191C (zh) * | 2004-06-24 | 2008-10-22 | 松下电器产业株式会社 | 以低带宽保证局部集中访问的管理装置、管理方法及包含管理装置的动态图像处理装置 |
CN1909559B (zh) * | 2006-08-30 | 2010-04-14 | 杭州华三通信技术有限公司 | 基于快速外围组件互连的接口板及其切换主控板的方法 |
CN101533360B (zh) * | 2009-04-13 | 2012-01-25 | 华为技术有限公司 | 多核环境下的数据处理方法及单板 |
CN102999381A (zh) * | 2011-09-09 | 2013-03-27 | 中国航天科工集团第三研究院第八三五七研究所 | 一种提高VxWorks实时性的CPCI设备中断复用方法 |
CN104253731A (zh) * | 2013-06-25 | 2014-12-31 | 罗伯特·博世有限公司 | 用于运行通信装置的方法 |
CN109002404A (zh) * | 2018-06-26 | 2018-12-14 | 联想(北京)有限公司 | Pcie设备及其监控方法 |
-
2001
- 2001-12-31 CN CN 01138092 patent/CN1430144A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1308855C (zh) * | 2004-03-18 | 2007-04-04 | 联想(北京)有限公司 | 在嵌入式系统中分配硬件地址的装置和方法 |
CN100428191C (zh) * | 2004-06-24 | 2008-10-22 | 松下电器产业株式会社 | 以低带宽保证局部集中访问的管理装置、管理方法及包含管理装置的动态图像处理装置 |
US7725633B2 (en) | 2004-06-24 | 2010-05-25 | Panasonic Corporation | Arbitration device for arbitrating among a plurality of master devices, arbitration method, and video processing device including the arbitration device |
CN1909559B (zh) * | 2006-08-30 | 2010-04-14 | 杭州华三通信技术有限公司 | 基于快速外围组件互连的接口板及其切换主控板的方法 |
CN101533360B (zh) * | 2009-04-13 | 2012-01-25 | 华为技术有限公司 | 多核环境下的数据处理方法及单板 |
CN102999381A (zh) * | 2011-09-09 | 2013-03-27 | 中国航天科工集团第三研究院第八三五七研究所 | 一种提高VxWorks实时性的CPCI设备中断复用方法 |
CN102999381B (zh) * | 2011-09-09 | 2015-03-04 | 中国航天科工集团第三研究院第八三五七研究所 | 一种提高VxWorks实时性的CPCI设备中断复用方法 |
CN104253731A (zh) * | 2013-06-25 | 2014-12-31 | 罗伯特·博世有限公司 | 用于运行通信装置的方法 |
CN109002404A (zh) * | 2018-06-26 | 2018-12-14 | 联想(北京)有限公司 | Pcie设备及其监控方法 |
CN109002404B (zh) * | 2018-06-26 | 2021-12-24 | 联想(北京)有限公司 | Pcie设备及其监控方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hwang et al. | A Unix-Based local computer network with load balancing | |
US5764915A (en) | Object-oriented communication interface for network protocol access using the selected newly created protocol interface object and newly created protocol layer objects in the protocol stack | |
US5809235A (en) | Object oriented network event management framework | |
US5659701A (en) | Apparatus and method for distributed program stack | |
KR100754578B1 (ko) | 단일 칩 프로토콜 컨버터 | |
US5596579A (en) | High performance machine for switched communications in a heterogeneous data processing network gateway | |
US5938733A (en) | Object oriented representation of network requests in a client server model | |
US6697878B1 (en) | Computer having a remote procedure call mechanism or an object request broker mechanism, and data transfer method for the same | |
CN108647104B (zh) | 请求处理方法、服务器及计算机可读存储介质 | |
EP0794490A2 (en) | Dynamic execution unit management for high performance server system | |
CN101206582B (zh) | 一种虚拟机系统及其处理方法 | |
JPH0283757A (ja) | 通信制御システム | |
JPH04314137A (ja) | システム間通信方式 | |
KR100570143B1 (ko) | 상호 통신 프리프로세서 | |
CN1430144A (zh) | 一种多处理机复用外围pci设备的方法 | |
JP4088611B2 (ja) | シングル・チップ・プロトコル・コンバーター | |
CN1300661C (zh) | 计算机系统及电源管理状态切换方法 | |
CN110401939A (zh) | 一种低功耗蓝牙控制器链路层装置 | |
EP4036730A1 (en) | Application data flow graph execution using network-on-chip overlay | |
CN112862104B (zh) | 混合型量子计算机架构及其执行计算任务的方法 | |
CN115473811A (zh) | 一种网络性能优化方法、装置、设备及介质 | |
CN101197782B (zh) | 一种基于多核处理器的网络设备的控制方法及系统 | |
Park et al. | A high performance message-passing system for network of workstations | |
CN110519390A (zh) | 一种低功耗蓝牙控制器链路层实现方法 | |
CN109840147A (zh) | 一种实现多队列网卡绑定cpu的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
ASS | Succession or assignment of patent right |
Owner name: SHENZHENG CITY ZTE CO., LTD. Free format text: FORMER OWNER: SHENZHENG CITY ZTE CO., LTD. SHANGHAI SECOND INSTITUTE Effective date: 20030723 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20030723 Applicant after: Zhongxing Communication Co., Ltd., Shenzhen City Applicant before: Shanghai Inst. of No.2, Zhongxing Communication Co., Ltd., Shenzhen City |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |