Моделирование пост-макета (фактически - что-нибудь после синтеза) будет симулировать гейты, а не RTL, и есть много вентилей.
Я думаю, что выВы немного запутались в понимании того, как работает симулятор.Я говорю это потому, что вызов типа sleep()
связан с ожиданием времени, измеряемого часами на стене, а не счетчиком времени симулятора.Время симулятора увеличивается, однако быстро симулятор работает.
Симулятор - это цикл, который оценивает состояние системы.Каждая итерация цикла представляет собой «временной интервал», например, каково состояние системы в момент времени 100 нс.Он переходит только от одного временного интервала к следующему, когда все сигналы в нем достигли устойчивого состояния.
В RTL или имитации без привязки затвора большая часть оценки сигналов происходит в «нулевое время», то есть эффект оценки назначения происходит в одном и том же временном интервале.Единственным исключением, как правило, являются часы, которые определены для изменения в определенное время, и это вызывает срабатывание регистров, что заставляет их менять свой выход, что приводит к переоценке процессов, модулей, назначений, которые имеют входы из регистров,что приводит к изменению других сигналов, что приводит к переоценке других процессов и т. д. и т. д. и т. п., пока все не уладится, и мы не сможем перейти к следующему фронту синхронизации.
В сообщенииПри моделировании макета с задним временем аннотирования каждый элемент системы имеет время от входа до выхода, связанное с ним.Это означает, что больше ничего не происходит в «нулевое время».Теперь симулятор поместил эффект каждого назначения в список, сказав, что «сигнал b изменится на 1 во время 102,35 нс».Каждые ворота имеют разные сроки.Каждый вход на каждом вентиле будет иметь различную синхронизацию с выходом.Это означает, что моделирование с обратной аннотацией должно оценивать множество временных интервалов, так как сигналы меняют состояние в разное время.Не только когда часы меняются.Вероятно, в каждом срезе мало что происходит, но их много.
... и я только говорил о добавлении синхронизации по времени.Добавьте время проволоки, и все станет еще сложнее.
В принципе, есть гораздо больше поводов для беспокойства, поэтому симы становятся медленнее.