vhdl
沿途有李
有偿支持电气、自动化领域的毕业设计、课程设计指导。提供会议、英文普刊润色及投稿服务。
展开
-
vhdl12-复习常用的语法(38译码,十进制计数,全加器,半加器,四位二进制加法器)
还是以38译码器为例子vhdl常用的语法无非就用在进程下边:1.if-else-elsif-end if;2. case x iswhen " “=>b<=” “;when others=>b<=“Z”;end case;用在结构体下1.a<=” “when b=” " else" “when b=” "else“Z”;2 with a sel...原创 2019-10-19 21:39:59 · 3696 阅读 · 0 评论 -
vhdl11——100进制,分,秒,时,天
首先做一个10进制计数器,很简单,但是碰到问题了用的代码是:--ujs-lililibrary IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_unsigned.ALL;use IEEE.STD_LOGIC_arith.ALL;entity shijinzhi isport(clk,rst,en:in std_logic; ...原创 2019-10-19 20:09:02 · 1327 阅读 · 0 评论 -
vhdl10——复习mux三种写法
--ujs-lililibrary IEEE;use IEEE.STD_LOGIC_1164.ALL;entity mux41_1 isport (a,b,c,d,s1,s0:in std_logic; y:out std_logic); end mux41_1;architecture Behavioral of mux41_1 issignal n:std_logic...原创 2019-09-25 23:38:30 · 1846 阅读 · 0 评论 -
vhdl入门8位全减器
课上写全减器,题看错了,还以为是用生成语句把两个半减器和一个与门连成一个全减器。现在一看,原来是先生成一个全减器,再用原件例化生成8位全减器1.半减器找到真值表:代码:课上我是用两个with——select写的,忘记了vhdl也可以用数组的方式,注意with——select是直接放在结构体下的!如果是给高阻态,一定大写的Z。--ujs-lililibrary IEEE;use IEE...原创 2019-09-25 00:01:10 · 10308 阅读 · 1 评论 -
vhdl8三种方式实现38译码器
之前用连接符&做过38译码器,觉得有点复杂。这次换几个方法:1.when_else语句代码:仿真:原创 2019-09-22 10:26:07 · 21899 阅读 · 0 评论 -
vhdl7我学习得第一个fpga项目——倒计时显示
之前也编写过fpga程序,但是那都相当于一个子程序,我们知道fpga是模块化设计,自顶向下的构造。那么今天学会了第一个fpga项目:倒计时显示。1.功能:1)开关控制计数器工作。当开关作用,led亮并且保持,每隔一秒,计数器开始从16减到0,用数码管显示,并保持。2.思路:1)两个分频器,一个给1s钟的倒计时计数,一个用于驱动数码管。2)一个计数开关,控制倒计时开始3)数码管译码电路...原创 2019-09-21 22:22:02 · 5735 阅读 · 6 评论 -
vhdl入门6分频器
分频器的设计有两种思路,一种只适用于偶数次,另外一个是通用。1.首先,需要知道分频的次数。通过晶振算出时钟周期,然后你需要定时多少时间,用这个时间除周期,就可以得到计数次数。如:500ms的led翻转,50mhz的晶振,由50Mhz晶振得到20ns的时钟周期,用500ms/20ns=25000000次,这就是计数的次数。2.通用方法:主要思路,计数待分频的整个周期,也就是说,如:想要得到c...原创 2019-09-21 16:01:39 · 5555 阅读 · 1 评论 -
vhdl入门3实现计数器
这几天事情有点多,参加了数学建模选的B题,然后没有更新。下边是之前那个vhdl计数器,之前没做起来,led总是不跳变,现在发现原因了,用两个if写就行了下面这个程序功能:对clk进行计数,10个clk的跳变,一次led的跳变,为了看的更加清晰,加入了cout,用以看cnt的变化。所以加入了arith和usigned。--ujs-lililibrary IEEE;use IEEE.STD...原创 2019-09-19 19:00:58 · 3553 阅读 · 2 评论 -
vhdl入门2——ise制作一位全加器
Verilog入门3——制作全加器先写一下vhdl的,先做一个两输入或门,再做一个半加器,在连接形成一个1位全加器下边的命名有误:quanjiaqi1——一位全加器,quanjiaqi0——半加器,quanjiaqi——或门。--ujs-lili--这个做的是半加器library IEEE;use IEEE.STD_LOGIC_1164.ALL;entity quanjiaqi0 i...原创 2019-09-11 10:59:02 · 3673 阅读 · 0 评论 -
Verilog入门2-用ise做38译码器和仿真
学过数电应该都知道有38译码器这个东西就是通过3个输入端,控制8个输出端的状态。2.^3正好是8位。下面附上代码:module my3_8(a,b,c,out); input a,b,c; output [7:0]out;//表示位宽为8bit的输出信号 reg [7:0]out;//或者直接output reg [7:0]out; always@(a,b,c) //这个跟vhdl中...原创 2019-09-11 00:19:10 · 7399 阅读 · 2 评论