CN107391413A - 同步零等待总线及其访问方法 - Google Patents
同步零等待总线及其访问方法 Download PDFInfo
- Publication number
- CN107391413A CN107391413A CN201710604038.3A CN201710604038A CN107391413A CN 107391413 A CN107391413 A CN 107391413A CN 201710604038 A CN201710604038 A CN 201710604038A CN 107391413 A CN107391413 A CN 107391413A
- Authority
- CN
- China
- Prior art keywords
- controller
- master controller
- master
- moderator
- priority
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种同步零等待总线,包括多个主控制器、多个从控制器、交叉矩阵以及仲裁器,主控制器,用于向仲裁器发送包含其所要访问的从控制器访问地址的访问请求;交叉矩阵,分别连接所述多个主控制器与多个从控制器;仲裁器,用于根据所述访问请求,通过所述交叉矩阵建立所述主控制器与其所要访问的从控制器的连接。本发明提高了访问速度。
Description
技术领域
总的而言本发明总线,特别涉及一种同步零等待总线及其访问方法。
背景技术
总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。现有技术中,总线通常使用锁存器(Latch)来解决总线冲突问题,在AMAB(包含AHB,AXI3,AXI4等,AHB是share方式访问总线,同一时刻只能一个主控制器发起操作)中,主控制器到从控制器之间要通过多个时钟周期才能到达但锁存器的使用会使得总线面积变大,且总线延时变大(非零等待)。
发明内容
针对上述问题,本发明提出了一种同步零等待总线及其访问方法。
一种同步零等待总线,包括多个主控制器、多个从控制器、交叉矩阵以及仲裁器,主控制器,用于向仲裁器发送包含其所要访问的从控制器访问地址的访问请求;交叉矩阵,分别连接所述多个主控制器与多个从控制器;仲裁器,用于根据所述访问请求,通过所述交叉矩阵建立所述主控制器与其所要访问的从控制器的连接。
可选的,还包括存储器,用于存储多个主控制器的优先级。所述仲裁器,当同时收到多个主控制器对于同一地址的访问请求时,根据所述优先级进行仲裁,以使得具有较高优先级的主控器优先对所述从控制器进行访问。所述主控制器,用于在建立起所述主控制器与其所要访问的从控制器的连接后发出锁定信号,以锁定对该从控制器的访问。所述多个控制器分别通过AXI接口、I80接口和/或DMA接口与所述交叉矩阵相连。所述从控制器为RAM。
一种访问所述同步零等待总线的访问方法,包括以下步骤:S10:预存储各主控制器优先级;S20:接收访问地址请求;S30:判断其是否同时接收到对于同一地址的访问请求;S40:判定为否时,判断当前从控制器是否处于锁定状态;S50:判定为是时,根据所述优先级进行仲裁,以使得具有较高优先级的主控器优先对从控制器进行访问;S60:当前从控制器处于未锁定状态时,建立主控制器与从控制器之间的连接。
本发明的有益效果是:可以灵活设置主控制器的优先级;总线矩阵总是允许主控制器对应的从控制器可以同时被访问,是一个完全交叉的网络;这样一旦主控制器被允许访问从控制器,则主控制器可以直接实现对从控制器的读/写操作,而不必使用锁存器,实现零等待,减小了总线面积,提高了访问速度。
附图说明
图1为本发明总线的结构示意图;
图2是本发明访问方法的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明,使本发明的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按比例绘制附图,重点在于示出本发明的主旨。
本发明中,主控制器先送从控制器地址和请求信号给仲裁器,如果该主控制器所访问的从控制器地址准备好(处于可访问状态),仲裁器输出允许信号到该主控制器,该主控制器就可以访问该从控制器,例如实现对从控制器的读/写操作,进一步的,在访问期间,如果主控制器的访问不想被打断,则主控制器输出锁定信号至仲裁器,进行锁定,操作完成后撤销锁定信号与请求信号。
本发明中,通过仲裁器可以灵活设置主控制器的优先级;总线矩阵总是允许主控制器对应的从控制器可以同时被访问,是一个完全交叉的网络;这样一旦主控制器被允许访问从控制器,则主控制器可以直接实现对从控制器的读/写操作,而不必使用锁存器,实现零等待。
参阅图1,本发明中多个主控制器可以通过多种不同接口与同步零等待总线(SWNB)相连,在图1中多个控制器分别通过AXI接口、I80接口以及DMA接口与SWNB相连。AXI_0---AXI_7是AMBA3AXI转I80的接口桥,AXI侧连接系统总线的,I80侧连接SNWB,可以被总线上的主控制器访问,它们之间访问互相独立;一般情况下不打断AXI的BURST操作,所以该接口带原子操作LOCK信号,操作完成LOCK释放。而I80_0---I80_7是I80的主控制器设备,没有LOCK信号,可以被打断,它们之间访问互相独立;DMA0---DMA2是总线内部的接口,一般不接出来。在图1中从控制器为8个RAM,本领域技术人员应当明了,从控制器可以是其它类型的外设,其数量也可以多于或少于8个,而主控制器的数量与接口类型也并非仅限于AXI接口、I80接口以及DMA接口。
各主控制器可以连接于常规的一级总线之上,而SNWB(同步零等待总线)可以作为二级总线使用,通过SNWB连接从控制器。AXI0-7是接口桥,它是一级总线和二级总线之间的桥梁。由于一级总线结构复杂,面积大,功耗大,二级总线内部访问频繁,接口众多且和一级总线的交互较少,所以才有分层的必要,为了提高二级总线内部IP的效率,本发明采用了SWNB二级总线。
本发明中,SWNB为包含一个交叉矩阵,所有的主控制器和从控制器通过矩阵相连,在图1中,含有19个主控制器和8个从控制器,因此交叉矩阵规模为19X8,这样在仲裁器的控制下,任一主控制器可以与任一从控制器通过交叉矩阵建立连接。
除交叉矩阵外,SWNB中还包括有存储器与仲裁器。存储器用于存储各主控制器的优先级,由于各主控制器分别与对应的接口连接,因此主控制器的优先级也可以由接口的优先级来表示。对于图1中的各接口,优先级顺序为:AXI_0---AXI_7>I80_0---I80_7>DMA0---DMA2,通过改变存储器中存储内容可以灵活的设置各主控制器的优先级。仲裁器例如可以是一多路选择器,其根据仲裁结果选择交叉矩阵的导通路径。正常情况下,交叉矩阵总是允许主控制器访问所有的从控制器,同一时间从控制器只能被一个主控制器访问,只有两个以上的主控制器同时访问同一个从控制器时才会发生仲裁行为。AXI0-7的接口桥在主控制器为高时输出锁定信号,总线的仲裁器就会锁定正在操作的通路直到锁定信号为低。一旦锁定,不会被其它的主控制器抢断,即使该主控制器拥有较高优先级也不可以抢断,只有在释放后才可以被竞争。
其访问过程如图2所示。
S10:预存储各主控制器优先级,这一优先级是存储于SWNB。
S20:接收访问地址请求。主控制器向SWNB发送其所要访问的从控制器的地址的请求。
S30:在该步骤中,仲裁器判断其是否同时接收到对于同一地址的访问请求,根据判定结果分别执行S40与S50。
S40:当判定为否时,则仲裁器会判断当前从控制器是否处于锁定状态,只有当判断当前处于未锁定状态时,才会在后续S60中建立主控制器与从控制器之间的连接,从而实现主控制器对从控制器的访问。
S50:当判定为是时,根据所述优先级进行仲裁,以使得具有较高优先级的主控器可以优先对从控制器进行访问。
S60:建立主控制器与从控制器之间的连接。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于本申请的方法实施例而言,由于其与装置实施例基本相似,所以描述的比较简单,相关之处参见装置实施例的部分说明即可。
在以上的描述中阐述了很多具体细节以便于充分理解本发明。但是以上描述仅是本发明的较佳实施例而已,本发明能够以很多不同于在此描述的其它方式来实施,因此本发明不受上面公开的具体实施的限制。同时任何熟悉本领域技术人员在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (7)
1.一种同步零等待总线,包括多个主控制器、多个从控制器、交叉矩阵以及仲裁器,其特征在于:
主控制器,用于向仲裁器发送包含其所要访问的从控制器访问地址的访问请求;
交叉矩阵,分别连接所述多个主控制器与多个从控制器;
仲裁器,用于根据所述访问请求,通过所述交叉矩阵建立所述主控制器与其所要访问的从控制器的连接。
2.根据权利要求1所述的同步零等待总线,其特征在于,还包括存储器,用于存储多个主控制器的优先级。
3.根据权利要求2所述的同步零等待总线,其特征在于,所述仲裁器,当同时收到多个主控制器对于同一地址的访问请求时,根据所述优先级进行仲裁,以使得具有较高优先级的主控器优先对所述从控制器进行访问。
4.根据权利要求1所述的同步零等待总线,其特征在于,所述主控制器,用于在建立起所述主控制器与其所要访问的从控制器的连接后发出锁定信号,以锁定对该从控制器的访问。
5.根据权利要求1所述的同步零等待总线,其特征在于,所述多个控制器分别通过AXI接口、I80接口和/或DMA接口与所述交叉矩阵相连。
6.根据权利要求1所述的同步零等待总线,其特征在于,所述从控制器为RAM。
7.一种访问权利要求1至6任一所述同步零等待总线的访问方法,其特征在于,包括以下步骤:
S10:预存储各主控制器优先级;
S20:接收访问地址请求;
S30:判断其是否同时接收到对于同一地址的访问请求;
S40:判定为否时,判断当前从控制器是否处于锁定状态;
S50:判定为是时,根据所述优先级进行仲裁,以使得具有较高优先级的主控器优先对从控制器进行访问;
S60:当前从控制器处于未锁定状态时,建立主控制器与从控制器之间的连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710604038.3A CN107391413A (zh) | 2017-07-21 | 2017-07-21 | 同步零等待总线及其访问方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710604038.3A CN107391413A (zh) | 2017-07-21 | 2017-07-21 | 同步零等待总线及其访问方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107391413A true CN107391413A (zh) | 2017-11-24 |
Family
ID=60336103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710604038.3A Pending CN107391413A (zh) | 2017-07-21 | 2017-07-21 | 同步零等待总线及其访问方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107391413A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013407A (zh) * | 2007-02-05 | 2007-08-08 | 北京中星微电子有限公司 | 支持多总线多类型存储器的内存仲裁实现系统和方法 |
CN101075220A (zh) * | 2007-04-29 | 2007-11-21 | 北京中星微电子有限公司 | 一种总线仲裁仿真装置和方法 |
CN101135993A (zh) * | 2007-09-20 | 2008-03-05 | 华为技术有限公司 | 一种嵌入式系统芯片及数据读写处理方法 |
CN101145140A (zh) * | 2007-07-11 | 2008-03-19 | 南京大学 | 基于片上多处理器系统的动态自适应总线仲裁器 |
WO2008056205A1 (en) * | 2006-11-08 | 2008-05-15 | Freescale Semiconductor, Inc. | Device and method for managing access requests |
CN101281511A (zh) * | 2007-04-02 | 2008-10-08 | 成都方程式电子有限公司 | 一种片上总线系统 |
CN101430664A (zh) * | 2008-09-12 | 2009-05-13 | 中国科学院计算技术研究所 | 一种多处理器系统及Cache一致性消息传输方法 |
CN102419739A (zh) * | 2011-09-30 | 2012-04-18 | 上海联能仪表有限公司 | 多主总线仲裁共享装置以及仲裁方法 |
CN103136141A (zh) * | 2013-02-06 | 2013-06-05 | 浪潮电子信息产业股份有限公司 | 一种多控制器间的高速互联方法 |
-
2017
- 2017-07-21 CN CN201710604038.3A patent/CN107391413A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008056205A1 (en) * | 2006-11-08 | 2008-05-15 | Freescale Semiconductor, Inc. | Device and method for managing access requests |
CN101013407A (zh) * | 2007-02-05 | 2007-08-08 | 北京中星微电子有限公司 | 支持多总线多类型存储器的内存仲裁实现系统和方法 |
CN101281511A (zh) * | 2007-04-02 | 2008-10-08 | 成都方程式电子有限公司 | 一种片上总线系统 |
CN101075220A (zh) * | 2007-04-29 | 2007-11-21 | 北京中星微电子有限公司 | 一种总线仲裁仿真装置和方法 |
CN101145140A (zh) * | 2007-07-11 | 2008-03-19 | 南京大学 | 基于片上多处理器系统的动态自适应总线仲裁器 |
CN101135993A (zh) * | 2007-09-20 | 2008-03-05 | 华为技术有限公司 | 一种嵌入式系统芯片及数据读写处理方法 |
CN101430664A (zh) * | 2008-09-12 | 2009-05-13 | 中国科学院计算技术研究所 | 一种多处理器系统及Cache一致性消息传输方法 |
CN102419739A (zh) * | 2011-09-30 | 2012-04-18 | 上海联能仪表有限公司 | 多主总线仲裁共享装置以及仲裁方法 |
CN103136141A (zh) * | 2013-02-06 | 2013-06-05 | 浪潮电子信息产业股份有限公司 | 一种多控制器间的高速互联方法 |
Non-Patent Citations (1)
Title |
---|
马维华: "《嵌入式微控制器技术及应用》", 31 January 2015, 北京航空航天大学出版社 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5907684A (en) | Independent channel coupled to be shared by multiple physical processing nodes with each node characterized as having its own memory, CPU and operating system image | |
US7660922B2 (en) | Mechanism to flexibly support multiple device numbers on point-to-point interconnect upstream ports | |
EP0824239A2 (en) | Secondary channel for fibre channel system interface bus | |
CN110109847A (zh) | Apb总线多个主设备的仲裁方法、系统及存储介质 | |
JPS6131500B2 (zh) | ||
US5410650A (en) | Message control system for data communication system | |
KR910001792B1 (ko) | 디지탈 컴퓨터 시스템의 데이타 프로세싱 시스템 및 이의 통신로 접속 장치 | |
CN104471523A (zh) | 计算机系统及其控制方法 | |
US20120331240A1 (en) | Data processing device and data processing arrangement | |
CN100422969C (zh) | 使用在计算机系统中的集线器之间传送的分组首部中的分离与正交属性字段的事务类型的有效通信 | |
CN101169774B (zh) | 一种多处理器系统、共享控制装置及启动从处理器的方法 | |
CN106569874A (zh) | 存储设备的操作方法及物理服务器 | |
EP1811393B1 (en) | Method and system for data transfer | |
CN105718396B (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
CN102708079B (zh) | 应用于微控制器的控制数据传输的方法及系统 | |
CN116776781A (zh) | 一种寄存器参数的管理方法、系统、设备及存储介质 | |
CN107391413A (zh) | 同步零等待总线及其访问方法 | |
CN111506461A (zh) | 一种基于总线、用于测试的反压模块及其实现方法 | |
JP2609078B2 (ja) | バスインタフェースユニットを利用する集中管理システム | |
CN108153485A (zh) | 一种多设备协同访问sram的方法及系统 | |
CN106325377B (zh) | 外部设备扩展卡及输入输出外部设备的数据处理方法 | |
CN106326172A (zh) | 一种APB总线slave接口扩展电路及其使用方法 | |
CN207882728U (zh) | 一种控制系统 | |
CN106708779A (zh) | 一种服务器及其处理数据的方法 | |
CN106789611B (zh) | 一种综合网关及接口电路控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171124 |
|
RJ01 | Rejection of invention patent application after publication |