CHƯƠNG 3 : LÝ THUYẾT GIAO THỨC CAN
3.2. Giao thức CAN (CAN Protoco l)
3.2.7 Sự đồng bộ xung clock
Mỗi nút phải tạo một thời gian danh nghĩa Thời gian bit ( Bit Time ) để cĩ thể nhận và phát dữ liệu xuống bus với sự đồng bộ các node khác. Thực tế, nếu Thời gian bit của mỗi nút khơng được đồng bộ với nhau, giá trị đọc từ bus tại thời điểm lấy mẫu cĩ thể khơng là giá trị đúng với thời điểm mong muốn. Độ trễ này cĩ thể làm ảnh hưởng trong node nhận khung truyền, khi mà cĩ ít thời gian tính tốn CRC và gởi 1 bit “trội” trong ACK Slot để xác nhận rằng khung truyền đã đúng.
Hình 3.21: Sự đồng bộ xung clock trong CAN
· SJW ( Synchronization Jump Width ) : SJW điều chỉnh một bit clock đi từ 1 đến 4 Thời
gian lượng tử (được khởi tạo trước trong thanh ghi và khơng đổi trong q trình hoạt động) để thực hiện việc đồng bộ với bức điện truyền.
· Lỗi pha ( Phase Error ) : Lỗi pha được phát hiện khi sự thay đổi 1 bit “trội” thành “lặn”
hay 1 bit “lặn” thành“trội” khơng xảy ra bên trong đoạn đồng bộ( Synchronization Segment ) .
· Cơ chế đồng bộ
- Đồng bộ cứng ( Hard Synchronization ): chỉ xảy ra khi chuyển cạnh bit đầu tiên từ “lặn” thành “trội” ( logic “1” thành “0”) khi bus rảnh, báo hiệu khởi đầu khung truyền ( SOF). Đồng bộ cứng làm cho bộ đếm Thời gian bit khởi động lại, gây nên một chuyển cạnh trong Đoạn đồng bộ ( Sync_Seg) . Tại thời điểm này, mọi node nhận sẽ đồng bộ với node phát. Đồng bộ cứng chỉ xảy ra một lần trong suốt một bức điện. Và đồng bộ lại cĩ thể khơng xảy ra trong cùng một bit ( SOF ) khi mà đồng bộ cứng đang xảy ra.
- Đồng bộ lại ( Resynchronization ): được thực hiện để bảo tồn sự đồng bộ đã thực hiện bởi đồng bộ cứng. Thiếu đồng bộ lại, node nhận khơng thể cĩ được sự đồng bộ vì sự lệch pha của các bộ dao động tại mỗi node.