《Verilog学习:数字系统设计基础》

一、数字系统多样性

由于应用场景的需要,有时通用的处理芯片难以满足实际需求(如:实时、高速等),需要另外设计专用电路,在FPGA或其他硬件上实现。

数字信号处理系统通常包括数据通道接口和算法电路。

现代专用集成电路依靠电子电路设计自动化工具EDA实现。

数字信号处理的基本思路:利用采样和ADC,把信号从模拟变为数字,再对数字信号进行运算。

数字信号系统设计:算法------硬线连接的门级逻辑电路------硅片。

何为算法?解决问题的具体步骤。

何为数据结构?解决特定问题的具体模型。

同一个算法可以由不同结构的数字电路实现,但运行效率有所不同。要实现数字电路,一般有四种方案:

(1)以专用微处理机芯片为中心。优点是设计周期短、可以利用的资源多,缺点是速度、能耗、体积等性能受该微处理器芯片和外围电路的限制;

(2)用高密度的FPGA(几万门到几百万门)。本质上是购买了一种通用处理器实现专用功能;

(3)设计专用的大规模集成电路(ASIC) / 利用现成微处理机的IP核进行专门设计。优点是性能好,缺点是设计和制造周期长、投片成本高。

二、实现电路前所需的仿真

三、C语言辅助编程

C语言应用广泛、灵活、查错能力强,能通过PU(编程语言接口)编写自己的系统任务,并直接与硬件仿真器(如VeriogXL)结合使用,故选用C语言对硬件编程进行辅助。

但要注意:

(1)C语言顺序执行,Verilog语言的仿真软件是顺序执行,但它描述的硬件是并行执行的。

(2)C语言没有延时特性,转换后的Verilog程序必须没有外加的人工延时信号,也就是必须表达为有限状态机(RTL级)。

相关推荐
差不多的周周8 小时前
《骨架上下文:基于零镜头骨架的动作识别的骨架侧上下文提示学习》论文核心部分详解
学习
Century_Dragon9 小时前
从挂图到VR:汽修专业的一堂新能源原理课可以怎么上~
学习
狂奔蜗牛(bradley)10 小时前
拒绝SOEM黑盒!死磕EtherCAT主站:ARM+FPGA架构、DC同步与状态机修复等,50+篇实战开发文档全公开
arm开发·fpga开发·架构
知识分享小能手10 小时前
C++ 学习教程,从入门到精通,C++对象和类 — 详细知识点总结(10)
开发语言·c++·学习
New农民工11 小时前
倒立摆训练秘籍:理解训练参数
学习
L@ncor11 小时前
第五章 基于低代码平台的智能体搭建 · 学习笔记(Coze / Dify / FastGPT / n8n)
笔记·学习·低代码·agent·prompt工程
迪丽热爱11 小时前
多媒体应用20-903(补)
学习
XMAIPC_Robot13 小时前
CODESYS 实时控制 + RK182X 大模型算力扩展|RK3576 工业边缘控制器设计
人工智能·fpga开发·机器人·rk3588+fpga
传奇开心果编程13 小时前
【Flutter入门练中学】第8课:动画与过渡
android·学习·flutter·ui·ios
程序员yu14 小时前
会编网络:别被入门教程骗了,Python实用能力不在语法本身
开发语言·python·学习·算法