用于提供通用接口的方法以及具有通用接口的微控制器的制造方法

文档序号:6305433阅读:134来源:国知局
用于提供通用接口的方法以及具有通用接口的微控制器的制造方法
【专利摘要】用于控制设备的、尤其用于运输工具控制设备的微控制器,包含有中央处理单元(CPU)、至少一个非接口专用的输入模块、至少一个非接口专用的输出模块、至少一个路由单元以及用于处理接口专用信息的至少一个计算单元。在此该微控制器可以如此来配置,使得所述至少一个非接口专用的输入模块、至少一个非接口专用的输出模块、至少一个路由单元以及用于处理接口专用信息的至少一个计算单元满足与多个串行接口、尤其SPI、UART、LIN、CAN、PSI5、FlexRay、SENT或Ethernet之一相对应的功能。此外该计算单元还设置用于从该第二有用数据中生成完整的输出消息帧来作为输出数据,并将其传输到非接口专用的输出模块。
【专利说明】用于提供通用接口的方法以及具有通用接口的微控制器

【技术领域】
[0001] 本发明涉及尤其用于对运输工具中的功能进行控制的电子控制设备,这些电子控 制设备具有对外的接口,以与通信系统的其他用户相通信。 现有技术
[0002] 运输工具中的控制设备通常具有串行接口,例如SPI、UART、LIN、CAN、PSI5、 FlexRay、SENT、I2C、MSC (Micro-Second-Channel,微型第二通道)、Ethernet (以太网)等, 以与其他的控制设备、传感器、执行器或其他外围设备相连接或相通信。根据现有技术,这 些串行接口在该控制设备的微控制器中通过VHDL代码来实施。在硬件方面,为了实施串行 接口,必须按照接口的类型来实施例如接口专用的通信控制器,其包括协议控制器、采样单 元、存储单元以及收发器(发送器-接收器)。例如在SENT和SPI的情况下不需要总线收发 器。接口专用的硬件单元(例如在SPI情况下的缓冲器、在CAN情况下的协议控制器)另外 还使得这种实施变得耗费且不灵活。
[0003] 在W0-2006013212 A1中例如公开了将FlexRay通信组件用于在FlexRay网络中 将FlexRay通信连接与分配给FlexRay通信组件的用户耦合的实施。具有典型串行接口 构造的一种微控制器例如可以参见Infineon的文件"16/32-Bit Architecture, XC2387C、 XC2388C,16/32-Bit Single-Chip Microcontroller with 32-Bit Performance, XC2000 Family/High Line, Data Sheet VI. 3 2011-07,'。
[0004] 在针对控制设备或针对这种控制设备的微控制器的不同运输工具应用中,对串行 接口的类型和数量存在极其不同的要求。从而例如可以在一个应用中提出如下的要求:一 个SPI接口、两个LIN接口、5个CAN接口。在另一更复杂的应用中,可能还需要其他的接 口,如FlexRay或Ethernet,或者需要更大数量的现有接口。为了应对该问题,可以采用具 有很多不同类型接口的微控制器,但是该微控制器针对大量的应用来超裕度设计,并从而 太昂贵。替换地,可以针对每种应用来实施一种专用的微控制器,该微控制器对于每种接口 类型都恰好具有所期望的数量,但由此与标准化的期望相违背并造成了高的实施成本。另 外这两种解决方案对于将来还未知的要求是不灵活的。总之,在运输工具控制设备的微控 制器中该串行接口的这种接口专用的硬件实施从而导致了不灵活的解决方案,这些解决方 案仅能够耗费地与不同的要求相匹配。


【发明内容】

