待解决问题
LTE 系统信息SI解帧 (进入论坛模式)
离问题结束还有0天0小时 |
提问者:幻影314
|
提问时间:2013-6-13 19:53
LTE中的SI可能包含多个SIB,如果包含多个SIB的情况时,SIB的解帧应该如何实现,因为每一个SIB的长度都是不确定的,如果想解帧一个SI中的后面一个SIB而不解帧前面的SIB应该如何实现?
问题答案 ( 10 条 )
希翼下面这篇文章对你有帮助。
http://blog.sina.com.cn/s/blog_927cff0101019rfs.html
另:ASN.1应该已经实现了SI的解码,你可以参考一下其实现。
http://blog.sina.com.cn/s/blog_927cff0101019rfs.html
另:ASN.1应该已经实现了SI的解码,你可以参考一下其实现。
如果现在已知一个SI里面包含有SIB3、SIB4两个SIB,但是只需要SIB4的信息(SIB3的数据长度是不定的),能否从SI信息中提取出SIB4的数据,再对相应的数据进行解帧,还是只能用这一段数据先解帧SIB3再用剩下的数据解帧SIB4呢?
明白
学习了,感谢大家的共享
这个是可以通过读ASN.1编码后的码流来确定的,ASN编码后的SI消息的码流头部会指示当前SI发送的SIB的个数及每个SIB消息的长度,通过这些指示信息滑取相应的offset位就可找到SIB4消息内容编码后对应的各个bit。
很好,非常感谢楼主!
SystemInformation ::= SEQUENCE {
criticalExtensions CHOICE {
systemInformation-r8 SystemInformation-r8-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
SystemInformation-r8-IEs ::= SEQUENCE {
sib-TypeAndInfo SEQUENCE (SIZE (1..maxSIB)) OF CHOICE {
sib2 SystemInformationBlockType2,
sib3 SystemInformationBlockType3,
sib4 SystemInformationBlockType4,
sib5 SystemInformationBlockType5,
sib6 SystemInformationBlockType6,
sib7 SystemInformationBlockType7,
sib8 SystemInformationBlockType8,
sib9 SystemInformationBlockType9,
sib10 SystemInformationBlockType10,
sib11 SystemInformationBlockType11,
...,
sib12-v920 SystemInformationBlockType12-r9,
sib13-v920 SystemInformationBlockType13-r9
},
nonCriticalExtension SystemInformation-v8a0-IEs OPTIONAL
}
根据协议来看,SI中并没有关于所包含的的每一个SIB的个数及长度的指示,你能说的再详细一点么
学习了
编码的时候,会将消息的长度放在真正消息流的前面,在解码时读到该信息就知道每条SI消息的长度了
:)
热点问题