firrtl.Driver устарела - но что мы должны использовать вместо этого? - PullRequest
4 голосов
/ 06 июня 2019

Я сегодня обновил чип ракеты и заметил, что FIRRTL теперь говорит это:

------------------------------------------------------------------------------
Warning: firrtl.Driver is deprecated since 1.2!
Please switch to firrtl.stage.FirrtlStage
------------------------------------------------------------------------------

Хорошо, достаточно справедливо, я полагаю, нам нужно обновить то, что мы передаем вызову FIRRTL:

FIRRTL ?= java -Xmx3G -Xss8M -XX:MaxPermSize=256M $(FIRRTL_PROFILE_SWITCH)  -cp $(FIRRTL_JAR) firrtl.Driver

Однако наивно переключение firrtl.Driver на firrtl.stage.FirrtlStage не сработало:

Error: Main method not found in class firrtl.stage.FirrtlStage, please define the main method as:
   public static void main(String[] args)

Что мы должны сделать, чтобы избежать этого предупреждения об устаревании?

1 Ответ

4 голосов
/ 06 июня 2019

Это плохо, предупреждение об устаревании необходимо обновить.Вы можете (по желанию) переключиться на firrtl.stage.FirrtlMain, если захотите.См. freechipsproject / rocket-chip # 1984 , чтобы узнать, как обновить Rocket Chip.Я получу PR, чтобы исправить это на стороне FIRRTL.

Был некоторый поток между FirrtlStage и FirrtlMain.Причиной было то, что не каждая стадия должна была иметь основную функцию.

Если вам нужна дополнительная информация о всем рефакторе Stage / Phase, который распространяется через Chisel, FIRRTL и связанные проекты, см. freechipsproject / FIRRTL #1005 и (еще не объединены) freechipsproject / FIRRTL # 1079 .

...