64 ビットのダイ リビジョン フィールドを 32 ビットの MAC アドレスに変換して、ワイヤレス アプリケーションで衝突を回避する方法についての提案を検討しています。
ダイス情報は
struct {
uint32_t lot;
uint16_t X_coordinate;
uint16_t Y_coordinate;
}
座標の範囲はわかりませんが、いくつかのサンプルに基づいて、座標は < 256 に制限されていると思います。これにより、スペースが効果的に 2 バイト削減されます。しかし、そのlot
数は完全に取り込まれています。
これを試してみます(読みやすくするための疑似コード、キャストは省略しています)
MAC = X_coordinate | Y_coordinate << 8 | lot << 16;
の上位 16 ビットとslot
の上位 8 ビットを破棄しcoordinate
ます。どこかの上位16ビットでXORする必要があるかもしれませんがlot
、現実の世界でこれを経験したことはありません。
ダイ リビジョン情報のサンプルを次に示します。リトル エンディアン バイト ダンプ
lot/wafer ID X coordinate Y coordinate
C3 1B B0 46 20 00 22 00
CB 8B 94 46 14 00 32 00
CB 8B 94 46 27 00 1E 00
B9 F7 80 6F 20 00 08 00