Python实现寄存器表格生成寄存器rtl代码
功能需求:通过约定好字段的寄存器表格生成寄存器代码
语言要求:Python
关键点:如何操作表格 - 通过openpyxl第三方库
实现思路:读取表格,将表格内容以列表形式存储,在存储时,对寄存器的类型进行分类标记,将标记信息作为寄存器的附属信息存储
串行处理流程:首先扫描一遍寄存器表格,处理一些认为填写表格不符合要求的情况,对可以直接简单修复的问题,直接修复并记录在log中,对没法脚本修复的问题,报错并终止脚本;然后逐个扫描每个寄存器,对寄存器打上类型标记并与其他寄存器信息一并存入列表中;最后生成代码,按照输入输出接口声明,参数及内部信号声明,扇出逻辑,各种类型寄存器代码生成,流控等等作为一个个独立的函数实现,顶层再串起来