一种一主多从式总线的制作方法

文档序号:14990443发布日期:2018-07-20 22:06阅读:205来源:国知局

本发明涉及嵌入式信号处理技术领域,特别涉及一种一主多从式总线。



背景技术:

在现有技术中,各类光电平台,包括光电经纬仪、无人机、光学导引头、光学成像卫星等系统中均含有数字信号处理单元,典型的数字信号处理单元常常由dsp(数字信号处理,英文:digitalsignalprocessing,缩写为dsp)和fpga(field-programmablegatearray,即现场可编程门阵列)构成,其中dsp完成信号处理算法等密集型运算,而fpga作为dsp功能的扩展,完成外围接口的管理和控制,这些外围接口包括各种信号采集单元、数据通信接口等,常常由dsp作为主机,通过外部存储器接口与fpga相连,外围设备由fpga中对应的接口模块进行管理,当主机想要访问外围设备时,就要通过这些接口模块,完成其工作参数的配置和数据的接收,各个接口模块就相当于一个“从设备”,这一架构构成了典型的一主机多从设备的拓扑结构。

在一主机多从设备的系统中,常见的数据交互方式为点对点式,即在fpga中直接将信号布线至各个从设备之中,进行数据的传递。这种点对点的通信方式存在可扩展性和可靠性差的问题,首先,每增加一个设备或在一个设备中添加一组控制信号,都会造成主机接口和从设备接口的同时修改,主机与从设备之间相互耦合严重,不利于模块化,且可扩展性较差,难以实现大规模系统设计;其次,主机与各个从设备均工作于不同的时钟频率,是一种异步系统,在数据传递时若不采用技术手段解决信号的跨时钟域同步问题,还会导致亚稳态,也为时序分析造成极大困难;再次,外围设备的类型不同,其对应的接口模块控制信号就无法统一,当主机对其进行访问时,需要不同的胶合逻辑以适应不同的接口时序,增加了设计的难度。

鉴于此,如何设计一套高效可靠且可扩展的通用总线是本领域的技术人员亟待解决的问题。



技术实现要素:

本发明旨在克服现有技术存在的缺陷,本发明采用以下技术方案:

本发明实施例提供了一种一主多从式总线,用于在主机端和多个从设备端之间的进行数据通信,所述一主多从式总线包括:

第一总线,第二总线,以及总线控制器;

所述主机端和从设备端之间通过所述第一总线和所述第二总线同时进行连接;

所述总线控制器包含仲裁调度逻辑,同时管理所述主机端和从设备端的接口对数据通道的请求与响应,控制数据无冲突流动;

所述第一总线,第二总线以通信帧为最小数据传输单位进行数据传输。

在一些实施例中,所述第一总线和第二总线为所述主机端提供了64bits宽度的数据通道,当所述主机端与所述从设备进行通信时,所述主机端打包64bits信息写入到该数据通道中作为一帧通信帧。

在一些实施例中,每帧通信帧数据包含的信息如下:{从设备id段[63:56],命令段[55:53],从设备子地址段[52:41],校验段[40:32],数据段[31:0]}。

在一些实施例中,所述主机端通过所述第一总线和第二总线发起通信帧的传输;

所述从设备端同时接收到主机端的通信帧,并对比通信帧中id段是否与本身分配的id相符合,若与自身id相符,则接收,否则丢弃该通信帧。

在一些实施例中,所述从设备端在成功接收数据通信帧后,对通信帧的命令段进行解析,并完成对命令的响应。

在一些实施例中,当所述主机端要获得所述从设备端的数据时,所述主机端通过所述第一总线向所述从设备端发出指令,所述从设备依据指令将数据返回至所述主机端,所述总线控制器通过动态总线优先级调度策略管理多个所述从设备对所述第一总线和第二总线的使用权。

在一些实施例中,所述第一总线为非突发总线。

在一些实施例中,所述非突发总线用于低速从设备端传输数据。

在一些实施例中,所述第二总线为流式总线。

在一些实施例中,所述流式总线用于挂载需要高速数据传输的从设备端。

本发明的技术效果:本发明公开的一主多从式总线,能够高效实现信号处理器与系统中多个不同从设备之间高效的数据通信。

附图说明

