System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及集成电路,特别涉及一种基于sram存内计算宏单元的通用顶层测试电路系统及方法。
技术介绍
1、在传统的冯·诺依曼架构中,存储器的性能制约了系统整体性能的进一步提升,这也被称作冯诺依曼架构的存储墙问题。此外,人工智能技术的蓬勃发展使得算力的需求大幅增加,但传统的数字计算阵列大量的能量和时间消耗在数据的传输上,难以满足边缘测的高效计算。因此,基于sram的存内计算作为高吞吐量、面积效率和能量效率的一种新型架构近年来不断发展。
2、随着存内计算的不断发展,在电流域、电荷域、时域和数字域等完成计算的存内计算架构相继被提出,而不同架构之间的仿真测试要求各不相同,即使是同一计算架构下的存内计算宏单元也有着不同的输入和输出带宽和测试需求。同时,受限于芯片面积,流片时的芯片引脚数量也不固定,并且由于存内计算宏单元的高吞吐量和并行度,其所需要的输入/输出带宽远远大于芯片引脚所能提供的带宽。因此,存内计算宏单元的顶层电路需要对不同的测试需求、计算架构、输入/输出带宽和接口进行适配,而传统的顶层架构需要设计和测试人员针对不同的待测存内计算宏单元逐一进行适配,导致测试成本与人工成本高、测试效率低,不可避免的增加了测试难度与时间开销。因此,需要一个通用的顶层测试电路架构及方法来满足各种不同的存内计算宏单元的测试需求。
技术实现思路
1、本专利技术提供一种基于sram存内计算宏单元的通用顶层测试电路系统及方法,指令集与各个硬件模块之间的操作相互解耦,通用性高,通过硬件架构与指令集的协
2、本专利技术第一方面实施例提供一种基于sram存内计算宏单元的通用顶层测试电路系统,包括:锁相环(phase locked loop,pll)电路、指令译码单元、输入数据移位单元、宏单元输入数据/指令存储单元、权重自更新控制单元、待测存内计算宏单元阵列、输出数据存储单元和输出数据选择单元;
3、所述pll电路的输入与所述顶层测试电路对应的时钟输入信号引脚相连,输出多个不同频率的时钟通过输入时钟选择器后与所述指令译码单元、所述输入数据移位单元、所述宏单元输入数据/指令存储单元、所述待测存内计算宏单元阵列、所述输出数据存储单元和所述输出数据选择单元相连;
4、所述指令译码单元的输入与所述顶层测试电路对应的输入引脚相连,将输入数据信号送入所述顶层测试电路内部,用于通过指令对应操作码将单指令多数据(singleinstruction multiple data,simd)指令进行译码,得到所述输入数据移位单元、所述宏单元输入数据/指令存储单元、所述待测存内计算宏单元阵列、所述权重自更新控制单元、所述输出数据存储单元和所述输出数据选择单元的控制信号;
5、所述输入数据移位单元的输入与所述指令译码单元的输出相连,输出与所述宏单元输入数据/指令存储单元的输入相连,用于在接收到暂停装载宏单元输入数据/指令存储单元指令时,对所述指令译码单元译码后得到的输入数据和存内计算宏单元控制指令进行移位,以使得输入数据和指令并行存入宏单元输入数据/指令存储单元;
6、所述宏单元输入数据/指令存储单元的输出与所述待测存内计算宏单元阵列中的译码逻辑单元相连;
7、所述权重自更新控制单元的输入与所述宏单元输入数据/指令存储单元的输出相连,输出与所述待测存内计算宏单元的输入相连,用于在顶层测试电路收到权重自更新指令时,接收所述指令译码单元译码得到的控制信号,根据控制信号对所选择的所述待测存内计算宏单元按照对应的权重更新模式,自起始地址到结束地址进行权重的自动更新;
8、所述待测存内计算宏单元阵列中包括多个译码逻辑单元和多个待测存内计算宏单元,所述译码逻辑单元接受到来自所述宏单元输入数据/指令存储单元或所述权重自更新控制单元的数据/指令,根据所述指令译码单元译码得到的宏单元选择信号,对所述待测存内计算宏单元阵列的其中之一进行选择,通过所述宏单元输入数据/指令存储单元读出得到的数据及指令控制信号,或所述权重自更新控制单元输出的数据及指令控制信号,对被选择的所述待测存内计算宏单元进行控制;
9、所述输出数据存储单元的输入与所述待测存内计算宏单元阵列的输出相连,输出与所述输出数据选择单元的输入相连,用于存储对应的待测存内计算宏单元计算所得到的测试输出结果;
10、所述输出数据选择单元的输出与所述顶层测试电路的输出引脚相连,用于在所述顶层测试电路收到读出输出数据存储单元指令时,接收所述指令译码单元译码得到的控制信号,按照对应所述输出数据存储单元的地址将锁存的测试输出结果进行读出,并将测试输出结果通过并行转串行的操作进行输出。
11、可选地,在本专利技术的一个实施例中,所述pll电路的输入时钟主频为16.25或32.5mhz,输出时钟主频为输入时钟主频的4倍与8倍频,通过输入时钟选择控制信号对所述顶层测试电路的输入时钟进行选择,以满足待测存内计算宏单元阵列测试需求。
12、可选地,在本专利技术的一个实施例中,所述宏单元输入数据/指令存储单元物理电路上由sram进行实现,其中,所述宏单元输入数据/指令存储单元的位宽,与所述待测存内计算宏单元阵列输入位宽最大的待测存内计算宏单元相匹配,所述宏单元输入数据/指令存储单元的深度,与所述待测存内计算宏单元所需的指令条数匹配。
13、可选地,在本专利技术的一个实施例中,根据控制信号对所选择的所述待测存内计算宏单元按照对应的权重更新模式,自起始地址到结束地址进行权重的自动更新,包括:
14、根据所述指令译码单元译码得到的宏单元选择信号、权重更新模式、更新起始地址与结束地址控制信号,对所选择的所述待测存内计算宏单元按照对应的权重更新模式,自起始地址到结束地址进行权重的自动更新。
15、可选地,在本专利技术的一个实施例中,所述输出数据存储单元物理电路上由sram进行实现,其中,所述输出数据存储单元的输入位宽与所述待测存内计算宏单元阵列中输出位宽最大的待测存内计算宏单元相匹配;所述输出数据存储单元的深度与所述待测存内计算宏单元所需要锁存的输出结果数量匹配,所述输出数据存储单元的输出与所述输出数据选择单元的输入相连。
16、可选地,在本专利技术的一个实施例中,所述输出数据选择单元接收所述指令译码单元译码得到的控制信号,按照对应所述输出数据存储单元的地址将锁存的测试输出结果进行读出,并将测试输出结果通过并行转串行的操作进行输出,包括:
17、所述输出数据选择单元根据译码得到的所述输出数据存储单元的地址和输出多路选择控制信号,按照对应所述输出数据存储单元的地址将锁存的测试输出结果进行读出,并根据输出多路选择控制信号将测试输出结果通过并行转串行的操作进行输出。
18、可选地,在本专利技术的一个实施例中,所述输出数据本文档来自技高网...
【技术保护点】
1.一种基于SRAM存内计算宏单元的通用顶层测试电路系统,其特征在于,包括:PLL电路、指令译码单元、输入数据移位单元、宏单元输入数据/指令存储单元、权重自更新控制单元、待测存内计算宏单元阵列、输出数据存储单元和输出数据选择单元;
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求1所述的系统,其特征在于,所述宏单元输入数据/指令存储单元物理电路上由SRAM进行实现,其中,所述宏单元输入数据/指令存储单元的位宽,与所述待测存内计算宏单元阵列输入位宽最大的待测存内计算宏单元相匹配,所述宏单元输入数据/指令存储单元的深度,与所述待测存内计算宏单元所需的指令条数匹配。
4.根据权利要求1所述的系统,其特征在于,根据控制信号对所选择的所述待测存内计算宏单元按照对应的权重更新模式,自起始地址到结束地址进行权重的自动更新,包括:
5.根据权利要求1所述的系统,其特征在于,所述输出数据存储单元物理电路上由SRAM进行实现,其中,所述输出数据存储单元的输入位宽与所述待测存内计算宏单元阵列中输出位宽最大的待测存内计算宏单元相匹配;所述输出数
6.根据权利要求1所述的系统,其特征在于,所述输出数据选择单元接收所述指令译码单元译码得到的控制信号,按照对应所述输出数据存储单元的地址将锁存的测试输出结果进行读出,并将测试输出结果通过并行转串行的操作进行输出,包括:
7.根据权利要求1所述的系统,其特征在于,所述输出数据选择单元在所述顶层测试电路收到读出宏单元输入数据/指令存储单元指令时,如果所述指令译码单元译码得到的控制信号为输出直通控制信号,则根据译码得到的多路选择控制信号直接将所述待测存内计算宏单元阵列的测试输出结果进行部分选择输出。
8.根据权利要求1所述的系统,其特征在于,所述SIMD指令包括空闲指令、暂停装载宏单元输入数据/指令存储单元指令、装载宏单元输入数据/指令存储单元指令、读出宏单元输入数据/指令存储单元、读出输出数据存储单元指令和权重自更新指令;其中,
9.根据权利要求7所述的系统,其特征在于,所述输出直通控制信号包含对所述输出数据存储单元和所述输出数据选择单元进行四种不同的操作,分别为:所述输出数据存储单元和所述输出数据选择单元空闲操作、写操作、直通操作和并行写与直通操作;
10.一种基于SRAM存内计算宏单元的通用顶层测试电路系统的测试方法,用于权利要求1-9任一项所述的基于SRAM存内计算宏单元的通用顶层测试电路系统,其特征在于,包括以下步骤:
...【技术特征摘要】
1.一种基于sram存内计算宏单元的通用顶层测试电路系统,其特征在于,包括:pll电路、指令译码单元、输入数据移位单元、宏单元输入数据/指令存储单元、权重自更新控制单元、待测存内计算宏单元阵列、输出数据存储单元和输出数据选择单元;
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求1所述的系统,其特征在于,所述宏单元输入数据/指令存储单元物理电路上由sram进行实现,其中,所述宏单元输入数据/指令存储单元的位宽,与所述待测存内计算宏单元阵列输入位宽最大的待测存内计算宏单元相匹配,所述宏单元输入数据/指令存储单元的深度,与所述待测存内计算宏单元所需的指令条数匹配。
4.根据权利要求1所述的系统,其特征在于,根据控制信号对所选择的所述待测存内计算宏单元按照对应的权重更新模式,自起始地址到结束地址进行权重的自动更新,包括:
5.根据权利要求1所述的系统,其特征在于,所述输出数据存储单元物理电路上由sram进行实现,其中,所述输出数据存储单元的输入位宽与所述待测存内计算宏单元阵列中输出位宽最大的待测存内计算宏单元相匹配;所述输出数据存储单元的深度与所述待测存内计算宏单元所需要锁存的输出结果数量匹配,所述输出数据存储单元的输出与所述输出数据选择单元的输入相连。
6.根据权利要求1所述的系...
【专利技术属性】
技术研发人员:司鑫,石宇辉,汤羽晨,董方圆,陈金伍,张兆阳,
申请(专利权)人:东南大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。