![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
FPGA程序设计
泸州月
这个作者很懒,什么都没留下…
展开
-
基于VHDL语言的多人表决器的设计
基于VHDL语言的多人表决器设计实验原理 用七个开关作为表决器的7个输入变量,输入变量为逻辑“1”时表示表决者“赞同”;输入变量为逻辑“0”时,表示表决者“不赞同”。输出逻辑“1”时,表示表决“通过”;输出逻辑“0”时,表示表决“不通过”。当表决器的七个输入变量中有4个以上(含4个)为“1”时,则表决器输出为“1”;否则为“0”。 七人表决器设计方案很多,比如用多个全加器采用组合电路实现。用VHDL语言设计七人表决器时,也有多种选择。我们可以用结构描述的方式用多个全加器来原创 2020-06-13 16:25:50 · 15209 阅读 · 0 评论 -
基于VHDL语言分频器电路程序设计
基于VHDL语言分频器电路程序设计(汇总)分频器简介:分频器是数字电路中最常用的电路之一,在 FPGA 的设计中也是使用效率非常高的基本设计。基于 FPGA 实现的分频电路一般有两种方法:一是使用FPGA 芯片内部提供的锁相环电路,如 ALTERA 提供的 PLL(Phase LockedLoop),Xilinx 提供的 DLL(Delay Locked Loop);二是使用硬件描述语言,如VHDL、Verilog HDL 等。使用锁相环电路有许多优点,如可以实现倍频;相位偏移;占空比可调等。但 FP原创 2020-06-13 15:51:39 · 16062 阅读 · 5 评论 -
基于VHDL语言八位加法器设计
基于VHDL八位加法器设计设计思路 加法器是数字系统中的基本逻辑器件,减法器和硬件乘法器都可由加法器来构成。多位加法器的构成有两种方式:并行进位和串行进位。并行进位加法器设有进位产生逻辑,运算速度较快;串行进位方式是将全加器级联构成多位加法器。 并行进位加法器通常比串行级联加法器占用更多的资源。随着位数的增加,相同位数的并行加法器与串行加法器的资源占用差距也越来越大。因此,在工程中使用加法器时,要在速度和容量之间寻找平衡点。 实践证明,4位二进制并行加法器和串行级联加法器占用几乎相同的资源。这原创 2020-06-12 16:53:59 · 16432 阅读 · 1 评论 -
基于VHDL奇偶校验发生器程序设计
基于VHDL奇偶校验发生器程序设计知识点梳理:GENERIC参数的映射在元件进行实例化时如果需要传递参数,则须使用关键字generic,来进行generic参数的映射。语法结构:label:元件名称 generic map(参数列表) port map (端口列表);--进行generic参数的说明和传递通用属性语句(GENERIC)的一种用法用于指定常规参数,所指定的参数是静态的,方便设计人员进行参数修改,可增加代码的灵活性和可重用性。generic语句须在ENTITY中进行声明;原创 2020-05-28 20:02:26 · 4322 阅读 · 1 评论 -
基于VHDL的子程序设计与实现
基于VHDL的子程序设计与实现子程序函数(function)和过程(procedure)统称为子程序(subprogram)。子程序与进程的相同点: 内部包含的都是顺序描述代码,使用相同的顺序描述语句,如if,case和loop (wait语句除外)。子程序与进程语句的区别:**在使用目的上:**进程可以直接在主代码中使用;而子程序一般在建库时使用,以便代码重用和代码共享。当然子程序也是可以在主代码中直接建立和使用的。在使用方法上:子程序不能从结构体的其余部分直接读写信号,所有原创 2020-05-28 19:01:18 · 768 阅读 · 0 评论 -
基于VHDL数据分流方法程序实现
基于VHDL数据分流方法程序实现.md过程(procedure)过程与函数的使用目的相似,也是希望将其功能实现的代码被共享和重用,使主代码简洁并易于理解。 过程通常用来定义一个算法,而函数用来产生一个具有特定意义的值;注意:过程与函数的主要差别就是过程可以有多个返回值。过程的使用过程:先定义过程,再调用过程。过程的存放形式功能描述:过程sort的功能描述:对输入两个8位的无符号整数进行比较,数值小的从min_out输出,数值大的从max_out输出。多个输出,宜采用过程方式;*原创 2020-05-28 18:44:40 · 629 阅读 · 0 评论 -
基于VHdl函数重载方法程序实现
基于VHDL函数重载方法程序设计函数(function)一个函数就是一段顺序描述的代码。对于一些经常遇到的具有共性的设计问题,如数据类型转换、算术运算等,希望将其功能实现的代码被共享和重用,使主代码简洁并易于理解—函数。注意:由于在于每次调用函数时,都要首先对其进行初始化,即一次执行结束后再调用需再次初始化,即函数内部的值是不能保持的,因此在函数中禁止进行信号声明和元件实例化。函数的使用过程:先创建函数,再调用函数。函数的存放形式功能描述: “+”函数:功能描述:扩展预定义的“+”操作符,进原创 2020-05-28 18:22:20 · 3334 阅读 · 0 评论 -
基于VHDL语言的状态机设计
基于VHDL语言的状态机(FSM)设计状态机(Finite State Machine,FSM)状态机的组成:如图所示状态机的种类:Mealy型:当前状态、当前输入相关Moore型:仅当前状态相关VHDL代码结构:时序逻辑部分:process内部组合逻辑部分: 在使用FSM方式设计VHDL代码时,通常会在结构体的开始部分插入一个用户自定义的枚举数据类型,其中包含所有可能出现的电路状态。设计风格1一种结构清晰、易于实现的FSM设计风格:FSM中的时序逻辑部分和组合逻辑部分分别独立原创 2020-05-15 15:52:02 · 4575 阅读 · 0 评论 -
基于原理图法的全加器设计
基于原理图法的全加器设计全加器可以由两个半加器和一个或门连接而成,这样得到的半加器电路称为顶层文件。设计原理图如下:下面全加器的设计采用层次结构的VHDL程序设计方法,采用元件例化语句。工程文件名与顶层文件(全加器)文件名一样;把全加器、半加器、或门的vhdl文件都要包含到工程中;在全加器文件中声明半加器、或门为元件;然后例化三个元件:两个半加器和一个或门。软件说明:Model...原创 2020-05-05 19:03:42 · 7471 阅读 · 0 评论 -
基于VHDL逐级进位加法器程序设计
基于VHDL逐级进位加法器程序设计实验目的(1) 掌握逐级进位加法器逻辑功能及使用方法。(2) 学会用VHDL语言设计逐级进位加法器。实验原理逐级进位加法器:如下图所示:为一个无符号的逐级进位加法器,对每一位都使用全加器FAU,同时给出全加器真值表,真值表中的a和b是输入位,s是求和的结果,cout是进位输出位,当输入位有奇数个‘1’时,s必定是‘1’,而当有两个或者更多的输入为‘1’时...原创 2020-05-05 17:42:51 · 1384 阅读 · 0 评论 -
基于VHDL语言的全加器的设计
基于VHDL语言的全加器的设计全加器可以由两个半加器和一个或门连接而成,这样得到的半加器电路称为顶层文件。设计原理图如下:下面全加器的设计采用层次结构的VHDL程序设计方法,采用元件例化语句。工程文件名与顶层文件(全加器)文件名一样;把全加器、半加器、或门的vhdl文件都要包含到工程中;在全加器文件中声明半加器、或门为元件;然后例化三个元件:两个半加器和一个或门。软件说明:Mo...原创 2020-04-23 18:27:22 · 9359 阅读 · 1 评论 -
基于VHDL移位寄存器程序设计
Quartus-II 全加器的设计全加器可以由两个半加器和一个或门连接而成,这样得到的半加器电路称为顶层文件。设计原理图如下:下面全加器的设计采用层次结构的VHDL程序设计方法,采用元件例化语句。工程文件名与顶层文件(全加器)文件名一样;把全加器、半加器、或门的vhdl文件都要包含到工程中;在全加器文件中声明半加器、或门为元件;然后例化三个元件:两个半加器和一个或门。建立工程:...原创 2020-04-23 17:43:36 · 8287 阅读 · 1 评论