线程调度part-Read
DSP BIOS 4: 线程调度( part 1 ) 4.1 线程调度概述 许多实时DSP应用都需要同时执行许多不相关的功能(functions,函数),这些功能一般是对外部事件的响应. 这些功能就叫线程. DSP/BIOS定义线程为任何独立的指令流. 可以是一个函数, 或一个中断服务程序. DSP/BIOS使应用程序按线程结构化设计,每个线程完成一个模块化的功能. 多线程程序中允许高优先级线程抢占低优先级线程,以及线程间的同步和通讯 4.1.1 线程的类型 DSP/BIOS 支持4种线程:(1)硬件中断(HWI): 频率可达200KHz(5us),处理时限在2us~100us .(2)软件中断(SWI):时限100us以上,SWI允许HWI将一些非关键处理在低优先级上延迟执行,这样可以减少在中断服务程序中的驻留时间(3)任务(TSK):任务与软件中断不同的地方在于在运行过程中可以被挂起。DSP/BIOS提供了一些任务间同步和通讯的机制,包括队列、信号灯和邮箱。 (4)后台线程(IDL): MAIN-空闲循环: 运行那些没有执行期限(deadlines)的函数 4.1.1 线程的类型(续) 在DSP/BIOS中还有另外几种函数可以执行,它们是在某一种类型的线程上下文中被执行的: 时钟(CLK)函数:在每个定时器中断的末尾执行。缺省情况下,这些函数是按HWI函数执行的。 周期(PRD)函数:在片上定时器中断或其它事件多次计数后执行周期函数,周期函数是一种特殊类型的软件中断。 数据通知函数:在使用管道(PIP)或主机通道(HST)传输数据时执行。 4.1.2 线程的选择 (1) SWI、TSK与HWI之间的选择:硬件中断只处理时间要求苛刻的关键任务。HWI可以处理发生频率在200KHz左右的事件。软件中断或任务可以用于执行时间限制在100ms以上的事件。HWI函数应该触发(post)软件中断或任务来进行低优先级处理。使用低优先级线程可以减小中断禁止的时间,允许其它中断的触发。 4.1.2 线程的选择 (2) SWI与TSK 之间的选择:SWI一般用于相对独立的函数,如果要求比较复杂的话使用TSK。TSK提供了很多任务间通讯和同步的手段。一个任务可以挂起等待某一个资源的有效。使用共享数据时,TSK比SWI有更多的选择。而软件中断执行时必须保证所需的数据已经准备好。所有的SWI使用同一个堆栈,所以在存储器使用上更加有效。 4.1.2 线程的选择 (3) IDL:后台函数用于执行没有执行时间限制的非关键处理 CLK:如果希望每个定时器中断时触发一个函数的执行则使用CLK函数。这些函数是当作HWI来运行,所以应该保证运行时间尽量小。缺省的CLK对象PRD_clk增加周期函数的一次计数(tick)。可以增加更多的CLK对象以相同的速率执行某个函数。 PRD:PRD函数以整数倍于低分辩时钟中断或其它事件(如外部中断)的频率执行。 4.1.2 线程的选择 (4) PRD与SWI:所有的PRD函数属于同一个SWI优先级,所有PRD函数间不能互相抢占。PRD函数可以触发(post)低优先级软件中断来延长处理时间。这可以保证在下一个系统计数(tick)到来时PRD_swi(周期函数对应的软件中断)可以抢占这些低优先级中断,新的PRD_swi得以执行。 4.1.3 线程的优先级 在DSP/BIOS中,硬件中断有最高的优先级,然后是软件中断,软件中断可以被高优先权软件中断或硬件中断抢先。软件中断是不能被阻塞的。任务的优先权低于软件中断,共有15个任务优先权级别(加上TSK_idle应该16个)。任务在等待某个资源有效时可以被阻塞。后台线程idle_loop是优先级最低的线程。 4.1.4 线程的比较 (1) 4.1.4 线程的比较 (2) 4.1.5 线程让出和抢先 (1) DSP/BIOS运行优先级最高的线程 当下面情况发生时, 不一定运行优先级最高的线程:(1) HWI_disable, SWI_disable或TSK_disable被调用(2) 高优先级的任务处于阻塞时,即调用了TSK_sleep, LCK_pend, MBX_pend, or SEM_pend. 4.1.5 线程让出和抢先 (2) 4.1.5 线程让出和抢先 (3) 线程抢先的例子 4.2 硬件中断 硬件中断是对外界异步事件触发的, 来源可以是片上(on-device)设备或外部设备. 硬件中断发生,处理器转向中断处理向量. 一个硬件中断在处理时可以被另外一个硬件中断抢占,而不论其优先级. 一个硬件中断在响应前触发多次, 则仅响应一次. 所以硬件中断的响应尽量快. 4.2.1 硬件中断的配置 在DSP
您可能关注的文档
- 离散化信号胜本研究室东京大学.PDF
- 离散信号情况下的离散付里叶变换.PPT
- 离散时间信号演习问题解答.PDF
- 离散信号的分析.PDF
- 离心铸造铸铁加工用新生代材质-Tungaloy.PDF
- 磨损理论wearandteartheory.PPT
- 福建中小学读者教育参赛作品.PPT
- 离散时间马尔可夫链的几个性质-Read.PPT
- 离散稳恒信号的多重分形谱的计算及其应用Computationand.PDF
- 离散信号采样信号.PPT
- 2025广东广州市天河区拟招聘英语实习老师1人备考题库附答案.docx
- 2025广东广州市天河区城市管理第二保洁所招聘编外工作人员4人笔试备考试卷附答案解析.docx
- 2025广东广州市越秀区流花街道办事处招聘综合事务中心辅助人员1人笔试历年题库附答案解析.docx
- 2025广东广州市花都区新雅街清初级中学招聘临聘教师1人备考历年题库带答案解析.docx
- 2025广东广州市天河区城市管理第二保洁所招聘编外工作人员4人笔试备考试卷带答案解析.docx
- 江苏省盐城市东台市三仓镇区中学2026届八年级数学第一学期期末教学质量检测试题含解析.doc
- 2025广东广州市天河区城市管理第二保洁所招聘编外工作人员4人备考题库带答案解析.docx
- 江苏省盐城市亭湖区2026届数学八上期末考试试题含解析.doc
- 安徽省蚌埠市淮上区2026届数学八年级第一学期期末达标检测模拟试题含解析.doc
- 2025广东广湛城旅游轮有限公司招聘备考历年题库附答案解析.docx
最近下载
- 分析palantir对象模型shreyas phpapp01.pptx VIP
- 班子成员之间的相互批评意见.docx VIP
- 广发宏观分析报告:居民活动收支表的构建、分析与运用.pdf VIP
- Palantir公司调研报告.pptx VIP
- 汉川XH715D立式加工中心机使用说明书.pdf VIP
- 数学丨重庆市2026届高三上学期1月康德高考模拟调研卷(一)试卷及答案.pdf VIP
- 贵州省贵阳市普通中学2022-2023学年高三上学期期末语文(解析版).docx VIP
- 化工老旧装置淘汰退出和更新改造工作方案.docx VIP
- 培智六年级生活数学期末试卷ABC卷.doc VIP
- 港口机械钢结构制造规范.pdf VIP
原创力文档

文档评论(0)