FPGA小白学习日志二:利用LED实现2选1多路选择器

  在上一篇文章中,主播利用炒菜的比喻帮大家介绍了LED工程的建立,所以在读这一篇文章前,大家可以简要回顾以下LED工程的建立流程。本篇内容,主播主要向大家介绍数据选择器工程的实现方法。

  在开始之前,我们先来了解一下数据选择器是什么:所谓数据选择器,就是从多个输入的逻辑信号中选择一个逻辑信号输出,实现数据选择功能的逻辑电路就是数据选择器。我们用来打个比方,现在我们手中有两张电影票A和B,但这时我们是不知道到底哪张电影票是允许我们进入电影院的,这时候我们就要去问检票员,检票员说A,那就可以进;否则,B就可以进。通过这个比喻,我们就能理解数据选择器的大体思路了:这里的电影票A与B就相当于输入信号in1与in2,检票员就相当于数据选择信号sel(英文select),电影院就相当于输出信号out,注意这里的输出信号out只有一个。因此,我们就可以在Visio中设计出2-1数据选择器:

                           

  同样,我们给出2-1数据选择器的真值表:

            

  我们来分析以下这个真值表:当选择信号sel为0时,对应输入信号in1的通道开启,此时,无论输入信号in2怎么取值,输出信号out永远与输入信号in1相同。那反过来讲,选择信号sel为1时,对应输入信号in2的通道开启,此时,无论输入信号in1怎么取值,输出信号out永远与输入信号in2相同。

  接下来,我们新建工程,具体的步骤在上一章有讲,这里我们就不说了。我们来看看用Verilog语言怎么实现2-1数据选择器:

                            

  我们来分析一下这段代码的语法,in1、in2、sel信号前面都有加“wire”,而out前面却加了“reg”,那么wire和reg到底是什么,他们起什么作用呢?这里主播查阅了锆石科技的《HELLO FPGA》文档:reg和wire都是数据类型,其中reg是寄存器类型,wire是连线型类型。这里主播再打个比方,wire相当于导线,他只能传递信号,但不能记住信号,所以输入信号要使用wire类型;而reg相当于寄存器,他能够记住输入信号,而在always@(*)模块中,我们的输出信号out要持续循环“sel =1 →out = in2,sel =0 →out = in1”这个逻辑进程,所以输出信号就要使用reg寄存器类型,他不断记住输入信号,又根据逻辑进程不断输出信号。

  解释完了代码,我们就来打开RTL视图,验证电路的正确性:

                  

  可以看出,RTL视图和我们在Visio中的设计完全一样。接着我们再来仿真,具体的仿真步骤主播就不说了,这里直接放波形图进行分析;

   我们取第一组红线内的波形图:

  在这组红线内的波形图中,sel信号恒为0,无论in2信号怎么变(输入信号in2从1-0-1),输出信号out波形图是不是恒等于输入信号in1。

  再取第二组分析:

  此时在这组红线内的波形图中,sel信号恒为1,无论in1信号怎么变,输出信号out波形图是不是恒等于输入信号in2了。

  举了这两组的例子,相信大家不仅能会分析波形了,也能从波形图中验证我们RTL视图的正确性。大家有时间呢也可以自己做一下仿真取不同情况分析。不过主播在这里要提醒大家一句啊,在进行仿真前,大家打开“Assignment--Settings”的时候,尤其是“Tool name”选项卡中,一定要注意我们选的是“Modelsim”而不是“Modelsim-Altera”:

  不然就会出现“Can'tIaunchtheModelSim-Alterasoftware”报错:

              

  仿真完之后呢我们就要去分配引脚了,在上一篇文章呢,主播在引脚分配这里出错了,这里就回归到原理图带大家一起读引脚。首先我们打开官方EP4C最小系统板的原理图,找到按键引脚分配图:

                          

  图中我们可以看出,KEY1按键被分配到pin90引脚,KEY2按键被分配到pin89引脚,RESET按键被分配到pin88引脚。由于本工程中我们需要用到3个信号,这里我们就把KEY1按键发出的信号标记为输入信号in1,KEY2按键发出的信号标记为输入信号in2,RESET按键发出的信号标记为选择信号sel。

  再来看LED引脚分配图:

   

  LED0被分配到IO_73引脚,LED1被分配到IO_75引脚,LED2被分配到IO_74引脚。这里我们就选择LED1,将其作为输出信号out。但是我们在引脚分配的页面是找不到IO_75引脚的,这时候我们找到U5-5模块,找到IO_75引脚对应的pin75:

                        

  这样我们的引脚就配置好了:

                                 

  大家注意,在分配好引脚以后呢,还要对未使用管脚进行设置,一定一定要记得烧录到板子之前要进行一次全编译,这不仅是在提醒大家,也是在提醒主播。最后呢我们就来看一下效果图:       

  不按RESET按键时,sel信号持续为0,此时按与不按KEY1,LED1是没有任何反应的,那么按下KEY2,LED1亮,松开KEY2, LED1不亮。

                                         

  长按RESET按键时,sel信号持续为1,此时按与不按KEY2,LED1是没有任何反应的,那么按下KEY1,LED1亮,松开KEY1, LED1不亮。

                                       

  好了,以上这就是本篇文章的所有内容了,还请大家多多支持主播!

