
兩個子系統(tǒng)的時間同步也基于FlexRay全局時間?刂谱酉到y(tǒng)在每個第4個Macrotick上(在接收新的數(shù)據(jù)之后)運行更新。此外,另一個子系統(tǒng)也使用基于Macrotick的時間和絕對定時器來對相電流進行抽樣,并應用新的工作循環(huán)。一個棘手的問題是如何使PWM周期與Macrotick保持同步。PWM生成器使用通常與FlexRay Macrotick不同步的外圍時鐘。在制動器子系統(tǒng)上運行的一種算法可保持PWM幀同步。FlexRay時間和PWM計數(shù)器數(shù)值可定期(最好是每個Macrotick)進行比較。數(shù)值應該在線性刻度上互相對應,如果不是,就需要調整PWM周期;镜恼{節(jié)方法有兩種,一種是使用確定的誤差直接調節(jié)下一個PWM周期,第二種是使用閉合環(huán)路算法(其輸入結果是同步錯誤,輸出為PWM周期)。第二種方法還可用于在啟動時實現(xiàn)平滑的同步。
討論
FlexRay定時計劃是分布式應用設計的一個關鍵點。采用恰當?shù)姆椒ǹ墒顾邢到y(tǒng)節(jié)點的定時都基于全局FlexRay時鐘。遺憾的是,這并不是在所有情況下都可行。例如,一個閉環(huán)分布式控制系統(tǒng)可能面臨其他問題。通常,控制系統(tǒng)包括PWM生成器等制動器。PWM生成器是閉環(huán)系統(tǒng)中可以吸收相對時間差的最好部分。如果PWM工作循環(huán)得到保證,PWM周期間隔的輕微變化將不會影響設備。
假如節(jié)點器件的系統(tǒng)時鐘能夠與全局FlexRay時鐘同步,那么吸收時間差的要求在各種情況下都會降低。如果系統(tǒng)時鐘生成器可實現(xiàn)精確調整(如使用某種Trim Register),那么就可以使用與上面例子中用于調節(jié)PWM期間的方法相似的措施來調節(jié)制動器件的系統(tǒng)時鐘,使它與FlexRay保持同步。一旦完成節(jié)點初始化并且建立了FlexRay通信后,閉環(huán)算法就可以根據(jù)FlexRay平緩地調節(jié)系統(tǒng)時鐘。這樣,CPU時鐘和外圍設備時鐘都可以在整個工作時間內(nèi)在FlexRay群集的所有器件上實現(xiàn)同步運行。





