Eeschema Chapter6 JA
Hierarchical schematics
はじめに
シート数が2~3枚で済まないようなプロジェクトには、階層的表現を用いるのが一般的によい解決策となります。この種のプロジェクトを管理したい場合、次のことが必要になります:
- 大きなサイズのシートを使用する。その場合、印刷と取り扱いの問題が生じます。
- シートを数枚使用する。これは階層構造に至ります。
この時、完全な回路図は、ルートシートというメインの回路図シートおよび階層を構成するサブシートというものになります。さらに、設計を個別のシートにうまく分割すると可読性が改善されます。
ルートシートからすべてのサブシートを辿ることができなければなりません。Eeschemaには、右上のツールバーのアイコン[[Image:]]で使用可能な統合"階層ナビゲーター"があり、階層回路図の管理が非常に簡単です。
階層は2種類あり、これらは共存在可能です: 1つ目は、すでに開いていて普通に使用するものです。2つ目は、回路図上の従来のコンポーネントのような外観をしたコンポーネントをライブラリ内で作成するというものですが、それは実際にはコンポーネントの内部構造を記述した回路図に対応します。
この2つ目のタイプは集積回路を開発するために使用します。それは、作成中の回路図で機能ライブラリを使用しなければならないからです。
Eeschemaは現在この第2のケースには対応していません。
階層は次のようなもです:
- 単一: 任意のシートを一度だけ使用する
- 複合: 任意のシートを2回以上使用する(複数の実体)
- 平(Flat): 単一の階層であるが、シート間の接続は記述されない。
Eeschemaはこれら全ての階層を扱うことが可能です。
階層回路図の作成は簡単です。階層全体はルート回路図から始まるように管理され、ただ一つの回路図しかないように見えます。
次の2つの重要なステップを理解する必要があります:
- サブシートの作成方法。
- サブシート間の電気的な接続方法。
階層内のナビゲーション
水平ツールバー上の[[Image:]]ボタンでナビゲーターツールが使用可能になり、それによりサブシート間のナビゲーションは非常に簡単です。
[[Image:]]
シート名をクリックするとそのシートに移動可能になります。すばやく移動するには、シート名を右クリックし、シートに入るを選択します.
右垂直ツールバーの[[Image:]]ツールにより、ルートシートあるいはサブシートに素早く移動可能です。ナビゲーションツールを選択後に以下の操作を行います:
- シート名をクリックしてそのシートに移動する。
- それ以外の場所をクリックしてメインシートに移動する。
ローカル、階層およびグローバルラベル
プロパティ
ローカルラベル([[Image:]]ツール)は、あるシート内のみで信号を接続しています。階層ラベル([[Image:]]ツール)は、あるシート内のみで信号を接続し、また親シートに配置された階層ピンに接続されています。
グローバルラベル([[Image:]]ツール)は階層全体に渡って信号を接続しています。非表示の電源ピン("power in"および"power out"タイプ)は、全階層に渡って互いに接続されているように見えるので、グローバルラベルに似ています。
注
ある階層内で(単一または複合)階層ラベルとグローバルラベルの両方またはそのどちらかを使用可能です。
ヘッドラインの階層生成
次のことをする必要があります:
- "シートシンボル"という階層シンボルをルートシート内に配置します。
- ナビゲーターを使用して新規回路図(サブシート)に入り、他の回路図と同様にそれを作成します。
- 新しく作成した回路図(サブシート)にグローバルラベル(HLabels)を配置して2つの回路図間に電気的接続を作成します。また、シートラベル(SheetLabels)という同じ名前を持つラベルをルートシートに配置します。これらのシートラベルはルートシートのシートシンボルや標準的なコンポーネントピンのような他の回路図要素に接続されます。
シートシンボル
対角上の2点を指定して矩形を作成し、それによりサブシートを表します。
この矩形のサイズは、サブシート内のグローバルラベル(HLabels)に対応した特定のラベルや階層ピンを後で配置可能なものでなければなりません。
これらのラベルは通常のコンポーネントピンに似ています。[[Image:]]ツールを選択します。
クリックして矩形の左上角を配置します。矩形が十分な大きさとなったら再度クリックして右下角を配置します。
例:
[[Image:]]
この時、このサブシートのファイル名とシート名の入力が要求されます(階層ナビゲーターを使用し、対応する回路図に移動するために)。
[[Image:]]
少なくともファイル名の入力が必要です。シート名がない場合、ファイル名がシート名として使用されます(そうするのが普通)。
接続 - 階層ピン
たった今作成したシンボル用の接続点(階層ピン)をここで作成します。
これらの接続点は通常のコンポーネントピンと似ていますが、ただ1つの接続点で完全なバス接続を行うことが可能です。
それを行うには、次のように2つ方法があります:
- 必要なピンをサブシート作成前に配置(手動による配置)。
- 必要なピンおよびグローバルラベルをサブシート作成後に配置(半自動配置)。
2つ目の方法が非常に好ましいのです。
手動配置:
- [[Image:]]ツールを選択します。
- このピンを配置したい階層シンボルをクリックします。
"CONNEXION"と言う名前の階層ピンを作成する例は以下を参照して下さい。
[[Image:]]
このピンシート(右クリックしてポップアップメニューの編集を選択します)を編集して、グラフィカルな属性とサイズの定義が可能です。後でそうすることも可能です。
様々なピンシンボルが使用可能です:
- 入力(Input)
- 出力(Output)
- 双方向(BiDir)
- トライステート(Tri State)
- 指定なし(Not Specified)
これらのピンシンボルは単なるグラフィカルな強調で、それ以外の役割はありません。
自動配置:
- [[Image:]]ツールを選択します。
- 階層シンボルをクリックし、そこからグローバルラベルに対応するピンをインポートして対応する回路図に配置します。新しいグローバルラベルが存在する場合、つまり、配置済みのピンに対応したものでないなら、階層ピンが現れます。
- このピンを配置したい場所でクリックします。
必要なすべてのピンはエラーなく速やかに配置することが可能です。それらの外観はグローバルラベルと一致しています。
Connections - hierarchical labels
Each pin of the sheet symbol just created, must correspond to a label called hierarchical Label in the sub-sheet. Hierarchical labels are similar to labels, but they provide connections between sub-sheet and root sheet. The graphical representation of the two complementary labels (pin and HLabel) is similar. Hierarchical labels creation is made with the tool [[Image:]].
See below a root sheet example:
[[Image:]]
Notice pins TRANSF1 and TRANSF2, connected to connector JP3.
Here are the corresponding connections in the sub-sheet :
[[Image:]]
You find again, the two corresponding hierarchical labels, providing connection between the two hierarchical sheets.
Note
You can use hierarchical labels and hierarchy pins to connect two buses, according to the syntax (Bus [N. .m]) previously described.
Labels, hierarchical labels, global labels and invisible power pins
Here are some comments on various ways to provide connections, others than wire connections.
Simple labels
Simple labels have a local capacity of connection, i.e. limited to the schematic sheet where they are placed. This is due to the fact that :
- Each sheet has a sheet number.
- This sheet number is associated to a label.
Thus, if you place the label 。ネTOTO。ノ in sheet n。・3, in fact the true label is 。ネTOTO_3。ネ. If you also place a label 。ネTOTO。ノ in sheet n。・1 ( root sheet) you place in fact a label called 。ネTOTO_1。ネ, different from 。ネTOTO_3。ネ. This is always true, even if there is only one sheet.
Hierarchical labels
What is said for the simple labels is also true for hierarchical labels.
Thus in the same sheet, a HLabel 。ネTOTO。ノ is considered to be connected to a local label 。ネTOTO。ノ, but not connected to a HLabel or label called 。ネTOTO。ノ in another sheet.
However a HLabel is considered to be connected to the corresponding SheetLabel symbol in the hierarchical symbol placed in the root sheet.
Invisible power pins
It was seen that invisible power pins were connected together if they have the same name. Thus all the power pins declared 。ネInvisible Power Pins。ネ and named VCC are connected and form the equipotential VCC, whatever the sheet they are placed on.
This means that if you place a VCC label in a sub-sheet, it will not be connected to VCC pins, because this label is actually VCC_n, where n is the sheet number.
If you want this label VCC to be really connected to the equipotential VCC, it will have to be explicitly connected to an invisible power pin, thanks to a VCC power port.
Global labels
Global labels that have an identical name are connected across the whole hierarchy.
(power labels like vcc ... are global labels)
Complex Hierarchy
Here is an example. The same schematic is used twice (two instances). The two sheets share the same schematic because the file name is the same for the two sheets ("other_sheet.sch"). But the sheet names must be different.
Flat hierarchy
You can create a project using many sheets, without creating connections between these sheets (flat hierarchy) if the next rules are repsected:
- You must create a root sheet containing the other sheets, which acts as a link between others sheets.
- No explicit connections are needed.
- All connections between sheets will use global labels instead of hierarchical labels.
Here is an example of a root sheet.
[[Image:]]
Here is the two pages, connected by global labels.
[[Image:]]
[[Image:]]
Look at global labels | [[Image:]] |