
Вот бывает так, что проект работает, вроде бы все нормально, но проходит время, возвращаешься к нему и находишь досадные ошибки. Сейчас речь пойдет о проекте ранее опубликованном на нашем сайте – это процессор reduced AVR.
В принципе, проблема в том проекте с самого начала была известна, и более того, на нее указывал мне лично наш читатель. В этом проекте Quartus II выдавал сообщение, что на сигнале тактовой частоты в проекте есть гейт (gate) и это якобы не хорошо:
Warning: Found 2 node(s) in clock paths which may be acting as ripple and/or gated clocks -- node(s) analyzed as buffer(s) resulting in clock skew
Info: Detected ripple clock "altufm_none0:inst13|altufm_none0_altufm_none_ghp: altufm_none0_altufm_none_ghp_component|arclkena_reg" as buffer
Info: Detected gated clock "altufm_none0:inst13|altufm_none0_altufm_none_ghp: altufm_none0_altufm_none_ghp_component|ufm_arclk" as buffer
Сказать по правде, в тот момент я не придал большого внимания этому предупреждению: работает проект да и ладно. Тем более, что исправить проблему не очень просто (позже объясню почему).
Совсем недавно другой наш читатель пожаловался, что у него не работает этот проект reduced AVR. Вы можете почитать его комментарии к статье о проекте.
Тогда уже я стал разбираться, и теперь появилось время рассказать подробнее о проблеме и ее решении.














