- 7
- 0
- 约1.7万字
- 约 15页
- 2020-08-24 发布于广东
- 举报
F0803017 周仕成 5080309600
VHDL 实验报告
――F0803017 周仕成 5080309600
目 录
实验三. 4 位可逆计数器,4 位可逆二进制代码-格雷码转换器设计2
实验六. 序列检测器的设计5
实验七. 基于ROM 的正弦波发生器的设计8
实验八. 数字密码锁的设计与实现13
1
F0803017 周仕成 5080309600
实验三. 4 位可逆计数器,4 位可逆二进制代码-格雷码转
换器设计
[设计思路及步骤]:
1) 4 位可逆计数器:
1. 定义各个量:clk 为时钟输入(50MHz),clk——div 为分频后的时钟,count 为
分频计数,mode 为SW17 模式控制,rst 为KEY3 异步复位开关;
2. 本实验的时钟输入为 50MHz,定义为clk,为此设计时需要将其分频为50Hz,
25 25
需2 分频,因此,代码中,需要有一个count 作为一个2 计数器,同时,定
义分频后的时钟为clk_div ;
3. 在主程序中,count 从0 计数到224-1,检测时钟输入clk,在clk 触发上升沿时,
使count 加 1,当count 为224-1 时,clkout 作一次not 变换,如此便达到分频
的目的。
4. 分频结束后,需要在另一个process 中,首先检测是否异步复位开关key 为0,
叵为0,则复位。否则,检测 clk_div ,当其触发上升沿时,检测模式控制,按
模式控制,对num 加1 或减1;
2) 4 位可逆二进制代码-格雷码转换器:
1.各量的定义:SW(17)为 SW17 模式控制,SW[3]-SW[0]为拨码开关输入,
LEDR[3]-LEDR[0]为转换值的输出;
2.检测模式输入,按模式输入值进入各自的when 语句,相应的输入对应相应的输
出。
[源代码]:
4 位可逆计数器:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY counter IS
PORT(clk : IN STD_LOGIC;
mode : IN STD_LOGIC;
LEDR : OUT STD_LOGIC_VECTOR(17 DOWNTO 0);
rst : IN STD_LOGIC
);
END counter;
ARCHITECTURE rtl OF counter IS
SIGNAL count : STD_LOGIC_VECTOR(24 DOWNTO 0);
SIGNAL clk_div : STD_LOGIC;
SIGNAL num : STD_LOGIC_VECTOR(3 DOWNTO 0);
BEGIN
clk_div = count(24);
LEDR(3) = num(3);
您可能关注的文档
最近下载
- 美妆练习册(持续更新)彩妆美人图练习初学者美妆入门.pdf VIP
- 2026年牡丹江大学单招《数学》复习提分资料带答案详解(巩固).docx VIP
- 教资科目二知识点.docx VIP
- 2026年牡丹江大学单招职业技能考试题库附参考答案详解(达标题).docx VIP
- 2026年度牡丹江大学单招《语文》练习题附参考答案详解(达标题).docx VIP
- 2026年度牡丹江大学单招《数学》测试卷及参考答案详解【模拟题】.docx VIP
- 大学物理知识点总结完整版.doc
- 2026年牡丹江大学单招《数学》预测复习(预热题)附答案详解.docx VIP
- 2026年牡丹江大学单招《数学》练习题【研优卷】附答案详解.docx VIP
- 2026年牡丹江大学单招《数学》全真模拟模拟题及参考答案详解【精练】.docx VIP
原创力文档

文档评论(0)