将MOST控制消息用到极致
以下为文章全文:(本站微信公共账号:cartech8)

汽车零部件采购、销售通信录 填写你的培训需求,我们帮你找 招募汽车专业培训老师
共享变量 有些配置和状态变量需要持续可用。用户可以将这些变量映射到 PicoBlaze 控制器外部存储器空间的寄存器,供状态机访问,与 MOST LogiCORE 控制处理模块中的存储器并无二致(图 2)。在 LogiCORE 系统中,PicoBlaze 控制器外部存储器端口被映射到一个共享 Block RAM,唯一不同的是存储器范围末端为由存储器映射的寄存器。
图2 针对Xilinx MOST NIC控制器消息处理的存储器组织 例如,MOST 节点上当前已编程的地址被映射到一个只读“寄存器”(多路器输入),以确定接收到的数据是否针对此节点。有关缓冲器当前占用情况的状态信息会放入一个只写寄存器,供外部主机访问。 排序处理 复杂状态机通常由较小的、并行操作的互锁状态机构建而成。PicoBlaze 可配置状态机按顺序执行任务,具有避免冲突和竞争条件方面的优势。但是,用户还需要仔细计划,以确保事件调度准确无误,并且不会丢失排队等候的事件。以下几点可能对设计 PicoBlaze 应用有所帮助: 对事件处理区分轻重缓急。如果有不重要的事件,可选择放到最后执行。例如,缓冲器占用情况计数的值被 MOST 主机缓冲器读更改了。但此更新可能被延迟几帧。因为对消息的响应必须在一帧内完成,所以核优先对服务消息做出响应。 保持事件排序。如果处理要求完成一个事件后再执行另一事件,就需要先执行首个事件的代码,即便排在后面的事件的时间要求更紧。例如,控制字节必须在当前帧中的字节尚未收到之前就发出。因此,对于给定的帧,发送事件总是要在接收事件之前处理。 考虑使用等待事件环。如果有一个很长的事件,无法在其他事件要求的时间帧内处理,可考虑将这一长事件放置于主处理等待事件环中。 例如,对一个供发送用的 MOST 控制消息的准备,可能需要多个帧才能完成。本来可以设置多个级别的中断服务,以确保在进行上述准备的同时还可以处理帧数据,但这一类型的任务非常适合等待事件环,该环会自动给予其最低优先权。 如果确实要选择在主环中处理数据,还需要格外小心,确保发出中断时不会损坏主环。在开始中断服务时,应复制所有可能被覆盖的寄存器,并在中断服务完成时恢复这些寄存器。执行代码的关键部分时,还可以使用 PicoBlaze 命令来禁用中断。 结语 Xilinx MOST NIC 已被证明可以有效地处理控制消息。由于能提供类似于流数据的效率,它成为汽车信息娱乐系统的理想选择,而 Spartan-3A DSP 系列的器件也将使用户设计处理多媒体的效率更上一层楼。 |
文章网友提供,仅供学习参考,版权为原作者所有,如侵犯到
你的权益请联系542334618@126.com,我们会及时处理。







会员评价:
共0条 发表评论