2012-03-10 4 views
2

두 개의 와이드 mux를 포함하는 두 레벨 멀티플렉서를 만들려고합니다. 각각의 와이드 멀티플렉서는 동일한 선택 신호를 공유하는 8 개의 2 : 1 멀티플렉서를 가지고 있습니다. RLOC를 사용하여 선택 신호를 하나의 Virtex-5 슬라이스로 공유하는 하나의 와이드 멀티플렉서 (= 8 2 대 1 멀티플렉서)를 패킹 할 수 있습니다. 이 2 개의 넓은 멀티플렉서를 2 개의 슬라이스로 묶고 싶습니다. 그러나 다음 코드는 나에게지도 오류를 제공합니다 ERROR : 팩 : 679 -자일링스 RLOC 매핑 실패

누구든지이 문제를 해결하는 방법을 알고 설계 제약 (매크로 이름 = hset, RLOC = X2Y2)을 순종 할 수 없음을?

module mux_8(a, c, d, sel, o); 
input [7:0] a; 
input [7:0] d; 
input [7:0] c; 
input [1:0] sel; 
output [7:0] o; 

wire [7:0] b; 

(* RLOC = "X0Y0" *) 
mux mux_0(.a(a[0]), .b(b[0]), .sel(sel[0]), .o(o[0])); 
(* RLOC = "X0Y0" *) 
mux mux_1(.a(a[1]), .b(b[1]), .sel(sel[0]), .o(o[1])); 
(* RLOC = "X0Y0" *) 
mux mux_2(.a(a[2]), .b(b[2]), .sel(sel[0]), .o(o[2])); 
(* RLOC = "X0Y0" *) 
mux mux_3(.a(a[3]), .b(b[3]), .sel(sel[0]), .o(o[3])); 
(* RLOC = "X0Y0" *) 
mux mux_4(.a(a[4]), .b(b[4]), .sel(sel[0]), .o(o[4])); 
(* RLOC = "X0Y0" *) 
mux mux_5(.a(a[5]), .b(b[5]), .sel(sel[0]), .o(o[5])); 
(* RLOC = "X0Y0" *) 
mux mux_6(.a(a[6]), .b(b[6]), .sel(sel[0]), .o(o[6])); 
(* RLOC = "X0Y0" *) 
mux mux_7(.a(a[7]), .b(b[7]), .sel(sel[0]), .o(o[7])); 

(* RLOC = "X2Y2" *) 
mux mux_8 (.a(c[0]), .b(d[0]), .sel(sel[1]), .o(b[0])); 
(* RLOC = "X2Y2" *) 
mux mux_9 (.a(c[1]), .b(d[1]), .sel(sel[1]), .o(b[1])); 
(* RLOC = "X2Y2" *) 
mux mux_10(.a(c[2]), .b(d[2]), .sel(sel[1]), .o(b[2])); 
(* RLOC = "X2Y2" *) 
mux mux_11(.a(c[3]), .b(d[3]), .sel(sel[1]), .o(b[3])); 
(* RLOC = "X2Y2" *) 
mux mux_12(.a(c[4]), .b(d[4]), .sel(sel[1]), .o(b[4])); 
(* RLOC = "X2Y2" *) 
mux mux_13(.a(c[5]), .b(d[5]), .sel(sel[1]), .o(b[5])); 
(* RLOC = "X2Y2" *) 
mux mux_14(.a(c[6]), .b(d[6]), .sel(sel[1]), .o(b[6])); 
(* RLOC = "X2Y2" *) 
mux mux_15(.a(c[7]), .b(d[7]), .sel(sel[1]), .o(b[7])); 

endmodule 


(* LUT_MAP = "yes" *) 
module mux(a, b, sel, o); 
input a; 
input b; 
input sel; 
output o; 

assign o = (~sel & a) | (sel & b); 
endmodule 

답변

1

귀하의 제약 사항에 따라 경로를 지정할 수 없다고 알려 드려 죄송합니다. fpgaeditor (ISE의 도구)를 사용하여 대상 슬라이스의 라우팅 리소스를 볼 수 있습니다. fpgaeditor에서 수동으로 라우팅 할 수 있습니다. 가능하다면 라우팅 된 디자인을 하드 마르코로 저장하고 디자인에 마르코를 사용할 수 있습니다. 그러나, 나는 당신이 처리 할 수없는 라우팅 혼잡을 일으키는 한 슬라이스에 너무 많은 먹스를 넣었다고 생각합니다.

+0

감사합니다. 비슷한 방식으로이 문제를 해결할 :) – drdot