为tnns生成verilog的包
twn-generator的Python项目详细描述
TWN_发电机v0.1.4
该软件包为三值神经网络中的卷积生成c或verilog代码
安装
要安装,请运行
pip3 install twn_generator
有两个用于计算卷积的verilog用例示例
第一种是使用16位加法器快速计算卷积。 第二个计算相同的结果,但计算卷积使用4位串行加法器。 这只有四分之一的吞吐量,但也有四分之一的面积在加法器。
要运行cse并生成加法器,请运行:
python3 run_cse_and_generate_example.py --matrix_fname data/conv1_weights.csv --cse_fname data/conv1_tern_op_list.csv --module_name lyr1 --BW_in 16 python3 run_cse_and_generate_example.py --matrix_fname data/conv1_weights.csv --cse_fname data/conv1_tern_op_list.csv --module_name lyr1_serial --BW_in 4 --serial
这将生成3个文件:
- lyr1.sv=>;16位加法器版本
- lyr1_serial.sv=>;4位串行加法器版本
- serial_adder.sv=>;实现串行加法器的辅助模块
在verilog/目录中,以下内容可用于验证16位加法器示例:
- 转换窗口.sv
- 开窗器_3x3_pad.sv
- conv_windower_test.sv
对于4位串行加法器示例:
- conv_windower_serial.sv
- 从u serial.v
- 至u serial.v
- 开窗器_3x3_pad_serial_4.sv
- conv_windower_serial_test.sv
顶层设计模块分别为conv_windower.sv和conv_windower_serial.sv。 模拟测试源为conv_windower_test.sv和conv_windower_serial.sv
有关CSE
有关SMM