以前课题用的是友晶的DE2-70,现在重拾FPGA,选了一款性价比高的DE2。恰逢闲来无事,于是尝试将各个Verilog模块翻译成VHDL,半算回顾以前的知识,半算练习VHDL。

Verilog 01

 module SEG7_LUT    (    oSEG,iDIG    );
input [:] iDIG;
output [:] oSEG;
reg [:] oSEG; always @(iDIG)
begin
case(iDIG)
'h1: oSEG = 7'b1111001; // ---t----
'h2: oSEG = 7'b0100100; // | |
'h3: oSEG = 7'b0110000; // lt rt
'h4: oSEG = 7'b0011001; // | |
'h5: oSEG = 7'b0010010; // ---m----
'h6: oSEG = 7'b0000010; // | |
'h7: oSEG = 7'b1111000; // lb rb
'h8: oSEG = 7'b0000000; // | |
'h9: oSEG = 7'b0011000; // ---b----
'ha: oSEG = 7'b0001000;
'hb: oSEG = 7'b0000011;
'hc: oSEG = 7'b1000110;
'hd: oSEG = 7'b0100001;
'he: oSEG = 7'b0000110;
'hf: oSEG = 7'b0001110;
'h0: oSEG = 7'b1000000;
endcase
end endmodule

VHDL 01

 library IEEE;
use ieee.std_logic_1164.all; 4 --! 7-segment displays
entity SEG7_LUT is
port
(
iDIG : in std_logic_vector( downto );
oSEG : out std_logic_vector ( downto )
);
end SEG7_LUT; architecture fpga of SEG7_LUT is begin pseg: process(iDIG)
begin
case iDIG is
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= "";
when "" =>
oSEG <= ""; end case; end process; end fpga;

Verilog 02

 module SEG7_LUT_8 (oSEG0,oSEG1,oSEG2,oSEG3,oSEG4,oSEG5,oSEG6,oSEG7,iDIG );
input [:] iDIG;
output [:] oSEG0,oSEG1,oSEG2,oSEG3,oSEG4,oSEG5,oSEG6,oSEG7; SEG7_LUT u0 ( oSEG0,iDIG[:] );
SEG7_LUT u1 ( oSEG1,iDIG[:] );
SEG7_LUT u2 ( oSEG2,iDIG[:] );
SEG7_LUT u3 ( oSEG3,iDIG[:] );
SEG7_LUT u4 ( oSEG4,iDIG[:] );
SEG7_LUT u5 ( oSEG5,iDIG[:] );
SEG7_LUT u6 ( oSEG6,iDIG[:] );
SEG7_LUT u7 ( oSEG7,iDIG[:] ); endmodule

VHDL 02

 library IEEE;
use ieee.std_logic_1164.all; 4 --! oSEG0 ~ oSEG7
entity SEG7_LUT_8 is
port
(
iDIG : in std_logic_vector( downto );
oSEG0 : out std_logic_vector ( downto );
oSEG1 : out std_logic_vector ( downto );
oSEG2 : out std_logic_vector ( downto );
oSEG3 : out std_logic_vector ( downto );
oSEG4 : out std_logic_vector ( downto );
oSEG5 : out std_logic_vector ( downto );
oSEG6 : out std_logic_vector ( downto );
oSEG7 : out std_logic_vector ( downto )
);
end SEG7_LUT_8; --! architecture
architecture fpga of SEG7_LUT_8 is begin U0 : entity SEG7_LUT port map(oSEG => oSEG0,iDIG => iDIG( downto ));
U1 : entity SEG7_LUT port map(oSEG => oSEG1,iDIG => iDIG( downto ));
U2 : entity SEG7_LUT port map(oSEG => oSEG2,iDIG => iDIG( downto ));
U3 : entity SEG7_LUT port map(oSEG => oSEG3,iDIG => iDIG( downto ));
U4 : entity SEG7_LUT port map(oSEG => oSEG4,iDIG => iDIG( downto ));
U5 : entity SEG7_LUT port map(oSEG => oSEG5,iDIG => iDIG( downto ));
U6 : entity SEG7_LUT port map(oSEG => oSEG6,iDIG => iDIG( downto ));
U7 : entity SEG7_LUT port map(oSEG => oSEG7,iDIG => iDIG( downto )); end fpga;

