内容发布更新时间 : 2024/11/10 3:29:47星期一 下面是文章的全部内容请认真阅读。
简述DSP芯片的主要特点
哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。
多总线结构---保证在一个机器周期内可以多次访问程序存储空间和数据存储空间。
指令系统的流水线操作--减少指令执行时间,增强处理器的处理能力。取址,译码,取操作和执行四个阶段。 专用的硬件乘法器--使乘法累加运算能在单个周期内完成。 特殊的DSP指令、快速的指令周期、硬件配置强。
详细描述冯诺依曼结构和哈佛结构,并比较不同?
冯诺依曼结构--数据和程序共用总线和存储空间,在某一时刻,只能读写程序或者读写数据。将指令、数据、地址存储在同一个存储器统一编址,依靠指令计数器提供的地址来区分是指令‘数据还是地址,取指令和取操作数都访问同一存储器,数据吞吐率低。
哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。改进的还允许在程序存储空间和数据存储空间之间相互传送数据。
DSP系统的设计过程?
确定DSP系统设计的性能指标;进行算法优化与模拟;选择DSP芯片和外围芯片;进行硬件电路的设计;进行软件设计;进行软硬件综合调试。
请描述TMS320C54x的总线结构?
C54X采用先进的哈佛结构并具有八组总线, 其独立的程序总线和数据总线允许同时读取指令和操作数,实现高度的并行操作。 程序总线PB传送从程序存储器来的指令代码和立即数。
3组数据总线连接各种元器件。CB和DB总线传送从数据存储器读出的操作数,EB总线传送写入到存储器中的数据。(1分) 4组地址总线PAB\\CAB\\DAB\\EAB传送执行指令所需的地址。
TMS320C54x片内存储器一般包括哪些种类?如何配置片内存储器?
C54X片内存储器一般包括两种类型:ROM(只读存储器),RAM(随机访问存储器)。RAM又可分为双访问DARAM和单访问SARAM。
简述TMS320C54X芯片的CPU各组成部分及其功能。
CPU状态和控制寄存器:用于设置各种工作条件和工作方式的状态以及存储器配置状态和控制信息。 40位算术逻辑单元、40位累加器A和B:两者共同完成算术运算和逻辑运算。
桶形移位寄存器:使处理器能完成数字定标,位提取,对累加器进行归一化处理等操作。 乘法器/加法器单元:在单周期内完成一次乘法累加运算。
比较选择和存储单元:是专门为Viterbi算法设计的加法,比较,选择操作的硬件单元。 指数编码器:用于支持单周期指令EXP的专用硬件。
TMS320C54x存储器包括哪几个空间?
64k程序存储空间:程序指令和程序中所需的常数表格
64k数据存储空间:存储需要程序处理的数据或程序处理后的结果 64kI/O存储空间:存储与外部存储器映像的外设接口
TMS320C54x有几种状态和控制寄存器?它们的功能?
状态寄存器ST0 和 状态寄存器ST1: 0和1包括了各种工作条件和工作方式的状态 处理器方式状态寄存器PMST:包括了存储器配置状态和控制信息
TMS320C54x的片内外设有哪些?以及它们的功能?
通用I/O引脚:扩展外部存储器;
定时器:用于周期性的产生中断和周期输出; 时钟发生器:为C54X提供时钟信号;
主机接口:外部主机或主处理器可以通过HPI接口读写C54X的片内RAM,从而大大提高数据交换能力;
串行口:这些串口可提供全双工,双向的通信功能,可与编解码器,串行AD转换器和其他串行器件通信,也可以用于微
处理器之间的通信。
软件可编程等待状态发生器:它可以将外部总线周期扩展到14个机器周期,以使C54X与低速外部设备接口; 可编程分区转换逻辑:它允许C54X在外部存储器分区之间切换时不需要外部为存储器插等待状态。
TMS320C54x提供哪几种数据寻址方式?如何寻址的?
立即数寻址:指令中有一个固定的立即数 LD #0,ARP
绝对寻址:指令中有一个固定的地址(16位):数据存储器寻址dmad 程序存储器寻址pmad 端口地址PA寻址,*(lk)寻址
累加器寻址:按累加器的内容作为地址去访问程序存储器中的一个单元READA Smem 直接寻址:指令编码中含有的7位地址DP或SP一起合成数据存储器中操作数的实际地址 间接寻址:通过辅助寄存器寻址 单操作数寻址和双操作数寻址
存储器映射寄存器MMR寻址:修改存储器映射寄存器的值,而不影响当前数据页面指针DP和当前堆栈指针SP的值 堆栈寻址:把数据压入或弹出系统堆栈。
在循环寻址方式中,如何确定循环缓冲的起始地址、若缓冲大小32,其起始地址从哪开始?
循环寻址中,循环缓冲区大小寄存器用于确定循环缓冲区的大小。大小为R的循环缓冲区必须从一个N位边界开始,XXXX XXXX XX00 0000开始
双数据存储器操作数间接寻址使用哪几种类型,所用辅助寄存器只能是那几个,其特点是?
*ARx、*ARx-、*ARx+、*ARx+0% 只能使用AR2、AR3、AR4、AR5. 在一个机器周期内通过两个16位数据总线读两个操作数,或者一次读一次写。
汇编器和链接器如何对段进行管理?
汇编器通过段位指令自动识别各个段,并将段名相同的语句汇编在一起。
链接器:对汇编器产生的COFF目标文件中的各段作为输入端,当有多个文件进行链接时,将输入段组合起来,在可执行的COFF输出模板中建立各个输出端;链接器为输出段选择存储器地址。
汇编程序中的伪指令有什么作用?其中段定义伪指令有哪些?初始化段和末始化段有何区别?
对汇编器、链接器有重要的指示作用,包括段定义、条件汇编、文件引用、宏定义
.text--存放程序代码 .data---存放初始化了的数据 .bss---存放未初始化的变量 .sect ‘名称’---定义一个有名段,放初始化了的数据或程序代码。
未初始化段主要用来在存储器中保留空间,没有实际内容。已初始化段包含可执行代码或已初始化数据,放在目标文件中,加载程序再放到C54x存储器中。
链接命令文件有什么作用?MEMORY和SECTIONS伪指令的作用?
链接命令文件用来为链接器提供链接信息,可将链接操作所需的信息放在一个文件中,在多次使用相同的链接信息,方便调用。 链接器要确定输出端应分配到存储器的位置,首先需要一个目标存储器的模型,MEMORY指令就是指定目标存储器的模型, SECTIONS伪指令的作用:说明如何将输入段组合成输出段;在可执行文件中定义输出段;指定输出段在存储器中存放的位置;允许对输出段重新命名。
TMS320C54x CPU接收到可屏蔽的硬件中断时,满足哪些条件才能响应中断?
优先级最高中断,当同时有几个硬件请求中断时,C54x根据优先级进行响应; 状态寄存器ST1中的INTM位是0,表示允许可屏蔽中断; 中断屏蔽寄存器IMR中相应的位是1。
TMS320C54x 的中断向量表是如何重定义的?
DSP复位时,中断向量表的起始地址固定为0FF80H
,复位后,中断向量可重新被映像到程序存储器的任何一个128子页的地
方(除保留区域外),中断向量地址由PMST中的中断向量指针IPTR(9位)和中断向量号(0~31)左移两位后组成。
简述非延迟分支转移与延迟分支转移的不同。
非延迟分支转移:在指令流水线中先清除分支指令后面已读入的一个双字指令或两个单字指令,然后再进行分支转移; 延迟分支转移:跟在分支指令后的一个双字指令或两个单字指令先执行,然后进行分支转移。 、
简述TMS320C54X定时器组成及功能,并介绍初始化定时器步骤?
定时器由三个存储器映象寄存器组成:TIM,PRD,TCR
TIM是定时器寄存器,每计数一次自动减1;PRD是定时器周期寄存器,当TIM减为0后,CPU自动将PRD的值装入TIM;TCR是定时器控制寄存器,包含定时器的控制和状态位。
初始化定时器的步骤有:将TCR中的TSS位置1,停止定时器工作;装入PRD的值;重新装入TCR,以初始化TDDR和启动定时器;使TSS清0以接通CLKOUT信号,使TRB置位以便TIM减到0后从新装入定时器时间常数。
简述TMS320C54X时钟发生器的组成及功能。
C54X 的时钟发生器包括一个内部振荡器和一个锁相环电路。 功能是为C54x提供时钟信号。
C54X支持软件堆栈,简述堆栈的定义及初始化步骤。
a) 声明具有适当长度的未初始化段; b) 将堆栈指针指向栈底; c) 在链接命令文件中将堆栈段放入内部数据存储区。
简述TMS320C54X使能定时器中断步骤。
a) 对IFR中的TINT位置1,清除以前的定时器中断; b) 对IMR中的TINT位置1,开放定时中断; c) 使ST1中的INTM位清0,开放所有的中断。
TMS320C54X芯片的流水线共有多少个操作阶段?每个阶段执行什么任务?完成一条指令都需要哪些操作周期?下述6个周期
预取址P:在T1机器周期内,将PC中的内容加载程序地址总线PAB
取指F:在T2机器周期内,从选中的程序存储器单元中,取出指令字并加载到程序总线PB上 译码D:在T3机器周期内,将PB的内容装进指令寄存器,将指令字译成具体操作
寻址A:在T4机器周期内,寻址操作数,数据1读地址加载数据地址总线DAB,数据2读地址加载数据地址总线CAB,并更新辅助寄存器间接寻址方式和堆栈指针。
读数R:在T5周期内,数据1加载到数据总线DB,数据2加载到数据总线CB,若需要,数据3写地址加载数据地址总线EAB。 执行X:在T6机器周期内,CPU按操作码要求执行指令,并将数据3加载到EB,写入指定存储单元,结束本条指令。
线性缓冲法:对于长度为N的FIR 滤波器,在数据存储器中开辟一个N单元的缓冲区。存放最新的N个样本;滤波时从
最老的样本开始,没读一个样本后,将此样本向下移位;读完最后一个样本后,输入最新样本至缓冲区的顶部。
循环缓冲法:对于N级FIR滤波器,在数据存储中开辟一个称为滑窗的具有N个单元的循环缓冲区,滑窗中存放最新的N
个输入样本值,每次输入新的样本时,新的样本将改为滑窗中最老的数据,其他数据则不需要移动 系数对称FIR滤波器的C54x的实现步骤:1.在数据存储器中开辟两个循环缓冲区:2
并行运算:同时利用D总线和E总线,D总线用来执行加载或算术运算,E总线用来存放先前的结果。在不引起硬件资源冲突的情况下,C54x允许某些指令并行执行,以提高执行速度。
并行加载------存储指定(乘法指令)。。。并行存储--------乘法指令(加/减指令)。