绪论部分:1,解释DSP的含义。数字信号处理(DigitalSignalProcessing):以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理数字信号处理器(DigitalSignalProcessor):是一种特别适合于进行数字信号处理运算的微处理器芯片,其主要应用是实时快速地实现各种数字信号处理算法2,为什么DSP特别适合用于数字信号处理,简述其主要特点。主要体现在以下几个方面:①、在一个指令周期内可完成一次乘法和一次加法;②、程序和数据空间分开,可以同时访问指令和数据;③、片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;④、具有低开销或无开销循环及跳转的硬件支持;⑤、快速的中断处理和硬件I/O支持;⑥、具有在单周期内操作的多个硬件地址产生器;⑦、可以并行执行多个操作;⑧、支持流水线操作,使取指、译码和执行等操作可以重叠执行。另外,DSP实际上是一个微型计算机,它按照指令对二进制的数字信号进行计算,因此,运算速度非常快。3,简述Havard结构与VonNeumann结构的不同,DSP采用的哪种结构?DSP采用的哈佛结构(HarvardArchitecture),数据空间和存储空间是分开的,通过独立的数据总线在程序空间和数据空间同时访问。而MCU采用的冯·诺伊曼结构(VonNeumannArchitecture),数据空间和存储空间共用一个存储器空间,通过一组总线(地址总线与数据总线)连接到CPU。显然,运算能力上MCU不如DSP;但MCU价格便宜,对性能要求不高的场合MCU具有很大的优势。4,目前市场上主要的DSP厂商有哪些?试用搜索工具查阅其主要DSP的处理器产品。目前,在生产通用DSP的厂家中,最有影响的公司有:TI公司(美国德州仪器公司)ADI公司(美国的模拟器件公司)AT&T公司(现在的Lucent公司)Motorola公司NEC公司5,TI公司目前应用较广的3个DSP系列是什么?,各自适用于什么领域?TMS320C2000™数字控制控制优化:硬盘&采暖、通风空调电机控制家用电器变频电源控制TMS320C5000™消费、便携类低功耗:手机便携式电子产品生物识别电信和VoIPTMS320C6000™通信基站、数字图像处理高性能:无线基站视频流、视频会议视频安防/监控医疗成像6,TMS320F28335是哪个公司DSP?试解释其型号命名含义。7,简述TMS320F28335主要性能。高性能静态CMOS技术-高达150MHz(6.67ns周期时间)-1.9V/1.8V内核,3.3VI/O设计高性能32位CPU(TMS320C28x)-IEEE-754单精度浮点单元(FPU)(只在F2833x上提供)8,如何确定TMS320F28335外部引脚的首个引脚位置,引脚按什么顺序排序?TMS320F28335外部引脚在左下角,显示标有1,引脚顺序按逆时针排列。硬件部分:1,什么是最小系统?指处理器能够运行程序并完成简单任务的最小配置系统。2,TMS320F28335的总体结构及硬件资源有什么?CPU、存储器、片上外设。总体采用哈佛结构,具有串行口、定时器、主机接口(HPI)、DMA控制器、软件可编程等待状态发生器等片内外设外,还配有中断处理器、PLL、片内存储器、测试接口等单元电路,3,TMS320F28335片内存储器资源有哪些,占多大?片内具有快速RAM,通常可以通过独立的数据总线在程序空间和数据空间同时访问;4,TMS320F28335存储空间中外设寄存器帧的作用是什么?它映射至哪个空间?外设存储器帧可分为几块,各块是否受EALLOW保护?头文件中定义寄存器变量的结构体类型,GlobalVariableDefs.c文件中定义寄存器变量并将其分配到相应的寄存器段中,cmd文件中将寄存器段分配到相应的寄存器物理地址空间中。5,DSP系统中一般需要提供哪3种电源,各自的作用是什么?DSP系统上电时,其上电顺序是什么?I/O电源3.3V,CPU电源1.8V,电源供电5V。一般要求CPU内核电源先于I/O电源上电,后于I/O电源掉电。但CPU内核电源与I/O电源供电时间相差不能太长(一般不能大于1秒,否则也会影响器件的寿命或损坏器件)系统时钟部分:1,简述F28335DSP控制器外部时钟的产生方案及电路。由它内部的振荡器OSC(Oscillator)和基于PLL(PhaseLockedLogic)的时钟模块来实现.硬件电路(PhasedLockedLoopPLL)晶振(CrystalOscillator)时钟监视电路(ClockMoniterCircuit)时钟使能电路(clockenablecircuit)2,如何在编程中设置PLL模块的倍频系数?3,看门狗模块的作用是什么?看门狗的作用就是防止程序发生死循环。CPU定时器部分:4,DSP控制器有哪些CPU定时器资源,可实现什么功能?简述其工作原理,并说明如何计算其定时周期。CPU定时器中断如何管理?哪些中断是通过PIE管理的?3个CPU定时器,定时控制的功能。工作原理:由SYSCLKOUT提供基本时基给预分频计数器进行计数,预分频计数器减计数到0时产生一个计数脉冲给CPU定时器的计数器,CPU定时器即进行减计数。CPU定时器减计数到0时,重新加载周期寄存器的值并继续进行减计数。中断管理:PIE模块用于中断扩展。45个外设级中断请求向PIE模块产生中断请求,再由PIE模块向CPU产生中断请求。CPU响应PIE请求来处理外设中断请求。PIE总计可管理96个中断资源,将其分为12组,每组8个。PIE模块的每组中断资源对应CPU级的一个硬件中断资源。PIE1~PIE12组分别对应CPU级的INT1~INT12。5,CPU定时器的寄存器资源有哪些?如何对定时器进行初始化?试编程实现定时器T0的中断。以CPU定时器T0为例,说明三级中断的响应过程,并特别指出每级中需要手动设置的环节。CPU定时器的寄存器资源:F2833x芯片内部具有3个32位CPU定时器:Timer0、Timer1、Timer2。定时器初始化:voidInitCpuTimers(void)说明三级中断的响应过程:(1)外设级中断。外设级手动操作的内容外设中断的使能,需要将与该中断相关的外设寄存器中的中断使能位置1;外设中断的屏蔽,需要将与该中断相关的外设寄存器中的中断使能位置0;外设中断标志位的清除,需要将与该中断相关的外设寄存器中的中断标志位置1。清除CPU定时器0中断标志位TIF的语句如下:CpuTimer0Regs.TCR.bit.TIF=1;//清除定时器中断标志位(2)PIE级中断。PIE中断的使能。需要使能某个外设中断,就得将其相应组的使能寄存PIEIERx的相应位进行置位;PIE中断的屏蔽。这是和使能相反的操作;PIE应答寄存器PIEACK相关位的清除,以使得CPU能够响应同组的其他中断。清除PIEACK中与T0INT相关的应答位的语句如下所示:PieCtrl.PIEACK.bit.ACK1=1;//响应PIE组1内的其他中断。(3)CPU级中断。CPU接到了终端的请求,就得暂停正在执行的程序,转而去响应中断程序,同时CPU会将相应的IER和IFR位进行清除,EALLOW也被清除,INTM被置位,CPU向其他中断发出了通知,正在忙,没空来处理你们的请求了,得等到处理完手上的中断之后才能再来处理你们的请求。然后,CPU会存储返回地址并自动保存相关的信息,例如将正在处理的数据放入堆栈等等,做好这些准备工作之后,CPU会从PIE块中取出对应的中断向量ISR,从而转去执行中断子程序。中断部分:6,DSP控制器中的中断管理分为哪三级进行管理,各级分别引的作用是什么?(1)外设级中断。(2)PIE级中断。(3)CPU级中断。7,CPU级共可管理多少中断,其中可屏蔽中断有哪些?如何允许或是禁止中断?支持96个独立的中断。F28x一共可以支持32个CPU中断,其中每一个中断都是一个32位的中断向量,也就是2个16位的寄存器,里面存储的是相应中断服务子程序入口地址,不过这个入口地址是个22位地址。其中地址的低16位保存该向量的低16位;地址的高16位则保存它的高6位,其余更高的10位被忽略。2个不可屏蔽中断:RS,NMI。14+2个可屏蔽中断(INT1–INT14,DATALOG(CPU数据记录中断),RTOSINT(CPU实时操作系统中断)。通过使能进行允许和禁止。8,DSP控制器的中断为什么要使用PIE进行扩展?PIE模块管理的中断源可分为几组?每组最多管理几个中断源?如何在PIE级允许某具体中断源?PIE中断的优先级是如何规定的?PIE模块用于中断扩展。PIE总计可管理96个中断资源,将其分为12组,每组8个。PIE模块的每组中断资源对应CPU级的一个硬件中断资源。PIE1~PIE12组分别对应CPU级的INT1~INT12。,9,经过PIE模块管理的外设中断的中断响应流程大概包括哪几个步骤?请以外部中断XINT0为例,简述从中断信号产生到CPU为其执行中断服务程序,及中断程序中设置与退出的整个过程,并简要说明在此过程中需要对哪些寄存器的哪些位进行编程,以及如何编程?经过PIE模块管理的外设中断的中断响应流程步骤:(1)外设向PIE提出中断请求(2)PIEIFR1.7被置位,(3)判断PIEIER1.7=1?Y:向下(3)进行,N:返回(2)。(4)判断PIEACK.1=1?,Y:向下(4)进行,N:返回(3)。(5)向CPU发出INT1中断请求GPIO部分:1,F28335DSP控制器共有多少个GPIO资源,可分为几个多少位的资源进行管理?其寄存器映射至哪个存储空间?F2833x芯片提供了88个多功能的引脚,这些引脚的第一功能是作为通用意义数字I/O口(GPIO),而第二功能则可以作为片内外设的输入/输出引脚。88个引脚被分成三个端口来管理,分别是PORTA(GPIO0-GPIO31),PORTB(GPIO32-GPIO63),PORTC(GPIO64-GPIO87),这些口都可以配置为普通的数字IO口同样也能被配置为外部接口。2,F28335DSP控制器的每个GPIO引脚最多可复用几种功能?其复用控制由什么寄存器编程?如何将芯片上相关引脚配置为GPIO功能?GPIO功能,输入功能,输出功能,外设功能。(1)GPIO可以配置为数字I/O或外设I/O口,GPxMUX1(2):‘0’为数字I/O,‘1’为外设I/O口;(2)GPIO可以配置为内部电阻上拉功能,GPxPUD:‘0’为上拉,‘1’为禁止上拉;(3)GPIO具有数字滤波功能,GPxQSEL1(2):量化输入寄存器,可以确定是3周期采样还是6周期采样或者不用采样;(4)输入输出可配置,GPxDIR是控制每个引脚的输入或是输出,‘0’是输入,‘1’是输出;多路复用寄存器GPxMUX(x=A,B,C)用来配置引脚的功能,是外设操作还是I/O操作。每个通用I/O端口都受多路复用(MUX),方向(DIR),数据(DAT),置位(SET),清楚(CLEAR),以及切换(TOGGLE)寄存器的控制。3,若某引脚配置为GPIO,其数据传输方向如何设置?当作为输出时,改变引脚电平的方法有几种,常用哪种,由什么寄存器编程?当其作输入时,使用什么寄存器存入输入的数字量?4,GPIO模块的输入量化功能有什么作用?如何对输入进行量化?量化时需要设置的量有哪些?ADC模块部分:1.F28335DSP控制器的ADC模块是多少位?有几个模拟量输入通道,其输入电压范围是多少?各通道所使用的采样/保持器是否相同。F28335DSP控制器的ADC模块是12位。有个模拟量输入通道,ADC模拟输入的范围为0~3V。2.ADC模块有哪两种排序模式?各种模式下启动转换的触发方式、最大转换状态数、转换顺序和使用的结果寄存器有何不同?按照一次转换通道个数分为:同步工作模式(Simultaneoussampling)、顺寻工作模式(sequentialsampli