Về cái infos và warning cụ thể nó ở phase nào. Mình đoán là ở phase Implement do cậu chưa gán chân.
Còn việc chia tần 60Hz xuống 20Hz:
- Nếu cậu muốn có clock 1/2 duty bằng mạch số thì không được.
- Nếu cậu chỉ cần bắt theo 1 sườn ( lên hoặc xuống ) thì có thể dùng FSM với 3 trạng thái LOW, HIGH0, HIGH1 để chia về 20Hz với clock 2/3 duty hoặc LOW0, LOW1, HIGH để có 1/3 duty. Tuy nhiên không recommend bạn dùng cách 2 tần số này. ( dễ phát sinh timing violation do lêch pha giữa 2 tần số )
- Cuối cùng là cách tạo hiệu quả tương tự nhưng chạy ổn định ( tamper-proof timing violation ): bạn dùng bộ đếm mudulus 3 ( như bộ đếm của bác Jetflieu ) để tạo chân enable cho khối cần hoạt động ở tần số 20Hz
+ Thực chất code của bác Jet có thể coi là 1 bộ đếm hoạt động ở tần số =1/3 tần số của hệ thống đưa vào từ chân CLK.
Còn việc chia tần 60Hz xuống 20Hz:
- Nếu cậu muốn có clock 1/2 duty bằng mạch số thì không được.
- Nếu cậu chỉ cần bắt theo 1 sườn ( lên hoặc xuống ) thì có thể dùng FSM với 3 trạng thái LOW, HIGH0, HIGH1 để chia về 20Hz với clock 2/3 duty hoặc LOW0, LOW1, HIGH để có 1/3 duty. Tuy nhiên không recommend bạn dùng cách 2 tần số này. ( dễ phát sinh timing violation do lêch pha giữa 2 tần số )
- Cuối cùng là cách tạo hiệu quả tương tự nhưng chạy ổn định ( tamper-proof timing violation ): bạn dùng bộ đếm mudulus 3 ( như bộ đếm của bác Jetflieu ) để tạo chân enable cho khối cần hoạt động ở tần số 20Hz
+ Thực chất code của bác Jet có thể coi là 1 bộ đếm hoạt động ở tần số =1/3 tần số của hệ thống đưa vào từ chân CLK.
Comment