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

一、数字系统多样性

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

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

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

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

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

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

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

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

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

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

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

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

三、C语言辅助编程

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

但要注意:

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

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

相关推荐
边境悍匪1 小时前
蜗牛学苑 Java 智能体学习 Day36|阿里云 OSS 文件上传、Spring 事务、全局异常思维导图复盘
java·学习·阿里云
Linux-lucky2 小时前
33-Linux学习之旅之MySQL用户管理
java·linux·运维·学习·mysql·ubuntu
亮工硬件2 小时前
1-8 简易串口通讯协议(UART + 自定义帧协议)
笔记·stm32·单片机·嵌入式硬件·学习
老猿讲编程2 小时前
【Eclipse OpenSOVD学习之二】 SOVD 协议原理与标准背景
学习·eclipse·嵌入式软件·车载·sovd
蓝天下的守望者2 小时前
ARM SOC architecture学习文档整理
arm开发·学习
花 满 楼3 小时前
TPWM — PWM 测量模式(TIM PWM Measurement Mode)
单片机·嵌入式硬件·fpga开发
叶子野格3 小时前
《Verilog学习:前置知识》
学习·fpga开发
wuyk5553 小时前
从零吃透 MQTT 通信|第 6 章 MQTT 主题、过滤器、通配符、订阅管理、拒收机制详解与代码实现
c语言·stm32·学习
sunshine22 girl13 小时前
Java学习一 环境配置2 安装和基本使用Idea
java·学习·intellij-idea