将64位值散列为32位MAC地址

时间:2013-11-19 21:11:43

标签: mac-address msp430 integer-hashing

我正在研究如何将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;

并丢弃lot的前16位和coordinate的前8位。我觉得也许我应该在某个地方lot的前16位进行XOR,但我在现实世界中没有经验。

以下是模具修订信息的示例:little endian byte dump

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   

0 个答案:

没有答案