初めまして、RL78/G13を使い始めて2年生、ぴろと申します。自己紹介の代わりに使ってきたMPUを書き連ねると、H8/300,H8/500シリーズあたりからルネサス系(当時日立)を使いはじめ、ルネサスが主力を変える度にこちらも追従して来ました。R8Cシリーズに変え、現在はRL78/G13とRX621等に変遷してきました。
では本題です。対象となるRL78はR5F100LFAFAです。データフラッシュは8kbyte(8192byte)で。
RL78用に提供されている「EEPROMエミュレーション・ライブラリ Pack02」ではデフォルトで最大ユーザデータ長を255byteとしています。
それに管理用としてEELブロックヘッダが8byte、さらに格納データにはSoRとEoRフィールドがあり、合計で255+8+1+1 = 265byteとなり、
8192/265=30.9....と端数が出てしまいます。
30ブロックには出来ない、29ブロックとすると余り444byteとなり永遠に使われない無駄な領域が生まれることになるのでは?という疑問を持った次第です。
ライブラリでEELブロックヘッダやSoR,EoRで10byteつかうなら256-10=246byteを最大ユーザデータ長としたほうが256byteバウンダリーで使えて
8192/256=32ブロックピッタリ!となると思うのです。なぜ端数が出るような使い方をしているのでしょうか?私が何か大事な領域を見逃しているのでしょうか?
ご教示よろしくお願いします。