![Page 1: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/1.jpg)
1© 2014 The MathWorks, Inc.
物理層&MAC層のマルチレイヤシミュレーションとコード生成
MathWorks Japan
アプリケーションエンジニアリング部
シニアアプリケーションエンジニア
田中明美
![Page 2: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/2.jpg)
2
Go-Back-N (クロスレイヤモデル)
BER/PER特性の確認
Bitレベルで雑音を加えているため、PERだけでなく、BERも評価可能
![Page 3: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/3.jpg)
3
Go-Back-N
振る舞い
送信側 受信側
Frame1
Frame2
Frame3
Frame4
Frame5
Frame6
Frame5
Frame6
ACK1
ACK2
ACK3
ACK4
未到達
timeout
ウィンドウサイズ
往復遅延時間
![Page 4: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/4.jpg)
4
Go-Back-N (クロスレイヤモデル)
フレーム生成
1
OUT
IN OUT
Set Attribute
IN OUT
Sequence Number
OUT
Frame Generator
1
OUT
parity bitPKT_IN1
Set Parity Bit
IN1
IN2
IN3
OUT
Packet Generator
TRAILER
Generate Trailers
PAYLOAD
Generate Payloads
HEADER
Generate Headers
MACモデル
PHY/MAC クロスレイヤモデル
ヘッダ、ペイロード、トレイラ等、実際のフレーム構成をふまえてattribute情報を付加
各entityに付加するattribute情報は、シーケンシャル番号のみ
![Page 5: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/5.jpg)
5
Go-Back-N (クロスレイヤモデル)
物理層付加
以下のattributeを取りだす seqNum(シーケンシャル番号) Payload(ペイロード) Parity Bit(CRCパリティ)
![Page 6: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/6.jpg)
6
Go-Back-N (クロスレイヤモデル)
物理層付加
取り出したattribute “Payload”,
“Parity Bit”について、以下のPHYレイヤ処理を行う
BCH符号/復号 BPSK変復調 白色雑音付加
![Page 7: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/7.jpg)
7
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 8: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/8.jpg)
8
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 9: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/9.jpg)
9
Simulink環境
SimulinkDiscrete
Event
(SimEvents)
パケットメモリ処理
Decision
Logic
(Stateflow)
シーケンス処理例外処理条件判定
Time-Driven Dynamics
(Simulink
DSP System Toolbox
Communications System
Toolbox
Phased Array System
Toolbox)
基本環境変復調エラー訂正チャネルビームフォーミング到来方向推定スペアナ表示
Frequency-Driven
(SimRF)
ミキサアンプLNA
マルチドメイン/マルチレイヤのシミュレーションCコード/HDLコード生成
Code Generation
(Simulink Coder
Embedded Coder
HDL Coder)
CコードHDLコード
LTE System Toolbox
![Page 10: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/10.jpg)
10
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 11: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/11.jpg)
11
Stateflowとは?
状態遷移図・状態遷移表・フローチャート機能を提供
Simulinkとシームレスに連携(Simulinkが必要)
階層化、並列化、関数化、時相論理に対応
コード生成、モデル検証等各種オプション機能に対応
上位階層
下位階層
Stateflow
![Page 12: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/12.jpg)
12
主な機能
フローチャート 状態遷移図 状態遷移表
処理の流れで
ロジックを表現
状態の移り変わりで
ロジックを表現状態遷移図の表形式
![Page 13: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/13.jpg)
13
Stateflow ブロック
エントリの方法
状態遷移図
状態遷移表
真理値表
ドラッグ&ドロップでモデルに配置
![Page 14: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/14.jpg)
14
Stateflow エディタ オブジェクトパレット
上から順に
ズーム
表示範囲のフィッティング
状態
分岐点(コネクティブジャンクション)
遷移線(トランジション)
ボックス
Simulink関数
グラフィカル関数
MATLAB関数
真理値表
ヒストリージャンクション
![Page 15: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/15.jpg)
15
状態のハイライト、MATLAB関数のコール
現在の状態がハイライトされどの状態に繊維しているか確認可能
MATLAB関数をチャートからコール
![Page 16: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/16.jpg)
16
HUNTSYNC_FLG<=‘0’
LOSTSYNC_FLG<=‘1’
SYNCSYNC_FLG<=‘1’
FOUNDSYNC_FLG<=‘0’COUNT=FRAME
andCODE_HIT=‘0’
COUNT=FRAMEand
CODE_HIT=‘1’
COUNT=FRAMEand
CODE_HIT=‘0’
COUNT=FRAMEand
CODE_HIT=‘0’
COUNT=FRAMEand
CODE_HIT=‘1’
CODE_HIT=‘1’
Stateflowの活用例フレーム同期信号検出
DATAI
SYNC_FLG
FP
同じ機能のHDLコード完成まで2時間(モデリング 0.5h 検証 1.5h)
DATAO
参考文献CQ出版社 DesignWave BooksHDL サンプル記述集 まねして身につけるディジタル回路設計
![Page 17: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/17.jpg)
17
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 18: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/18.jpg)
18
Simulink/StateflowからのCコード生成
![Page 19: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/19.jpg)
19
Simulink/StateflowからのHDLコード生成
![Page 20: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/20.jpg)
20
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 21: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/21.jpg)
21
SimEventsとは?
エンティティとは?サーバーとは?
パケット処理
![Page 22: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/22.jpg)
22
ケンドール記号
22
D / D / 1
SimEvents標準デモ
到着間隔の分布
サービス時間の分布
サーバの数
D : 一定分布
M : ランダム分布
G : 一般分布
![Page 23: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/23.jpg)
23
15分 8分
10分 9分
1 2
3
2 3
3
5分 4分
15分
4
10分
1
Server A
エンティティの到着する間隔: ランダム
サービス時間: ランダム
サーバの数: 1待ち状態が発生
イベント
ランダム時間
サービス時間ランダム時間
エンティティの到着
サービス時間
待ち状態
M/M/1 [到着分布/サービス分布/サービス窓口数」
ケンドールの記号
2 4
![Page 24: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/24.jpg)
24
Precision Time Protocol とは?
出典:http://ja.wikipedia.org/wiki/Time_Protocol#PTP.28Precision_Time_Protocol.29
![Page 25: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/25.jpg)
25
Precision Time Protocol とは?プロトコルメッセージ
Master Clock Sync
Master Clock Delay Response
Slave Clock Delay Request
少なくても1台のMasterと1台のSlaveが必要
タイムスタンプの位置One-step clock
Two-step clock
4種類のタイムスタンプT1:Masterが同期メッセージを送信した時間T2:Slaveが同期メッセージを受信した時間T3:SlaveからDelay Requestメッセージを送信した時間T4:MasterがDelay Responseメッセージを受信した時間
Master Clock Slave Clock
T1,Sync
Sync follow up
T4
Delay Response
T2
T3
Delay Request
![Page 26: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/26.jpg)
26
Precision Time Protocol Systemのモデリング
Master Channel Slave
![Page 27: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/27.jpg)
27
Master
SlaveへT1を含むパケット送信
Slaveからのパケット受信
Slaveへ返信
![Page 28: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/28.jpg)
28
Channel
MasterからSlaveへ
MasterからSlaveへ
Slave からMasterへ
![Page 29: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/29.jpg)
29
Slave
Masterへパケット送信
![Page 30: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/30.jpg)
30
シミュレーション結果
片方向遅延 黄: 瞬間遅延 青: 平均遅延
遅延時間(Master to Slave)
遅延時間(Slave to Master)
![Page 31: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/31.jpg)
31
アジェンダ
Simulink®シミュレーション環境
Stateflow®とは?
Stateflow®からのコード生成
SimEvents®とは?
アプリケーション例(CSMA/CD)
まとめ
![Page 32: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/32.jpg)
32
CSMA/CDの概要
信号が流れていないか確認
信号がなければ伝送開始
信号を検出送信を待つ
信号がなければ伝送開始
同時に送信したため衝突
双方ランダム時間待って再送
バックオフは15回繰り返し、16回目にフレーム破棄
![Page 33: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/33.jpg)
33
CSMA/CD
33
☆3台の端末によるCSMA/CDアルゴリズムのモデル(10Mbps)
☆端末(Entity生成、MAC、接続点)とケーブルにより構成
MACEntity生成
ケーブル長による遅延
端末
![Page 34: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/34.jpg)
3434
Backoff (Stateflow)
CSMA/CD
CSMA/CD
![Page 35: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/35.jpg)
3535
①親サブシステムのInfinite Server(Chanel State)内にあるentityの数を入力(I_states)
②I_statesの値が0→1の時、Server内に一つだけパケットがあると判断
→ st端子に0を出力(Collisionなし)
③I_statesの値が1→2の時、st端子に1を出力(Collisionあり)
① ②③
CSMA/CD
![Page 36: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/36.jpg)
36
CSMA/CD
36
collision検出
Backkoff時間を計算
![Page 37: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/37.jpg)
37
CSMA/CD
10Mb/s
パケットは可変長(64~1500byte)
パラメータ設定
![Page 38: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/38.jpg)
38
CSMA/CD
38
パケット長情報を
attributeとして
伝送
パケット生成レート情報を、entity生成時間に設定
マスクパラメータの受け渡し
![Page 39: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/39.jpg)
39
CSMA/CD
送出されたパケット数
検出されたコリジョン数
チャネル使用率スループット
Application(B)のパケットレート:200
チャネル使用率スループット
Application(B)のパケットレート:100
![Page 40: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/40.jpg)
40
まとめ
物理層だけでなくMAC層のモデリング
物理層&MAC層のマルチレイヤモデリング
CSMA/CA,CSMA/CDなどを意識したサンプルモデル
独自のプロトコルの検討
仕様から直感的に理解できるモデリング
コード生成->実装まで幅広いフェーズをカバー
– ツールのトレーニング
– コンサルティングサービス
通信系システム設計、シミュレーションに便利なオプションとサービスをご利用いただけます。
![Page 41: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/41.jpg)
41
デモブースのご案内
アナログ・デジタル設計からハードウェア実装
© 2014 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc.
See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names
may be trademarks or registered trademarks of their respective holders.
展示ブースデモダイジェスト
![Page 42: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/42.jpg)
42
ワークショップ(体験型)
2014年12月2日
実際にMATLABを使用して簡単なモデル作成とBER測定までのワークフローをご体験頂けます
詳細はこちらからhttps://go2.mathworks.com/communications-workshop-sem-jp-58863?s_iid=evsem_sem_event_bod
![Page 43: 物理層&MAC層の マルチレイヤシミュレーションと …...2 Go-Back-N (クロスレイヤモデル) BER/PER特性の確認 Bitレベルで雑音を加えているため、](https://reader031.vdocuments.pub/reader031/viewer/2022041606/5e3450930cd3f21fe3408887/html5/thumbnails/43.jpg)
43
ご聴講ありがとうございました!
© 2014 The MathWorks, Inc. MATLAB and Simulink are registered
trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for
a list of additional trademarks. Other product or brand names may be
trademarks or registered trademarks of their respective holders.