2016-12-15 2 views
0

В одном из проектов, которые я скомпоновал с помощью Yosys, я увидел, что у нас могут быть личные провода (провода с личным именем). Например, $ 0_s0 [127: 0]. Итак, у меня есть к ним несколько вопросов:Некоторые вопросы о проводах с частным именем в Yosys

  1. Почему у нас есть личные провода в Yosys (какие сценарии)?

  2. всегда преобразуется в уникальное имя. Например, когда я выгружаю весь проект (используя write_verilog), он дает мне то же имя, что и при сбрасывании только модуля, который содержит этот частный провод?

ответ

2

почему мы имеем частные провода в Yosys (какие сценарии)?

потому что нам нужен механизм для создания имен промежуточных проводов. В выражении, таком как assign x = (a+b)+c;, будет провод, содержащий результат (a+b), и этот провод будет нуждаться в имени.

Лучше сделать это правильно и создать пространство имен для таких имен и отделить их от имен, определенных пользователем. Поэтому последующие передачи в потоке синтеза всегда будут знать, какие имена сохранить и какие имена они могут отбросить.

всегда преобразуется в уникальное имя. Например, когда я выгружаю весь проект (используя write_verilog), он дает мне то же имя, что и при сбрасывании только модуля, который содержит этот частный провод?

No.

Используйте команду как rename -enumerate на самом деле дать публичные имена, что провод, если вы заботитесь о такой согласованности между различными выходными файлами.