山东大学2016-2017学年第1学期DSP原理与应用课程试卷(A)答案与评分细则 一、共20分)填空答案 (2)根据题意有: 1.(2分)000000B234h,FFFFFFB234h 2.2分)下划线)_,var2 100MHz=[PLL MULTA(PLL DIV+1)】×I2MHz(“P表示除号)解得 3.3分)统一,24,23,A0(最低位),16M,分开4.2分)0118h PLL MULTAPLL DIV+1)=25/3.PLL DIV=2,PLLMULT-25 5.(1)FRCT 6.(4 MEMORY,SECTIONS,MEMORY,SECTIONS 即有:D6D5 PLL DIV=10B.D11D7 PLL MULT=1100IB (6分) 7.仔分)16位,8位,48位8.1分)RESET(或RESETIV0,或复位中断 好 (3)时钟模式寄存器(CLKMD)的其他未均取为0。(时钟模式寄存器(CLKMD)共16位) 9.(1分)1/215(或1/32768,或0.00003051) 10.(1分)0x040000-0x05FFFF 综合(1)、(2)、(3),得CLKMD=0000110011010000B或CLKMD=0CD0H 二、(共40分)分析简答愿 用汇编指令实现: 1.(5分)答:AC1=34000000H,AR3=0201H mov #o000110011010000B,port(年1c00h) 或 mov 0CD0H,port(#1c0Oh,IcO0h是时钟模式寄存器(CLKMD)的地址。(3分) 2.(5分)答:输出参数通过T0传送,输入参数通过AC0,ACI,AC2,AR0,AR1, AR2,AR3,AR4,TD,T1传送。 四、(15分)答: 3.5分)答:执行指令后,AC0、(◆ARI)、AR2和AC1的值分别是: 答:(I)(7分)定时器1的周期寄存器PRD、TDDR的计算: AC0=0095C09200,(*AR1)=EF00H,AR2=0202H,AC1=0000230000, 的 4.(5分)答:PC=00407C,TC1- 根据公式:TNT频率= 输入时钟频率 (TDDR+1)(PRD+1) 5.(5分)答:执行该指令后,AR3=0303H,T0=2200H,T1=1100H, CARRY=0, 数 据存储单元(0302H)=EF00H。 因输入时钟频率为10OMHz,定时器中断TTNT频率为1kHz,由于TDDR为4位, 这里我们取TDDR为9,即TDDR=1001B,则PRD为9999. 6.(9分,每小题各3分) 因PRD为16位,即定时器1的周期寄存器PRD1=9999=0010011100001111B=270FH。 答:(1mov*AR0+,AC0,源操作数间接寻址方式 预定标周期值TDDR是16位预定标寄存器PRSCI的低4位(D0-D3),预定标计数器PSC 执行后:AC0=0x0001,XAR0=0x32001,其他不变。3分) 是PRSC1的其中4位D6~D9),初始化时可取0,因此预定标寄存器可取初始化值 (2)Mov@2003h,T2,源操作数直接寻址方式 PRSC1=0009H: 定时器1的主计数寄存器TIM1初值可取PRDI,在初始化时当定时器控制寄存器TCRI 执行后:T2=0x0033,其它不变。 3分) 的位TLB=时,将PRDI、TDDR的值分别复制到TIMI、PSC中。 (3)mov*absl6(2002h),T3,源操作数绝对寻址方式 (定时器I的3个寄存器PRDI主要是TDDR和PRD的计算)值的计算得7分) 执行后:T30x0022,其它不变。 3分) (2)(8分)定时器控制寄存器TCR各位的设置与程序: 7.(6分)答:(以下每空1分,答对程序完成功能得2分) 因TN/TOUT引脚配置为外部时钟源输入,FUNC位(DII~12=11b,(得分点2分) INTEXT位(D14)=,定时器准备使用外部时钟源:自动重装载控制位ARB(D5=L,使每次 sect ".text" (建立text段,下面代码汇编到,text段) :global start(声明sat标号为全局标号,在其他文件中可引用 计数器(PSC、TIMI)减为0时,计时器自动装入计数周期值TDDR、PRDI),并重新开始 BCLR SXMD;(将STI状态寄存器的符合扩展位SXMD清0 计数:定时器停止计数(定时器停止状态位TSS=I)时,设置定时器控制寄存器TCR的各 位,并置TCR的定时器装载位TLB=L,从而将TDDR、PRDI的值分别复制到PSC、 SUBC *ARI,ACO,ACO 都 (条件减法指令,将差AC0(ARI)左移1位,若AC0(AR1P=O,AC0再加1)(4分) TIMI中:TCR的其他各位的取值不作特别要求(因此TCR的值非唯一,只要要求的 该程序完成的功能:用条件减法指令完成16位无符号数的除法。 2分) 位正确即可得满分),启动定时器(TSS0时,清零TLB0。下面是设置定时器程序: :以下定义定时器寄存器地址 TM1set0x2400:TIMER1计数寄存器 三、(10分)答: PRDI .set0x2401;TIMER1周期寄存器 (I)使DPLL工作在锁定模式:D4 PLLENABL)=IB(这里B表示二进制) (1分) TCRI St0x2402;TIMER1控制寄存器 第1共2页
1 2 2016-2017 1 (A)答案与评分细则 一、(共 20 分) 填空答案 1. (2 分) 000000B234h , FFFFFFB234h 2. (2 分) (下划线) _ , _var2 3. (3 分) 统一,24 ,23 ,A0 (最低位) ,16M ,分开 4. (2 分) 0118h 5. (1 分) FRCT 6. (4 分) MEMORY, SECTIONS, MEMORY, SECTIONS 7. (3 分) 16 位 , 8 位 , 48 位 8. (1 分) RESET(或 RESETIV0, 或复位中断) 9. (1 分) 1/215(或 1/32768,或 0.00003051) 10. (1 分) 0x040000~0x05FFFF 二、(共 40 分)分析简答题 1. (5 分) 答:AC1=34000000H,AR3=0201H 2. (5 分) 答:输出参数通过 T0 传送,输入参数通过 AC0,AC1,AC2,AR0,AR1, AR2,AR3,AR4,T0,T1 传送。 3. (5 分) 答:执行指令后,AC0、(*AR1)、AR2 和 AC1 的值分别是: AC0= 00 95C0 9200,(*AR1)=EF00H,AR2=0202H,AC1=00 0023 0000, 4. (5 分) 答:PC=00407C,TC1=1 5. (5 分) 答:执行该指令后,AR3=0303H, T0=2200H,T1=1100H, CARRY=0,数 据存储单元(0302H)=EF00H。 6. (9 分,每小题各 3 分) 答:(1)mov*AR0+,AC0; 源操作数间接寻址方式 执行后:AC0=0x0001, XAR0=0x32001,其他不变。 (3 分) (2)Mov @2003h,T2; 源操作数直接寻址方式 执行后:T2=0x0033,其它不变。 (3 分) (3)mov *abs16(#2002h),T3; 源操作数绝对寻址方式 执行后:T3=0x0022,其它不变。 (3 分) 7. (6 分) 答:(以下每空 1 分,答对程序完成功能得 2 分) .sect ".text" ;( 建立 .text 段,下面代码汇编到 .text 段 ) .global start ;( 声明 start 标号为全局标号,在其他文件中可引用 ) BCLR SXMD ; ( 将 ST1 状态寄存器的符合扩展位 SXMD 清 0 ) SUBC *AR1,AC0, AC0 ;(条件减法指令,将差 AC0-(*AR1)左移 1 位,若 AC0-(*AR1)>=0,AC0 再加 1 ) (4 分) 该程序完成的功能:用条件减法指令完成 16 位无符号数的除法。 (2 分) 三、(10 分)答: (1)使 DPLL 工作在锁定模式:D4(PLLENABL)=1B(这里 B 表示二进制) (1 分) (2)根据题意有: 100MHz=[PLL MULT/(PLL DIV+1)]×12MHz (“/”表示除号) 解得 PLL MULT/(PLL DIV+1)=25/3,取 PLL DIV=2,PLLMULT=25, 即有: D6D5(PLL DIV)=10B,D11~D7(PLL MULT)=11001B (6 分) (3)时钟模式寄存器(CLKMD)的其他未均取为 0。(时钟模式寄存器(CLKMD)共 16 位) 综合(1)、(2)、(3),得 CLKMD=0000 1100 1101 0000 B 或 CLKMD=0CD0H 用汇编指令实现: mov #0000110011010000B, port(#1c00h) 或 mov 0CD0H, port(#1c00h); 1c00h 是时钟模式寄存器(CLKMD)的地址。(3 分) 四、(15 分)答: 答:(1) (7 分) 定时器 1 的周期寄存器 PRD、TDDR 的计算: 根据公式: ( )( ) TINT TDDR 1 PRD 1 = + + 输入时钟频率 频率 因输入时钟频率为 100MHz,定时器中断 TINT 频率为 1kHz,由于 TDDR 为 4 位, 这里我们取 TDDR 为 9,即 TDDR=1001B,则 PRD 为 9999。 因 PRD 为 16 位,即定时器 1 的周期寄存器 PRD1=9999=0010011100001111B =270FH。 预定标周期值 TDDR 是 16 位预定标寄存器 PRSC1 的低4 位(D0~D3),预定标计数器 PSC 是 PRSC1 的其中 4 位(D6~D9),初始化时可取 0,因此预定标寄存器可取初始化值 PRSC1=0009H; 定时器 1 的主计数寄存器 TIM1 初值可取 PRD1,在初始化时当定时器控制寄存器 TCR1 的位 TLB=1 时,将 PRD1、TDDR 的值分别复制到 TIM1、PSC 中。 (定时器 1 的 3 个寄存器(PRD1 主要是 TDDR 和 PRD 的计算) 值的计算 得 7 分) (2) (8 分) 定时器控制寄存器 TCR 各位的设置与程序: 因 TIN/TOUT 引脚配置为外部时钟源输入, FUNC 位(D11~12)=11b; (得分点 2 分) INTEXT 位(D14)=1,定时器准备使用外部时钟源;自动重装载控制位 ARB(D5)=1,使每次 计数器(PSC、TIM1)减为 0 时,计时器自动装入计数周期值(TDDR、PRD1), 并重新开始 计数;定时器停止计数(定时器停止状态位 TSS=1)时,设置定时器控制寄存器 TCR 的各 位,并置 TCR 的定时器装载位 TLB=1, 从而将 TDDR、PRD1 的值分别复制到 PSC、 TIM1 中;TCR 的其他各位的取值不作特别要求(因此 TCR 的值非唯一,只要要求的 位正确即可得满分),启动定时器(TSS=0)时,清零 TLB=0。下面是设置定时器程序: ;以下定义定时器寄存器地址 TIM1 .set 0x2400 ;TIMER1 计数寄存器 PRD1 .set 0x2401 ;TIMER1 周期寄存器 TCR1 .set 0x2402 ;TIMER1 控制寄存器
山东大学2016-2017学年第1学期DSP原理与应用课程试卷(A)答案与评分细则 PRSCI ,set0x2403,TIMER1预定标寄存器 :以下是定时器配置 TIMER_PERIOD .st270FH:定时器1周期寄存器值9999 TIMER PRESCALE .set 9 预定标周期寄存器TDDR为9 .text 数 INIT: mov #TIMER_PERIOD,port(#PRD1) 配置定时器周期寄存器 mov TMER_PRESCALE,pOt(PRSCI),配置定时器预定标寄存器 mov #1101110100111000b,pot(#TCR1) :TSS=1,TLB1,ARB=1,FUNC=l1b and #11111011111011I1b,pot(#TCR1):启动定时器TSS=0,TLB=0 (以上得分点正确得8分) 五、(15分倍:电源供电电路图如下(画对连线图得9分,给出正确的电阻参数数值和 的 计算公式得6分): 茶 R2 RI C 250R TP8767D30] RST2 (以上面图正确得9分) 电阻参数RI、R2的计算: 驾 根据公式:, 由电压参数:V0=l.26V,V=1.1834,取R2=169k2,代入公式1.26=1.18341+R1/169) 是 经计算R1=0.065R2=1Ik2(以上计算,R1、R2取值不同,只要计算正确即得6分) 第2共2页
2 2 2016-2017 1 (A)答案与评分细则 PRSC1 .set 0x2403 ;TIMER1 预定标寄存器 ;以下是定时器配置 TIMER_PERIOD .set 270FH ;定时器 1 周期寄存器值 9999 TIMER_PRESCALE .set 9 ;预定标周期寄存器 TDDR 为 9 .text INIT: mov #TIMER_PERIOD, port(#PRD1) ;配置定时器周期寄存器 mov #TIMER_PRESCALE, port(#PRSC1) ;配置定时器预定标寄存器 mov #1101 1101 0011 1000b, port(#TCR1) ;TSS=1, TLB=1, ARB=1, FUNC=11b and #1111 1011 1110 1111b ,port(#TCR1) ;启动定时器 TSS=0, TLB=0 (以上得分点正确 得 8 分) 五、(15 分)答:电源供电电路图如下(画对连线图得 9 分,给出正确的电阻参数数值和 计算公式得 6 分): (以上画图正确得 9 分) 电阻参数 R1、R2 的计算: 根据公式: 1 0 ref 2 1 R V V R = + 由电压参数:V0=1.26V, V 1.1834 ref = , 取 R2=169kΩ,代入公式 1.26=1.1834(1+R1/169) 经计算 R1≈0.065R2≈11kΩ (以上计算,R1、R2 取值不同,只要计算正确即得 6 分) R2 R1