当前位置:   article > 正文

关于xilinx fpga flash烧录失败报错cannot set write enable bit or block(s) protected_[labtools 27-3347] flash programming unsuccessful:

[labtools 27-3347] flash programming unsuccessful: cannot set write enable b

关于xilinx fpga flash烧录失败报错cannot set write enable bit or block(s) protected

最近买了块新板子,固化程序一次就烧录不了,报错ERROR: [Labtools 27-3347] Flash Programming Unsuccessful: cannot set write enable bit or block(s) protected
记录一下如何解决的吧。

字面意思,flash写保护了。用的开发板上的flash是MX25L25645G,先看手册status register。在这里插入图片描述
如图保护是bit5到bit0。
读一下该寄存器值,时序和手册一致:在这里插入图片描述
在这里插入图片描述
发现全是1
再看一下修改寄存器的流程还挺多的在这里插入图片描述
反正跟着流程图操作就行了,给status register改成0就可以了。最后读出验证下有无更改成功
在这里插入图片描述
这时候再打开另一个vivado固化就可以了在这里插入图片描述控制台打印出Flash programming completed successfully。重新上电后程序也运行了。

用的是7系列开发板,所以代码要用到的STARTUPE2原语,u系列是STARTUPE3,用法如下。
STARTUPE2 #(
.PROG_USR(“FALSE”), // Activate program event security feature. Requires encrypted bitstreams.
.SIM_CCLK_FREQ(10.0) // Set the Configuration Clock Frequency(ns) for simulation.
)
STARTUPE2_inst(
.CFGCLK ( ), // 1-bit output: Configuration main clock output
.CFGMCLK ( ), // 1-bit output: Configuration internal oscillator clock output
.EOS ( ), // 1-bit output: Active high output signal indicating the End Of Startup.
.PREQ ( ), // 1-bit output: PROGRAM request to fabric output
.CLK (1’b0 ), // 1-bit input: User start-up clock input
.GSR (1’b0 ), // 1-bit input: Global Set/Reset input (GSR cannot be used for the port name)
.GTS (1’b0 ), // 1-bit input: Global 3-state input (GTS cannot be used for the port name)
.KEYCLEARB (1’b0 ), // 1-bit input: Clear AES Decrypter Key input from Battery-Backed RAM (BBRAM)
.PACK (1’b0 ), // 1-bit input: PROGRAM acknowledge input
.USRCCLKO (sclk ), // 1-bit input: User CCLK input
// For Zynq-7000 devices, this input must be tied to GND
.USRCCLKTS (1’b0 ), // 1-bit input: User CCLK 3-state enable input
// For Zynq-7000 devices, this input must be tied to VCC
.USRDONEO (1’b0 ), // 1-bit input: User DONE pin output control
.USRDONETS (1’b0 ) // 1-bit input: User DONE 3-state enable output
);
然后cs_n,mosi,miso接到专用接口去就可以了。

总结

用的SDK烧录bit文件到flash出现的问题,莫名其妙有点太坑了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/646382
推荐阅读
相关标签
  

闽ICP备14008679号