JAJSOK6B September 2025 – January 2026 TCAN5102-Q1
ADVANCE INFORMATION
TCAN5102-Q1 には 2kB のメッセージ RAM (MRAM) があり、SPI、I2C、UART 通信のメールボックスを格納するために使用されます。この RAM は、エンド アプリケーションのニーズに基づき、2 つの IP ブロックに割り当てられたメモリを任意の組み合わせで 25% 単位に分割できます。RX と TX の間の分割は調整できず、常に 50/50% です。RX および TX FIFO の処理は TCAN5102-Q1 によって行われるため、各 IP ブロックに割り当てる MRAM の量を選択しないでユーザーの設定は不要です。
SPI と I2C はメモリ使用に関して単純な分割を行い、割り当てられたメモリの 50% は TX データの格納に使用され、残りの 50% は指定されていれば RX データの格納に使用されます。
UART では、受信した各バイトのステータスを格納するために追加のバイトが必要です。つまり、UART で受信する各データ バイトごとに、そのバイトのステータスを格納するために 1 バイトが追加で必要になります。その結果、UART に割り当てられたメモリの 3 分の 2 だけが実際のデータ バイトの格納に使用されます。
表 7-7に、各 IP ブロックの TX バッファまたは RX バッファに割り当てられるデータのバイト数を示します。表示されるサイズは TX バッファと RX バッファの両方で同じ値ですが、両者で共有される値ではありません。たとえば、MRAM 領域の 100% が SPI に割り当てられている場合、SPI TX サイズは 1024 バイト、SPI RX バッファは 1024 バイトです。TX バッファと RX バッファを合わせると合計で 2048 バイトとなり、これがメモリ全体に相当します。
MRAM の 50 % が SPI と UART に割り当てられた例では、SPI の RX と TX のサイズはそれぞれ 512 で、合計 1 kB となります。UART IP は、バッファごとにわずか 340 バイトです。UART RX では、受信した各バイトのステータスを格納するために追加のバイトが必要となるため、利用可能な 1024 バイトのうちデータ格納に使用されるのは 3 分の 2 だけです。内部では、TX バッファと RX バッファに保存できるバイト数は同一です。このため、残りの 4 バイトは 3 つの機能 (TX、RX、RX ステータス) に均等に分割できないため、4 バイトのデータは未使用のままになります。
| SPI へのアロケーション % | SPI TX または RX サイズ (バイト) |
UART TX または RX サイズ (バイト) |
使用された合計バイト数 (合計に対する %) |
|---|---|---|---|
| 100% | 1024 | 0 | 2048 (100%) |
| 75% | 768 | 168 | 2040 (99.6%) |
| 50% | 512 | 340 | 2044 (99.8%) |
| 25% | 256 | 512 | 2048 (100%) |
| 0% | 0 | 680 | 2040 (99.6%) |
| MRAM_IP_EN (16 進) | SPI へのアロケーション % | UART へのアロケーション % | I2C へのアロケーション % | SPI TX および RX サイズ (バイト) |
UART TX および RX サイズ (バイト) |
I2C TX および RX サイズ (バイト) |
使用された合計バイト数 (合計に対する %) |
|---|---|---|---|---|---|---|---|
| 0h | 0% | 0% | 0% | 0 | 0 | 0 | 0 (0%) |
| 1h | 0% | 100% | 0% | 0 | 680 | 0 | 2040 (99.61%) |
| 2h | 25% | 75% | 0% | 256 | 512 | 0 | 2048 (100%) |
| 3h | 50% | 50% | 0% | 512 | 340 | 0 | 2044 (99.8%) |
| 4h | 75% | 25% | 0% | 768 | 168 | 0 | 2040 (99.61%) |
| 5h | 100% | 0% | 0% | 1024 | 0 | 0 | 2048 (100%) |
| 6h | 0% | 0% | 100% | 0 | 0 | 1024 | 2048 (100%) |
| 7h | 0% | 25% | 75% | 0 | 168 | 768 | 2040 (99.61%) |
| 8h | 0% | 50% | 50% | 0 | 340 | 512 | 2044 (99.8%) |
| 9h | 0% | 75% | 25% | 0 | 512 | 256 | 2048 (100%) |
| Ah | 25% | 0% | 75% | 256 | 0 | 768 | 2048 (100%) |
| Bh | 50% | 0% | 50% | 512 | 0 | 512 | 2048 (100%) |
| Ch | 75% | 0% | 25% | 768 | 0 | 256 | 2048 (100%) |
上の図には、MRAM が I2C のデータを保持する方法の例が示されています。各 I2C フレーム / メッセージは異なる色で示され、各 RX または TX FIFO 内でメッセージが密にグループ化される様子を表しています。ユーザーは、FIFO 内でデータがどのように格納されるかを意識する必要はなく、FIFO の合計サイズと、ヘッダやステータス バイトもメモリに格納されるという事実だけを把握していれば十分です。