본문 바로가기
SW programming/Python

[Python] register file의 address 값 - csv 파일에 저장하는 법

by 고뭉나무 2023. 9. 18.

 

    import pandas as pd
    import numpy as np
	import torch
    
    net: nafnet_v0
    save_wgt: True
  	save_io: True
    rf_info: ./rtl_verif/rf_id.csv
    csv_path: ./rtl_verif/other_params.csv
    
    def __init__(self, cfg, index):
        self.set_register_file()
    
    def set_register_file(self):
        df = pd.read_csv(self.params.rf_info)
        for name, mod in self.net.named_modules():
            cls_name = mod.__class__.__name__		# Conv2d와 같은 상위 레이어
            mod.name = name		# layer를 포함한 parameter name
            if "Conv2d" in cls_name:  # 여기에만 weight, bias 있음
                mod.rf_id_wgt = int(df[df['name'] == '.'.join([name, 'weight'])]['base idx'].values[0])
                if mod.bias_flag:
                    mod.rf_id_bias = int(df[df['name'] == '.'.join([name, 'bias'])]['base idx'].values[0])
        # set monitor
        _m = Monitor(self.params.csv_path, self.params.save_io, self.params.save_wgt)

 

반응형

댓글