news 2026/4/16 18:28:19

FPGA应用开发和仿真【2.3】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FPGA应用开发和仿真【2.3】
4.2.2 数据选择器

代码4-5是参数化的数据选择器,输入端口定义为数组,数据选择器功能使用数组索引实现。

4.3 常用时序逻辑单元的描述

本节介绍第1章提到的常用时序逻辑的Verilog描述。这些代码均以模块的形式给出,但在实际设计中,也有可能只是复杂模块中的一部分。

代码4-5 参数化的数据选择器

4.3.1 移位寄存器

代码4-6是参数化的移位寄存器,对照第1章的图1-117,这里的描述还增加了同步复位rst和移位使能shift。由if-else语句判断rst、load或shift的有效与否来决定对q作复位、预置或移位操作。if-else语句隐含优先逻辑,rst信号优先于load,load优先于shift,例如在load为高时,无论shift为何电平,都是对q作预置操作。

代码4-6 参数化的移位寄存器

4.3.2 延迟链

代码4-7是参数化的延迟链,使用生成块区分LEN为零和不为零分别描述,在第17行将数组中的连续元素当作整体赋值实现以元素为单位的“移位”。

代码4-7 参数化的延迟链

4.3.3 计数器

代码4-8是参数化模的计数器的代码,包含使能输入和进位输出。

代码4-8 参数化的计数器

代码4-9则实现了类似第1章图1-141所示的秒、分、时计数。代码中假定时钟频率为10Hz,使用模为10的计数器的进位输出作为秒计数的使能。

代码4-9 秒、分、时计数

图4-1、图4-2和图4-3是代码4-9的仿真波形(测试平台代码略),分别是秒计数、分计数和时计数的细节。在图4-3中还包含了秒计数向分计数和分计数向时计数两个进位信号为高的波形。

有时可能需要用到可变模(作为输入端口)的计数器,如代码4-10所示。注意输入的并非模,而是最大值(模减去1),这样可以使得它与计数输出位宽一致。

代码4-10 可变模计数器

计数器是数字逻辑中最为重要的少数几个功能单元之一,代码4-8所示的

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:59:46

YOLOFuse文档翻译计划:英文版即将上线国际推广

YOLOFuse:迈向全球的多模态检测新范式 在夜间监控画面中,一个模糊的人影悄然出现。可见光摄像头几乎无法辨识轮廓,而红外传感器却清晰捕捉到了热源信号——这正是单一模态感知局限性的典型场景。面对低光照、雾霾或伪装目标等复杂环境&#x…

作者头像 李华
网站建设 2026/4/16 12:57:16

基于AT89C51的proteus示波器信号分析实战案例

用AT89C51在Proteus里“造”一台示波器?手把手带你从采样到波形显示你有没有过这样的经历:调试一个单片机系统,信号出问题了,却因为没有示波器,只能靠串口打印几个数值猜来猜去?又或者刚学单片机&#xff0…

作者头像 李华
网站建设 2026/4/15 21:59:39

手把手教你使用XADC IP核进行实时数据采集

手把手教你使用XADC IP核实现FPGA系统级健康监控 你有没有遇到过这样的场景:FPGA板子运行着关键任务,突然死机重启——查遍逻辑代码却毫无头绪?最后发现,原来是芯片内部温度悄悄飙到了90C以上,而你压根没意识到它“发烧…

作者头像 李华
网站建设 2026/4/16 14:04:02

YOLOFuse自动驾驶感知层补充:恶劣天气目标识别

YOLOFuse自动驾驶感知层补充:恶劣天气目标识别 在城市夜间主干道上,一辆自动驾驶测试车正缓缓驶入隧道。随着光照骤降,前方一位穿着深色衣物的行人从侧方走入车道——RGB摄像头几乎无法捕捉其轮廓,但红外传感器却清晰捕捉到人体散…

作者头像 李华
网站建设 2026/4/16 9:12:51

太原代写标书哪个更值得选择

太原代写标书哪个更值得选择在太原,选择一家专业的标书代写公司对于企业和项目成功至关重要。标书的质量直接影响到项目的中标率和企业的形象。本文将从多个角度分析,帮助您找到更值得信赖的标书代写服务提供商。一、行业背景与需求随着市场竞争的加剧&a…

作者头像 李华