紫光FPGA开发全流程实战:从流水灯到FLASH固化

1. 紫光FPGA开发环境搭建

作为国产FPGA的重要代表,紫光同创的Pango Design Suite(PDS)为开发者提供了一站式的开发环境。记得我第一次接触PDS时,被其简洁的界面和流畅的操作体验惊艳到了,完全不像某些国外工具那样复杂难用。

PDS支持Windows 10 64位系统,建议使用2020.3或更高版本。安装过程非常简单,双击安装包后按照向导一步步操作即可。不过有个小细节需要注意:安装路径最好不要包含中文或特殊字符,否则后期可能会遇到一些莫名其妙的问题。

安装完成后,桌面上会出现PDS的快捷方式。启动软件后,你会看到一个清爽的主界面,左侧是工程导航栏,中间是工作区,右侧是属性面板。这种布局对于FPGA新手来说非常友好,不会让人感到不知所措。

硬件准备方面,你需要一块紫光FPGA开发板,推荐使用PGL22G芯片的型号。这个芯片的资源足够丰富,可以满足从简单逻辑设计到复杂系统的大部分需求。开发板上的外围设备也很齐全,包括LED灯、按键、数码管等,非常适合初学者练手。

2. 创建第一个流水灯工程

创建新工程是FPGA开发的第一步。在PDS中,你可以通过两种方式创建工程:双击主界面的"Create Project"或者选择File菜单中的"New Project"。我个人更喜欢后者,因为这样可以看到完整的工程创建向导。

工程命名时要注意使用有意义的英文名称,比如"led_flasher"或"pwm_controller"这样的名字。不要使用中文,也不要使用过于简单的名字如"test1",否则后期工程多了很容易混淆。

选择器件型号时,需要根据实际使用的开发板来配置。对于PGL22G芯片,在Family栏选择Logos,Device中选择PGL22G,Package选择BG324,Speed grade选择-6。这些参数一定要设置正确,否则后续的管脚分配和时序分析都会出问题。

工程类型选择RTL Project,因为我们准备用Verilog来编写代码。在添加设计文件时,可以先跳过,等工程创建完成后再添加源文件。同样的,约束文件和IP核也可以暂时不添加,后续根据需要再导入。

创建完成后,工程界面会显示在左侧的Navigator窗口中。这个时候工程还是个空壳,我们需要为它添加实质性的内容。

3. Verilog代码编写实战

现在来到最核心的代码编写环节。流水灯的逻辑其实很简单:通过计数器实现定时,然后在特定时间点改变LED的状态。但就是这个简单的逻辑,包含了FPGA设计的几个重要概念。

首先定义模块的输入输出端口。对于流水灯来说,我们需要一个系统时钟输入sys_clk,一个复位信号输入rst_n,以及4位宽的LED输出。注意复位信号是低电平有效,这是数字电路设计的常见做法。

module led_test( input sys_clk, // 50MHz系统时钟

Read more

前端异常捕获与统一格式化:从 console.log(error) 到服务端上报

前端异常捕获与统一格式化:从 console.log(error) 到服务端上报

🧑 博主简介:ZEEKLOG博客专家,「历代文学网」(公益文学网,PC端可以访问:https://lidaiwenxue.com/#/?__c=1000,移动端可关注公众号 “ 心海云图 ” 微信小程序搜索“历代文学”)总架构师,首席架构师,也是联合创始人!16年工作经验,精通Java编程,高并发设计,分布式系统架构设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分享所学,希望通过我的实践经历和见解,启发他人的创新思维。在这里,我希望能与志同道合的朋友交流探讨,共同进步,一起在技术的世界里不断学习成长。 🤝商务合作:请搜索或扫码关注微信公众号 “ 心海云图 ” 前端异常捕获与统一格式化:从 console.log(error) 到服务端上报 引言 在前端开发中,异常监控是保证应用稳定性的重要一环。当用户遇到页面白屏、功能不可用等问题时,如果能及时收集到详细的错误信息(包括堆栈、

新版华三H3C交换机配置NTP时钟步骤 示例(命令及WEB配置)

命令版本  启用NTP服务 默认服务可能未激活,需手动开启: [H3C] ntp-service enable 配置NTP服务器地址 1.1.1.1 在全局配置模式下使用命令ntp-service unicast-server指定NTP服务器IP地址,例如: [H3C] ntp-service unicast-server 1.1.1.1 支持域名或IPv6地址,需确保交换机与NTP服务器网络可达。 设置时区 使用clock timezone命令调整时区,北京时间示例: [H3C] clock timezone Beijing add 08:00:00 [H3C] clock protocol ntp 名称可自定义(如"Beijing"),偏移量需与实际时区匹配。 配置NTP认证(可选) 若服务器需认证,需配置密钥和关联:

支持Windows本地部署的AI视频工具TOP5

支持Windows本地部署的AI视频工具TOP5 在生成式AI快速发展的今天,图像转视频(Image-to-Video)技术正逐步从实验室走向个人创作者。相比云端服务,本地部署的AI视频工具不仅保障了数据隐私,还能实现更灵活的定制与二次开发。尤其对于希望摆脱网络依赖、追求高性能推理的用户而言,支持Windows系统的本地化AI视频生成器已成为创作利器。 本文将聚焦于当前可在Windows平台本地部署的五款主流AI视频生成工具,并重点解析其中最具代表性的开源项目——由开发者“科哥”基于I2VGen-XL模型二次构建的Image-to-Video图像转视频生成器。我们将从功能特性、使用流程、性能表现和工程实践角度,全面剖析其技术价值与落地可行性。 🏆 TOP5 支持Windows本地部署的AI视频工具概览 | 工具名称 | 核心模型 | 部署方式 | 显存要求 | 是否开源 | |--------|---------|----------|-----------|------------| | 1. Image-to-Video (by 科哥) | I2VGen-XL | Co

OpenClaw联网工具完全指南:让AI获取实时信息的能力最大化

OpenClaw联网工具完全指南:让AI获取实时信息的能力最大化

手把手教你一键部署OpenClaw,连接微信、QQ、飞书、钉钉等,1分钟全搞定! 最近很多人都在玩OpenClaw(就是那个挺火的AI助理,大家都叫它“龙虾”),部署完后就兴冲冲地给它派活。 比如有位朋友让小助理查查AI硬件的最新进展,结果折腾半天,AI最后回了一句:办不到。甚至查一些国内的信息也经常碰壁。 我也吃过这种亏,这几天花时间钻研了一下,总算把这事搞明白了。今天就来跟大家唠唠,OpenClaw的联网搜索能力到底是怎么一回事? 手把手教你一键部署OpenClaw,连接微信、QQ、飞书、钉钉等,1分钟全搞定! 一、自带的工具(其实挺鸡肋) OpenClaw出厂自带了三个联网工具:web_search、web_fetch和browser。 web_search这玩意儿本质是个搜索接口,但它非得要Brave的API KEY才能动。这KEY特别难搞,所以大部分人的小助理搜不到东西,主要是因为有枪没子弹。 web_fetch是用来读网页的。你直接甩给它一个链接,它能把里面的内容抓出来。这个功能倒还算靠谱,能正常干活。 手把手教你一键部署OpenClaw,连接微信、