Полезная книжка от Шеня
2021-01-27 14:25https://mccme.ru/shen/progbook/7edition.pdf
Сейчас, если вам нужно промоделировать цифровую (и не только цифровую, а произвольную дискретную) систему, берите Modelsim от Альтеры. Он входит в бесплатную версию The Intel Quartus Prime Lite Edition.
Но SystemC умер не совсем. Он эволюционировал на системный уровень. В переводе с инженерного жаргона, так называется подход, когда вы моделируете ваш девайс не как набор отдельных проводов или логических элементов И/ИЛИ/НЕ, а как набор крупных блоков: процессор, память, сетевой контроллер. Блоки соединяются параллельными шинами адрес/данные, по которым пересылаются не логические уровни 0 или 1, а пакеты данных, обычно много (десятков или тысяч) байт.
Для моделирования на системном уровне поверх старого SystemC был разработан новый набор классов и интерфейсов, получивший название TLM, или иногда TLM2. Расшифровывается как Transaction Level Modeling, version 2.0. Была ещё (несовместимая) версия TLM 1.0, но она оказалась совсем не в дугу, и про неё поспешили забыть. Везде ниже под TLM понимается TLM версии 2.0.
Существует несколько книжек по SystemC, довольно устаревших, и ни одна из них не описывает TLM. Книжек собственно по TLM нету, увы. Только PDF документация, входящая в дистрибутив systemc-2.3.3 (это последняя на настоящий момент версия). Но документация эта вполне неплохая.
TLM поддерживается некоторыми востребованными коммерческими пакетами, например Synopsys VDK. Фактически, если какой-то пакет заявляет о поддержке SystemC, обычно имеется в виду именно TLM. Примитивный уровень SystemC уже никто не использует.