本文整理汇总了Python中register.Register.add_bit_field方法的典型用法代码示例。如果您正苦于以下问题:Python Register.add_bit_field方法的具体用法?Python Register.add_bit_field怎么用?Python Register.add_bit_field使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类register.Register
的用法示例。
在下文中一共展示了Register.add_bit_field方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: RegParser
# 需要导入模块: from register import Register [as 别名]
# 或者: from register.Register import add_bit_field [as 别名]
#.........这里部分代码省略.........
dont_test
hide
"""
self.__reg = Register()
self.__reg.do_not_generate_code = cnv_bool(attrs, 'nocode')
self.__reg.do_not_test = cnv_bool(attrs, 'dont_test')
self.__reg.hide = cnv_bool(attrs, 'hide')
def start_ports(self, attrs):
"""
Called when the ports tag is encountered.
"""
self.__in_ports = True
def start_value(self, attrs):
"""
Called when the value tag is encountered. Attributes are:
val
token
"""
self.__current_val = attrs['val']
self.__current_token = attrs.get('token', '')
def start_range(self, attrs):
"""
Called when the range tag is encountered. Attributes are:
start
stop
"""
self.__field = BitField(cnv_int(attrs, 'stop'),
cnv_int(attrs, 'start'))
self.__reg.add_bit_field(self.__field)
def start_be(self, attrs):
"""
Called when the be tag is encountered. Attributes are:
active
"""
self.__db.be_level = cnv_int(attrs, 'active')
def start_reset(self, attrs):
"""
Called with the reset tag is encountered. If it is a ports definition,
then it refers to a global reset, and the attributes are:
active
If not, then it refers to the reset value of a bit field, in which
case the attribute is:
type
if type is not specified, the it is assumed to be RESET_NUMERIC
"""
if self.__in_ports:
self.__db.reset_active_level = cnv_int(attrs, 'active')
else:
try:
self.__reset_type = int(attrs.get('type', "0"))
self.__reset_parameter = attrs.get('parameter', '')
except ValueError:
self.__reset_type = BitField.RESET_NUMERIC