VHDL实验分频电路与12归1电路设计.doc

VHDL实验分频电路与12归1电路设计.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL实验分频电路与12归1电路设计

VHDL实验一 分频电路与12归1电路设计 一.实验目的 学习硬件描述语言描述电路的原理。 学习分频电路的设计算法。 学会使用VHDL进行简单的电路设计。 二.实验仪器 1.PC机一台 2. KHF-5 CPLD/FPGA实验开发系统一套。 三.实验要求 复习教材有关硬件描述语言的章节。 用硬件描述语言进行电路设计。 下载并用数码管显示结果。 四.实验内容与步骤 1.设计一个分频电路 已知cpld/fpga信号源脉冲频率为50M,试编写一分频程序,得到一周期为1 秒(频率为1Hz)的脉冲频率。 程序如下: library ieee; -----调用库 use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity fp is -----实体说明 port(inclk:in std_logic; ------端口说明 output:out std_logic); end fp; architecture arch_fp of fp is ------构造体说明 signal fp:std_logic_vector(24 downto 0); -----信号定义 signal f:std_logic; begin process(inclk) ------进程语句描述 begin if (inclkevent and inclk=1) then ------将时钟分频至1Hz if fpthen fp=0000000000000000000000000; f=not f; else fp=fp+1; end if; end if; end process; output=f; end arch_fp; -------构造体结束 2.12归1电路设计 (1)创建一个新的项目。点击File菜单Project 子菜单下Project Name项;输入项目名称。 (2)打开文本编辑窗口。点击File菜单下New项,选Text Editor项。 (3)时钟源采用上面的分频电路所分得的1秒的时钟源。 (3)设置项目名称与当前文件名相同,点击File菜单Project子菜单之save and check项对电路进行保存并编译。 程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity twelveto1v is port(finclk:in std_logic; result:in std_logic_vector(7 downto 0); outputa:out std_logic_vector(6 downto 0); outputb:out std_logic_vector(6 downto 0) ); end twelveto1v; architecture arch_twelveto1 of twelveto1v is signal sa:std_logic_vector(3 downto 0); signal sb:std_logic_vector(3 downto 0); signal f:std_logic; component fp port(inclk:in std_logic; output:out std_logic ); end component; begin u1:fp port map(inclk=finclk,output=f); process(f) begin if(rising_edge(f))then if(sa=2 and sb=1)then sa=0001; sb=0000; else if sa=9 then sa=0000; sb=sb+1; else sa=sa+1; end if; end if; end if; end process; wit

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档