在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

SystemVerilog常用可綜合IP模塊庫

OpenFPGA ? 來源:OpenFPGA ? 作者:OpenFPGA ? 2022-05-05 09:48 ? 次閱讀

SystemVerilog常用可綜合IP模塊庫


想擁有自己的SystemVerilog IP庫嗎?設計時一個快捷鍵就能集成到自己的設計,酷炫的設計你也可以擁有!

每個公司應該都會維護屬于自己公司風格的IP庫,作為個人學習或者持續使用的方式,這種方法很有用。今天肯定不是分享我司的IP庫,而是一個開源庫,每個人都可以使用、維護或者修改,當然作為學習(多人維護)也是不可多得的資料。把該庫集成到自己常用的文本編輯器(SublimeVScodeVim等等)可以很快完成代碼設計。

簡介

這是verilog/systemverilog 可綜合模塊的集合。

所有代碼在典型的 FPGA 和主流 FPGA 供應商中都具有高度可重用性。

本項目是幾個常用可綜合模塊集合的集合,下面分別介紹這些項目。

工程鏈接

?

https://github.com/suisuisi/basic_systemverilog

詳細介紹

basic_verilog

8c596972-cc0b-11ec-bce3-dac502259ad0.png

文件夾外的文件根據文件名很容易判斷其用途,下面著重介紹文件夾內部文件:

目錄 描述
Advanced Synthesis Cookbook/ Altera cookbook中的有用代碼
KCPSM6_Release9_30Sept14/ Xilinx 的 Picoblaze 軟處理器
pacoblaze-2.2/ 適用于 Altera 器件的 Picoblaze 版本
example_projects/ FPGA 項目示例
benchmark_projects/ 多種 FPGA 類型的編譯時間基準
scripts/ 有用的 TCL 腳本

注1:cookbook:類似技巧大全的意思

這里還有一個TCL腳本文件,再簡單介紹一下:

腳本 描述
scripts/allow_undefined_ports.tcl 允許為 Vivado IDE 生成帶有未定義引腳的測試項目
scripts/compile_quartus.tcl Quartus IDE 中用于命令行項目編譯的樣板腳本
scripts/convert_sof_to_jam.bat Altera/Intel FPGA 配置文件轉換器
scripts/convert_sof_to_rbf.bat 另一個 Altera/Intel FPGA 配置文件轉換器
scripts/iverilog_compile.tcl 使用 iverilog 工具編譯 Verilog 源代碼并在 gtkwave 工具中運行模擬的完整腳本
scripts/modelsim_compile.tclModelsim 無項目模式編譯腳本
scripts/post_flow_quartus.tcl 英特爾 Quartus IDE 的自定義報告或報告分析
scripts/post_flow_vivado.tcl Xilinx Vivado IDE 的自定義報告或報告分析
scripts/program_all.bat Altera/Intel FPGA 的命令行編程器示例
scripts/project_version_auto_increment.tcl Quartus IDE 的項目版本自動增量腳本
scripts/quartus_system_console_init.tcl 通過 JTAG-to-Avalon-MM 橋 IP 讀/寫 Avalon-MM 的初始化腳本
scripts/set_project_directory.tcl 更改當前目錄以匹配 Vivado IDE 中的項目目錄
scripts/write_avalon_mm_from_file.tcl 通過 JTAG-to-Avalon-MM 橋 IP 將二進制文件中的批量二進制數據寫入 Avalon-MM

注2:Avalon:ALTERA公司FPGA內部使用的總線,下圖是典型Altera FPGA系統

8c730bde-cc0b-11ec-bce3-dac502259ad0.png

其他模塊說明

