Esempio n. 1
0
 def as_hdl_BitString(self, v, width, force_vector, vld_mask, signed):
     v = bit_string(v, width, vld_mask=vld_mask)
     if signed:
         return hdl_call(self.SIGNED, [
             v,
         ])
     else:
         return v
Esempio n. 2
0
File: expr.py Progetto: arnabd88/hwt
 def as_hdl_BitsVal(self, val):
     t = val._dtype
     w = t.bit_length()
     _v = bit_string(val.val, w, val.vld_mask)
     t = self.as_hdl_HdlType_bits(Bits(w, signed=t.signed))
     return hdl_call(t, [
         _v,
     ])
Esempio n. 3
0
 def as_hdl_BitString(self, v, width: int,
                      force_vector: bool, vld_mask: int, signed):
     is_bit = not force_vector and width == 1
     #if vld_mask != mask(width) or width >= 32 or is_bit:
     v = bit_string(v, width, vld_mask)
     if is_bit:
         v.base = 256
         return v
     if signed is None:
         return v
     elif signed:
         cast = self.SIGNED
     else:
         cast = self.UNSIGNED
     return HdlOp(HdlOpType.APOSTROPHE, [cast, v])