主权项 |
一种定点乘累加器,其支持数据的累加、乘法、乘加和乘累加操作,其包括:指令译码和数据分配单元,其用于对操作指令进行译码,并在译码结果为执行累加操作时将输入数据输出至数据准备单元,否则输出至编码压缩单元;X个编码压缩单元,其用于将输入数据进行Booth编码和Wallace树压缩,得到输入数据的两个压缩结果;X个第一加法器,其用于在数据位宽小于4N时,分别对每一个所述编码压缩单元输出的两个压缩结果求和,得到输入数据的乘法结果;其中,N为所述定点乘累加器所支持的最小位宽;压缩树单元,其用于在数据位宽为4N时,对所述多个编码压缩单元输出的压缩结果进一步压缩,得到两个压缩结果;第二加法器,其用于对所述压缩树单元输出的两个压缩结果进行求和,得到数据位宽为4N时的输入数据的乘法结果;第三加法器,其用于在复数操作时,根据第一加法器输出的乘法结果计算复数乘法结果的实部和虚部;数据准备单元,其用于在累加操作时,对输入数据和用于累加的第三位数据扩展为可重构加法器能够接受的数据位宽;在乘累加操作时,用于对第一加法器、第二加法器或第三加法器输出的乘法结果和用于累加的第三位数据扩展为可重构加法器能够接受的数据位宽;可重构加法器,其用于将输入的数据进行求和,得到最终的累加操作结果或者乘累加操作结果。 |