1. 程式人生 > >System Generator從入門到放棄(一)-安裝與使用

System Generator從入門到放棄(一)-安裝與使用

System Generator從入門到放棄(一)-安裝與使用


文章目錄


一、安裝與使用

1、簡介

摘自:百度百科

  System Generator是Xilinx公司進行數字訊號處理開發的一種設計工具,它通過將Xilinx開發的一些模組嵌入到Simulink的庫中,可以在Simulink中進行定點模擬,可以設定定點訊號的型別,這樣就可以比較定點模擬與浮點模擬的區別。並且可以生成HDL檔案,或者網表,可以在ISE中進行呼叫。或者直接生成位元流下載檔案。能夠加快DSP系統的開發進度。

2、功能介紹

摘自:百度百科
  用SystemGenerator進行模擬

  • 1、必須包含的模組:Gateway In、Gateway Out、SystemGenerator、以及Xilinx定點運算單元。
  • 2、對於系統設計中有精確時鐘限制的外部介面模組,使用System
    Generator設計不是最佳方法,此時可以利用HDL等方法實現,然後通過System Generator工具提供的Black
    Box匯入Sysgen工程中即可。

  SystemGenerator Blockset
1、主要包括:Xilinx Blockset、XilinxPreference Blockset 和 Xilinx XtremDSP Kit三個庫函式塊。
2、XilinxBlockset包含了所有在Simulink中構建數字訊號處理系統和其他FPGA數字系統的模組。
3、XilinxPreferenceBlockset 是更高層次的模組,都是由Xilinx Blockset中的模組組成的,降低了開發難度,並且具有較高的可靠性。

  訊號資料型別

  • 1、XilinxBlock的輸出格式可以設定為:Fullprecision和User-defined precision Fullprecision:會在運算中自動進行位寬擴充套件User-definedprecision:對輸出結果進行截位(wrap)或飽和(saturate)處理(使用者設定)。
  • 2、在SystemGenerator中,點選Format –>Port/Signal Displays –> Port Data Type即可顯示每個模組輸入輸出的資料型別。
  • 3、當Simulink無法確定資料型別和取樣速率時,會報錯,通常這種情況出現在有反饋的情況下。這時可以通過新增一個Assert模組對訊號進行強制制定或重新定義。且不佔用硬體資源。
  • 4、GatewayIn可以設定SamplePeriod,值越大,取樣點越少。一般來說,對於同一組Gateway In,sample
    period應該是一樣的,即取樣率時一樣的。所以當修改一個Gateway In的Sample Period時,記得同時更新同一級的Gateway In的Sample Period。
  • 5、取樣率變換,利用模組:Up sample和Down
    sample。SystemGenerator中不同顏色代表不同的取樣率。可以點選Format –> Sample Time Colors
      視訊介紹
      這部分Xilinx官方有相關的視訊介紹:
    https://www.xilinx.com/video/hardware/hardware-co-simulation-vivado-system-generator-for-dsp.html

3、System Generator安裝

  System Generator軟體不需要單獨安裝,在安裝Vivado時會有相關的選項,注意勾選就可以了。但是System Generator軟體需要同MATLAB一同使用,並且MATLAB版本必須與System Generator版本相容。版本相容資訊需要在安裝MATLAB或者Vivado時進行相關的查詢,具體可以在ug973(13/81頁,每個版本不同)官方文件中中查詢,查詢地址:https://www.xilinx.com/support/documentation-navigation/see-all-versions.html?xlnxproducttypes=Design Tools&xlnxdocumentid=UG973
  有各個版本的介紹
在這裡插入圖片描述
  以2018.2版本為例:
  PS:在開啟Xilinx官方文件時(pdf),儘量在官網中瀏覽器中開啟,這樣PDF中的超連結才可以直接開啟,否則有些連線沒辦法開啟
在這裡插入圖片描述
  基於上表,相關設計環境如下:

  • WIN10 64位
  • Vivado 2018.2
  • System Generator 2018.2
  • MATLAB R2017
      在安裝Vivado的過程中,會出現配置MATLAB的介面,如果安裝時沒有配置,可以在“開始->Xilinx Design Tools->System Generator 2018.2 MATLAB Configurator”工具中修改(具體路徑可能會不同,右鍵->更多->開啟檔案位置->右鍵->以管理員身份執行):
    具體操作詳見:https://blog.csdn.net/Pieces_thinking/article/details/80753739

4、System Generator簡單入門

  執行System Generator(注意不要直接執行MATLAB,否則無法向Simulink中新增Block),在命令列中輸入simulink後回車(或者點選“主頁”標籤中的Simulink按鈕),開啟Simulink;
  1.點選“Blank Model”建立一個空模型

在這裡插入圖片描述
  2.點選“Library Browser”開啟Simulink庫

在這裡插入圖片描述

  3.新增block到Simulink
  列表中可以找到“Xilinx Blockset”和“Xilinx Reference Blockset”,其中的模組即為System Generator設計時使用的模組。
在這裡插入圖片描述
  新增block到Simulink中有兩種方法:

  • 像上述一樣開啟庫,在庫中搜索,然後按住滑鼠拖拽到工作薄上即可;
  • 在Simulink空白處點右鍵->Xilinx BlockAdd,在出現的小視窗中搜索,雙擊可新增到模型中。

  第一個方法適合於在庫中尋找未知的block;如果已經對某block很熟悉,用第二個方法更方便。

  4.簡單小例項
  新增System Generator、Gateway In、Gateway Out、Delay、Constant(不是Xilinx Blockset中的那個)、Scope,按下圖連線:
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述
  Constant輸出一個常數值1,Delay延遲一個取樣週期,其它block的具體用法可參考本系列後面文章。直接點選Run執行,開啟Scope,結果如下:

在這裡插入圖片描述
  看到經過1個單位延遲後,輸出保持為1。儲存Model,Simulink的模型檔案儲存為“.slx”格式。本系列後面文章將不再講述如何新建模型與新增block。

5、System Generator後續學習參考資料

◎ug948:講述了6個使用System Generator的基本實驗,熟悉軟體特性。
◎ug958:介紹了System Generator的所有Block相關知識(在Simulink中新增好Block後,右鍵->help,也可以查閱到相關介紹)。
◎ug897:詳細介紹了System Generator的所有功能特性。
◎MATLAB(通過System Generator啟動)中輸入“xlDoc”可查閱System Generator的幫助文件;輸入“demo blockset xilinx”可查閱官方示例。
  本系列會將官方的白皮書和相關歷程奉獻出來。