定点向量处理器及其向量数据访存控制方法_4

文档序号:8380722阅读:来源:国知局
所示,目前该向量处理器共有12条指令,表2同时给出了每条指令的具 体功能和执行机器周期数。微码指令分为简单指令和流水指令两种:简单指令包括VADD、 VSUB、VMUL、VDIV 和 VEXP,流水指令包括 PVADD、PVSUB、PVMUL 和 PVDOT,这里的"流水 (Pipelined) "指的是指令内部连续多次的向量操作是全流水的,在功能上等同于N次连续 的简单指令,对于矩阵运算使用流水指令可以提高执行效率。例如,如附图5所示,PVADD指 令实现连续N次向量加法,相当于连续执行N次VADD指令,PVADD的执行(Execution)过 程与数据写回(Write Back)过程重叠,因此,PVADD指令执行效率更高,相对与VADD指令 可以获得的执行加速比是4N/(N+3)。
[0084] 表1微码格式 [0085^
【主权项】
1. 定点向量处理器,其特征在于,它包括程序计数器(I)、微码存储器(2)、向量存储器 (3)、算术逻辑单元(4)和数据控制单元(5); 程序计数器(1)用于接收数据控制单元(5)发送的计数指令和微码存储器(2)发送的 输入目标地址微码指令,并输出计数值至微码存储器(2); 微码存储器(2)用于接收并存储程序计数器(1)发送的计数值,并输出通路索引L微 码指令至数据控制单元(5),同时输出OP微码指令至算术逻辑单元(4)和数据控制单元 (5),输出输入向量地址微码指令至向量存储器(3),输出输入目标地址微码指令至程序计 数器⑴和向量存储器(3); 向量存储器(3)用于接收并存储微码存储器(2)发送的输入向量地址微码指令和目标 地址微码指令、数据控制单元(5)发送的输出向量数据指令和使能指令,并输出向量数据 至算术逻辑单元(4); 算术逻辑单元(4)用于根据微码存储器(2)发送的OP微码指令和数据控制单元(5) 发送的算术逻辑单元控制指令对接收的向量数据进行向量运算后得到向量,并将该向量输 出至数据控制单元(5); 数据控制单元(5)用于根据微码存储器(2)发送的通路索引L微码指令和OP微码指 令产生使能指令和输出向量数据指令,并输出至向量存储器(3);还产生算术逻辑单元控 制指令,并输出至算术逻辑单元(4)使其进行指出函数运算、除法运算和开方运算;还产生 计数指令并输出至程序计数器(1),使其计数。
2. 根据权利要求1所述的定点向量处理器,其特征在于,所述向量存储器(3)包括向 量存储器1、向量存储器2、……、向量存储器N;算术逻辑单元(4)包括算术逻辑单元1、算 术逻辑单元2、……、算术逻辑单元N;其中,N为大于等于1小于等于128的整数;向量存 储器1与算术逻辑单元1连接并构成一条数据通路,且向量存储器1和算术逻辑单元1具 有相同的数据位宽;向量存储器2与算术逻辑单元2连接并构成一条数据通路,且向量存储 器2和算术逻辑单元2具有相同的数据位宽;……;向量存储器N与算术逻辑单元N连接 并构成一条数据通路,且向量存储器N和算术逻辑单元N具有相同的数据位宽。
3. 根据权利要求1所述的定点向量处理器,其特征在于,向量存储器(3)和算术逻辑单 元(4)构成的数据通路数量为1路~128路。
4. 根据权利要求1所述的定点向量处理器,其特征在于,算术逻辑单元(4)中的算术逻 辑单元2至算术逻辑单元N具有相同的结构,即均包括一个定点加/减法器(4-1)和一个 定点乘法器(4-2); 定点加/减法器(4-1)用于接收向量存储器(3)发送的向量数据并对其进行加/减运 算后输出运算结果至数据控制单元(5); 定点乘法器(4-2)用于接收向量存储器(3)发送的向量数据并对其进行乘法运算后输 出运算结果至数据控制单元(5); 算术逻辑单元1中包括一个定点加/减法器(4-1)和一个定点乘法器(4-2)、定点指数 函数运算单元(4-3)、定点除法器(4-4)、定点开方运算单元(4-5)和向量点积加法器树单 元(4-6); 定点指数函数运算单元(4-3)用于接收向量存储器(3)发送的向量数据并对其进行指 数运算后输出运算结果至数据控制单元(5); 定点除法器(4-4)用于接收向量存储器(3)发送的向量数据并对其进行除法运算后输 出运算结果至数据控制单元(5); 定点开方运算单元(4-5)用于接收向量存储器(3)发送的向量数据并对其进行开方运 算后输出运算结果至数据控制单元(5); 向量点积加法器树单元(4-6)用于完成向量点积运算中的N个点积运算结果进行加法 运算。
5. 根据权利要求1所述的定点向量处理器,其特征在于,算术逻辑单元(1)还包括三角 函数Tan计算单元、三角函数Atan计算单元和对数函数Log计算单元。
6. 根据权利要求1、2、3、4或5所述的定点向量处理器的向量数据访存控制方法,其特 征在于,该方法包括下述步骤: 用于接收数据控制单元(5)发送的计数指令和微码存储器(2)发送的输入目标地址微 码指令,并输出计数值至微码存储器(2)的步骤; 用于接收并存储程序计数器(1)发送的计数值,并输出通路索引L微码指令至数据控 制单元(5),同时输出OP微码指令至算术逻辑单元(4)和数据控制单元(5),输出输入向量 地址微码指令至向量存储器(3),输出输入目标地址微码指令至程序计数器(1)和向量存 储器⑶的步骤; 用于接收并存储微码存储器(2)发送的输入向量地址微码指令和目标地址微码指令、 数据控制单元(5)发送的输出向量数据指令和使能指令,并输出向量数据至算术逻辑单元 (4) 的步骤; 用于根据微码存储器(2)发送的OP微码指令和数据控制单元(5)发送的算术逻辑单 元控制指令对接收的向量数据进行向量运算后得到向量,并将该向量输出至数据控制单元 (5) 的步骤; 用于根据微码存储器(2)发送的通路索引L微码指令和OP微码指令产生使能指令和 输出向量数据指令,并输出至向量存储器(3);还产生算术逻辑单元控制指令,并输出至算 术逻辑单元(4)使其进行指出函数运算、除法运算和开方运算;还产生计数指令并输出至 程序计数器(1),使其计数的步骤。
7. 根据权利要求6所述的定点向量处理器的向量数据访存控制方法,其特征在于,用 于根据所述向量数据进行向量运算后得到向量,并传输至数据控制单元(5)的步骤中,所 述向量运算过程包括: 用于接收向量存储器(3)发送的向量数据并对其进行加/减运算后输出运算结果至数 据控制单元(5)的步骤; 用于接收向量存储器(3)发送的向量数据并对其进行乘法运算后输出运算结果至数 据控制单元(5)的步骤; 用于接收向量存储器(3)发送的向量数据并对其进行指数运算后输出运算结果至数 据控制单元(5)的步骤; 用于接收向量存储器(3)发送的向量数据并对其进行除法运算后输出运算结果至数 据控制单元(5)的步骤; 用于接收向量存储器(3)发送的向量数据并对其进行开方运算后输出运算结果至数 据控制单元(5)的步骤; 用于完成向量点积运算中的N个点积运算结果进行加法运算的步骤。
【专利摘要】定点向量处理器及其向量数据访存控制方法,涉及一种用于在线时间序列预测的向量处理器。是为了解决现有的向量处理器无法针对特定方法进行优化导致的通用性不强和不能满足在线计算的需求的问题。本发明所述的定点向量处理器,包括程序计数器、微码存储器、向量存储器、算术逻辑单元和数据控制单元。通过前述定点向量处理器的各个模块之间的信号处理流程,构成完整的定点向量处理器。通过异构ALU设计,每个数据通路的ALU结构可以根据计算需要灵活的改变,实现指令集的灵活配置。适用于复杂计算需求的场合。
【IPC分类】G06F9-30
【公开号】CN104699458
【申请号】CN201510144307
【发明人】庞业勇, 王少军, 何永福, 刘大同, 彭宇, 彭喜元
【申请人】哈尔滨工业大学
【公开日】2015年6月10日
【申请日】2015年3月30日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1