die "Type too large: $type\n" if $type >= (1 << $self->{type_bits});
die "Addr too large: $addr\n" if $addr >= (1 << $self->{addr_bits});
my $result = ($type << $self->{addr_bits}) + $addr;
die "Type too large: $type\n" if $type >= (1 << $self->{type_bits});
die "Addr too large: $addr\n" if $addr >= (1 << $self->{addr_bits});
my $result = ($type << $self->{addr_bits}) + $addr;