#pragma HLS PROTOCOL指令优化的使用
可以指定region区域的协议。
bool invert(stream<input_interface>& in_data_1,
stream<input_interface>& in_data_2,
stream<short>& output
)
{
//#pragma HLS INTERFACE axis register both port=output
//#pragma HLS INTERFACE axis register both port=in_data_2
//#pragma HLS INTERFACE axis register both port=in_data_1
input_interface in;
bool full_n;
// Read an input value or return
region1:{
#pragma HLS PROTOCOL floating
if (!in_data_1.read_nb(in))
if (!in_data_2.read_nb(in))
return false;
}
// If the valid data is written, return not-full (full_n) as true
if (in.valid) {
if (in.invert)
full_n = output.write_nb(~in.data);
else
full_n = output.write_nb(in.data);
}
return full_n;
}