目次
1. 概要
このドキュメントはAIに読み込ませてコードを自動生成することを目標としています。
単一信号とバス信号のクロックサイクル毎の時系列変化を表現するシーケンスチャートの記述ルールを定義します。統一された記述方法により、人間とAIの両方が理解しやすいシーケンスチャートを作成することを目的としています。
2. 基本ルール
2.1 記述の目的
- 単一信号とバス信号の時系列変化を明確に表現
- クロックサイクル毎の信号変化を視覚化
- 信号の遅延や保持動作の理解を促進
2.2 記述の原則
- 簡潔性: 必要最小限の情報のみを記載
- 一貫性: 統一された記述方法を使用
- 可読性: 人間とAIの両方が理解できる形式
3. 記述形式
3.1 基本構造
Clock : [クロック数]
Signal1 : [信号値の時系列]
Signal2 : [信号値の時系列]
...
SignalN : [信号値の時系列]
記述ルール:
-
:
の後に1文字の空白を入れてシーケンスの記述を始める -
:
までのスペースを含めた文字列の長さを統一する
3.2 行の順序
- Clock: クロック数を最初に記載
- Signal1: 信号1(任意の信号名)
- Signal2: 信号2(任意の信号名)
- ...: 任意の数の信号
- SignalN: 信号N(任意の信号名)
4. 信号の表現
4.1 信号値の記述
- H: ハイレベル(1)
- _: ローレベル(0)
- x: 不定値(don't care)
- 数字: データ値(0, 1, 2, 3, 4, 5...)
- A~F: 16進数値(A, B, C, D, E, F)
4.2 信号の種類
4.2.1 単一信号
- 1ビットの信号
- 例: 有効信号、準備信号、制御信号など
4.2.2 バス信号
- Nビットの信号
- 例: データバス、アドレスバス、制御バスなど
4.2.3 記述例
Clock : 12345678901234
Data : xx012345xxxxxx # データバス(Nビット)
Valid : __HHHHHH______ # 単一信号(1ビット)
Stage1 : xxx012345xxxxx # データバス(Nビット)
Stage1_V : ___HHHHHH_____ # 単一信号(1ビット)
Ready : HHHHHHHHHHHHHH # 単一信号(1ビット)
5. クロック数の記述
5.1 基本ルール
- 10進数の下1桁を使用(1-9, 0)
- 左から右へ時間の流れを表現
- 各文字が1クロックサイクルを表す
- クロック数は1から開始
5.2 記述例
Clock : 12345678901234
5.3 注意事項
- クロック数は信号の長さと一致させる
6. 基本記号
6.1 単一信号
- H: ハイレベル
- _: ローレベル
- x: 不定値
6.2 バス信号
- 数値: 0, 1, 2, 3, 4, 5...(仮想的な特定の値)
- A~F: A, B, C, D, E, F(仮想的な特定の値)
- x: 不定値(don't care)
記述チェックリスト
作成時の確認事項
- クロック数が信号の長さと一致している
- 信号名が統一されている
- 信号の流れが正しく表現されている
- 保持や無効データの動作が明確
- 人間とAIの両方が理解できる記述
検証時の確認事項
- 信号の遅延が正しく表現されている
- 単一信号とバス信号の動作が正しい
- 特殊な動作(保持、無効データ)が明確
- クロック同期が適切に表現されている
ライセンス
Licensed under the Apache License, Version 2.0 - see LICENSE file for details.