Read more

GitHub 教育认证通过后如何领取 Copilot Pro

最近我通过了 GitHub 教育认证(Student Developer Pack),但是发现并没有立刻拿到 Copilot Pro。折腾了一番之后终于搞定了,这里记录一下过程,方便后面遇到同样问题的同学。 1. 教育认证通过 ≠ 立即开通 当你刚刚通过认证时,Student Pack 页面可能显示绿标,提示福利稍后开放,这时候需要等待几天到两周左右。 * 绿标:福利还在处理阶段(will be available soon)。 * 紫标:福利已经激活(benefits are now available)。 所以,如果你刚过认证但没看到 Copilot Pro,不用急,先等等。 2. 手动领取 Copilot Pro 即使福利已经激活,你也需要手动去领取: 👉 访问这个链接: https://github.com/github-copilot/

深度解析宇树机器人在-47.4℃的阿勒泰极限测试:低成本&高实用的演进之路

深度解析宇树机器人在-47.4℃的阿勒泰极限测试:低成本&高实用的演进之路

摘要:刚刚斩获全球人形机器人出货量的冠军,宇树科技(Unitree)已迅速转向高关注度营销的造势。2026年初,宇树发布一段震撼视频:其G1人形机器人身着羽绒服,在新疆阿勒泰地区(被誉为人类滑雪发源地)的极寒环境中,顶着-47.4℃的低温穿越茫茫雪原,最终用13万步精准刻出中央广播电视总台(CMG)2026年冬奥会转播标识。这场看似炫酷的营销stunt,背后既是G1极端环境适配能力的技术展示,更是宇树冲刺2026年年中IPO、巩固商业化优势的战略布局。本文将深度解析G1极寒测试的核心技术、营销战略,结合其2025年5500台出货量等真实数据,与Deep Robotics DR02、特斯拉Optimus等行业TOP玩家全面对比,剖析其优劣势与商业化前景,为技术从业者、行业观察者呈现最前沿的深度解读。 一、回顾宇树G1在冬奥会中极端低温测试展示 1. 宇树G1征服-47℃:冬奥会营销造势中的极限挑战 极寒生存装备:2025年出货量突破5500台的宇树G1,身着羽绒服,在阿勒泰地区勇闯-47.4℃的极寒环境。 就在斩获全球人形机器人出货量冠军几周后,宇树科技(Unitree Robo

阿里通义千问AI画师体验:中文描述直接生成赛博朋克场景图

阿里通义千问AI画师体验:中文描述直接生成赛博朋克场景图 你有没有试过,只用一句话就让画面在眼前浮现?不是靠想象,而是真真切切——输入“霓虹雨夜的东京巷口,机械义眼少女倚着全息广告牌,身后悬浮车掠过带起蓝紫色光痕”,几秒钟后,一张细节饱满、氛围拉满的赛博朋克图就静静躺在屏幕上。这不是概念图,不是设计师手绘,也不是调了几十个参数的Stable Diffusion工程;这是你在本地浏览器里,敲完回车就出来的结果。 这次我深度体验的是 ZEEKLOG 星图镜像广场上线的 ** Qwen-Image-2512 极速文生图创作室**。它不玩复杂配置,不堆参数选项,甚至没给你调步数、改采样器的机会——但它把“中文理解”和“秒级出图”这两件事,做到了真正意义上的丝滑统一。尤其当你想快速验证一个视觉点子、为方案配图、或单纯被某个中文意象击中时,它比任何“全能型”工具都更懂你。 下面,我就以真实操作为线索,带你完整走一遍:从打开页面到生成第一张赛博朋克图,再到反复迭代优化、批量尝试不同风格,最后说说它到底适合谁、不适合谁。全程不用装环境、不查文档、

机器人交叉CCF会议推荐

一、IROS(IEEE/RSJ International Conference on Intelligent Robots and Systems) 1. 基本信息 * 全称:IEEE/RSJ International Conference on Intelligent Robots and Systems * 简称:IROS * 创办时间:1988 年 * 举办频率:每年一次(通常在秋季) * 主办单位: * IEEE Robotics and Automation Society(IEEE RAS) * Robotics Society of Japan(RSJ) 2. 学术定位 IROS 是全球机器人领域最重要的顶级国际会议之一,强调“智能机器人系统”