2016-11-22 71 views
2

我的頂級verilog模塊爲myStorm ice40開發板上的四個LED發出信號,標記爲「LED1-LED4」。yosys爲什麼重新編號向量端口?

module top (
    output [4:1] LED 
); 
assign LED = 4'b1010; 
endmodule 

我使用了相同的編號中的.pcf文件:

set_io LED[1] 37 
set_io LED[2] 38 
set_io LED[3] 39 
set_io LED[4] 41 

但在.blif輸出,yosys已重新編號的信號:

.model top 
.inputs 
.outputs LED[0] LED[1] LED[2] LED[3] 
... 

所以阿拉克尼-PNR抱怨:

top.pcf:4: fatal error: no port `LED[4]' in top-level module `top' 

請問yosys期望頂級矢量端口始終從零開始編號?

回答

2

原因是Yosys BLIF後端未使用存儲在Yosys Wire對象中的起始偏移量和方向(upto/downto)的提示來生成單位網絡名稱。

這現在已修復在承諾5c2c78e2dd。感謝您將這引起我的注意。

更新到Yosys的最新git頭,你應該得到你期待的結果。

相關問題