一种具有多个外设接口的数据交互系统,包括多个外设主控端模块、多个外设接口模块和接口转换模块;所述多个外设主控端模块与所述多个外设接口模块对应,并根据与内部总线的数据交互协议预先定义命令字和数据,并通过所述外设接口模块传输;所述多个外设接口模块,分别用于将对应的所述命令字和所述数据传输到所述接口转换模块;所述接口转换模块,按照所述数据交互协议解析和转换所述命令字和所述数据,以执行与内部总线的数据交互。本发明专利技术能够提高多个外设接口与内部数据交互设计的一致性和重用性。
【技术实现步骤摘要】
本专利技术涉及外设接口通讯技术,尤其涉及一种具有多个外设接口的数据交互系统和方法。
技术介绍
片上系统(S0C)芯片是指在单芯片上集成微电子应用产品所需的全部功能系统, 是一种实现产品系统最大包容的集成芯片,随着SOC芯片技术的发展,单个芯片一般都需 要支持相当多的外设接口,比如串行外围接口 (SPI)、内部集成电路(12C)、安全数字I/ 0(SDIO)、通用异步接收/发送装置(UART)等。并且外部芯片往往需要通过对应的这些外 设接口访问内部模块寄存器和内存。 目前,关于外部设备与内部寄存器等进行数据交互一般采用图1所示的方式即, 针对每一个外设,对应有一个外设接口模块(例如图中所示的外设l接口 12、外设2接口 14、外设n接口 16等),其内部需要实现对应的接口协议转换,然后再连接到内部总线20 上,从而实现各个外设与内部总线20的通讯。 但是,如果外设的主控方(例如图1中与各个外设接口对应的外设1主控端模块 2、外设2主控端模块4、外设3主控端模块6)与内部数据交互的协议有更改,比如芯片内部 总线的地址总线位数发生变化,由16位更改为32位等。针对这些情况,各个外设接口模块 的接口协议转换部分则分别需要重新修改,并且一一重新进行验证,因此操作比较繁琐复 杂,降低了外设接口设计的一致性和重用性。
技术实现思路
本专利技术的目的旨在至少解决现有技术中的上述问题之一。 为此,本专利技术的实施例提出一种,以达 到更好的设计一致性和重用性。 根据本专利技术的一个方面,本专利技术实施例提供了一种具有多个外设接口的数据交互 系统,包括多个外设主控端模块、多个外设接口模块和接口转换模块;所述多个外设主控端 模块与所述多个外设接口模块对应,并根据与内部总线的数据交互协议预先定义命令字和 数据,并通过所述外设接口模块传输;所述多个外设接口模块,分别用于将对应的所述命令 字和所述数据传输到所述接口转换模块;所述接口转换模块,按照所述数据交互协议解析 和转换所述命令字和所述数据,以执行与内部总线的数据交互。 根据本专利技术进一步的实施例,所述接口转换模块包括接口转换处理模块,处理与 所述外设接口模块的信号交互,以采集和传输所述命令字和所述数据;命令解析模块,解析 所述命令字;主控模块,根据所述解析命令字进行写数据或读数据控制;写数据处理模块, 根据所述写数据控制,按照所述数据交互协议将所述数据转换为对应的写地址和写数据, 并传输到内部总线;读数据处理模块,根据所述读数据控制,按照所述数据交互协议将内部 总线返回的读数据传输给所述接口转换处理模块;和总线接口模块,提供所述写数据处理模块、所述读数据处理模块与内部总线之间的连接和数据交互。 根据本专利技术进一步的实施例,所述多个外设主控端模块根据所述数据交互协议的 变化重新定义所述命令字和数据,并且所述接口转换模块根据所述重新定义的所述命令字 和数据进行相应的解析和转换。 根据本专利技术的另一方面,本专利技术实施例提出一种具有多个外设接口的数据交互方 法,包括以下步骤根据与内部总线的数据交互协议,在与多个外设接口对应的多个外设主 控端中预先定义用于数据交互的命令字和数据;将通过所述多个外设接口对应传输的所述 命令字和数据按照数据交互协议进行解析和转换;和根据解析和转换的所述命令字和数 据,执行与内部总线的数据交互。 根据本专利技术进一步的实施例,所述命令字和数据的解析和转换步骤包括解析所 述命令字,并根据所述解析命令字进行写数据或读数据控制;根据所述写数据控制,按照所 述数据交互协议将所述数据转换为对应的写地址和写数据,并传输到内部总线;根据所述 读数据控制,按照所述数据交互协议读取内部总线返回的数据。 根据本专利技术进一步的实施例,根据所述数据交互协议的变化重新定义所述多个外 设主控端的所述命令字和数据,并且根据所述重新定义的所述命令字和数据进行相应的解 析和转换。 本专利技术将多个外设接口仅用于外设模块的主控端命令字和数据的传输,使得各种 外设接口仅专注与外部的交互,本身不再按照对应数据交互协议执行命令字和数据的解析 和转换。而是按照外设主控端与内部总线的数据交互协议,对外设接口传输的命令和数据 进行解析和转换,来执行与内部总线的数据交互。因此当外设主控端和内部总线的内部数 据交互协议有更改的时候,只需要按照变化的交互协议,单独执行一次修改和验证即可,而 无需对多个外设接口分别进行接口协议的转换和对应的多次重新验证,因此与现有技术相 比,本专利技术简化了多个外设模块访问内部数据的验证工作,提高了代码的重用性,可以达到 更强的设计一致性和重用性,并提高可测性。 本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变 得明显,或通过本专利技术的实践了解到。附图说明 本专利技术的上述和/或附加的方面和优点从下面结合附图对实施例的描述中将变 得明显和容易理解,其中 图1为现有技术具有多个外设接口的外部设备与内部数据交互结构示意图; 图2为本专利技术的具有多个外设接口的外部设备与内部数据交互系统方框图; 图3为本专利技术实施例的外设模块通过接口转换模块写数据的协议示意图; 图4为本专利技术实施例的外设模块通过接口转换模块读数据的协议示意图; 图5为本专利技术实施例的接口转换模块的内部结构示意图; 图6为本专利技术的具有多个外设接口的数据交互方法的总体流程图;禾口 图7为本专利技术实施例的具有多个外设接口的数据交互方法的具体步骤流程图。具体实施例方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终 相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附 图描述的实施例是示例性的,仅用于解释本专利技术,而不能解释为对本专利技术的限制。 请参考图2,该图显示了本专利技术的具有多个外设接口的外部设备与内部数据交互 系统结构。如图所示,包括n个外设主控端模块,例如外设1主控端模块2'、外设2主控端 模块4'及外设n主控端模块6'。这些外设主控端模块分别与n个外设模块对应,并且与n 个外设接口模块(例如图中的外设l接口 12'、外设2接口 14'及外设n接口 16')对应。 另外,如图所示,各个外设接口 12'、14'及16'与内部总线20之间设置有一个接 口转换模块30 。从而,各个外设模块通过对应连接的外设接口以及接口转换模块30,实现 对内部总线的访问和数据交互。 上述多个外设模块对应的外设主控端模块2' 、4'及6'根据与内部总线20的数据 交互协议预先定义命令字和数据,例如,当内部总线为16位地址总线,16位数据总线时,外 设主控端模块可以定义如下协议写寄存器的命令字为Oxl,读寄存器的命令字为0x2 ;写 寄存器时,后面紧跟的数据依次为地址高8位,地址低8位,数据高8位,数据低8位;读寄存器时,写地址时紧跟的数据依次为地址高8位,地址低8位;后续读操作时数据为数据高8位,数据低8位。当然,根据与内部总线数据交互协议的不同,外设主控端模块可以自由更改这些命令字和数据。 正如图2所示,在多个外设接口的输出端连接有接口转换模块30,接口转换模块 30用来按照外设主控端模块与内部总线20的数据交互协议,解析和转换外设主控端模块 对应外设模块发出的命令字和数据,以执行与内部总线的数据交本文档来自技高网...
【技术保护点】
一种具有多个外设接口的数据交互系统,其特征在于,包括多个外设主控端模块、多个外设接口模块和接口转换模块;所述多个外设主控端模块与所述多个外设接口模块对应,并根据与内部总线的数据交互协议预先定义命令字和数据,并通过所述外设接口模块传输;所述多个外设接口模块,分别用于将对应的所述命令字和所述数据传输到所述接口转换模块;所述接口转换模块,按照所述数据交互协议解析和转换所述命令字和所述数据,以执行与内部总线的数据交互。
【技术特征摘要】
【专利技术属性】
技术研发人员:李晓强,
申请(专利权)人:易视芯科技北京有限公司,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。