Re: [問題] Design Compiler- define_name_rules
※ 引述《zxvc (執著)》之銘言:
: 請問有用Design Compiler 2008.09的人有沒有發現有幾個指令好像不太有效?
: 就是:
: define_name_rules
: change_names
: report_names
: 我學長發現Design Compiler 2008.09合出來的netlist會有"\"字元。
: 我試著去測試上述指令,與manual戰鬥了一個下午,很失敗。
: 我覺得我應該沒有誤解manual,也搜過google但就是試不出想要的結果。
: 只能推論軟體有bugs。
: 我學長之前舊版的Design Compiler就沒有此問題。
: 我覺得照理來講最簡單的作法拿掉"\"可以用以下指令:
: define_name_rules myrule -restricted "\\"
: change_names -rules myrule -hierachy
: 但DC 2008.09寫出的netlist還是有"\"。
: 有沒有人遇到類似問題?
經過兩天來的戰鬥,終於把反斜線的問題給解決了,得到以下心得。
1. define_name_rules的-map的map string的格式是:
{{"pattern", "replacement"}, {"pattern", "replacement"}*}
但在使用-map時map string外部還要再加上一層{}。如:
define_name_rules MyRule -map {{{"a", "A"}, {"b", "B"}}}
(詳情請看DC manuals)
2. 如果write的Verilog netlist有incomplete net busses
(如abc[2], abc[0],卻沒有abc[1]),
或斜線"/"(如A/B, A/B/C),
那麼在用DC寫出Verilog netlist時,DC會在這些nets前加上反斜線"\"字元,
並且在最後面加上一個space character " ",
(否則NC-Verilog或ModelSim會compile失敗)。
例如:
合法: wire \abc[2] , \abc[0] , xxx;
不合法:wire abc[2] , xxx; wire \abc[2], xxx;
所以在寫出netlist前必須把"["、"]"、"/"用別的字元替換掉。
但你無法用define_name_rules的-restricted限制這些字元(原因不名)。
似乎只能用-map,如:
define_name_rules MyRule -map {{{"[", "_"}, {"]", "_"}, {"/", "_"}}}
change_names -rules MyRule -hierarchy
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.139.206.104
→
11/28 15:59, , 1F
11/28 15:59, 1F
→
11/28 16:00, , 2F
11/28 16:00, 2F
→
11/28 16:03, , 3F
11/28 16:03, 3F
→
11/28 16:05, , 4F
11/28 16:05, 4F
→
11/28 16:05, , 5F
11/28 16:05, 5F
→
11/28 16:25, , 6F
11/28 16:25, 6F
→
11/28 16:25, , 7F
11/28 16:25, 7F
→
11/28 16:28, , 8F
11/28 16:28, 8F
→
11/28 16:29, , 9F
11/28 16:29, 9F
推
11/28 17:20, , 10F
11/28 17:20, 10F
推
11/28 17:28, , 11F
11/28 17:28, 11F
→
08/13 18:52, , 12F
08/13 18:52, 12F
→
09/17 22:47, , 13F
09/17 22:47, 13F
→
11/11 15:33, , 14F
11/11 15:33, 14F
→
01/04 22:05,
5年前
, 15F
01/04 22:05, 15F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):