首页资源分类DSP > DSP重点知识点总结(修改版).pdf

DSP重点知识点总结(修改版).pdf

已有 445148个资源

下载专区

文档信息举报收藏

标    签:DSP重点知识点总结(修改版)

分    享:

文档简介

DSP重点知识点总结(修改版).pdf

文档预览

DSP 重点知识点 1. 数字信号处理的实现方法(P1) 1) 在通用计算机上用软件实现(速度较慢,一般用于 DSP 算法模拟) 2) 在通用计算机系统中加上专用的加速处理机实现(专用性强,应用受限,不便于系 统的独立运行) 3) 用通用的单片机实现——用于不太复杂的数字信号处理(简单的 DSP 算法) 4) 用专用的 DSP 芯片实现——具有更加爱适合 DSP 的软硬件资源,可用于复杂的数字 信号处理算法 5) 用专用的 DSP 芯片实现——特殊场合,要求信号处理速度极高(专用性强,应用受 限) 2. DSP 两种含义(P2) 1) 数字信号处理技术(Digital Signal Processing) 2) 数字信号处理器(Digital Signal Processor) 3. DSP 芯片的结构(P2) 1) 哈佛结构 片内程序空间和数据空间是合在一起的,取指令和取操作数都是通过一条总线分时 进行的 2) 改进的哈佛结构 程序空间和数据空间分开,1 组程序存储器总线,3 组数据存储器总线,3 组地址总 线,允许同时取指令和取操作数,还允许在程序空间和数据空间之间相互传送数据 3) 多总线结构 一个机器周期内可以多次访问程序空间和数据空间,如 TMS320C51x 内部有 P、C、 D、E 共 4 条总线,每条总线又包括地址总线和数据总线 4) 流水线结构 4. DSP 芯片的分类(P4) 1) 按照基础特性分类: 静态 DSP 芯片 一致性 DSP 芯片 2) 按照数据格式分类: 定点 DSP 芯片 浮点 DSP 芯片 3) 按照用途分类: 通用型 DSP 芯片 专用型 DSP 芯片 5. TMS320C54x 硬件结构(P8) 1) TMS320 系列同一代芯片具有相同的 CPU 结构,但是片内存储器和片内外围设备的 配置是不同的 2) TMS320C54x 是 16 位定点 DSP,采用改进的哈佛结构,有一组程序总线和三组数据 总线 6. TMS320C54x 总线结构(P10) 片内有 8 条 16 位主总线:4 条程序/数据总线和 4 条地址总线 1 7. 累加器(P11) ACCA 累加器 A 39~32 AG 保护位 31~16 AH 高阶位 15~0 AL 低阶位 39~32 31~16 15~0 ACCA 累加器 B BG BH BL 保护位 高阶位 低阶位 累加器 A 和累加器 B 的差别仅在于累加器 A 的 31~16 位可以用做乘法器的一个输入, 累加器 A 可以用来累加器寻址。 8. 处理器工作方式控制及寄存器 PMST(P15) 16~7 6 5 4 3 2 1 0 IPTR MP/MC OVLY AVIS DROM CLKOFF SMUL SST PMST 各位定义 1) IPTR:中断向量指针,9 位字段中断向量驻留的 128 字程序存储区地址。复位时 9 位全置 1, 中断向量序号为 0→1111 1111 1000 0000 即向量地址 FF80H 中断向量地址的计算: 中断向量地址由 IPTR 和左移 2 位后的中断向量序号 K(0~31,左移后变成 7 位) 所组成。 高9位 低7位 IPTR K<<2 例:INT0 的中断向量序号为 18,PMST 寄存器的 IPTR=011H,计算中断向量地址 ① 将中断向量序号转化成 16 进制 18→12H ② 将 12H 转化成二进制码并左移 2 位,变成 7 位 12 4 8 → 0001 0010 100 1000 ③ 将 9 位 IPTR 中断向量指针和左移后的中断向量序号结合即为所求 IPTR INT 0 1 1 4 8 0 0 0 0 1 00011001000 ↓ 向量 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 位 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 地址 0 8 C 8 2) MP/MC:微处理器或微计算机工作选择位,高电平工作于微处理器状态,低电平工 作于微计算机状态(可寻址片内的程序存储器) 3) OVLY:RAM 重复占位标志 4) SMUL:乘法饱和方式位。SMUL=1,使用多项式加 MAC 或多项式减 MAS 指令进行 累加时,对乘法结果进行饱和处理,且只有当 OVM=1,FRCT=1 时,SMUL 位才起 作用。只有 LP 器件有此状态位,其他器件此位均为保留位。当执行 MAC 或 MAS 时,进行多项式加或减之前,小数模式的 8000H×8000H 处理成为 7FFF FFFFH。如 果不设定小数模式,且 OVM=1,在完成加或减之前,乘法结果不进行饱和处理, 2 只对 MAC 或 MAS 执行的结果进行饱和处理 5) SST:存储饱和位。SST=1,对存储前的累加器进行饱和处理。饱和处理是在移位操 作执行完成之后进行的。  根据指令要求对累加器的 40 位数据进行移位  将 40 位数据饱和处理成 32 位数据,饱和处理与 SXM 位有关。如果 SXM=0, 数据为证,如果数值大于 7FFF FFFFH,则饱和处理的结果为 7FFF FFFFH;如果 SXM=1,若移位后,数值大于 7FFF FFFFH,则饱和处理的结果为 7FFF FFFFH;若 移位后数值小于 8000 0000H,则生成 8000 0000H  按指令要求操作数据  在指令执行期间,累加器的内容不变 9. 状态寄存器 ST0(P16) 15~13 12 11 10 9 8~0 ARP TC C OVA OVB DP ST0 各位定义 1) OVA:累加器 A 的溢出标志 2) OVB:累加器 B 的溢出标志 3) DP:数据存储器页指针。将 DP 的 9 位数作为高位与指令中的低 7 位作为低位结 合,形成 16 位直接寻址方式下的数据存储器地址 10. 状态寄存器 ST1(P16) 15 14 13 12 11 10 9 8 7 6 5 4~0 BRAF CPL XF HM INTM O OVM SXM C16 FRCT CMPT ASM ST1 各位的定义 1) BRAF:块重复操作标志位。 2) CPL:直接寻址编辑方式标志位。CPL=1,表示选用栈指针(SP)的直接寻址方式; CPL=0,表示选用页指针(DP)的直接寻址方式 3) INTM:中断方式控制位。I̅N̅̅̅T̅M̅̅=1,由 SSBX 指令控制,关闭所有可屏蔽中断, I̅N̅̅̅T̅M̅̅=0,由 RSBX 指令控制,开放所有可屏蔽中断 4) OVM:溢出方式控制位。OVM=1,ALU 运算若正数溢出,目的累加器置正的最大值 (00 7FFF FFFFH);若负数溢出,置成负的最大值(FF 8000 0000H)。OVM=0,直接 加在实际运算结果,可由 SSBX 和 RSBX 置位或清零 5) SXM:符号位扩展方式控制字。SXM=1,数据进入 ALU 之前进行符号位扩展; SXM=0,数据进入 ALU 之前符号位禁止扩展。可由 SSB 和 RSBS 置位或清零 6) FRCT:小数方式控制位。FRCT=1,乘法器输出自动左移 1 位,消去多余的符号位 11. TMS320C54x 的片内存储空间分为 3 个可选择的存储空间:64KW 的程序存储空间、 64KW 的数据存储空间和 64KW 的 I/O 存储空间,共 192KW。所有的 TMS320C54x 芯片 都包括随机访问存储器(RAM)和只读存储器(ROM)。RAM 又分两种:一种是只可 一次寻址的 RAM(SARAM),另一种是可以两次寻址的 RAM(DARAM)//P17 12. TMS320C54x 的片内 ROM、DARAM、SARAM 都可以通过软件映射到程序空间。从 0080H 开始将 DARAM 分成每 80H(128)个存储单元为一个数据块//P20 13. 寻址存储器映射 CPU 寄存器无需等待周期,存储器映射外设存储器至少需要两个机器周 期,由片内外设电路决定//P20 14. 数据页 0(0H~7FH)不能映射到程序空间//P20 15. 特殊功能寄存器(P20) 1) 第一类特殊功能寄存器 3 第一类特殊功能寄存器为 26 个,连续分布在数据存储区的 0H~1FH 地址范围内, 主要用于程序的运算处理和寻址方式的选择及设定 2) 第二类特殊功能寄存器 第二类特殊功能寄存器连续分布在 20H~5FH 的存储区内,主要用于控制片内外设, 包括串口通信控制寄存器组、定时器定时控制寄存器组、机器周期设定寄存器组等 16. TMS320C54x 芯片都有B̅̅̅I̅O̅和 XF 两个通用 I/O 引脚//P22 17. 软件可编程等待发生器能把外部总线周期扩展到最多 14 个机器周期,以适应较慢的片 外存储器和 I/O 设备//P22 18. 复位输入引脚R̅̅̅S̅的电平变化——出现两个外部时钟周期以上的低电平,引脚变为高电平 后,程序从指定的存储地址 FF80H 开始运行。复位有三种方式上电复位、手动复位和软 件复位//P23 19. 复位时 ST0=1800H,ST1=2900H,PMST=FF80H//P23 20. 寻址方式(P25) 1) 立即数寻址 LD #0F0H, A 在数值或符号前面加一个“#”号表示是一个立即数否则被认为是一个地址 2) 绝对地址寻址 绝对地址的代码为 16 位,所以包含绝对寻址的指令至少要两个字长 ① 数据存储器地址(dmad)寻址——用程序标号或数据寻址 MVKD DATA1, *AR2 DATA1 标注的地址就是一个 dmad 值,DATA1 必须适合程序中的标号或者 DSP 内 部已经定义的单元 ② 程序存储器地址(pmad)寻址——用一个符号或具体的数寻址 MVPD TABLE1, *AR2 TABLE1 所标注的地址就是一个 pmad 值,TABLE1 标注的程序存储单元中的一个 字 程序存储器地址寻址和数据存储器地址寻址区别仅在于空间不同 ③ 端口寻址 PORTR F2F0, *AR5 F2F0 指的是端口地址,端口地址寻址只涉及两条指令,端口读(PORTR)和端 口写(PORTW) 片外存储空间也只有 WRITA 和 READA 两条指令 ④ *(1K)寻址 LD *(BUFFER), A 用一个符号或一个常数来确定数据存储器中的一个地址,访问数居空间的任意 单元而不改变数据页(DP)的值,也不用对 AR 进行初始化。不能与 RPT,RPTZ 一起使用 采用绝对寻址方式时,指令长度将在原来的基础上增加一个字 3) 累加器寻址 只有两条指令 READA 和 WRITA 可以采用累加器寻址 4) 直接寻址 ADD SAMPLE, A ;把存储器单元 SAMPLE 中的内容加到累加器 A 中去 或 ADD @x, A ;将符号@加在变量 x 的前面 CPL=0 dmad 值与 9 位的 DP 值结合,形成 16 位的数据存储器地址 4 CPL=1 dmad 值加上(正偏移)SP 的值,形成 16 位的数据存储器地址 dmad 值指的是指令寄存器 IR 的低 7 位 5) 间接寻址 间接寻址方式按照辅助寄存器中的地址访问存储器(8 个 16 位辅助寄存器 AR0~ AR7,两个辅助寄存器算数单元 ARAU0 和 ARAU1) ① 单操作数寻址 ② 循环寻址 ③ 位倒序寻址 位倒序寻址提高了执行速度和在 FFT 算法的程序中使用储存器的效率。在这种 寻址方式中,AR0 存放的整数 N 是 FFT 点数的一半,当使用位倒序寻址方式把 AR0 加到辅助寄存器中时,地址以位倒序方式产生,即进位是从左向右的,而 不是从右向左 ④ 双数据存储器操作数寻址 用 Xmem 和 Ymem 代表这两个数据存储器操作数,Xmem 表示读操作数,Ymem 在读两个操作数时表示读操作数,而在一个读同时并行一个写的指令表示写操 作数 6) 堆栈寻址 共有 4 条指令使用堆栈寻址方式访问堆栈: PSHD——把一个数据存储器的值压入堆栈 PSHM——把一个存储器映射寄存器的值压入堆栈 POPD——把一个数据存储器的值弹出堆栈 POPM——把一个储存器映射寄存器的值弹出堆栈 21. 指令系统(P34) 22. 流水线操作,是指在执行多条指令时,将每条指令的预取指、取指、译码、寻址、读取 操作数、执行等阶段,相差一个阶段重叠执行,以减少指令执行时间,从而增加处理器 的处理能力//P50 23. TMS320C54x 采用 6 级深度的指令流水线作业,它们之间彼此独立,即在任何一个机器 周期内,可以有 1~6 条不同的指令同时工作,但每条指令工作在流水线的不同级上//P51 6 级流水线的功能 第1级 第2级 第3级 第4级 第5级 第6级 P(预取指) F(取指) D(译码) A(寻址) R(读数) X(执行) 24. 延迟分支转移的流水线和条件执行指令的流水线(P51~P52) 25. 数字信号处理系统的设计过程(P61) 5 第 1 部分 系统要求的描述 第 2 部分 信号分析 第 3 部分 信号处理算法设计 第 4 部分 否 第 5 部分 资源分析 是否可接受 是 硬件结构分析与设计 否 第 6 部分 是否可接受 是 软件设计与调试 第 7 部分 系统集成与调试 26. 常用的汇编命令(P68) 汇编命令 作用 .title 紧随其后的是汇编语言程序正文 .end 结束汇编命令 .text 紧随其后的是汇编语言程序正文 .data .int 紧随其后的是已初始化数据 .int 用来设置一个或多个 16 位无符号 整型量常数 .word .word 用来设置一个或多个 16 位符 号整型量常数 .bss .bss 为未初始化变量保留存储空间 .sect 建立包含代码和数据的自定义段 .usect .def .mmregs 为未初始化变量保留存储空间的自 定义段 在此模块中定义,可为别的模块引用 将寄存器名定义为全局符号,这样就 可以直接引用寄存器 举例 .title “example.asm” 放在汇编语言程序的最后 经汇编后,紧随.text 后的是可执行程 序代码 有两种数据形式:.int 和.word table: .word 1,2,3,4 .word 6,8,4,2 表示在程序存储器标号为 table 开始的 8 个单元中存放初始化数据 1,2,3, 4,6,8,4,2 .bss x,4 表示在数据存储器中空出 4 个存储单元存放变量 x1,x2,x3 和 x4 .sect “vectors”定义向量表,紧随 其后的是复位向量和中断向量,名为 vectors STACK .usect “STACK”,10h 在 数 据 存储器中留出 16 个单元作为堆栈区, 名为 STACK .def .mmregs 6 27. COFF 文件中的段(P79) 1) 3 种形式的段: .text 段 (此段通常包含可执行代码) .data 段 (此段通常包含初始化数据) .bss 段 (此段通常为未初始化变量保留存储空间) 2) 段的基本类型: 初始化段 .text 段、.data 段、.sect 汇编命令建立的自定义段均是已初始化段 未初始化段 .bss 段、.usect 汇编命令建立的自定义段均是未初始化段 28. 如果连接命令文件中没有 MEMORY 和 SECTIONS 命令(默认情况),则连接器就从地址 0080H 开始,一个段接着一个段地进行配置//P84 29. Simulator 纯粹以软件来模拟源平台的功能和运行结果(软件仿真);Emulator 以软件和 硬件来模拟源平台的内部设计、行为和运行结果(硬件支持)//P119 30. 条件算符(P140) 条件分支转移指令或条件调用、条件返回指令都是条件来限制分支的转移、调用和返回 操作。条件算符分成两组,每组组内还有分类 第 1 组: EQ NEQ OV LEQ GEQ NOV LT GT 第 2 组: TC C BIO NTC NC NBIO 选用条件算符时应当注意以下 3 点:  第 1 组:组内两类条件可以进行与/或运算,但不能在组内同一类中选择两个条件 算符与/或。当选择两个条件时,累加器必须是同一个。例如,可以同时选择 AGT 和 AOV,但不能同时选择 AGT 和 BOV  第 2 组:可从组内 3 类算符中各选一个条件算符与/或,但不能在组内同一类中选 两个条件算符与/或。例如,可以同时测试 TC、C、和 BIO,但不能同时测试 NTC 和 TC  组与组之间的条件只能进行或运算 31. 乘加运算(P145) 1) 简单乘加 计算 = ∗ + 其中 = 3, = 15, = 20 STACK table: start: .title “zh1.asm” .mmregs .usect “STACK”, 10H .bss m, 1 .bss x, 1 .bss b, 1 .bss y, 1 .def start .data .word 3, 15, 20 .text STM #0, SWWSR end: SU: 7 STM STM RPT MVPD CALL B LD MPY ADD STH RET .end #STACK+10H, SP #m, AR1 #2 table, *AR1+ SU end @m, T @x, A @b, 16, A A, @y 2) 乘加小数 4 计算 = ∑ =1 1 = 0.1, 2 = 0.2, 3 = −0.3, 4 = 0.4 1 = 0.8, 2 = 0.6, 3 = −0.4, 4 = −0.2 STACK table: .title“zh2.asm” .mmregs .usect “STACK”, 10H .bss a, 4 .bss x, 4 .bss y, 1 .def start .data .word 1*32768/10 .word 2*32768/10 .word -3*32768/10 .word 4*32768/10 .word 8*32768/10 .word 6*32768/10 .word -4*32768/10 start: end: .word .text SSBX STM STM STM RPT MVPD STM STM RPTZ MAC STH B .end -2*32768/10 FRCT #0, SWWSR #STACK+10H, SP #a, AR1 #7 table, *AR1+ #x, AR2 #a, AR3 A, #3 *AR2+, *AR3+, A A, @y end 3) 乘加整数 题目同上,其中 .title “zh3.asm” 1 = 1, 2 = 2 3 = 3, 4 = 4 1 = 5, 2 = 6, 3 = 7, 4 = 8 STM #STACK+10H, SP .mmregs STM #a, AR1 STACK .usect “STACK”, 10H RPT #7 .bss a, 4 MVPD table, *AR1+ .bss x, 4 STM #x, AR2 .bss y, 1 STM #a, AR3 .def start RPTZ A, #3 .data MAC *AR2+, *AR3+, A table: .word 1, 2, 3, 4 STL A, @y .word 5, 6, 7, 8 STH A, @y+1 .text end: B end start: STM #0, SWWSR .end 32. 重复操作(P148) 对数组 x[5]中的每个元素初始化为 2,再给每个元素加 1 8 STACK start: .title “zh4.asm” .mmregs .usect “STACK”, 10H .bss x, 5 .def start .text STM #0, SWWSR STM #STACK+10H, SP STM #x, AR1 LD #2H, A RPT #4 next: end: STL LD STM STM RPTB ADD STH LD B .end A, *AR1+ #1, 16, B #4, BRC #x, AR4 next-1 *AR4, 16, B, A A, *AR4+ #0, B end 33. 长字运算(P156) 长字(32 位)指令如下: DLD Lmem, dst ; dst=Lmem DST src, Lmem ; Lmem-src DADD Lmem, src, [, dst] ; dst=src+Lmem DSUB Lmem, src, [, dst] ; dst=src+Lmem DRSUB Lmem, src, [, dst] ; dst=Lmem-src 1) 偶地址排列法 2) 奇地址排列法 .title “zh5.asm” .title “zh6.asm” .mmregs .mmregs STACK .usect “STACK”, 10H STACK .usect “STACK”, 10H .bss a, 2 .bss a, 2 .bss y, 2. .bss y, 2. .def start .def start .data .data table: .word 06CACH, 0BD90H table: .word 0BD90H, 06CACH .text .text start: STM #0, SWWSR start: STM #0, SWWSR STM #STACK+10H, SP STM #STACK+10H, SP STM #a, AR1 STM #a, AR1 RPT #1 RPT #1 MVPD table, *AR1+ MVPD table, *AR1- STM #a, AR3 STM #a, AR3 DLD *AR3+, A DLD *AR3+, A end: B end end: B end .end .end 执行后结果:A=00 6CAC BD90H 执行后结果: A=00 6CAC 6CACH (0100H)=6CACH (0100H)=6CACH (0101H)=BD90H (0101H)=BD90H 9 总结:偶地址排列,高字存放于偶地址,地址加一存放低字。 奇地址排列,高字存放于奇地址,地址减一存放低字。 34. FIR 滤波器的实现方法(P192) = 5,() = ℎ0() + ℎ1( − 1) + ℎ2( − 2) + ℎ3( − 3) + ℎ4( − 4) 双操作数、带移位 FIR 滤波器实现程序如下: 数据存储器 暂存() 程序存储器 AR1→ () ( − 1) ( − 2) ( − 3) ( − 4) PAR→COEF ℎ0 ℎ1 ℎ2 ℎ3 ℎ4 x PA0 PA1 COEF: .title “zh7.asm” .mmregs .def start .usect “x”, 5 .set 0 .set 1 .data .word 1*32768/10 .word -4*32768/10 .word 3*32768/10 .word -4*32768/10 .word 1*32768/10 .text start: FIR3: SSBX STM STM LD PORTR RPTZ MACD STH PORTW BD PORTR .end FRCT #x+5, AR1 #4, AR0 #x+1, DP PA1, @x+1 A, #4 #AR1-, table, A A, *AR1 *AR1+, PA0 FIR3 PA1, *AR1+0 10 35. IIR 滤波器的 DSP 实现方法(P202) 数据存储器 0 (), () 1 2 数据存储器 COEF 2 1 0 2 1 .title “zh8.asm” start: LD #x0, DP .mmregs SSBX FRCT .def start STM #x1, AR1 x0 .usect “x”, 1 PRT #1 x1 .usect “x”, 1 MVPD #table, *AR1+ x2 .usect “x”, 1 STM #B2, AR1 B2 .usect “COEF”, 1 RPT #4 B1 .usect “COEF”, 1 MVPD #table+2, *AR1+ B0 .usect “COEF”, 1 IIR1: PORTR PA1, @x0 A2 .usect “COEF”, 1 LD @x0, 16, A A1 .usect “COEF”, 1 LD @x1, T PA0 .set 0 MAC @A1, A PA1 .set 1 LD @x2, T .data MAC @A2, A table: .word 0 LTD @x1 .word 0 MAC @B1, A .word 1*32768/10 LTD @x0 .word 2*32768/10 MAC @B0, A .word 3*32768/10 STH A, @x0 .word 5*32768/10 BD IIR1 .word -4*32768/10 PORTW @x0, PA0 .text .end 36. 定标方法(P209) 1) 系数大于等于 1 时,系数分解成两个小于 1 的数 ()0 = () (20) + () (20) 2) 对输入数据定标 考虑到滤波运算过程中可能出现大于等于 1 的输出值,可在输入数据时将其缩小 PORTR 0001H, @Xin LD @Xin, 16-3, A 将输入数据除以 8,将使输出值小于 1 37. 定时器(P245) 1) 定时器由主计数器 TIM,定时周期寄存器 PRD,定时控制寄存器 TCR 及相应的逻辑 电路组成 定时周期=CLKOUT×(PRD+1)×(TDDR+1) 2) PRD 是 16 位的,数据范围是 0~65535,TDDR 是 TCR 的低四位,数据范围是 0~15。 11 TCR 寄存器的位描述: 15~10 9~6 5 4 3~0 000000 PSC TRB TSS TDDR 第 15~10 位:高 6 位置 0 第 9~6 位:与 TDDR 相同 第 5 位:TRB=1 定时器 PRD 和 TDDR 自动重装 第 4 位:TSS=1 关定时器;TSS=0,启动定时器 第 3~0 位:TDDR 由定时时长决定,范围是 1~15 3) 定时器初始化和开放定时器中断的步骤 STM #0000H , SWWSR ;不插等待周期 STM #0010H , TCR ;TSS=1 关定时器 STM #03E7H , PRD ;加载周期寄存器(PRD=999) STM #01E7H , TCR ;定时器分频系数 TDDR 初始化(TDDR=7) ;TRB=1,当 TIM 减到 0 后, 重新加载 PRD ;TSS=1,启动定时器 STM #0008H , IFR ;清除尚未处理完的中断 STM #0008H , IMR ;开放定时器中断 RSBX INTM ;开放中断 38. 中断响应过程(P239) 12 接收终端请求 否 中断可屏蔽? 是 否 INTM=0? 是 否 IMP 屏蔽位为 1? 是 中断被响应 IACK 中断信号产生 中断可屏蔽? 否 压栈 PC 指针 是 INTM 置为 1 运行中断服务程序 返回指令将 PC 指针还原 继续主程序 有问题请@潘雪冰 13

Top_arrow
回到顶部
EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高进,我们会尽快处理。