2017-03-28 20 views
3
나는 그런 다음 예에서와 같이 일반 매개 변수, 밖으로 감안하여 내 Yosys 스크립트를 더 건조하고 싶습니다

: 나는 선언하는 방법을 발견하거나 해제 참조 변수하지 않은Yosys 스크립트에 변수가있을 수 있습니까?

read_liberty -lib /long/path/to/lib/file 
... 
dfflibmap -liberty /long/path/to/lib/file 
... 
abc -liberty /long/path/to/lib/file 

을,이 TCL (set lib_file /long/path/to/lib/file) 또는 배쉬 (export lib_file=/long/path/to/lib/file)와 같은 방법으로?

답변

4

TCL을 사용할 수 있습니다. 자세한 내용은 yosys -h tcl을 참조하십시오. yosys -c <script_file>으로 TCL 스크립트를 실행하십시오 (기본 Yosys 스크립트의 경우 yosys -s <script_file> 대신).

커밋 b8d7f57에서 .tcl 파일에 대한 프론트 엔드 감지 기능이 추가되었습니다. 따라서 b8d7f57부터는 <script_file>.tcl으로 끝나면 yosys <script_file>을 사용하여 TCL 스크립트를 실행할 수 있습니다.

+0

고마워요, 이것은 몇 가지를 단순화합니다. 다른 사용자를 위해서 :'-c' 옵션으로 Yosys를 실행하는 것과 별개로 스크립트 상단에'yosys -import'라는 줄을 추가하여 모든 Yosys 명령을 TCL 인터프리터에서 사용할 수있게하고 이름 바꾸기 'proc'은'procs'를'procs'로 호출하면 TCL 예약어입니다. – FriendFX