UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor hmeier88
Visitor
509 Views
Registered: ‎07-16-2018

Guide Wire through IP

Hi!

 

I'm trying to sort of debug the LPDDR Wrapper on my device.

So I created an IP that connects the wire from LPDDR to my LED but I get an error.

(it's the wire from LPDDR that goes into the memory)

 

So first question is 1) is that the correct way to do that?

2) how to fix the error if my way is correct

 

My IP "dpd": (kindly ignore the SWITCH functionality, it's for another purpose ^^)

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date:    02:01:28 09/26/2018 
// Design Name: 
// Module Name:    DPD 
// Project Name: 
// Target Devices: 
// Tool versions: 
// Description: 
//
// Dependencies: 
//
// Revision: 
// Revision 0.01 - File Created
// Additional Comments: 
//
//////////////////////////////////////////////////////////////////////////////////
module dpd(
    input CS,
	 output STATUS_LED1,
	 output STATUS_LED2,
	 output STATUS_LED3,
	 output STATUS_LED4,
	 output STATUS_LED5,
	 output STATUS_LED6,
	 output STATUS_LED7,
	 output STATUS_LED8,
	 input SWITCH
    );
	 
parameter C_SWITCH_ACTIVE = 0;
parameter C_STATE_PWDN = 1'b1;
parameter C_STATE_PWUP = 1'b0;
	 
reg [1:0] state;

initial
begin
	state = 1'b0;
end

always @(*)
begin
	if(SWITCH == C_SWITCH_ACTIVE)
		state = C_STATE_PWDN;
	else
		state = C_STATE_PWUP;
end

assign STATUS_LED1 = CS;
assign STATUS_LED2 = 0;
assign STATUS_LED3 = 0;
assign STATUS_LED4 = 0;
assign STATUS_LED5 = 0;
assign STATUS_LED6 = !CS;

assign STATUS_LED7 = state;
assign STATUS_LED8 = state;

/*
					assign CS = 0;
					assign WE = 0;
					assign RAS = 1;
					assign CAS = 1;*/

endmodule

It's about the CKE port from the LPDDR wrapper (directly from memory peripheral would be fine too) which I wanna connect to my LED.

Here is the port configuration I used:

t1.jpg

 

Thats the error:

ERROR:Pack:1107 - Pack was unable to combine the symbols listed below into a
   single IOB component because the site type selected is not compatible. 

   Further explanation:
   Symbol "dpd_0/dpd_0/STATUS_LED61_INV_0" is not a kind of symbol that can join
   an IOB component.
   Symbols involved:
   	PAD symbol "dpd_0_STATUS_LED1_pin" (Pad Signal = dpd_0_STATUS_LED1_pin)
   	LUT symbol "dpd_0/dpd_0/STATUS_LED61_INV_0" (Output Signal =
   dpd_0_STATUS_LED6_pin_OBUF)
   	TBUF symbol "LPDDR/LPDDR/mcb_ui_top_0/mcb_raw_wrapper_inst/iob_cke" (Control
   Signal = LPDDR/LPDDR/mcb_ui_top_0/mcb_raw_wrapper_inst/t_cke)

Trying to connect those via the UCF file does work in terms of bitstream creation but doesn't do anyting on my device (ie. LED doesn't light up on mem read).

 

Design:

t2.jpg

 

Any suggestion is appreciated.

Best regards! 

0 Kudos
1 Reply
Xilinx Employee
Xilinx Employee
430 Views
Registered: ‎06-30-2010

Re: Guide Wire through IP

i am not sure i fully understand, what 'wire' are you trying to connect from the LPDDR interface?

is it an output of the FpGA, is so then there will be no path back in to another pin, you would need to take the output from before the IOB
-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos