cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
monaz_yas
Visitor
Visitor
1,250 Views
Registered: ‎01-21-2019

Unsupported enormous number of load/store instructions

Some errors related to big interface

The brief explanation of my code is as follows, would you please help me with the error in synthesize part?

void Encoder( dout_t o_array[N], din_t in_array[K]);

#pragma HLS latency min=1000

INTERFACE

in_array[64800]

short int

#pragma HLS INTERFACE bram port=in_array

INTERFACE

out_array[64800]

short int

#pragma HLS INTERFACE bram port= out_array

Resourece

H_v[32400][7];

unsigned short int

#pragma HLS RESOURCE variable=H_v core=ROM_2P

 

  • C simulation is run correctly.
  • The error for synthesize part is:

ERROR 1: [HLS 200-70] Failed building synthesis data model.

command 'ap_source' returned error code

    while executing

"source C:/LDPC_DVBS2_ENCODER/EN/EN/solution1/csynth.tcl"

    invoked from within

"hls::main C:/LDPC_DVBS2_ENCODER/EN/EN/solution1/csynth.tcl"

    ("uplevel" body line 1)

    invoked from within

"uplevel 1 hls::main {*}$args"

    (procedure "hls_proc" line 5)

   invoked from within

"hls_proc $argv"  EN:solution1  Apr 29, 2019, 6:47:59 AM

ERROR 2: [XFORM 203-1403] Unsupported enormous number of load/store instructions: 'Encoder'

 

0 Kudos
4 Replies
u4223374
Advisor
Advisor
1,216 Views
Registered: ‎04-26-2015

(1) This should be in the HLS forum.

 

(2) Since you haven't actually posted any code where a load or store occurs, debugging your "enormous number of load/store instructions" will be difficult. I would guess that it's got something to do with trying to read/write >64 elements per cycle (to process 64800 elements in 1000 cycles), when BRAM can only read or write a maximum of two elements per cycle.

0 Kudos
monaz_yas
Visitor
Visitor
1,178 Views
Registered: ‎01-21-2019

I really appreciate your responce. I think by Pragma you are able to understand I used BRAM for interface and ROM_2p for 2D_matrix. I can post my code here if it helps to debug it. By the wa is there any solution in this situation. 

Sincerely.

0 Kudos
scampbell
Moderator
Moderator
1,177 Views
Registered: ‎10-04-2011

Adding file and comment from another post to your response @u4223374  ....

@monaz_yas wrote:

Re: Unsupported enormous number of load/store instructions

I really appreciate your responce. I think by Pragma you are able to understand I used BRAM for interface and ROM_2p for 2D_matrix. I can post my code here if it helps to debug it. By the wa is there any solution in this situation. 

Sincerely.

 

0 Kudos
scampbell
Moderator
Moderator
1,176 Views
Registered: ‎10-04-2011

Hello @monaz_yas ,

As @u4223374 mentioned, you have a very large array size as inputs to your function. This is fine until you begin to parallelize the operations on those elements. Without seeing the code and directives it is hard to know for sure, but I agree that this is most likely the source of your error. If you wish, can you post the code and directives for further analysis?

Thank you,
Scott

0 Kudos