当前位置: 首页 > news >正文

FPGA学习记录----二选一多路选择器

  • 源文件代码
module Mux2( //括号里面写端口列表;Verilog里面区分大小写;不要忘记写分号;端口列表里面以逗号分隔,最后一个无逗号 a, b, sel, out ); //端口定义,使用分号而不是逗号 input a; input b; input sel; output out; //描述输入输出端口的逻辑关系 assign out = (sel == 0)?a:b; //Verilog中两大赋值语句之一 endmodule
  • 测试文件代码
`timescale 1ns/1ns //前面的1ns表示1个单位的时间长度 //后面的1ns表示延时的精度,延时时间的最小刻度 module Mux2_tb( //对于tb文件,不需要对外端口,故不用定义写端口列表,括号里面空着或者直接删除括号 ); //定义信号 reg S0; reg S1; reg S2; wire Mux2_out; //例化 Mux2 Mux2_inst0( .a(S0), .b(S1), .sel(S2), .out(Mux2_out) ); //产生激励信号 initial begin S2 = 0; S1 = 0; S0 = 0; #20 //表示在目前仿真的时间线上推移20个1ns S2 = 0; S1 = 0; S0 = 1; #20 //该语句仅用于仿真中,不能用于写逻辑代码模块 S2 = 0; S1 = 1; S0 = 0; #20 S2 = 0; S1 = 1; S0 = 1; #20 S2 = 1; S1 = 0; S0 = 0; #20 S2 = 1; S1 = 0; S0 = 1; #20 S2 = 1; S1 = 1; S0 = 0; #20 S2 = 1; S1 = 1; S0 = 1; #20; end endmodule
  • 相关语法分析
  1. 关于端口的定义,有两种写法,第一种是经典风格,第二种是ANSI-C风格。

(1)经典风格:先在端口列表中定义端口名,再声明方向与位宽。

module Mux2( a, b, sel, out ); input a; input b; input sel; output out; ......

(2)ANSI-C风格:直接在端口列表中声明端口名、方向以及位宽。

module Mux2( input a, input b, input sel, output out ); ......

(注:本文为观看“小梅哥FPGA”后的学习笔记)

(注:本文仍在更新中)

http://www.jsqmd.com/news/755767/

相关文章:

  • AI编码扩展实战指南:四大维度解析与VSCode神装清单
  • 【QuecOpen 实战-006】FreeRTOS 多任务编程实战
  • SIMD指令在Java中的应用探索
  • 从C++主流标准到Qt的版本支持:一位开发者的现实指南
  • find-skills-x:基于代码分析的开源技能发现与匹配工具
  • 基于MediaPipe的Android实时AI视觉应用开发实战
  • 2026年上海专门处理经济纠纷的本地律师排名 - mypinpai
  • Magpie:多模态大模型数据格式对齐工具实战指南
  • (118页PPT)新版VDAFMEA第五版培训(附下载方式)
  • Rust + PostgreSQL 极简技术栈应用开发
  • 【深度解析】Pi 极简终端 Coding Agent:为什么 4 个工具反而更适合 AI 编程?
  • MotionEdit:基于神经场技术的运动数据高效编辑方案
  • Phi-4-mini-reasoning基础教程:transformers pipeline参数与原生generate差异对比
  • vCenter 6.7安装后必做的几件事:从添加ESXi主机到创建数据中心完整流程
  • 深入理解C++智能指针
  • SciDER:科研自动化Python工具包的设计与应用
  • SeedPolicy:自进化扩散策略在机器人长时程任务中的应用
  • 新手福音:快马AI辅助生成零基础龙虾安装教程,带你轻松上手
  • 【极简监控】告别 OAP 与 ES!一个 Agent 搞定全链路与 UI,探秘单体 APM 界的“核潜艇” Glowroot
  • HCIP-DATACOM考试通关保姆级指南:从科目选择到题库实战,一次讲透
  • AI智能体记忆守护进程:构建持久化语义记忆系统的架构与实践
  • 如何快速提升游戏胜率:5个高效英雄联盟智能助手技巧
  • 【SSD202 开发实战 13】显示驱动开发与屏幕适配
  • 快速搭建集成hermes引擎的react native项目原型
  • CI/CD——使用Jenkins实现自动化部署与持续集成之jenkins的安装部署
  • 每周AI工具模型更新趋势前瞻
  • NI数据采集避坑指南:搞懂NI MAX里仿真和真实设备的这5个关键区别
  • 从“异常”的定义开始:聊聊监控视频AI检测中,那些容易被忽略的假设与数据陷阱
  • PRiSM开源音素识别基准:技术解析与应用实践
  • 【SSD202 开发实战 22】工业 HMI 人机界面设计与实现