MCPcopy Create free account
hub / github.com/Xilinx/CHaiDNN / LoadScaleBuffers_ff

Function LoadScaleBuffers_ff

design/conv/src/xi_convolution.hpp:6599–6669  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6597}
6598
6599void LoadScaleBuffers_ff(
6600 gmem_biastype *gmem_bias_fa0,
6601 ap_uint<24> scale_buff_fb0[8][XI_BIASMAXSIZE],
6602 ap_uint<16> outplanes_fb0)
6603{
6604#pragma HLS INLINE OFF
6605#if XI_SCALE_URAM_EN==0
6606#pragma HLS ARRAY_PARTITION variable=scale_buff_fb0 complete dim=1
6607#pragma HLS resource variable=scale_buff_fb0 latency=4 core=RAM_T2P_BRAM
6608#else
6609#pragma HLS RESOURCE variable=scale_buff_fb0 core=XPM_MEMORY uram
6610#pragma HLS ARRAY_RESHAPE variable=scale_buff_fb0 complete dim=1
6611#endif
6612
6613 Biasread_Loop:
6614 for(ap_uint<16> ddr_pntr_ff0=0;ddr_pntr_ff0<(outplanes_fb0 >> 1);ddr_pntr_ff0++)
6615 {
6616#pragma HLS PIPELINE
6617#pragma HLS LOOP_TRIPCOUNT min=24 max=24
6618 biastype scale_word_64bit_ff0 = gmem_bias_fa0[ddr_pntr_ff0];
6619
6620#if 8==8
6621 ap_uint<16> bram_index_ff0 = ddr_pntr_ff0/4;
6622#elif 8==4
6623 ap_uint<16> bram_index_ff0 = ddr_pntr_ff0/2;
6624#endif
6625
6626 ap_int<24> scale_value_0 = (ap_int<24>)(scale_word_64bit_ff0.range(31,0));
6627 ap_int<24> scale_value_1 = (ap_int<24>)(scale_word_64bit_ff0.range(63,32));
6628
6629#if 8==8
6630 if(ddr_pntr_ff0.range(1,0) == 0)
6631 {
6632 scale_buff_fb0[0 + 0][bram_index_ff0] = scale_value_0;
6633 scale_buff_fb0[0 + 1][bram_index_ff0] = scale_value_1;
6634 }
6635
6636 if(ddr_pntr_ff0.range(1,0) == 1)
6637 {
6638 scale_buff_fb0[2 + 0][bram_index_ff0] = scale_value_0;
6639 scale_buff_fb0[2 + 1][bram_index_ff0] = scale_value_1;
6640 }
6641
6642 if(ddr_pntr_ff0.range(1,0) == 2)
6643 {
6644 scale_buff_fb0[4 + 0][bram_index_ff0] = scale_value_0;
6645 scale_buff_fb0[4 + 1][bram_index_ff0] = scale_value_1;
6646 }
6647
6648 if(ddr_pntr_ff0.range(1,0) == 3)
6649 {
6650 scale_buff_fb0[6 + 0][bram_index_ff0] = scale_value_0;
6651 scale_buff_fb0[6 + 1][bram_index_ff0] = scale_value_1;
6652 }
6653#elif 8==4
6654
6655 if(ddr_pntr_ff0[0] == 0)
6656 {

Callers 1

xi_convolution.hppFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected