本书主要介绍FPGA Verilog语言,轻松入门Verilog语言能力。
标签: verilog
上传时间: 2022-03-29
上传用户:
SystemVerilog 语言简介SystemVerilog是一种硬件描述和验证语言(HDVL),它基于IEEE 1364-2001Verilog硬件描述语言(HDL),并对其进行了扩展,包括扩充了C语言数据类型、结构、压缩和非压缩数组、接口、断言等等,这些都使得SystemVeri1og在一个更高的抽象层次上提高了设计建模的能力。SystemVerilog由Acce11era开发,它主要定位在芯片的实现和验证流程上,并为系统级的设计流程提供了强大的连接能力。下面我们从几个方面对SystemVerilog所作的增强进行简要的介绍,期望能够通过这个介绍使大家对SystemVerilog有一个概括性的了解。1.接口(Interface)Verilog模块之间的连接是通过模块端口进行的。为了给组成设计的各个模块定义端口,我们必须对期望的硬件设计有一个详细的认识。不幸的是,在设计的早期,我们很难把握设计的细节。而且,一旦模块的端口定义完成后,我们也很难改变端口的配置。另外,一个设计中的许多模块往往具有相同的端口定义,在Verilog中,我们必须在每个模块中进行相同的定义,这为我们增加了无谓的工作量。
标签: systemverilog
上传时间: 2022-07-01
上传用户:得之我幸78
矢量控制作为一种先进的控制策略,是在电机统一理论、机电能量转换和坐标变换理论的基础上发展起来的,具有先进性、新颖性和实用性的特点。它是以交流电动机的双轴理论为依据,将定子电流矢量分解为按转子磁场定向的两个直流分量:一个分量与转子磁链矢量重合,称为励磁电流分量;另一个分量与转子磁链矢量垂直,称为转矩电流分量。通过控制定子电流矢量在旋转坐标系的位置及大小,即可控制励磁电流分量和转矩电流分量的大小,实现像直流电动机那样对磁场和转矩的解耦控制。本文研究的是以TMS320LF2407ADSP和FPGA为控制核心的矢量控制变频调速系统。 分析了脉宽调制和矢量控制的原理与实现方法,从而建立了异步电动机的数学模型。对于矢量控制,分析了矢量控制的基本原理和控制算法,推导了三相坐标系、两相静止与旋转坐标系下的电机基本方程和矢量控制基本公式。同时在进行相应的坐标变换以后,得到了间接磁场定向型变频调速系统的矢量控制图,并结合TMS320LF2407ADSP完成了具体的实现方法,根据矢量控制的基本原理,设计了一种基于DSP和FPGA的SVPWM冗余系统。 在硬件方面,以TMS320LF2407ADSP和EP1C12Q240FPGA为控制器,两者之间通过双口RAMIDT7130完成数据的交换,并能在一方失控时另一方立即产生SVPWM波形。同时完成无线遥控、速度给定、数据显示以及电流、速度检测和保护等功能,也对变频调速系统的主电路、电源电路、FPGA配置电路、无线遥控电路、LCD显示电路、保护电路、电流和转速检测电路作了简单的介绍。在软件方面,给出了基于DSP的矢量控制系统软件流程图,并用C语言进行了编程。用硬件描述语言Verilog对FPGA进行了编程,并给出了相关的仿真波形。MATLAB仿真结果表明,本文研究的调速系统的矢量控制算法是成功的,并实现了对电机的高性能控制。
上传时间: 2013-07-09
上传用户:jogger_ding
Verilog 黄金参考指南是Verilog 硬件描述语言及其语法语义合并以及将它应用到硬件设计的一个简明的快速参考指南
标签: Verilog_golden
上传时间: 2013-07-02
上传用户:LCMayDay
电压空间矢量脉冲宽度调制技术是一种性能优越、易于数字化实现的脉冲宽度调制方案。在常规SVPWM算法中,判定等效电压空间矢量所处扇区位置时需要进行坐标旋转和反正切三角函数的运算,计算特定电压空间矢量作用时间时需要进行正弦、余弦三角函数的运算以及过饱和情况下的归一化处理过程,同时,在整个SVPWM算法中还包含了无理数的运算,这些复杂计算不可避免地会产生大量计算误差,对高精度实时控制产生不可忽视的影响,而且这些复杂运算的计算量大,对系统的处理速度要求高,程序设计复杂,系统运行时间长,占用系统资源多。因此,从工程实际应用的角度出发,需要对常规SVPWM算法进行优化设计。 本文提出的优化SVPWM算法,只需进行普通的四则运算,计算非常简单,克服了上述常规SVPWM算法中的缺点,同时,采用交叉分配零电压空间矢量,并将零电压空间矢量的切换点置于各扇区中点的方法,达到降低三相桥式逆变电路中开关器件开关损耗的目的。SVPWM算法要求高速的数据处理能力,传统的MCU、DSP都难以满足其要求,而具有高速数据处理能力的FPGA/CPLD则可以很好的实现SVPWM的控制功能,在实时性、灵活性等方面有着MCU、DSP无法比拟的优越性。本文利用MATLAB/Simulink软件对优化的SVPWM系统原型进行建模和仿真,当仿真效果达到SVPWM系统控制要求后,在XilinxISE环境下采用硬件描述语言设计输入方法与原理图设计输入方法相结合的混合设计输入方法进行FPGA/CPLD的电路设计与输入,建立相同功能的SVPWM系统模型,然后利用ISESimulator(VHDL/Verilog)仿真器进行功能仿真和性能分析,验证了本文提出的SVPWM优化设计方案的可行性和有效性。
上传时间: 2013-06-27
上传用户:小儒尼尼奥
很棒的Verilog硬件描述语言学习资料。 推荐下载!!!
标签: Verilog
上传时间: 2013-06-23
上传用户:1101055045
电压空间矢量脉冲宽度调制技术是一种性能优越、易于数字化实现的脉冲宽度调制方案。在常规SVPWM算法中,判定等效电压空间矢量所处扇区位置时需要进行坐标旋转和反正切三角函数的运算,计算特定电压空间矢量作用时间时需要进行正弦、余弦三角函数的运算以及过饱和情况下的归一化处理过程,同时,在整个SVPWM算法中还包含了无理数的运算,这些复杂计算不可避免地会产生大量计算误差,对高精度实时控制产生不可忽视的影响,而且这些复杂运算的计算量大,对系统的处理速度要求高,程序设计复杂,系统运行时间长,占用系统资源多。因此,从工程实际应用的角度出发,需要对常规SVPWM算法进行优化设计。 本文提出的优化SVPWM算法,只需进行普通的四则运算,计算非常简单,克服了上述常规SVPWM算法中的缺点,同时,采用交叉分配零电压空间矢量,并将零电压空间矢量的切换点置于各扇区中点的方法,达到降低三相桥式逆变电路中开关器件开关损耗的目的。SVPWM算法要求高速的数据处理能力,传统的MCU、DSP都难以满足其要求,而具有高速数据处理能力的FPGA/CPLD则可以很好的实现SVPWM的控制功能,在实时性、灵活性等方面有着MCU、DSP无法比拟的优越性。本文利用MATLAB/Simulink软件对优化的SVPWM系统原型进行建模和仿真,当仿真效果达到SVPWM系统控制要求后,在XilinxISE环境下采用硬件描述语言设计输入方法与原理图设计输入方法相结合的混合设计输入方法进行FPGA/CPLD的电路设计与输入,建立相同功能的SVPWM系统模型,然后利用ISESimulator(VHDL/Verilog)仿真器进行功能仿真和性能分析,验证了本文提出的SVPWM优化设计方案的可行性和有效性。
上传时间: 2013-07-30
上传用户:15953929477
随着计算机网络与嵌入式控制技术的迅速发展,作为传统运输行业的铁路系统对此也有了新的要求,列车通信网络应运而生。经过多年的发展,国际电工委员会(IEC)为了规范列车通信网络,于1999年通过了IEC61375-1标准。该标准将列车通信网络分为两条总线:绞线式列车总线(WTB)和多功能车辆总线(MVB)。MVB是一个标准通信介质,为挂在其上的设备传输和交换数据。而多功能车辆总线控制器(MVBC)是MVB与MVB实际物理层之间的接口,其主要实现MVB数据链路层的功能。由于该项关键技术仍被国外公司垄断,因此开发具有自主知识产权的MVBC迫在眉睫。 鉴于上述原因,本文深入研究了IEC61375-1标准。根据MVBC的技术特点,本文提出了使用FPGA来实现其具体功能的方案。挂在MVB总线上的设备分为五类,他们的功能各不相同。而支持4类设备的MVBC具有设备状态、过程数据、消息数据通信和总线管理功能,并且兼容2类和3类设备。本文的目的就是用FPGA实现支持4类设备的MVBC。 本文采用自顶向下的设计方法。整个MVBC主要划分为:编码模块、译码模块、冗余控制模块、报文分析单元、通信存储控制器、主控制单元、地址逻辑模块。在整个开发流程中,使用Xilinx的ISE集成开发环境。使用Verilog HDL硬件描述语言对上述各个模块进行RTL级描述,并用Synplify Pro进行综合。最后,在ModelSim中对各个模块进行了布线后仿真和验证。 在实验室条件下,通过严格的仿真验证后,其结果证明了本文设计的模块达到了IEC61375-1标准的要求。因此,用FPGA实现MVBC这一方案具有可操作性。 关键词:列车通信网;多功能车辆总线;多功能车辆总线控制器;现场可编程门阵列
上传时间: 2013-07-18
上传用户:wxhwjf
随着我国工业和国民经济的快速发展,电网负荷急剧增加,特别是冲击性、非线性负荷所占比重不断加大,使得供电电压发生波动和闪变,严重影响着电网的电能质量。根据国际电工委员会(IEC)电磁兼容(EMC)标准IEC61000-3-7以及国标GB12326-2000,电压波动和闪变己成为衡量电能质量的重要指标。 电压波动和闪变作为衡量电能质量的重要指标,能更直接、迅速地反映出电网的供电质量。然而,目前国内还没有很好的电压波动与闪变测量的数字信号处理方法。为此,论文在深入研究电压波动和闪变测量技术的基础上,提出一种基于Simulink/DSP Builder的数字信号处理的FPGA设计方法,利用DSP Builder工具将Simulink的模型文件(.mdl)转化成通用的硬件描述语言VHDL文件,避免了VHDL语言手动编写系统的烦琐过程,从而能够将更多精力集中于系统算法的优化上。该方法充分利用Matlab/Simulink系统建模的优势,同时也能够发挥FPGA并行执行速度快、测量精度高的优点。 论文首先介绍了电压波动和闪变的基木概念、特征量,阐述了电压波动与闪变的测量原理,分析比较了现有测量方法和装置的特点和优劣。然后依据电压波动与闪变测量的IEC标准以及国家标准,在对电压波动与闪变测量模拟仿真的基础上研究其数字化实现方法,即采用数字滤波的方式在Simulink/DSP Builder工具下设计电压波动与闪变测量系统的数字模型。同时在ModelSim SE6.1d软件下进行了系统功能仿真,并且在Altera公司的FPGA设计软件QuartusⅡ6.0下进行了系统时序仿真。 仿真结果表明,基于Simulink/DSP Builder窗口化的数字信号处理的FPGA设计方案,设计简单、快捷高效,能够满足电压波动和闪变测量最初的系统设计要求,为进一步从事电压波动和闪变测量研究提供了一种全新的设计理念,具有一定的理论与现实意义。
上传时间: 2013-07-10
上传用户:笨小孩
通用异步收发器(Universal Asynchronous Receiver Transmitter,UART)是一种能同时支持短距离和长距离数据传输的串行通信接口,被广泛应用于微机和外设之间的数据交换。像8251、NS8250、NS16550等都是常用的UART芯片,但是这些专用的串行接口芯片的缺点是数据传输速率比较慢,难以满足高速率数据传输的场合,而更重要的就是它们都具有不可移植性,因此要利用这些芯片来实现PC机和FPGA芯片之间的通信,势必会增加接口连线的复杂程度以及降低整个系统的稳定性和有效性。 本课题就是针对UART的特点以及FPGA设计具有可移植性的优势,提出了一种基于FPGA芯片的嵌入式UART设计方法,其中主要包括状态机的描述形式以及自顶向下的设计方法,利用硬件描述语言来编制UART的各个子功能模块以及顶层模块,之后将其集成到FPGA芯片的内部,这样不仅能解决传统UART芯片的缺点而且同时也使整个系统变得更加具有紧凑性以及可靠性。 本课题所设计的LIART支持标准的RS-232C传输协议,主要设计有发送模块、接收模块、线路控制与中断仲裁模块、Modem控制模块以及两个独立的数据缓冲区FIFO模块。该模块具有可变的波特率、数据帧长度以及奇偶校验方式,还有多种中断源、中断优先级、较强的抗干扰数据接收能力以及芯片内部自诊断的能力,模块内分开的接收和发送数据缓冲寄存器能实现全双工通信。除此之外最重要的是利用IP模块复用技术设计数据缓冲区FIFO,采用两种可选择的数据缓冲模式。这样既可以应用于高速的数据传输环境,也能适合低速的数据传输场合,因此可以达到资源利用的最大化。 在具体的设计过程中,利用Synplify Pro综合工具、ModelSim仿真工具、ISE集成的软件开发环境中对各个功能模块进行综合优化、仿真验证以及下载实现。各项数据结果表明,本课题中所设计的UART满足预期设计目标。
上传时间: 2013-08-02
上传用户:rocketrevenge