DSP芯片解密是IC解密技术研究领域的一大疑难项目之一,该系列芯片的加密性能较好,解密难度大,解密费用相对较高。对于很多解密工程师来说,DSP芯片解密的技术上还存在很大困惑。
DSPIC30系列DSP芯片是MICROCHIP系列典型DSP芯片型号,该系列DSP芯片相比TI公司的TMS320系列DSP芯片解密来说,解密难度相对较低。在这里,为方便各类电子工程师对DSPIC30系列DSP芯片解密进行技术理解,我们提供对DSPIC30系列芯片数据地址空间技术详解,供大家参考借鉴。
DSPIC30系列芯片内核具有两个数据空间。可将这两个数据空间视为两个独立的空间(对于某些DSP 指令)或是一个统一的线性寻址空间(对于MCU 指令)。使用两个地址发生单元(AGU)和相互独立的数据存取路径对这两个数据空间进行访问。
数据空间存储器映射
数据存储空间被分为两块,分别为X 数据空间和Y 数据空间。该架构的要素就在于 Y 空间是X 空间的子集,它完全包含在X 空间内。X 空间和Y 空间具有连续的地址,以提供明显的线性寻址空间。当执行除MAC 类指令外的任何指令时,X 空间由64 KB的数据地址空间组成,其中包含整个Y 地址空间。当执行某条MAC 类指令时,X 空间由64 KB 的数据地址空间组成,但不包括Y 地址空间(只用于数据读操作)。换言之,除MAC 类指令外的所有其他指令均将整个数据存储器视为一个组合的地址空间。MAC 类指令将Y 地址空间从数据空间中抽取出来,它使用W10 和W11 的内容构成的EA 来寻址这一个空间。而通过使用 W8 和W9来寻址其余的X数据空间。只有使用MAC类指令才能同时访问X 和Y 这两个地址空间。
数据空间
X 数据空间可被所有指令使用且支持所有寻址模式。其读写数据总线是相互独立的。 X 读数据总线是所有将数据空间视为一个组合的X和Y地址空间的指令的数据返回路径。它也是双操作数读指令(MAC 类)的X 地址空间数据路径。 X 写数据总线是所有指令对数据空间执行写操作的惟一路径。
X 数据空间还支持所有指令的模寻址,但要受到寻址模式的限制。只有写 X 数据空间的操作才支持位反转寻址模式。
MAC 类指令(CLR、ED、EDAC、MAC、MOVSAC、MPY、MPY.N和MSC)将Y数据空间与X数据空间配合使用以提供两条可同时读取数据的路径。不能通过 Y 总线执行任何写操作。此类指令专门指定W10 和W11 作为寻址数据空间的W寄存器指针,而指定W8 和W9 作为寻址X 数据空间的W寄存器指针。注意,在累加器回写操作期间,数据地址空间被认为是一个组合的X 和Y 数据空间,因此写操作通过X 总线发生。从而可以对整个地址空间中的任何地址单元执行写操作。
Y 数据空间只能用于与MAC 类指令相关的数据预取操作。它也支持自动循环缓冲区的模寻址。当然,所有其他指令将Y 数据地址空间视作组合的线性空间的一部分,通过X 数据总线对其进行访问。
X 数据空间和Y 数据空间之间的边界定义它不能由用户编程。如果 EA 指向已为其分配的数据空间之外的数据或是指向物理存储器之外的单元,则将返回全零的字或字节。例如,虽然所有使用任何寻址模式的非MAC 指令都能访问Y 地址空间,但使用W8 或W9(X 空间指针)作为地址指针的MAC 指令从Y 数据空间取数据将返回0x0000。
数据空间宽度
内核的数据宽度为16 位。所有内部寄存器都以 16 位宽的字的形式构成。数据存储空间以可按字节寻址的16位宽的块构成。
数据对齐
为了便于与PIC MCU 器件向后兼容并提高数据存储空间的使用效率, dsPIC30F 指令集支持字和字节操作。数据存储器和寄存器中的数据以字对齐,但数据空间的所有EA 都被解析成字节。数据字节读操作将读取包含此字节的整个字,再使用有效地址的最低位(LSb)决定要选择哪个字节。选定的字节被放置到 X 数据总线的LSB 中(由于MAC 类指令只能取字,因而不可能通过Y 数据总线进行字节访问)。即,数据存储器和寄存器以两个并列的字节宽度的实体构成,它们共享(字)地址译码,但写操作线相互独立。数据字节写操作只写入阵列或寄存器中与字节地址匹配的那一半。这类字节访问的结果是,所有有效地址的计算(包括由DSP 操作生成的只限字大小数据的地址)在内部进行调整以逐次访问字对齐的存储器。例如,被内核所识别的后修改寄存器间接寻址模式[Ws++],字节操作结果为Ws + 1,而字操作的结果则是Ws + 2。
所有字访问必须与一个偶地址对齐,不支持违背上述原则的字数据取操作,所以在字节和字的混合操作或转换8 位MCU 代码时必须十分小心。若试图执行不与偶地址对齐的读或写操作,就会产生地址错误陷阱。如果在读操作时发生该错误,则当前指令将立即停止;如果在写操作时发生该错误,指令会继续执行,但不会真正写入。无论哪种情况,都会执行陷阱程序,以允许系统和/ 或用户在执行地址故障恢复程序前检查机器状态。
装载到任何W寄存器的所有字节都只装载到LSB。 MSB不被修改。
符号扩展指令(SE)用于允许用户将8 位有符号数据转换为16 位有符号值。而对于16 位无符号数据,用户通过在相应地址上执行零扩展(ZE)指令可以清零任一W 寄存器的高字节。
虽然大多数指令都可以对字或字节数据执行操作,但应该注意有些指令(包含DSP 指令)只能针对字进行操作。
温馨提示:橙盒科技长期专业提供DSPIC30系列DSP芯片解密以及高难度TI公司TMS320系列DSP芯片解密服务,有相关DSP芯片解密需求者欢迎与橙盒科技联系咨询更多解密合作详情。
芯片解密咨询电话:0755- 82221641,82173585
咨询QQ:1357273089,994589503
Email:chkeji@126.com <mailto:chkeji@126.com>
DSP芯片解密之DSPIC30系列芯片数据地址空间技术
[来源:芯片解密工程师之家]
[作者:admin]
[日期:10-06-12]
[热度:]
最新文章
DS2015芯片解密——橙盒独家解密技术服..09.08 dallas芯片解密/DS18B20芯片破解实例08.12 DSP芯片解密之DSPIC30系列芯片数据地址..06.12 dsPIC30F6010A/6015芯片输入捕捉模块详..06.12 DSP芯片解密技术之DSPIC30F系列芯片内部..06.12 dsPIC33FJ64MC706解密——DSP芯片解密06.12
IC解密服务热线
- 24小时技术专线:0755-82221641
- 24小时投诉专线:0755-25410091
- PIC单片机解密专线:0755-82175584
- ST单片机解密专线:0755-82173891
- FPGA/CPLD芯片解密:0755-82173585
- 51单片机解密专线:0755-82175584
- AVR单片机解密专线:0755-82173891
- MSP430芯片解密:0755-8217358568
- 日系单片机解密专线:0755-82175584
- AT88单片机解密:0755-82175584
- MASK掩膜解密专线:0755-82175584
热门解密芯片型号
























