本技术涉及通信,尤其涉及一种数据位宽转换方法、装置、电子设备及存储介质。
背景技术:
1、通信系统包括各种通信设备,通信设备内部常常涉及到各种模块,不同功能的模块或者组件间进行连接时存在位宽不相等的情况,因此在进行数据传输时,需要对输入输出接口间的数据位宽进行转换。
2、现有技术中,在进行数据位宽转换时,每个接口需要设置独立的缓存单元用于位宽转换,导致资源浪费。
技术实现思路
1、为了避免资源浪费,本技术提供了一种数据位宽转换方法、装置、电子设备及存储介质。
2、第一方面,本技术提供了一种数据位宽转换方法,包括:
3、获取第一端口的第一位宽和第二端口的第二位宽,根据所述第一位宽和所述第二位宽计算位宽转换比率,其中,所述第一位宽小于所述第二位宽;
4、根据所述位宽转换比率确定多个缓存单元,其中,所述多个缓存单元中每个缓存单元的位宽与所述第一位宽相等;
5、若数据从所述第一端口向所述第二端口传输,确定各第一端口的数据在分别所占的资源空间,并根据所述各第一端口的数据分别所占的资源空间将所述各第一端口的数据写入所述多个缓存单元;其中,每个第一端口的数据在所述多个缓存单元的每个缓存单元中所占的资源空间相同;
6、从所述多个缓存单元中读取所述多个缓存单元中存储的数据。
7、作为本技术实施例一种可选的实施方式,所述根据所述各第一端口的数据分别所占的资源空间将所述各第一端口的数据写入所述多个缓存单元,包括:
8、针对每个第一端口,根据所述第一端口的数据所占的资源空间和所述缓存单元的数量,确定所述第一端口的数据在每个缓存单元中分别所占的资源空间;
9、根据所述各第一端口的数据写入时序信息和所述第一端口的数据在每个缓存单元中分别所占的资源空间,将所述第一端口的数据依次写入所述多个缓存单元。
10、作为本技术实施例一种可选的实施方式,所述方法还包括:
11、若数据从所述第二端口向所述第一端口传输,确定流向各第一端口的数据分别所占的资源空间,并根据流向各第一端口的数据分别所占的资源空间,将数据写入所述多个缓存单元;其中,针对每个第一端口,流向所述第一端口的数据在所述每个缓存单元中所占的资源空间相同。
12、作为本技术实施例一种可选的实施方式,所述根据流向各第一端口的数据分别所占的资源空间,将数据写入所述多个缓存单元,包括:
13、针对每个第一端口,根据流向所述第一端口的数据所占的资源空间和所述缓存单元的数量,确定流向所述第一端口的数据在每个缓存单元中分别所占的资源空间;
14、根据流向所述第一端口的数据在每个缓存单元中分别所占的资源空间,将数据写入所述多个缓存单元。
15、作为本技术实施例一种可选的实施方式,所述从所述多个缓存单元中读取所述多个缓存单元中存储的数据,包括:
16、获取各第一端口的数据读取时序信息;
17、根据所述数据读取时序信息,通过所述各第一端口从所述多个缓存单元中依次读取所述多个缓存单元中的数据。
18、作为本技术实施例一种可选的实施方式,所述根据所述第一位宽和所述第二位宽计算位宽转换比率,包括:
19、获取所述第二位宽与所述第一位宽的比值,得到所述位宽转换比率。
20、作为本技术实施例一种可选的实施方式,所述根据所述位宽转换比率与所述第一端口的数量确定多个缓存单元,包括:
21、根据所述位宽转换比率的值确定缓存单元的数量,并根据所述缓存单元的数量设置多个缓存单元。
22、第二方面,本技术提供一种数据位宽转换装置,包括:
23、地址管理模块,用于获取第一端口的第一位宽和第二端口的第二位宽,根据所述第一位宽和所述第二位宽计算位宽转换比率,其中,所述第一位宽小于所述第二位宽;
24、所述地址管理模块,还用于根据所述位宽转换比率确定多个缓存单元,其中,所述多个缓存单元中每个缓存单元的位宽与所述第一位宽相等;以及若数据从所述第一端口向所述第二端口传输,用于确定各第一端口的数据分别所占的资源空间;
25、控制模块,用于根据所述各第一端口的数据分别所占的资源空间将所述各第一端口的数据写入所述多个缓存单元;其中,每个第一端口的数据在所述多个缓存单元的每个缓存单元中所占的资源空间相同;
26、控制模块,还用于从所述多个缓存单元中读取所述多个缓存单元中存储的数据。
27、作为本技术实施例一种可选的实施方式,所述控制模块包括:数据控制模块;
28、所述地址管理模块,具体用于所述时序控制模块针对每个第一端口,根据所述第一端口的数据所占的资源空间和所述缓存单元的数量,确定所述第一端口的数据在每个缓存单元中分别所占的资源空间;
29、所述数据控制模块,用于根据所述各第一端口的数据写入时序信息和所述第一端口的数据在每个缓存单元中分别所占的资源空间,将所述第一端口的数据依次写入所述多个缓存单元。
30、作为本技术实施例一种可选的实施方式,若数据从所述第二端口向所述第一端口传输,所述地址管理模块,还用于确定流向各第一端口的数据分别所占的资源空间;
31、所述数据控制模块,还用于根据流向各第一端口的数据分别所占的资源空间,将数据写入所述多个缓存单元;其中,针对每个第一端口,流向所述第一端口的数据在所述每个缓存单元中所占的资源空间相同。
32、作为本技术实施例一种可选的实施方式,所述地址管理模块,具体用于针对每个第一端口,根据流向所述第一端口的数据所占的资源空间和所述缓存单元的数量,确定流向所述第一端口的数据在每个缓存单元中分别所占的资源空间;
33、所述数据控制模块,具体用于根据流向所述第一端口的数据在每个缓存单元中分别所占的资源空间,将数据写入所述多个缓存单元。
34、作为本技术实施例一种可选的实施方式,所述控制模块包括:时序控制模块;
35、所述时序控制模块,用于获取各第一端口的数据读取时序信息;
36、所述数据控制模块,具体用于根据所述数据读取时序信息,通过所述各第一端口从所述多个缓存单元中依次读取所述多个缓存单元中的数据。
37、作为本技术实施例一种可选的实施方式,所述地址管理模块,具体用于获取所述第二位宽与所述第一位宽的比值,得到所述位宽转换比率。
38、作为本技术实施例一种可选的实施方式,所述地址管理模块,具体用于根据所述位宽转换比率的值确定缓存单元的数量,并根据所述缓存单元的数量设置多个缓存单元。
39、第三方面,本技术实施例提供一种电子设备,包括:存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于在调用计算机程序时执行第一方面或第一方面任一种可选的实施方式所述的数据位宽转换方法。
40、第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第一方面任一种可选的实施方式所述的数据位宽转换方法。
41、本技术实施例提供的技术方案与现有技术相比具有如下优点:
42、本技术实施例提供的数据位宽转换方法包括:
43、获取第一端口的第一位宽和第二端口的第二位宽,根据所述第一位宽和所述第二位宽计算位宽转换比率,其中,所述第一位宽小于所述第二位宽;根据所述位宽转换比率确定多个缓存单元,其中,所述多个缓存单元中每个缓存单元的位宽与所述第一位宽相等;若数据从所述第一端口向所述第二端口传输,确定各第一端口的数据分别所占的资源空间,并根据所述各第一端口的数据分别所占的资源空间将所述各第一端口的数据写入所述多个缓存单元;其中,每个第一端口的数据在所述多个缓存单元的每个缓存单元中所占的资源空间相同;从所述多个缓存单元中读取所述多个缓存单元中存储的数据。由于每个第一端口的数据写入了每个缓存单元,且在每个缓存单元中所占的资源空间相同,因此在一个或多个第一端口没有数据的情况下,该一个或多个端口在缓存单元中所占的空间可以空出来给有数据的第一端口使用,从而避免资源浪费。