精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在SaberRD中進行FPGA的系統仿真

冬至子 ? 來源:Saber仿真 ? 作者:Greatalent ? 2023-12-05 11:33 ? 次閱讀

前言

在自動化領域,FPGA(現場可編程門陣列)的作用越來越重要。這些設備構成控制單元的大腦,控制單元包含控制系統各種功能的邏輯。

從環境中收集信息的不同傳感器信號被傳遞到FPGA,并驅動必要的控制輸出。隨著系統復雜性的增加,迫切需要對各種輸入和輸出條件下的電路行為有一個全面了解。

SaberRD是一款綜合仿真軟件,可以虛擬設計和驗證任何與電氣系統有關的東西。健壯的仿真引擎為模擬和混合信號系統提供了可靠的資源。該仿真器支持VHDL-AMS,它是IEEE標準VHDL語言的擴展,主要用于FPGA和其他數字系統的建模。

此設計示例演示了在SaberRD中包含FPGA的系統仿真。該設備使用VHDL語言建模,系統仿真的目的是為監視器提供適當的信號,系統通過VGA接口將八種顏色的視頻發送到顯示器。

VGA顯示系統介紹

當今的系統變得越來越復雜,必須針對所有可能的組合對系統進行分析。以下分別說明示例系統的詳細信息。

1、 數字系統仿真

數字系統由以離散步長改變信號狀態的代碼組成。FPGA是數字系統,它接收數字輸入并根據設備上編程的邏輯提供數字輸出。來自各種外設(例如傳感器和驅動器)的信息通常是模擬性質的,使用模數轉換器將信息傳輸到FPGA。同樣,FPGA的輸出通過接口將數字信號轉換為有意義的輸出。

此類設備可以使用VHDL語言輕松建模。隨著仿真需求的增加,大多數設備制造商通常會在組件上附帶VHDL或其他仿真模型,以便設計工程師可以在原型構建過程之前仿真完整的行為。SaberRD支持VHDL-AMS語言,它是VHDL語言的混合信號擴展。因此,這些模型可以很容易地用于仿真使用這些FPGA或其他數字系統的系統。

2、 VGA顯示系統

在本設計示例中,VGA 顯示由 FPGA的三位數字輸出構成。數字輸出由兩個模塊實現,如圖 1所示。第一個產生水平和垂直同步信號的模塊定義為同步模塊(sync_mod),第一個模塊還產生第二個模塊圖像生成模塊(img_gen) 所需的信號。

圖片

圖 1帶有兩個模塊的頂層原理圖

img_gen模塊的輸出是三位輸出。這意味著VGA顯示器中可以有8種組合,因此可以有8種顏色。位組合的數字輸出與VGA顏色輸出對應如表 1所示。

表 1數字輸出與VGA顏色輸出對應表

圖片

3、 同步模塊

同步模塊為VGA顯示器生成垂直和水平同步信號。該模塊具有三個輸入,它們是:

  1. 開始 --- 這將激活/停用模塊
  2. 時鐘 --- 系統時鐘
  3. 重置 --- 重置同步模塊

兩個輸出信號是垂直和水平同步信號,它們直接連接到 VGA 連接器

除了兩個輸出之外,還有三個信號輸入到圖像生成模塊。其中兩個輸出x_control和y_control控制 x 和 y 像素。此設計默認的VGA顯示分辨率為640 X 480。因此,x_control 從 0 計數到639,y_control 從 0 計數到479。為了完成此任務,模塊中創建了兩個計數器模型。一個計數器滿足水平分辨率,另一個滿足垂直分辨率。第三個信號是 Video_on 信號,用于啟用/禁用視頻。代表同步模塊的符號如圖 2所示。

圖片

圖2同步模塊符號圖

4、 圖像生成模塊

該模塊為VGA顯示器生成RGB輸出,該模塊具有在顯示中生成所需塊的部分。如前所述,三個RGB輸出是數字信號,可產生八種組合,從而在顯示中產生八種顏色。圖像生成模塊的符號如圖 3所示。

圖片

圖 3圖像生成模塊符號圖

該模塊的VHDL模型有幾個部分來描述輸出數字信號。在VGA顯示器上生成的最終圖像用于PONG游戲,該游戲具有三個主要組件,如圖 4所示。

圖片

圖 4圖像生成模塊在輸出端的VGA顯示

在VGA顯示器上看到的PONG游戲中的三個主要組件是:

  1. Wall - 限制球越過并在屏幕上以黑色顯示。
  2. Ball - 在屏幕中移動并以綠色顯示。
  3. Bar – bar由img_gen模塊上的button_r和button_l輸入控制,并以藍色顯示。

圖像生成模塊生成數字輸出以顯示三種顏色,屏幕的其余部分為紅色。以下是 RGB 數字引腳上預期的輸出:

表2圖像生成模塊期望的輸出

圖片

