ПОИСК Статьи Чертежи Таблицы Системы мультиязычного проектирование м тестирования из "Проектирование на ПЛИС архитектура, средства и методы " Как только пользовательские оценки будут сформированы, при нажатии кнопки Go ( Начать ) средство синтеза сгенерирует соответствующий RTL VHDL код. Этот код может быть использован средствами традиционного логического синтеза или приложениями физического синтеза для генерирования таблицы соединений, используемой средствами реализации (размещения и разводки). [c.179] Можно также синтезировать таблицу соединений вентилей непосредственно из исходного С/С++-кода (этот метод не показан на Рис. 11.7). Однако промежуточный RTL-код предоставляет разработчикам определенную зону комфорта, так как на этом этапе можно провести проверки и убедиться в правильности результатов, достигнутых в ходе трансляции из / ++ в RTL. [c.179] Создание промежуточного RTL весьма полезно и с той точки зрения, что на этом уровне абстракции разработчики аппаратуры производят соединение различных функциональных блоков, из которых состоит устройство. Большая часть модулей современных устройств обычно представлена в виде отдельных блоков интеллектуальной собственности, выполненных на уровне регистровых передач. Это значит, что промежуточный RTL-код весьма полезен при разработке, так как позволяет производить интефацию и проверку всей аппаратной части системы Рис. 11.7. Разработчики также могут воспользоваться всеми преимуществами существующих средств RTL-синтеза, которые очень хорошо продуманны, устойчивы к ошибкам и понятны пользователю. [c.179] Этот недостаток абстрактности синтеза становится причиной того, что описания устройств, проектируемых на System и расширенном / ++, т. е. описания с учетом временнь/х параметров, зависят от способа реализации. Это, в свою очередь усложняет разработку и модификацию устройств, а также значительно снижает их гибкость в оценке возможных вариантов реализации и перенастройки их на другие технологии (Рис. 11.8). [c.179] В отличие от них последнее поколение средств синтеза на основе чистого / ++ поддерживает высокий уровень абстракции. Не зависящие от конкретной реализации модели / ++ являются очень компактными, быстро и легко создаются и модифицируются. Используя само по себе средство синтеза, пользователь может легко и быстро формировать оценки возможных вариантов и перестраивать схему устройства на другие технологии реализации. В итоге проектирование на основе чистого / ++ может значительно повысить скорость реализации и увеличить гибкость процесса проектирования по сравнению с проектированием на основе других версий языка / ++. [c.179] Подводя ИТОГ, необходимо заметить, что ряд поставщиков САПР электронных систем выпускают системы многоязычного проектирования и тестирования, которые могут выполнять совместное моделирование устройств, описанных на разных уровнях абстракции. [c.180] Верхний уровень схемы может быть представлен традиционным кодом HDL, который вызывает другие модули, описанные на различных версиях HDL или на версия / ++ (одной или нескольких). Верхний уровень схемы может быть также представлен одной из разновидностей языка С/С++, из которой происходит вызов субмодулей, написанных на других языках. [c.180] В действительности, состав различных мультиязычных систем проектирования и тестирования меняется почти каждую неделю, поэтому перед выбором той или иной системы (среды) проектирования вам необходимо провести определённый анализ. [c.181] При разработке представления схемы с помощью одной из рассмотренных здесь версий языка / ++ довольно часто на этом же языке создаются и наборы тестов. Эти тесты, как правило, используют языковые конструкции, которые не понятны многим низкоуровневым средствам, таким как преобразователь кода из / ++ в RTL. В этом случае, как и раньше, придётся вручную переносить тестовые воздействия из / ++ в VHDL/Verilog, с тем чтобы запустить их на системе моделирования RTL. Одним из преимуществ смешанных систем проектирования и тестирования заключается в том, что можно использовать тестовые воздействия языка / ++ при работе средств моделирования на уровнях абстракции RTL и вентилей. Не исключено, что кое-что придётся подкорректировать, но это всё же намного легче, чем начинать всё с нуля. [c.181] Для программиста, который по тем или иным причинам перестает заниматься своим делом, т. е. разработкой программного обеспечения, и начинает заниматься разработкой программных модулей или аппаратно-программным проектированием и тестированием, язык Systeme является своеобразной палочкой-выручалочкой. [c.181] Вернуться к основной статье