好文档 - 专业文书写作范文服务资料分享网站

时间表调度原理与设计分析

天下 分享 时间: 加入收藏 我要投稿 点赞

课程设计报告

课程设计题目: 时间表调度原理与设计分析

学 号:201320130224 学生姓名:程占伟 专 业:通信工程

班级:1321302 指导教师:涂其远

2016年 6月

1日

时间表调度原理与设计分析

课题研究目的:

研究程控交换机中的时间表实现任务调度方法的原理,并编程实验时间调度。 原理:

周期级程序由时间表调度、启动。本实验所编模块??时间表调度模块,就是以时间表为依据,通过时间表以不同周期调用下属的七个周期级模块及相应程序(维持模拟系统正常运行的屏幕显示模块、垃圾箱处理模块及基本级程序)。关于设计时间表完成任务调度的方法可参见教材,本实验系统的时钟中断周期定为10MS。

实现方法及数据结构,给定的原始数据是各程序模块的名称和规定的执行周期,要求由时间表调度的程序模块有以下几种: 周期级:

模块名

MFLSCM (摘挂机识别模块) MFPIDE (脉冲识别模块) MFMID (位间隔识别模块) MFTMOD (计时模块) MFSCOC (驱动交换网络模块) MFDRSN (送音模块) MFSEDT (收号、停收号模块)

基本级及其他:

模块名

SCAN_H( ) SCAN_COMMU( ) SCAN_T( ) SCAN_D( ) CERCOMMU_PROC( )

执行周期 200MS 100MS 50MS 50MS 50MS 执行周期 200MS 10MS 100MS 50MS 100MS 100MS 50MS

CEDRECEIVE_COMMU( ) LFCOMC( ) SECHARD( )

MFDUST (垃圾箱模块)

50MS 50MS 10MS 无周期

实验主要数据结构:

函数功能:完成调度表的初始化;

函数原型:initSchTable(int ScheduleTable[SchTabLen][SchTabWdh]);

其中SchTalLen和SchTabWdh为在bconstant.h中的宏定义:

#define SchTabLen 20 //代表这个调度表为20行(相邻行之间的时间间隔为10ms);

#define SchTabWdh 3 //代表三个周期性调度任务

//0:摘挂机检测任务;1:脉冲检测任务; //2:位间隔检测任务;

1. 实验效果检验

当调度表初始化正确时,能够进行正常的通话;如果初始化不正确,可能会造成周期性程序的不正常调用,例如位间隔调度的延迟会造成识别位间隔的延误甚至丢失。

注:由于为循环程序,所以调度表的初始化方案不唯一。

2. 实验代码

#include //bconstant.h #define SchTabLen 20 #define SchTabWdh 3

void initSchTable(int ScheduleTable[][SchTabWdh]) { }

for(int I=0;i

ScheduleTable[i][1]=1; if(i==0){ }

else if(i==(int)(SchTabLen+1)/2)

ScheduleTable[i][2]=1; ScheduleTable[i][0]=1; ScheduleTable[i][2]=1;

main() { }

3. 实验结果

int ScheduleTable[SchTabLen][SchTabWdh] = {0}; int r,l;

initSchTable(ScheduleTable);

for(r=0;r

system(\ return 0;

for(l=0;l

printf(\

printf(\

时间表调度原理与设计分析

课程设计报告课程设计题目:时间表调度原理与设计分析学号:201320130224学生姓名:程占伟专业:通信工程班级:1321302指导教师:
推荐度:
点击下载文档文档为doc格式
1wb628aj5b76vac3ljxx41z4g1sgjh0187a
领取福利

微信扫码领取福利

微信扫码分享