SystemVerilog では streaming operators という演算子が使え、bit の並びを逆順にしたり 指定した bit 単位で並び順を変えるのに使えます(回路記述に使えます)。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
a[7:0] = {<< {8'b1100_0101}}; // a = 8'b1010_0011 bit 逆順 | |
b[31:0]= {<< 8 {32'hDEAD_BEEF}}; // b= 32'hEFBE_ADDE 8bit 単位で並び替え (endian 変換) |
{<<8{value}} は {<<byte{value}} のように定数または型が指定できます。<< が stream operator で << と >> があります。>> の場合、順番は変わらないのであまり使いどころがないかも。
いろいろな例は、IEEE Std 1800™-2012 の 11.4.14.2 Re-ordering of the generic stream にあります。