主权项 |
一种总线编码装置,其特征在于,所述装置包括:跳转检测模块,用于接收到编码前总线时生成跳转标志;状态控制模块,用于当第一次接收到所述跳转检测模块发送的跳转标志时,向计数模块、输出选择模块发送控制信号;计数模块,用于根据所述控制信号对所述编码前总线的循环长度计算得到第一计数值和对所述编码前总线的循环起始地址计算得到第二计数值,并以当前时钟周期的第一计数值作为索引地址对循环程序内部的顺序执行指令和保持不变指令的信息计数得到第三计数值;寄存器组模块,用于接收和保存所述编码前总线,以及所述计数模块发送的所述第一计数值、第二计数值和第三计数值,并将上一个时钟周期的编码后总线发送给输出选择模块;输出选择模块,用于接收所述寄存器组模块发送的上一个时钟周期的编码后总线、所述跳转检测模块发送的跳转标志和所述状态控制模块发送的控制信号,并将所述编码前总线、所述跳转标志和第一电平输出为编码后总线、循环开始标志和循环命中标志,其中所述第一电平为低电平;当所述状态控制模块第二次接收到所述跳转检测模块发送的跳转标志时,向所述计数模块和所述输出选择模块发送控制信号;所述计数模块根据所述控制信号对预测循环长度计算得到第四计数值,并以当前时钟周期第四计数值作为索引地址,读取所述第三计数值对应的比特位作为预测步长,根据所述第二计数值和所述预测步长计算预测地址值,得到第五计数值;所述寄存器组模块接收和保存所述编码前总线、所述计数模块发送的所述第四计数值和所述第五计数值;如果所述第五计数值等于所述编码前总线时,则将上一个时钟周期编码后总线输出为当前时钟周期编码后总线,如果所述第五计数值不等于所述编码前总线时,则所述输出选择模块将所述编码前总线输出为当前时钟周期编码后总线。 |