




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、哈工大DSP课程报告日期:2015年秋季学期DSP原理及应用课程课程设计报告院系:航天工程与力学系班号:学号:1122110326姓名:高小宁2016年1月13日审阅教师:考核成绩:题目一:结合学习过的DSP基本知识,试论述如果采用 DSP为核心器件 设计系统,需要考虑哪些性能指标、遵循哪些设计原则?一、运算速度:首先我们要确定数字信号处理的算法, 算法确定 以后其运算量和完成时间也就大体确定了, 根据运算量及其时间要求 就可以估算DSP芯片运算速度的下限。在选择 DSP芯片时,各个芯片运算速度的衡量标准主要有:1、MI PS(Millio ns of In structio ns Per S
2、eco nd),百万条指令 / 秒,一 般DSP为20100MI PS,使用超长指令字的TMS320B2XX 为2400MIPS。必须指出的是这是定点DSP芯片运算速度的衡量指标, 应注意的是,厂家提供的该指标一般是指峰值指标,因此,系统设计 时应留有一定的裕量。2、MOP S(Millio ns of Op erati ons P er Seco nd),每秒执行百万操作。这个指标的问题是什么是一次操作,通常操作包括CPU操作外,还包括地址计算、DMA访问数据传输、I/O操作等。一般说MOPS越 高意味着乘积-累加和运算速度越快。MOPS可以对DSP芯片的性能 进行综合描述。3、MFL OP
3、S ( Millio n Floati ng Point Op erati ons Per Seco nd),百万次浮点操作/秒,这是衡量浮点DSP芯片的重要指标。例如TMS320C31 在主频为 40MHz 时,处理能力为40MFLOPS, TMS320C6701在指令周期为6ns时,单精度运算可达 1GFLOPS。浮点操作包括浮点乘法、加法、减法、存储等操作。应注意的是,厂家提供的该指标一般是指峰值指标,因此,系统设计时 应注意留有一定的裕量。4、MBP S(Millio n Bit Per Seco nd),它是对总线和 I/O 口数据吞吐率的度量,也就是某个总线或I/O的带宽。例如对T
4、MS320C6XXX、200MHz时钟、32bit总线时,总线数据吞吐率则为800Mbyte/s或 6400MB PS。5、指令周期,即执行一条指令所需的时间,通常以 ns (纳秒) 为单位,如 TMS320LC549-80在主频为 80MHz是的指令周期为 12.5nso MAC时间,执行一次乘法和加法运算所花费的时间:大多数DSP芯片可以在一个指令周期内完成一次 MAC运算。6、FFT/FIR执行时间,运行一个N点FFT或N点FIR程序的运算时间。由于FFT运算/FIR运算是数字信号处理的一个典型算法, 因此,该指标可以作为衡量芯片性能的综合指标。二、运算精度:一般情况下,浮点DSP芯片的
5、运算精度要高于定点DSP芯片的运算精度,但是功耗和价格也随之上升。三、字长的选择:一般浮点 DSP芯片都用32位的数据字,大多数定点DSP芯片是16位数据字。四、存储器等片内硬件资源安排:包括存储器的大小,片内存储 器的数量,总线寻址空间等。五、开发调试工具:完善、方便的的开发工具和相关支持软件是 开发大型、复杂DSP系统的必备条件,对缩短产品的开发周期有很 重要的作用。六、功耗与电源管理:一般来说个人数字产品、便携设备和户外 设备等对功耗有特殊要求,因此这也是一个该考虑的问题。七、价格及厂家的售后服务因素:价格包括 DSP芯片的价格和开发工具的价格。八、其他因素:包括 DSP芯片的封装形式、
6、环境要求、供货周期、生命周期等。题目二:采用DSP处理器的CPU定时器进行10000次计数,写出定时器 的设置程序代码。void ConfigCpuTimer(struct CPUTIMER_V ARS *Timer, float Freq, float Period)Ui nt32 tem p;/定时器计数值Timer->C PUFre qInMHz = Freq; Timer- >P eriodI nUSec = Period; temp 二(lo ng) (Freq * P eriod); Timer->RegsAddr- >P RD.all = temp;Tim
7、er->RegsAddr->T PR.all = 0;Timer->RegsAddr->T PRH.all = 0;Timer->RegsAddr->TCR.bit .POL = 0; Timer->RegsAddr->TCR.bit.TOG = 0; Timer->RegsAddr->TCR.bit.TSS = 1; Timer->RegsAddr->TCR.bit.TRB = 1; Timer->RegsAddr->TCR.bit.FRCEN = 0; Timer->RegsAddr->TCR.
8、bit. PWIDTH = 7; Timer->RegsAddr->TCR.bit.SOFT = 1; Timer->RegsAddr->TCR.bit.FREE = 1; Timer->RegsAddr->TCR.bit.TIE = 1; Timer->I nterru ptCou nt = 0;Co nfigC puTimer(&Cp uTimer0,150,10000);题目三:如果采用DSP处理器的GPIO端口点亮小灯,试画出基本的电 路原理图。GPIOVDD33V当GPIO端为低电平时,小灯被点亮。题目四:设计DSP处理器SCI串口同
9、计算机通信,采用中断方式收发数据,间隔3秒发送一次字符"The TMS320F2812-UART is fine !";要求 SCI配置为波特率19200,数据长度8Bit,无极性,2位停止位;使 用TX缓冲寄存器空触发SCI-TX INT中断,CPU定时器0中断触发 第一次传输,试给出相关程序代码。#inelude "DSP281x Device.h"/使用的函数原型声明void Gp io_select(void);void In itSystem(void);void SCInit(void);in terr upt void epu _timer
10、O_isr(void); in terru pt void SCI_TX_isr(void);/全局变量char message="The F2812-UART is fine !n门; int index =0;/字符串指针void mai n(void) In itSystemO;/初始化DSP内核寄存器Gp io_select();/配置GPIO复用功能寄存器调用外设中断扩展初始化单元/InitP ieCtrlO;InitP ieVectTableO;(代码:DSP281x_PieVect.c )/初始化 PIE vector向量表PIE-unit (代码:DSP281x_Pi
11、eCtrl.c)重新映射PIE - Timer 0的中断 EALLOW; /解除寄存器保护P ieVectTable.TINTO = &cp u_timerO_isr;EDIS; /使能寄存器保护In itC puTimersO;/ 配置 CPU-Timer 0 周期 50 ms:/ 150MHz CPU频率,50000微秒中断周期Con figC puTimer(&Cp uTimer0, 150, 50000);/ 使能 PIE 内的 TINT0 : Group 1 interrupt 7 P ieCtrIRegs. PIEIER1.bit.lNTx7 = 1;/使能CPU
12、INT1 (连接到CPU-Timer 0中断) IER = 1;EALLOW; /解除寄存器保护PieVectTable.TXAINT = & SCI_TX_isr;EDIS;/使能寄存器保护/使能PIE内的SCI_A_TX_INT中断P ieCtrIRegs. PIEIER9.bit.lNTx2 = 1;/ 使能 CPU INT 9 IER |= 0x100;/全局中断使能和更高优先级的实时调试事件EINT; /全局中断使能INTMERTM; /使能实时调试中断 DBGMCpuTimerORegs.TCR.bit.TSS = 0; / 启动定时器 0SCI_I nit(); whil
13、e(1)while(CpuTimer。nterruptCount < 60)/ 等待50ms * 60EALLOW;SysCtrIRegs.WDKE Y 二 0x55;SysCtrIRegs.WDKEY 二 0xAA; / 看门狗控制 EDIS;CpuTimer0.lnterruptCount = 0;/ 复位计数器in dex = 0;SciaRegs.SCITXBUF二 messagei ndex+;void Gp io_select(void) EALLOW;GpioMuxRegs.GPAMUX.all = 0x0;/ 所有 GPIO 端口配置为I/OGp ioMuxRegs.G
14、PBMUX.all = 0x0;Gp ioMuxRegs.G PDMUX.all = 0x0;Gp ioMuxRegs.G PFMUX.all = 0x0;Gp ioMuxRegs.G PFMUX.bit.SCIRXDA_G PIOF5 = 1; / 配置SCI-RXGp ioMuxRegs.G PFMUX.bit.SCITXDA_G PIOF4 = 1; / 配置SCI-TXGp ioMuxRegs.G PEMUX.all = 0x0;Gp ioMuxRegs.G PGMUX.all = 0x0;GpioMuxRegs.GPADIR.all = 0x0; / GPIO PORT配置为输入Gp
15、 ioMuxRegs.G PBDIR.all = 0x0; Gp ioMuxRegs.G PDDIR.all = 0x0;Gp ioMuxRegs.G PEDIR.all = 0x0;Gp ioMuxRegs.G PFDIR.all = 0x00FF;Gp ioMuxRegs.G PGDIR.all = 0x0;GpioMuxRegs.GPAQUAL.all = 0x0;/ 设置所有 GPIO输入的量化值等于0Gp ioMuxRegs.G PBQUAL.all = 0x0;Gp ioMuxRegs.G PDQUAL.all = 0x0;Gp ioMuxRegs.G PEQUAL.all = 0
16、x0;EDIS;void In itSystem(void)EALLOW;SysCtrIRegs.WDCR二 0x00AF;/ 配置看门狗/ 0x00E8禁止看门狗,预定标系数 Prescaler = 1/ OxOOAF 不禁止看门狗,预定标系数Prescaler = 64/SysCtrlRegs.SCSR = 0;SysCtrlRegs. PLLCR.bit.DIV = 10;倍频系数为5看门狗产生复位/配置处理器锁相环,频系数:SysCtrIRegs.HIS PCPall = 0x1;2/配置高速外设时钟分频系数:SysCtrlRegs.LOS PCP. all = 0x2;4/配置低速外
17、设时钟分/使用的外设时钟时钟设置: / 一般不使用的外设的时钟禁止,SysCtrlRegs. PCLKCR.bit.EVAENCLK=0;SysCtrlRegs. PCLKCR.bit.EVBENCLK=0;SysCtrlRegs.PCLKCR.bit.SCIAENCLK=1; / 使能 SCI 模块降低系统功耗的时钟SysCtrlRegs. PCLKCR.bit.SCIBENCLK=0;SysCtrlRegs. PCLKCR.bit.MCBS PENCLK=0;SysCtrlRegs. PCLKCR.bit.S PIENCLK=0;SysCtrlRegs. PCLKCR.bit.ECANEN
18、CLK=0;SysCtrlRegs. PCLKCR.bit.ADCENCLK=0; EDIS;void SCI_I nit(void)SciaRegs.SCICCR.all =0x13;/ 2bit 停止位/无循环模式 无极性,字符长度:8 bits,/异步模式,空闲线协议SciaRegs.SCICTL1.all =0x0003;/ 使能 TX, RX,内部SCICLK,禁止 RX ERR,SLEE P, TXWAKESciaRegs.SCIHBAUD = 0;/ 波特率:19200( LSPCLK =37.5MHz);SciaRegs.SCILBAUD = 0xf3;SciaRegs.SCI
19、CTL2.bit.TXINTENA = 1; / 使能 SCI 发送中断SciaRegs.SCICTL1.all =0x0023;/ 使 SCI 退出复位in terru pt void cpu _timer0_isr(void)Cpu Timer。n terr up tCo un t+;/每个定时器中断清除一次看门狗计数器/响应中断并允许系统接收更多的中断P ieCtrIRegs .P lEACK.all = P IEACK_GROU P1;/II SCI_A发送中断服务程序/发送字符串 message!二二=in terru pt void SCI_TX_isr(void)if (inde
20、x < 26) SciaRegs.SCITXBUF=messagei ndex+;/重新初始化PIE为下一次SCI-A TX准备接收下一次中断P ieCtrIRegs. PIEACK.all = 0x0100;响应中断题目五:采用查询方式实现题目四中功能,SCI配置要求相同,使用发送 移位寄存器空标志位TXEMPTY触发发送数据,软件延时方法控制 间隔时间3秒,试给出相关程序代码。#inelude "DSP281x Device.h"/使用的函数声明 void Gpio _select(void); void In itSystem(void); void SCI_I
21、 nit(void);void mai n(void)字符指针定义/char message="The F2812-UART is fine !nr" int in dex =0;long i;In itSystemO;/初始化DSP内核寄存器Gp io_select();/配置GPIO复用功能寄存器/ SCI接口初始化SCI_I nit();while(1)SciaRegs.SCITXBUF二messagei ndex+; while ( SciaRegs.SCICTL2.bit.TXE MPTY = 0);/状态检测模式:/状态检测,等待发送标识为空:TXE MPTY
22、= 0EALLOW;SysCtrlRegs.WDKEY 二 0x55;/ 看门狗控制SysCtrlRegs.WDKE Y 二 0xAA;EDIS;if (in dex > 26)/软件延时,近似2秒.in dex =0;for(i=0;i<15000000;i+)EALLOW;SysCtrlRegs.WDKEY 二 0x55;/ 看门狗控制SysCtrlRegs.WDKEY 二 0xAA;/ 看门狗控EDIS;void Gp io_select(void) EALLOW;GpioMuxRegs.GPAMUX.all = 0x0;/ 所有 GPIO 端口配置为I/OGp ioMuxR
23、egs.G PBMUX.all = 0x0;Gp ioMuxRegs.G PDMUX.all = 0x0;Gp ioMuxRegs.G PFMUX.all = 0x0;Gp ioMuxRegs.G PFMUX.bit.SCIRXDA_G PIOF5 = 1; / 配置SCI-RXGp ioMuxRegs.G PFMUX.bit.SCITXDA_G PIOF4 = 1; / 配置SCI-TXGp ioMuxRegs.G PEMUX.all = 0x0;Gp ioMuxRegs.G PGMUX.all = 0x0;GpioMuxRegs.GPADIR.all = 0x0; / GPIO PORT配
24、置为0x0; 0x0;0x0;0x0;输入Gp ioMuxRegs.G PBDIR.allGp ioMuxRegs.G PDDIR.allGp ioMuxRegs.G PEDIR.allGp ioMuxRegs.G PFDIR.allGp ioMuxRegs.G PGDIR.all = 0x0;GpioMuxRegs.GPAQUAL.all = 0x0;/ 设置所有 GPIO输入的量化值等于0Gp ioMuxRegs.G PBQUAL.all = 0x0;Gp ioMuxRegs.G PDQUAL.all = 0x0;Gp ioMuxRegs.G PEQUAL.all = 0x0;EDIS;v
25、oid In itSystem(void)/配置看门狗0X00E8禁止看门狗,预定EALLOW;SysCtrIRegs.WDCR二 0x00AF;/标系数 Prescaler = 1/0x00AF 不禁止看门狗,预定标系数Prescaler = 64/SysCtrIRegs.SCSR = 0;SysCtrIRegs. PLLCR.bit.DIV = 10;倍频系数为5看门狗产生复位/配置处理器锁相环,SysCtrlRegs.HIS PCPall = 0x1;频系数:2/配置高速外设时钟分SysCtrIRegs.LOSPCP.all = 0x2;/ 配置低速外设时钟分频系数:4/使用的外设时钟时
26、钟设置:/ 一般不使用的外设的时钟禁止,降低系统功耗SysCtrlRegs. PCLKCR.bit.EVAENCLK=0;SysCtrlRegs. PCLKCR.bit.EVBENCLK=0;SysCtrlRegs.PCLKCR.bit.SCIAENCLK=1; / 使能 SCI 模块 的时钟SysCtrlRegs. PCLKCR.bit.SCIBENCLK=0;SysCtrlRegs. PCLKCR.bit.MCBS PENCLK=0;SysCtrlRegs. PCLKCR.bit.S PIENCLK=0;SysCtrlRegs. PCLKCR.bit.ECANENCLK=0;SysCtrl
27、Regs. PCLKCR.bit.ADCENCLK=0;EDIS;void SCInit(void)SciaRegs.SCICCR.all =0x13;/ 2bit停止位/无循环模式无极性,字符长度:8 bits,/异步模式,空闲线协议SciaRegs.SCICTL1.all =0x0003;/使能TX, RX,内部SCICLK,/禁止RXERR,SLEE P, TXWAKESciaRegs.SCIHBAUD = 0; / 波特率:19200 (LSPCLK = 37.5MHz);SciaRegs.SCILBAUD = 0xf3;SciaRegs.SCICTL1.all =0x0023; / 使 SCI 退出复位题目六:应用DSP处理器的SPI接口,以查询方式实现 低电平点亮LED循环显示16进制字符“ 0F”功 能(LED定义如左图所示),SPI配置为上升沿无延 时发送,数据长度为8位,波特率最小值,试设计 给出相关程序代码。#in elude "DSP28Device.h"Uin t16 table15=0xc000,0xf900,0xA400,0xB000,0x9900,0x9200,0x8200,0xF8 00,0x8000,0x9000,0x8800,0x8300,0xc600,0xa100,0x8600,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵州省考试院2025年4月高三年级适应性考试历史试题及答案
- 汽车液力变矩器项目风险分析和评估报告
- 广州新华学院《勘技专外语》2023-2024学年第二学期期末试卷
- 四川财经职业学院《中国现当代文学(3)》2023-2024学年第二学期期末试卷
- 山东省青岛市市北区达标名校2025届中考英语试题命题比赛模拟试卷(7)含答案
- 潍坊食品科技职业学院《医学细胞生物学实验技术》2023-2024学年第二学期期末试卷
- 广东亚视演艺职业学院《图案构成设计》2023-2024学年第二学期期末试卷
- 河南省漯河市2025届高三下学期期末统一模拟考试数学试题试卷含解析
- 贵州省独山县第四中学2024-2025学年人教版高中历史试题选修4-1:模块综合检测试题(一)含解析
- 天津国土资源和房屋职业学院《俄语会话(2)》2023-2024学年第二学期期末试卷
- 足疗店转让协议
- 2024年【中级消防设施操作员(考前冲刺)】试题及答案
- 浙江省宁波市鄞州区2023-2024学年八年级下学期英语期中考试(含答案)
- 2025-2030中国AI教学行业市场深度调研及市场前景与投资战略研究报告
- 庆华初中副校长管理工作绩效考核方案试行
- 2025年第三届天扬杯建筑业财税知识竞赛题库附答案(901-1000题)
- GB/T 320-2025工业用合成盐酸
- 大学信息技术基础教程课件 主题2 信息技术基础
- 小黑鱼阅读测试题及答案
- 中华武术-太极知到课后答案智慧树章节测试答案2025年春武汉城市职业学院
- 商场改造施工方案范本
评论
0/150
提交评论