腳本 描述
ActionBurst.v 多通道一次性觸發模塊
ActionBurst2.v 可變步長的多通道一次性觸發
adder_tree.sv 將多個值并行相加
bin2gray.sv 格雷碼到二進制轉換器
bin2pos.sv 將二進制編碼值轉換為one-hot代碼
clk_divider.sv 寬參考時鐘分頻器
debounce.v 輸入按鈕的兩周期去抖動
delay.sv 用于產生靜態延遲或跨時鐘域同步的有用模塊
dynamic_delay.sv 任意輸入信號的動態延遲
edge_detect.sv 組合邊沿檢測器,在每個信號邊沿上提供一個滴答脈沖
lifo.sv 單時鐘 LIFO 緩沖器(堆棧)實現
NDivide.v 原始整數除法器
prbs_gen_chk.sv PRBS 模式生成器或檢查器
pulse_gen.sv 產生具有給定寬度和延遲的脈沖
spi_master.sv 通用spi主模塊
UartRx.v 簡單明了的 UART 接收器
UARTTX.v 簡單明了的 UART 發送器
uart_rx_shifter.sv 類似 UART 的接收器移位器,用于 FPGA 內部或 FPGA 之間的簡單同步消息傳遞
uart_rx_shifter.sv 類似 UART 的接收器移位器,用于 FPGA 內部或 FPGA 之間的簡單同步消息傳遞
UartRxExtreme.v 極小的 UART 接收器實現
UartTxExtreme.v 極小的 UART 發送器實現
... ...

generic_systemverilog_designs_library

  • binary_counter

SystemVerilog 中具有異步復位的 n 位二進制計數器。

  • binary_to_gray

SystemVerilog中的n位二進制到格雷碼組合轉換器電路。

  • demultiplexer

具有寬度和輸出端口數量參數化的解復用器。

  • full_adder

SystemVerilog 中的 n 位全加器

  • full_subtractor

SystemVerilog 中的 n 位全減法器

  • gray_counter

使用 SystemVerilog 中的二進制計數器和二進制到格雷碼組合轉換器電路實現的具有異步復位的 n 位格雷碼計數器。

  • multiplexer

具有寬度和輸入端口數量參數化的多路復用器。

SvLibDR

包括串口和SPI接口的可綜合IP模塊

SystemVerilog-Bitmap-Library-AXI-Image-VIP

描述

要驗證視頻或圖像處理 IP,可能需要將真實圖像讀取到設計中,并通過接口發送其數據。然后,從界面獲取輸出,并將其轉換為新圖像,保存或比較。

為了解決這個復雜的問題,設計了這個庫,它可以幫助您簡化設計流程。使用一些簡單的 API 可以輕松地在測試臺中讀取和寫入標準位圖文件 (.BMP)。并且,使用 AXI-Stream Video Image VIP,可以輕松地將圖像發送到與 Xilinx 用戶指南 UG934 兼容的標準 AXI-Stream 視頻接口,從輸出接口接收圖像并保存。

位圖處理庫可以通過 System Verilog 將 Windows 位圖文件 (.BMP) 讀取和寫入位數組(虛擬內存),以進行 IP 驗證。該庫支持 24 位和 32 位位圖讀入和 32 位位圖寫出。

使用位圖處理庫的 AXI-Stream Video Image VIP?!癮xi_stream_video_image_in_vip”IP 可以將位圖文件讀入內存,并通過 AXI-Stream 視頻接口(在 Xilinx 用戶指南 UG934 中定義)發送。而“axi_stream_video_image_out_vip”IP可以監控一個AXI-Stream接口,獲取在接口上傳輸的幀并保存到位圖文件中。

一般信息

支持的位圖:

輸入:24-bpp/32-bpp RGB/RGBA 位圖輸出:32-bpp RGBA 位圖

這個庫的優勢

  • 簡單的 API
  • 開源
  • 與流行的 EDA 工具兼容(在 Modelsim 和 Qustasim 上測試)

包中的文件

文件 描述
bitmap_processing.sv 位圖處理庫。
axi_stream_video_image.sv AXI 流視頻圖像庫(用于回調類)。
axi_stream_video_image_in_vip.sv VIP 用于讀取位圖并將其發送到接口。
axi_stream_video_image_out_vip.sv VIP 用于監控界面并將圖像保存為位圖。
axi_stream_video_image_example.sv 如何使用 VIP 和庫的簡單示例。

