FPGA有哪些优质的带源码的IP开源网站?
这是某乎上的一个问题,我觉得还不错,今天就系统性的总结一下

1、fpga4fun
https://www.fpga4fun.com/
你能在这个网站上找到什么?
您可以找到信息页面,以及使用 FPGA 板构建的 FPGA 项目。
注重点:项目。
FPGA 项目使用一种称为 Verilog 的语言,您需要学习它才能理解项目。但是通过此处显示的示例以及其他可用的在线资源,这并不太难。

上面就是整个网站上的内容(翻译过的,原英文网站),不能用丰富形容,简直是太丰富,常用的接口,简单的项目(很具有代表性的项目),不说什么了,赶快去试一试吧。
2、OPENCORES
https://opencores.org/

Opencores是一个开源的数字电路设计社区,它提供了免费的开源IP(知识产权)核心,让工程师和爱好者们可以使用这些IP核心来构建自己的数字电路设计。Opencores的IP核心包括处理器、总线接口、视频、音频和其他数字电路组件,这些核心都是由社区的成员设计和共享的。Opencores的使命是提供一种可持续的方式来设计数字电路,使任何人都可以访问免费的IP核心,从而降低数字电路设计的门槛,并促进创新和知识共享。Opencores也提供了在线论坛和博客等社区资源,使成员可以交流想法和经验,并获得支持和帮助。
3、OpenHW Group
https://github.com/openhwgroup
https://www.openhwgroup.org/

OpenHW Group 是一个非营利性组织,旨在促进和推广开放源代码硬件设计。该组织由一群来自不同公司、组织和学术界的人士于2019年成立,致力于为开放硬件社区提供基础技术、工具、流程和法律框架等支持。其主要目标是推动开放源代码硬件的采用和发展,并在其中扮演一个公正的中立角色。
OpenHW Group 的成员来自多个领域,包括芯片设计、EDA工具、IP供应商、系统集成商、学术界和咨询公司等。该组织致力于推动开放源代码硬件的发展,以推广基于RISC-V架构的开放源代码芯片设计和开发为主要目标。OpenHW Group 不仅提供开源的硬件设计和软件工具,还提供教育和培训、技术支持和认证等服务,以支持开放源代码硬件社区的成长。
4、FPGACPU
http://www.fpgacpu.org/links.html

Jan Gray 的 RISC CPU 网站是一个个人网站,展示了他在 RISC(精简指令集计算)CPU 和相关 FPGA 项目方面的工作。
Jan Gray 是一位硬件设计师,已经开发了几个 RISC CPU,包括 XR16、GR000 和 XSOC。这些 CPU 的设计旨在可合成并优化 FPGA 实现。XR16 和 GR000 CPU 是 16 位 RISC 处理器,而 XSOC 则是一个更复杂的 SoC 设计,包括 8 位 RISC CPU 核、内存、I/O 接口和其他外设。
该网站提供了有关每个 CPU 设计的详细信息,包括架构图、指令集描述和性能基准。此外,Jan Gray 维护一个邮件列表,供 FPGA CPU 爱好者讨论与 FPGA-based CPU 和相关项目相关的主题。
总的来说,Jan Gray 的 RISC CPU 网站是一个对于任何想要学习 FPGA-based CPU 设计和实现的人来说都是一个有价值的资源,也是一个寻找可用于自己项目的开源 RISC CPU 核心的硬件设计师的宝贵资料。
5、FPGAARCADE
https://www.fpgaarcade.com
6、官网
各大官网会提供针对自家芯片或者板卡的测试例程
xilinx官网
intel官网
lattice官网
7、digilent for refernce
https://digilent.com/reference/start

其实大家不了解的地方是,国内很多开发板的例程都来源这个网站,尤其一些“特殊”的外设,像MIPI,HDMI等,有些例程看源码还能看到“残留”。大家可以先按照自己需求寻找相关开发板和外设,点击进去就有例程和原理图参考。
8、ADI-ANALOGDEVICE
https://github.com/analogdevicesinc/hdl
https://wiki.analog.com/resources/fpga/

