インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

20.4.5.1.1. HighカウントおよびLowカウントの計算

次の計算例は、I2Cコントローラーの各スピードモードにおけるSCLのHighカウントおよびLowカウントの計算方法を示しています。

l4_sp_clkクロックの適切なパルス数を計算する計算式は、SCLクロックの適切なHighの時間およびLowの時間を設定するために必要です。†

表 205.  l4_sp_clkクロックパルスの計算式

IC_HCNT = ceil(MIN_SCL_HIGHtime*OSCFREQ)

IC_LCNT = ceil(MIN_SCL_LOWtime*OSCFREQ)

MIN_SCL_HIGHtime = 最小のHighの期間

MIN_SCL_HIGHtime =

100kbpsの場合4000ns

400kbpsの場合600ns

3.4Mbs (バスの負荷 = 100pF) の場合60ns

3.4Mbs (バスの負荷 = 400pF) の場合160ns

MIN_SCL_LOWtime = 最小のLowの期間

MIN_SCL_LOWtime =

100kbpsの場合4700ns

400kbpsの場合1300ns

3.4Mbs (バスの負荷 = 100pF) の場合120ns

3.4Mbs (バスの負荷 = 400pF) の場合320ns

OSCFREQ = l4_sp_clkクロック周波数 (Hz)

HighカウントおよびLowカウントの計算

OSCFREQ = 100 MHz
I2Cmode = fast, 400 kbps
MIN_SCL_HIGHtime = 600 ns
MIN_SCL_LOWtime = 1300 ns

IC_HCNT = ceil(600 ns * 100 MHz) IC_HCNTSCL PERIOD = 60
IC_LCNT = ceil(1300 ns * 100 MHz) IC_LCNTSCL PERIOD = 130
Actual MIN_SCL_HIGHtime = 60*(1/100 MHz) = 600 ns
Actual MIN_SCL_LOWtime = 130*(1/100 MHz) = 1300 ns †