關于包使用等詳細信息,請查看項目介紹。

總結

今天只介紹了一個項目,這個項目可以給大家提供一個思路尤其對于沒有工作或者剛入門不久的同行,自己在編寫代碼時要想著可繼承性,這樣在以后做類似項目時可以借用,并且長期維護一個代碼對于這個模塊的理解有很大幫助。

最后,還是感謝各個大佬開源的項目,讓我們受益匪淺。后面有什么感興趣方面的項目,大家可以在后臺留言或者加微信留言,今天就到這,我是爆肝的碎碎思,期待下期文章與你相見。

審核編輯 :李倩


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

    關注

    0

    文章

    166

    瀏覽量

    37603
  • 編輯器
    +關注

    關注

    1

    文章

    818

    瀏覽量

    31819
  • 模塊庫
    +關注

    關注

    0

    文章

    2

    瀏覽量

    5107

原文標題:優秀的 Verilog/FPGA開源項目介紹(二十二)- SystemVerilog常用可綜合IP模塊庫

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    海外住宅IP代理優勢綜合分析

    海外住宅IP代理憑借其獨特的資源特性與技術架構,在跨境電商、數據采集、廣告投放等場景中展現出顯著優勢。以下從核心功能、技術保障、合規性及適用場景等維度進行詳細分析: 一、隱匿性與安全性提升 真實IP
    的頭像 發表于 04-25 10:28 ?191次閱讀

    博世GTM IP模塊架構介紹

    上篇文章我們介紹了博世GTM IP模塊的核心功能及基礎結構模塊。本篇文章將繼續解析GTM模塊架構,重點介紹I/O模塊,特殊功能
    的頭像 發表于 03-07 17:50 ?816次閱讀
    博世GTM <b class='flag-5'>IP</b><b class='flag-5'>模塊</b>架構介紹

    Linux ip命令常用操作

    Linux?ip命令常用操作 在Linux系統中,ip命令是用于管理網絡接口和路由的強大工具。相比于舊的?ifconfig命令,ip命令提供了更多的功能和更細粒度的控制。本文將詳細介紹
    的頭像 發表于 02-19 10:23 ?591次閱讀

    IP定位離線的特點以及作用

    很多人知道IP定位,但是對離線不是很理解。這篇文章會和大家闡述離線的概念、特點以及具體有什么作用。 IP定位路徑https://www.ipdatacloud.com/?utm-s
    的頭像 發表于 12-06 09:56 ?498次閱讀

    IP地址在網絡安全中有哪些作用

    IP地址也叫IP地址數據,由數據員通過多種技術手段搜集而來的,不單單如此,還有一部分運維人員來負責對數據進行維護和更新。數據
    的頭像 發表于 12-04 10:53 ?507次閱讀
    <b class='flag-5'>IP</b>地址<b class='flag-5'>庫</b>在網絡安全中有哪些作用

    HAL和標準的區別 HAL與CMSIS的關系

    在嵌入式系統開發中,HAL(硬件抽象層)和標準是兩種常用的軟件,它們在功能和使用場景上有所不同。 1. 標準 標準
    的頭像 發表于 12-02 14:02 ?3028次閱讀

    半導體IP:芯片制造中不可小覷的關鍵隱藏環節

    。 圖源:億歐智 IP,即知識產權(Intellectual Property),在芯片設計中特指那些經過驗證的、重復利用的電路模塊,也被稱為I
    的頭像 發表于 11-28 10:09 ?954次閱讀
    半導體<b class='flag-5'>IP</b>:芯片制造中不可小覷的關鍵隱藏環節

    IP地址歸屬地離線——網絡安全行業的基石

    IP地址因為其在互聯網中的必要性與特殊性成為了是網絡安全行業的第一道防線。一個IP地址歸屬地離線包含大洲、國家、省市、經緯度、郵編等內容,這些信息會幫助網絡安全防御判斷訪問流量的安全性。所以
    的頭像 發表于 11-19 11:21 ?589次閱讀

    Vivado 2024.1版本的新特性(2)

    綜合角度看,Vivado 2024.1對SystemVerilog和VHDL-2019的一些特性開始支持。先看SystemVerilog
    的頭像 發表于 09-18 10:34 ?1722次閱讀
    Vivado 2024.1版本的新特性(2)

    一種常用嵌入式開發代碼

    使用開源協議:GPL-2.0varch簡介varch(we-architecture,意為我們的框架)是嵌入式C語言常用代碼模塊,包含了嵌入式中
    的頭像 發表于 09-04 08:06 ?807次閱讀
    一種<b class='flag-5'>常用</b>嵌入式開發代碼<b class='flag-5'>庫</b>

    IP地址:從收集到處理

    準確的IP地址對于網絡管理、安全防護、地理定位等眾多領域都十分重要。然而,原始的IP地址數據往往存在著各種問題,如不完整、不準確、重復等,因此,對IP地址
    的頭像 發表于 08-26 11:47 ?656次閱讀
    <b class='flag-5'>IP</b>地址<b class='flag-5'>庫</b>:從收集到處理

    S7-200指令

    S7-200文件是西門子旗下同款編程軟件的可調用數據,安裝也可直接覆蓋進行使用。常用的數據,簡便方便調用。在PLC中調試中節省時間。
    發表于 07-23 12:29 ?7次下載

    Modbus轉Ethernet IP網關模塊與匯川PLC通訊案例

    Modbus轉Ethernet/IP網關模塊(XD-MDEP100)是一種用于將Modbus協議轉換為Ethernet/IP協議的設備。在匯川PLC通訊中,使用Modbus轉Ethernet/
    的頭像 發表于 07-17 09:39 ?2557次閱讀
    Modbus轉Ethernet <b class='flag-5'>IP</b>網關<b class='flag-5'>模塊</b>與匯川PLC通訊案例

    IP地址定位與GPS定位:技術解析與應用比較

    (InternetProtocolAddress)是分配給聯網設備的唯一標識符。IP地址定位通過分析設備的IP地址,推斷其地理位置。IP地址定位主要通過以下方式實現: - 數據查詢:
    的頭像 發表于 07-16 13:50 ?1009次閱讀

    深度學習常用的Python

    深度學習常用的Python,包括核心、可視化工具、深度學習框架、自然語言處理以及數據抓取等,并詳細分析它們的功能和優勢。
    的頭像 發表于 07-03 16:04 ?1086次閱讀
    主站蜘蛛池模板: 欧美精品福利 | ww欧美 | 香蕉视频在线观看国产 | 天天射天天干天天操 | 狠狠色噜噜狠狠狠狠97老肥女 | 俺去啦最新网址 | 一本到卡二卡三卡视频 | 欧美涩色 | 黄色日比| 天天射综合网站 | 黄色录像大全 | 日本拍拍视频 | 永久免费mv网站入口 | 性孕妇洗澡video国产 | 人人插人人费 | 婷婷开心六月久久综合丁香 | 免费人成在线观看网站品爱网日本 | 久色乳综合思思在线视频 | 色片免费网站 | 免费公开在线视频 | 俺去鲁婷婷六月色综合 | 天天想天天干 | 1024手机看片日韩 | 免费日韩三级 | 一区二区不卡视频在线观看 | 丁香花在线影院观看在线播放 | 成人福利在线视频 | 香港三级在线视频 | 久操视频免费 | 午夜香蕉视频 | 国产在线观看www鲁啊鲁免费 | 中文字幕国产一区 | 九九福利 | 欧美二级黄色片 | 精品在线一区二区 | 欧美亚洲综合另类型色妞 | 六月激情丁香 | 日本特黄特色特爽大片老鸭 | 中国女人a毛片免费全部播放 | 欧美1314www伊人久久香网 | 毛片基地在线 |