DE2之7-segment displays的更多相关文章

  1. (2017浙江省赛E)Seven Segment Display

    Seven Segment Display Time Limit: 2 Seconds      Memory Limit: 65536 KB A seven segment display, or ...

  2. 2017浙江省赛 E - Seven Segment Display ZOJ - 3962

    地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3962 题目: A seven segment display, or ...

  3. ZOJ 3962 Seven Segment Display 16进制的八位数加n。求加的过程中所有的花费。显示[0,F]有相应花费。

    Seven Segment Display Time Limit: Seconds Memory Limit: KB A seven segment display, or seven segment ...

  4. ZOJ 3962 E.Seven Segment Display / The 14th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple E.数位dp

    Seven Segment Display Time Limit: 1 Second      Memory Limit: 65536 KB A seven segment display, or s ...

  5. [转]oracle EBS 基础100问

    from:http://www.cnblogs.com/xiaoL/p/3593691.html  http://f.dataguru.cn/thread-51057-1-1.html 1001 OR ...

  6. zoj3954 详细讲解 排序比较单词法

    Seven-Segment Display Time Limit: 1 Second      Memory Limit:65536 KB A seven segment display, or se ...

  7. [笔记]学习EBS建议有的知识

    http://f.dataguru.cn/thread-51057-1-1.html ORACLE EBS学习的其他资源有哪四个? ORACLE OPEN WORLD大会是不是一个市场营销活动? Or ...

  8. kafka的log存储解析——topic的分区partition分段segment以及索引等

    转自:http://blog.csdn.net/jewes/article/details/42970799 引言 Kafka中的Message是以topic为基本单位组织的,不同的topic之间是相 ...

  9. ORA-10635: Invalid segment or tablespace type

    上周星期天在迁移数据时,碰到了ORA-10635: Invalid segment or tablespace type 错误,当时的操作环境如下: 操作系统版本: [oracle@xxxxx scr ...

随机推荐

  1. Python 爬虫之第一次接触

    爬豆瓣网电影TOP250名单 ------- 代码未写完,等待更新 import requests from requests.exceptions import RequestException i ...

  2. 【POJ 1860】Currency Exchange

    [题目链接]:http://poj.org/problem?id=1860 [题意] 给你n种货币,m种货币之间的交换信息; 交换信息以 A,B,RA,CA,RB,CB的形式给出; 即A换B的话假设A ...

  3. Alliances

    树国是一个有n个城市的国家,城市编号为1∼n.连接这些城市的道路网络形如一棵树, 即任意两个城市之间有恰好一条路径.城市中有k个帮派,编号为1∼k.每个帮派会占据一些城市,以进行非法交易.有时帮派之间 ...

  4. code vs 3376 符号三角形

    3376 符号三角形  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 如下图是由14个“+”和14个“-”组 ...

  5. HDU 4516

    此题不难,但我就是RE,搞不懂啊...郁闷. 说下基本算法吧,只要留意到要分解的因式是(x+ai)..的形式,x前是系数为1的,而且,它们的绝对值在1000以内,于是,好办了.只要枚举(x+k)中的k ...

  6. MongoDB学习笔记一:MongoDB的下载和安装

    MongoDB学习笔记一:MongoDB的下载和安装 趁着这几天比較空暇,准备学习一下MongoDB数据库.今天就简单的学习了一些MongoDB的下载和安装.并创建了存储MongoDB的数据仓库. 将 ...

  7. [Node.js] Add Logging to a Node.js Application using Winston

    Winston is a popular logging library for NodeJS which allows you to customise the output, as well as ...

  8. Spring 新手教程(三) 注入和自己主动装配

         Spring注入是指在启动Spring容器载入bean配置的时候.对类变量的赋值. 两种经常使用注入方式:设值注入和构造注入 以下就这部分知识看代码以及代码中的注解: 1.首先看Spring ...

  9. uiautomator +python 安卓UI自动化尝试

    使用方法基本说明:https://www.cnblogs.com/mliangchen/p/5114149.html,https://blog.csdn.net/Eugene_3972/article ...

  10. 封装RecyclerViewAdapter实现RecyclerView下拉刷新上拉载入很多其它

    实现 关于下拉刷新使用的是github上的项目Ultra Pull To Refresh项目. gradle依赖例如以下: compile 'in.srain.cube:ultra-ptr:1.0.1 ...