1、嵌入式系统ARM内核和DSP内核的结合,意义何在?答:AMR以控制为核心;DSP多媒体影音处理,实时信号处理.控制能力好,定时控制好。
速度快、开发性好、稳定性高。
ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和众多合作伙伴。
2、DSP的工作电压越来越低,内核电压已经低至1V,这样做有何意义?为什么DSP内核工作电压和I/O工作电压不一样?答:集成电路速度越来越快,随之而来,功耗越来越大,这样散热就是很大的问题。
在芯片走线尺寸不变的情况下,内部阻抗也不变,降低工作电压会降低功耗,这样能再较高频率下芯片发热较少。
内核不容易受到外部干扰,所以电压可以做的较低,但IO容易受外部信号干扰,保持较高电压容易是器件工作稳定,这是功耗和稳定性的折中。
3、TMS320C54xDSP采用硬件乘法器完成17*17bits带符号乘运算,而软件乘法器(微代码指令)也能完成同样的运算,请问它们有什么区别?答:DSP有专门的硬件来实行乘累加(MAC运算),也就是你说的硬件乘法器,用MAC可以在一个处理器时钟周期内,得到两个数据相乘的结果。
而典型的微处理器是通过二进制长的相乘进行乘法运算的,当微处理器遇到一个乘法指令时,调用一个内部运算序列(称为微码)在连续的时钟周期中,改执行一系列的移位和相加运算,直到算出结果。
因为微码有许多步骤,所以该运算需要许多时钟周期来完成.(硬件比软件快速完成乘法运算,软件要占用程序空间,运行时间长)4、当要使用硬中断INT3作为中断响应矢量时,请问可屏蔽中断寄存器IMR和中断标志寄存器IFR应如何设置。
答:IFR中INT3位=1 IMR中INT3位=1使能中断5、若处理器方式寄存器PMST的值设为01A0H,而中断矢量为INT3,那么在中断响应时,程序计数器指针PC的值为多少?答:PMST:中IPTR=(000000011)b,int3中断向量号为24H,做移量为后变为60H 则终端响应时程序计数器指针PC=01E0H6、TMS320C54xDSP存储器有3个独立的可选空间组成:程序、数据和I/O空间.而’C54x存储空间的配置是受MP/MC、OVL Y和DROM3个位控制的。
如果想使片上RAM同时映射到数据空间和程序空间,那么MP/MC、OVL Y和DROM的值应如何设置?答:MP/MC=0;OVLY=1;DROM=1 7、TMS320C54xCPU有一条指令流水线加速了指令执行,请问流水线分几级,分别叙述各级的功能?6级流水操作的功能分别是:Prefetch:预取指,把将要执行的指令地址提供给程序地址总线PAB。
Fetch:取指,从程序总线PB上读取程序指令,并放入指令寄存器IR.Decode:译码,指令寄存器IR中的内容被译码,同时判定操作数类型、寻址方式及控制顺序。
Access:访问寻址,数据地址产生单元DAGEN把将要访问的数据存储区地址提供给数据地址总线DAB和CAB。
Read:读操作数,从数据地址总线DB和CB上读取操作数,同时把将要写的数据存储区地址提供给写地址总线EAB。
Execute/write:执行/写操作,执行指令,同时通过数据写总线EB完成写操作8、DSP响应中断的条件有哪些?中断响应应满足:·在出现多个中断时,此中断优先级最高。
·ST1中INTM位为0,允许全局中断。
·IMR中的响应位为1,开放此中断。
·外部中断响应时间.9、DSP如何与不同速度的片外存储器及其他外设进行数据交换?答:软件可编程等待状态发生器可以将外部总线周期扩展到7个机器周期,以使’C54x能与低速外部设备接口。
而需要多于七个等待周期设备,可以用硬件READY线来接口.10、循环寻址和位倒序寻址是DSP数据寻址的特殊之处,试叙述这两种寻址的特点和它们在数字信号处理算法中的作用。
答:循环寻址可以和任意一种间接寻址模式一起使用。
每一个辅助寄存器和系数数据指针,作为对数据或寄存器位的指针时,都可以独立配置成线性或循环寻址。
位倒序寻址提高了执行速度和在FFT算法的程序中使用存储器的效率。
在这种寻址方式中,AR0存放的整数N 是FFT点数的一半,一个辅助寄存器指向一个数据存放的物理单元。
当使用位倒序寻址方式把AR0加到辅助寄存器中时,地址以位倒序的方式产生,即进位是从左向右的,而不是从右向左.11、如何在数据存储器中开辟循环缓冲区?答:在数据存储器中开辟一个称之为滑窗的N个单元的缓冲区,滑窗中存放最新的N个输入样本;每次输入新样本时,以新样本改写滑窗中的最老的数据,而滑窗中的其他数据不作移动;利用片内BK(循环缓冲区长度)寄存器对滑窗进行间接寻址,循环缓冲区地址首尾相邻.12、在数据存储器中开辟一段循环缓冲区,缓冲区大小为64。
试写出缓冲区首地址和缓冲区大小寄存器的内容。
答:①首地址: EFB ②内容:XXXX XXXX X000 0000b13、使用循环寻址要遵循的三个原则:(1)循环缓冲区的长度R〈2N,且地址从一个低N位为0的地址开始(2)步长小于或等于缓冲区的长度(3)所使用的辅助寄存器必须指向缓冲区单元14、DSP特有的位倒序寻址主要应用于FFT算法中,针对复数FFT和实数FFT,相应的位倒序寻址索引应如何确定?答:实数FFT时位倒序寻址索引{AR0存放的整数}是FFT点数的一半;复数FFT时位倒序寻址索引{AR0存放的整数}是FFT点数1、分析汇编程序为什么要用泰勒展开的方法实现正弦计算。
答:因为根据泰勒展开式进行计算来实现正弦信号,他能精确地计算出一个角度的正弦和余弦值,且只需要较小的存储空间2、’C54x核心板的最小应用系统包括哪几个部分?电源管理芯片的作用是什么?3、核心板电源管理电路设计中需要特别注意的问题是什么?答:在进行电源设计时,需要特别强调的是模拟电路和数字电路部分要独立供电,数字地与模拟地分开,遵循单点接地的原则。
7、'C54x定时器由哪几个特殊功能寄存器控制其定时时间,没有扩展的情况下,最长的定时时间由什么决定。
答:由定时设定计数器TIM、定时周期计数器PRD和定时控制寄存器TCR这三个特殊功能寄存器控制其定时时间.最长定时时间由指令周期T和TIM设置的初值决定。
12、为什么改变锁相环电路PLL模式的乘法系数,首先要将锁相环电路转换成DIV模式?答:因为在只有DIV模式下才能更改PLLMUL、PLLDIV和PLLON/DOFF位.13、定时器对CPU时钟分频倍数最大可以是多少?答:0FFFFH14、'C54x核心板的存储空间包括哪几个部分。
它们的空间大小分配由什么决定。
答:64K字程序存储空间, 64K字数据存储空间,64K字I/O空间MP/MC位若MP/MC=0,则片内ROM安排到程序空间; 若MP/MC=1,则片内ROM不安排到程序空间OVLY位若OVLY=1,则片内RAM安排到程序和数据空间若OVLY=0则片内RAM只安排到数据存储空间DROM位当DROM=1,则部分片内ROM安排到数据空间当DROM=0,则片内ROM不安排到数据空间15、为了将存储器与具有存储连接功能的外设有机结合在一起,又不发生冲突,硬件连接逻辑应注意的问题是什么?说明原因。
答:1、存储连接功能的外设和CPU之间的通信,因为存储连接功能的外设和CPU的速率和通信协议彼此并不一定相同,那么必然需要一种设备来进行协议转换和数据缓冲,以适配速率不同,协议不同的各种外设之间以及外设和cpu之间的通信.因此提出总线的概念,连接在一种总线上的所有设备的速率和底层通信协议是一致的。
2、相同协议和相同速率的外设连接在一类总线之上,因为系统中某一种总线并不一定只有一条,每一条总线(注意,不是一种,而是一条)都定了一个地址空间,也就是一个地址命名空间。
16、说明使用DMA的意义何在.答:能够在没有DSP的核心单元CPU参与的情况下,由DMA控制器完成存储器映射区的数据传输。
数据传输可以在片内存储器、片外存储器以及其他外设之间进行。
17、在禁止DMA中断的情况下,CPU如何监控DMA通道的传送?答:CPU的中断屏蔽寄存器(IMR)和INTM位控制着是否响应来自DMA的中断18、FFT算法按抽取方法可分为哪几种方法?按基数可分为哪几种方法。
答:FFT算法可分为按时间抽取算法和按频率抽取算法。
按基数可分基2、基4、基8以及任意因子。
19、输入序列是按混序存储,输出序列为自然顺序排列的FFT算法是什么?答:离散傅里叶(DFT)20、使用循环寻址的数据缓冲区的地址应该如何设置?答:由EFB定义缓冲区的起始地址,EOB定义缓冲区的底部地址,循环缓冲区的长度必须是2k>N, k为整数,循环缓冲区的起始地址必须对准2k的边界22、如何在C程序中访问汇编语言变量答:(1)当C语言访问·bss段中汇编变量时 1、用“·bss”或“·usect”伪指令定义变量; 2、用“·global”伪指令定义外部变量; 3、汇编语言在变量名前加“-”(2)当访问不在·bss段中时,定义一个全局指针变量“—XXX",并将该指针变量指向数据表的首个数据。
(3)用。
set 和。
global命令定义全局常数。
从C语言程序中访问在汇编语言程序中用.set和。
global命令定义的常数,按以下步骤可进行正常访问:1、在汇编语言程序中将常数(符号)定义为全局常数;2、C语言程序中访问汇编语言程序中的常数时,应在常数名之前加一个地址操作符“&”。
23、使用ADD指令完成加法temp1+ temp2= temp3LD temp1,A ;将变量temp1装入累加器AADD temp2,A ;将变量temp2加到累加器A中STL A,temp3 ;将结果(累加器A的低16位)存入变量temp3中24、利用ADDS指令实现32位数据装入LD #0, DP ;设置数据页指针LD 60h,16, A ;将60H的内容装入累加器A的高16位,同时累加器A的低16位清0ADDS 61h,A ;将61H的内容加到累加器A的低16位25、利用SUB指令实现两个变量相减STM #60h, AR3 ;将变量1的地址60H装入辅助寄存器AR3STM #61h,AR2 ;将变量2的地址61H装入辅助寄存器AR3SUB *AR2+,*AR3,B ;将变量1左移16位,同时变量2也左移16位,然后相减,;结果放入累加器B(高16位)中,同时AR2加1STH B, 63h ;将相减的结果(高16位)存入变量3的地址63H中26、使用SUBC指令和RPT指令实现整数除法:temp3=temp1/temp2,余数放在temp4中。