[0005] 本发明涉及用于提供至少一个通用接口的一种方法、一种相应的微控制器以及具 有这种微控制器的一种控制设备。
[0006] 微控制器的一种灵活结构在此具有中央处理单元(CPU)、非接口专用的输入模块、 非接口专用的输出模块、路由单元、以及用于处理接口专用信息的计算单元。该计算单元在 此优选地与该中央处理单元不同。该微控制器的前述电路部件可以作为通用接口如此来 配置,使得这些电路部件能够按照配置而提供与多种串行接口、尤其SPI、UART、LIN、CAN、 PSI5、FlexRay、SENT、I2C、MSC 或 Ethernet 之一相对应的功能。
[0007] 微控制器通常必须具有广泛的应用范围,因为其设计和制造成本高并从而不能针 对每种应用来开发一种独有的微控制器。通过所建议的在微控制器中提供通用接口,在设 计微控制器时在该微控制器的不同应用情况下所需每种类型接口的数量不必是已知的。而 是提供硬件电路,这些硬件电路按照配置而满足特定串行接口的任务。
[0008] 在通过微控制器的硬件电路来提供通用接口的一种方法中,在用于对应于多种串 行接口之一的一种协议来接收并处理输入数据的基本上独立的子方法中,所述输入数据通 过非接口专用的输入模块被接收,并通过路由单元传输到计算单元。尤其通过从该输入数 据中去除该协议的协议细节,由该计算单元从该输入数据中提取有用数据。第一有用数据 最后被提供给该中央处理单元(CPU )。
[0009] 在用于处理数据并用于发送输出数据的基本上独立的子方法中,中央处理单元的 第二有用数据被计算单元接收。由该计算单元尤其通过把该协议的协议细节添加到该第二 有用数据中而由该第二有用数据来生成输出数据。该输出数据被传输到非接口专用的输出 模块之一,并最后对应于多种串行接口之一的协议通过非接口专用的输出模块而被发送。 在此该输出数据由该计算单元作为整个消息帧而被继续传送。该输出模块同样以整个消息 帧来接收该输出数据。为此该输出模块优选地具有状态自动机和存储器,其中该存储器具 有足够的容量以存储整个消息帧。为了能够利用一个通用接口来模拟不同的串行接口,该 通用接口的输出模块必须具有存储器,该存储器能够存储与可能要模拟的接口相对应的每 种协议的整个消息帧。
[0010] 可以以不同的方式通过该输出模块来进行该输出数据的输出。通过相应的触发信 号来尤其简单地实现输出,其中该触发信号由该输出模块例如从该计算单元或该中央处理 单元接收。替换地可以通过由该计算单元向该输出数据附加表征输出时间或输出角度的时 间或角度信息,来进行输出。在该变化方案中,计算单元或中央处理单元通过该触发过程而 不承载计算负荷。然而该输出模块在此必须访问时间或角度信息,其中该时间或角度信息 可以与时间或角度戳相比较。
[0011] 该输出数据可以被提供给该输出模块,其方式是,该计算单元把该输出数据通过 该路由单元传输到该输出模块。其优点是通过一个中央路由单元来有效地进行许多数据的 传输。但替换地也可以由该计算单元把该数据直接写入到该输出模块的存储器资源中。从 而数据的输出不再与该路由单元的速度相关联,并能够实现更快的传输速率。在另一变化 方案中,该输出模块通过对存储器资源的直接存储器访问(DMA)来独立地加载该输出数据, 其中该输出模块把该存储器资源或者通知给该计算单元或者通知给该中央处理单元。由此 计算单元或中央处理单元在可能高输出速度的情况下继续减负。然而为此由于直接存储器 访问(DMA)而需要更复杂的硬件。
[0012] 该方法是一种特别灵活的数据处理方式,因为为此没有采用接口专用的硬件单 元。与许多串行接口相对应的许多协议的数据可以通过非接口专用的输入和输出模块而被 接收和发送,并且通过配置可以在该计算单元中根据协议信息对所接收的数据进行分析。 这能够按照对微控制器的应用专用的要求对应于特定的串行接口来配置该通用接口。
[0013] 该协议细节、尤其关于起始位、停止位、奇偶校验信息、控制位、填充位等的信息在 此情况下例如可以通过该微控制器的中央处理单元而被存储在存储器中。通过所述协议细 节可以配置该通用接口、尤其为此所采用的计算单元。该计算单元访问该存储器,并能够读 出与所规定的配置相对应的协议信息。
[0014] 如果该计算单元还被应用于更高协议层的计算,那么对于该通用接口就获得了更 广泛的应用范围。例如该计算单元可以把多个UART消息帧转变为一个LIN消息帧。
[0015] 通过该计算单元把有用数据写入到该中央处理单元所访问的存储器中,并例如通 过中断来将此通知该中央处理单元,那么就最简单地实现了有用数据从该计算单元到该中 央处理单元的转发。
[0016] 在一个更复杂的、但由此给该计算单元和该中央处理单元减负的变化方案中,该 计算单元可以通过直接的存储器访问把该有用数据提供给该中央处理单元。
[0017] 在该输入模块中,可以给输入数据分配时间信息,其方式是例如在该输入模块的 输入端上给每个边缘变换加上时间戳。由此边缘变换与时间信息相关联,这允许与输入数 据的协议无关地记录输入数据,使得借助计算单元能够根据电平变换的时间信息来提取所 包含的有用数据。为此该边缘变换连同时间戳一起可以分别由该输入模块通过该路由单元 被传输到该计算单元。该路由单元所带来的优点是,在具有许多输入模块、输出模块和计算 单元的情况下,在它们之间也快速而可靠地进行数据传输。
[0018] 在替换的变化方案中,该输入模块可以把完整的消息进行存储,并(优选通过该路 由单元)提供给该计算单元。因为在此不用单独地传输每个具有时间戳的电平变换,所以该 路由单元被减负,并且这种传输不再强烈地由该路由单元的速度和承载来确定。
[0019] 在该替换的变化方案中,整个消息可以通过该输入模块而被分配时间信息。该计 算单元或中央处理单元再次可以使用该时间信息来排列或处理该输入数据。
[0020] 另外,通过该输入模块能够对该输入数据的内容进行特别可靠的识别,如果输入 数据通过过扫描而被分析并通过扫描点电平值的多数协调一致来为输入数据的每个比特 确定比特电平的话。
[0021] 该计算单元例如具有算术逻辑单元,优选地该算术逻辑单元作为多通道定序器实 现。
[0022] 在一种微控制器中,非接口专用的输出模块具有比较功能,该微控制器可以提供 特别灵活和简单可实现的通用接口。利用更少的资源就可以实现高得多的微控制器灵活 性。
[0023] 该微控制器的应用可能性可以通过其他单独的硬件电路来加以扩展,例如用于 CRC计算或者在总线仲裁期间的计算(例如在CAN情况下),这些硬件电路或者是该微控制 器的组成部分或者与该微控制器相连。通过这种在特定功能上优化的硬件单元,其余不太 专用的模块、尤其该微控制器的计算单元被减负。只有利用这种附加的单元才以所需的可 靠性和速度来实现该微控制器的一些计算并从而实现一些应用。
[0024] 为了使该通用接口在一定范畴中提供相应的、如扩展到许多应用中(尤其汽车领 域)的串行接口,该路由单元和/或该计算单元应该以至少100MHz的时钟、尤其以至少 200MHz的时钟被驱动,并从而输入数据能够以至少1M波特的输入波特率被接收,以及输出 数据能够以至少1M波特的输出波特率被发送。
[0025] 不仅具有专用的以硬件来实现的接口而且具有包括非接口专用硬件的通用接口 的微控制器是应用非常灵活的并且尽管如此还是特别有利的,所述非接口专用硬件能够被 配置以利用软件计算实现所期望的接口。从而对于该微控制器的已知的应用情况可以在应 用之间固定地实施某种接口交集,而在应用之间不同的接口要求或还未知的接口要求利用 通用接口来涵盖。
[0026] 可以把在微控制器中实现通用接口的硬件电路与一个或多个计时器模块相组合。 如果在硬件块之一中有相应的容量可用,那么计时器模块也可以在执行任务时灵活地相互 支持。
[0027] 所述的微控制器尤其可以良好地应用在控制设备中,尤其在汽车领域。在此在同 时存在严格的成本预定的情况下,对接口的要求是特别高的。

【专利附图】

【附图说明】
[0028] 下面参照附图并借助实施例来详细解释本发明。其中: 图1示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路, 图2示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路以及计时器 模块, 图3示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路以及具有用 于CRC计算的专用的硬件电路, 图4示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路以及具有专 用的输出模块, 图5示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路以及专用的 输入模块和附加的存储器, 图6示意示出了一种示例微控制器,其具有用于实现通用接口的硬件电路以及用于支 持仲裁的电路, 图7示意示出了具有边缘变换的两个示例信号曲线,以解释CAN仲裁, 图8示意示出了用于通过通用接口来接收数据的一种方法的示例流程, 图9示意示出了用于通过通用接口来发送数据的一种方法的示例流程, 图10示意示出了用于波特率识别的一种方法的示例流程,以及 图11示意示出了通过单独的CRC单元来进行CRC计算的数据传输示例流程。