圖像生成模塊的輸入x_control和y_control定義了顯示器上的像素,x_control和 y_control給定值下的顏色輸出由圖 4決定。對于y_control的每個值,x_control的值從0掃描到639,,y_control的值從0掃到469。這樣就形成了一個640X480分辨率的視頻,完成了一個顯示周期。這是由圖像生成模塊的video_on輸入決定的。

SaberRD中仿真與分析

SaberRD仿真平臺中主要進行瞬態分析,它根據時間仿真系統性能。SaberRD運行關于時間的模擬,并繪制各種信號以檢查系統輸出。在SaberRD中運行仿真有幾個選項可用于可視化電路中不同部分的操作。用于運行各種分析、繪制結果、測量各種參數等的自動化工具對于提高設計工程師的生產力非常有用。

該設計還附帶一個運行瞬態分析并繪制rgb輸出信號的實驗。除此之外,video_on信號以及指定顯示器上像素的 x 和 y 值。

1、 如何運行實驗Experiment

a、下載設計文件中,打開設計vhdl_fpga_demo.ai_dsn。

b、轉到Simulate選項卡,在Analysis列表中選擇Experiment,在屏幕右邊的Experiments列表中選擇transient_analysis。開始仿真。

c、仿真完成后,results窗格將顯示圖表和實驗報告。

d、雙擊實驗報告,在報告中可以看到Ball和Bar寬度的測量值。

e、雙擊圖表“key_outputs”,如圖 5所示的波形圖顯示出來。

2、 結果和觀察

了解設計的預期結果以了解仿真結果是否符合預期非常重要。設計的期望已經在上面的部分中解釋過。運行實驗后,結果窗格中會顯示圖表和實驗報告。雙擊圖表“key_outputs”結果如下圖 5。

圖片

圖5瞬態仿真波形圖

如前所述,對于變量“y”的每個值,變量“x”從 0變為639?!畒’ 的值從0到479以完成一個顯示周期。這是640X480分辨率VGA顯示器的定義。

如圖 4所示,顯示和背景中有三個項目。這會在輸出引腳上產生rgb(0)、rgb(1)和rgb(2)的四種組合,如表1中所述。圖 5中提到了在一個顯示周期中的四個區域。

當圖表放大到區域1時,信號如圖 6所示??梢钥闯?rgb 輸出為 0、0 和 0,這表示黑色表示墻壁。

圖片

圖6黑色墻壁的RGB輸出狀態

區域2被縮放以查看屏幕上顯示的球。球是綠色的,輸出應該是010。圖 7中顯示的放大區域也證實了這一點。

圖片

圖7綠色球的RGB輸出狀態

區域3表示背景,顏色為紅色。紅色的代碼是100,如下圖 8所示。

圖片

圖8紅色背景的RGB輸出

顯示器上的最后一個對象是藍色的Bar,RGB輸出應為001,如下圖 9所示。

圖片

圖9藍色Bar的RGB輸出

除此之外,圖表上還有兩個測量值。這些測量以像素為單位顯示寬度,其中Ball的寬度為20,Bar 的寬度為120像素。這可以通過打開img_gen.vhd模型來驗證,如下圖 10所示。

圖片

圖10圖像生成模塊代碼

按比例,Ball和Bar的寬度可以在實驗報告中驗證,如圖 11所示。

圖片

圖11測量顯示Ball和Bar的寬度

這里描述了圖 10中紅框中顯示的Bar和Ball寬度如何與圖 11中的脈沖寬度測量相關。一個video_on脈沖寬度,對于給定的“y”,在此期間,“x”像素從0變為639 ,如圖 12所示,為1.28ms。在此期間 x 像素為藍色的時間為240us。

圖片

圖12以像素為單位計算Bar的寬度

因此,以像素為單位的Bar寬度為

圖片

同樣,以像素為單位的 Ball 的寬度為

圖片

結論

該設計示例表明 FPGA 的仿真可以在SaberRD 中執行,并且自動化方法有助于獲得易于閱讀的結果。在仿真工具中執行的詳細分析表明,電路的輸出符合設計要求和所需的輸出。因此,SaberRD 被證明是用于仿真涉及到 FPGA 的設計的有前途的解決方案。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1626

    文章

    21678

    瀏覽量

    602037
  • 連接器
    +關注

    關注

    98

    文章

    14345

    瀏覽量

    136207
  • RGB
    RGB
    +關注

    關注

    4

    文章

    798

    瀏覽量

    58394
  • VHDL語言
    +關注

    關注

    1

    文章

    113

    瀏覽量

    17988
  • VGA接口顯示
    +關注

    關注

    0

    文章

    3

    瀏覽量

    969