图1是根据本发明一个实施例的一主多从式总线的结构示意图;

图2是根据本发明一个实施例的一主多从式总线的结构示意图;

图3是根据本发明一个实施例的主机端的接口模块结构图;

图4是根据本发明一个实施例的从设备端的接口模块结构框图;

图5是根据本发明一个实施例的总线控制器结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,而不构成对本发明的限制。

总线(bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。

如果说主板(motherboard)是一座城市,那么总线就像是城市里的公共汽车(bus),能按照固定行车路线,传输来回不停运作的比特(bit)。这些线路在同一时间内都仅能负责传输一个比特。因此,必须同时采用多条线路才能传送更多数据,而总线可同时传输的数据数就称为宽度(width),以比特为单位,总线宽度愈大,传输性能就愈佳。总线的带宽(即单位时间内可以传输的总数据数)为:总线带宽=频率x宽度(bytes/sec)。当总线空闲(其他器件都以高阻态形式连接在总线上)且一个器件要与目的器件通信时,发起通信的器件驱动总线,发出地址和数据。其他以高阻态形式连接在总线上的器件如果收到(或能够收到)与自己相符的地址信息后,即接收总线上的数据。发送器件完成通信,将总线让出(输出变为高阻态)。

参考图1和图2所示,本发明实施例提供了一种一主多从式总线。所述一主多从式总线,用于在主机端和多个从设备端之间的进行数据通信,所述一主多从式总线包括:

第一总线,第二总线,以及总线控制器;

所述主机端和从设备端之间通过所述第一总线和所述第二总线同时进行连接;

所述总线控制器包含仲裁调度逻辑,同时管理所述主机端和从设备端的接口对数据通道的请求与响应,控制数据无冲突流动;

所述第一总线,第二总线以通信帧为最小数据传输单位进行数据传输。

在一些实施例中,所述第一总线和第二总线为所述主机端提供了64bits宽度的数据通道,当所述主机端与所述从设备进行通信时,所述主机端打包64bits信息写入到该数据通道中作为一帧通信帧。

在一些实施例中,每帧通信帧数据包含的信息如下:{从设备id段[63:56],命令段[55:53],从设备子地址段[52:41],校验段[40:32],数据段[31:0]}。

本发明实施例提供的一主多从式总线是以通信帧为最小数据传输单位。总线为主机端提供了64bits宽度的数据通道,当主机端与从设备进行通信时,主机端打包64bits信息写入到该数据通道中,作为一帧数据,每帧数据包含的信息如下:

{从设备id段[63:56],命令段[55:53],从设备子地址段[52:41],校验段[40:32],数据段[31:0]};

通信帧中包含了总线通信时所需的全部信息:从设备id段占56-63bits,共8位,取值范围为0-255,其中255用于广播,而0-254用于指示该帧将要发往的从设备id,总线最大支持255个从设备;命令段占3bits,代表主机发出的命令信息,即写命令或读命令;从设备子地址段含12bits,作为从设备内部的地址空间的寻址;校验段占8bits,存有当前帧数据的校验信息,本实施例采用8bits异或和校验,可根据系统要求采用其它校验方式;而数据段共32bits,代表当前通信的实际数据。

在一些实施例中,所述主机端通过所述第一总线和第二总线发起通信帧的传输;

所述从设备端同时接收到主机端的通信帧,并对比通信帧中id段是否与本身分配的id相符合,若与自身id相符,则接收,否则丢弃该通信帧。

在一些实施例中,所述从设备端在成功接收数据通信帧后,对通信帧的命令段进行解析,并完成对命令的响应。

本发明实施例提供的一主多从式总线是以通信帧为最小数据传输单位,也是方面一主多从式总线的“命令-响应”式总线控制方式。因为总线上所有数据的流动,均是由主机端发起的。所有从设备可同时接收到主机通信帧,并对比帧中id段是否与本身分配的id相符合,若与自身id相符,则接收,否则丢弃该帧;成功接收数据帧后,对命令段进行解析,完成命令的响应;若主机不发出指令,从设备不进行任何总线操作。

在一些实施例中,当所述主机端要获得所述从设备端的数据时,所述主机端通过所述第一总线向所述从设备端发出指令,所述从设备依据指令将数据返回至所述主机端,所述总线控制器通过动态总线优先级调度策略管理多个所述从设备对所述第一总线和第二总线的使用权,避免各个从设备的异步响应造成的竞争问题。

本发明实施例提供的一主多从式总线,当主机端要获得从设备端的数据时,该从设备需要获取总线的使用权。参考图1所示,从主机端的角度看,各个从设备端应当即时响应主机命令,即享有总线的机会均等,因此设计了一种动态总线优先级调度策略,在初始情况下,从设备1享有最高优先级,从设备n的优先级最低,每当某个从设备占用一次总线后,优先级的顺序进行一次轮转,即从设备2优先级变为最高,从设备3次之,从设备1的优先级最低,依次循环。采用该方法,可以保证所有从设备占用总线的机会均等,提高响应主机命令的速度。

在一些实施例中,所述第一总线为非突发总线。

在一些实施例中,所述非突发总线用于低速从设备端传输数据。

在一些实施例中,所述第二总线为流式总线。

在一些实施例中,所述流式总线用于挂载需要高速数据传输的从设备端。

本发明实施例提供的一主多从式总线,设计了“流式”总线链路和“非突发”总线链路相互独立的总线结构,提供两条非突发数据传输通道和突发数据传输通道,非突发数据传输用于低速从设备传递数据;而突发数据传输通道用于挂载需要高速数据传输的从设备,提高总线利用率。

本发明的技术效果:本发明公开的一主多从式总线,能够高效实现信号处理器与系统中多个不同从设备之间高效的数据通信。本发明通过总线结构与总线通信协议,采用“命令-响应”式方法实现数据流的控制;针对突发式数据传输和非突发式传输分别设计了“流式”从设备接口和“非突发”从设备接口两种总线接口,两种总线接口相互独立,有利于更高效的数据通信。同时,设计了一种动态优先级总线调度器,可以提升总线数据交互的效率,有效的避免总线竞争。本发明实施例提供的一主多从式总线可以解决嵌入式信号处理系统中主机端与多种不同类型从设备端之间的信息传递问题,简单,可靠,提供了统一的总线接口,同时具有方便的可扩展性,设备与设备之间无相互耦合,可任意挂载或卸载多个从设备而不会对其它设备造成影响,同时具有两条相互独立的数据通道,既能满足低速从设备的控制和状态获取,又能与高速从设备实现基于突发长度的通信,可应用于多种一主多从式拓扑结构的嵌入式信号处理系统。

下面结合具体实施例对本发明的具体方案作进一步详细的说明。

实施例1:

参考图2至图4所示,本发明实施例提供了一种一主多从式总线。所述一主多从式总线,用于在主机端和多个从设备端之间的进行数据通信,所述一主多从式总线包括:非突发总线,流式总线,以及总线控制器;

所述主机端和从设备端之间通过所述非突发总线和所述流式总线同时进行连接;所述总线控制器包含仲裁调度逻辑,同时管理所述主机端和从设备端的接口对数据通道的请求与响应,控制数据无冲突流动;所述非突发总线,流式总线以通信帧为最小数据传输单位进行数据传输。

主机与fpga相连接的方式不仅仅限于外部存储器接口,只要能通过逻辑运算实现标准先入先出存储器(fifo,由fpga内部实现)的读写即可;主机与fpga的接口可为并行接口,也可以为串行接口,本申请对此不做任何限定。

如图2和图3所示,主机端包含三条数据通道,通道1连接至流式总线,用于主机获取从设备中的流式数据;通道2和通道3连接至非突发总线,其中通道2用于主机向从设备端发送非突发数据;通道3用于主机读取从设备的非突发数据。如图4所示,从设备端接口模块内部实现id筛选、命令解析、地址译码、数据传递功能,一端直接与总线接口,另一端为子设备提供读写控制信号。

图3是根据本发明一个实施例的主机端的接口模块结构图;主机端由时序调整模块和三个帧缓冲组成。时序调整模块实现将主机端的访问时序重新译码为标准先入先出存储器(fifo)的接口时序,使得主机能通过其接口直接访问缓冲区;通道1作为流式总线的数据缓冲区,暂存从设备端的突发数据并指示其状态,主机端可以查询状态后将数据读出;通道2为总线的指令缓冲,用于将主机发送的命令按照先入先出的顺序传递至非突发总线上;通道3连接于非突发总线与主机之间,为所有从设备传递至主机的数据提供缓冲区,由总线仲裁模块管理该缓冲区挂载在总线端的接口,按照当前分配给各个从设备的优先级提供相应的使用权。

如图4所示,是根据本发明一个实施例的从设备端的接口模块结构框图。从设备端接口模块内部实现id筛选、命令解析、地址译码、数据传递功能,一端直接与总线接口,另一端为从设备提供读写控制信号。帧缓冲接收总线上的帧信息,并完成总线时钟域到本地从设备时钟域的转换。帧解析逻辑从缓冲中取出数据后,对各个意义段进行解析,将包含地址、数据、命令字等信息的解析结果传递至后端从设备内部,同时,该模块提供解析出的命令字和id号,用于数据返回时的格式化封装。

如图2所示,总线控制器中包含了仲裁调度逻辑,同时管理多从设备的接口对数据通道的请求与响应,控制数据无冲突流动。

图5是根据本发明一个实施例的总线控制器结构图。总线仲裁模块负责根据当前的优先级信息,管理发出请求的从设备是否能使用总线,并将当前总线的状态提供给优先级分配模块;优先级分配模块对总线进行监控,每当有一个从设备使用了总线之后,立即将其优先级降为最低,而之前的次优先级升至最高,以此循环,从而保证了各个从设备使用总线的机会均等。

本发明实施例提供的一主多从式总线具有以下特点:

1、以通信帧为最小数据传输单位的一主多从式总线。总线为主机端提供了64bits宽度的数据通道,当主机端与从设备进行通信时,主机端打包64bits信息写入到该数据通道中,作为一帧数据,每帧数据包含的信息如下:

{从设备id段[63:56],命令段[55:53],从设备子地址段[52:41],校验段[40:32],数据段[31:0]};

数据帧中包含了总线通信时所需的全部信息:从设备id段占56-63bits,共8位,取值范围为0-255,其中255用于广播,而0-254用于指示该帧将要发往的从设备id,总线最大支持255个从设备;命令段占3bits,代表主机发出的命令信息,即写命令或读命令;从设备子地址段含12bits,作为从设备内部的地址空间的寻址;校验段占8bits,存有当前帧数据的校验信息,本实施例采用8bits异或和校验,可根据系统要求采用其它校验方式;而数据段共32bits,代表当前通信的实际数据。

2、“命令-响应”式总线控制方式,总线上所有数据的流动,均是由主机端发起的。所有从设备可同时接收到主机通信帧,并对比帧中id段是否与本身分配的id相符合,若与自身id相符,则接收,否则丢弃该帧;成功接收数据帧后,对命令段进行解析,完成命令的响应;若主机不发出指令,从设备不进行任何总线操作。

3、动态总线优先级调度策略。当主机端要获得从设备端的数据时,该从设备需要获取总线的使用权。从主机端的角度看,各个从设备端应当即时响应主机命令,即享有总线的机会均等,因此设计了一种动态总线优先级调度策略,在初始情况下,从设备1享有最高优先级,从设备n的优先级最低,每当某个从设备占用一次总线后,优先级的顺序进行一次轮转,即从设备2优先级变为最高,从设备3次之,从设备1的优先级最低,依次循环。采用该方法,可以保证所有从设备占用总线的机会均等,提高响应主机命令的速度。

4、设计了“流式”总线链路和“非突发”总线链路相互独立的总线结构,提供两条非突发数据传输通道和突发数据传输通道,非突发数据传输用于低速从设备传递数据;而突发数据传输通道用于挂载需要高速数据传输的从设备,提高总线利用率。

本发明实施例提供的一主多从式总线可以解决嵌入式信号处理系统中主机与多种不同类型从设备之间的信息传递问题,简单,可靠,提供了统一的总线接口,同时具有方便的可扩展性,设备与设备之间无相互耦合,可任意挂载或卸载多个从设备而不会对其它设备造成影响,同时具有两条相互独立的数据通道,既能满足低速从设备的控制和状态获取,又能与高速从设备实现基于突发长度的通信,可应用于多种一主多从式拓扑结构的嵌入式信号处理系统。

本领域内的技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所作出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1