SFL初心者講座
[ ホーム ] [ 論理回路設計初心者講座 ] [ SFL初心者講座 ] [ SFLの応用例 ]

 

例題:Hello World
SFLの文法
例題:超簡単なCPU

SFLについて

SFLは同期式の回路を記述するための言語です。

もっというと、回路そのものを記述するのではなく、回路における「動作」を記述する言語です。この「動作」を記述するためにSFLではいろいろな工夫がしてあります。

 

制御端子

SFLの大きな特徴は「制御端子によって回路を制御する」ということです。ここで「制御端子」の考え方を説明しましょう。フリップフロップを例にとります。フリップフロップは「あるきっかけでD端子に入力されている値を記憶するモジュール」と考えられます。通常はこの機能を制御するために、CLK端子やEN(イネーブル)端子を使います。SFLは同期式の回路を記述する言語ですから、CLK端子を直接制御することはありません。したがって、イネーブル端子を使って、フリップフロップを制御することになります。このイネーブル端子をSFLでは、制御入力と呼びます。つまり、モジュールの動作が起こるきっかけを作るのが制御端子です。

ステージ、タスク、ステート

ステートという言葉は順序回路でおなじみですが、ステージ、タスクといった言葉はあまり論理回路設計では聞いたことはないと思います。これは、SFLが「回路を記述する」という立場ではなく、「並列に動作するものを記述する」という立場に立って設計された言語だからです。ステージとタスクは回路が並列に動作する場合に人間が混乱しないように整理するために導入された概念です。

シミュレーション

PARTHENONではSFL言語を用いて回路を記述し、secondsというシミュレータ上で回路の動作を確認します。動作を確認した後は、SFL言語から直接回路を合成することができます。

 

 

Copyright (C) 2000 DataSight Corporation (zip8120016jp). All Rights Reserved.