VTA 配置

VTA 配置#

import vta

函数 vta.get_env() 可以获取 VTA 的参数:

env = vta.get_env()
env.TARGET
'sim'

VTA 多环境管理#

用户可以自由地修改影响硬件设计布局的高级硬件参数。这些参数在 tvm/3rdparty/vta-hw/config/vta_config.json 中通过它们的 log2 值指定。

env = vta.get_env()
mock = env.mock
mock.alu
'skip_alu'

借助 with 管理 VTA 环境:

def test_env_scope():
    env = vta.get_env()
    cfg = env.cfg_dict
    cfg["TARGET"] = "xyz"
    with vta.Environment(cfg):
        assert vta.get_env().TARGET == "xyz"
    assert vta.get_env().TARGET == env.TARGET
test_env_scope()

也可以加载不同的配置文件以配置不同环境:

import json

config_file = f"{vta.environment.get_vta_hw_path()}/config/vta_config.json"
with open(config_file) as fp:
    cfg = json.load(fp)
with vta.Environment(cfg):
    env = vta.get_env()
    print(env.TARGET)
sim