【具体实施方式】
[0029] 概念"串行接口 "在下文中理解为用于在设备之间进行串行数据交换的一种连 接。串行数据传输的特征是其中通过一个或多个导线来依次传输比特的数据传输。属于运 输工具中所使用串行接口的例如是SPI、UART、LIN、CAN、PSI5、FlexRay、SENT、I2C、MSC和 Ethernet。
[0030] 在 W0-2011120823 A1 中公开了计时器模块"Generic Timer Module (GTM),通用 计时器模块"。其中硬件子模块设置于中央路由单元(称为"Advanced Routing Unit (ARU), 高级路由单元")周围。该中央路由单元在不同的硬件子模块之间对数据进行路由,在此优 选地采用循环调度("Round Robin,轮询")来进行确定性仲裁。也即,源模块在最大循环 时间之内被操作,并且其数据通过地址信息而被路由到相应的目标模块。该计时器模块从 而能够降低微控制器的CPU的中断负载,例如在用于控制运输工具中功能的电子控制设备 (ECU)的微控制器。该计时器模块具有作为硬件子模块的输入模块、所谓的"Timer Input Modules (--Μ),计时器输入模块"以及输出模块、所谓的"Timer Output Modules (TOM),计 时器输出模块"或者还有"ARU-connected Timer Output Modules (ATOM), ARU连接的计时 器输出模块"等。除了该路由单元(ARU)、该输入模块(--Μ)和该输出模块(ATOM)之外,该 计时器模块还具有作为计算单元的多通道定序器(Multi Channel Sequencer)。
[0031] 该计时器模块采用了 "Capture/Compare,捕捉/比较"基本原理。在此情况下进 入该输入单元(TIM)的信号与对应于其到达的时间戳相关联。该输入单元(TIM)在此例如 从时基单元(time base unit, TBU)获得相应的时间说明。该时间戳的功能对应于"捕捉/ 比较"的"捕捉"。应该通过该计时器模块的输出单元(ATOM)来发送的信号例如由进行处 理的计算单元(CPU,MCS)而同样设置有时间戳。在该计时器模块的输出模块(ATOM)中,该 信号的时间戳与当前的时间说明相比较。该输出模块例如同样从时基单元来获得该时间说 明。如果要输出的信号的时间戳对应于当前的时间,那么该信号就被发送。该功能对应于 "捕捉/比较"的"比较"。代替所述的时基,也可以通过输入单元和输出单元来实现角度同 步的"捕捉/比较"功能。这些功能在运输工具中可能是需要的,因为接收过程或发送过程 相对于当前发动机角度的角度位置是特别有意义的。例如进入该输入单元的信号可以设置 有角度戳,要输出的消息可以在确定的角度点被发送。
[0032] 该计算单元或数据处理单元"多通道定序器"优选地作为子模块来实现,其具有管 道级、算术逻辑单元(ALU)、解码器和至RAM存储器单元的连接。在计时器模块中也可以采 用多个多通道定序器。该输入单元优选地作为硬件组件来实现,其具有锁存器和触发器以 及至时间和/或角度提供单元的连接。该输出单元优选地作为硬件组件来实现,其具有例 如构成寄存器的锁存器和触发器、以及至时间和/或角度提供单元的连接。与时间相关的 功能的时基在此可以由该微控制器(或者其中央处理单元(CPU))的计算器时钟来导出,与 角度相关的功能的角度基准可以通过DPLL (digital phase-locked loop,数字锁相环)来 实现。
[0033] 对于该计时器模块、尤其该计时器模块的所述组成部分ARU、MCS、--Μ、ATOM、TBU 的其他功能,参见W0 2011120823 Al。W0 2011120823 A1的相应说明部分由此通过参考而 被包含在本申请中。
[0034] 依据已知的计时器模块的功能,本发明的中心方面是在微控制器中提供通用串行 接口,尤其用于在运输工具控制设备中的应用。为此或者可以重新配置已在该微控制器中 集成的相应计时器模块的单元,或者在该微控制器中集成专用于该应用的单元。在此例如 可以采用该输入单元(--Μ)的"捕捉"功能,以通用地模拟专用的接口输出端。由计算单元、 例如多通道定序器(multi channel sequencer, MCS)来支持输入单元和输出单元,其中该 定序器执行计算以实现接口。为了在输入模块、输出模块和计算单元之间分配数据,优选地 采用了路由单元。在下文中所述的模块-输入模块、输出模块、路由单元和计算单元在此优 选地具有上文相应单元--Μ、A(T0M)、ARU以及MCS的针对计时器模块"GTM"所述的功能。 但是用于实现通用接口的硬件电路或具有这种硬件电路的微控制器由于其他的要求(例如 路由和处理的速度)而与已知的计时器模块不同。在此优选地除上述的计时器子模块功能 之外,在该微控制器的硬件中还进行变化,但至少必须通过配置把相应的计时器硬件组件 与变化的任务和要求相匹配,以能够按照本发明而被使用。
[0035] 在图1中示意示出了一种电路构造,以在微控制器中实现通用的串行接口。
[0036] 该微控制器101在此具有一组硬件电路110,这些硬件电路可以配置以提供特定 串行接口的功能。硬件部件110包含有输入模块111,该输入模块与输入数据通道102相连 接。该输入数据通道102典型地是一种电缆连接的通信连接。该输入模块111与路由单元 112相连接。该路由单元112除了该输入模块111之外还与计算单元113和输出模块114 相连接。该输出模块114与输出数据通道103相连接。该输出数据通道103同样典型地是 电缆连接的通信连接。该输入数据通道103和该输出数据通道104是具有特定协议的通信 系统的组成部分,如此使得非接口专用的硬件部件111、112、113、114必须如此来被配置, 使得它们提供相应接口的功能,该接口能够处理所述特定协议的数据。例如该输入数据通 道102可以是UART接口的Rx输入,该输出数据通道103是UART接口的Tx输出。该硬件 部件111、112、113、114在该例子中必须如此来被配置,使得它们模拟UART接口。
[0037] 该输入模块111和该输出模块114是非接口专用的硬件电路,也即它们可以处理 根据不同协议结构构建的、不同串行接口的数据。该计算单元113应该与该微控制器的中 央处理单元(CPU)不同,并在下文中为了区分而用MCS来表示,因为在该微控制器的一个优 选实施方案中该计算单元(MCS)是多通道定序器。该计算单元(MCS)的其他硬件实施同样 也是可以的,优选地同样具有算术逻辑单元(ALU)。
[0038] 该路由单元112时分复用地连接模块-输入模块111、输出模块114以及计算单元 (MCS)113。
[0039] 图1非常简化地示出了该微控制器101。当然这种微控制器101具有许多其他的 在此未示出的组成部分,其中包括至少一个中央处理单元(CPU),该中央处理单元可以在该 微控制器中执行数据处理、计算和配置。另外该微控制器101还优选地包含有多个这样的 输入模块111和输出模块114。按照应用,该微控制器也可以具有多个计算单元(MCS)113。 许多这种模块111、113、114可以与一个唯一的路由单元112相连接。对于非常复杂的应用, 在这样的微控制器101中也可以采用更多的路由单元112。
[0040] 在当前微控制器的一个特别优选的变化方案中,该微控制器具有多个"真正的"、 也即对应于现有技术固定以硬件实现的串行接口,以及具有多个"通用的"如图1所述硬 件电路形式的接口。由此可以优选地如同以前一样有利地以硬件来固定地实现特定接口类 型的最少数量的所需接口,但在该微控制器的不同应用之间不同的接口可以作为通用接口 来设置,并从而能够对应于相应的应用而以软件来加以配置。从而能够在降低待保持的接 口数量的情况下实现该微控制器的灵活应用。
[0041] 在图8中示意示出了用于实现接收消息的通用串行接口的一种方法的流程图。
[0042] 在第一步骤(801)中,在微控制器的输入模块(例如图1的111)中,数字数据从微 控制器外部作为比特而被接收。在此在该输入模块处施加有输入信号。该输入信号以与要 模拟的串行接口相对应的一种协议而出现。在步骤802中,所接收数据比特之间的边缘变 换在该输入模块中分别被加上时间戳(捕捉功能)。为此在该输入模块中检测该时间戳,其 中在该时间戳处在该输入模块的输入端上的管脚状态、也即边缘发生变化。该输入模块例 如可以从时基单元来获得用于加上时间戳所需的时间信息。在步骤803中,如此确定的数 据由该输入模块传输到该微控制器的路由单元(例如图1中的112)。为此传输在管脚状态 发生变化时的边缘变换连同时间戳,其中在该时间戳处还发生其他的边缘。在步骤804中, 该路由单元再次把该信息传输到该微控制器的计算单元(MCS,例如图1中的113)。
[0043] 在步骤805中,该计算单元(MCS)处理对应于该输入模块中的多次捕捉事件而作 为该路由单元侧多次单独的传输而到达该计算单元的信息。在此该计算单元(MCS)由所接 收的比特流(也即带有时间戳的边缘变换)来重建所接收的信号。另外该计算单元(MCS)检 验该信号,并对应于当前的协议来去除控制比特(例如(多个)起始比特、(多个)停止比特、 (多个)奇偶校验比特、(多个)填充比特)。该计算单元(MCS)优选从本地的、它所访问的易失 存储器中获取用于该处理的信息(也即涉及哪种协议、或者如何构建该协议消息的信息)。 这些信息例如可以由该微控制器的中央处理单元(CPU)从非易失存储器(例如闪存)被传输 到此。在该微控制器启动时,优选地该输入模块和还要进行阐述的输出模块通过该中央处 理单元(CPU)而被固定分配特定消息协议,并且关于此的信息以及相应的协议信息被存储 在易失的存储器中,以能够由该计算单元(MCS)访问。
[0044] 在一个可选的步骤806中,该计算单元(MCS)可以执行实施其他的处理步骤和计 算,例如更高协议层的计算。例如可以把多个UART帧变换为一个LIN帧,或者执行各种信 号计算。
[0045] 在步骤807中,该计算单元(MCS)把所处理过的信息提供给该微控制器的中央处 理单元(CPU)。优选地该信息被存储在存储器(例如RAM)中,并通知该中央处理单元(CPU) (例如通过中断或者通过DMA通道的触发)。在此该消息除了有用数据之外例如还具有其他 的信息,例如在CAN消息情况下的标识符。
[0046] 在步骤808中,该中央处理单元(CPU)最后对所接收的信息进行处理。
[0047] 迄今所述的实施例对应于基本配置(图1)假定,用于实现通用、串行接口的该硬件 电路具有带有捕捉功能的输入模块。然而,与上述的通用计时器模块相反,可以采用不具有 比较功能的输出模块,因为应该与通过带时间戳的边缘变换所进行的接收不同地进行数据 输出。用于输出接口帧的这种专用模块从而可以与前述硬件电路的以及该计时器模块的输 出模块(TOM、ATOM)不同。
[0048] 这种输出硬件模块的硬件实施例如可以通过状态自动机(状态机)与存储器相组 合来进行。这种专用的输出模块可以把完整的消息帧存储在它的存储器中。该路由单元从 而可以利用发送过程把完整的消息发送到该输出模块,这使得降低了该路由单元的负载。 此外,利用这种输出单元更简单地实现了在数据输出时更高的波特率,因为其不再显著受 限于该路由单元的时钟。
[0049] 在一个实施方案中,该输出单元再次必须提供时间信息(或者相对应的角度信 息)。该输出单元在此需要如下的信息,即整个消息或整个消息帧必须在哪个时间点(或以 哪个角度)以及以哪种波特率被发送。然后借助可用的时间信息或角度信息以及该输出模 块已知的波特率,该数据被发送。优选地由该计算单元(MCS)或微控制器的中央处理单元 (CPU)把该数据直接写到该输出单元的存储器中。该输出单元在此获得了该信号(日期)以 及与数据速率和发送时间点有关的信息。
[0050] 替换地也可以不是通过时间信息,而是通过该计算单元(MCS)或该微控制器的中 央处理单元(CPU)的具体触发而开始向该专用输出单元的发送过程。然后该输出单元独立 地在输出管脚上来提供该数据。
[0051] 在图4中示出了一种微控制器,其具有专用的输出模块414。该微控制器401具有 硬件部件410,也即输出模块411、路由单元412、计算单元(MCS) 413以及输出模块414以 及至输入数据通道402和输出数据通道403的连接,其再次最大程度对应于图1的微控制 器101。然而该输出模块414具有扩展的功能,例如用于存储完整消息帧的存储器资源。在 所示的优选实施方案中,该输出模块414另外还具有至微控制器401的另一连接。通过该 连接,例如可以通过该微控制器401的中央处理单元(CPU)给该输出模块414来提供数据, 例如通过前述的由该中央处理单元(CPU)把该输出数据直接写入到该输出模块414的存储 器中。
[0052] 借助这种专用的输出单元而进行的数据输出流程在下文中应借助通过UART配置 的通用接口的示例传输来加以阐述(图9): 1.该微控制器的中央处理单元(CPU)或该计算单元(MCS)在第一步骤901中把消息 帧01111111111写入到该输出单元的存储器中。其对应于一个起始比特(0)、8个数据比特 (11111111 )、一个奇偶校验比特(1,在奇校验的情况下)以及一个停止比特(1)。
[0053] 2.该微控制器的中央处理单元(CPU)或该计算单元(MCS)在第二步骤902中把要 输出的消息帧的数据速率写入到该输出单元的寄存器中。
[0054] 3.该微控制器的中央处理单元(CPU)或该计算单元(MCS)在第三步骤903中把触 发信号发送到该输出单元,以开始进行传输。在另一变化方案中,在预定数量的传输过程之 后,在获得该消息帧之后开始进行传输。在另一变化方案中,该微控制器的中央处理单元 (CPU)或该计算单元(MCS)传输应该进行或开始传输的时间点。
[0055] 4.该输出单元在第四步骤904中独立地把该消息帧以所选择的数据速率来发送。
[0056] 在所述的具有专用输出单元的实施例中,该计算单元(MCS)或该中央处理单元 (CPU)另外还例如由于把信息写入到该输出单元中以及触发该发送过程而被承载。因此在 另一有利的实施变化方案中,该输出单元通过从存储器中自动地重新加载来获得要发送的 数据或消息帧。例如可以从RAM中来进行这种自动重新加载,其中该输出单元通过级联列 表和DMA (直接存储器访问)来访问该RAM。从而也可以以高的速度在该计算单元(MCS)或 该微控制器的中央处理单元(CPU)未承载(中断)的情况下来输出较大的数据分组。
[0057] 在所述的具有专用输出单元的实施例中,首先假定,其余方法步骤(通过该输入模 块进行数据接收,通过该路由单元进行路由,通过该计算单元(MCS)进行协议计算,必要时 通过该CRC单元进行CRC计算)继续如上所述地来进行,以及其余的硬件电路(输入模块、路 由单元、计算单元(MCS)、必要时的CRC单元)继续如上所述来构建。
[0058] 不同的配置都可以用于硬件实现该通用串行接口。一方面,微控制器可以具有诸 如前述"通用计时器模块"的计时器模块,并还具有如图1所述的硬件电路。在这种配置中, 无论要实现什么接口,该计时器模块都可以满足它所承担的任务。该接口功能通过该微控 制器的附加硬件电路来提供。在这种配置中,只要该硬件电路没有由于接口功能而满载,尤 其只要相应的输入和输出模块没有被分配接口功能,那么可以通过配置而优选地把计时器 功能转移到该附加硬件电路上。在一个专用的变化方案中,只要该计时器模块为此具有足 够空闲的容量和足够的硬件设计并为此被配置,那么该计时器模块(或其硬件单元)也可以 承担该附加硬件电路的接口功能。
[0059] 在图2中示出了这样一种硬件实施方案。在此该微控制器201具有硬件电路210, 该硬件电路对应于图1中的硬件电路11〇(输入数据通道202、输出数据通道203、输入模块 211、输出模块214、路由单元212、计算单元(MCS)213)。另外该微控制器201还具有计时器 模块230,该计时器模块具有计时器输入模块231、计时器输出模块234、路由单元232以及 计算单元(MCS) 233。该计时器输入模块231与该信号输入端222以及该路由单元232相 连接。该计时器输出模块234与该信号输出端223以及该路由单元232相连接。该路由单 元232另外还与该计算单元(MCS) 233相连接。该计时器模块230例如可以通过前述的计 时器模块-"通用计时器模块"来实现。
[0060] 在另一变化方案中,硬件单元如图1所述不仅可以承担计时器功能,而且可以承 担接口功能。这种硬件单元与前述的通用计时器模块相比优选地具有一个或多个路由单 元,该路由单元以更高的频率被驱动,并且对每个路由单元具有少量的模块,以如实现通用 串行接口所需那样提高服务率并能够实现更高的波特率。例如路由单元和计算单元(MCS) 可以不是以80MHz被驱动,而是以从100MHz开始、优选从200MHz开始的频率被驱动。优 选地路由单元和计算单元(MCS)的频率如此来设置,使得能够实现具有1M波特或更高的接 □。
[0061] 在这两种变化方案中,通过可能在接口功能与计时器功能之间的相互转化而获得 了灵活性。例如在具有微控制器的控制设备中的一种应用中,在把计时器/接口模块与16 个输出模块相组合利用的情况下,可以为控制发动机的八个汽缸而提供计时器功能。为此 例如可以采用具有比较功能的八个输出模块以控制点火,并采用具有比较功能的八个输出 模块以分别控制一个汽缸的喷油。如果在另一应用中采用具有组合的计时器/接口模块的 微控制器来控制具有四个汽缸的发动机,那么刚才所述的16个输出模块中的八个不需要 被用于关于控制汽缸的计时器功能,并从而可以用于模拟例如八个串行接口的输出信号。 [0062] 按照要模拟的串行接口的类型,除了前述的模块和单元之外还可能需要其他的硬 件组件。
[0063] 例如对于特定的协议还必须执行CRC计算,例如对于PSI5或CAN。在CRC(Cyclic Redundancy Check,循环冗余校验)情况下针对数据来确定一个校验值,并在传输之后根据 所传输的数据来校验该校验值,以识别传输错误或存储器错误。所实施的计算单元(MCS)对 于这种计算类型并不是最佳的,并且在必要时必须被装备更高的计算功率。此外在具有多 个计算单元(MCS)的硬件电路的情况下,每个计算单元(MCS)将承载这种附加计算。另外 CRC计算在一些协议情况下必须非常快速地被执行,以能够在必要时触发协议中的动作,例 如错误消息帧。
[0064] 因此,出于面积和性能的原因,在一个唯一的模块中来执行CRC计算是有利的。在 前述的用于模拟串行接口的硬件电路的一种优选扩展方案中,这些硬件电路相应地另外还 具有单独的单元来计算CRC信息。在具有多个计算单元(MCS)的硬件电路的情况下,该CRC 校验单元优选地为多个或所有的计算单元(MCS)来集中这行这种计算。
[0065] 附加的CRC单元对于具有高速度要求的协议也能够足够快地提供CRC计算和CRC 比较。该CRC单元在此优选地至少执行CRC校验值的计算,必要时还执行CRC校验值的校 验。如果一个CRC校验值通过该CRC单元被识别为不正确,那么就可以优选地通过该计算 单元(MCS)促使重新进行传输。
[0066] 该CRC校验单元优选地作为硬件逻辑电路来实现,例如其为此可以具有X0R逻辑 和移位寄存器。对此的替换是以软件利用(例如小的附加的)计算单元的计算来实现。
[0067] 在图3中示出了一种硬件电路,其具有这样的附加的CRC单元。该微控制器301具 有该硬件模块310、也即输入模块311、路由单元312、计算单元(MCS) 313和输出模块314, 其最大程度对应于图1中的微控制器101。数据输入通道302和数据输出通道303分别与 输入模块311以及输出通道314相连接。除了图1中的微控制器101之外,微控制器301 还具有CRC单元315,该CRC单元在所示的实施方案中与该路由单元312相连接。
[0068] CRC值的计算优选地基于多项式除法。从而该CRC单元应该能够至少在该微控制 器启动时通过参数来加以配置,如此使得能够实现不同的多项式。例如一个多项式b7*x T+b 6*x6+b5*x5+b4*x4+b3*x3+b2*x 2+bl*x1+b0*xQ 可以通过配置参数 b0 至 b7 来加以配置。为了 能够支持具有不同CRC多项式的不同接口,一个CRC单元或者必须能够灵活地(也即在运 行时)被重新配置,或者必须设置多个CRC单元。
[0069] 在图11中示出了利用单独的CRC单元的CRC计算而进行的数据传输流程。在此 情况下阐述了从所接收数据中计算CRC值的例子。
[0070] 在第一步骤1101中,该CRC单元通过该计算单元(MCS)或者该微控制器的中央处 理单元(CPU)来加以配置。因为通常需要针对每个接口来计算不同的多项式,所以需要进 行配置。如前所述,这些多项式可以通过配置参数来加以确定。因此在用于多个通用串行 接口的CRC计算的CRC模块中,只要应该不是为同样的接口来这些两次依次相邻的计算, 那么在每次计算之前都需要进行这种配置。CRC单元的配置例如也可以通过如下方式来进 行,即该CRC单元访问具有不同多项式的表格,获得与该表格中的记录相对应的索引,并根 据该记录来引用该多项式。
[0071] 在第二步骤1102中,该CRC模块接收数据,其中应该对这些数据执行CRC计算。 该数据例如是具有CRC信息的输入数据,所述CRC信息已由该输入模块接收并被传输到该 计算单元(MCS)。在第三步骤1103中在该CRC单元中来执行CRC计算。在第四步骤1104 中,CRC计算(CRC校验值计算以及必要时的校验)的结果由该CRC模块发送到该计算单元 (MCS) (CRC校验值和/或CRC校验的结果)。优选地该数据的传输分别通过该路由单元从 该计算单元(MCS)到该CRC单元以及从该CRC单元到该计算单元(MCS)来进行。
[0072] 最后在第五步骤1105中,该计算单元(MCS)可以把由该CRC单元所计算的CRC信 息与所接收的CRC信息相比较,或者通过该CRC单元来分析CRC校验的结果,并从而在具有 偏差的情况下确定存在传输错误或存储器错误。
[0073] 在可选的第六步骤1106中,如果通过该计算单元(MCS)已确定存在传输错误或存 储器错误,那么就通过该计算单元(MCS)来触发重新传输。
[0074] 类似地也针对要发送的数据进行CRC计算。数据优选地在配置该CRC单元之后由 该计算单元(MCS)通过该路由单元而被发送到该CRC单元。在那里执行CRC计算,并且结 果由该CRC单元通过该路由单元被传输到该计算单元(MCS)。在那里把CRC值附加给该数 据,并把该数据提供给该输出模块。
[0075] 除了具有带捕捉功能的输入模块的上述实施方案之外,在一个可选的实施方案 中,一种专用的输入模块不是如前所述逐个边缘地对输入比特流进行分解,也即并不是每 个边缘变换都带时间戳地通过该路由单元继续传送到该计算单元(MCS)。而是该专用输入 单元把完整的比特流进行记录(也即存储)和过滤。作为过滤优选地可以应用过扫描(过采 样)。通过把过扫描例如与表决(协调一致)相组合,可以更可靠地把具有高电平的所接收比 特与具有低电平的所接收比特相互分离或区分。
[0076] 该专用输入模块的输入滤波器例如可以如此来被编程,使得它以16MHz来扫描一 个1MHz信号。然后通过表决实例来对每个比特进行16次扫描,该表决实例按照预定的设 置(例如16中的3个或16中的12个)而作为比特状态来存储一个1或0。通过这种专用 的、其中实施有过扫描和表决的输入模块,也可以实现具有更高抗干扰要求的接口。
[0077] 通过与触发事件、例如在UART情况下的起始比特相同步,该专用输入单元可以参 照该比特流而被设置为所定义的状态。如果所有的比特都被读入(例如UART:起始比特、 8个数据比特、奇偶校验比特、停止比特),那么这些数据就从该专用输入模块的输出端通 过该路由单元而被传输到该计算单元(MCS),这些数据然后被转换为较高的协议层(例如 KWP2000、LIN),或者这些数据被直接写入到FIFO存储器中,其中应用软件可以从该FIFO中 获取这些数据。不再需要由该计算单元(MCS)通过分析该路由单元侧的带时间戳的边缘变 换消息来重建该消息。相反该计算单元(MCS)从该路由单元作为消息而获得消息帧的数据, 而不是作为分别单独的传输来传输边缘变换。由此该路由单元由于不执行很多单独实施而 同样被减负。输入数据的处理速度不再如前一样强烈地与该路由单元的速度相关。从而除 了该路由单元和计算单元(MCS)的减负之外,还能够以更快的数据速率来进行输入数据的 处理。
[0078] 除了被过滤的、也即在过扫描和表决之后所确定的正确比特电平之外,还可以转 发如下的信息(例如转发到该计算单元(MCS)或该微控制器的中央处理单元(CPU)),即这 些比特是否被干扰以及干扰程度,也即例如该表决的明确程度。例如可以通知一个比特的 多少个被扫描值具有相同的电平。为了使表决更鲁棒,例如也可以屏蔽直接在边缘变换之 前以及直接在边缘变换之后的点(采样),以使表决、也即比特识别更鲁棒。
[0079] 对于所述的、具有执行过扫描和表决的专用输入模块的硬件电路,为了改善比特 识别也可以针对所述表决而采用所确定的波特率(这种波特率识别在下文中还要详细阐 述)。
[0080] 在具有专用输入模块的实施方案的一个优选替换变化方案中,从该专用输入模块 向存储器、例如FIFO存储器进行直接的传输,其中该计算单元(MCS)或该微控制器的中央 处理单元(CPU)对该存储器进行访问。替换地,计算单元(MCS)或该中央处理单元(CPU)也 可以直接访问该专用输入模块的存储器。
[0081] 在前述的具有专用输入单元的一种扩展中,该专用输入单元可以给每个比特流或 每个消息帧分配一个时间戳(为此需要访问时间信息)。计算单元(MCS)或该微控制器的中 央处理单元(CPU)可以应用该时间戳以进行消息帧的处理或分析。
[0082] 这种专用的输入单元与较高的成本相关联,从而必须把所讨论的优点与成本缺点 相平衡,以选择合适的实施方案。
[0083] 在所述的具有专用输出单元的实施例中,首先假定,其余方法步骤(通过该输出模 块进行数据输出,通过该路由单元进行路由,通过该计算单元(MCS)进行协议计算,必要时 通过该CRC单元进行CRC计算)继续如上所述地来进行,以及其余的硬件电路(输出模块、路 由单元、计算单元(MCS)、必要时的CRC单元)继续如上所述来构建。
[0084] 在图5中示意示出了具有专用输入单元的、用于实现通用串行接口的一种硬件电 路。该微控制器501具有该硬件部件510--也即输入模块511、路由单元512、计算单元 (MCS) 513以及输出模块514--以及至数据输入通道502和数据输出通道503的连接,该 微控制器501再次最大程度对应于图1中的微控制器101。但是与此不同,该专用输入模 块511是具有电路的硬件单元,该电路用于实现过滤功能,尤其对所接收比特进行过扫描 和表决,其中根据在一个比特的扫描点上所检测的电平值通过多数判决来确定该比特的电 平值。与在图1中所述的输入模块相反,该专用输入模块511必须具有存储器,该存储器具 有足够的容量以存储完整的比特流或完整的所接收的消息帧。
[0085] 与图1相比,在图5中还示出了存储器516,例如FIFO存储器。至少该输入模块 511对该FIFO存储器进行访问。与前述变化方案之一相对应,从该专用输入模块511向该 存储器516进行直接的传输,其中该微控制器的中央处理单元(CPU)访问该存储器,如在图 5中通过从存储器516至该微控制器501的所示连接所示。
[0086] 在用于提供通用串行接口的硬件电路的另一变化方案中,前述的实施方案另外还 具有另一硬件组件,该硬件组件被用于消息仲裁。该组件在此承担了时间严苛的功能,其中 其余的电路部分由于其结构和时钟频率而不能最佳地用于上述时间严苛的功能。
[0087] 该组件优选地涉及用于支持CAN仲裁的组件。对于CAN仲裁,在相应高的数据速 率时必须在几纳秒的内部处理时间(IPT)内就识别在总线上存在显性电平。在该总线上存 在显性电平的情况下,如果在当前的比特中(在当前的时钟片段中)在该接口中存在一个隐 性比特,那么就不允许该接口在下一比特时(在下一时钟片段中)驱动显性电平。在这种情 况下,该接口(以及从而相应的CAN节点)从该仲裁中被淘汰,因为另一 CAN节点具有更高优 先权(也即具有更早的显性电平)的消息。对于这种功能,前述的在图1中示例阐述的硬件 部件并不是最佳的。从而利用一种专门为此而设置的模块就能够实现更快的响应时间。
[0088] 在图7中为了阐述CAN仲裁而绘制了存在于CAN总线上的信号701以及存在于微 控制器内部的要发送的信号702。从左向右用虚线划分了四个时钟片段。在时钟片段1中, 不仅在总线上而且作为内部信号存在隐性电平。在时钟片段2中在总线上具有显性电平, 内部信号对该时钟片段具有隐性电平。从而该节点从仲裁中被淘汰。从而通过用于仲裁的 硬件单元,现在在时钟片段3中禁止驱动所设置的显性电平。相应地在时钟片段4中以及 随后的时钟片段中也不再允许该节点发送,直到在该CAN总线上已赢得该仲裁的那次传输 结束。
[0089] 图6示出了微控制器601,其具有用于提供通用串行接口、尤其CAN接口的硬件模 块610,以及具有用于通过该接口进行消息仲裁的附加硬件单元630。该微控制器601具有 该硬件部件610,也即输入模块611、路由单元612、计算单元(MCS) 613以及输出模块614, 其再次最大程度对应于图1中的微控制器101。但另外该微控制器601还与(在该例子中外 部的)用于仲裁的硬件模块630相连接。该输入数据通道602尤其是CAN-Rx线,该输出数 据通道603是CAN-Tx线。附加硬件单元630优选是外部逻辑电路,其中一旦接收到相应的 信号,那么该外部逻辑电路就中止该节点的发送。在CAN仲裁的情况下,一旦在该总线上具 有显性电平,并且自己的信息在相同的时钟单位时是隐性的,那么就例如进行这种发送中 止。该模块630例如可以作为逻辑电路通过门功能、可编程逻辑单元(PLD)或现场可变成 门阵列(FPGA)来实现。
[0090] 在图6中还示出了第二输出模块615。该第二输出模块可以通过提供计时器资源 来支持附加的仲裁硬件单元630。这些资源例如是为了等待特定比特长度或维持特定暂停 而需要的。一种替换的实施方案是,同样作为附加的硬件电路来设置该计时器资源。
[0091] 附加的仲裁硬件单元优选地可以通过可配置的逻辑装置而灵活地分配给不同的 输出模块。但是固定的分配也是可以的。
[0092] 附加的仲裁硬件单元优选地作为可编程逻辑装置(例如FPGA或CPLD)位于该微控 制器外部。但是通过这种可编程逻辑电路的集成也可以实现在该微控制器上的一种替换实 施。
[0093] 专用的仲裁硬件单元可以准备有其他的测量和分析功能。在一个优选的变化方案 中,这种CAN仲裁单元例如还识别所使用的协议是否是CAN或CAN-FD (具有灵活数据速率 的 CAN)。
[0094] 在所述的具有专用仲裁硬件单元的实施例中,首先假定,其余的方法步骤(在输入 模块中的数据输入,通过该输出模块进行的数据输出,通过该路由单元进行的路由,通过该 计算单元(MCS)进行的协议计算,必要时通过该CRC单元进行的CRC计算)继续如上所述进 行,以及其余的硬件电路(输入模块、输出模块、路由单元、计算单元(MCS)、必要时的CRC单 元)继续如前面图1所述来构建。但该专用仲裁硬件单元也可以没有问题地与具有专用输 入模块的实施例相组合。
[0095] 在另一优选的变化方案中,在前述的实施方案中另外还可以实施波特率识别。这 种波特率识别例如能够适应不同的波特率。
[0096] 所述波特率识别可以以软件或硬件来实施。在软件实现时,例如可以从该输入模 块的捕捉信息中通过该计算单元(MCS)或该微控制器的中央处理单元(CPU)来进行波特率 识别。数据的输入频率在此情况下可以被测量,并且通过参照频率的调制可以确定波特率。 为此必须分析完整的消息帧,这在软件实现中是费时的。
[0097] 在一个优选的替换实施方案中,波特率识别以硬件来被执行。这或者可以在附加 的硬件电路中来进行,或者在一个装备有相应附加功能的专用输入模块中来进行,如前(例 如在图5中)所述。与软件实现相比,利用硬件实现可以实现更快的波特率识别和波特率适 应,另外计算单元(MCS)或中央处理单元(CPU)被更小地承载。
[0098] 在图10中示出了以通用UART接口为例的以硬件来实现的波特率识别的一个相应 流程图。
[0099] 在所规定的协议中消息帧的基本构造是已知的,例如在当前例子中,已知一个消 息帧总是以具有低电平的一个起始比特开始,并以具有高电平的一个停止比特结束。在 用于确定波特率的第一步骤1001中通过相应的硬件功能数出在起始比特和停止比特之间 (也即第一高低边缘至最后的低高边缘之间)的时钟的数量。时钟数量在此优选地从时基中 来导出,其中该时基给该硬件功能提供时钟(例如来自时基单元),并且该时基小于要读出 的波特率。
[0100] 该消息帧的长度(也即比特数量)是该硬件功能所已知的。对于例如采取的协议已 知,一个消息帧具有十个比特(例如起始比特、八个数据比特、停止比特)。在第二步骤1002 中,把所确定的、从起始比特至停止比特之间所经过的时钟的数量除以一个消息帧的比特 数量(例如十)。在第三步骤1003中可以把由此所确定的波特率进行传输,例如传输至该计 算单元(MCS)或该微控制器的中央处理单元(CPU)。
[0101] 例如在要实现的UART或LIN接口的情况下,帧长度可能总是恒定的并从而可能是 已知的,而例如在CAN的情况下,消息帧的长度(也即比特数量)可以是未知的。在所述波特 率识别的一个变化方案中,在此也可以以硬件来识别波特率。例如可以确定在一个消息帧 的两个比特之间的最短时间。
[0102] 为了识别波特率,必须能够确定一个消息帧的开头和结尾。这例如可以通过设定 的时钟数量、例如三个时钟(在波特率恒定的情况下对应于固定的时间,例如150ns )针对特 定电平来进行。
【权利要求】
1. 用于在尤其运输工具的控制设备中提供至少一个通用接口的方法,其中该控制设备 具有微控制器(401),该微控制器具有中央处理单元(CPU)、至少一个非接口专用的输入模 块(411)、至少一个非接口专用的输出模块(414)、至少一个路由单元(412)、以及具有用于 处理接口专用信息的至少一个计算单元(413),并且其中所述至少一个通用接口是能被配 置的,以按照配置来提供与多个串行接口、尤其SPI、UART、LIN、CAN、PSI5、FlexRay、SENT、 I2C、MSC或Ethernet之一相对应的功能,其特征在于以下的步骤: -通过所述至少一个非接口专用的输入模块(411)接收与多个串行接口之一的协议对 应的输入数据, -该输入数据通过该路由单元(412)被传输到所述至少一个计算单元(413), -由所述至少一个计算单元(413)从该输入数据中提取第一有用数据,尤其通过从该 输入数据中去除协议的协议细节, -所述第一有用数据被提供给该中央处理单元(CPU), -由所述至少一个计算单元(413)接收该中央处理单元(CPU)的第二有用数据, -由所述至少一个计算单元(413)从该第二有用数据中生成输出数据,尤其通过给该 第二有用数据添加协议的协议细节, -该输出数据被传输到所述至少一个非接口专用的输出模块(414),其中该计算单元 (413) 从该第二有用数据中生成完整的输出消息帧来作为输出数据,并把该输出消息帧传 输到所述至少一个非接口专用的输出模块(414), -通过所述至少一个非接口专用的输出模块(414)与多个串行接口之一的协议对应地 发送该输出数据。
2. 根据权利要求1所述的方法,其中如果通过该计算单元(413)或该中央处理单元 (CPU)来触发相应的触发信号,那么所述至少一个非接口专用的输出模块(414)发送该输出 消息帧。
3. 根据权利要求1所述的方法,其中如果通过该计算单元(413)分配给该输出消息 帧的时间戳对应于非接口专用的输出模块(414)的时间信息,或者如果通过该计算单元 (413 )分配给该输出消息帧的角度戳对应于非接口专用的输出模块(414 )的角度信息,那么 所述至少一个非接口专用的输出模块(414)传输该输出消息帧。
4. 根据权利要求1至4之一所述的方法,其中该输出数据由该计算单元(413)通过该 路由单元(412)传输到所述至少一个非接口专用的输出模块(414)。
5. 根据权利要求1至4之一所述的方法,其中该输出数据由该计算单元(413)直接写 入到所述至少一个非接口专用的输出模块(414)的存储器资源中。
6. 根据权利要求1至4之一所述的方法,其中所述至少一个非接口专用的输出模块 (414) 通过直接存储器访问(DMA)来独立地加载该输出数据。
7. 根据前述权利要求之一所述的方法,其中该计算单元(413)访问第一存储器,并且 在该第一存储器中存储有协议细节,尤其与起始比特、停止比特、奇偶校验信息、控制比特 和填充比特之一有关的信息。
8. 根据权利要求7所述的方法,其中该协议细节由该中央处理单元(CPU)存储在该第 一存储器中。
9. 根据前述权利要求之一所述的方法,其中所述至少一个非接口专用的输入模块 (411)和所述至少一个非接口专用的输出模块(414)通过配置而被固定地分配给多个串行 接口之一。
10. 根据前述权利要求之一所述的方法,其中该计算单元(413)还进行较高协议层的 计算,尤其多个UART消息帧到一个LIN消息帧的转换。
11. 根据前述权利要求之一所述的方法,其中该第一有用数据被提供给该中央处理单 元(CPU),其方式是,该计算单元(413)把该第一有用数据写入到第二存储器中,并通过中 断将此通知给该中央处理单元(CPU)。
12. 根据权利要求1至10之一所述的方法,其中该第一有用数据由该计算单元(413) 通过存储器直接访问(DMA)提供给该中央处理单元(CPU)。
13. 根据前述权利要求之一所述的方法,其中该输入数据在所述至少一个非接口专用 的输入模块(411)中被分配了时间信息。
14. 根据权利要求13所述的方法,其中在所述至少一个非接口专用的输入模块(411) 中,给施加在该微控制器(401)的输入端上的该输入数据的每个边缘变换都分配时间戳。
15. 根据权利要求14所述的方法,其中通过单独地传输该输入数据的具有所分配时间 戳的每个边缘变换,所述至少一个非接口专用的输入模块(411)把该输入数据传输到该路 由单元(412)。
16. 根据权利要求14或15之一所述的方法,其中该计算单元(413)从该输入数据的具 有所分配时间戳的边缘变换中确定消息帧。
17. 根据权利要求1至13之一所述的方法,其中该输入数据的完整的输入消息帧被存 储在所述非接口专用的输入模块(511)中,并且所述完整的输入消息帧被提供给该计算单 元(513)。
18. 根据权利要求17所述的方法,其中通过所述至少一个非接口专用的输入模块 (511)借助过扫描来分析该输入消息帧,并通过根据过扫描的扫描点的电平值的比特电平 表决来确定该消息帧的比特电平。
19. 根据权利要求18所述的方法,其中在所述至少一个非接口专用的输入模块(511) 中给该输入消息帧分配时间戳。
20. 根据权利要求1至19之一所述的方法,其中针对该输入数据来执行波特率识别。
21. 控制设备的、尤其运输工具控制设备的微控制器(101),具有中央处理单元(CPU)、 至少一个非接口专用的输入模块(111 )、至少一个非接口专用的输出模块(114)、至少一个 路由单元(112),并具有用于处理接口专用信息的至少一个计算单元(113),其特征在于, 该微控制器(101)设置用于执行权利要求1至20之一所述的方法。
22. 控制设备的、尤其运输工具控制设备的微控制器(101),具有中央处理单元(CPU)、 至少一个非接口专用的输入模块(111)、至少一个非接口专用的输出模块(114)、至少一个 路由单元(112),并具有用于处理接口专用信息的至少一个计算单元(113),其特征在于, 该微控制器(113)能被配置为,使得所述至少一个非接口专用的输入模块(111)、至少一 个非接口专用的输出模块(114)、至少一个路由单元(112)以及用于处理接口专用信息的 至少一个计算单元(113)满足与多个串行接口、尤其SPI、UART、LIN、CAN、PSI5、FlexRay、 SENT、I2C、MSC或Ethernet之一相对应的功能,其中该计算单元(413)设置用于从有用数 据中生成完整的输出消息帧来作为输出数据,并将该输出消息帧传输到所述至少一个非接 口专用的输出模块(414)。
23. 根据权利要求21或22之一所述的微控制器(401),其中所述至少一个非接口专用 的输出模块(414 )具有状态自动机。
24. 根据权利要求21至23之一所述的微控制器(401),其中所述至少一个非接口专用 的输出模块(414)具有存储器,其所具有的容量用于存储所述完整的输出消息帧,尤其用于 存储与可能要实现的多个串行接口的每个的协议相对应的、完整的输出消息帧。
25. 根据权利要求21至24之一所述的微控制器(101),其中该计算单元(113)具有算 术逻辑单元(ALU)。
26. 根据权利要求21至25之一所述的微控制器(101 ),其中所述至少一个非接口专用 的输入模块(111)具有捕捉功能。
27. 根据权利要求21至26之一所述的微控制器(301),其具有单独的第一硬件电路 (315)以进行CRC计算。
28. 根据权利要求21至27之一所述的微控制器(101),其中该路由单元(112)和/或 该计算单元(113)以至少100MHz的时钟、尤其以至少200MHz的时钟来工作。
29. 根据权利要求21至28之一所述的微控制器(101),其设置用于,通过所述至少一 个非接口专用的输入模块(111)以至少1M波特的输入波特率来接收输入数据,以及通过所 述至少一个非接口专用的输出模块(114)以至少1M波特的输出波特率来发送输出数据。
30. 根据权利要求21至29之一所述的微控制器(101),其除了所述至少一个非接口专 用的输入模块(111)和所述至少一个非接口专用的输出模块(114)之外还具有至少一个接 口专用的输入模块和至少一个接口专用的输出模块。
31. 根据权利要求21至30之一所述的微控制器(201),其另外还具有计时器模块 (230),该计时器模块具有计时器输入模块(231)、计时器输出模块(234)、计时器路由单元 (232)和计时器计算单元(233)。
32. 根据权利要求31所述的微控制器(201),其中该微控制器(201)设置用于,如果 不需要所述至少一个非接口专用的输入模块(211)、所述至少一个非接口专用的输出模块 (214)、所述至少一个计算单元(213)和该路由单元(212)来满足与多个串行接口之一相对 应的功能,那么就利用所述至少一个非接口专用的输入模块(211)、所述至少一个非接口专 用的输出模块(214)、所述至少一个计算单元(213)和该路由单元(212)来执行该计时器模 块(230)的计时器功能。
33. 具有权利要求21至32之一所述的微控制器的运输工具控制设备。
【文档编号】G05B19/042GK104216312SQ201410230036
【公开日】2014年12月17日 申请日期:2014年5月28日 优先权日:2013年5月29日
【发明者】A.奥厄, E.贝克尔 申请人:罗伯特·博世有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1