详细的介绍见:
《想学习高速ADC/DAC/SDR项目这个项目你不得不理解》
9、GITHUB
https://github.com/
这个无需多言,代码最全,但是搜索是需要点“真功夫”,像RIFFA\PYNQ\VITIS AI等这些耳熟能详的项目基本都在github上开源的。
总结
HDL在这方面开源的并不多,但是我个人认为fpga4fun和opencores在这些里面就属于前二,完善的社区及完整的HDL代码是主要原因。其他的也是很完美的平台,大家斟酌使用。
最后还有一些比较单一的网站,有兴趣可以看看
《国外VHDL& Verilog IP Resource 下载网站列表》
相关文章:
FPGA有哪些优质的带源码的IP开源网站?
这是某乎上的一个问题,我觉得还不错,今天就系统性的总结一下1、fpga4funhttps://www.fpga4fun.com/你能在这个网站上找到什么?您可以找到信息页面,以及使用 FPGA 板构建的 FPGA 项目。注重点:项目。FPGA 项目使用一种称…...
基于模型预测控制(MPC)的微电网调度优化的研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Postman接口测试之Mock快速入门
一、Mock简介 1.Mock定义 Mock是一种比较特殊的测试技巧,可以在没有依赖项的情况下进行接口或单元测试。通常情况下,Mock与其他方法的区别是,用于模拟代码依赖对象,并允许设置对应的期望值。简单一点来讲,就是Mock创建…...
分享一个国内可用的免费ChatGPT网站
背景 ChatGPT作为一种基于人工智能技术的自然语言处理工具,近期的热度直接沸腾🌋。 作为一个程序员,我也忍不住做了一个基于ChatGPT的网站,免费!免登陆!!国内可直接对话ChatGPT,也…...
15. 三数之和(Java)
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 …...
Navicat Premium 16安装教程
1.鼠标右击【Navicat Premium 16(64bit)】压缩包(win11及以上系统需先选择“显示更多选项”)选择【解压到 Navicat Premium 16(64bit)】。 2.打开解压后的文件夹,鼠标右击【setup】选择【以管理员身份运行】。 3.点击【下一步】。 4.选择【我…...
蓝桥杯刷题冲刺 | 倒计时8天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.三角形的面积2.图中点的层次1.三角形的面积 题目 链接: 三角形的面积 - 蓝桥云课 …...
四.JAVA基础面试题:重要知识
四.JAVA基础面试题:重要知识 1.为什么JAVA只有值传递 2.JAVA获取运行时类的四种方式 四.JAVA基础面试题:重要知识 1.为什么JAVA只有值传递 实参:传递给形参的实际参数。 形参:接受实参的参数。值传递:方法接受实参…...
某面试官分享经验:看求职者第一眼,开口说第一句话,面试结果就差不多定了,准确率高达90%以上...
我们以前分享过许多经验,但大多是站在打工人的视角上,今天给大家带来一个面试官的经验:1. 看求职者第一眼,开口说第一句话,面试结果就差不多定了,准确率高达90%以上。2. 绝不考八股文,如果问技术…...
Java开发 - 消息队列之RabbitMQ初体验
目录 前言 RabbitMQ 什么是RabbitMQ RabbitMQ特点 安装启动 RabbitMQ和Kafka的消息收发区别 RabbitMQ使用案例 添加依赖 添加配置 创建RabbitMQ配置类 RabbitMQ消息的发送 RabbitMQ消息的接收 测试 结语 前言 前一篇,我们学习了Kafka的基本使用&#…...
蓝桥杯入职项目(HTML + springBoot)
文章目录需要解决npm包安装axioshttp-servedebug开发下个阶段测试运行方式注意清理磁盘缓存问题解决HTML Web项目的结构通常是基于MVC(Model-View-Controller)模式设计的。下面是一般的项目结构:index.html:项目的入口文件&#x…...
【IAR工程】STM8S208RB基于ST标准库下按键检测
【IAR工程】STM8S208RB基于ST标准库下按键检测📍相关篇《【IAR工程】STM8S208RB基于ST标准库下GPIO点灯示例》🎈《【IAR工程】STM8S208RB基于ST标准库下EXTI外部中断》🔖基于ST STM8S/A标准外设库:STSW-STM8069,版本号:2.3.1&…...
【5】深度学习之Pytorch——如何使用张量处理文本数据集(语料库数据集)
在计算机领域,不断崛起的两个领域,一个是CV一个是NLP,下面我们可以探索一下深度学习在NLP的应用和特点。 深度学习在自然语言处理(NLP)领域有广泛的应用。以下是一些主要的应用和特点: 语音识别࿱…...
《Spring系列》第5章 refresh()
前言 Spring框架中最重要的肯定是IOC容器,那么其如何进行初始化,就是通过refresh()这个方法,无论是单独使用Spring框架,还是SpringBoot,最终都会通过执行到这个方法,那么下面会介绍一下这个方法 一、IOC容…...
ThreeJS-缩放、旋转(四)
代码: <template> <div id"three_div"> </div> </template> <script> import * as THREE from "three"; import {OrbitControls } from three/examples/jsm/controls/OrbitControls export default { name: &quo…...
数据更新 | CnOpenData法拍房数据
法拍房数据 一、数据简介 法拍房,即“法院拍卖房产”,是被法院强制执行拍卖的房屋 。当债务人(业主)无力履行借款合约或无法清偿债务时,而被债权人经司法程序向法院申请强制执行,将债务人名下房屋拍卖&…...
【Spring从成神到升仙系列 五】从根上剖析 Spring 循环依赖
👏作者简介:大家好,我是爱敲代码的小黄,独角兽企业的Java开发工程师,CSDN博客专家,阿里云专家博主📕系列专栏:Java设计模式、数据结构和算法、Kafka从入门到成神、Kafka从成神到升仙…...
设计模式之代理模式(C++)
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 一、代理模式是什么? 代理模式是一种结构型的软件设计模式,在不改变原代码前提下,提供一个代理…...
c++11 标准模板(STL)(std::unordered_multimap)(三)
定义于头文件 <unordered_map> template< class Key, class T, class Hash std::hash<Key>, class KeyEqual std::equal_to<Key>, class Allocator std::allocator< std::pair<const Key, T> > > class unordered…...
Linux进程控制-2
紧接着上篇博客出发,我们接着来讲述Linux中进程控制的内容。 目录 1.等待 1.1具体操作 1.等待 进程等待主要的作用在于:父进程创建子进程之后,等待子进程退出,获取子进程的退出码,释放子进程的资源,避…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...
pycharm 设置环境出错
pycharm 设置环境出错 pycharm 新建项目,设置虚拟环境,出错 pycharm 出错 Cannot open Local Failed to start [powershell.exe, -NoExit, -ExecutionPolicy, Bypass, -File, C:\Program Files\JetBrains\PyCharm 2024.1.3\plugins\terminal\shell-int…...
云安全与网络安全:核心区别与协同作用解析
在数字化转型的浪潮中,云安全与网络安全作为信息安全的两大支柱,常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异,并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全:聚焦于保…...
