This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

FRAM IP Encapsulation Segment的作用

如题FRAM中的MPU章节中,可以通过寄存器将Memory分段,同时 IP Encapsulation Segment似乎也可以实现分段,请问这两种分段的区别是什么???

  • 楼主的那个图是从哪里看到的?第一次看到这个图,手册里貌似没有

  • 你是新手吧!!!   FRAM msp430的user guid中是有的,在MPU章节!

  • 你讀的是MSP430FR58xx, 59XX, 68xx和69xx的用戶指南. 在右手側示出的分段是從57xx遺留下來的. 在左手側示出的IP分段是一個較新的內存保護功能.

  • 这个是FR58XX, FR59XX,FR68XX,FR69XX铁电系列才有的功能 http://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=SLAU367&fileType=pdf&keyMatch=MSP430FR58xx&tisearch=Search-EN-Everything

    这是两个概念,B1, B2 类似将FRAM划分为执行,可读,可读可写等不同功能的三个块,最多三块,类似理解为划分Flash和RAM大小

    IP 封装箱是对知识产权的保护,290页这段仔细读一下,这段空间只可以这段地址代码访问,外部是访问不到的,不管哪怕是DMA或者JTAG方式,不像Flash存储技术,而铁电是用原子的位置表示0和1,哪怕剖片在电子显微镜下可以无法观察到,换句话说,不管物理方式还是技术方式,都无法破解这段区域,非常有利于对核心知识产权的保护,IP封装箱类似于一个黑盒子,你可以用来存储核心算法或者密钥等

    Only program code executed from the IPE segment can access data stored in this segment. The access

    rights are evaluated with each code access. Each code access outside of the IP-protected area

    deactivates the data access into the IPE segment. JTAG or DMA cannot access the IPE segment. The

    interrupt vector table is always open for read and write accesses (for details see Section 7.4.1).

  • 这个代码保护功能如何使用?是设置IPE写保护、还是读保护可以实现代码的保护功能。

  • 设置IBL和IBH,两者之间自动就是IP Segment受保护的区域,

    不同于B1,B2设置三个区域,每个区域的读写属性还可以设置

  • 在IAR中如何使用IPE功能进行IPE代码保护?IPE保护后,数据怎么从这段读出来 ,需要密码吗?TI有说明文档吗?

  • 在IAR中IPE如何设置保护?

    1、IPE是在程序每次上电后都要设置,还是只要在程序下载到FRAM后设置一次即可

    2、如果每次上电后都要开启IPE才能实现代码的保护,那是不是意味着,只要不上电,那IPE区域受保护的代码就可以通过剖片来获取

  • 在FRAM的430中,IPE是用来保护核心知识产权(代码)的。在User Guid中我们可以看到:

    上电之后FRAM会最先执行boot code,如果向0xFF88h处写值0xAAAA,则会使用0xFF8A处的值作为 IPE structure这个结构体的指针,IPE structure这个结构体定义了代码保护段的起始和结束地址。TI的数据手册中给出了在CCS中如何去实现这一功能,那现在我的问题是,

    (1)是不是每次上电后都要去执行IPE structure这个结构体才能实现代码保护?如果是这样,那当MCU没有上电的时候,我还是可以通过剖片的方式获取430 IPE保护区域的代码???

    (2)如果是只要第一次(代码烧到芯片并上电)我执行了IPE structure这个结构体,就可以实现IPE保护,以后每次上电执不执行IPE structure都没有关系,那在IAR中有要如何编写代码???

    以上两个问题希望得到TI最具说服力的回复,谢谢!!!

  • Kissn,

    I have corresponded with you at TI-E2E before about this subject.

    I am going to get into the details of IPE without either IAR or CCS.
    What did you get with IAR and CCS? I would like to know your findings.

    My initial finding are contradictory to what slau367f.pdf said. But I
    need to run more test.

    I am using a FR6989-LP rev 1.0 and I depend on TIs MSP430Flasher_1.3.3
    only. Have you used that before? Do you want to exchange details of
    what you and I are doing?

    I can read Chinese, but it takes too long from me the type anything.

    -- Lichen Wang aka OCY

  • Well, as I dig deeper into that User’s Guide, I found that it is actually more or less correct. And I managed to use NotePad and MSP430Flasher to do IPE.

    Here are my answers your questions.

    (1) Once the IPE is done (whether by IAE, CCS, or MSP430Flasher), that part of the FRAM cannot be read or written any more (unless you do “ERASE_TOTAL” first). But you still can execute the code inside the IPE. Power cycle, BOR, etc. will not change it. And you do not need the signatures or the data structure any more.

    (2) IAR (CCS or MSP430Flasher) can still use that chip the “normal” way. Except they cannot read or write inside the IPE or change its boundaries unless they do “ERASE_TOTAL” first.