ホーム › フォーラム › Texas Instruments › マイコン › C2000 › C2000-GANGでのOTP領域の書き換え
このトピックには15件の返信が含まれ、2人の参加者がいます。2 年、 4 ヶ月前に guest さんが最後の更新を行いました。
-
投稿者投稿
-
guestC2000-GANGでのOTP領域の書き換え
F280049マイコンを使用しています。
ZeroPinBoot設定にするため、OTP領域を書き換える必要があるのですが、
C2000-GANGで量産書き込みをする際にOTP領域も含めて書き換えることはできますでしょうか。お問い合わせありがとうございます。
C2000-GANGでもOTP領域の書き込みは可能となります。
また不明点が御座いましたらお問い合わせください。
以上、よろしくお願いいたします。
guestご回答ありがとうございます。
C2000-GANGでOTP領域も含めて書き込みができる旨承知いたしました。重ねて2点ご質問したく存じます。
1.C2000-GANGでは読み込み可能なコードファイル形式がTI(.txt), Intel(.hex),Motorola(.19, .28, .37)の
様なのですが、.txtや.hexでC2000プロジェクトをビルドするにはどの様にすれば良いでしょうか。2.今まで、OTP領域はCCSでターゲットに接続し、On-chip Flash画面から書き換えていたのですが、
生成するコードファイルにOTP領域の書き換えをプログラムするにはどの様にすれば良いでしょうか。以上よろしくお願いいたします。
追加のお問い合わせの件、以下に回答いたします。
.txtや.hexの出力は使用しているコンパイラのバージョンにより異なるのですが、最近のコンパイラの場合には、プロジェクトのPropertiesを開き、以下のC2000 Hex Utilityの”Enable C2000 Hex Utility”にチェックを入れ、その後、Outputフォーマットから、Intel hexやTI txtを選択できます。この設定後にBuildをすると該当のファイルが出力されます。
また、OTPの書き換えのプログラムですが、sysconfigというツールを使って設定することができます。以下のCCSサンプルプロジェクトがsysconfigを使用してOTPをプログラムするサンプルになっておりますので、こちらのプロジェクトをご参考頂けますでしょうか。
C:\ti\c2000\C2000Ware_4_01_00_00\driverlib\f28004x\examples\dcsm
また不明点が御座いましたらお問い合わせください。
以上、よろしくお願いいたします。
guestご回答ありがとうございます。
Outputフォーマット設定およびSysConfigの設定について承知いたしました。
0ピンでのFLASHブートについて、画像の設定で間違いないでしょうか。また、今回は初めから.syscfgが含まれているサンプルプロジェクトでしたが、
既存のプロジェクトでSysConfigを有効化するにはどの様にすれば良いでしょうか。以上ご確認のほどよろしくお願いします。
0ピンブートの設定は画像の設定で問題ございません。
また、既存プロジェクトにSysConfigを追加するには、CCS上で既存のプロジェクトを右クリックしNew → File と選択し、empty.syscfgというファイルを追加することで、Sysconfigを追加できます。
追加後、プロジェクトのPropertiesを開き、以下の黄色ラインの設定を追加します。
上記の設定でSysconfigが使用できるようになると思いますので、お試しいただけますでしょうか。
もし問題がある場合には、再度お問い合わせください。
以上、よろしくお願いいたします。
guestお伝えいただいた内容で、SysConfigの追加が出来ました。
ご対応ありがとうございました。
ご返信ありがとうございます。また不明点が御座いましたらお問い合わせください。
guestお世話になります。
上記のsysconfig設定で現品に書き込みしたところ、スタンドアロンで動作しませんでした。
書き込み後のOn-Chip Flashを、正常に動作している別のチップと比較すると、Z1OTP-GPREG1(0x7800C):0x5AFFFFFF(正常動作品:同左)
Z1OTP-GPREG3(0x7801C):0xFFFFFF03(正常動作品:同左)は問題なく設定されている様ですが
Z1OTP-GPREG2(0x7800E):0x5AFFFFFF(正常動作品:0xFFFFFFFF)
および
Bx-ZxOTP-GRABSECT(0x5F01A, 0x5F05A, 0x5F15A):0xAAAAAAAA(正常動作品:0xFFFFFFFF)
ZxOTP-GRABRAM(0x5F01C, 0x5F05C):0xFFFFAAAA(正常動作品:0xFFFFFFFF)が異なるようでした。
ERRORSTSを無効にするために0x5AFFFF3Fで上書きしたところ、
スタンドアロンで起動する様になりましたが、起動に数秒かかってしまうため
搭載しているアプリケーションで使用できません。スタンドアロン動作しなかった原因、およびBootが遅れる原因についてご教示下さい。
Z1OTP-GPREG2はエラーステータスピンを設定するピンで、正常動作品との間に差分があっても問題は無いと考えます。また、Bx-ZxOTP-GRABSECTについても0xAAAAAAAAはGUIのデフォルト値となり、0xFFFFFFFFと同様にUnsecureの設定になるので、問題はないように思われます。
現状では原因が特定できないため引き続き調査をします。原因が分かり次第改めてご連絡させていただきます。> ERRORSTSを無効にするために0x5AFFFF3Fで上書きしたところ、
> スタンドアロンで起動する様になりましたが、起動に数秒かかってしまうため
> 搭載しているアプリケーションで使用できません。ちなみに0x5AFFFF3Fで上書きとは、Z1OTP-GPREG2レジスタに対してでしょうか?
以上、よろしくお願いいたします。
guestお世話になります。
>ちなみに0x5AFFFF3Fで上書きとは、Z1OTP-GPREG2レジスタに対してでしょうか?
失礼いたしました。その通りです。
使用しているプログラムはCLAも使用しているため、
データコピー等に時間がかかっているのかと考え、CLAタスクのない
LEDブリンクのみのプログラムを書き込みましたが、起動時間には余り差がありませんでした。(約5秒)また、エミュレーションBootの際や、1度起動したのちRESET(XRSn)した場合は
遅延なくプログラムが開始されます。以上ご確認のほどよろしくお願いします。
ご連絡ありがとうございます。
本件についてはメーカーに確認しております。
回答が得られ次第ご報告させていただきますので、少々お待ち頂けますでしょうか。Z1OTP-GPREG2は以下の構成になっておりますので、0x5AFFFF3Fで上書きするとReserved領域を変更してしまいますので、こちらは変更せずに0x5AFFFFFFのままご利用頂けますでしょうか。
以上、よろしくお願いいたします。
guestご回答ありがとうございます。
>Z1OTP-GPREG2は以下の構成になっておりますので、0x5AFFFF3Fで上書きするとReserved領域を
>変更してしまいますので、こちらは変更せずに0x5AFFFFFFのままご利用頂けますでしょうか。失礼しました。読み違えていたようです。
メーカー問い合わせの件、承知いたしました。
OTP領域への書き換えを伴うため、あまり試すことが出来ないので、
ひとまずはメーカーからの回答を待ちたいと思います。以上ご確認のほどよろしくお願いします。
本件メーカーに確認したところ、OTPの設定は問題ないとの回答でした。
原因を特定するために、Boot ROMのデバッグをお願いできますでしょうか。
Boot ROMのデバッグ方法は添付に纏めましたので、こちらをご参考ください。また、デバッグ時メモリの0x2番地にブートステータスが表示されますので、この値が何になるかも併せてご確認いただけますでしょうか。
以上、よろしくお願いいたします。
Attachments:
guest承知いたしました。
現状のメモリの状態については、以下の様になっています。
上:起動に遅延があるもの、下:正常動作品ただ、起動に時間がかかるマイコンは、https://emb.macnica.co.jp/forums/topic/18767/#post-18886
の修正を加えてしまっているので、改めて1からOTP領域へ書き込みを行ったものでテストをしたいと思います。
前回設定時は、sysconfigの
・ZONE1Per LINKPOINTER
・ZONE2 Header
・ZONE2 Per LINKPOINTER
はDefaultのままにしていたのですが、これらの「Configure this Section」は
外しておいた方がいいでしょうか。以上ご確認のほどよろしくお願いします。
-
投稿者投稿