关于同步规则2,看了好几本中文书也没看懂,其实英文讲得挺清楚的:
2. An edge will be used for SYNCHRONIZATION only if the value detected at the previous SAMPLE POINT (previous read bus value)differs from the bus value immediately after the edge.
各种翻译: 2、只有在先前采样点上监测到的数值与总线数值不同,沿过后立即有一个沿用于同步。
2、仅当采样点之前探测到的值与紧跟边沿之后的总线值不相符合时,才把边沿用于同步。
2. 仅当采集点之前探测到的值与紧跟沿之后的总线值不相符合时,才把沿用作于同步。
2、只要在先前采样点上检测到的数值与沿过后即现的总线数值不同,一个沿即被用于同步。
翻译解释:
“同步”指的是总线上的数据位流中的“跳变沿”T相对于本机位时间中的同步段起始沿的相位相同。 这个“跳变沿-An edge”相对于同步段沿的超前或滞后Tscl数值,即是相位差e,(e用来控制机器内部数字锁相环电路以修正SJW个Tscl值。)超前时,e<0,edge同步发生在“前一个”位时间内的TSEG2段内(采样点之后);滞后时,e>0,edge同步发生在当前位时间TSEG1段内。
一个采样点,仲裁读取了总线上那一刻的数值D1。在这一时刻之后,总线上数据位流上的数值改变将使总线发生“跳变”,控制器监测到这个跳变沿T后的总线数值D2与前一采样点所读取的数值D1不同时,这个跳变沿T就作用于同步电路,通过内部DPLL锁相环的作用使TSEG1段拉宽或TSEG2变窄。 即同步条件: SYN=T&&(D1^D2); //当然,应该是逻辑异或。
因此,以上第4个翻译更贴切:
2、只要在先前采样点上检测到的总线数值与(总线上)跳变沿过后(即现的)的总线数值不同,这个沿即被用于同步。 |