この回路はボタンを押したときに交互に点灯を変化させる回路なので特にタイミングに関する考慮は不要です。試しにやってみるという意味合いでTimeQest Timming AnalyzerのErrorを発生させないような設定を行います。
1.[Tools]-[TimeQuest Timing Analyzer]をクリックしてTimeQuestを起動します。
2.[Netlist]-[Create Timing Netlist]クリックします。
3.次の画面でPost-fitを選択して[OK]
4.次のような画面になるので[File]-[New SDC File]をクリックします。
5.次のようなテキストエディタが開きます。まずは、ファイルを保存します。ここではプロジェクト名を使ってkimkon2.sdcというファイル名で保存します。[File]-[Save As]をクリックしファイルを保存します。
6.次にコメント行を入れます。次のように入力します。
#Clock
7.入力ピンの設定を行います。ここではBase Clockの設定をおこないます。新しい行にカーソルを移して[Edit]-[Insert Cnstraint]-[Create Clock]クリックします。
8.次の画面のPeriodにクロック周期を入力します。ここでは、100000(10万)nsを入力しました。
9.Targetの[...]をクリックしクロック接続されている端子を選択します。ここではPush_SWです。次の画面のCollectionで「GetPorts」を選択して[List]をクリックします。左側の窓で「Push_SW」を選択して[>]をクリックして右側の窓にコピーし[OK]。上記画面のTargetに端子名が表示されたら[Insert]
10.次の行に次のコメントを入力します。
#I/O
11.次に出力端子にタイミングを無視する設定をします。カーソルを次の行に移して[Edit]-[Insert Cnstraint]-[Set False Path]をクリックします。
12.次の画面で、「To」の[...]をクリックして無視する出力ポートを選択します。ここでは「kin」と「kon」です。選択したら[Insert]。ちなみに入力端子のタイミングを無視する設定をする場合はFrom側にポート入力します。
13.設定が終わるとエディタの内容は次のようになります。ここで[File]-[Save]をクリックして内容を上書き保存します。
TimeQuestで簡単な設定確認を行います。
1.TimeQestのTask窓の[Netlist Setup]の[Creat Timing Netlist]⇒[Read SDC File]⇒[Update Timming Netlist]の順にクリックして実行します。
2.クロック設定の確認をします。Task窓の[Diagnostic]-[ReportClocks]をクリックします。次の画面になりFrequencyが1GHzになっているとエラーです。指定した周期(Period)に対応した周波数になっていることを確認します。
3.設定漏れの端子が無いか確認します。Task窓の[Diagnostic]-[Report Unconstrained Paths]をクリックします。次の画面になりUnconstrained ClocksやUnconstrained Input PortsやUnconstrained Output Portsが0(ゼロ)になっていることを確認します。
設定が終わったところで、Quartusに戻り再度コンパイルを行います。
1..[Processing]-[Start Compilation]でコンパイルを行います。
2.設定がうまくいっていれば、「Table of Contents」内の「TimeQuest Timing
Analyzer」赤くなっていないと思います。