CN102419739A - 多主总线仲裁共享装置以及仲裁方法 - Google Patents
多主总线仲裁共享装置以及仲裁方法 Download PDFInfo
- Publication number
- CN102419739A CN102419739A CN2011102970047A CN201110297004A CN102419739A CN 102419739 A CN102419739 A CN 102419739A CN 2011102970047 A CN2011102970047 A CN 2011102970047A CN 201110297004 A CN201110297004 A CN 201110297004A CN 102419739 A CN102419739 A CN 102419739A
- Authority
- CN
- China
- Prior art keywords
- bus
- processor
- cpld
- access
- arbitration
- 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
Abstract
一种多主总线仲裁共享装置,包括第一处理器,第二处理器,CPLD、片选线读写线驱动装置、包括多位数据总线的母板,CPLD接收第一和第二处理器的请求总线事件后,对请求总线事件进行仲裁,并将仲裁结果返回第一和第二处理器;获得优先访问权的处理器,向CPLD发送访问总线事件;CPLD接收到访问总线事件后,通过片选线读写线驱动装置向母板发送访问总线事件;母板得到访问总线事件后,对总线进行写或读操作;获得优先访问权的处理器访问结束后,母板通过CPLD将总线访问结束事件返回给该处理器;获得优先访问权的处理器根据总线访问结束事件进行写或读操作,完成多主总线仲裁共享操作。
Description
技术领域
本发明涉及总线仲裁领域,尤其涉及一种多主总线仲裁共享装置以及仲裁方法。
背景技术
系统中多个设备或模块可能同时申请对总线的使用权,为避免产生总线冲突,需由总线仲裁机构合理地控制和管理系统中需要占用总线的申请者,在多个申请者同时提出总线请求时,由总线仲裁机制基于预定算法确定对总线的访问次序。
传统的总线仲裁方案一种相当常用的方法是循环仲裁方案,其在所有处理组件之间平均分派带宽,但完全不考虑等待时间要求;每个处理组件根据合理的顺序来使用总线,即使当某一个处理组件需要优先对总线进行存取时,也要等到在循环调度中轮到它的次序时才能对总线进行存取。另一常用方法是固定优先权仲裁方案,其在一定程度上考虑到等待时间要求,但会使可能要求高带宽的低优先权的处理器严重降级,可能不能对总线进行存取。
发明内容
本发明所要解决的技术问题是,提供一种多主总线仲裁共享装置以及仲裁方法,解决传统的总线仲裁装置不能考虑等待时间要求或会使可能要求高带宽的低优先权的处理器严重降级,可能不能对总线进行存取的问题。
为了解决上述问题,本发明提供了一种多主总线仲裁共享装置,包括第一处理器、第二处理器、复杂可编程逻辑器件(Complex Programmable Logic Device ,以下简称CPLD)、片选线读写线驱动装置、包含多位数据总线的母板,其特征在于:
所述处理器与所述CPLD相连,通过总线共享方式访问总线;所述CPLD用于对所述处理器的请求总线事件进行仲裁,并将仲裁结果返回所述处理器;所述CPLD通过所述片选线读写线驱动装置与所述母板相连,控制所述处理器对总线的访问。所述第一处理器为数字信号处理器(Digital Signal Processor,以下简称DSP)或微处理器(Advanced RISC Machines,以下简称ARM),所述第二处理器为DSP或ARM。
为了解决上述问题,本发明还提供了一种采用本发明所述多主总线仲裁共享装置进行多主总线仲裁的方法,其特征在于,包括如下步骤:
所述第一处理器和第二处理器向所述CPLD发送请求总线事件;所述CPLD接收到所述第一处理器和第二处理器的请求总线事件后,通过总线共享方式对所述请求总线事件进行仲裁,并将仲裁结果返回所述第一处理器和所述第二处理器;获得优先访问权限的处理器在得到所述仲裁结果后,向所述CPLD发送访问总线事件;所述CPLD接收到所述访问总线事件后,通过片选线读写线驱动装置向母板发送所述访问总线事件;所述母板得到所述访问总线事件后,对总线进行相应的读或写操作;所述获得优先访问权限的处理器对总线的访问结束后,所述母板通过所述CPLD将总线访问结束事件返回给所述获得优先访问权限的处理器;所述获得优先访问权限的处理器根据总线访问结束事件所携带的信息进行相应的读或写操作,完成对主线的访问。
优选的,所述CPLD的仲裁方式为在总线空闲时,先访问所述CPLD的所述处理器将获得总线访问权;当总线被所述第一处理器占用时,由所述CPLD产生等待信号返回所述第二处理器,使所述第二处理器处于总线应答等待状态,直至所述第一处理器的读写周期完成;所述第一处理器和第二处理器同时在总线空闲的时候访问所述CPLD,则所述CPLD根据所述第一处理器和第二处理器的优先权将总线的使用权发送给优先权级别高的处理器。
优选的,所述母板得到所述访问总线事件后,访问总线,并判断是何种操作;在读操作时,将读到的数据写入到获得优先访问权限的处理器的数据结构里;在写操作时,将获得优先访问权限的处理器的数据结构的数据写入到该结构指定的地址里。
本发明的优点在于,总线的仲裁在CPLD中进行,由CPLD对多个处理器的访问状态进行判断和排序,通过对CPLD进行合理编程,避免发生某个或者某些处理器长时间等待的问题。
附图说明
图1为本发明多主总线仲裁共享装置具体实施方式的结构示意图,包括第一处理器11、第二处理器12、CPLD13、片选线读写线驱动装置14以及包含多位数据总线的母板15;
图2为本发明多主总线仲裁共享装置的一实施例的结构示意图,包括DSP 21和ARM 22、l6245地址线驱动装置23、l6245数据线双向驱动装置24、CPLD 25、l6245片选线读写线驱动装置26以及包含16位的数据总线的母板27;
图3 为采用本发明所述多主总线仲裁共享装置进行多主总线仲裁的方法的一个实施例的逻辑流程图。
具体实施方式
下面结合附图对本发明提供的多主总线仲裁共享装置具体实施方式做详细说明。
图1为本发明多主总线仲裁共享装置具体实施方式的结构示意图,包括第一处理器11、第二处理器12、CPLD 13、片选线读写线驱动装置14以及包含多位数据总线的母板15。
第一处理器和第二处理器与CPLD相连,用于向CPLD发送请求总线事件和访问总线事件,并携带参数,该参数包含用于优先权判定的数据及对总线的读或写命令传输的数据,接收CPLD返回的优先权判断信息及总线返回的读或写操作信息;
CPLD通过总线共享方式对处理器的请求总线事件进行仲裁,并将仲裁结果返回相应处理器;CPLD的仲裁方式为根据读取到的第一处理器和第二处理器的优先权级别,确定第一处理器和第二处理器发出的命令和相关联的程序指令以何种次序被提供到所述母板上,并向第一处理器和第二处理器返回仲裁结果,控制处理器对总线的访问。
CPLD通过片选线读写线驱动装置与母板相连,控制处理器对总线的访问。
图2为本发明多主总线仲裁共享装置的一实施例的结构示意图,包括DSP 21和ARM 22、l6245地址线驱动装置23、l6245数据线双向驱动装置24、CPLD 25、l6245片选线读写线驱动装置26以及包含16位的数据总线的母板27。
DSP 和ARM将各自20位地址线的高4位连接到CPLD上,其它地址位通过l6245地址线驱动装置连接到母板上,DSP与ARM各自16位数据线通过l6245数据线双向驱动装置双向互连到母板上,双向的数据总线控制数据总线的输入、输出状态;DSP与ARM分别有用于片选、读、写的端口连接到CPLD上; CPLD将用于等待信号传输的端口分别连接到DSP与ARM上;CPLD的方向、使能控制端口与l6245数据线双向驱动装置相连;CPLD通过片选线读写线驱动装置与母板相连接,控制处理器对总线的访问。
DSP和ARM向CPLD发送请求总线事件,并携带参数,该参数包含用于优先权判定的数据以及对总线的读或写命令传输的数据;CPLD根据读取DSP和ARM对总线的访问请求信息,判断DSP和ARM的优先权,确定DSP和ARM发出的命令和相关联的程序指令和数据读、写信号以何种次序被提供到母板上,并向DSP和ARM返回请求总线事件仲裁结果;获得优先访问权限的处理器向CPLD发送访问总线事件,并携带相关参数;CPLD接收到访问总线事件后,通过片选线读写线驱动装置向母板发送访问总线事件,并携带参数;母板得到访问总线事件后,访问总线,并判断是何种操作;在读操作时,将读到的数据写入到相应处理器的数据结构里;在写操作时,将相应处理器的数据结构的数据写入到该结构指定的地址里;获得优先访问权限的处理器对总线的访问结束后,母板通过CPLD将总线访问结束事件返回给该处理器;该处理器根据总线访问结束事件所携带的信息进行相应的读或写操作,完成对主线的访问。
同时,利用DSP的总线请求功能,ARM处理器可访问DSP的外部RAM空间。
图3为采用本发明所述多主总线仲裁共享装置进行多主总线仲裁的方法的一个实施例的逻辑流程图。
步骤S31:第一处理器和第二处理器向CPLD发送请求总线事件。
步骤S32:CPLD接收到所述第一处理器和第二处理器的请求总线事件后,通过总线共享方式对所述请求总线事件进行仲裁;CPLD的仲裁方式为根据读取到的第一处理器一和第二处理器的优先权级别,确定第一处理器和第二处理器发出的命令和相关联的程序指令以何种次序被提供到所述母板上。此处的总线共享方式采用互相竞争总线访问权的机制。总线的仲裁在CPLD中进行。例如可以是在总线空闲时,先访问CPLD的处理器将获得总线访问权;如果第一处理器和第二处理器同时在总线空闲的时候访问CPLD,则CPLD根据所述两个处理器的优先权级别将总线使用权发送给优先权级别高的处理器;当总线被第一处理器占用时,由CPLD产生等待信号,使第二处理器处于总线应答等待状态,直至第一处理器的读写周期完成。也可为某一个或者某几个处理器设置特别高或者特别低的优先级,可以强行插入或者强行拆除,也可以设置当某个请求的等待时间超过某一阈值时,进行强插操作。总之此处的CPLD可以任意编制程序来实现使用者的想法。
步骤S33:CPLD向优先权级别高的处理器返回总线使用优先权;向另一处理器返回等待信号,使其处于总线应答等待状态,直至获得优先权的处理器的读写周期完成。
步骤S34:获得优先访问权限的处理器在得到CPLD返回的总线使用优先权信息后,向所述CPLD发送访问总线事件,携带用于对总线的读或写命令传输的数据参数。
步骤S35:CPLD接收到所述访问总线事件后,通过片选线读写线驱动装置向母板发送所述访问总线事件。
步骤S36:母板得到访问总线事件后,访问总线,并判断是何种操作;在读操作时,将读到的数据写入到相应处理器的数据结构里;在写操作时,将相应处理器的数据结构的数据写入到该结构指定的地址里。
步骤S37:所述获得优先访问权限的处理器对总线的访问结束后,所述母板通过所述CPLD将总线访问结束事件返回给所述获得优先访问权限的处理器。
步骤S38:所述获得优先访问权限的处理器根据总线访问结束事件所携带的信息进行相应的读或写操作,完成对主线的访问。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (5)
1.一种多主总线仲裁共享装置,包括第一处理器、第二处理器、CPLD、片选线读写线驱动装置以及包括多位数据总线的母板,其特征在于:
所述处理器与所述CPLD相连,通过总线共享方式访问总线;所述CPLD用于对所述处理器的请求总线事件进行仲裁,并将仲裁结果返回所述处理器;所述CPLD通过所述片选线读写线驱动装置与所述母板相连,控制所述处理器对总线的访问。
2.根据权利要求1所述的多主总线仲裁共享装置,其特征在于:所述第一处理器为数字信号处理器或微处理器,所述第二处理器为数字信号处理器或微处理器。
3.一种采用权利要求1所述装置进行多主总线仲裁的方法,其特征在于,包括如下步骤:
所述第一处理器和第二处理器向所述CPLD发送请求总线事件;
所述CPLD接收到所述第一处理器和第二处理器的请求总线事件后,通过总线共享方式对所述请求总线事件进行仲裁,并将仲裁结果返回所述第一处理器和第二处理器;
获得优先访问权限的处理器在得到仲裁结果后,向所述CPLD发送访问总线事件;所述CPLD接收到所述访问总线事件后,通过片选线读写线驱动装置向母板发送所述访问总线事件;
所述母板得到所述访问总线事件后,对总线进行相应的读或写操作;
所述获得优先访问权限的处理器对总线的访问结束后,所述母板通过所述CPLD将总线访问结束事件返回给所述获得优先访问权限的处理器;
所述获得优先访问权限的处理器根据总线访问结束事件所携带的信息进行相应的读或写操作,完成对主线的访问。
4.根据权利要求3所述的多主总线仲裁的方法,其特征在于:所述CPLD的仲裁方式为:
在总线空闲时,先访问所述CPLD的所述处理器将获得总线访问权;
当总线被所述第一处理器占用时,由所述CPLD产生等待信号返回所述第二处理器,使所述第二处理器处于总线应答等待状态,直至所述第一处理器的读写周期完成;
所述第一处理器和第二处理器同时在总线空闲的时候访问所述CPLD,则所述CPLD根据所述第一处理器和第二处理器的优先权将总线的使用权发送给优先权级别高的处理器。
5.根据权利要求3所述的多主总线仲裁的方法,其特征在于:所述母板得到所述访问总线事件后,访问总线,并判断是何种操作;在读操作时,将读到的数据写入到获得优先访问权限的处理器的数据结构里;在写操作时,将获得优先访问权限的处理器的数据结构的数据写入到该结构指定的地址里。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102970047A CN102419739A (zh) | 2011-09-30 | 2011-09-30 | 多主总线仲裁共享装置以及仲裁方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102970047A CN102419739A (zh) | 2011-09-30 | 2011-09-30 | 多主总线仲裁共享装置以及仲裁方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102419739A true CN102419739A (zh) | 2012-04-18 |
Family
ID=45944157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102970047A Pending CN102419739A (zh) | 2011-09-30 | 2011-09-30 | 多主总线仲裁共享装置以及仲裁方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102419739A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103376787A (zh) * | 2012-04-30 | 2013-10-30 | 财团法人工业技术研究院 | 感测网络中管理控制冲突的系统与方法 |
CN106155971A (zh) * | 2016-07-04 | 2016-11-23 | 锐捷网络股份有限公司 | I2c总线的仲裁方法及装置 |
CN107391413A (zh) * | 2017-07-21 | 2017-11-24 | 南京华捷艾米软件科技有限公司 | 同步零等待总线及其访问方法 |
CN107766267A (zh) * | 2017-10-12 | 2018-03-06 | 郑州云海信息技术有限公司 | 一种i2c总线的仲裁方法及系统 |
CN110059045A (zh) * | 2019-04-22 | 2019-07-26 | 仓领电子科技(上海)有限公司 | 一种基于fpga的非开挖传感装置总线共享系统、方法及装置 |
TWI687813B (zh) * | 2018-08-31 | 2020-03-11 | 英業達股份有限公司 | 資訊共享電路及共享記憶體狀態的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1694085A (zh) * | 2004-06-25 | 2005-11-09 | 威盛电子股份有限公司 | 内部总线系统 |
-
2011
- 2011-09-30 CN CN2011102970047A patent/CN102419739A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1694085A (zh) * | 2004-06-25 | 2005-11-09 | 威盛电子股份有限公司 | 内部总线系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103376787A (zh) * | 2012-04-30 | 2013-10-30 | 财团法人工业技术研究院 | 感测网络中管理控制冲突的系统与方法 |
CN103376787B (zh) * | 2012-04-30 | 2016-02-03 | 财团法人工业技术研究院 | 感测网络中管理控制冲突的系统与方法 |
CN106155971A (zh) * | 2016-07-04 | 2016-11-23 | 锐捷网络股份有限公司 | I2c总线的仲裁方法及装置 |
CN107391413A (zh) * | 2017-07-21 | 2017-11-24 | 南京华捷艾米软件科技有限公司 | 同步零等待总线及其访问方法 |
CN107766267A (zh) * | 2017-10-12 | 2018-03-06 | 郑州云海信息技术有限公司 | 一种i2c总线的仲裁方法及系统 |
CN107766267B (zh) * | 2017-10-12 | 2020-03-03 | 郑州云海信息技术有限公司 | 一种i2c总线的仲裁方法及系统 |
TWI687813B (zh) * | 2018-08-31 | 2020-03-11 | 英業達股份有限公司 | 資訊共享電路及共享記憶體狀態的方法 |
CN110059045A (zh) * | 2019-04-22 | 2019-07-26 | 仓领电子科技(上海)有限公司 | 一种基于fpga的非开挖传感装置总线共享系统、方法及装置 |
CN110059045B (zh) * | 2019-04-22 | 2024-04-12 | 吴进国 | 一种基于fpga的非开挖传感装置总线共享系统、方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100726361B1 (ko) | 메모리 장치들과의 통신을 위한 시스템 및 방법 | |
CN101346708B (zh) | 全缓冲dimm读数据替代写确认 | |
CN103543954B (zh) | 一种数据存储管理方法和装置 | |
CN102419739A (zh) | 多主总线仲裁共享装置以及仲裁方法 | |
JP4621604B2 (ja) | バス装置、バスシステムおよび情報転送方法 | |
CN105224488B (zh) | 一种pci总线控制器及其控制方法 | |
US20090150636A1 (en) | Memory subsystem with positional read data latency | |
CN110865958B (zh) | 一种基于lrm的综合交换管理模块的设计方法 | |
CN101436171B (zh) | 模块化通信控制系统 | |
CN109656851B (zh) | 一种时间确定的包括多路高速总线通道及共享接口的系统 | |
CN101866308A (zh) | 基于fpga扩展的皮卫星星务管理系统 | |
CN106933760A (zh) | 一种基于axi协议的dma控制器及数据上传方法 | |
CN107562672A (zh) | 一种提高矢量网络分析仪数据传输速率的系统及方法 | |
CN102636987B (zh) | 双重化控制装置 | |
CN101160569A (zh) | 改进具有多个存储器控制器的电路的带宽的设备 | |
CN202815824U (zh) | 微控制器系统 | |
CN114265872A (zh) | 一种用于总线的互联装置 | |
CN103729165A (zh) | 应用于高速运动控制系统的pci从设备核心控制模块 | |
JP2006323541A (ja) | データ転送回路及びデータ転送方法 | |
CN1165004C (zh) | 温备用双工设备及其操作方法 | |
CN103905339A (zh) | 电脑仲裁系统、其带宽分配设备以及方法 | |
CN100587680C (zh) | 管理分离总线上总线代理之间的数据流的方法和系统 | |
CN103765394B (zh) | 信息处理装置和调度方法 | |
CN100538618C (zh) | 高存取效率的接口电路及方法 | |
CN100419722C (zh) | 用于生成伪授予信号的仲裁器、系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120418 |