ZHCSYK3 July 2025 TMF0008
PRODUCTION DATA
“寫入暫存區(qū)”命令 0Fh 用于寫入暫存區(qū)。使用 ROM 命令選擇目標(biāo) TMF0008 后,主機(jī)將提供 2 字節(jié)地址和數(shù)據(jù)。TMF0008 將 2 字節(jié)地址的 5 個 LSB 位設(shè)置為暫存區(qū)偏移地址。此外,E/S 寄存器的 5 個 LSB 位 (E[4:0]) 也用于加載暫存區(qū)偏移地址。對于每個后續(xù)的數(shù)據(jù)字節(jié),暫存區(qū)偏移地址和 E/S 位 (E[4:0]) 都會遞增。如果數(shù)據(jù)字節(jié)是不完整的,則會忽略該數(shù)據(jù)字節(jié),并設(shè)置稱為部分字節(jié)標(biāo)志 (PF) 的錯誤標(biāo)志。如果未接收到完整的 2 字節(jié)地址,也會設(shè)置該標(biāo)志。一旦器件接收到完整的 2 字節(jié)地址,該標(biāo)志就會清除。
在執(zhí)行“寫入暫存區(qū)”命令期間,內(nèi)部 CRC 生成器根據(jù)包括“寫入暫存區(qū)”命令 (0Fh)、2 字節(jié)地址和數(shù)據(jù)字節(jié)的數(shù)據(jù)流計算 16 位 CRC。此 CRC 是通過先清零 CRC 生成器,使用 CRC16 多項式 (X16 + X15 + X 2 + 1) 生成的。主機(jī)可以隨時通過發(fā)出復(fù)位命令來終止“寫入暫存區(qū)”命令序列。當(dāng)暫存區(qū)偏移地址達(dá)到 11111b 時,主機(jī)可以讀取 TMF0008 生成的 16 位 CRC。
TMF0008 存儲器地址范圍為 0000h 至 03D3h,因此如果主機(jī)嘗試超出地址范圍進(jìn)行寫入,器件的內(nèi)部電路會將 2 字節(jié)地址移入內(nèi)部地址寄存器,從而將六個最高有效地址位設(shè)置為零??梢酝ㄟ^“讀取暫存區(qū)”命令讀回此修改后的地址。如果主機(jī)在沒有讀取暫存區(qū)并驗證地址和數(shù)據(jù)字節(jié)的情況下發(fā)出“復(fù)制暫存區(qū)”命令,則暫存區(qū)中的存儲器內(nèi)容不會復(fù)制到目標(biāo) FRAM 存儲器中。如果主機(jī)嘗試寫入受寫保護(hù)的存儲器位置,則器件會將 2 字節(jié)地址中的數(shù)據(jù)字節(jié)從 FRAM 存儲器復(fù)制到暫存區(qū),而不是復(fù)制由主機(jī)寫入的數(shù)據(jù)字節(jié)。與此類似,如果主機(jī)嘗試寫入受 EEPROM 保護(hù)的存儲器位置,則該器件會將主機(jī)寫入的數(shù)據(jù)字節(jié)和 2 字節(jié)地址中的數(shù)據(jù)字節(jié)進(jìn)行逐位邏輯與后的結(jié)果從 FRAM 存儲器復(fù)制到暫存區(qū)。