diff --git a/hls_2018/README.md b/hls_2018/README.md index 3994d6f5d29e244aa0c8061609d9c5bed64e4624..9785b00d3988cc8768a2c8eafc574d6da60dfb13 100644 --- a/hls_2018/README.md +++ b/hls_2018/README.md @@ -27,5 +27,40 @@ Options: * Input/Output: boardstr(8bit\*41472), seed(32bit), &status(32bit), return(1bit) ## Results -TODO +|Q|heap(seed:0)|c-array(seed:0)| +|:---|:---|:---| +|01|1|1| +|02|1|1| +|03|1|1| +|04|1|1| +|05|1|1| +|06|1|1| +|07|1|1| +|08|1|1| +|09|1|1| +|10|1|1| +|11|1|1| +|12|1|1| +|13|1|1| +|14|1|1| +|15|1|1| +|16|1|1| +|17|1|1| +|18|1|1| +|19|1|1| +|20|1|1| +|21|1|1| +|22|1|1| +|23|1|1| +|24|1|1| +|25|1|1| +|26|1|1| +|27|1|1| +|28|1|1| +|29|1|1| +|30|1|1| +|31|1|1| +|32|1|1| +|33|1|1| +|34|1|1| diff --git a/hls_2018/router_03/router.cpp b/hls_2018/router_03/router.cpp index adf00df91ece983c8838c7454e3cc8d24ff7c2c2..0a21b172b60691bf1a51eaa348cde97c6c96d381 100755 --- a/hls_2018/router_03/router.cpp +++ b/hls_2018/router_03/router.cpp @@ -481,7 +481,7 @@ void pq_pop(ap_uint<32> pq_nodes[MAX_PQ], ap_uint<16> *ret_priority, ap_uint<16> ap_uint last_priority = (ap_uint<16>)(pq_nodes[*pq_len] & PQ_PRIORITY_MASK); // Priority of last element PQ_POP_LOOP: - while (1) { + while (!(i >> (PQ_BIT-1))) { // (2018.08.24) Loop condition fixed #pragma HLS LOOP_TRIPCOUNT min=1 max=15 /** Set!: min=0 max=PQ_BIT **/ ap_uint c1 = i << 1; // child node(left) diff --git a/hls_2018/router_04/router.cpp b/hls_2018/router_04/router.cpp index 81804e02c3e1072895dd9eb7db74523e348305d3..2fde0ec022aa49ef5d00a89c194fefa9fb8efab9 100755 --- a/hls_2018/router_04/router.cpp +++ b/hls_2018/router_04/router.cpp @@ -481,7 +481,7 @@ void pq_pop(ap_uint<32> pq_nodes[MAX_PQ], ap_uint<16> *ret_priority, ap_uint<16> ap_uint last_priority = (ap_uint<16>)(pq_nodes[*pq_len] & PQ_PRIORITY_MASK); // Priority of last element PQ_POP_LOOP: - while (1) { + while (!(i >> (PQ_BIT-1))) { // (2018.08.24) Loop condition fixed #pragma HLS LOOP_TRIPCOUNT min=1 max=16 /** Set!: min=0 max=PQ_BIT **/ ap_uint c1 = i << 1; // child node(left)