用于提供通用接口的方法以及具有通用接口的微控制器的制造方法
【專利摘要】用于控制設(shè)備的、尤其用于運(yùn)輸工具控制設(shè)備的微控制器,包含有中央處理單元(CPU)、至少一個(gè)非接口專用的輸入模塊、至少一個(gè)非接口專用的輸出模塊、至少一個(gè)路由單元以及用于處理接口專用信息的至少一個(gè)計(jì)算單元。在此該微控制器可以如此來(lái)配置,使得所述至少一個(gè)非接口專用的輸入模塊、至少一個(gè)非接口專用的輸出?!缞A、至少一個(gè)路由單元以及用于處理接口專用信息的至少一個(gè)計(jì)算單元滿足與多個(gè)串行接口、尤其SPI、UART、LIN、CAN、PSI5、FlexRay、SENT、I2C、MSC或Ethernet之一相對(duì)應(yīng)的功能。
【專利說(shuō)明】用于提供通用接口的方法以及具有通用接口的微控制器
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及尤其用于對(duì)運(yùn)輸工具中的功能進(jìn)行控制的電子控制設(shè)備,這些電子控 制設(shè)備具有對(duì)外的接口,以與通信系統(tǒng)的其他用戶相通信。 現(xiàn)有技術(shù)
[0002] 運(yùn)輸工具中的控制設(shè)備通常具有串行接口,例如SPI、UART、LIN、CAN、PSI5、 FlexRay、SENT、Ethernet (以太網(wǎng))、I2C、MSC (Micro-Second-Channel,微型第二通道)等, 以與其他的控制設(shè)備、傳感器、執(zhí)行器或其他外圍設(shè)備相連接或相通信。根據(jù)現(xiàn)有技術(shù),這 些串行接口在該控制設(shè)備的微控制器中通過(guò)VHDL代碼來(lái)實(shí)施。在硬件方面,為了實(shí)施串行 接口,必須按照接口的類型來(lái)實(shí)施例如接口專用的通信控制器,其包括協(xié)議控制器、采樣單 元、存儲(chǔ)單元以及收發(fā)器(發(fā)送器-接收器)。例如在SENT和SPI的情況下不需要總線收發(fā) 器。接口專用的硬件單元(例如在SPI情況下的緩沖器、在CAN情況下的協(xié)議控制器)另外 還使得這種實(shí)施變得耗費(fèi)且不靈活。
[0003] 在W0-2006013212 A1中例如公開(kāi)了將FlexRay通信組件用于在FlexRay網(wǎng)絡(luò)中 將FlexRay通信連接與分配給FlexRay通信組件的用戶耦合的實(shí)施。具有典型串行接口 構(gòu)造的一種微控制器例如可以參見(jiàn)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] 在針對(duì)控制設(shè)備或針對(duì)這種控制設(shè)備的微控制器的不同運(yùn)輸工具應(yīng)用中,對(duì)串行 接口的類型和數(shù)量存在極其不同的要求。從而例如可以在一個(gè)應(yīng)用中提出如下的要求:一 個(gè)SPI接口、兩個(gè)LIN接口、5個(gè)CAN接口。在另一更復(fù)雜的應(yīng)用中,可能還需要其他的接 口,如FlexRay或Ethernet,或者需要更大數(shù)量的現(xiàn)有接口。為了應(yīng)對(duì)該問(wèn)題,可以采用具 有很多不同類型接口的微控制器,但是該微控制器針對(duì)大量的應(yīng)用來(lái)超裕度設(shè)計(jì),并從而 太昂貴。替換地,可以針對(duì)每種應(yīng)用來(lái)實(shí)施一種專用的微控制器,該微控制器對(duì)于每種接口 類型都恰好具有所期望的數(shù)量,但由此與標(biāo)準(zhǔn)化的期望相違背并造成了高的實(shí)施成本。另 外這兩種解決方案對(duì)于將來(lái)還未知的要求是不靈活的。總之,在運(yùn)輸工具控制設(shè)備的微控 制器中該串行接口的這種接口專用的硬件實(shí)施從而導(dǎo)致了不靈活的解決方案,這些解決方 案僅能夠耗費(fèi)地與不同的要求相匹配。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明涉及用于提供至少一個(gè)通用接口的一種方法、一種相應(yīng)的微控制器以及具 有這種微控制器的一種控制設(shè)備。
[0006] 微控制器的一種靈活結(jié)構(gòu)在此具有中央處理單元(CPU)、非接口專用的輸入模塊、 非接口專用的輸出模塊、路由單元、以及用于處理接口專用信息的計(jì)算單元。該計(jì)算單元在 此優(yōu)選地與該中央處理單元不同。該微控制器的前述電路部件形成通用接口并且可以如此 來(lái)配置,使得這些電路部件能夠按照配置而提供與多種串行接口、尤其SPI、UART、LIN、CAN、 PSI5、FlexRay、SENT、I2C、MSC 或 Ethernet 之一相對(duì)應(yīng)的功能。
[0007] 微控制器通常必須具有廣泛的應(yīng)用范圍,因?yàn)槠湓O(shè)計(jì)和制造成本高并從而不能針 對(duì)每種應(yīng)用來(lái)開(kāi)發(fā)一種獨(dú)有的微控制器。通過(guò)所建議的在微控制器中提供通用接口,在設(shè) 計(jì)微控制器時(shí)在該微控制器的不同應(yīng)用情況下所需每種類型接口的數(shù)量不必是已知的。而 是提供硬件電路,這些硬件電路按照配置而滿足特定串行接口的任務(wù)。
[0008] 在通過(guò)微控制器的硬件電路來(lái)提供通用接口的一種方法中,在用于對(duì)應(yīng)于多個(gè)串 行接口之一的一種協(xié)議來(lái)接收并處理輸入數(shù)據(jù)的基本上獨(dú)立的子方法中,所述輸入數(shù)據(jù)通 過(guò)非接口專用的輸入模塊被接收,并通過(guò)路由單元被傳輸?shù)接?jì)算單元。尤其通過(guò)從該輸入 數(shù)據(jù)中去除該協(xié)議的協(xié)議細(xì)節(jié),由該計(jì)算單元從該輸入數(shù)據(jù)中提取有用數(shù)據(jù)。第一有用數(shù) 據(jù)最后被提供給該中央處理單元(CPU )。
[0009] 在用于處理數(shù)據(jù)并用于發(fā)送輸出數(shù)據(jù)的基本上獨(dú)立的子方法中,中央處理單元的 第二有用數(shù)據(jù)被計(jì)算單元接收。由該計(jì)算單元尤其通過(guò)把該協(xié)議的協(xié)議細(xì)節(jié)添加到該第二 有用數(shù)據(jù)中而由該第二有用數(shù)據(jù)來(lái)生成輸出數(shù)據(jù)。該輸出數(shù)據(jù)通過(guò)該路由單元被傳輸?shù)椒?接口專用的輸出模塊之一上,并最后對(duì)應(yīng)于多個(gè)串行接口之一的協(xié)議通過(guò)非接口專用的輸 出模塊而被發(fā)送。
[0010] 該方法是一種特別靈活的數(shù)據(jù)處理方式,因?yàn)闉榇藳](méi)有采用接口專用的硬件單 元。與許多串行接口相對(duì)應(yīng)的許多協(xié)議的數(shù)據(jù)可以通過(guò)非接口專用的輸入和輸出模塊而被 接收和發(fā)送,并且通過(guò)配置可以在該計(jì)算單元中根據(jù)協(xié)議信息對(duì)所接收的數(shù)據(jù)進(jìn)行分析。 這能夠按照對(duì)微控制器的應(yīng)用專用的要求對(duì)應(yīng)于特定的串行接口來(lái)配置該通用接口。
[0011] 該協(xié)議細(xì)節(jié)、尤其關(guān)于起始位、停止位、奇偶校驗(yàn)信息、控制位、填充位等的信息在 此情況下例如可以通過(guò)該微控制器的中央處理單元而被存儲(chǔ)在存儲(chǔ)器中。通過(guò)所述協(xié)議細(xì) 節(jié)可以配置該通用接口、尤其為此所采用的計(jì)算單元。該計(jì)算單元訪問(wèn)該存儲(chǔ)器,并能夠讀 出與所規(guī)定的配置相對(duì)應(yīng)的協(xié)議信息。
[0012] 如果該計(jì)算單元還被應(yīng)用于更高協(xié)議層的計(jì)算,那么對(duì)于該通用接口就獲得了更 廣泛的應(yīng)用范圍。例如該計(jì)算單元可以把多個(gè)UART消息幀轉(zhuǎn)變?yōu)橐粋€(gè)LIN消息幀。
[0013] 通過(guò)該計(jì)算單元把有用數(shù)據(jù)寫(xiě)入到該中央處理單元所訪問(wèn)的存儲(chǔ)器中,并例如通 過(guò)中斷來(lái)將此通知該中央處理單元,那么就最簡(jiǎn)單地實(shí)現(xiàn)了有用數(shù)據(jù)從該計(jì)算單元到該中 央處理單元的轉(zhuǎn)發(fā)。
[0014] 在一個(gè)更復(fù)雜的、但由此給該計(jì)算單元和該中央處理單元減負(fù)的變化方案中,該 計(jì)算單元可以通過(guò)直接的存儲(chǔ)器訪問(wèn)把該有用數(shù)據(jù)提供給該中央處理單元。
[0015] 在該輸入模塊中,可以給輸入數(shù)據(jù)分配時(shí)間信息,其方式是例如在該輸入模塊的 輸入端上給每個(gè)邊緣變換加上時(shí)間戳。由此邊緣變換與時(shí)間信息相關(guān)聯(lián),這允許與輸入數(shù) 據(jù)的協(xié)議無(wú)關(guān)地記錄輸入數(shù)據(jù),使得借助計(jì)算單元能夠根據(jù)電平變換的時(shí)間信息來(lái)提取所 包含的有用數(shù)據(jù)。為此該邊緣變換連同時(shí)間戳一起可以分別由該輸入模塊通過(guò)該路由單元 被傳輸?shù)皆撚?jì)算單元。該路由單元所帶來(lái)的優(yōu)點(diǎn)是,在具有許多輸入模塊、輸出模塊和計(jì)算 單元的情況下,在它們之間也快速而可靠地進(jìn)行數(shù)據(jù)傳輸。
[0016] 在替換的變化方案中,該輸入模塊可以把完整的消息進(jìn)行存儲(chǔ),并(優(yōu)選通過(guò)該路 由單元)提供給該計(jì)算單元。因?yàn)樵诖瞬挥脝为?dú)地傳輸每個(gè)具有時(shí)間戳的電平變換,所以該 路由單元被減負(fù),并且這種傳輸不再?gòu)?qiáng)烈地由該路由單元的速度和承載來(lái)確定。
[0017] 在該替換的變化方案中,整個(gè)消息可以通過(guò)該輸入模塊而被分配時(shí)間信息。該計(jì) 算單元或中央處理單元(CPU)再次可以使用該時(shí)間信息來(lái)排列或處理該輸入數(shù)據(jù)。
[0018] 另外,通過(guò)該輸入模塊能夠?qū)υ撦斎霐?shù)據(jù)的內(nèi)容進(jìn)行特別可靠的識(shí)別,如果輸入 數(shù)據(jù)通過(guò)過(guò)掃描而被分析并通過(guò)掃描點(diǎn)電平值的多數(shù)協(xié)調(diào)一致來(lái)為輸入數(shù)據(jù)的每個(gè)比特 確定比特電平的話。
[0019] 在用于輸出數(shù)據(jù)的一種方法中-該方法類似于在輸入模塊中對(duì)邊緣變換加上 時(shí)間戳,通過(guò)由計(jì)算單元把有用數(shù)據(jù)轉(zhuǎn)換為具有所分配的時(shí)間戳的邊緣變換,該計(jì)算單元 在該中央處理單元一側(cè)來(lái)處理有用數(shù)據(jù)。為此該計(jì)算單元必須針對(duì)應(yīng)當(dāng)用來(lái)輸出輸出數(shù)據(jù) 的邊緣變換的間距來(lái)識(shí)別相應(yīng)的波特率,也即在輸出時(shí)的數(shù)據(jù)傳輸速度。具有時(shí)間戳的每 個(gè)邊緣變換都單獨(dú)通過(guò)一個(gè)路由單元而被傳輸?shù)揭粋€(gè)輸出模塊。在那里通過(guò)與時(shí)間信息的 比較把每個(gè)邊緣變換在所期望的時(shí)間施加于該輸出上。這使得能夠利用非接口專用的輸出 模塊來(lái)進(jìn)行靈活的且與協(xié)議無(wú)關(guān)的數(shù)據(jù)輸出。
[0020] 替換地,也可以在輸出時(shí)由該計(jì)算單元向該輸出模塊提供完整的消息幀,而不是 具有時(shí)間戳的各個(gè)電平變換。然后例如通過(guò)該計(jì)算單元或該中央處理單元(CPU)的觸發(fā),或 者在整個(gè)消息巾貞的時(shí)間戳與輸出模塊中的時(shí)間信息相一致時(shí),進(jìn)行整個(gè)消息巾貞的輸出。由 此該路由單元被減負(fù),并且該路由單元的負(fù)載和速度對(duì)發(fā)送速度的限制更少。
[0021] 該計(jì)算單元例如具有算術(shù)邏輯單元,優(yōu)選地該算術(shù)邏輯單元作為多通道定序器實(shí) 現(xiàn)。
[0022] 在一種微控制器中,非接口專用的輸入模塊具有捕捉功能和/或非接口專用的輸 出模塊具有比較功能,該微控制器可以提供特別靈活和簡(jiǎn)單可實(shí)現(xiàn)的通用接口。利用更少 的資源就可以實(shí)現(xiàn)高得多的微控制器靈活性。
[0023] 該微控制器的應(yīng)用可能性可以通過(guò)其他單獨(dú)的硬件電路來(lái)加以擴(kuò)展,例如用于 CRC計(jì)算或者在總線仲裁期間的計(jì)算(例如在CAN情況下),這些硬件電路或者是該微控制 器的組成部分或者與該微控制器相連。通過(guò)這種在特定功能上優(yōu)化的硬件單元,其余不太 專用的模塊、尤其該微控制器的計(jì)算單元被減負(fù)。只有利用這種附加的單元才以所需的可 靠性和速度來(lái)實(shí)現(xiàn)該微控制器的一些計(jì)算并從而實(shí)現(xiàn)一些應(yīng)用。
[0024] 為了使該通用接口在一定范疇中提供相應(yīng)的、如擴(kuò)展到許多應(yīng)用中(尤其汽車領(lǐng) 域)的串行接口,該路由單元和/或該計(jì)算單元應(yīng)該以至少100MHz的時(shí)鐘、尤其以至少 200MHz的時(shí)鐘被驅(qū)動(dòng),并從而輸入數(shù)據(jù)能夠以至少1M波特的輸入波特率被接收,以及輸出 數(shù)據(jù)能夠以至少1M波特的輸出波特率被發(fā)送。
[0025] 不僅具有專用的以硬件來(lái)實(shí)現(xiàn)的接口而且具有包括非接口專用硬件的通用接口 的微控制器是應(yīng)用非常靈活的并且盡管如此還是特別有利的,所述非接口專用硬件能夠被 配置以借助軟件計(jì)算附加地實(shí)現(xiàn)所期望的串行接口。從而對(duì)于該微控制器的已知的應(yīng)用情 況可以在應(yīng)用之間固定地實(shí)施某種接口交集,而在應(yīng)用之間不同的接口要求或還未知的接 口要求利用通用接口來(lái)涵蓋。
[0026] 可以把在微控制器中實(shí)現(xiàn)通用接口的硬件電路與一個(gè)或多個(gè)計(jì)時(shí)器模塊相組合。 如果在硬件塊之一中有相應(yīng)的容量可用,那么接口硬件和計(jì)時(shí)器模塊也可以在執(zhí)行任務(wù)時(shí) 靈活地相互支持。
[0027] 所述的微控制器尤其可以良好地應(yīng)用在控制設(shè)備中,尤其在汽車領(lǐng)域。在此在同 時(shí)存在嚴(yán)格的成本預(yù)定的情況下,對(duì)接口的要求是特別高的。
【專利附圖】
【附圖說(shuō)明】
[0028] 下面參照附圖并借助實(shí)施例來(lái)詳細(xì)解釋本發(fā)明。其中: 圖1示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路, 圖2示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路以及計(jì)時(shí)器 模塊, 圖3示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路以及具有用 于CRC計(jì)算的專用的硬件電路, 圖4示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路以及具有專 用的輸出模塊, 圖5示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路以及專用的 輸入模塊和附加的存儲(chǔ)器, 圖6示意示出了一種示例微控制器,其具有用于實(shí)現(xiàn)通用接口的硬件電路以及用于支 持仲裁的電路, 圖7示意示出了具有邊緣變換的兩個(gè)示例信號(hào)曲線,以解釋CAN仲裁, 圖8示意示出了用于通過(guò)通用接口來(lái)接收數(shù)據(jù)的一種方法的示例流程, 圖9示意示出了用于通過(guò)通用接口來(lái)發(fā)送數(shù)據(jù)的一種方法的示例流程, 圖10示意示出了用于波特率識(shí)別的一種方法的示例流程,以及 圖11示意示出了通過(guò)單獨(dú)的CRC單元來(lái)進(jìn)行CRC計(jì)算的數(shù)據(jù)傳輸示例流程。
【具體實(shí)施方式】
[0029] 概念"串行接口 "在下文中理解為用于在設(shè)備之間進(jìn)行串行數(shù)據(jù)交換的一種連 接。串行數(shù)據(jù)傳輸?shù)奶卣魇瞧渲型ㄟ^(guò)一個(gè)或多個(gè)導(dǎo)線來(lái)依次傳輸比特的數(shù)據(jù)傳輸。屬于運(yùn) 輸工具中所使用串行接口的例如是SPI、UART、LIN、CAN、PSI5、FlexRay、SENT、I2C、MSC和 Ethernet。
[0030] 在 W0-2011120823 A1 中公開(kāi)了計(jì)時(shí)器模塊 "Generic Timer Module (GTM),通用 計(jì)時(shí)器模塊"。其中硬件子模塊設(shè)置于中央路由單元(稱為"Advanced Routing Unit (ARU), 高級(jí)路由單元")周圍。該中央路由單元在不同的硬件子模塊之間對(duì)數(shù)據(jù)進(jìn)行路由,在此優(yōu) 選地采用循環(huán)調(diào)度("Round Robin,輪詢")來(lái)進(jìn)行確定性仲裁。也即,源模塊在最大循環(huán) 時(shí)間之內(nèi)被操作,并且其數(shù)據(jù)通過(guò)地址信息而被路由到相應(yīng)的目標(biāo)模塊。該計(jì)時(shí)器模塊從 而能夠降低微控制器的CPU的中斷負(fù)載,例如在用于控制運(yùn)輸工具中功能的電子控制設(shè)備 (E⑶)的微控制器。該計(jì)時(shí)器模塊具有作為硬件子模塊的輸入模塊、所謂的"Timer Input Modules (--Μ),計(jì)時(shí)器輸入模塊"以及輸出模塊、所謂的"Timer Output Modules (Τ0Μ),計(jì) 時(shí)器輸出模塊"或者還有"ARU-connected Timer Output Modules(ATOM), ARU連接的計(jì)時(shí) 器輸出模塊"等。除了該路由單元(ARU)、該輸入模塊(--Μ)和該輸出模塊(ATOM)之外,該 計(jì)時(shí)器模塊還具有作為計(jì)算單元的多通道定序器(Multi Channel Sequencer)。
[0031] 該計(jì)時(shí)器模塊采用了 "Capture/Compare,捕捉/比較"基本原理。在此情況下進(jìn) 入該輸入單元(TIM)的信號(hào)與對(duì)應(yīng)于其到達(dá)的時(shí)間戳相關(guān)聯(lián)。該輸入單元(TIM)在此例如 從時(shí)基單元(time base unit, TBU)獲得相應(yīng)的時(shí)間說(shuō)明。該時(shí)間戳的功能對(duì)應(yīng)于"捕捉/ 比較"的"捕捉"。該時(shí)間說(shuō)明由計(jì)算單元或由中央處理單元添加以用于信號(hào)的處理和確定 優(yōu)先級(jí)。應(yīng)該通過(guò)該計(jì)時(shí)器模塊的輸出單元(ATOM)來(lái)發(fā)送的信號(hào)例如由進(jìn)行處理的計(jì)算 單元(CPU, MCS)而同樣設(shè)置有時(shí)間戳。在該計(jì)時(shí)器模塊的輸出模塊(ATOM)中,該信號(hào)的時(shí) 間戳與當(dāng)前的時(shí)間說(shuō)明相比較。該輸出模塊例如同樣從時(shí)基單元來(lái)獲得該時(shí)間說(shuō)明。如果 要輸出的信號(hào)的時(shí)間戳對(duì)應(yīng)于當(dāng)前的時(shí)間,那么該信號(hào)就被發(fā)送。該功能對(duì)應(yīng)于"捕捉/比 較"的"比較"。代替所述的時(shí)基,也可以通過(guò)輸入單元和輸出單元來(lái)實(shí)現(xiàn)角度同步的"捕捉 /比較"功能。這些功能在運(yùn)輸工具中可能是需要的,因?yàn)榻邮者^(guò)程或發(fā)送過(guò)程相對(duì)于當(dāng)前 發(fā)動(dòng)機(jī)角度的角度位置是特別有意義的。例如進(jìn)入該輸入單元的信號(hào)可以設(shè)置有角度戳, 要輸出的消息可以在確定的角度點(diǎn)被發(fā)送。
[0032] 該計(jì)算單元或數(shù)據(jù)處理單元"多通道定序器"優(yōu)選地作為子模塊來(lái)實(shí)現(xiàn),其具有管 道級(jí)、算術(shù)邏輯單元(ALU)、解碼器和至RAM存儲(chǔ)器單元的連接。在計(jì)時(shí)器模塊中也可以采 用多個(gè)多通道定序器。該輸入單元優(yōu)選地作為硬件組件來(lái)實(shí)現(xiàn),其具有鎖存器和觸發(fā)器以 及至?xí)r間和/或角度提供單元的連接。該輸出單元優(yōu)選地作為硬件組件來(lái)實(shí)現(xiàn),其具有例 如構(gòu)成寄存器的鎖存器和觸發(fā)器、以及至?xí)r間和/或角度提供單元的連接。與時(shí)間相關(guān)的 功能的時(shí)基在此可以由該微控制器(或者其中央處理單元(CPU))的計(jì)算器時(shí)鐘來(lái)導(dǎo)出,與 角度相關(guān)的功能的角度基準(zhǔn)可以通過(guò)DPLL (digital phase-locked loop,數(shù)字鎖相環(huán))來(lái) 實(shí)現(xiàn)。
[0033] 對(duì)于該計(jì)時(shí)器模塊、尤其該計(jì)時(shí)器模塊的所述組成部分ARU、MCS、--Μ、ATOM、TBU 的其他功能,參見(jiàn)W0 2011120823 Al。W0 2011120823 A1的相應(yīng)說(shuō)明部分由此通過(guò)參考而被 包含在本申請(qǐng)中。
[0034] 依據(jù)已知的計(jì)時(shí)器模塊的功能,本發(fā)明的中心方面是在微控制器中提供通用串行 接口,尤其用于在運(yùn)輸工具控制設(shè)備中的應(yīng)用。為此或者可以重新配置已在該微控制器中 集成的相應(yīng)計(jì)時(shí)器模塊的單元,或者在該微控制器中集成專用于該應(yīng)用的單元。在此例如 可以采用該輸入單元(--Μ)和/或輸出單元(Τ0Μ,ATOM)的"捕捉"和/或"比較"功能, 以通用地模擬專用的接口輸出端和接口輸出端。由計(jì)算單元、例如多通道定序器(multi channel sequencer, MCS)來(lái)支持輸入單元和輸出單元,其中該定序器執(zhí)行計(jì)算以實(shí)現(xiàn)接 口。為了在輸入模塊、輸出模塊和計(jì)算單元之間分配數(shù)據(jù),優(yōu)選地采用了路由單元。在下文 中所述的模塊-輸入模塊、輸出模塊、路由單元和計(jì)算單元在此優(yōu)選地具有上文相應(yīng)單元 --Μ、A(T0M)、ARU以及MCS的針對(duì)計(jì)時(shí)器模塊"GTM"所述的功能。但是用于實(shí)現(xiàn)通用接口 的硬件電路或具有這種硬件電路的微控制器由于其他的要求(例如路由和處理的速度)而 與已知的計(jì)時(shí)器模塊不同。在此優(yōu)選地除上述的計(jì)時(shí)器子模塊功能之外,在該微控制器的 硬件中還進(jìn)行變化,但至少必須通過(guò)配置把相應(yīng)的計(jì)時(shí)器硬件組件與變化的任務(wù)和要求相 匹配,以能夠按照本發(fā)明而被使用。
[0035] 在圖1中示意示出了一種電路構(gòu)造,以在微控制器中實(shí)現(xiàn)通用的串行接口。
[0036] 該微控制器101在此具有一組硬件電路110,這些硬件電路可以配置以提供特定 串行接口的功能。硬件部件110包含有輸入模塊111,該輸入模塊與輸入數(shù)據(jù)通道102相連 接。該輸入數(shù)據(jù)通道102典型地是一種電纜連接的通信連接。該輸入模塊111與路由單元 112相連接。該路由單元112除了該輸入模塊111之外還與計(jì)算單元113和輸出模塊114 相連接。該輸出模塊114與輸出數(shù)據(jù)通道103相連接。該輸出數(shù)據(jù)通道103同樣典型地是 電纜連接的通信連接。該輸入數(shù)據(jù)通道103和該輸出數(shù)據(jù)通道104是具有特定協(xié)議的通信 系統(tǒng)的組成部分,如此使得非接口專用的硬件部件111、112、113、114必須如此來(lái)被配置, 使得它們提供相應(yīng)接口的功能,該接口能夠處理所述特定協(xié)議的數(shù)據(jù)。例如該輸入數(shù)據(jù)通 道102可以是UART接口的Rx輸入,該輸出數(shù)據(jù)通道103是UART接口的Tx輸出。該硬件 部件111、112、113、114在該例子中必須如此來(lái)被配置,使得它們模擬UART接口。
[0037] 該輸入模塊111和該輸出模塊114是非接口專用的硬件電路,也即它們可以處理 根據(jù)不同協(xié)議結(jié)構(gòu)構(gòu)建的、不同串行接口的數(shù)據(jù)。該計(jì)算單元113應(yīng)該與該微控制器的中 央處理單元(CPU)不同,并在下文中為了區(qū)分而用MCS來(lái)表示,因?yàn)樵谠撐⒖刂破鞯囊粋€(gè)優(yōu) 選實(shí)施方案中該計(jì)算單元(MCS)是多通道定序器。該計(jì)算單元(MCS)的其他硬件實(shí)施同樣 也是可以的,優(yōu)選地同樣具有算術(shù)邏輯單元(ALU)。
[0038] 該路由單元112時(shí)分復(fù)用地連接模塊-輸入模塊111、輸出模塊114以及計(jì)算單元 (MCS)113。
[0039] 圖1非常簡(jiǎn)化地示出了該微控制器101。當(dāng)然這種微控制器101具有許多其他的 在此未示出的組成部分,其中包括至少一個(gè)中央處理單元(CPU),該中央處理單元可以在該 微控制器中執(zhí)行數(shù)據(jù)處理、計(jì)算和配置。另外該微控制器101還優(yōu)選地包含有多個(gè)這樣的 輸入模塊111和輸出模塊114。按照應(yīng)用,該微控制器也可以具有多個(gè)計(jì)算單元(MCS)113。 許多這種模塊111、113、114可以與一個(gè)唯一的路由單元112相連接。對(duì)于非常復(fù)雜的應(yīng)用, 在這樣的微控制器101中也可以采用更多的路由單元112。
[0040] 在當(dāng)前微控制器的一個(gè)特別優(yōu)選的變化方案中,該微控制器具有多個(gè)"真正的"、 也即對(duì)應(yīng)于現(xiàn)有技術(shù)固定以硬件實(shí)現(xiàn)的串行接口,以及具有多個(gè)"通用的"如圖1所述硬件 電路形式的接口。由此可以優(yōu)選地如同以前一樣有利地以硬件來(lái)固定地實(shí)現(xiàn)特定接口類型 的最少數(shù)量的所需接口,但在該微控制器的不同應(yīng)用之間不同的接口可以作為通用接口來(lái) 設(shè)置,并從而能夠?qū)?yīng)于相應(yīng)的應(yīng)用而以軟件來(lái)加以配置。從而能夠在降低待保持的接口 數(shù)量的情況下實(shí)現(xiàn)該微控制器的靈活應(yīng)用。
[0041] 在圖8中示意示出了用于實(shí)現(xiàn)接收消息的通用串行接口的一種方法的流程圖。
[0042] 在第一步驟(801)中,在微控制器的輸入模塊(例如圖1的111)中,數(shù)字?jǐn)?shù)據(jù)從微 控制器外部作為比特而被接收。在此在該輸入模塊處施加有輸入信號(hào)。該輸入信號(hào)以與要 模擬的串行接口相對(duì)應(yīng)的一種協(xié)議而出現(xiàn)。在步驟802中,所接收數(shù)據(jù)比特之間的邊緣變 換在該輸入模塊中分別被加上時(shí)間戳(捕捉功能)。為此在該輸入模塊中檢測(cè)該時(shí)間戳,其 中在該時(shí)間戳處在該輸入模塊的輸入端上的管腳狀態(tài)、也即邊緣發(fā)生變化。該輸入模塊例 如可以從時(shí)基單元來(lái)獲得用于加上時(shí)間戳所需的時(shí)間信息。在步驟803中,如此確定的數(shù) 據(jù)由該輸入模塊傳輸?shù)皆撐⒖刂破鞯穆酚蓡卧?例如圖1中的112)。為此傳輸在管腳狀態(tài) 發(fā)生變化時(shí)的邊緣變換連同時(shí)間戳,其中在該時(shí)間戳處還發(fā)生其他的邊緣。在步驟804中, 該路由單元再次把該信息傳輸?shù)皆撐⒖刂破鞯挠?jì)算單元(MCS,例如圖1中的113)。
[0043] 在步驟805中,該計(jì)算單元(MCS)處理對(duì)應(yīng)于該輸入模塊中的多次捕捉事件而作 為該路由單元側(cè)多次單獨(dú)的傳輸而到達(dá)該計(jì)算單元的信息。在此該計(jì)算單元(MCS)由所接 收的比特流(也即帶有時(shí)間戳的邊緣變換)來(lái)重建所接收的信號(hào)。另外該計(jì)算單元(MCS)檢 驗(yàn)該信號(hào),并對(duì)應(yīng)于當(dāng)前的協(xié)議來(lái)去除控制比特(例如(多個(gè))起始比特、(多個(gè))停止比特、 (多個(gè))奇偶校驗(yàn)比特、(多個(gè))填充比特)。該計(jì)算單元(MCS)優(yōu)選從本地的、它所訪問(wèn)的易失 存儲(chǔ)器中獲取用于該處理的信息(也即涉及哪種協(xié)議、或者如何構(gòu)建該協(xié)議消息的信息)。 這些信息例如可以由該微控制器的中央處理單元(CPU)從非易失存儲(chǔ)器(例如閃存)被傳輸 到此。在該微控制器啟動(dòng)時(shí),優(yōu)選地該輸入模塊和還要進(jìn)行闡述的輸出模塊通過(guò)該中央處 理單元(CPU)而被固定分配特定消息協(xié)議,并且關(guān)于此的信息以及相應(yīng)的協(xié)議信息被存儲(chǔ) 在易失的存儲(chǔ)器中,以能夠由該計(jì)算單元(MCS)訪問(wèn)。
[0044] 在一個(gè)可選的步驟806中,該計(jì)算單元(MCS)可以執(zhí)行實(shí)施其他的處理步驟和計(jì) 算,例如更高協(xié)議層的計(jì)算。例如可以把多個(gè)UART幀變換為一個(gè)LIN幀,或者執(zhí)行各種信 號(hào)計(jì)算。
[0045] 在步驟807中,該計(jì)算單元(MCS)把所處理過(guò)的信息提供給該微控制器的中央處 理單元(CPU)。優(yōu)選地該信息被存儲(chǔ)在存儲(chǔ)器(例如RAM)中,并通知該中央處理單元(CPU) (例如通過(guò)中斷或者通過(guò)DMA通道的觸發(fā))。在此該消息除了有用數(shù)據(jù)之外例如還具有其他 的信息,例如在CAN消息情況下的標(biāo)識(shí)符。
[0046] 在步驟808中,該中央處理單元(CPU)最后對(duì)所接收的信息進(jìn)行處理。
[0047] 在圖9中示意示出了用于實(shí)現(xiàn)發(fā)送消息的通用串行接口的一種方法的流程圖。
[0048] 在步驟901中,微控制器的中央處理單元(CPU)把一個(gè)信號(hào)(必要時(shí)具有標(biāo)識(shí)符) 提供給計(jì)算單元(MCS,例如圖1中的113)。在步驟901中,在該計(jì)算單元(MCS)中對(duì)該信號(hào) 執(zhí)行處理。由該數(shù)字信號(hào)的比特來(lái)計(jì)算邊緣變換的曲線,并給邊緣變換設(shè)置時(shí)間說(shuō)明。對(duì) 于在邊緣變換之間正確的時(shí)間間隔,該計(jì)算單元(MCS)需要與要使用的波特率有關(guān)的信息。 另外還應(yīng)添加與要使用的協(xié)議相對(duì)應(yīng)的協(xié)議信息,例如控制比特,象(多個(gè))起始比特、(多 個(gè))停止比特、(多個(gè))奇偶校驗(yàn)比特、(多個(gè))填充比特。該計(jì)算單元(MCS)再次優(yōu)選地從本 地的、它所訪問(wèn)的易失存儲(chǔ)器中獲取用于該處理的信息(也即涉及哪種協(xié)議、或者如何構(gòu)建 該協(xié)議消息的信息)。該信息例如可以由該微控制器的中央處理單元(CPU)從非易失存儲(chǔ) 器(例如閃存)被傳輸?shù)酱恕?br>
[0049] 在步驟902中,如此所獲得的數(shù)據(jù)由該計(jì)算單元(MCS)轉(zhuǎn)發(fā)到路由單元(例如在圖 1中的112)。在隨后的步驟903中,該數(shù)據(jù)由該路由單元路由到預(yù)定的輸出單元(例如圖1 中的114)。
[0050] 該輸出單元從而獲得要作為邊緣變換發(fā)送的數(shù)據(jù),連同與以下時(shí)間點(diǎn)有關(guān)的信 息,在該邊緣上的邊緣變換應(yīng)當(dāng)在所述時(shí)間點(diǎn)處被施加到輸出端上,并從而發(fā)送所期望的 消息。在步驟904中,該輸出單元為此把所獲得的時(shí)間信息與要提供的時(shí)間信息相比較α匕 較功能)。該時(shí)間信息例如可以通過(guò)時(shí)基單元來(lái)加以提供。最后在該時(shí)間信息與分配給隨 后邊緣變換的時(shí)間點(diǎn)相一致的情況下,該輸出單元就把該邊緣變換施加在輸出端上,并從 而把所期望的數(shù)據(jù)作為比特流以預(yù)定的波特率并按照與要模擬的串行接口相對(duì)應(yīng)的消息 協(xié)議來(lái)發(fā)送。在該實(shí)施變化方案中,分別針對(duì)每個(gè)邊緣變換連同時(shí)間信息單獨(dú)地從該計(jì)算 單元(MCS)通過(guò)該路由單元傳輸?shù)皆撦敵瞿K。該輸出模塊可以如此來(lái)設(shè)置,使得當(dāng)之前 所接收的與時(shí)間信息相對(duì)應(yīng)的邊緣變換已經(jīng)被發(fā)送或已經(jīng)被施加在輸出端上時(shí),該輸出模 塊才準(zhǔn)備接收另一邊緣變換連同時(shí)間信息。
[0051] 不同的配置都可以用于硬件實(shí)現(xiàn)該通用串行接口。一方面,微控制器可以具有諸 如前述"通用計(jì)時(shí)器模塊"的計(jì)時(shí)器模塊,并還具有如圖1所述的硬件電路。在這種配置中, 無(wú)論要實(shí)現(xiàn)什么接口,該計(jì)時(shí)器模塊都可以滿足它所承擔(dān)的任務(wù)。該接口功能通過(guò)該微控 制器的附加硬件電路來(lái)提供。在這種配置中,只要該硬件電路沒(méi)有由于接口功能而滿載,尤 其只要相應(yīng)的輸入和輸出模塊沒(méi)有被分配接口功能,那么可以通過(guò)配置而優(yōu)選地把計(jì)時(shí)器 功能轉(zhuǎn)移到該附加硬件電路上。在一個(gè)專用的變化方案中,只要該計(jì)時(shí)器模塊為此具有足 夠空閑的容量和足夠的硬件設(shè)計(jì)并為此被配置,那么該計(jì)時(shí)器模塊(或其硬件單元)也可以 承擔(dān)該附加硬件電路的接口功能。
[0052] 在圖2中示出了這樣一種硬件實(shí)施方案。在此該微控制器201具有硬件電路210, 該硬件電路對(duì)應(yīng)于圖1中的硬件電路11〇(輸入數(shù)據(jù)通道202、輸出數(shù)據(jù)通道203、輸入模塊 211、輸出模塊214、路由單元212、計(jì)算單元(MCS)213)。另外該微控制器201還具有計(jì)時(shí)器 模塊230,該計(jì)時(shí)器模塊具有計(jì)時(shí)器輸入模塊231、計(jì)時(shí)器輸出模塊234、路由單元232以及 計(jì)算單元(MCS) 233。該計(jì)時(shí)器輸入模塊231與該信號(hào)輸入端222以及該路由單元232相 連接。該計(jì)時(shí)器輸出模塊234與該信號(hào)輸出端223以及該路由單元232相連接。該路由單 元232另外還與該計(jì)算單元(MCS) 233相連接。該計(jì)時(shí)器模塊230例如可以通過(guò)前述的計(jì) 時(shí)器模塊-"通用計(jì)時(shí)器模塊"來(lái)實(shí)現(xiàn)。
[0053] 在另一變化方案中,硬件單元如圖1所述不僅可以承擔(dān)計(jì)時(shí)器功能,而且可以承 擔(dān)接口功能。這種硬件單元與前述的通用計(jì)時(shí)器模塊相比優(yōu)選地具有一個(gè)或多個(gè)路由單 元,該路由單元以更高的頻率被驅(qū)動(dòng),并且對(duì)每個(gè)路由單元具有少量的模塊,以如實(shí)現(xiàn)通用 串行接口所需那樣提高服務(wù)率并能夠?qū)崿F(xiàn)更高的波特率。例如路由單元和計(jì)算單元(MCS) 可以不是以80MHz被驅(qū)動(dòng),而是以從100MHz開(kāi)始、優(yōu)選從200MHz開(kāi)始的頻率被驅(qū)動(dòng)。優(yōu) 選地路由單元和計(jì)算單元(MCS)的頻率如此來(lái)設(shè)置,使得能夠?qū)崿F(xiàn)具有1M波特或更高的接 □。
[0054] 在這兩種變化方案中,通過(guò)可能在接口功能與計(jì)時(shí)器功能之間的相互轉(zhuǎn)化而獲得 了靈活性。例如在具有微控制器的控制設(shè)備中的一種應(yīng)用中,在把計(jì)時(shí)器/接口模塊與16 個(gè)輸出模塊相組合利用的情況下,可以為控制發(fā)動(dòng)機(jī)的八個(gè)汽缸而提供計(jì)時(shí)器功能。為此 例如可以采用具有比較功能的八個(gè)輸出模塊以控制點(diǎn)火,并采用具有比較功能的八個(gè)輸出 模塊以分別控制一個(gè)汽缸的噴油。如果在另一應(yīng)用中采用具有組合的計(jì)時(shí)器/接口模塊的 微控制器來(lái)控制具有四個(gè)汽缸的發(fā)動(dòng)機(jī),那么剛才所述的16個(gè)輸出模塊中的八個(gè)不需要 被用于關(guān)于控制汽缸的計(jì)時(shí)器功能,并從而可以用于模擬例如八個(gè)串行接口的輸出信號(hào)。
[0055] 按照要模擬的串行接口的類型,除了前述的模塊和單元之外還可能需要其他的硬 件組件。
[0056] 例如對(duì)于特定的協(xié)議還必須執(zhí)行CRC計(jì)算,例如對(duì)于PSI5或CAN。在CRC(Cyclic Redundancy Check,循環(huán)冗余校驗(yàn))情況下針對(duì)數(shù)據(jù)來(lái)確定一個(gè)校驗(yàn)值,并在傳輸之后根據(jù) 所傳輸?shù)臄?shù)據(jù)來(lái)校驗(yàn)該校驗(yàn)值,以識(shí)別傳輸錯(cuò)誤或存儲(chǔ)器錯(cuò)誤。所實(shí)施的計(jì)算單元(MCS)對(duì) 于這種計(jì)算類型并不是最佳的,并且在必要時(shí)必須被裝備更高的計(jì)算功率。此外在具有多 個(gè)計(jì)算單元(MCS)的硬件電路的情況下,每個(gè)計(jì)算單元(MCS)將承載這種附加計(jì)算。另外 CRC計(jì)算在一些協(xié)議情況下必須非??焖俚乇粓?zhí)行,以能夠在必要時(shí)觸發(fā)協(xié)議中的動(dòng)作,例 如錯(cuò)誤消息幀。
[0057] 因此,出于面積和性能的原因,在一個(gè)唯一的模塊中來(lái)執(zhí)行CRC計(jì)算是有利的。在 前述的用于模擬串行接口的硬件電路的一種優(yōu)選擴(kuò)展方案中,這些硬件電路相應(yīng)地另外還 具有單獨(dú)的單元來(lái)計(jì)算CRC信息。在具有多個(gè)計(jì)算單元(MCS)的硬件電路的情況下,該CRC 校驗(yàn)單元優(yōu)選地為多個(gè)或所有的計(jì)算單元(MCS)來(lái)集中這行這種計(jì)算。
[0058] 附加的CRC單元對(duì)于具有高速度要求的協(xié)議也能夠足夠快地提供CRC計(jì)算和CRC 比較。該CRC單元在此優(yōu)選地至少執(zhí)行CRC校驗(yàn)值的計(jì)算,必要時(shí)還執(zhí)行CRC校驗(yàn)值的校 驗(yàn)。如果一個(gè)CRC校驗(yàn)值通過(guò)該CRC單元被識(shí)別為不正確,那么就可以優(yōu)選地通過(guò)該計(jì)算 單元(MCS)促使重新進(jìn)行傳輸。
[0059] 該CRC校驗(yàn)單元優(yōu)選地作為硬件邏輯電路來(lái)實(shí)現(xiàn),例如其為此可以具有X0R邏輯 和移位寄存器。對(duì)此的替換是以軟件利用(例如小的附加的)計(jì)算單元的計(jì)算來(lái)實(shí)現(xiàn)。
[0060] 在圖3中示出了一種硬件電路,其具有這樣的附加的CRC單元。該微控制器301具 有該硬件模塊310、也即輸入模塊311、路由單元312、計(jì)算單元(MCS) 313和輸出模塊314, 其最大程度對(duì)應(yīng)于圖1中的微控制器101。數(shù)據(jù)輸入通道302和數(shù)據(jù)輸出通道303分別與 輸入模塊311以及輸出通道314相連接。除了圖1中的微控制器101之外,微控制器301 還具有CRC單元315,該CRC單元在所示的實(shí)施方案中與該路由單元312相連接。
[0061] CRC值的計(jì)算優(yōu)選地基于多項(xiàng)式除法。從而該CRC單元應(yīng)該能夠至少在該微控制 器啟動(dòng)時(shí)通過(guò)參數(shù)來(lái)加以配置,如此使得能夠?qū)崿F(xiàn)不同的多項(xiàng)式。例如一個(gè)多項(xiàng)式b7*x T+b 6*x6+b5*x5+b4*x4+b3*x3+b2*x 2+bl*x1+b0*xQ 可以通過(guò)配置參數(shù) b0 至 b7 來(lái)加以配置。為了 能夠支持具有不同CRC多項(xiàng)式的不同接口,一個(gè)CRC單元或者必須能夠靈活地(也即在運(yùn) 行時(shí))被重新配置,或者必須設(shè)置多個(gè)CRC單元。
[0062] 在圖11中示出了利用單獨(dú)的CRC單元的CRC計(jì)算而進(jìn)行的數(shù)據(jù)傳輸流程。在此 情況下闡述了從所接收數(shù)據(jù)中計(jì)算CRC值的例子。
[0063] 在第一步驟1101中,該CRC單元通過(guò)該計(jì)算單元(MCS)或者該微控制器的中央處 理單元(CPU)來(lái)加以配置。因?yàn)橥ǔP枰槍?duì)每個(gè)接口來(lái)計(jì)算不同的多項(xiàng)式,所以需要進(jìn) 行配置。如前所述,這些多項(xiàng)式可以通過(guò)配置參數(shù)來(lái)加以確定。因此在用于多個(gè)通用串行 接口的CRC計(jì)算的CRC模塊中,只要應(yīng)該不是為同樣的接口來(lái)這些兩次依次相鄰的計(jì)算, 那么在每次計(jì)算之前都需要進(jìn)行這種配置。CRC單元的配置例如也可以通過(guò)如下方式來(lái)進(jìn) 行,即該CRC單元訪問(wèn)具有不同多項(xiàng)式的表格,獲得與該表格中的記錄相對(duì)應(yīng)的索引,并根 據(jù)該記錄來(lái)引用該多項(xiàng)式。
[0064] 在第二步驟1102中,該CRC模塊接收數(shù)據(jù),其中應(yīng)該對(duì)這些數(shù)據(jù)執(zhí)行CRC計(jì)算。 該數(shù)據(jù)例如是具有CRC信息的輸入數(shù)據(jù),所述CRC信息已由該輸入模塊接收并被傳輸?shù)皆?計(jì)算單元(MCS)。在第三步驟1103中在該CRC單元中來(lái)執(zhí)行CRC計(jì)算。在第四步驟1104 中,CRC計(jì)算(CRC校驗(yàn)值計(jì)算以及必要時(shí)的校驗(yàn))的結(jié)果由該CRC模塊發(fā)送到該計(jì)算單元 (MCS) (CRC校驗(yàn)值和/或CRC校驗(yàn)的結(jié)果)。優(yōu)選地該數(shù)據(jù)的傳輸分別通過(guò)該路由單元從 該計(jì)算單元(MCS)到該CRC單元以及從該CRC單元到該計(jì)算單元(MCS)來(lái)進(jìn)行。
[0065] 最后在第五步驟1105中,該計(jì)算單元(MCS)可以把由該CRC單元所計(jì)算的CRC信 息與所接收的CRC信息相比較,或者通過(guò)該CRC單元來(lái)分析CRC校驗(yàn)的結(jié)果,并從而在具有 偏差的情況下確定存在傳輸錯(cuò)誤或存儲(chǔ)器錯(cuò)誤。
[0066] 在可選的第六步驟1106中,如果通過(guò)該計(jì)算單元(MCS)已確定存在傳輸錯(cuò)誤或存 儲(chǔ)器錯(cuò)誤,那么就通過(guò)該計(jì)算單元(MCS)來(lái)觸發(fā)重新傳輸。
[0067] 類似地也針對(duì)要發(fā)送的數(shù)據(jù)進(jìn)行CRC計(jì)算。數(shù)據(jù)優(yōu)選地在配置該CRC單元之后由 該計(jì)算單元(MCS)通過(guò)該路由單元而被發(fā)送到該CRC單元。在那里執(zhí)行CRC計(jì)算,并且結(jié) 果由該CRC單元通過(guò)該路由單元被傳輸?shù)皆撚?jì)算單元(MCS)。在那里把CRC值附加給該數(shù) 據(jù),并把該數(shù)據(jù)提供給該輸出模塊。
[0068] 到目前所述的實(shí)施例對(duì)應(yīng)于基本配置(圖1)的前提均為,用于實(shí)現(xiàn)通用、串行接口 的硬件電路都采用了具有捕捉功能的輸入模塊和具有比較功能的輸出模塊。與此相反,在 另一實(shí)施變化方案中,也可以采用不具有比較功能的不同的輸出模塊。用于輸出接口幀的 這種專用模塊從而與硬件電路的以及計(jì)時(shí)器模塊的前述輸出模塊(TOM、ATOM)不同。
[0069] 這種輸出硬件模塊的硬件實(shí)線例如可以通過(guò)狀態(tài)自動(dòng)機(jī)(狀態(tài)機(jī))與存儲(chǔ)器相組 合來(lái)進(jìn)行。代替如上所述的要接收以及要發(fā)送的比特流,該專用的輸出模塊可以把完整的 消息幀存儲(chǔ)在它的存儲(chǔ)器中。該路由單元從而可以利用發(fā)送過(guò)程把這個(gè)完整的消息發(fā)送到 該輸出模塊。對(duì)該輸出單元的更高的硬件要求從而導(dǎo)致降低該路由單元的承載。此外,利 用這種輸出單元更簡(jiǎn)單地實(shí)現(xiàn)了在數(shù)據(jù)輸出時(shí)更高的波特率,因?yàn)椴ㄌ芈什辉偈艿皆撀酚?單元的時(shí)鐘的限制。在一個(gè)優(yōu)選的實(shí)施方案中,該輸出單元再次必須提供時(shí)間信息(或者相 對(duì)應(yīng)的角度信息)。與前述的輸出單元相反,該輸出單元僅需要如下的信息,即整個(gè)消息或 整個(gè)消息幀必須在哪個(gè)時(shí)間點(diǎn)(或以哪個(gè)角度)以及以哪種波特率被發(fā)送。然后借助可用的 時(shí)間信息或角度信息以及該輸出模塊已知的波特率,該數(shù)據(jù)被發(fā)送。優(yōu)選地由該計(jì)算單元 (MCS)或微控制器的中央處理單元(CPU)把該數(shù)據(jù)直接寫(xiě)到該輸出單元的存儲(chǔ)器中。該輸 出單元在此獲得了該信號(hào)(日期)以及與數(shù)據(jù)速率和發(fā)送時(shí)間點(diǎn)有關(guān)的信息。
[0070] 替換地也可以不是通過(guò)時(shí)間信息,而是通過(guò)該計(jì)算單元(MCS)或該微控制器的中 央處理單元(CPU)的具體觸發(fā)而開(kāi)始向該專用輸出單元的發(fā)送過(guò)程。然后該輸出單元獨(dú)立 地在輸出管腳上來(lái)提供該數(shù)據(jù)。
[0071] 在圖4中示出了一種微控制器,其具有專用的輸出模塊414。該微控制器401具有 硬件部件410,也即輸出模塊411、路由單元412、計(jì)算單元(MCS) 413以及輸出模塊414以 及至輸入數(shù)據(jù)通道402和輸出數(shù)據(jù)通道403的連接,其再次最大程度對(duì)應(yīng)于圖1的微控制 器101。然而該輸出模塊414具有擴(kuò)展的功能,例如用于存儲(chǔ)完整消息幀的存儲(chǔ)器資源。在 所示的優(yōu)選實(shí)施方案中,該輸出模塊414另外還具有至微控制器401的另一連接。通過(guò)該 連接,例如可以通過(guò)該微控制器401的中央處理單元(CPU)給該輸出模塊414來(lái)提供數(shù)據(jù), 例如通過(guò)前述的由該中央處理單元(CPU)把該輸出數(shù)據(jù)直接寫(xiě)入到該輸出模塊414的存儲(chǔ) 器中。
[0072] 借助這種專用的輸出單元而進(jìn)行的數(shù)據(jù)輸出流程在下文中應(yīng)借助通過(guò)UART配置 的通用接口的示例傳輸來(lái)加以闡述: 1.該微控制器的中央處理單元(CPU)或該計(jì)算單元(MCS)把消息幀01111111111寫(xiě)入 到該輸出單元的存儲(chǔ)器中。其對(duì)應(yīng)于一個(gè)起始比特(〇 )、8個(gè)數(shù)據(jù)比特(111 111 11 )、一個(gè)奇 偶校驗(yàn)比特(1,在奇校驗(yàn)的情況下)以及一個(gè)停止比特(1)。
[0073] 2.該微控制器的中央處理單元(CPU)或該計(jì)算單元(MCS)把要輸出的消息幀的數(shù) 據(jù)速率寫(xiě)入到該輸出單元的寄存器中。
[0074] 3.該微控制器的中央處理單元(CPU)或該計(jì)算單元(MCS)把觸發(fā)信號(hào)發(fā)送到該輸 出單元,以開(kāi)始進(jìn)行傳輸。在另一變化方案中,在預(yù)定數(shù)量的傳輸過(guò)程之后,在獲得該消息 幀之后開(kāi)始進(jìn)行傳輸。在另一變化方案中,該微控制器的中央處理單元(CPU)或該計(jì)算單 元(MCS)傳輸應(yīng)該進(jìn)行或開(kāi)始傳輸?shù)臅r(shí)間點(diǎn)。
[0075] 4.該輸出單元獨(dú)立地把該消息幀以所選擇的數(shù)據(jù)速率來(lái)發(fā)送。
[0076] 在所述的具有專用輸出單元的實(shí)施例中,該計(jì)算單元(MCS)或該中央處理單元 (CPU)另外還例如由于把信息寫(xiě)入到該輸出單元中以及觸發(fā)該發(fā)送過(guò)程而被承載。因此在 另一有利的實(shí)施變化方案中,該輸出單元通過(guò)從存儲(chǔ)器中自動(dòng)地重新加載來(lái)獲得要發(fā)送的 數(shù)據(jù)或消息幀。例如可以從RAM中來(lái)進(jìn)行這種自動(dòng)重新加載,其中該輸出單元通過(guò)級(jí)聯(lián)列 表和DMA (直接存儲(chǔ)器訪問(wèn))來(lái)訪問(wèn)該RAM。從而也可以以高的速度在該計(jì)算單元(MCS)或 該微控制器的中央處理單元(CPU)未承載(中斷)的情況下來(lái)輸出較大的數(shù)據(jù)分組。
[0077] 在所述的具有專用輸出單元的實(shí)施例中,首先假定,其余方法步驟(通過(guò)該輸入模 塊進(jìn)行數(shù)據(jù)接收,通過(guò)該路由單元進(jìn)行路由,通過(guò)該計(jì)算單元(MCS)進(jìn)行協(xié)議計(jì)算,必要時(shí) 通過(guò)該CRC單元進(jìn)行CRC計(jì)算)繼續(xù)如上所述地來(lái)進(jìn)行,以及其余的硬件電路(輸入模塊、路 由單元、計(jì)算單元(MCS)、必要時(shí)的CRC單元)繼續(xù)如上所述來(lái)構(gòu)建。
[0078] 與剛剛所述的具有比較功能的輸出模塊更換為專用的輸出單元相類似,在另一實(shí) 施例中也可以通過(guò)將具有捕捉功能的輸入模塊更換為專用的輸入單元來(lái)實(shí)現(xiàn)對(duì)基本配置 (圖1)的變化。
[0079] 在這個(gè)實(shí)施方案中,這種專用的輸入模塊優(yōu)選不是如前所述逐個(gè)邊緣地對(duì)輸入比 特流進(jìn)行分解,也即并不是每個(gè)邊緣變換都帶時(shí)間戳地通過(guò)該路由單元續(xù)傳到該計(jì)算單元 (MCS)。而是該專用輸入單元把完整的比特流進(jìn)行記錄(也即存儲(chǔ))和過(guò)濾。作為過(guò)濾優(yōu)選 地可以應(yīng)用過(guò)掃描(過(guò)采樣)。通過(guò)把過(guò)掃描例如與表決(協(xié)調(diào)一致)相組合,可以更可靠地 把具有高電平的所接收比特與具有低電平的所接收比特相互分離或區(qū)分。
[0080] 該專用輸入模塊的輸入濾波器例如可以如此來(lái)被編程,使得它以16MHz來(lái)掃描一 個(gè)1MHz信號(hào)。然后通過(guò)表決實(shí)例來(lái)對(duì)每個(gè)比特進(jìn)行16次掃描,該表決實(shí)例按照預(yù)定的設(shè) 置(例如16中的3個(gè)或16中的12個(gè))而作為比特狀態(tài)來(lái)存儲(chǔ)一個(gè)1或0。通過(guò)這種專用 的、其中實(shí)施有過(guò)掃描和表決的輸入模塊,也可以實(shí)現(xiàn)具有更高抗干擾要求的接口。
[0081] 通過(guò)與觸發(fā)事件、例如在UART情況下的起始比特相同步,該專用輸入單元可以參 照該比特流而被設(shè)置為所定義的狀態(tài)。如果所有的比特都被讀入(例如UART:起始比特、 8個(gè)數(shù)據(jù)比特、奇偶校驗(yàn)比特、停止比特),那么這些數(shù)據(jù)就從該專用輸入模塊的輸出端通 過(guò)該路由單元而被傳輸?shù)皆撚?jì)算單元(MCS),這些數(shù)據(jù)然后被轉(zhuǎn)換為較高的協(xié)議層(例如 KWP2000、LIN),或者這些數(shù)據(jù)被直接寫(xiě)入到FIFO存儲(chǔ)器中,其中應(yīng)用軟件可以從該FIFO中 獲取這些數(shù)據(jù)。不再需要由計(jì)算單元(MCS)通過(guò)從路由單元側(cè)分析帶時(shí)間戳的邊緣變換消 息來(lái)重建消息。而是該計(jì)算單元(MCS)從該路由單元獲得消息幀的數(shù)據(jù)作為消息來(lái)代替作 為分別單獨(dú)的傳輸來(lái)傳輸邊緣變換。由此該路由單元同樣由于不執(zhí)行很多單獨(dú)傳輸而被減 負(fù)。輸入數(shù)據(jù)的處理速度不再像以前那樣與該路由單元的速度強(qiáng)烈相關(guān)。從而除了該路由 單元和計(jì)算單元(MCS)的減負(fù)之外,還能夠以更快的數(shù)據(jù)速率來(lái)進(jìn)行輸入數(shù)據(jù)的處理。 [0082] 除了被過(guò)濾的、也即在過(guò)掃描和表決之后所確定的正確比特電平之外,還可以轉(zhuǎn) 發(fā)如下的信息(例如轉(zhuǎn)發(fā)到該計(jì)算單元(MCS)或該微控制器的中央處理單元(CPU)),即這 些比特是否被干擾以及干擾程度,也即例如該表決的明確程度。例如可以通知一個(gè)比特的 多少個(gè)被掃描值具有相同的電平。為了使表決更魯棒,例如也可以屏蔽直接在邊緣變換之 前以及直接在邊緣變換之后的點(diǎn)(采樣),以使表決、也即比特識(shí)別更魯棒。
[0083] 對(duì)于所述的、具有執(zhí)行過(guò)掃描和表決的專用輸入模塊的硬件電路,為了改善比特 識(shí)別也可以針對(duì)所述表決而采用所確定的波特率(這種波特率識(shí)別在下文中還要詳細(xì)闡 述)。
[0084] 在具有專用輸入模塊的實(shí)施方案的一個(gè)優(yōu)選替換變化方案中,從該專用輸入模塊 向存儲(chǔ)器、例如FIFO存儲(chǔ)器進(jìn)行直接的傳輸,其中該計(jì)算單元(MCS)或該微控制器的中央 處理單元(CPU)對(duì)該存儲(chǔ)器進(jìn)行訪問(wèn)。替換地,計(jì)算單元(MCS)或該中央處理單元(CPU)也 可以直接訪問(wèn)該專用輸入模塊的存儲(chǔ)器。
[0085] 在前述的具有專用輸入單元的一種擴(kuò)展中,該專用輸入單元可以給每個(gè)比特流或 每個(gè)消息幀分配一個(gè)時(shí)間戳(為此需要訪問(wèn)時(shí)間信息,例如通過(guò)時(shí)基單元)。計(jì)算單元(MCS) 或該微控制器的中央處理單元(CPU)可以應(yīng)用該時(shí)間戳以進(jìn)行消息幀的處理或分析。
[0086] 如同在這種專用輸出單元的情況下一樣,這種專用的輸入單元也與較高的成本相 關(guān)聯(lián),從而必須把所討論的優(yōu)點(diǎn)與成本缺點(diǎn)相平衡,以選擇合適的實(shí)施方案。
[0087] 在所述的具有專用輸入單元的實(shí)施例中,首先假定,其余方法步驟(通過(guò)該輸出模 塊進(jìn)行數(shù)據(jù)輸出,通過(guò)該路由單元進(jìn)行路由,通過(guò)該計(jì)算單元(MCS)進(jìn)行協(xié)議計(jì)算,必要時(shí) 通過(guò)該CRC單元進(jìn)行CRC計(jì)算)繼續(xù)如上所述地來(lái)進(jìn)行,以及其余的硬件電路(輸出模塊、路 由單元、計(jì)算單元(MCS)、必要時(shí)的CRC單元)繼續(xù)如上所述來(lái)構(gòu)建。然而在具有一種特別 高性能的、用于實(shí)現(xiàn)通用串行接口的硬件電路的實(shí)施變化方案中,其不僅具有如剛剛所述 的具有過(guò)濾功能的專用輸入模塊,而且還具有如上所述的專用輸出模塊。
[0088] 在圖5中示意示出了具有專用輸入單元的、用于實(shí)現(xiàn)通用串行接口的一種硬件電 路。該微控制器501具有該硬件部件510--也即輸入模塊511、路由單元512、計(jì)算單元 (MCS) 513以及輸出模塊514--以及至數(shù)據(jù)輸入通道502和數(shù)據(jù)輸出通道503的連接,該 微控制器501再次最大程度對(duì)應(yīng)于圖1中的微控制器101。但是與此不同,該專用輸入模 塊511是具有電路的硬件單元,該電路用于實(shí)現(xiàn)過(guò)濾功能,尤其對(duì)所接收比特進(jìn)行過(guò)掃描 和表決,其中根據(jù)在一個(gè)比特的掃描點(diǎn)上所檢測(cè)的電平值通過(guò)多數(shù)判決來(lái)確定該比特的電 平值。與在圖1中所述的輸入模塊相反,該專用輸入模塊511必須具有存儲(chǔ)器,該存儲(chǔ)器具 有足夠的容量以存儲(chǔ)完整的比特流或完整的所接收的消息幀。
[0089] 與圖1相比,在圖5中還示出了存儲(chǔ)器516,例如FIFO存儲(chǔ)器。至少該輸入模塊 511對(duì)該FIFO存儲(chǔ)器進(jìn)行訪問(wèn)。與前述變化方案之一相對(duì)應(yīng),從該專用輸入模塊511向該 存儲(chǔ)器516進(jìn)行直接的傳輸,其中該微控制器的中央處理單元(CPU)訪問(wèn)該存儲(chǔ)器,如在圖 5中通過(guò)從存儲(chǔ)器516至該微控制器501的所示連接所示。
[0090] 在用于提供通用串行接口的硬件電路的另一變化方案中,前述的實(shí)施方案另外還 具有另一硬件組件,該硬件組件被用于消息仲裁。該組件在此承擔(dān)了時(shí)間嚴(yán)苛的功能,其中 其余的電路部分由于其結(jié)構(gòu)和時(shí)鐘頻率而不能最佳地用于上述時(shí)間嚴(yán)苛的功能。
[0091] 該組件優(yōu)選地涉及用于支持CAN仲裁的組件。對(duì)于CAN仲裁,在相應(yīng)高的數(shù)據(jù)速 率時(shí)必須在幾納秒的內(nèi)部處理時(shí)間(IPT)內(nèi)就識(shí)別在總線上存在顯性電平。在該總線上存 在顯性電平的情況下,如果在當(dāng)前的比特中(在當(dāng)前的時(shí)鐘片段中)在該接口中存在一個(gè)隱 性比特,那么就不允許該接口在下一比特時(shí)(在下一時(shí)鐘片段中)驅(qū)動(dòng)顯性電平。在這種情 況下,該接口(以及從而相應(yīng)的CAN節(jié)點(diǎn))從該仲裁中被淘汰,因?yàn)榱硪?CAN節(jié)點(diǎn)具有更高優(yōu) 先權(quán)(也即具有更早的顯性電平)的消息。對(duì)于這種功能,前述的在圖1中示例闡述的硬件 部件并不是最佳的。從而利用一種專門(mén)為此而設(shè)置的模塊就能夠?qū)崿F(xiàn)更快的響應(yīng)時(shí)間。
[0092] 在圖7中為了闡述CAN仲裁而繪制了存在于CAN總線上的信號(hào)701以及存在于微 控制器內(nèi)部的要發(fā)送的信號(hào)702。從左向右用虛線劃分了四個(gè)時(shí)鐘片段。在時(shí)鐘片段1中, 不僅在總線上而且作為內(nèi)部信號(hào)存在隱性電平。在時(shí)鐘片段2中在總線上具有顯性電平, 內(nèi)部信號(hào)對(duì)該時(shí)鐘片段具有隱性電平。從而該節(jié)點(diǎn)從仲裁中被淘汰。從而通過(guò)用于仲裁的 硬件單元,現(xiàn)在在時(shí)鐘片段3中禁止驅(qū)動(dòng)所設(shè)置的顯性電平。相應(yīng)地在時(shí)鐘片段4中以及 隨后的時(shí)鐘片段中也不再允許該節(jié)點(diǎn)發(fā)送,直到在該CAN總線上已贏得該仲裁的那次傳輸 結(jié)束。
[0093] 圖6示出了微控制器601,其具有用于提供通用串行接口、尤其CAN接口的硬件模 塊610,以及具有用于通過(guò)該接口進(jìn)行消息仲裁的附加硬件單元630。該微控制器601具有 該硬件部件610,也即輸入模塊611、路由單元612、計(jì)算單元(MCS) 613以及輸出模塊614, 其再次最大程度對(duì)應(yīng)于圖1中的微控制器101。但另外該微控制器601還與(在該例子中外 部的)用于仲裁的硬件模塊630相連接。該輸入數(shù)據(jù)通道602尤其是CAN-Rx線,該輸出數(shù) 據(jù)通道603是CAN-Tx線。附加硬件單元630優(yōu)選是外部邏輯電路,其中一旦接收到相應(yīng)的 信號(hào),那么該外部邏輯電路就中止該節(jié)點(diǎn)的發(fā)送。在CAN仲裁的情況下,一旦在該總線上具 有顯性電平,并且自己的信息在相同的時(shí)鐘單位時(shí)是隱性的,那么就例如進(jìn)行這種發(fā)送中 止。該模塊630例如可以作為邏輯電路通過(guò)門(mén)功能、可編程邏輯單元(PLD)或現(xiàn)場(chǎng)可變成 門(mén)陣列(FPGA)來(lái)實(shí)現(xiàn)。
[0094] 在圖6中還示出了第二輸出模塊615。該第二輸出模塊可以通過(guò)提供計(jì)時(shí)器資源 來(lái)支持附加的仲裁硬件單元630。這些資源例如是為了等待特定比特長(zhǎng)度或維持特定暫停 而需要的。一種替換的實(shí)施方案是,同樣作為附加的硬件電路來(lái)設(shè)置該計(jì)時(shí)器資源。
[0095] 附加的仲裁硬件單元優(yōu)選地可以通過(guò)可配置的邏輯裝置而靈活地分配給不同的 輸出模塊。但是固定的分配也是可以的。
[0096] 附加的仲裁硬件單元優(yōu)選地作為可編程邏輯裝置(例如FPGA或CPLD)位于該微控 制器外部。但是通過(guò)這種可編程邏輯電路的集成也可以實(shí)現(xiàn)在該微控制器上的一種替換實(shí) 施。
[0097] 專用的仲裁硬件單元可以準(zhǔn)備有其他的測(cè)量和分析功能。在一個(gè)優(yōu)選的變化方案 中,這種CAN仲裁單元例如還識(shí)別所使用的協(xié)議是否是CAN或CAN-FD (具有靈活數(shù)據(jù)速率 的 CAN)。
[0098] 在所述的具有專用仲裁硬件單元的實(shí)施例中,首先假定,其余的方法步驟(在輸入 模塊中的數(shù)據(jù)輸入,通過(guò)該輸出模塊進(jìn)行的數(shù)據(jù)輸出,通過(guò)該路由單元進(jìn)行的路由,通過(guò)該 計(jì)算單元(MCS)進(jìn)行的協(xié)議計(jì)算,必要時(shí)通過(guò)該CRC單元進(jìn)行的CRC計(jì)算)繼續(xù)如上所述進(jìn) 行,以及其余的硬件電路(輸入模塊、輸出模塊、路由單元、計(jì)算單元(MCS)、必要時(shí)的CRC單 元)繼續(xù)如前面圖1所述來(lái)構(gòu)建。但該專用仲裁硬件單元也可以沒(méi)有問(wèn)題地與具有專用輸 入模塊和/或?qū)S幂敵瞿K的實(shí)施例相組合。
[0099] 在另一優(yōu)選的變化方案中,在前述的實(shí)施方案中另外還可以實(shí)施波特率識(shí)別。這 種波特率識(shí)別例如能夠適應(yīng)不同的波特率。
[0100] 所述波特率識(shí)別可以以軟件或硬件來(lái)實(shí)施。在軟件實(shí)現(xiàn)時(shí),例如可以從該輸入模 塊的捕捉信息中通過(guò)該計(jì)算單元(MCS)或該微控制器的中央處理單元(CPU)來(lái)進(jìn)行波特率 識(shí)別。數(shù)據(jù)的輸入頻率在此情況下可以被測(cè)量,并且通過(guò)參照頻率的調(diào)制可以確定波特率。 為此必須分析完整的消息幀,這在軟件實(shí)現(xiàn)中是費(fèi)時(shí)的。
[0101] 在一個(gè)優(yōu)選的替換實(shí)施方案中,波特率識(shí)別以硬件來(lái)被執(zhí)行。這或者可以在附加 的硬件電路中來(lái)進(jìn)行,或者在一個(gè)裝備有相應(yīng)附加功能的專用輸入模塊中來(lái)進(jìn)行,如前(例 如在圖5中)所述。與軟件實(shí)現(xiàn)相比,利用硬件實(shí)現(xiàn)可以實(shí)現(xiàn)更快的波特率識(shí)別和波特率適 應(yīng),另外計(jì)算單元(MCS)或中央處理單元(CPU)被更小地承載。
[0102] 在圖10中示出了以通用UART接口為例的以硬件來(lái)實(shí)現(xiàn)的波特率識(shí)別的一個(gè)相應(yīng) 流程圖。
[0103] 在所規(guī)定的協(xié)議中消息幀的基本構(gòu)造是已知的,例如在當(dāng)前例子中,已知一個(gè)消 息幀總是以具有低電平的一個(gè)起始比特開(kāi)始,并以具有高電平的一個(gè)停止比特結(jié)束。在 用于確定波特率的第一步驟1001中通過(guò)相應(yīng)的硬件功能數(shù)出在起始比特和停止比特之間 (也即第一高低邊緣至最后的低高邊緣之間)的時(shí)鐘的數(shù)量。時(shí)鐘數(shù)量在此優(yōu)選地從時(shí)基中 來(lái)導(dǎo)出,其中該時(shí)基給該硬件功能提供時(shí)鐘(例如來(lái)自時(shí)基單元),并且該時(shí)基小于要讀出 的波特率。
[0104] 該消息幀的長(zhǎng)度(也即比特?cái)?shù)量)是該硬件功能所已知的。對(duì)于例如采取的協(xié)議已 知,一個(gè)消息幀具有十個(gè)比特(例如起始比特、八個(gè)數(shù)據(jù)比特、停止比特)。在第二步驟1002 中,把所確定的、從起始比特至停止比特之間所經(jīng)過(guò)的時(shí)鐘的數(shù)量除以一個(gè)消息幀的比特 數(shù)量(例如十)。在第三步驟1003中可以把由此所確定的波特率進(jìn)行傳輸,例如傳輸至該計(jì) 算單元(MCS)或該微控制器的中央處理單元(CPU)。
[0105] 例如在要實(shí)現(xiàn)的UART或LIN接口的情況下,幀長(zhǎng)度可能總是恒定的并從而可能是 已知的,而例如在CAN的情況下,消息幀的長(zhǎng)度(也即比特?cái)?shù)量)可以是未知的。在所述波特 率識(shí)別的一個(gè)變化方案中,在此也可以以硬件來(lái)識(shí)別波特率。例如可以確定在一個(gè)消息幀 的兩個(gè)比特之間的最短時(shí)間。
[0106] 為了識(shí)別波特率,必須能夠確定一個(gè)消息幀的開(kāi)頭和結(jié)尾。這例如可以通過(guò)設(shè)定 的時(shí)鐘數(shù)量、例如三個(gè)時(shí)鐘(在波特率恒定的情況下對(duì)應(yīng)于固定的時(shí)間,例如150ns )針對(duì)特 定電平來(lái)進(jìn)行。
【權(quán)利要求】
1. 用于在尤其運(yùn)輸工具的控制設(shè)備中提供至少一個(gè)通用接口的方法,其中該控制設(shè)備 具有微控制器(101),該微控制器具有中央處理單元(CPU)、至少一個(gè)非接口專用的輸入模 塊(111)、至少一個(gè)非接口專用的輸出模塊(114)、至少一個(gè)路由單元(112)、以及具有用于 處理接口專用信息的至少一個(gè)計(jì)算單元(113),并且其中所述至少一個(gè)通用接口是能被配 置的,以按照配置來(lái)提供與多個(gè)串行接口、尤其SPI、UART、LIN、CAN、PSI5、FlexRay、SENT、 I2C、MSC或Ethernet之一相對(duì)應(yīng)的功能,其特征在于以下的步驟: -通過(guò)所述至少一個(gè)非接口專用的輸入模塊(111)接收與多個(gè)串行接口之一的協(xié)議對(duì) 應(yīng)的輸入數(shù)據(jù), -該輸入數(shù)據(jù)通過(guò)該路由單元(112 )被傳輸?shù)剿鲋辽僖粋€(gè)計(jì)算單元(113 ), -由所述至少一個(gè)計(jì)算單元(113)從該輸入數(shù)據(jù)中提取第一有用數(shù)據(jù),尤其通過(guò)從該 輸入數(shù)據(jù)中去除協(xié)議的協(xié)議細(xì)節(jié), -所述第一有用數(shù)據(jù)被提供給該中央處理單元(CPU), -由所述至少一個(gè)計(jì)算單元(113)接收該中央處理單元(CPU)的第二有用數(shù)據(jù), -由所述至少一個(gè)計(jì)算單元(113)從該第二有用數(shù)據(jù)中生成輸出數(shù)據(jù),尤其通過(guò)給該 第二有用數(shù)據(jù)添加協(xié)議的協(xié)議細(xì)節(jié), -該輸出數(shù)據(jù)通過(guò)該路由單元(112)被傳輸?shù)剿鲋辽僖粋€(gè)非接口專用的輸出模塊 (414), -通過(guò)所述至少一個(gè)非接口專用的輸出模塊(114)對(duì)應(yīng)于多個(gè)串行接口之一的協(xié)議來(lái) 發(fā)送該輸出數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的方法,其中該計(jì)算單元(113)訪問(wèn)第一存儲(chǔ)器,并且在該第一 存儲(chǔ)器中存儲(chǔ)有協(xié)議細(xì)節(jié),尤其與起始比特、停止比特、奇偶校驗(yàn)信息、控制比特和填充比 特之一有關(guān)的息。
3. 根據(jù)權(quán)利要求2所述的方法,其中該協(xié)議細(xì)節(jié)由該中央處理單元(CPU)存儲(chǔ)在該第 一存儲(chǔ)器中。
4. 根據(jù)前述權(quán)利要求之一所述的方法,其中所述至少一個(gè)非接口專用的輸入模塊 (111)和所述至少一個(gè)非接口專用的輸出模塊(114)通過(guò)配置而被固定地分配給多個(gè)串行 接口之一。
5. 根據(jù)前述權(quán)利要求之一所述的方法,其中該計(jì)算單元(113)還進(jìn)行較高協(xié)議層的計(jì) 算,尤其多個(gè)UART消息幀到一個(gè)LIN消息幀的轉(zhuǎn)換。
6. 根據(jù)前述權(quán)利要求之一所述的方法,其中該第一有用數(shù)據(jù)被提供給該中央處理單元 (CPU),其方式是,該計(jì)算單元(113)把該第一有用數(shù)據(jù)寫(xiě)入到第二存儲(chǔ)器中,并通過(guò)中斷將 此通知給該中央處理單元(CPU )。
7. 根據(jù)權(quán)利要求1至5之一所述的方法,其中該第一有用數(shù)據(jù)由該計(jì)算單元(113)通 過(guò)存儲(chǔ)器直接訪問(wèn)(DMA)而提供給該中央處理單元(CPU)。
8. 根據(jù)前述權(quán)利要求之一所述的方法,其中該輸入數(shù)據(jù)在所述至少一個(gè)非接口專用的 輸入模塊(111)中被分配了時(shí)間信息。
9. 根據(jù)權(quán)利要求8所述的方法,其中在所述至少一個(gè)非接口專用的輸入模塊(111)中, 給在該微控制器(101)的輸入端上施加的該輸入數(shù)據(jù)的每個(gè)邊緣變換都分配時(shí)間戳。
10. 根據(jù)權(quán)利要求9所述的方法,其中通過(guò)單獨(dú)地傳輸該輸入數(shù)據(jù)的具有所分配時(shí)間 戳的每個(gè)邊緣變換,所述至少一個(gè)非接口專用的輸入模塊(111)把該輸入數(shù)據(jù)傳輸?shù)皆撀?由單元(112)。
11. 根據(jù)權(quán)利要求10所述的方法,其中該計(jì)算單元(113)從該輸入數(shù)據(jù)的具有所分配 時(shí)間戳的邊緣變換中來(lái)確定消息幀。
12. 根據(jù)權(quán)利要求1至7之一所述的方法,其中該輸入數(shù)據(jù)的完整的輸入消息幀被存儲(chǔ) 在所述至少一個(gè)非接口專用的輸入模塊(511)中,并且所述完整的輸入消息幀被提供給該 計(jì)算單元(513)。
13. 根據(jù)權(quán)利要求12所述的方法,其中通過(guò)所述至少一個(gè)非接口專用的輸入模塊 (511)借助過(guò)掃描來(lái)分析該輸入消息幀,并通過(guò)根據(jù)過(guò)掃描的掃描點(diǎn)的電平值的比特電平 表決來(lái)確定該消息幀的比特的電平。
14. 根據(jù)權(quán)利要求13所述的方法,其中在所述至少一個(gè)非接口專用的輸入模塊(511) 中給該輸入消息幀分配時(shí)間戳。
15. 根據(jù)前述權(quán)利要求之一所述的方法,其中該計(jì)算單元(113)從該第二有用數(shù)據(jù)中 生成該輸出數(shù)據(jù),其方式是該計(jì)算單元根據(jù)預(yù)定的波特率來(lái)確定該輸出數(shù)據(jù)的具有所分配 時(shí)間戳的相應(yīng)邊緣變換。
16. 根據(jù)權(quán)利要求15所述的方法,其中該輸入數(shù)據(jù)被傳輸?shù)剿鲋辽僖粋€(gè)非接口專用 的輸出模塊(114),其方式是由該路由單元(112)單獨(dú)地傳輸該輸出數(shù)據(jù)的具有所分配時(shí) 間戳的每個(gè)邊緣變換。
17. 根據(jù)權(quán)利要求15或16之一所述的方法,其中所述至少一個(gè)非接口專用的輸出模 塊(114)把該輸出數(shù)據(jù)的每個(gè)邊緣變換的所分配時(shí)間戳與時(shí)間信息相比較,并在一致的情 況下把相應(yīng)的邊緣施加在該微控制器(101)的輸出端上。
18. 根據(jù)權(quán)利要求1至14之一所述的方法,其中該計(jì)算單元(413)從該第二有用數(shù)據(jù) 中生成完整的輸出消息幀來(lái)作為輸出數(shù)據(jù),并將該輸出消息幀傳輸?shù)剿鲋辽僖粋€(gè)非接口 專用的輸出模塊(414)。
19. 根據(jù)權(quán)利要求18所述的方法,其中如果通過(guò)該計(jì)算單元(413)或該中央處理單 元(CPU)來(lái)觸發(fā)相應(yīng)的觸發(fā)信號(hào),或者如果分配給該輸出消息幀的時(shí)間戳對(duì)應(yīng)于所述至少 一個(gè)非接口專用的輸出模塊(414)的時(shí)間信息,那么所述至少一個(gè)非接口專用的輸出模塊 (414)就傳輸該輸出消息中貞。
20. 根據(jù)權(quán)利要求1至19之一所述的方法,其中針對(duì)該輸入數(shù)據(jù)來(lái)執(zhí)行波特率識(shí)別。
21. 控制設(shè)備的、尤其運(yùn)輸工具控制設(shè)備的微控制器(101),其具有中央處理單元 (CPU)、至少一個(gè)非接口專用的輸入模塊(111 )、至少一個(gè)非接口專用的輸出模塊(114)、至 少一個(gè)路由單元(112),并具有用于處理接口專用信息的至少一個(gè)計(jì)算單元(113),其特征 在于,該微控制器(101)設(shè)置用于執(zhí)行權(quán)利要求1至20之一所述的方法。
22. 控制設(shè)備的、尤其運(yùn)輸工具控制設(shè)備的微控制器(101),其具有中央處理單元 (CPU)、至少一個(gè)非接口專用的輸入模塊(111)、至少一個(gè)非接口專用的輸出模塊(114)、 至少一個(gè)路由單元(112),并具有用于處理接口專用信息的至少一個(gè)計(jì)算單元(113),其 特征在于,該微控制器(113)能被如此來(lái)配置,使得所述至少一個(gè)非接口專用的輸入模塊 (111)、至少一個(gè)非接口專用的輸出模塊(114)、至少一個(gè)路由單元(112)以及用于處理接 口專用信息的至少一個(gè)計(jì)算單元(113)按照配置而滿足與多個(gè)串行接口、尤其SPI、UART、 LIN、CAN、PSI5、FlexRay、SENT、I2C、MSC 或 Ethernet 之一相對(duì)應(yīng)的功能。
23. 根據(jù)權(quán)利要求21或22所述的微控制器(101 ),其中該計(jì)算單元(113)具有算術(shù)邏 輯單元(ALU)。
24. 根據(jù)權(quán)利要求21至23之一所述的微控制器(101),其中所述至少一個(gè)非接口專用 的輸入模塊(111)具有捕捉功能,和/或所述非接口專用的輸出模塊(114)具有比較功能。
25. 根據(jù)權(quán)利要求21至24之一所述的微控制器(301),其具有單獨(dú)的第一硬件電路 (315)以進(jìn)行CRC計(jì)算。
26. 根據(jù)權(quán)利要求21至25之一所述的微控制器(601 ),其具有單獨(dú)的、尤其用于CAN仲 裁的第二仲裁硬件電路,或者其與單獨(dú)的、尤其用于CAN仲裁的第二仲裁硬件電路(630)相 連接。
27. 根據(jù)權(quán)利要求26所述的微控制器(601 ),其中該單獨(dú)的第二仲裁硬件電路(630)設(shè) 置用于執(zhí)行分析,以分析是否傳輸對(duì)應(yīng)于CAN協(xié)議或CAN-FD協(xié)議的輸入數(shù)據(jù)。
28. 根據(jù)權(quán)利要求21至27之一所述的微控制器(101),其中該路由單元(112)和/或 該計(jì)算單元(113)以至少100MHz的時(shí)鐘、尤其以至少200MHz的時(shí)鐘來(lái)工作。
29. 根據(jù)權(quán)利要求21至28之一所述的微控制器(101),其設(shè)置用于,通過(guò)所述至少一 個(gè)非接口專用的輸入模塊(111)以至少1M波特的輸入波特率來(lái)接收輸入數(shù)據(jù),以及通過(guò)所 述至少一個(gè)非接口專用的輸出模塊(114)以至少1M波特的輸出波特率來(lái)發(fā)送輸出數(shù)據(jù)。
30. 根據(jù)權(quán)利要求21至29之一所述的微控制器(101),其除了所述至少一個(gè)非接口專 用的輸入模塊(111)和所述至少一個(gè)非接口專用的輸出模塊(114)之外還具有至少一個(gè)接 口專用的輸入模塊和至少一個(gè)接口專用的輸出模塊。
31. 根據(jù)權(quán)利要求21至30之一所述的微控制器(201),其另外還具有計(jì)時(shí)器模塊 (230),該計(jì)時(shí)器模塊具有計(jì)時(shí)器輸入模塊(231)、計(jì)時(shí)器輸出模塊(234)、計(jì)時(shí)器路由單元 (232)和計(jì)時(shí)器計(jì)算單元(233)。
32. 根據(jù)權(quán)利要求31所述的微控制器(201),其中該微控制器(201)設(shè)置用于,如果 不需要所述至少一個(gè)非接口專用的輸入模塊(211)、所述至少一個(gè)非接口專用的輸出模塊 (214)、所述至少一個(gè)計(jì)算單元(213)和該路由單元(212)來(lái)滿足與多個(gè)串行接口之一相對(duì) 應(yīng)的功能,那么就利用所述至少一個(gè)非接口專用的輸入模塊(211)、所述至少一個(gè)非接口專 用的輸出模塊(214)、所述至少一個(gè)計(jì)算單元(213)和該路由單元(212)來(lái)執(zhí)行該計(jì)時(shí)器模 塊(230)的計(jì)時(shí)器功能。
33. 具有權(quán)利要求21至32之一所述的微控制器的運(yùn)輸工具控制設(shè)備。
【文檔編號(hào)】G05B19/042GK104216311SQ201410229243
【公開(kāi)日】2014年12月17日 申請(qǐng)日期:2014年5月28日 優(yōu)先權(quán)日:2013年5月29日
【發(fā)明者】A.奧厄, E.貝克 申請(qǐng)人:羅伯特·博世有限公司