收藏 人收藏

    評論

    相關推薦

    Matlab/Simulink中進行永磁同步電機流頻比I/F控制系統仿真分析

    本章節采用流頻比I/F控制方法驅動永磁同步電機的轉動,首先分析流頻比I/F的控制原理,然后Matlab/Simulink中進行永磁同步電機流頻比I/F控制系統仿真分析,為后續PMS
    發表于 06-08 15:31 ?1298次閱讀
    <b class='flag-5'>在</b>Matlab/Simulink<b class='flag-5'>中進行</b>永磁同步電機流頻比I/F控制<b class='flag-5'>系統</b>的<b class='flag-5'>仿真</b>分析

    Quartus ii 13.1中進行波形仿真時出現錯誤,求大神解答

    Quartus ii 13.1中進行波形仿真時出現錯誤,# ** Error: parity.vwf.vt(30): near ",": syntax error
    發表于 12-21 20:06

    基于FPGA的數據采集系統求助

    數字下變頻,抽取,封裝為幀,再通過千兆以太網傳輸到PC進行保存。但是由于這個系統的開發是比較復雜的,因此本人想在進行實際硬件系統設計之前先進行
    發表于 04-28 09:56

    如何在ADS中進行EM仿真

    先生,我想對90度支線耦合器進行EM仿真,我不知道如何在ADS中進行EM仿真。請有人知道EM模擬的PDF幫助文檔。你告訴我了嗎 以上來自于谷歌翻譯 以下為原文Sir, I want
    發表于 12-27 16:28

    stmcubeMX中進行配置使用freertos系統

    的TOTAL_HEAP_SIZE參數,建的任務內存不能超過這個數值;配置比較簡單,只需要在上面選中使用哪個版本,然后在下面“tasks and queues”中添加任務這樣就可以了stmcubeMX中進行配置的時候,如果使用了freertos
    發表于 08-10 07:12

    如何在ROBOGUIDE環境中進行離線編程和仿真?

    如何在ROBOGUIDE環境中進行離線編程和仿真?如何學習FANUC Robot編程?
    發表于 09-18 06:33

    Altium Designer的Protel中進行混合信號

    Altium Designer 的Protel 中進行混合信號功能仿真:1 混合信號仿真原理圖的環境下
    發表于 09-25 15:39 ?0次下載

    調制數字系統中進行精確的非線性測量

    調制數字系統中進行精確的非線性測量 隨著日益增加的智能手機和無線互聯網3G覆蓋范圍以及4G系統即將引入帶來的持續壓力,數字通信射頻組件
    發表于 04-08 14:42 ?756次閱讀
    <b class='flag-5'>在</b>調制數字<b class='flag-5'>系統</b><b class='flag-5'>中進行</b>精確的非線性測量

    Protel DXP中進行FPGA設計和仿真

    Protel DXP中進行FPGA設計和仿真
    發表于 12-25 10:09 ?0次下載

    大型交直流系統的PSCAD建模與仿真

    本文簡單介紹了電力系統暫態仿真軟件PSCAD的功能、元件庫和仿真程序執行的過程。PSCAD中進行了交直流電力
    發表于 05-11 11:25 ?19次下載

    NI VeriStand環境中進行FPGA相關配置

    本文主要介紹了用戶如何在NI VeriStand環境中進行基于FPGA的相關配置。并以使用7851R輸出PWM波為例,敘述了VeriStand 2011運行環境中所需要的所有工作。 NI
    發表于 11-18 06:36 ?4825次閱讀
    <b class='flag-5'>在</b>NI VeriStand環境<b class='flag-5'>中進行</b><b class='flag-5'>FPGA</b>相關配置

    如何使用FPGA進行仿真系統數據采集控制器IP核設計的資料概述

    介紹了大型工業模擬仿真系統中,利用FPGA和軟IP核實現數據采集及收發控制的方案,并對其進行設計實現。重點闡述了
    發表于 11-07 11:14 ?20次下載
    如何使用<b class='flag-5'>FPGA</b><b class='flag-5'>進行</b><b class='flag-5'>仿真</b><b class='flag-5'>系統</b>數據采集控制器IP核設計的資料概述

    SDAccel中進行調試

    SDAccel中進行調試
    的頭像 發表于 11-29 06:20 ?1879次閱讀

    PSIM中進行VHDL的聯合仿真

    目前市面上能支持HDL語言聯合仿真的電源仿真軟件并不多,能支持VHDL聯合仿真的就更少了,PSIM軟件支持VHDL及verilogHDL聯合仿真,這樣對于快速驗證HDL實現的新想法是十
    的頭像 發表于 05-23 11:38 ?3113次閱讀
    <b class='flag-5'>在</b>PSIM<b class='flag-5'>中進行</b>VHDL的聯合<b class='flag-5'>仿真</b>

    fpga仿真器是什么?它有哪些優勢?

    FPGA仿真器是一種用于模擬FPGA(現場可編程門陣列)硬件行為的軟件工具。它通過模擬FPGA內部的邏輯電路、時序和接口等,幫助工程師
    的頭像 發表于 03-15 15:15 ?1600次閱讀